:root { --buytuga-footer-bg: #0B1F33; --buytuga-footer-text: #FFFFFF; --buytuga-footer-link: #DCEBFA; --buytuga-footer-accent: #60A5FA; --buytuga-image-bg: #FFFFFF; --buytuga-image-padding: 16px; } /* Rodapé configurável, incluindo a zona inferior e widgets do Shofy. */ footer, footer[class], .tp-footer-area, .tp-footer-bottom, [class*="tp-footer-"] { background-color: var(--buytuga-footer-bg) !important; } footer h1, footer h2, footer h3, footer h4, footer h5, footer h6, footer p, footer li, footer address, footer span:not(.badge), footer strong { color: var(--buytuga-footer-text) !important; } /* Ganha à especificidade do tema no texto “Sobre a BuyTuga”. */ body footer .tp-footer-widget-content, body footer .tp-footer-widget-content p, body footer .tp-footer-desc, body footer .tp-footer-desc p, body footer [class*="footer-about"], body footer [class*="footer-about"] p, body footer .text-muted, body footer small { color: var(--buytuga-footer-text) !important; opacity: 1 !important; -webkit-text-fill-color: var(--buytuga-footer-text) !important; } footer a, footer a span { color: var(--buytuga-footer-link) !important; -webkit-text-fill-color: var(--buytuga-footer-link) !important; } footer a:hover, footer a:hover span { color: var(--buytuga-footer-accent) !important; -webkit-text-fill-color: var(--buytuga-footer-accent) !important; } footer hr, footer [class*="border"] { border-color: color-mix(in srgb, var(--buytuga-footer-text) 18%, transparent) !important; } /* Marcas: o JS converte a grelha nativa Shofy num carrossel de uma linha. */ main section[data-block-id^="ecommerce-brands"] [class*="brand"] a, main .tp-brand-item a, main [class*="brand-item"] a { display: flex !important; align-items: center !important; justify-content: center !important; min-height: 72px; } main section[data-block-id^="ecommerce-brands"] img, main .tp-brand-item img, main [class*="brand-item"] img { display: block !important; width: auto !important; height: auto !important; max-width: 110px !important; max-height: 52px !important; margin: auto !important; object-fit: contain !important; object-position: center !important; } .bthm-brand-source-hidden { display: none !important; } .bthm-brand-viewport { position: relative; width: 100%; margin-top: 28px; padding: 0 48px; } .bthm-brand-track { display: flex !important; width: 100%; min-width: 0; margin: 0 !important; padding: 2px !important; overflow-x: auto !important; overflow-y: hidden !important; flex-flow: row nowrap !important; gap: 14px !important; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; } .bthm-brand-track::-webkit-scrollbar { display: none; } .bthm-brand-card { display: flex !important; align-items: center !important; justify-content: center !important; width: clamp(142px, 14vw, 190px) !important; min-width: clamp(142px, 14vw, 190px) !important; height: 116px; padding: 20px; overflow: hidden; border: 1px solid #e5e9ef; border-radius: 10px; background: #fff; box-shadow: 0 2px 8px rgba(16, 24, 40, .025); scroll-snap-align: start; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; } .bthm-brand-card:hover { border-color: color-mix(in srgb, var(--tp-theme-primary, #1668b2) 35%, #e5e9ef); box-shadow: 0 9px 24px rgba(16, 24, 40, .08); transform: translateY(-2px); } .bthm-brand-card picture { display: contents; } .bthm-brand-card img { display: block !important; width: auto !important; height: auto !important; max-width: 104px !important; max-height: 54px !important; margin: auto !important; object-fit: contain !important; object-position: center !important; } .bthm-brand-arrow { position: absolute; z-index: 3; top: 50%; display: grid; width: 38px; height: 38px; padding: 0; place-items: center; border: 1px solid #d8dee8; border-radius: 50%; color: #0b1f33; background: #fff; box-shadow: 0 6px 18px rgba(16, 24, 40, .12); transform: translateY(-50%); transition: color .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease; } .bthm-brand-arrow--previous { left: 0; } .bthm-brand-arrow--next { right: 0; } .bthm-brand-arrow:hover:not(:disabled), .bthm-brand-arrow:focus-visible { border-color: var(--tp-theme-primary, #1668b2); color: #fff; background: var(--tp-theme-primary, #1668b2); outline: none; } .bthm-brand-arrow:disabled { cursor: default; opacity: .28; } .bthm-brand-arrow[hidden] { display: none !important; } @media (max-width: 767px) { .bthm-brand-viewport { margin-top: 20px; padding: 0 38px; } .bthm-brand-track { gap: 10px !important; } .bthm-brand-card { width: min(42vw, 150px) !important; min-width: min(42vw, 150px) !important; height: 98px; padding: 16px; } .bthm-brand-card img { max-width: 90px !important; max-height: 46px !important; } .bthm-brand-arrow { width: 32px; height: 32px; } } @media (prefers-reduced-motion: reduce) { .bthm-brand-track { scroll-behavior: auto; } .bthm-brand-card { transition: none; } } /* Fotografias completas nos cartões nativos Shofy: nunca usar cover. */ main section[data-block-id^="ecommerce-product"] .tp-product-item { display: flex; flex-direction: column; width: 100%; height: 100%; overflow: hidden; background: #fff; } main section[data-block-id^="ecommerce-product"] .tp-product-thumb, main .tp-product-item > .tp-product-thumb { display: grid !important; place-items: center !important; width: 100% !important; aspect-ratio: 1 / 1; min-height: 0 !important; overflow: hidden !important; padding: var(--buytuga-image-padding) !important; background: var(--buytuga-image-bg) !important; } main section[data-block-id^="ecommerce-product"] .tp-product-thumb > a, main .tp-product-item > .tp-product-thumb > a { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 100% !important; } main section[data-block-id^="ecommerce-product"] .tp-product-thumb img, main .tp-product-item > .tp-product-thumb img { display: block !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; object-position: center !important; } main .tp-product-item:hover > .tp-product-thumb img { transform: scale(1.025) !important; } /* Secções inteligentes. */ .buytuga-smart-section { padding: 42px 0 28px; } .buytuga-smart-section:nth-child(even) { background: #f7f9fc; } .buytuga-smart-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 22px; } @media (min-width: 768px) { .buytuga-smart-heading { padding-right: 72px; } } .buytuga-smart-eyebrow { display: block; margin-bottom: 4px; color: #1668b2; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; } .buytuga-smart-heading h2 { margin: 0; color: #101828; font-size: clamp(1.55rem, 2.4vw, 2.15rem); letter-spacing: -.025em; } .buytuga-smart-more { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 9px 17px; border: 1px solid #1668b2; border-radius: 999px; color: #1668b2; font-weight: 700; transition: color .2s ease, background .2s ease, transform .2s ease; } .buytuga-smart-more:hover { color: #fff; background: #1668b2; transform: translateY(-1px); } .buytuga-smart-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; } .buytuga-smart-card { display: flex; min-width: 0; overflow: hidden; flex-direction: column; border: 1px solid #e7eaf0; border-radius: 14px; background: #fff; box-shadow: 0 3px 12px rgba(16, 24, 40, .035); transition: transform .2s ease, box-shadow .2s ease; } .buytuga-smart-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(16, 24, 40, .09); } .buytuga-smart-image { position: relative; display: flex; align-items: center; justify-content: center; width: 100%; aspect-ratio: 1 / 1; overflow: hidden; padding: var(--buytuga-image-padding); background: var(--buytuga-image-bg); } .buytuga-smart-image img { display: block; width: 100%; height: 100%; object-fit: contain !important; object-position: center; transition: transform .22s ease; } .buytuga-smart-card:hover .buytuga-smart-image img { transform: scale(1.025); } .buytuga-smart-badge { position: absolute; top: 12px; left: 12px; padding: 5px 9px; border-radius: 999px; color: #fff; background: #1668b2; font-size: 11px; font-weight: 700; } .buytuga-smart-card-content { display: flex; flex: 1; flex-direction: column; padding: 15px 16px 17px; } .buytuga-smart-card-content h3 { min-height: 44px; margin: 0 0 12px; font-size: 15px; line-height: 1.45; } .buytuga-smart-card-content h3 a { display: -webkit-box; overflow: hidden; color: #101828; -webkit-box-orient: vertical; -webkit-line-clamp: 2; } .buytuga-smart-price { display: flex; align-items: center; gap: 9px; margin-top: auto; } .buytuga-smart-price strong { color: #1668b2; font-size: 17px; } .buytuga-smart-price del { color: #98a2b3; font-size: 13px; } .buytuga-smart-mobile-more { display: none; margin-top: 18px; text-align: center; } @media (max-width: 991px) { .buytuga-smart-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } } @media (max-width: 767px) { .buytuga-smart-section { padding: 32px 0 20px; } .buytuga-smart-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; } .buytuga-smart-heading > .buytuga-smart-more { display: none; } .buytuga-smart-mobile-more { display: block; } .buytuga-smart-card-content { padding: 11px 12px 14px; } .buytuga-smart-card-content h3 { min-height: 39px; font-size: 13px; } .buytuga-smart-price strong { font-size: 15px; } main section[data-block-id^="ecommerce-product"] .tp-product-thumb, main .tp-product-item > .tp-product-thumb { --buytuga-image-padding: 10px; } } /* Carrosséis de produto: quatro cartões no desktop, três no tablet e deslize no telemóvel. */ .bt-product-carousel-shell { position: relative; width: 100%; padding-inline: 50px; } .bt-product-carousel-track { display: flex !important; width: 100% !important; max-width: 100% !important; margin: 0 !important; padding: 4px 2px 14px !important; overflow-x: auto !important; overflow-y: hidden !important; flex-flow: row nowrap !important; align-items: stretch !important; gap: 18px !important; grid-template-columns: none !important; scroll-behavior: smooth; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-inline: contain; -webkit-overflow-scrolling: touch; } .bt-product-carousel-track::-webkit-scrollbar { display: none; } .bt-product-carousel-track.row { --bs-gutter-x: 0; } .bt-product-carousel-card { width: calc((100% - 54px) / 4) !important; min-width: calc((100% - 54px) / 4) !important; max-width: none !important; height: auto !important; padding-inline: 0 !important; flex: 0 0 calc((100% - 54px) / 4) !important; scroll-snap-align: start; } .bt-product-arrow { position: absolute; z-index: 5; top: 50%; display: grid; width: 42px; height: 42px; padding: 0; place-items: center; border: 1px solid #d8dee8; border-radius: 50%; color: #0b1f33; background: #fff; box-shadow: 0 6px 18px rgba(16, 24, 40, .14); transform: translateY(-50%); transition: color .2s ease, background .2s ease, border-color .2s ease, opacity .2s ease; } .bt-product-arrow--previous { left: 0; } .bt-product-arrow--next { right: 0; } .bt-product-arrow:hover:not(:disabled), .bt-product-arrow:focus-visible { border-color: var(--tp-theme-primary, #1668b2); color: #fff; background: var(--tp-theme-primary, #1668b2); outline: none; } .bt-product-arrow:disabled { cursor: default; opacity: .28; } .bt-product-arrow[hidden] { display: none !important; } .bt-product-carousel-shell--static { padding-inline: 0; } /* A imagem inteira fica visível e centrada, sem o recorte causado por cover. */ body .buytuga-smart-image, body main section[data-block-id^="ecommerce-product"] .tp-product-thumb, body main .tp-product-item > .tp-product-thumb { display: grid !important; width: 100% !important; min-height: 0 !important; aspect-ratio: 1 / 1; overflow: hidden !important; place-items: center !important; padding: var(--buytuga-image-padding, 16px) !important; background: var(--buytuga-image-bg, #fff) !important; } body main section[data-block-id^="ecommerce-product"] .tp-product-thumb > a, body main .tp-product-item > .tp-product-thumb > a { display: flex !important; align-items: center !important; justify-content: center !important; width: 100% !important; height: 100% !important; padding: 0 !important; } body .buytuga-smart-image img, body main section[data-block-id^="ecommerce-product"] .tp-product-thumb img, body main .tp-product-item > .tp-product-thumb img { display: block !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; object-fit: contain !important; object-position: center !important; } body .buytuga-smart-card:hover .buytuga-smart-image img, body main .tp-product-item:hover > .tp-product-thumb img { transform: scale(1.015) !important; } @media (max-width: 991px) { .bt-product-carousel-track { gap: 14px !important; } .bt-product-carousel-card { width: calc((100% - 28px) / 3) !important; min-width: calc((100% - 28px) / 3) !important; flex-basis: calc((100% - 28px) / 3) !important; } } @media (max-width: 767px) { .bt-product-carousel-shell { padding-inline: 38px; } .bt-product-carousel-track { gap: 12px !important; padding-bottom: 10px !important; } .bt-product-carousel-card { width: 74% !important; min-width: 74% !important; flex-basis: 74% !important; } .bt-product-arrow { width: 34px; height: 34px; } body .buytuga-smart-image, body main section[data-block-id^="ecommerce-product"] .tp-product-thumb, body main .tp-product-item > .tp-product-thumb { --buytuga-image-padding: 12px; } } @media (max-width: 430px) { .bt-product-carousel-card { width: 82% !important; min-width: 82% !important; flex-basis: 82% !important; } } @media (prefers-reduced-motion: reduce) { .bt-product-carousel-track { scroll-behavior: auto; } }