:root{
  --black:#0a0a0a;
  --ink:#151515;
  --yellow:#ffd400;
  --cream:#f4f1e8;
  --white:#fff;
  --grey:#a5a5a0;
  --line:#2b2b2b;
  --radius:22px;
  --shell:min(1180px,calc(100% - 44px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit}
button,a{touch-action:manipulation}
:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}
.skip{position:absolute;left:-9999px;top:10px;background:var(--yellow);color:var(--black);padding:10px 14px;z-index:1000}.skip:focus{left:10px}
.shell{width:var(--shell);margin-inline:auto}
.site-header{position:sticky;top:0;z-index:50;background:rgba(10,10,10,.92);backdrop-filter:blur(14px);border-bottom:1px solid #ffffff1a}
.header-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.wordmark{text-decoration:none;display:flex;flex-direction:column;line-height:.92;font-weight:950;letter-spacing:-.04em}.wordmark span{font-size:13px;color:var(--yellow);letter-spacing:.03em}.wordmark strong{font-size:24px}
.site-header nav{display:flex;align-items:center;gap:26px}.site-header nav a{text-decoration:none;font-size:14px;font-weight:750;color:#d8d8d4}.site-header nav a:hover{color:var(--yellow)}
.nav-cta{border:1px solid #ffffff3a;border-radius:999px;padding:10px 16px}
.menu-button,.mobile-menu{display:none}
.hero{min-height:calc(100svh - 72px);position:relative;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background:url("assets/comunidade.jpg") center 36%/cover no-repeat;transform:scale(1.015)}
.hero-shade{background:linear-gradient(90deg,#060606 0%,rgba(6,6,6,.94) 30%,rgba(6,6,6,.43) 68%,rgba(6,6,6,.18) 100%),linear-gradient(0deg,rgba(0,0,0,.7),transparent 42%)}
.hero-content{position:relative;z-index:2;padding:92px 0 170px}
.kicker,.eyebrow{font-size:12px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--yellow);margin:0 0 18px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(54px,8.6vw,118px);line-height:.82;letter-spacing:-.065em;text-transform:uppercase;max-width:900px;margin-bottom:30px;font-weight:950}
h1 em{font-style:normal;color:var(--yellow)}
.hero-copy{font-size:clamp(18px,2vw,23px);max-width:650px;color:#e6e6e0;line-height:1.42}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 22px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:.035em;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--yellow);color:var(--black)}.button.ghost{border:1px solid #ffffff7a;background:#0006}.button.black{background:var(--black);color:var(--white)}
.hero-stats{position:absolute;z-index:3;bottom:0;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff35;background:#0b0b0bcc;backdrop-filter:blur(8px)}
.hero-stats div{padding:24px 28px;border-right:1px solid #ffffff25;display:flex;align-items:baseline;gap:12px}.hero-stats div:last-child{border-right:0}.hero-stats strong{font-size:36px;color:var(--yellow);line-height:1}.hero-stats span{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#d1d1cb}
.section-dark,.section-light,.section-yellow{padding:100px 0}.section-dark{background:var(--black)}.section-light{background:var(--cream);color:var(--ink)}.section-yellow{background:var(--yellow);color:var(--black)}
.manifesto-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end}.manifesto h2,.section-heading h2,.photo-copy h2,.trust-copy h2,.partners h2,.faq h2,.final-cta h2{font-size:clamp(42px,6vw,78px);line-height:.94;letter-spacing:-.055em;margin:0;font-weight:950}.manifesto h2 span,.photo-copy h2 span{color:var(--yellow)}.manifesto-copy{font-size:20px;color:#cecec8}.manifesto-copy p:last-child{margin-bottom:0}
.eyebrow.dark{color:#695900}
.section-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:end;margin-bottom:54px}.section-heading p{font-size:19px;color:#52524f;max-width:480px;margin:0}.section-heading.compact h2{max-width:760px}.section-heading.compact p{color:#2c2c26}
.journey{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.journey-card{position:relative;min-height:370px;padding:34px;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}.journey-card.before{background:#fff}.journey-card.during{background:var(--black);color:#fff}.journey-card.after{background:#dfdbd0}.journey-number{position:absolute;right:24px;top:2px;font-size:150px;line-height:1;font-weight:950;letter-spacing:-.08em;color:#0000000e}.during .journey-number{color:#ffffff12}.card-label{font-size:12px;font-weight:900;letter-spacing:.16em;color:#7c6900}.during .card-label{color:var(--yellow)}.journey-card h3{font-size:30px;line-height:1.05;letter-spacing:-.04em;margin-bottom:14px}.journey-card p:last-child{color:#555550;margin:0}.during p:last-child{color:#c7c7c2}
.photo-grid{display:grid;grid-template-columns:.75fr 1.15fr .75fr;gap:26px;align-items:center}.photo{margin:0;position:relative;border-radius:var(--radius);overflow:hidden;background:#171717}.photo img{width:100%;height:100%;object-fit:cover}.photo-tall{height:650px}.photo-square{height:440px}.photo figcaption{position:absolute;left:16px;bottom:16px;background:var(--yellow);color:var(--black);font-size:11px;font-weight:950;letter-spacing:.12em;padding:9px 12px;border-radius:999px}.photo-copy{padding:24px 20px}.photo-copy h2{font-size:clamp(38px,4.8vw,68px)}.age-list{margin:38px 0 20px;display:grid;gap:1px;background:#333}.age-list div{background:#111;display:flex;align-items:center;gap:20px;padding:17px 19px}.age-list strong{color:var(--yellow);font-size:28px}.age-list span{color:#d4d4ce}.fine{font-size:13px;color:#8f8f89}
.class-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.class-grid article{border:2px solid #171717;padding:28px;border-radius:18px;min-height:260px}.class-grid article>span{font-size:13px;font-weight:950}.class-grid h3{font-size:27px;line-height:1.05;margin:52px 0 12px;letter-spacing:-.035em}.class-grid p{margin:0;color:#37372f}.format-strip{display:grid;grid-template-columns:repeat(4,1fr);margin-top:46px;border-top:2px solid #171717;border-bottom:2px solid #171717}.format-strip div{padding:22px 15px;border-right:1px solid #171717;display:flex;flex-direction:column}.format-strip div:last-child{border-right:0}.format-strip strong{font-size:24px}.format-strip span{font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.video-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 35px #0000000d}.video-frame{position:relative;aspect-ratio:16/9;background:#000}.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-meta{display:flex;justify-content:space-between;gap:15px;padding:18px 20px}.video-meta strong{font-size:13px;letter-spacing:.09em}.video-meta span{color:#686864}
.event-gallery{padding:100px 0;background:#111;color:#fff}.gallery-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:end;margin-bottom:42px}.gallery-heading h2{font-size:clamp(42px,6vw,78px);line-height:.94;letter-spacing:-.055em;margin:0;font-weight:950}.gallery-heading p{font-size:19px;color:#c6c6c0;max-width:500px;margin:0}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-auto-rows:280px;gap:14px}.gallery-item{margin:0;border-radius:18px;overflow:hidden;background:#222}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.gallery-item:hover img{transform:scale(1.025)}.gallery-featured{grid-row:span 2}.gallery-wide{grid-column:span 2}
.trust-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:70px;align-items:center}.trust-photo{height:650px;border-radius:var(--radius);overflow:hidden}.trust-photo img{width:100%;height:100%;object-fit:cover}.trust-copy h2{font-size:clamp(42px,5.6vw,78px)}.trust-copy>p:not(.eyebrow){font-size:20px;color:#c6c6c0;max-width:700px;margin-top:30px}.trust-copy blockquote{margin:40px 0 0;padding:25px 0 0;border-top:1px solid #3c3c3c;font-size:21px;color:var(--yellow);font-weight:750}
.partners-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.partners h2{font-size:clamp(38px,5vw,66px)}.partners p:not(.eyebrow){font-size:18px;color:#55554f;max-width:720px;margin-top:27px}.partner-logos{display:grid;grid-template-columns:1fr 1fr;gap:12px}.partner-logos div{background:#fff;border-radius:16px;padding:28px 22px;min-height:180px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:18px}.partner-logos img{max-height:75px;max-width:200px}.partner-logos span{font-size:11px;font-weight:900;letter-spacing:.13em;color:#777}
.faq{border-top:1px solid #d5d1c7}.faq-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.faq h2{font-size:clamp(38px,4.4vw,62px)}.accordion details{background:#fff;border-radius:14px;margin-bottom:10px;padding:0 20px}.accordion summary{list-style:none;cursor:pointer;font-weight:850;font-size:18px;padding:21px 36px 21px 0;position:relative}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"+";position:absolute;right:2px;font-size:26px;top:14px}.accordion details[open] summary:after{content:"–"}.accordion details p{color:#5c5c57;padding:0 40px 22px 0;margin:0}
.final-cta{background:var(--yellow);color:var(--black);padding:110px 0;text-align:center}.cta-inner{max-width:900px}.final-cta h2{font-size:clamp(46px,7vw,92px)}.final-cta p{font-size:20px;max-width:700px;margin:26px auto}.final-cta .location{font-size:12px;text-transform:uppercase;letter-spacing:.08em;margin-top:25px}
footer{background:#050505;padding:36px 0;border-top:1px solid #232323}.footer-inner{display:grid;grid-template-columns:120px 1fr auto;gap:25px;align-items:center}.footer-inner img{width:120px;border-radius:8px}.footer-inner div{display:flex;flex-direction:column}.footer-inner span{color:#8f8f89;font-size:13px}.footer-inner a{text-decoration:none;color:var(--yellow);font-weight:800;font-size:13px}
.floating-cta{position:fixed;right:18px;bottom:18px;z-index:45;background:var(--yellow);color:var(--black);padding:13px 18px;border-radius:999px;text-decoration:none;font-size:13px;font-weight:950;box-shadow:0 10px 30px #0008}.floating-cta span{margin-left:4px}
@media(max-width:900px){
  :root{--shell:min(100% - 30px,1180px)}
  .site-header nav{display:none}.menu-button{display:block;background:transparent;color:#fff;border:1px solid #555;border-radius:999px;padding:9px 14px;font:inherit;font-size:13px;font-weight:800}.mobile-menu.open{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0 15px 15px}.mobile-menu a{padding:14px 0;border-top:1px solid #333}
  .hero{min-height:760px}.hero-content{padding:75px 0 210px}.hero-shade{background:linear-gradient(90deg,#060606 0%,rgba(6,6,6,.9) 54%,rgba(6,6,6,.28)),linear-gradient(0deg,rgba(0,0,0,.7),transparent 55%)}
  .hero-stats{grid-template-columns:1fr}.hero-stats div{padding:13px 18px;border-right:0;border-bottom:1px solid #ffffff1e}.hero-stats strong{font-size:25px}.hero-stats span{font-size:11px}
  .manifesto-grid,.section-heading,.gallery-heading,.trust-grid,.partners-grid,.faq-grid{grid-template-columns:1fr;gap:34px}.journey,.class-grid{grid-template-columns:1fr}.journey-card{min-height:310px}.photo-grid{grid-template-columns:1fr 1fr}.photo-copy{grid-column:1/-1;grid-row:1}.photo-tall,.photo-square{height:480px}.format-strip{grid-template-columns:1fr 1fr}.format-strip div:nth-child(2){border-right:0}.format-strip div:nth-child(-n+2){border-bottom:1px solid #171717}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:250px}.gallery-featured{grid-row:span 2}.gallery-wide{grid-column:span 1}.trust-photo{height:550px}.partner-logos{max-width:620px}
}
@media(max-width:620px){
  .section-dark,.section-light,.section-yellow,.event-gallery{padding:72px 0}
  h1{font-size:clamp(46px,14.2vw,64px);letter-spacing:-.055em}.hero-copy{font-size:17px}.actions{flex-direction:column;align-items:stretch}.button{width:100%}
  .manifesto h2,.section-heading h2,.photo-copy h2,.trust-copy h2,.partners h2,.faq h2,.final-cta h2{font-size:clamp(39px,13vw,61px)}
  .photo-grid,.video-grid{grid-template-columns:1fr}.photo-copy{grid-row:auto}.photo-tall{height:560px}.photo-square{height:390px}.format-strip{grid-template-columns:1fr}.format-strip div{border-right:0!important;border-bottom:1px solid #171717!important}.format-strip div:last-child{border-bottom:0!important}.video-meta{flex-direction:column;gap:3px}.gallery-heading{margin-bottom:28px}.gallery-heading p{font-size:17px}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:180px;gap:8px}.gallery-item{border-radius:12px}.gallery-featured{grid-row:span 2}.gallery-wide{grid-column:span 2}.trust-photo{height:520px}.partner-logos{grid-template-columns:1fr 1fr}.partner-logos div{padding:20px 12px;min-height:140px}.partner-logos img{max-width:130px;max-height:62px}.footer-inner{grid-template-columns:85px 1fr}.footer-inner img{width:85px}.footer-inner>a{grid-column:1/-1}.floating-cta{display:none}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
