/*
 * V12 — linguagem visual inspirada no site de referência indicado pelo usuário.
 * Mantém conteúdo, SEO, CTAs, carrosséis, tags e estrutura funcional do projeto.
 */
:root{
  --ref-navy:#071738;
  --ref-navy-2:#0b2554;
  --ref-blue:#1f4f9f;
  --ref-blue-soft:#eaf0fb;
  --ref-paper:#f5f1e9;
  --ref-paper-2:#fbfaf6;
  --ref-ink:#172033;
  --ref-muted:#687184;
  --ref-line:#dedbd3;
  --ref-green:#138a4b;
  --ref-gold:#d8b66b;
  --ref-radius:26px;
  --ref-shadow:0 20px 55px rgba(25,38,69,.10);
}

html{background:var(--ref-paper-2)}
body{background:var(--ref-paper-2)!important;color:var(--ref-ink)!important;font-family:Arial,Helvetica,sans-serif!important}
.site-shell{overflow:clip}
.container{width:min(1180px,calc(100% - 48px))!important}
.section{padding:92px 0!important}

/* Header / navegação limpa e editorial */
.topbar{background:var(--ref-navy)!important;color:#e9eef8!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
.topbar-inner{min-height:34px!important;font-size:11px!important;letter-spacing:.035em!important}
.topbar-inner a{opacity:.92}
.topbar-phone{font-weight:800!important;color:#fff!important}
.site-header{background:rgba(255,255,255,.96)!important;border-bottom:1px solid rgba(7,23,56,.08)!important;box-shadow:0 7px 24px rgba(7,23,56,.04)!important;backdrop-filter:blur(14px)!important}
.header-inner{height:74px!important;gap:24px!important}
.brand img{width:156px!important;height:56px!important;border-radius:0!important}
.desktop-nav{gap:20px!important;color:#253047!important;font-size:13px!important;font-weight:700!important}
.desktop-nav>a,.nav-products>summary{padding:27px 0!important}
.nav-popover{top:60px!important;border-radius:18px!important;border-color:rgba(7,23,56,.10)!important;box-shadow:0 20px 55px rgba(7,23,56,.13)!important}
.header-cta{min-height:42px!important;padding:11px 16px!important;font-size:12px!important}
.menu-toggle{border-radius:12px!important}

/* Botões */
.button{border-radius:12px!important;min-height:46px!important;padding:13px 19px!important;font-size:13px!important;letter-spacing:.005em!important;box-shadow:none!important}
.button:hover{transform:translateY(-1px)!important}
.button-whatsapp{background:var(--ref-green)!important;color:#fff!important;box-shadow:0 10px 24px rgba(19,138,75,.18)!important}
.button-whatsapp:hover{background:#0f7740!important}
.button-primary{background:var(--ref-blue)!important;color:#fff!important}
.button-outline{background:transparent!important;border-color:rgba(255,255,255,.48)!important;color:#fff!important}
.button-quiet{background:#fff!important;border-color:#d8dce4!important;color:var(--ref-navy)!important}

/* Hero em duas colunas com fotografia dominante, como a referência */
.hero,.hero-home,.hero-inner,.hero.hero-inner.hero-home{
  background:var(--ref-navy)!important;
  color:#fff!important;
  min-height:0!important;
}
.hero-backdrop,.hero-home .hero-backdrop,.hero-inner .hero-backdrop,.hero.hero-inner.hero-home .hero-backdrop{display:none!important}
.hero:after,.hero-home:after,.hero-inner:after,.hero.hero-inner.hero-home::after{display:none!important;background:none!important}
.hero-grid,.hero-home .hero-grid,.hero-inner .hero-grid,.hero.hero-inner.hero-home .hero-grid{
  grid-template-columns:minmax(0,1.05fr) minmax(360px,.72fr)!important;
  align-items:center!important;
  gap:64px!important;
  min-height:610px!important;
  padding-top:62px!important;
  padding-bottom:62px!important;
}
.hero-copy,.hero-home .hero-copy,.hero-inner .hero-copy,.hero.hero-inner.hero-home .hero-copy{max-width:720px!important}
.hero h1,.hero-home .hero-copy h1,.hero-inner h1,.hero.hero-inner.hero-home .hero-copy h1{
  font-family:Georgia,'Times New Roman',serif!important;
  font-size:clamp(46px,5vw,72px)!important;
  font-weight:500!important;
  letter-spacing:-.045em!important;
  line-height:1.00!important;
  max-width:760px!important;
  text-wrap:balance!important;
}
.hero-home .hero-copy h1 .gold-line{color:#fff!important;font-size:1em!important;line-height:1.00!important;margin-top:0!important}
.hero-answer,.hero-home .hero-answer,.hero-inner .hero-answer{color:#d5ddec!important;max-width:670px!important;font-size:17px!important;line-height:1.68!important;margin-top:24px!important}
.eyebrow{letter-spacing:.18em!important;font-size:10px!important;font-weight:900!important}
.eyebrow-light{color:#a9bce2!important}
.eyebrow-dark{color:var(--ref-blue)!important}
.hero-actions{gap:10px!important;margin-top:27px!important}
.hero-proof{margin-top:24px!important;color:#e8edf7!important;font-size:12px!important}
.hero-stars{color:#f3cc67!important}
.hero-location-bar{
  max-width:680px!important;
  margin-top:22px!important;
  padding:15px 17px!important;
  border:1px solid rgba(255,255,255,.15)!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.055)!important;
  backdrop-filter:none!important;
}
.hero-location-bar span{color:#9eb4df!important;font-size:9px!important}
.hero-location-bar strong{font-size:15px!important;font-weight:700!important}
.hero-location-bar small{color:#cdd7e9!important;font-size:12px!important}
.hero-location-link{border-radius:10px!important;padding:10px 14px!important;font-size:11px!important}
.hero-media,.hero-inner .hero-media,.hero.hero-inner.hero-home .hero-media{
  display:block!important;
  min-height:475px!important;
  height:475px!important;
  border:0!important;
  border-radius:210px 210px 22px 22px!important;
  overflow:hidden!important;
  box-shadow:0 30px 70px rgba(0,0,0,.28)!important;
  position:relative!important;
}
.hero-media>img{object-fit:cover!important;object-position:center 55%!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}
.hero-media:after{background:linear-gradient(180deg,transparent 55%,rgba(3,12,32,.45))!important}
.hero-address-card{
  left:18px!important;right:18px!important;bottom:18px!important;
  background:rgba(255,255,255,.94)!important;
  border-radius:14px!important;
  padding:14px 16px!important;
  color:var(--ref-ink)!important;
}
.hero-address-card span{font-size:9px!important;letter-spacing:.12em!important;text-transform:uppercase!important;color:var(--ref-blue)!important;font-weight:900!important}
.hero-address-card strong{font-size:14px!important}
.hero-address-card small{font-size:11px!important;color:var(--ref-muted)!important}

/* Títulos editoriais e ritmo de seção */
.section-heading{align-items:flex-end!important;margin-bottom:36px!important;gap:42px!important}
.section-heading h2,.guide-intro h2,.visit-content h2,.faq-grid h2,.about-grid h2,.density-grid h2,.contact-form-grid h2{
  font-family:Georgia,'Times New Roman',serif!important;
  font-weight:500!important;
  font-size:clamp(36px,4vw,54px)!important;
  letter-spacing:-.04em!important;
  line-height:1.04!important;
}
.section-heading>p,.home-section-intro{color:var(--ref-muted)!important;line-height:1.7!important}
.text-link,.text-button{color:var(--ref-blue)!important}

/* Avaliações e diferenciais mais leves */
.global-reviews-section{background:#fff!important;padding:78px 0 56px!important;border-bottom:0!important}
.global-reviews-inner{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:44px!important;align-items:start!important}
.global-reviews-head{padding-top:12px!important;text-align:left!important}
.global-reviews-head h2{font-family:Georgia,serif!important;font-size:42px!important;font-weight:500!important;letter-spacing:-.035em!important;margin:5px 0 8px!important}
.global-reviews-head p{color:var(--ref-muted)!important;font-size:13px!important}
.global-stars{font-size:17px!important;color:#f2c862!important}
.global-review-carousel{min-width:0!important}
.global-review-card{background:var(--ref-paper-2)!important;border:1px solid var(--ref-line)!important;border-radius:18px!important;padding:22px!important;box-shadow:none!important}
.global-review-card blockquote{color:#374052!important;font-family:Georgia,serif!important;font-size:16px!important;line-height:1.55!important}
.global-review-avatar{background:var(--ref-navy)!important;color:#fff!important}
.global-review-arrow{border-color:#d8d9db!important;background:#fff!important;color:var(--ref-navy)!important;box-shadow:0 8px 20px rgba(7,23,56,.08)!important}
.global-review-actions{grid-column:2!important;justify-content:flex-start!important;margin-top:-18px!important}
.global-review-link{border-radius:10px!important}
.trust-strip{background:var(--ref-paper)!important;border-top:1px solid #e7e2d8!important;border-bottom:1px solid #e7e2d8!important;padding:0!important}
.trust-grid{grid-template-columns:repeat(4,1fr)!important;gap:0!important}
.trust-item{padding:28px 22px!important;border-right:1px solid #ded9cf!important;display:grid!important;grid-template-columns:32px 1fr!important;gap:12px!important;background:transparent!important;border-radius:0!important}
.trust-item:last-child{border-right:0!important}
.trust-item>span{font-family:Georgia,serif!important;color:var(--ref-blue)!important;font-size:18px!important}
.trust-item strong{font-family:Georgia,serif!important;font-size:16px!important;font-weight:500!important;line-height:1.25!important}
.trust-item small{color:var(--ref-muted)!important;line-height:1.45!important}

/* Categorias: cards fotográficos limpos */
.category-section{background:var(--ref-paper-2)!important}
.category-grid{grid-template-columns:repeat(4,1fr)!important;gap:18px!important}
.category-card,.category-card.cobalt,.category-card.sky,.category-card.sand,.category-card.mint{
  background:#fff!important;color:var(--ref-ink)!important;border:1px solid var(--ref-line)!important;border-radius:20px!important;
  min-height:0!important;padding:0!important;display:block!important;overflow:hidden!important;box-shadow:none!important;
}
.category-card:before{display:none!important}
.category-card>img{position:relative!important;inset:auto!important;z-index:auto!important;width:100%!important;height:235px!important;object-fit:cover!important;display:block!important}
.category-card>span{position:absolute!important;top:16px!important;left:16px!important;width:34px!important;height:34px!important;background:rgba(255,255,255,.94)!important;border:0!important;color:var(--ref-navy)!important;font-weight:900!important}
.category-card>div{padding:23px 22px 25px!important}
.category-card h3{font-size:27px!important;color:var(--ref-ink)!important;margin-bottom:9px!important}
.category-card p{opacity:1!important;color:var(--ref-muted)!important;min-height:0!important;font-size:13px!important;line-height:1.55!important;margin-bottom:18px!important}
.category-card b{color:var(--ref-blue)!important;font-size:12px!important}
.category-card:hover{transform:translateY(-3px)!important;box-shadow:var(--ref-shadow)!important}

/* Produtos */
.products-section,.comparison-section,.utility-section,.about-section,.legal-section{background:var(--ref-paper-2)!important}
.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:22px!important}
.product-card{border:1px solid var(--ref-line)!important;border-radius:22px!important;box-shadow:none!important;background:#fff!important;transition:transform .2s ease,box-shadow .2s ease!important}
.product-card:hover{transform:translateY(-2px)!important;box-shadow:var(--ref-shadow)!important}
.product-media-shell{background:#f6f6f3!important;aspect-ratio:16/10.7!important}
.product-image-button>img{transform:none!important;padding:0!important;object-fit:contain!important;background:#f6f6f3!important}
.product-image-button:hover>img{transform:scale(1.01)!important}
.product-content{padding:25px!important}
.product-eyebrow{color:var(--ref-blue)!important;font-size:10px!important}
.product-content h3{font-size:33px!important;font-weight:500!important;letter-spacing:-.03em!important}
.product-content p{color:var(--ref-muted)!important;line-height:1.65!important}
.product-content p strong{color:var(--ref-ink)!important;font-family:Georgia,serif!important;font-size:18px!important;font-weight:500!important}
.product-tags{gap:7px!important}
.product-tags span{background:var(--ref-blue-soft)!important;color:var(--ref-blue)!important;border:0!important;border-radius:999px!important;font-size:10px!important}
.carousel-arrow{background:rgba(255,255,255,.95)!important;border:1px solid #dbdde2!important;box-shadow:0 6px 18px rgba(7,23,56,.10)!important}
.carousel-dots button.active{background:var(--ref-blue)!important}

/* Seção escura tipo editorial */
.guide-section{background:var(--ref-navy)!important;color:#fff!important}
.guide-grid{gap:76px!important}
.guide-intro>p:not(.eyebrow),.guide-list p{color:#c7d0e1!important}
.guide-list article{border-color:rgba(255,255,255,.13)!important;padding:27px 0!important}
.guide-list span{color:var(--ref-gold)!important}
.guide-list h3{font-size:24px!important}

/* Formulários, FAQ, conteúdo utilitário */
.contact-form-section,.faq-section{background:var(--ref-paper)!important}
.contact-form{background:#fff!important;border:1px solid var(--ref-line)!important;border-radius:22px!important;box-shadow:none!important}
.contact-form input,.contact-form select,.contact-form textarea{border-radius:10px!important;border-color:#d9d7d1!important;background:#fbfbf9!important}
.faq-grid{gap:70px!important}
.faq-list{border-color:#d5d1c8!important}
.faq-list details{border-color:#d5d1c8!important}
.faq-list summary{font-family:Georgia,serif!important;font-size:19px!important}
.faq-list details p{color:var(--ref-muted)!important}
.comparison-grid article,.utility-grid article{background:#fff!important;border-color:var(--ref-line)!important;border-radius:20px!important}

/* Loja / fotos */
.visit-section{background:#fff!important}
.visit-grid{gap:70px!important}
.visit-photo,.about-grid img{border-radius:210px 210px 22px 22px!important;box-shadow:var(--ref-shadow)!important}
.visit-photo{height:585px!important}
.visit-photo span{font-size:58px!important;color:rgba(255,255,255,.87)!important}
.visit-content>p:not(.eyebrow),.about-grid p:not(.eyebrow){color:var(--ref-muted)!important}
.visit-content dl div{border-color:#dedbd3!important}
.visit-content dt{color:var(--ref-blue)!important}

/* Condições especiais */
.special-offers-banner{background:var(--ref-navy)!important;border-radius:20px!important;box-shadow:none!important}
.special-offers-banner span{color:#9fb6e2!important}
.special-offers-banner strong{font-family:Georgia,serif!important;font-size:28px!important}
.special-condition-box{background:var(--ref-paper)!important;border-color:#e2ddd3!important;border-radius:12px!important}
.special-condition-box span{color:var(--ref-blue)!important}
.special-condition-box strong{color:var(--ref-navy)!important}

/* Conversão final e rodapé */
.conversion-band{background:var(--ref-navy)!important;padding:54px 0!important}
.conversion-inner h2{font-size:clamp(32px,4vw,50px)!important}
.footer{background:#04112d!important;padding-top:64px!important}
.footer-grid{gap:38px!important}
.footer p,.footer a{color:#c7d1e5!important}
.footer h2,.footer-title{color:#fff!important}
.footer-bottom{color:#8998b6!important;border-color:rgba(255,255,255,.12)!important}

/* Elementos flutuantes */
.floating-whatsapp{border-radius:12px!important;background:var(--ref-green)!important;box-shadow:0 12px 30px rgba(19,138,75,.25)!important}
.back-to-top{border-radius:12px!important}

/* Landing pages de Ads: mesma linguagem sem perder foco de conversão */
.ads-page,.ads-main{background:var(--ref-paper-2)!important}
.ads-hero,.ads-hero-section{background:var(--ref-navy)!important}
.ads-product-card,.ads-card{border-radius:20px!important;box-shadow:none!important;border:1px solid var(--ref-line)!important}

@media (max-width:1080px){
  .desktop-nav{gap:14px!important;font-size:12px!important}
  .header-cta{display:none!important}
  .hero-grid,.hero-home .hero-grid,.hero-inner .hero-grid,.hero.hero-inner.hero-home .hero-grid{grid-template-columns:1fr minmax(300px,.65fr)!important;gap:38px!important}
  .global-reviews-inner{grid-template-columns:220px minmax(0,1fr)!important;gap:30px!important}
  .trust-grid{grid-template-columns:repeat(2,1fr)!important}
  .trust-item:nth-child(2){border-right:0!important}
  .trust-item:nth-child(-n+2){border-bottom:1px solid #ded9cf!important}
  .category-grid{grid-template-columns:repeat(2,1fr)!important}
}

@media (max-width:820px){
  .container{width:min(100% - 30px,1180px)!important}
  .section{padding:72px 0!important}
  .topbar-inner{justify-content:center!important;text-align:center!important}
  .topbar-phone{display:none!important}
  .desktop-nav{display:none!important}
  .menu-toggle{display:block!important}
  .header-inner{height:68px!important}
  .brand img{width:142px!important;height:50px!important}
  .mobile-menu{background:#fff!important;border-top:1px solid #e2e3e7!important;padding:10px 15px 18px!important}
  .mobile-menu a{border-radius:10px!important;padding:11px 12px!important}

  .hero-grid,.hero-home .hero-grid,.hero-inner .hero-grid,.hero.hero-inner.hero-home .hero-grid{
    grid-template-columns:1fr!important;gap:34px!important;min-height:0!important;padding-top:44px!important;padding-bottom:46px!important;
  }
  .hero h1,.hero-home .hero-copy h1,.hero-inner h1,.hero.hero-inner.hero-home .hero-copy h1{font-size:clamp(40px,10vw,58px)!important}
  .hero-answer{font-size:16px!important}
  .hero-actions .button{width:100%!important}
  .hero-location-bar{align-items:stretch!important;flex-direction:column!important}
  .hero-location-link{width:100%!important;text-align:center!important}
  .hero-media,.hero-inner .hero-media,.hero.hero-inner.hero-home .hero-media{height:390px!important;min-height:390px!important;border-radius:165px 165px 18px 18px!important}

  .global-reviews-inner{grid-template-columns:1fr!important;gap:22px!important}
  .global-reviews-head{text-align:center!important}
  .global-review-actions{grid-column:1!important;justify-content:center!important;margin-top:0!important}
  .trust-grid{grid-template-columns:1fr!important}
  .trust-item{border-right:0!important;border-bottom:1px solid #ded9cf!important}
  .trust-item:last-child{border-bottom:0!important}
  .category-grid,.product-grid{grid-template-columns:1fr!important}
  .category-card>img{height:260px!important}
  .guide-grid,.visit-grid,.faq-grid,.contact-form-grid,.about-grid{grid-template-columns:1fr!important;gap:42px!important}
  .guide-intro{position:static!important}
  .visit-photo,.about-grid img{height:470px!important;border-radius:165px 165px 18px 18px!important}
  .section-heading{align-items:flex-start!important;flex-direction:column!important;gap:18px!important}
  .conversion-inner{align-items:stretch!important;flex-direction:column!important}
}

@media (max-width:520px){
  .container{width:min(100% - 24px,1180px)!important}
  .section{padding:60px 0!important}
  .hero-grid,.hero-home .hero-grid,.hero-inner .hero-grid,.hero.hero-inner.hero-home .hero-grid{padding-top:36px!important;padding-bottom:38px!important}
  .hero h1,.hero-home .hero-copy h1,.hero-inner h1,.hero.hero-inner.hero-home .hero-copy h1{font-size:clamp(37px,11.5vw,50px)!important}
  .hero-media,.hero-inner .hero-media,.hero.hero-inner.hero-home .hero-media{height:340px!important;min-height:340px!important;border-radius:145px 145px 16px 16px!important}
  .global-reviews-section{padding:62px 0 42px!important}
  .global-reviews-head h2{font-size:37px!important}
  .category-card>img{height:220px!important}
  .product-content{padding:21px!important}
  .product-content h3{font-size:29px!important}
  .visit-photo,.about-grid img{height:410px!important;border-radius:145px 145px 16px 16px!important}
  .mobile-actions{border-radius:14px!important}
  .mobile-actions a{border-radius:10px!important}
}
