/* V6 — trajetória, autoridade documental e mídia definitiva. */
.nav-group { position:relative; color:rgba(255,255,255,.82); }
.nav-group summary { position:relative; list-style:none; cursor:pointer; font-size:.76rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.nav-group summary::-webkit-details-marker { display:none; }
.nav-group summary::after { content:'⌄'; margin-left:.45rem; color:var(--accent); }
.nav-group[data-current='true'] summary { color:#fff; }
.nav-group[data-current='true'] summary::before { content:''; position:absolute; left:0; right:1rem; bottom:-.6rem; height:1px; background:var(--accent); }
.nav-submenu { position:absolute; top:calc(100% + 1rem); left:50%; width:210px; padding:.7rem; display:grid; gap:.15rem; background:var(--brand); border:1px solid rgba(220,153,107,.28); border-radius:14px; box-shadow:0 18px 45px rgba(0,0,0,.24); transform:translateX(-50%); }
.nav-group:not([open]) .nav-submenu { display:none; }
.nav-submenu a { padding:.75rem .8rem; border-radius:8px; }
.nav-submenu a::after { bottom:.35rem; left:.8rem; width:calc(100% - 1.6rem); }
.authority-link { margin-top:1.1rem; color:var(--gold-dark); font-weight:700; }
.home-hero .cinematic-media img { object-position:62% 45%; }

.about-hero { min-height:760px; color:#fff; background:var(--brand); }
.about-hero .cinematic-media img { object-position:55% 30%; }
.about-hero .cinematic-overlay { background:linear-gradient(90deg,rgba(6,6,38,.97) 0 36%,rgba(6,6,38,.76) 48%,rgba(6,6,38,.12) 78%),linear-gradient(0deg,rgba(6,6,38,.54),transparent 55%); }
.about-hero .cinematic-copy { max-width:1500px; padding-top:155px; }
.about-hero h1 { max-width:12ch; font-size:clamp(3.2rem,5.2vw,5.8rem); }
.about-hero .hero-lead { max-width:45rem; }
.about-hero .button { margin-top:2rem; }
.about-trust { position:relative; z-index:2; }

@media(min-width:801px) {
 .about-hero .cinematic-media { left:43%; top:92px; }
 .about-hero .cinematic-media img { object-position:50% 42%; }
 .about-hero .cinematic-overlay { background:linear-gradient(90deg,var(--brand) 0 39%,rgba(6,6,38,.3) 48%,rgba(6,6,38,.05) 68%); }
 .about-hero .cinematic-copy { padding-right:var(--gutter); }
 .about-hero .cinematic-copy > * { max-width:min(510px,33vw); }
 .about-hero h1 { max-width:11ch; font-size:clamp(3rem,4.3vw,5rem); }
}

.about-editorial { display:grid; grid-template-columns:minmax(300px,.82fr) 1.18fr; gap:clamp(3rem,8vw,8rem); align-items:center; }
.about-portrait { min-height:650px; overflow:hidden; border-radius:24px 24px 96px 24px; box-shadow:var(--shadow); }
.about-portrait picture,.about-portrait img { width:100%; height:100%; min-height:650px; }
.about-portrait img { object-fit:cover; object-position:52% 32%; }
.about-narrative { max-width:650px; }
.about-narrative p:not(.eyebrow) { color:var(--ink-soft); font-size:1.05rem; line-height:1.85; }
.about-narrative p:last-child { color:var(--brand); font-family:var(--serif); font-size:1.45rem; line-height:1.45; }
.learning-section { position:relative; overflow:hidden; }
.learning-section::after { content:'17'; position:absolute; right:3vw; top:-.22em; color:rgba(255,255,255,.035); font:400 min(34vw,30rem)/1 var(--serif); }
.learning-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr .85fr; gap:clamp(3rem,8vw,8rem); align-items:end; }
.learning-grid .section-copy { font-size:1.12rem; line-height:1.8; }

.recognitions-section { background:var(--paper); }
.recognitions-heading { max-width:850px; margin:0 auto clamp(3rem,6vw,5rem); text-align:center; }
.recognitions-heading .section-title,.recognitions-heading .section-copy { margin-inline:auto; }
.recognitions-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; }
.recognition-card { overflow:hidden; display:grid; grid-template-columns:minmax(220px,.9fr) 1.1fr; min-height:380px; border:1px solid rgba(166,95,61,.16); border-radius:22px; background:#fff; box-shadow:0 12px 38px rgba(6,6,38,.055); }
.recognition-card:first-child { grid-column:1/-1; grid-template-columns:1.1fr .9fr; }
.recognition-media { min-height:300px; padding:1.25rem; border:0; background:#ebe8e2; cursor:zoom-in; }
.recognition-media picture,.recognition-media img { width:100%; height:100%; }
.recognition-media img { object-fit:contain; }
.recognition-copy { padding:clamp(1.5rem,3vw,2.5rem); display:flex; flex-direction:column; justify-content:center; }
.recognition-year { margin:0 0 .8rem; color:var(--gold-dark); font-size:.75rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.recognition-copy h3 { margin:0; color:var(--brand); font:400 clamp(1.8rem,2.6vw,2.6rem)/1.08 var(--serif); }
.recognition-copy > p:not(.recognition-year) { color:var(--ink-soft); }
.recognition-open { align-self:flex-start; min-height:44px; margin-top:.6rem; padding:0; border:0; border-bottom:1px solid var(--accent); background:none; color:var(--brand); cursor:pointer; font-weight:700; }
.recognition-archive { margin-top:2rem; padding:2rem; display:grid; grid-template-columns:.7fr 1.3fr; gap:2rem; align-items:center; border-radius:22px; background:var(--paper-deep); }
.recognition-archive h3 { margin:.2rem 0; color:var(--brand); font:400 2rem/1.1 var(--serif); }
.recognition-archive p { color:var(--ink-soft); }
.archive-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.archive-document { padding:0; overflow:hidden; border:1px solid rgba(166,95,61,.16); border-radius:16px; background:#fff; cursor:zoom-in; }
.archive-document picture { height:190px; padding:.8rem; display:block; }
.archive-document img { width:100%; height:100%; object-fit:contain; }
.archive-document span { padding:.8rem 1rem; display:flex; justify-content:space-between; border-top:1px solid var(--line); color:var(--brand); font-size:.82rem; font-weight:700; }
.about-memories { background:var(--brand); }
.about-final-wrap { padding-top:0; }
.about-final { width:min(100%,var(--max)); margin-inline:auto; padding:clamp(3rem,7vw,6rem); text-align:center; border-radius:28px; background:var(--brand); color:#fff; }
.about-final h2 { max-width:14ch; margin:.25rem auto; font:400 clamp(2.8rem,5vw,5rem)/1 var(--serif); }
.about-final > p:not(.eyebrow) { max-width:700px; margin:1.5rem auto; color:rgba(255,255,255,.74); }
.about-final .button { margin-top:.5rem; }

@media(max-width:1100px) and (min-width:801px) {
 .header-inner { grid-template-columns:155px 1fr auto; gap:1rem; }
 .main-nav { gap:1.1rem; }
 .main-nav > a,.nav-group summary { font-size:.66rem; }
 .recognition-card { grid-template-columns:1fr; }
 .recognition-card:first-child { grid-template-columns:1fr 1fr; }
}

@media(max-width:800px) {
 .main-nav { align-items:center; }
 .main-nav > a,.nav-group { width:100%; text-align:center; }
 .nav-group summary { padding:.75rem 0; color:#fff; font-family:var(--serif); font-size:clamp(1.45rem,7vw,2rem); font-weight:700; letter-spacing:0; text-transform:none; }
 .nav-group[data-current='true'] summary::before { display:none; }
 .nav-submenu { position:static; width:100%; padding:.15rem 0 .65rem; border:0; border-radius:0; background:rgba(255,255,255,.035); box-shadow:none; transform:none; }
 .nav-submenu a { padding:.45rem 0; border-bottom:0; color:rgba(255,255,255,.76); font-family:var(--sans); font-size:1rem; font-weight:700; }
 .home-hero .cinematic-media img { object-position:61% 46%; }
 .authority-link { justify-content:center; }
 .cinematic-hero.about-hero { min-height:0; display:block; padding-top:72px; }
 .about-hero .cinematic-media { position:relative; inset:auto; width:100%; height:auto; aspect-ratio:3/2; }
 .about-hero .cinematic-media img { object-position:50% 25%; }
 .about-hero .cinematic-overlay { display:none; }
 .about-hero .cinematic-copy { position:relative; padding:2rem var(--gutter) 3rem; text-align:center; background:var(--brand); }
 .about-hero .cinematic-copy > * { margin-inline:auto; }
 .about-hero h1 { max-width:100%; font-size:clamp(2.25rem,9.2vw,3.25rem); line-height:1.07; }
 .about-editorial,.learning-grid { grid-template-columns:1fr; gap:2.5rem; }
 .about-portrait,.about-portrait picture,.about-portrait img { min-height:0; }
 .about-portrait { aspect-ratio:4/5; }
 .about-narrative,.learning-grid { text-align:center; }
 .about-narrative .section-title,.learning-grid .section-title,.learning-grid .section-copy { margin-inline:auto; }
 .recognitions-grid { grid-template-columns:1fr; }
 .recognition-card,.recognition-card:first-child { grid-column:auto; grid-template-columns:1fr; min-height:0; }
 .recognition-media { min-height:0; height:330px; }
 .recognition-copy { text-align:center; }
 .recognition-open { align-self:center; }
 .recognition-archive { grid-template-columns:1fr; text-align:center; }
 .archive-grid { grid-template-columns:1fr; }
 .archive-document picture { height:230px; }
 .about-final { border-radius:22px; padding:3rem 1.5rem; }
 .about-final h2 { font-size:clamp(2.5rem,11vw,3.7rem); }
}

@media(max-width:430px) {
 .recognition-media { height:280px; padding:.8rem; }
 .recognition-copy h3 { font-size:2rem; }
 .about-final-wrap { padding-inline:.75rem; }
}

/* V7 — funil de contato, nova capa e refinamento final para aprovação. */
.whatsapp-button {
 display:inline-flex;
 align-items:center;
 gap:.65rem;
 border-color:#25d366;
 border-radius:14px;
 background:#25d366;
 color:#082d17;
 box-shadow:0 12px 28px rgba(10,125,57,.22);
}
.whatsapp-button:hover { border-color:#37df78; background:#37df78; color:#052611; }
.whatsapp-button svg { width:23px; height:23px; flex:0 0 auto; }
.contact-hero .cinematic-media img { object-fit:cover; object-position:55% 50%; }
.about-hero .cinematic-media img { object-position:55% 38%; }
.menu-toggle span { transform-origin:center; }
.menu-toggle[aria-expanded="true"] span:nth-child(1) { transform:translateY(8px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] span:nth-child(2) { opacity:0; }
.menu-toggle[aria-expanded="true"] span:nth-child(3) { transform:translateY(-8px) rotate(-45deg); }

@media(max-width:800px) {
 .main-nav > a,.nav-group summary { font-size:clamp(1.05rem,4.8vw,1.35rem); letter-spacing:.045em; }
 .nav-group summary { font-family:var(--sans); text-transform:uppercase; }
 .nav-group[data-current='true'] summary,.nav-group[open] summary { color:var(--gold-light); }
 .nav-submenu a { min-height:44px; display:flex; align-items:center; justify-content:center; font-size:.88rem; letter-spacing:.08em; text-transform:uppercase; }
 .contact-hero .cinematic-media img { object-position:55% 50%; }
 .about-hero .cinematic-media img { object-position:54% 38%; }
 .whatsapp-button { width:min(100%,340px); min-height:52px; padding-inline:1rem; }
 .contact-form { grid-template-columns:1fr; }
 .contact-form .field--wide { grid-column:auto; }
}
