/* ASSESSORIA CPR - CSS dos componentes compartilhados (Base A)
   Etapa 1. Carregar ANTES do styles.css de cada pagina.
   Paginas: home, seguro-de-vida, contato, politica, termos, faq, 404, blog.
   Para trocar a tipografia do site inteiro, editar --serif e --sans aqui. */
:root{--green:#004232;--green-hover:#005844;--brown:#2A1E17;--brown-alt:#382A20;--gold:#C39A39;--gold-hover:#D9B35B;--ice:#E2E8EB;--paper:#F5F8F9;--ink:#26343A;--muted:#40535B;--border:#CBD5D7;--white:#fff;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,Helvetica,sans-serif;--container:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);font:16px/1.65 var(--sans);background:#fff}a{color:inherit}button,input,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.container{width:min(var(--container),calc(100% - 64px));margin:auto}.skip{position:absolute;z-index:100;top:-80px;left:16px;background:#fff;color:var(--green);padding:10px 18px}.skip:focus{top:8px}.site-header{position:sticky;top:0;z-index:30;background:var(--brown);box-shadow:0 4px 20px #0002}.header-inner{max-width:1440px;margin:auto;display:flex;align-items:center;gap:30px;min-height:88px;padding:0 36px}.brand{align-self:stretch;display:flex;align-items:center;gap:12px;background:#fff;color:var(--green);text-decoration:none;padding:10px 34px 10px 18px;margin-left:-36px;border-bottom-right-radius:28px;min-width:240px}.brand-symbol{border:4px solid var(--green);border-right-color:transparent;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;font:700 34px var(--serif);position:relative;line-height:1}.brand-symbol span{position:absolute;font:700 23px var(--sans);color:var(--gold);right:-2px;top:3px}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy small{letter-spacing:.14em;font-size:11px}.brand-copy strong{font:700 32px var(--serif);letter-spacing:.02em}.brand-copy em{font-style:normal;font-size:8px;letter-spacing:.22em}.nav{display:flex;align-items:center;gap:24px;margin-left:auto}.nav a{color:#fff;text-decoration:none;white-space:nowrap;font-size:13px;font-weight:600;padding:10px 0}.nav a:hover,.nav a[aria-current]{color:var(--gold)}.btn{min-height:48px;border:1px solid transparent;border-radius:9px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:12px 24px;font-size:14px;font-weight:700;line-height:1.3;cursor:pointer;transition:background .2s,transform .2s}.btn:hover{transform:translateY(-1px)}.btn-gold{background:var(--gold);color:#22180f}.btn-gold:hover{background:var(--gold-hover)}.header-cta{margin-left:14px;white-space:nowrap}.menu-toggle{display:none}.hero{min-height:620px;position:relative;isolation:isolate;display:flex;align-items:center;background:linear-gradient(110deg,var(--brown),#433126);color:#fff;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(42,30,23,.98) 0%,rgba(42,30,23,.94) 41%,rgba(42,30,23,.48) 71%,rgba(42,30,23,.19) 100%);z-index:-1}.hero-photo{position:absolute;right:0;top:0;bottom:0;width:58%;background-image:linear-gradient(90deg,#2a1e17 0%,transparent 52%),url('../img/02.avif');background-position:center,right center;background-size:cover;z-index:-2}.hero-inner{padding:95px 0}.hero-copy{max-width:660px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.22em;color:var(--gold);margin:0 0 22px}.hero h1,.section h2,.final h2{font-family:var(--serif);font-weight:400;line-height:1.06;letter-spacing:-.025em}.hero h1{font-size:clamp(40px,3.6vw,54px);margin:0 0 28px;max-width:690px}.hero h1 span{color:#dfbc78}.hero-title-break{display:block}.hero-subtitle{font-size:19px;max-width:560px;line-height:1.55;color:#f0eae6}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 25px}.btn-outline{color:#fff;border-color:var(--gold);background:#24190d55}.btn-outline:hover{background:#ffffff18}.hero-note{font-size:12px;color:#e4d9d1;max-width:530px}.feature-band{background:linear-gradient(110deg,#004232,#005844);color:#fff}
/* Diferenciais: os quatro permanecem simultaneamente visíveis no desktop.
   O segundo grupo é uma cópia visual, oculta dos leitores de tela,
   para dar continuidade à rotação da direita para a esquerda, sem saltos. */
.cpr-rotacao {
  overflow: hidden;
  position: relative;
}
.cpr-rotacao-trilho {
  display: flex;
  width: 200%;
  animation: cprRotacaoCircular 28s linear infinite;
  will-change: transform;
}
.cpr-rotacao-grupo {
  flex: 0 0 50%;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}
.cpr-rotacao-item {
  min-width: 0;
  min-height: 129px;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 18px;
  border-left: 1px solid rgba(255, 255, 255, .24);
}
.cpr-rotacao-texto { min-width: 0; }
.cpr-icone {
  font: 41px/1 var(--serif);
  color: #e0b86b;
  flex: 0 0 43px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.cpr-rotacao strong {
  display: block;
  color: #fff;
  font-size: 16px;
  line-height: 1.25;
  margin-bottom: 7px;
}
.cpr-rotacao p {
  margin: 0;
  color: #e2e8eb;
  font-size: 13px;
  line-height: 1.45;
}
@keyframes cprRotacaoCircular {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}
/* Suspende o deslocamento quando o usuário passa o mouse sobre a faixa. */
.cpr-rotacao:hover .cpr-rotacao-trilho,
.cpr-rotacao:focus-within .cpr-rotacao-trilho { animation-play-state: paused; }

/* Telas menores: quatro diferenciais continuam presentes, em grade legível.
   Um realce dourado circula suavemente entre eles, mantendo a sensação de rotação. */
@media (max-width: 950px) {
  .cpr-rotacao-trilho { width: 100%; animation: none; will-change: auto; }
  .cpr-rotacao-grupo { flex-basis: 100%; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .cpr-rotacao-grupo[aria-hidden="true"] { display: none; }
  .cpr-rotacao-item { min-height: 124px; padding: 18px 14px; border-bottom: 1px solid rgba(255,255,255,.16); animation: cprRealceCircular 12s ease-in-out infinite; }
  .cpr-rotacao-item:nth-child(2) { animation-delay: 3s; }
  .cpr-rotacao-item:nth-child(3) { animation-delay: 6s; }
  .cpr-rotacao-item:nth-child(4) { animation-delay: 9s; }
}
@media (max-width: 560px) {
  .cpr-rotacao-grupo { grid-template-columns: 1fr; }
  .cpr-rotacao-item { min-height: 90px; padding: 13px 6px; }
  .cpr-icone { font-size: 32px; flex-basis: 40px; }
  .cpr-rotacao strong { font-size: 16px; }
  .cpr-rotacao p { font-size: 13px; }
}
@keyframes cprRealceCircular {
  0%, 22%, 100% { box-shadow: inset 3px 0 0 rgba(195,154,57,0); }
  4%, 17% { box-shadow: inset 3px 0 0 #C39A39; }
}
@media (prefers-reduced-motion: reduce) {
  .cpr-rotacao-trilho { animation: none !important; transform: none !important; }
  .cpr-rotacao-grupo[aria-hidden="true"] { display: none; }
  .cpr-rotacao-item { animation: none !important; }
}

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Animação dos diferenciais somente com CSS; o conteúdo original permanece no HTML. */
.section{padding:100px 0}.solutions{background:var(--ice)}.solutions-layout{display:grid;grid-template-columns:minmax(240px,.8fr) 2fr;gap:48px;align-items:center}.on-light{color:#946b25}.section h2,.final h2{font-size:clamp(37px,3.7vw,55px);margin:0 0 22px;color:var(--green)}.section-intro>p:not(.eyebrow),.section-heading>p:not(.eyebrow){color:var(--muted);font-size:16px}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:700;color:var(--green);text-decoration:none;border-bottom:1px solid #9aab9f;padding:14px 0}.solution-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.solution-card{background:#fff;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 12px 28px #112e2820}.card-photo{aspect-ratio:4/3;background-position:center;background-size:cover;background-color:#b4c1bc}.family{background-image:url('../img/01.webp')}.professionals{background-image:linear-gradient(135deg,#a7b6b3aa,#4a6f6688),url('../img/02.avif')}.business{background-image:linear-gradient(135deg,#d0b49d55,#18382e77),url('../img/02.avif');background-position:75% center}.card-content{padding:20px;display:flex;flex-direction:column;flex:1}.card-kicker{letter-spacing:.12em;color:#95713c;font-size:9px;font-weight:700}.solution-card h3{font:600 23px/1.1 var(--serif);color:var(--green);margin:8px 0 12px}.solution-card p{font-size:13px;line-height:1.65;margin:0 0 20px;flex:1}.solution-card a{font-weight:700;font-size:12px;text-decoration:none;color:var(--green);display:flex;justify-content:space-between;border-top:1px solid #e2e8eb;padding-top:15px}.section-heading{max-width:770px;margin:0 auto 40px;text-align:center}.coverages{background:#fff}.coverage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.coverage-card{background:var(--paper);border:1px solid var(--border);border-radius:13px;padding:28px 25px;min-height:260px}.coverage-symbol{font:38px/1 var(--serif);color:#b68a3f}.coverage-card h3{font:600 29px/1.2 var(--serif);color:var(--green);margin:20px 0 12px}.coverage-card p{font-size:14px;color:var(--muted);margin:0}.coverage-disclaimer{text-align:center;font-size:12px;color:var(--muted);margin:25px auto 0;max-width:780px}.how{background:var(--paper)}.steps{counter-reset:step;list-style:none;padding:0;margin:50px 0 34px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.steps li{border-top:1px solid #bbcaca;padding-top:22px}.steps li>span{font:600 38px var(--serif);color:var(--gold)}.steps h3{font:600 25px/1.18 var(--serif);color:var(--green);margin:15px 0 10px}.steps p{font-size:14px;color:var(--muted)}.step-bottom{text-align:center}.btn-green{background:var(--green);color:#fff}.btn-green:hover{background:var(--green-hover)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-visual{position:relative;min-height:450px}.about-photo{height:430px;border-radius:16px;background:linear-gradient(#2a1e1730,#00423255),url('../img/02.avif') center/cover}.about-mark{position:absolute;bottom:-15px;right:-15px;background:var(--green);color:#fff;padding:22px 30px;border-radius:12px;font:700 31px var(--serif);box-shadow:0 12px 30px #0002}.about-mark span{display:block;font:700 10px var(--sans);letter-spacing:.2em}.about-copy p:not(.eyebrow){color:var(--muted)}.faq{background:var(--ice)}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:85px}.faq-list details{background:#fff;border:1px solid #cbd5d7;border-radius:9px;margin-bottom:10px;padding:0 22px}.faq-list summary{cursor:pointer;list-style:none;padding:18px 30px 18px 0;position:relative;font-weight:700;color:var(--green);font-size:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;font-size:26px;top:10px;color:var(--gold)}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:14px;color:var(--muted);padding:0 0 18px;margin:0}.final{background:linear-gradient(120deg,#2A1E17,#382A20);color:#fff;padding:100px 0}.final-layout{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.final h2{color:#fff;font-size:clamp(43px,4vw,61px)}.final-copy>p:not(.eyebrow){max-width:470px;color:#e8e0d9;font-size:17px}.contact-alternate{display:flex;flex-direction:column;gap:8px;margin-top:40px}.contact-alternate span{font-size:13px;color:#d6c3b4}.contact-alternate a{color:#e8c075;font-weight:700}.contact-form{background:#fff;border-radius:14px;color:var(--ink);padding:35px;display:flex;flex-direction:column;box-shadow:0 20px 50px #0002}.contact-form h3{font:500 33px/1.1 var(--serif);color:var(--green);margin:0 0 8px}.contact-form>p{font-size:12px;color:var(--muted);margin:0 0 15px}.contact-form label:not(.consent){font-size:12px;font-weight:700;margin:11px 0 5px}.contact-form input:not([type=checkbox]),.contact-form select{padding:12px 13px;min-height:46px;border:1px solid #becdca;border-radius:7px;background:#fff;width:100%;color:var(--ink);font-size:14px}.consent{display:flex;gap:10px;margin:19px 0;font-size:11px;line-height:1.5;color:var(--muted)}.consent input{width:17px;height:17px;margin-top:2px;flex:none}.consent a{color:var(--green)}.btn-full{width:100%}.contact-form .form-note{margin:12px 0 0;font-size:10px;text-align:center}.footer{background:var(--green);color:#e2e8eb;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.35fr;gap:45px}.footer-brand{font-size:14px;letter-spacing:.07em}.footer-brand strong{font:700 32px var(--serif);letter-spacing:0}.footer p{font-size:13px;max-width:330px}.footer h3{font-size:13px;color:#fff;margin:3px 0 17px}.footer a,.footer-grid span{font-size:12px;display:block;text-decoration:none;color:#e2e8eb;margin-bottom:12px}.footer a:hover{color:#eed093}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff2b;padding:18px 0;margin-top:45px;font-size:11px}.footer-bottom a{font-size:11px}.menu-toggle{background:transparent;border:0;cursor:pointer;width:44px;height:44px;padding:10px}.menu-toggle span{height:2px;background:#fff;display:block;margin:5px 0}
@media(max-width:1180px){.header-inner{gap:15px;padding:0 22px}.brand{margin-left:-22px;min-width:202px;padding-right:20px}.nav{gap:15px}.nav a{font-size:11px}.header-cta{font-size:12px;padding:10px 14px}.solutions-layout{grid-template-columns:1fr;gap:30px}.section-intro{max-width:720px}}
@media(max-width:850px){.container{width:min(100% - 40px,680px)}.header-inner{min-height:72px;justify-content:space-between}.brand{min-width:185px}.menu-toggle{display:block;margin-left:auto}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--brown);flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 24px;border-top:1px solid #ffffff25}.nav.is-open{display:flex}.nav a{padding:12px 0;font-size:14px}.header-cta{display:none}.hero{min-height:590px}.hero-photo{width:88%;opacity:.38}.hero:before{z-index:-1;background:linear-gradient(90deg,#2a1e17 0%,#2a1e17df 65%,#2a1e1785 100%)}.hero-inner{padding:90px 0}.features{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.feature:nth-child(2){border-right:0}.feature:nth-child(3){padding-left:0}.feature-carousel.is-enhanced .feature{flex-basis:100%;opacity:1}.feature-carousel.is-enhanced .feature:first-child{padding-left:26px}.section{padding:70px 0}.coverage-grid,.steps{grid-template-columns:repeat(2,1fr)}.about-layout,.faq-layout,.final-layout{grid-template-columns:1fr;gap:38px}.about-visual{min-height:350px}.about-photo{height:350px}.final{padding:70px 0}.footer-grid{grid-template-columns:repeat(2,1fr);gap:35px}}
@media(max-width:600px){.hero{min-height:575px}.hero h1{font-size:38px}.hero-title-break{display:none}.hero-subtitle{font-size:16px}.actions{flex-direction:column;align-items:stretch}.actions .btn{justify-content:space-between}.features{grid-template-columns:1fr;padding:15px 0}.feature{padding:14px 0;border-right:0;border-bottom:1px solid #ffffff26}.feature:last-child{border-bottom:0}.feature-carousel.is-enhanced .features{padding:7px 0}.feature-carousel.is-enhanced .feature{min-height:120px;padding:14px 12px;border:0}.feature-carousel.is-enhanced .feature:first-child{padding-left:12px}.solution-grid,.coverage-grid,.steps{grid-template-columns:1fr}.card-photo{aspect-ratio:16/9}.coverage-card{min-height:unset}.section h2{font-size:37px}.about-mark{right:0}.contact-form{padding:25px}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:12px;flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Prompt 10, revisão da seção Coberturas: composição fiel à referência visual enviada.
   Título centrado, cards simétricos em quatro colunas, fundos alternados e ícones lineares. */
.coverages {
  background-color: #ffffff;
  background-image: radial-gradient(rgba(86,64,48,.065) .65px,transparent .65px);
  background-size: 5px 5px;
  padding-block: 82px 85px;
}
.coverages .coverage-heading { max-width: 1030px; margin: 0 auto 34px; text-align: center; }
.coverages .coverage-heading .eyebrow { color:#8F6B32; margin-bottom: 14px; font-size: 11px; letter-spacing: .23em; }
.coverages .coverage-heading h2 { color: #2a1e17; font-family: var(--serif); font-size: clamp(34px,3.8vw,52px); line-height: 1.09; font-weight: 500; letter-spacing: -.028em; max-width: 1000px; margin: 0 auto 20px; text-wrap: balance; }
.coverages .coverage-heading h2 span { color: #B39A7A; }
.coverages .coverage-heading > p:last-child { font-size: 17px; line-height: 1.6; color:#504c48; max-width: 730px; margin: 0 auto; }
.coverages .coverage-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; align-items:stretch; }
.coverages .coverage-card { display:flex; flex-direction:column; align-items:flex-start; min-height:302px; padding:29px 28px 31px; background:#fff; border:1px solid #D9D0C7; border-radius:6px; box-shadow:0 9px 15px rgba(51,34,23,.09); transition: transform .22s ease,box-shadow .22s ease; }
.coverages .coverage-card:nth-child(even){ background:#E9E2DB; box-shadow:0 4px 12px rgba(51,34,23,.045); }
.coverages .coverage-card:hover{ transform:translateY(-4px); box-shadow:0 14px 22px rgba(51,34,23,.12); }
.coverages .coverage-icon{ width:46px; height:46px; flex:0 0 46px; color:#2A1E17; margin-bottom:25px; }
.coverages .coverage-card h3 { color:#2a1e17; font-family:var(--sans); font-weight:500; font-size:clamp(22px,2vw,27px); line-height:1.22; letter-spacing:-.03em; margin:0 0 13px; overflow-wrap:break-word; }
.coverages .coverage-card p { color:#46413c; font-size:15px; line-height:1.53; margin:0; max-width:29ch; }
.coverages .coverage-disclaimer { max-width: 1010px; color:#56524e; text-align:center; font-size:13px; line-height:1.6; margin:26px auto 0; }
@media (max-width: 960px) {
  .coverages .coverage-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .coverages .coverage-card{min-height:270px;}
}
@media (max-width: 600px) {
  .coverages{padding-block:65px;}
  .coverages .coverage-heading{margin-bottom:30px;}
  .coverages .coverage-heading h2{font-size:clamp(31px,8vw,39px);}
  .coverages .coverage-heading > p:last-child{font-size:15px;}
  .coverages .coverage-grid{grid-template-columns:1fr;gap:15px;}
  .coverages .coverage-card{min-height:unset;padding:25px 25px 27px;}
  .coverages .coverage-icon{margin-bottom:17px;}
  .coverages .coverage-card p{max-width:unset;}
}
@media (prefers-reduced-motion: reduce){.coverages .coverage-card{transition:none;}.coverages .coverage-card:hover{transform:none;}}

/* PROMPT 12: cabeçalho e submenu responsivo; demais seções preservadas */
.site-header{overflow:visible}
.header-inner{gap:clamp(8px,1.2vw,18px)}
.brand{min-width:210px;padding-right:17px}
.nav{gap:clamp(9px,1.2vw,21px)}
.nav>a:not(.nav-mobile-cta),.nav-dropdown-head>a{display:inline-flex;align-items:center;gap:7px;text-transform:uppercase;font-size:11px;letter-spacing:.035em;line-height:1.3;font-weight:700;white-space:nowrap;text-decoration:none;color:#fff;padding:12px 0}
.nav-icon{height:15px;width:15px;flex:0 0 15px;display:inline-block}
.nav>a:hover,.nav>a:focus-visible,.nav-dropdown-head>a:hover,.nav-dropdown-head>a:focus-visible,.nav a[aria-current]{color:var(--gold)}
.nav-dropdown{position:relative}
.nav-dropdown-head{display:flex;align-items:center;gap:1px}
.submenu-toggle{border:0;background:transparent;color:#fff;cursor:pointer;width:28px;height:36px;display:inline-grid;place-items:center;border-radius:6px;padding:5px}
.submenu-toggle svg{transition:transform .2s}
.nav-dropdown.is-open .submenu-toggle svg{transform:rotate(180deg)}
.nav-submenu{display:none;position:absolute;top:100%;left:-12px;background:#fff;border:1px solid #e2e8eb;border-top:3px solid var(--gold);box-shadow:0 18px 38px #0003;border-radius:0 0 12px 12px;min-width:325px;max-width:min(90vw,390px);padding:10px;z-index:45}
.nav-dropdown.is-open .nav-submenu,.nav-dropdown:focus-within .nav-submenu{display:grid;gap:1px}
.nav-submenu a{display:flex;align-items:center;gap:11px;white-space:normal!important;color:var(--green)!important;font-size:12px!important;font-weight:600;text-decoration:none;padding:12px!important;border-radius:7px;line-height:1.35}
.nav-submenu a:hover,.nav-submenu a:focus-visible{background:#f5f8f9;color:#004232!important}
.nav-submenu .nav-icon{color:#987128}
.header-cta{font-size:11px;padding:11px 13px;gap:7px;margin-left:4px;min-height:44px}
.nav-mobile-cta{display:none}
@media(max-width:1270px) and (min-width:981px){.brand{min-width:172px}.brand-symbol{width:46px;height:46px;font-size:29px}.brand-copy strong{font-size:27px}.header-inner{padding:0 20px}.brand{margin-left:-20px}.nav{gap:9px}.nav>a:not(.nav-mobile-cta),.nav-dropdown-head>a{font-size:10px;gap:4px}.nav-icon{width:13px;height:13px;flex-basis:13px}.header-cta{font-size:10px;padding:10px 9px}}
@media(max-width:980px){
 .header-inner{min-height:72px;justify-content:space-between}
 .menu-toggle{display:block;margin-left:auto}
 .nav{display:none;position:absolute;top:100%;left:0;right:0;max-height:calc(100vh - 72px);overflow-y:auto;background:var(--brown);flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 24px;border-top:1px solid #ffffff25;box-shadow:0 18px 26px #0004}
 .nav.is-open{display:flex}
 .nav>a:not(.nav-mobile-cta),.nav-dropdown-head>a{font-size:14px;padding:14px 0;gap:12px}
 .nav-icon{width:18px;height:18px;flex-basis:18px}
 .nav-dropdown-head{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff24}
 .submenu-toggle{width:48px;height:46px;color:var(--gold)}
 .nav-submenu{position:static;min-width:unset;max-width:unset;box-shadow:none;background:#1f332c;border:0;border-left:2px solid var(--gold);border-radius:0;margin:0 0 12px 24px;padding:7px}
 .nav-submenu a{color:#fff!important;font-size:13px!important;padding:13px!important}
 .nav-submenu a:hover,.nav-submenu a:focus-visible{background:#ffffff15;color:#fff!important}
 .nav-mobile-cta{display:flex!important;margin-top:15px;background:var(--gold);color:#2a1e17!important;text-decoration:none;justify-content:center;border-radius:8px;padding:14px!important;font-weight:700;font-size:12px!important;letter-spacing:.02em}
 .header-cta{display:none}
}
@media(prefers-reduced-motion:reduce){.submenu-toggle svg{transition:none}}

/* PROMPT 13: cabecalho fixo com estado de rolagem e seções empilhadas. */
:root { --cpr-header-height: 88px; }
html { scroll-padding-top: calc(var(--cpr-header-height) + 24px); }
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  transition: background-color .25s ease, box-shadow .25s ease;
}
.site-header.is-scrolled {
  background-color: #2a1e17;
  box-shadow: 0 12px 32px rgba(22, 15, 10, .29);
}
/* Links de âncora também ficam visíveis ao entrar por URL com fragmento. */
main [id] { scroll-margin-top: calc(var(--cpr-header-height) + 24px); }
/* Somente desktop alto: não prender cards ou formulário em telas pequenas. */
@media (min-width: 1100px) and (min-height: 780px) and (prefers-reduced-motion: no-preference) {
  .solutions, .coverages, .how {
    position: sticky;
    top: var(--cpr-header-height);
    isolation: isolate;
    box-shadow: 0 -15px 25px rgba(32,29,24,.10);
  }
  .solutions { z-index: 2; }
  .coverages { z-index: 3; }
  .how { z-index: 4; }
  /* As seções seguintes passam por cima do último painel ao continuar o scroll. */
  .about, .faq, .final { position: relative; }
  .about { z-index: 5; background: #fff; }
  .faq { z-index: 6; }
  .final { z-index: 7; }
}
@media (max-width: 980px) { :root { --cpr-header-height: 72px; } }
@media (prefers-reduced-motion: reduce) {
  .site-header { transition: none; }
  .solutions, .coverages, .how { position: static; box-shadow: none; }
}

/* PROMPT 14 — refinamento da Home, sem mudanças na estrutura ou efeitos aprovados */
:root { --cpr-section-gap: clamp(64px, 7vw, 104px); --cpr-card-radius: 14px; --cpr-card-shadow: 0 12px 30px rgba(17,46,40,.10); }
/* Sistema consistente de ritmo, dimensões e largura útil */
.section { padding-block: var(--cpr-section-gap); }
.section .container, .final .container, .feature-band .container { max-width: var(--container); }
.section-heading { max-width: 790px; margin-inline: auto; margin-bottom: clamp(30px, 3.3vw, 46px); }
.section-intro > .eyebrow, .section-heading > .eyebrow { margin-bottom: 16px; }
.section-intro h2, .section-heading h2 { overflow-wrap: balance; text-wrap: balance; }
.section-intro > p:not(.eyebrow), .section-heading > p:not(.eyebrow) { line-height: 1.65; margin-bottom: 0; }
/* Botões e âncoras: tamanho constante, foco visível e chamadas intactas no contexto */
.btn { min-height: 50px; border-radius: 9px; padding: 12px 22px; gap: 12px; text-align:center; }
.btn:focus-visible,.text-link:focus-visible,.solution-card a:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.actions { gap: 14px; align-items: stretch; }
.actions > .btn { min-height: 52px; }
.header-cta { min-height: 44px; }
.text-link { max-width: 100%; line-height: 1.45; }
/* Três cards de soluções com mesma linha de imagem, conteúdo e CTA ancorado no rodapé */
.solution-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,1.6vw,22px); align-items:stretch; }
.solution-card { height:100%; min-width:0; border-radius:var(--cpr-card-radius); box-shadow:var(--cpr-card-shadow); }
.solution-card .card-photo { aspect-ratio: 4/3; width:100%; flex:none; }
.solution-card .card-content { padding: clamp(20px,2vw,26px); display:flex; flex-direction:column; flex:1; }
.solution-card .card-kicker { min-height: 1.4em; line-height: 1.4; }
.solution-card h3 { min-height: 2.25em; line-height:1.14; margin:10px 0 13px; }
.solution-card .card-content > p { flex: 1; margin:0 0 24px; line-height:1.65; }
.solution-card .card-content > a { margin-top:auto; min-height:44px; display:flex; align-items:center; justify-content:space-between; gap:10px; padding-top:14px; line-height:1.35; }
/* Quatro coberturas: preserva estilo, alturas/ícones simétricos sem truncar conteúdo */
.coverages .coverage-grid { align-items:stretch; gap:clamp(14px,1.5vw,20px); }
.coverages .coverage-card { display:flex; flex-direction:column; height:100%; min-width:0; border-radius:var(--cpr-card-radius); }
.coverages .coverage-icon { flex:0 0 46px; }
.coverages .coverage-card h3 { min-height:2.45em; display:flex; align-items:flex-start; }
.coverages .coverage-card p { flex:1; max-width:none; }
/* Etapas com alinhamento de número, título e texto */
.steps { align-items:stretch; gap:clamp(16px,2vw,26px); }
.steps li { display:flex; flex-direction:column; min-width:0; padding-bottom:12px; }
.steps li > span { min-height:1.35em; }
.steps h3 { min-height:2.5em; }
.steps p { margin:0; }
/* Layouts de duas colunas: respiro consistente e formulários sem overflow */
.about-layout { gap:clamp(30px,5.5vw,78px); }
.faq-layout { gap:clamp(32px,5.5vw,80px); }
.final-layout { gap:clamp(32px,6vw,96px); }
.contact-form { min-width:0; }
.contact-form .btn-full { min-height:52px; }
/* Mantém as mesmas cores, menu fixo, empilhamento e marquee do Prompt 13 */
@media(max-width:1100px) { .solutions-layout { gap:28px; } .solution-card .card-content {padding:20px;} }
@media(max-width:980px) { .solutions-layout { grid-template-columns:1fr; gap:28px; } .solution-grid {grid-template-columns:repeat(3,minmax(0,1fr));} .about-layout,.faq-layout,.final-layout {gap:32px;} }
@media(max-width:760px) { .solution-grid {grid-template-columns:1fr; gap:18px;} .solution-card h3 {min-height:0;} .coverages .coverage-card h3 {min-height:0;} .steps h3 {min-height:0;} .section {padding-block:64px;} }
@media(min-width:601px) and (max-width:960px) { .coverages .coverage-card h3 {min-height:2.3em;} }
@media(max-width:560px) { .container {width:min(var(--container),calc(100% - 36px));} .hero-inner {padding-block:72px;} .actions { flex-direction:column; align-items:stretch; } .actions > .btn {width:100%;} .solution-card .card-photo {aspect-ratio:16/10;} .solution-card .card-content {padding:22px;} .contact-form {padding:clamp(19px,5vw,30px);} .btn {white-space:normal;} }
@media(prefers-reduced-motion:reduce) { .btn {transition:none;} .btn:hover {transform:none;} }
