/* Revisão visual: comentários 1–17. Mantém os tokens e a copy VDM. */
.header,.header.scrolled{height:auto;top:16px;padding:0;background:transparent;border:0;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}
.header .nav{height:76px;padding:12px 20px;border:1px solid rgb(230 233 223 / .25);border-radius:20px;background:linear-gradient(120deg,rgb(230 233 223 / .13),rgb(9 25 13 / .55));backdrop-filter:blur(22px) saturate(150%);-webkit-backdrop-filter:blur(22px) saturate(150%);box-shadow:inset 0 1px 0 rgb(255 255 255 / .14),0 16px 40px rgb(0 0 0 / .22);pointer-events:auto}
.header.scrolled .nav{background:linear-gradient(120deg,rgb(30 48 31 / .72),rgb(8 19 10 / .78))}
.header .cta-nav{background:linear-gradient(105deg,var(--green),var(--cta));border-color:rgb(180 240 122 / .4);min-height:46px}
.cta{transition:transform 260ms var(--ease);transform-origin:center}
.cta::before{content:'';position:absolute;inset:0;border:1px solid var(--pale);border-radius:inherit;opacity:0;pointer-events:none;transition:opacity 260ms var(--ease)}
.cta:is(:hover,:focus-visible){transform:translateY(-3px) scale(1.025);box-shadow:inset 0 1px 0 rgb(255 255 255 / .2),0 0 30px -6px rgb(61 196 4 / .5)}
.cta:is(:hover,:focus-visible)::before{opacity:1}
.cta:is(:hover,:focus-visible) svg{transform:translateX(5px)}
.cta:active{transform:translateY(0) scale(.975)}
.cta-secondary:is(:hover,:focus-visible){background:var(--green)}
.hero-copy{max-width:590px}
.marquee{background:#237302;color:#fff}
.marquee-line{font-family:var(--display);font-weight:900;font-size:23px;letter-spacing:.06em}
.marquee-pause{background:#237302;color:#fff;border-left-color:rgb(255 255 255 / .25)}
.marquee-pause svg,.dialog-close svg{transition:transform 240ms var(--ease)}
.marquee-pause:is(:hover,:focus-visible){background:var(--green)}
.marquee-pause:is(:hover,:focus-visible) svg{transform:scale(1.16)}
.dialog-close:is(:hover,:focus-visible){background:var(--green);border-color:var(--pale)}
.dialog-close:is(:hover,:focus-visible) svg{transform:rotate(90deg)}
.stat-number{white-space:nowrap}
.mentor-first-name{font-weight:400}
.mentor-photo{object-position:center top}
.mentor-copy strong{font-weight:700;color:#fff}
.photo-carousel{margin-top:20px}
.photo-strip{display:flex;gap:18px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:18px 8px;margin:0 -8px;scroll-padding:8px}
.photo-strip::-webkit-scrollbar{display:none}
.photo-card{display:block;position:relative;margin:0;padding:0;min-width:0;border:1px solid rgb(230 233 223 / .15);border-radius:12px;background:#071009;overflow:hidden;isolation:isolate;transition:transform 300ms var(--ease);line-height:0}
.photo-strip .photo-card{flex:0 0 calc((100% - 36px)/3);scroll-snap-align:start}
.photo-strip .photo-card img,.photo-strip .photo-card:first-child img{width:100%;height:290px;object-fit:cover;border-radius:0;transition:transform 500ms var(--ease)}
.photo-card::after{content:'';position:absolute;inset:0;border:2px solid var(--brand);border-radius:inherit;box-shadow:inset 0 0 24px rgb(61 196 4 / .2);opacity:0;transition:opacity 260ms var(--ease);pointer-events:none;z-index:2}
.photo-card:is(:hover,:focus-visible){transform:translateY(-3px) scale(1.018);box-shadow:0 0 22px -5px rgb(61 196 4 / .55);z-index:2}
.photo-card:is(:hover,:focus-visible)::after{opacity:1}
.photo-card:is(:hover,:focus-visible) img{transform:scale(1.055)}
.photo-zoom{position:absolute;bottom:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;border:1px solid rgb(180 240 122 / .55);border-radius:50%;background:rgb(0 0 0 / .75);color:#fff;opacity:0;transform:translateY(8px);transition:opacity 260ms var(--ease),transform 260ms var(--ease);z-index:3}
.photo-card:is(:hover,:focus-visible) .photo-zoom{opacity:1;transform:none}
.carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:2px}
.carousel-status{font-size:12px;font-variant-numeric:tabular-nums;color:var(--muted);margin-right:auto}
.icon-button{display:grid;place-items:center;width:44px;height:44px;padding:0;background:rgb(230 233 223 / .04);border:1px solid var(--border);border-radius:50%;color:var(--paper);transition:transform 240ms var(--ease)}
.icon-button:is(:hover,:focus-visible){transform:translateY(-2px) scale(1.06);background:var(--green);border-color:var(--brand);box-shadow:0 0 20px -6px rgb(61 196 4 / .65)}
.icon-button:active{transform:scale(.96)}
.carousel-prev svg{transform:rotate(180deg)}
.comparison-panel{position:relative;isolation:isolate}
.comparison-negative svg{color:#ff5966;stroke-width:2}
.comparison-panel::after{content:'';position:absolute;inset:-1px;z-index:-1;border:1px solid var(--brand);border-radius:inherit;box-shadow:0 0 42px -10px rgb(61 196 4 / .4),inset 0 0 30px rgb(61 196 4 / .06);opacity:0;pointer-events:none;transition:opacity 300ms var(--ease)}
.comparison-negative::after{border-color:#ff5966;box-shadow:0 0 42px -10px rgb(209 26 36 / .6),inset 0 0 30px rgb(209 26 36 / .07)}
.comparison-positive{overflow:visible}
.comparison-panel:is(:hover,:focus-within)::after{opacity:1}
.reveal.is-pending{transition:opacity 760ms var(--ease),transform 760ms var(--ease)}
.reveal.is-pending.cascade li{opacity:0;transform:translateY(16px);transition:opacity 540ms var(--ease),transform 540ms var(--ease);transition-delay:calc(100ms + var(--item-index,0)*85ms)}
.reveal.is-visible.cascade li{opacity:1;transform:none}
.comparison-positive.is-pending{transition-delay:120ms}
.gallery-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}
.gallery-row .photo-card:first-child{grid-column:span 2}
.gallery-row .photo-card:nth-child(4){grid-column:span 2}
.gallery-row .photo-card img{width:100%;height:280px;object-fit:cover;border-radius:0;transition:transform 500ms var(--ease)}
.experience-frame{transition:transform 300ms var(--ease)}
.experience-frame:hover{transform:scale(1.01);border-color:var(--brand);box-shadow:0 0 36px -10px rgb(61 196 4 / .4)}
.movement-marker{display:flex;flex-direction:column;gap:14px;align-items:flex-start;color:var(--pale)}
.movement-marker svg{width:32px;height:32px;transition:transform 280ms var(--ease)}
.movement-row{position:relative;isolation:isolate}
.movement-row::before{content:'';position:absolute;inset:0 -20px;z-index:-1;border-radius:12px;background:linear-gradient(90deg,rgb(23 77 0 / .36),rgb(23 77 0 / .03));opacity:0;transition:opacity 280ms var(--ease)}
.movement-row h2{transform-origin:left center;transition:transform 280ms var(--ease)}
.movement-row:hover::before{opacity:1}
.movement-row:hover h2{transform:translateX(6px) scale(1.035);color:var(--pale)}
.movement-row:hover .movement-marker svg{transform:translateY(-3px) scale(1.1);color:var(--brand)}
.application-strip{font-size:clamp(14px,1.25vw,18px);line-height:1.7;padding-block:20px;letter-spacing:.12em}
.faq-list details{position:relative;isolation:isolate}
.faq-list details::before{content:'';position:absolute;inset:0 -16px;z-index:-1;background:linear-gradient(90deg,rgb(23 77 0 / .35),transparent);border-radius:10px;opacity:0;transition:opacity 240ms var(--ease)}
.faq-list details:is(:hover,:focus-within,[open])::before{opacity:1}
.faq-list summary{transition:transform 240ms var(--ease)}
.faq-list summary:is(:hover,:focus-visible){transform:translateX(5px);color:var(--pale)}
.faq-list summary:is(:hover,:focus-visible) svg{transform:scale(1.2)}
.faq-list details[open] summary svg{transform:rotate(45deg)}
.photo-dialog{width:min(1100px,calc(100% - 36px));max-height:92svh;background:#050a06;border:1px solid rgb(180 240 122 / .45);border-radius:20px;color:var(--paper);padding:20px;overflow:auto}
.photo-dialog::backdrop{background:rgb(0 0 0 / .9);backdrop-filter:blur(10px)}
.photo-close{position:absolute;top:28px;right:28px;z-index:2;background:rgb(0 0 0 / .85)}
.photo-dialog>img{width:100%;height:74svh;object-fit:contain;border-radius:10px}
.photo-dialog>p{text-align:center;font-size:13px;margin:16px 0 0}
@media(max-width:1000px){.photo-strip .photo-card{flex-basis:calc((100% - 18px)/2)}.gallery-row .photo-card img{height:240px}.nav-logo{width:200px}}
@media(max-width:700px){.header,.header.scrolled{top:10px}.header .nav{width:calc(100% - 24px);height:68px;padding:10px 12px;border-radius:16px;gap:12px}.header .nav-logo{width:130px}.header .cta-nav{font-size:8px;min-height:44px;padding:10px;max-width:166px}.marquee-line{font-size:21px}.hero-copy{max-width:355px}.photo-strip .photo-card{flex-basis:82%}.photo-strip .photo-card img,.photo-strip .photo-card:first-child img{height:275px}.gallery-row{grid-template-columns:1fr 1fr;gap:12px}.gallery-row .photo-card:first-child,.gallery-row .photo-card:nth-child(4){grid-column:auto}.gallery-row .photo-card img{height:220px}.gallery-row .photo-card:nth-child(3){grid-column:span 2}.movement-row{grid-template-columns:38px 1fr;gap:14px}.movement-marker{gap:10px}.movement-marker svg{width:26px;height:26px}.movement-row::before{inset:0 -10px}.application-strip{font-size:14px;letter-spacing:.08em;padding:18px 20px}.photo-zoom{opacity:1;transform:none;width:30px;height:30px;right:10px;bottom:10px}.photo-dialog{padding:12px}.photo-dialog>img{height:68svh}}
@media(hover:none){.photo-card:hover,.cta:hover,.experience-frame:hover,.icon-button:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.reveal.is-pending.cascade li{opacity:1;transform:none}.photo-strip{scroll-behavior:auto}.photo-card:is(:hover,:focus-visible),.cta:is(:hover,:focus-visible),.icon-button:is(:hover,:focus-visible),.experience-frame:hover,.movement-row:hover h2,.movement-row:hover svg,.faq-list summary:is(:hover,:focus-visible),.photo-card:is(:hover,:focus-visible) img{transform:none}.photo-strip .photo-card img{transition:none}.carousel-pause{display:none}}
@media(prefers-reduced-transparency:reduce){.header .nav,.header.scrolled .nav{background:#112115;backdrop-filter:none;-webkit-backdrop-filter:none}.photo-dialog::backdrop{background:#000;backdrop-filter:none}}
