@font-face{font-family:Montserrat;src:url('assets/Montserrat.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--green:#32cd32;--ink:#07120c;--dark:#080d09;--paper:#efede5;--muted:#b9c5bd}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--dark);color:var(--paper);font:400 16px/1.65 Montserrat,Arial,sans-serif;overflow-x:clip}[hidden]{display:none!important}::selection{background:var(--green);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{text-wrap:balance;line-height:1.08;letter-spacing:-.035em}h2{font-size:clamp(38px,4.8vw,68px);font-weight:800;margin-bottom:25px}h2 strong{font-weight:850}h3{font-size:30px;font-weight:800}p{line-height:1.7}header{max-width:1400px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px}.official-brand img{width:190px;height:auto}nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:650}.nav-cta{border:1px solid #ffffff35;border-radius:40px;padding:11px 20px}.nav-cta span{margin-left:20px}.preview{text-align:center;background:#132318;color:#dbe7dc;font-size:10px;padding:5px 15px}.skip{position:absolute;left:15px;top:-100px;z-index:99;background:var(--paper);color:var(--ink);padding:12px}.skip:focus{top:15px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--green);color:#041008;border:0;border-radius:40px;font-weight:800;font-size:13px;padding:20px 26px;box-shadow:0 12px 35px #32cd321a;transition:background .2s,transform .2s}.button:hover{background:#66e253;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.hero{max-width:1400px;margin:auto;padding:45px 5% 65px;display:grid;grid-template-columns:1.2fr .85fr;gap:6%;align-items:center;position:relative}.hero:before{content:'';position:absolute;inset:-50px -10% 0;pointer-events:none;background:radial-gradient(ellipse at 30% 55%,#133d2366,transparent 62%);z-index:-1}.event-label{font-size:12px;letter-spacing:2px;font-weight:750;color:#b3c5b6;margin-bottom:25px}.hero h1{font-size:clamp(46px,5.6vw,79px);font-weight:850;margin-bottom:30px}.hero h1 span{background:linear-gradient(transparent 65%,#32cd32 65%,#32cd32 94%,transparent 94%);color:#f4f3ec;box-decoration-break:clone}.hero-lead{font-size:20px;font-weight:650;line-height:1.45;max-width:600px;margin-bottom:18px}.hero-description{font-size:14px;color:#bdc9c0;max-width:560px;margin-bottom:30px}.hero-free{font-size:10px;color:#c5d0c8;margin:15px 0 0}.hero-photo{position:relative;border-radius:20px;overflow:hidden;box-shadow:0 25px 80px #0006;border:1px solid #ffffff24}.hero-photo img{width:100%;height:590px;object-fit:cover;object-position:center 30%}.event-bar{max-width:1260px;margin:0 auto 65px;display:grid;grid-template-columns:1fr .7fr 1fr;border-top:1px solid #ffffff25;border-bottom:1px solid #ffffff25;padding:25px 5%;gap:30px}.event-bar>div{display:flex;flex-direction:column;gap:5px}.event-bar span{font-size:10px;color:#b7c8bb}.event-bar b{font-size:16px;font-weight:700}.section{padding:100px max(6%,calc((100% - 1120px)/2));position:relative}.experience{background:#efede5;color:#07120c;overflow:hidden}.experience:before{content:'';position:absolute;width:900px;height:700px;right:-600px;top:50px;border:2px solid #32cd3240;border-radius:50%;transform:rotate(-25deg);pointer-events:none}.experience-heading{position:relative;max-width:950px}.section-caption{font-size:11px;font-weight:700;letter-spacing:1.3px;margin-bottom:25px;color:#91b59a}.experience .section-caption{color:#2c6740}.experience-heading h2 span{background:linear-gradient(transparent 70%,#32cd32 70%,#32cd32 95%,transparent 95%);box-decoration-break:clone}.experience-heading>p:last-child{font-size:15px;max-width:780px;color:#344f3e;margin-bottom:40px}.audiences{display:grid;grid-template-columns:1fr 1fr;gap:24px;position:relative}.audiences article{position:relative;overflow:hidden;border:1px solid #d5dfd4;border-radius:16px;background:linear-gradient(135deg,#ffffff,#fcfff9 75%,#dbf5d9);padding:35px;box-shadow:0 16px 45px #07271a08}.audiences article>span{display:inline-block;padding:5px 10px;background:#32cd32;color:#061309;border-radius:4px;font-size:10px;font-weight:750;margin-bottom:23px}.audiences h3{font-size:33px;margin-bottom:20px}.audiences p{font-size:14px;color:#34503e;max-width:450px;min-height:100px}.text-link{font-weight:750;font-size:12px;text-decoration:underline;text-underline-offset:6px}.program{background:radial-gradient(ellipse at 90% 0%,#123522,#080d09 65%);color:var(--paper)}.program-head{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:40px}.program-head h2{margin:0;max-width:750px}.program-head h2 strong{color:#59e45a}.program-head p{font-size:12px;max-width:220px;color:#ccd5ce;margin:0}.agenda{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.agenda article{background:linear-gradient(135deg,#ffffff10,#ffffff05);border:1px solid #ffffff24;backdrop-filter:blur(14px);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:28px}.agenda .time{font-size:24px;font-weight:800;line-height:1.15;letter-spacing:-.025em;color:#72eb73}.agenda .time span{display:block;margin-top:10px;color:#c4d2c7;font-size:11px;font-weight:500;letter-spacing:0}.agenda h3{font-size:27px;line-height:1.1;margin-bottom:15px}.agenda p{font-size:13px;color:#d0dbd2;margin:0}.agenda .tag{font-size:10px;color:#c4d5c9;border-top:1px solid #ffffff23;margin-top:auto;padding-top:20px;line-height:1.4}.schedule-note{font-size:10px;color:#b4c7ba;margin:22px 0 0;max-width:650px}.graduation{display:grid;grid-template-columns:1fr 1fr;background:#0d1811;color:#f4f3ec;align-items:stretch}.grad-photo{position:relative;min-height:620px}.grad-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:center}.grad-photo small{position:absolute;bottom:0;left:0;right:0;background:#07120ce8;padding:10px 20px;font-size:10px;color:#fff}.grad-text{padding:65px 12%;display:flex;flex-direction:column;justify-content:center}.grad-text .section-caption{font-size:11px}.grad-text h2{font-size:clamp(40px,4.3vw,62px);font-weight:800;line-height:1.08;color:#f4f3ec}.grad-text h2 strong{color:#65e567}.grad-text p{color:#ccdacf;font-size:14px}.grad-text .button{align-self:flex-start;font-size:11px;padding:18px 23px}.registration{background:#efede5;color:#07120c;text-align:center;overflow:hidden}.cta-halo{position:absolute;width:1000px;height:500px;top:40px;left:calc(50% - 500px);border:1px solid #32cd3244;border-radius:50%;transform:rotate(-18deg);pointer-events:none}.cta-card{position:relative;max-width:950px;margin:auto}.cta-card .section-caption{color:#2b6840}.cta-card h2{font-size:clamp(45px,6vw,82px);font-weight:850;line-height:1.06}.cta-card h2 strong{background:linear-gradient(transparent 70%,#32cd32 70%,#32cd32 94%,transparent 94%);color:#07120c}.cta-card>p{font-size:15px;color:#34513e;margin-bottom:30px}.cta-card .button{padding:22px 30px;font-size:14px}.cta-facts{display:flex;justify-content:center;flex-wrap:wrap;gap:25px;margin-top:30px;font-size:11px;font-weight:600}.faq{background:#101a13;display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.faq h2{font-size:43px}.faq details{border-bottom:1px solid #ffffff30;padding:20px 0}.faq summary{cursor:pointer;font-weight:700;font-size:14px}.faq p{font-size:13px;color:#ccdbd0;margin:15px 0 0}footer{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:40px 6%;background:#080d09;border-top:1px solid #ffffff20;font-size:11px}.footer-logo{width:220px;height:auto}footer p{margin:0;color:#bfcec3}footer>span{color:#69e269}dialog{width:min(620px,calc(100% - 28px));max-height:90dvh;padding:0;border:1px solid #fff8;border-radius:22px;background:#efede5;color:#07120c;box-shadow:0 35px 120px #0008}dialog::backdrop{background:#00190fbb;backdrop-filter:blur(12px)}dialog form{padding:40px}dialog h2{font-size:44px;line-height:1.05;margin-bottom:20px}dialog .section-caption{color:#315c3c}.modal-close{position:absolute;right:15px;top:9px;border:0;background:transparent;color:#07120c;font-size:32px}.demo-note{font-size:11px;padding:12px 15px;background:#32cd3212;border:1px solid #32cd3244;border-radius:8px}.form-note{font-size:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:12px;font-weight:650;margin:18px 0 7px}input,select{width:100%;padding:13px 12px;border:1px solid #829885;border-radius:8px;background:#fbfaf5;color:#07120c;font-size:13px;min-width:0}input::placeholder{color:#516352}form .button{margin-top:10px}form .form-status{font-size:12px;color:#7b2c17;margin:15px 0 0}#thanks{min-height:100vh;padding:60px 20px;background:radial-gradient(ellipse at top,#1a492a,#080d09 65%);text-align:center}.thanks-logo{width:220px;height:auto;margin:0 auto 40px}.thanks-card{max-width:800px;margin:auto;border:1px solid #ffffff35;border-radius:20px;padding:50px 35px;background:#ffffff08}.success-symbol{display:inline-grid;place-items:center;width:65px;height:65px;background:#32cd32;color:#07120c;border-radius:50%;font-size:30px}.thanks-card .section-caption{margin-top:25px}.thanks-card h1{font-size:clamp(37px,5vw,64px);font-weight:800;margin-bottom:30px}.thanks-card h2{font-size:25px}.thanks-card>p{max-width:570px;margin:22px auto;color:#d4e1d7}.thanks-card .button:disabled{opacity:.6;cursor:not-allowed}.back-link{background:none;border:0;color:#eeeae1;text-decoration:underline;padding:15px}.motion-toggle{display:none}
@media(max-width:1000px){.hero{gap:4%;grid-template-columns:1.15fr .85fr}.hero h1{font-size:52px}.hero-photo img{height:590px}.hero-lead{font-size:18px}.agenda{grid-template-columns:1fr}.agenda article{display:grid;grid-template-columns:.8fr 1.2fr;gap:20px}.agenda .tag{grid-column:2}.grad-text{padding:45px 8%}.grad-text h2{font-size:44px}.audiences h3{font-size:28px}.program-head{display:block}.program-head p{max-width:none;margin-top:25px}.faq{gap:35px}}@media(max-width:700px){header{padding:20px 5%;gap:15px}.official-brand img{width:140px}nav{gap:0}nav>a:not(.nav-cta){display:none}.nav-cta{font-size:10px;padding:10px 14px}.nav-cta span{margin-left:10px}.hero{display:flex;flex-direction:column;padding:25px 6% 35px;gap:30px}.hero-copy{width:100%}.hero h1{font-size:clamp(40px,10.4vw,60px);line-height:1.08;margin-bottom:25px}.event-label{font-size:10px;letter-spacing:1px;margin-bottom:20px}.hero-lead{font-size:17px}.hero-description{font-size:13px}.hero .button{width:100%;font-size:11px;justify-content:space-between}.hero-photo{width:100%;border-radius:14px}.hero-photo img{height:390px;object-position:center 30%}.hero-free{font-size:9px}.event-bar{margin:0 6% 35px;padding:20px 0;grid-template-columns:1fr 1fr;gap:20px}.event-bar>div:last-child{grid-column:1/-1}.event-bar b{font-size:13px}.section{padding:65px 6%}h2{font-size:38px;line-height:1.1}.experience-heading h2{font-size:39px}.experience-heading>p:last-child{font-size:13px}.audiences{grid-template-columns:1fr;gap:18px}.audiences article{padding:28px}.audiences h3{font-size:32px}.audiences p{min-height:0;font-size:13px}.program-head h2{font-size:39px}.agenda article{display:flex;gap:25px;padding:28px}.agenda .time{font-size:26px}.agenda h3{font-size:28px}.graduation{grid-template-columns:1fr}.grad-photo{min-height:390px}.grad-photo img{object-fit:contain;background:#080d09}.grad-text{padding:45px 7%}.grad-text h2{font-size:44px}.grad-text .button{font-size:11px;gap:15px}.cta-card h2{font-size:45px}.cta-card>p{font-size:13px}.cta-card .button{width:100%;font-size:11px;padding:20px;gap:10px}.cta-facts{font-size:10px;gap:12px}.faq{grid-template-columns:1fr;gap:15px}.faq h2{font-size:38px}footer{flex-wrap:wrap;padding:35px 6%}.footer-logo{width:180px}footer p{width:100%;order:3}.fields{grid-template-columns:1fr;gap:0}dialog form{padding:35px 23px}dialog h2{font-size:38px}.thanks-card{padding:35px 20px}.thanks-card .button{font-size:11px;width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.event-bar{align-items:start;grid-template-columns:1fr .65fr 1.35fr}.event-bar address{font-style:normal;font-size:12px;color:#d1dfd5;line-height:1.6}.map-link{font-size:11px;font-weight:700;color:#8aeb88;text-decoration:underline;text-underline-offset:4px}.button{position:relative;overflow:hidden;isolation:isolate}.button:after{content:'';position:absolute;inset:-50% auto -50% -60%;width:30%;background:linear-gradient(90deg,transparent,#ffffff55,transparent);transform:skewX(-20deg);animation:button-glint 7s ease-in-out infinite;pointer-events:none}.audiences article,.agenda article{transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .3s,box-shadow .3s}.audiences article:hover{border-color:#68cb6c;box-shadow:0 20px 50px #16562b14}.agenda article:hover{border-color:#6be27a66;box-shadow:0 20px 55px #0003}.experience:before{animation:contour-drift 18s ease-in-out infinite alternate}.program:before{content:'';position:absolute;right:-130px;top:20px;width:550px;height:550px;border:1px solid #32cd3225;border-radius:50%;transform:rotate(-25deg);pointer-events:none;animation:contour-drift 20s ease-in-out infinite alternate}.program{overflow:hidden}.program>*{position:relative}.motion-control{position:fixed;right:15px;bottom:15px;padding:8px 12px;border:1px solid #ffffff40;border-radius:25px;background:#0d2119e8;color:#edf4eb;font-size:10px;z-index:5;backdrop-filter:blur(8px)}.motion-paused *, .motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .audiences article,.motion-paused .agenda article{transition:none!important}@keyframes button-glint{0%,65%{left:-60%}85%,100%{left:150%}}@keyframes contour-drift{to{transform:translate(-22px,25px) rotate(-12deg)}}@media(max-width:700px){.event-bar{grid-template-columns:1fr 1fr}.event-bar address{font-size:12px}.motion-control{font-size:9px;bottom:10px;right:10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}.experience{margin-top:60px}.graduation{display:block}.grad-text{max-width:1120px;margin:auto;padding:70px 0;display:grid;grid-template-columns:1.1fr 1fr;column-gap:70px;align-items:start}.grad-text .section-caption{grid-column:1/-1}.grad-text h2{grid-row:2/4;margin:0}.grad-text>p:not(.section-caption){font-size:16px;margin:6px 0 25px}.grad-text .button{justify-self:start;align-self:start}@media(max-width:1200px){.grad-text{padding:65px 6%}}@media(max-width:700px){.experience{margin-top:40px}.grad-text{display:block;padding:45px 7%}.grad-text h2{font-size:44px;margin-bottom:28px}.grad-text>p:not(.section-caption){font-size:14px}}
/* Carrossel da comunidade, com enquadramentos integrais. */
.hero{grid-template-columns:1.05fr 1fr;isolation:isolate}.hero-copy,.hero-gallery{position:relative;z-index:1}.hero-aurora{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}.hero-aurora i{position:absolute;border-radius:50%;width:500px;height:500px;right:-180px;top:-150px;background:radial-gradient(ellipse,#32cd322d,transparent 65%);animation:aurora-drift 16s ease-in-out infinite alternate}.hero-aurora i:nth-child(2){left:-220px;top:170px;right:auto;background:radial-gradient(ellipse,#32cd3218,transparent 65%);animation-delay:-8s}.hero-aurora i:nth-child(3){width:700px;height:500px;top:100px;right:-230px;background:none;border:1px solid #65ec6526;transform:rotate(-35deg);animation:aurora-line 20s ease-in-out infinite alternate}.hero-gallery{min-width:0}.gallery-stage{position:relative;height:445px;border-radius:20px;overflow:hidden;border:1px solid #ffffff35;box-shadow:0 22px 70px #0005;background:#142019}.gallery-slide{position:absolute;inset:0;opacity:0;transition:opacity .85s ease-in-out;pointer-events:none;overflow:hidden}.gallery-slide:before{content:'';position:absolute;inset:-25px;background-image:var(--slide-image);background-size:cover;background-position:center;filter:blur(20px) brightness(.38);transform:scale(1.1)}.gallery-slide.is-active{opacity:1;z-index:1}.gallery-slide img{position:relative;width:100%;height:100%;object-fit:contain;object-position:center}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:17px}.gallery-controls button{color:#eaf4eb;background:#12251a;border:1px solid #ffffff30;min-width:40px;min-height:40px;border-radius:50%;line-height:1;font-size:24px}.gallery-controls .gallery-pause{font-size:10px;font-weight:600;padding:10px 13px;border-radius:25px;margin-left:5px}.gallery-dots{display:flex;gap:0;align-items:center}.gallery-dots button{position:relative;min-width:27px;min-height:40px;border:0;background:none}.gallery-dots button:after{content:'';position:absolute;width:6px;height:6px;top:17px;left:10px;border-radius:50%;background:#8da995;transition:background .3s,transform .3s}.gallery-dots button[aria-pressed=true]:after{background:#32cd32;transform:scale(1.5)}.gallery-controls button:hover{border-color:#6bd96d}.gallery-caption{text-align:center;color:#bbcec0;font-size:10px;line-height:1.5;margin:12px 0 0}.motion-paused .gallery-slide{transition:none}@keyframes aurora-drift{to{transform:translate(-100px,100px) scale(1.2)}}@keyframes aurora-line{to{transform:translate(-45px,25px) rotate(-15deg)}}@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr}.gallery-stage{height:420px}.gallery-controls{gap:4px}.gallery-controls .gallery-pause{margin-left:0;padding:10px}.gallery-dots button{min-width:23px}.gallery-dots button:after{left:8px}.hero h1{font-size:49px}}@media(max-width:700px){.hero{display:flex}.hero-gallery{width:100%}.gallery-stage{height:auto;aspect-ratio:4/3;border-radius:14px}.hero h1{font-size:clamp(38px,10.4vw,60px)}.gallery-controls{gap:6px}.gallery-controls button{min-width:42px;min-height:44px}.gallery-dots button{min-width:25px;min-height:44px}.gallery-dots button:after{top:19px;left:9px}.gallery-controls .gallery-pause{padding:10px 12px}.gallery-caption{font-size:9px}.hero-aurora i{width:350px;height:400px}.hero-aurora i:nth-child(3){width:450px;height:650px;right:-180px}}@media(max-width:360px){.gallery-controls{gap:2px}.gallery-controls .gallery-pause{padding:10px 8px;font-size:9px}.gallery-dots button{min-width:21px}.gallery-dots button:after{left:7px}}@media(prefers-reduced-motion:reduce){.gallery-slide{transition:none}.hero-aurora i{animation:none}}
/* Efeitos ambientais assentam; somente as fotos continuam em reprodução. */
.hero-aurora i,.experience:before,.program:before,.button:after{animation-duration:4.5s;animation-iteration-count:1;animation-delay:0s;animation-fill-mode:forwards}
.hero h1{font-size:clamp(44px,5vw,72px)}.hero h1 span{white-space:nowrap}@media(max-width:1000px) and (min-width:701px){.hero h1{font-size:45px}}@media(max-width:700px){.hero h1{font-size:clamp(36px,9.8vw,60px)}}

.hero{overflow:clip}.gallery-pause{white-space:nowrap}

/* V8: fotografia livre, sem caixa, preenchimento duplicado ou controles. */
.hero-gallery{align-self:center}
.gallery-stage{height:510px;aspect-ratio:auto;border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
.gallery-slide{display:flex;align-items:center;justify-content:center;overflow:visible;transition:opacity 1.15s cubic-bezier(.4,0,.2,1)}
.gallery-slide:before{display:none}
.gallery-slide img{width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;border-radius:0;filter:none}
.gallery-caption{margin-top:16px}
@media(max-width:1000px){.gallery-stage{height:440px}}
@media(max-width:700px){.gallery-stage{height:clamp(300px,100vw,480px);aspect-ratio:auto}.hero-gallery{margin-top:5px}}
@media(prefers-reduced-motion:reduce){.gallery-slide{transition:none}}

/* V9 — faixa contínua inspirada no hero da Comunidade Experts FEX. */
.hero-gallery{min-width:0;width:100%}
.fex-marquee{width:100%;overflow:hidden;padding:24px 0;mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}
.fex-marquee-track{display:flex;width:max-content;animation:fex-marquee 22s linear infinite;will-change:transform}
.marquee-group{display:flex;gap:20px;padding-right:20px;flex-shrink:0}
.marquee-photo{width:320px;aspect-ratio:3/4;flex-shrink:0;border-radius:18px;overflow:hidden;border:1px solid #32cd3240;background:#10281a;box-shadow:0 0 28px #32cd3215}
.marquee-photo img{width:100%;height:100%;object-fit:cover;object-position:center}
@keyframes fex-marquee{to{transform:translateX(-50%)}}
@media(max-width:1000px){.marquee-photo{width:300px}}
@media(max-width:700px){.marquee-photo{width:260px}.hero-gallery{width:calc(100% + 36px);margin-left:-18px}.fex-marquee{padding:16px 0}.gallery-caption{padding:0 18px}}
@media(prefers-reduced-motion:reduce){.fex-marquee-track{animation:none;transform:none}}

/* Glass registration modal, centered */
dialog#registration-modal{position:fixed;inset:0;margin:auto;max-height:92dvh;overflow:auto;background:linear-gradient(145deg,#ffffff1f,#ffffff0a);color:#f4f3ec;border:1px solid #ffffff38;backdrop-filter:blur(28px) saturate(150%);box-shadow:0 40px 120px #000a,inset 0 1px 0 #ffffff40}
dialog#registration-modal[open]{animation:fexGlassIn .45s cubic-bezier(.22,1,.36,1)}
dialog#registration-modal::backdrop{background:#00190f99;backdrop-filter:blur(10px)}
#registration-modal .section-caption{color:#8fe08f}
#registration-modal .form-note,#registration-modal .demo-note,#registration-modal label{color:#dbe7dc}
#registration-modal h2 strong{color:#59e45a}
#registration-modal input,#registration-modal select{width:100%;background:#ffffff14;color:#f4f3ec;border:1px solid #ffffff38;border-radius:12px;padding:14px 16px;pointer-events:auto}
#registration-modal input::placeholder{color:#ffffff80}
#registration-modal select option{background:#0d1811;color:#f4f3ec}
#registration-modal input:focus,#registration-modal select:focus{border-color:#32cd32;background:#ffffff1f}
#registration-modal .modal-close{color:#f4f3ec;background:#ffffff1a;border:1px solid #ffffff38}
@keyframes fexGlassIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){dialog#registration-modal[open]{animation:none}}

/* Refinement: fluid hero, depth background, graduation photo */
#fex-bg{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;display:block}
#fex-root>*:not(#fex-bg):not(dialog){position:relative;z-index:1}
#fex-root>.skip{position:absolute}
.hero-copy{background:none!important;border:0!important;box-shadow:none!important;padding-left:0;padding-right:0}
.hero-copy:before,.hero-copy:after{display:none!important}
.hero-copy h1{text-shadow:none}
.hero-copy:has(h1){isolation:isolate}
.hero-copy>*{position:relative}
.hero-copy::backdrop{display:none}
.hero .hero-copy{--veil:radial-gradient(ellipse at 40% 50%,#080d09cc,transparent 70%)}
.hero:before{background:radial-gradient(ellipse at 28% 52%,#080d09e6 0,#080d0999 35%,transparent 65%)!important;z-index:0!important}
.program,.graduation{background-color:transparent}
.program{background:radial-gradient(ellipse at 90% 0%,#123522cc,#080d09e6 65%)!important}
.graduation{display:grid!important;grid-template-columns:1fr 1fr;align-items:stretch;background:linear-gradient(180deg,#080d09e6,#0d1811)!important}
.graduation .grad-photo{margin:0;position:relative;min-height:620px;overflow:hidden}
.graduation .grad-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 35%;transition:transform 1.6s cubic-bezier(.22,1,.36,1)}
.graduation .grad-photo:hover img{transform:scale(1.025)}
.graduation .grad-text{display:flex!important;flex-direction:column;justify-content:center;max-width:none;margin:0;padding:70px 9%}
.graduation .grad-text h2{margin-bottom:25px}
.button{transition:background .25s,transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}
.button:hover{box-shadow:0 16px 40px #32cd3240}
.button:active{transform:translateY(0) scale(.98)}
@media(max-width:900px){.graduation{grid-template-columns:1fr}.graduation .grad-photo{min-height:0;aspect-ratio:4/3}.graduation .grad-text{padding:45px 7%}}
@media(prefers-reduced-motion:reduce){.graduation .grad-photo img{transition:none}}
.hero:before{display:none!important}
.hero{background:none!important;border:0!important;box-shadow:none!important}
.hero-aurora{display:none!important}

/* A abertura não projeta halos recortados nos limites do carrossel. */
.hero .marquee-photo{box-shadow:none;border:0;background:transparent}
.hero .button,.hero .button:hover{box-shadow:none}

/* Graduation collage */
.graduation{grid-template-columns:1fr 1fr!important;gap:6%;align-items:center!important;padding:110px max(6%,calc((100% - 1180px)/2))}
.graduation .grad-photo{min-height:0!important;overflow:visible;position:relative;padding:0 18% 14% 0}
.graduation .grad-photo figure{margin:0;overflow:hidden;border-radius:18px;border:1px solid #ffffff24;box-shadow:0 30px 80px #000a}
.graduation .grad-main{aspect-ratio:4/3.3}
.graduation .grad-photo img{position:static!important;width:100%;height:100%;object-fit:cover;transition:transform 1.6s cubic-bezier(.22,1,.36,1)}
.graduation .grad-main img{object-position:center 30%}
.graduation .grad-side{position:absolute;right:0;bottom:0;width:38%;aspect-ratio:2/3;border:4px solid #0d1811!important;outline:1px solid #32cd3255}
.graduation .grad-side img{object-position:center 20%}
.graduation .grad-photo figure:hover img{transform:scale(1.03)}
.graduation .grad-photo:hover img{transform:none}
.graduation .grad-photo figure:hover img{transform:scale(1.03)}
.grad-badge{position:absolute;left:22px;bottom:calc(14% + 22px);background:#32cd32;color:#041008;font-size:10px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;padding:8px 14px;border-radius:30px}
.graduation .grad-text{padding:0!important}
.graduation .grad-text h2{font-size:clamp(38px,4vw,58px)}
@media(max-width:900px){.graduation{grid-template-columns:1fr!important;padding:70px 7%;gap:50px}.graduation .grad-photo{aspect-ratio:auto;padding:0 22% 16% 0}.graduation .grad-main{aspect-ratio:4/3.3}}

/* Graduation v2: headline + small square photo */
.graduation{display:block!important;padding:140px max(6%,calc((100% - 1120px)/2))!important}
.graduation .grad-v2{display:grid!important;grid-template-columns:1.25fr 1fr;column-gap:8%;align-items:center;padding:0!important;max-width:none}
.grad-v2 .section-caption{grid-column:1/-1}
.grad-v2 h2{grid-row:auto!important;margin:0!important;font-size:clamp(40px,4.6vw,66px)!important}
.grad-aside{display:flex;flex-direction:column;gap:22px;max-width:340px}
.grad-square{margin:0;width:100%;aspect-ratio:1/1;border-radius:18px;overflow:hidden;border:1px solid #32cd3240;box-shadow:0 25px 60px #000a}
.grad-square img{width:100%;height:100%;object-fit:cover;object-position:center 22%;transition:transform 1.4s cubic-bezier(.22,1,.36,1)}
.grad-square:hover img{transform:scale(1.03)}
.grad-aside p{margin:0!important;font-size:15px!important;color:#ccdacf}
.grad-aside .button{align-self:flex-start}
@media(max-width:800px){.graduation{padding:80px 7%!important}.graduation .grad-v2{grid-template-columns:1fr;row-gap:36px}.grad-aside{max-width:none}.grad-square{max-width:320px}}
.event-bar{max-width:1180px!important;margin:0 auto 70px!important;padding:38px 5%!important;grid-template-columns:1fr 1fr 1.2fr!important;gap:40px!important;align-items:center!important;text-align:center;justify-items:center}
.event-bar>div{align-items:center;gap:8px!important}
.event-bar span{font-size:12px!important;letter-spacing:1.5px;text-transform:uppercase;color:#9fdc9f!important;font-weight:700}
.event-bar b{font-size:clamp(20px,2vw,26px)!important;font-weight:800;letter-spacing:-.02em}
.event-bar address{font-size:13px!important}
.graduation .grad-v3{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;align-items:center;max-width:1260px;margin:auto;padding:110px 6%;width:100%;grid-column:1/-1}
.grad-v3 .grad-big{max-width:none;width:100%;aspect-ratio:4/5}
.grad-copy{display:flex;flex-direction:column;align-items:flex-end;text-align:right}
.grad-copy h2{margin-bottom:28px}
.grad-copy p:not(.section-caption){max-width:420px;margin-bottom:26px}
.grad-copy .button{align-self:flex-end!important}
@media(max-width:800px){.event-bar{grid-template-columns:1fr!important;gap:24px!important;padding:28px 6%!important}.event-bar>div:last-child{grid-column:auto}.graduation .grad-v3{grid-template-columns:1fr;padding:70px 6%;gap:36px}.grad-v3 .grad-big{aspect-ratio:1/1}.grad-copy{align-items:flex-start;text-align:left}.grad-copy .button{align-self:flex-start!important}}
@media(min-width:801px){.graduation .grad-v3{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;flex-direction:initial}.grad-v3 .grad-big{max-width:520px!important;justify-self:start}.event-bar{grid-template-columns:1.3fr .9fr 1.2fr!important}}
.graduation .grad-v4{display:grid!important;grid-template-columns:auto 1fr;gap:8%;align-items:center;max-width:1120px;margin:auto;padding:100px 6%!important;width:100%;grid-column:1/-1}
.grad-left{display:flex;flex-direction:column;gap:20px;max-width:300px}
.grad-left .grad-square{width:100%;max-width:300px}
.grad-left p{margin:0!important;font-size:14px!important;color:#ccdacf}
.grad-left .button{align-self:flex-start!important}
.grad-right{text-align:right}
.grad-right h2{margin:0!important;font-size:clamp(40px,4.6vw,66px)!important}
@media(max-width:800px){.graduation .grad-v4{grid-template-columns:1fr;padding:70px 6%!important;gap:36px}.grad-v4 .grad-left{order:2;max-width:none}.grad-right{text-align:left}}
.graduation{min-height:0!important;padding:0!important}.graduation .grad-v4{padding:100px 6%!important}
@media(max-width:800px){}
.save-date{margin-top:28px;display:flex;flex-direction:column;align-items:center;gap:12px}
.save-date-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
@media (max-width:600px){.save-date-buttons{flex-direction:column;width:100%}.save-date-buttons .button{width:100%;justify-content:center}}
