@font-face{font-family:LemonMilk;src:url('assets/LEMONMILK-Bold.otf') format('opentype');font-weight:700;font-display:swap}
@font-face{font-family:Montserrat;src:url('assets/Montserrat-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
:root{--black:#000;--white:#fff;--cyan:#2dfffe;--lime:#85fd31;--orange:#fd7f24;--magenta:#fd28fb;--max:1440px;--form-control-height:52px;--form-control-font-size:16px;--form-control-inset:13px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--black);color:var(--white);font-family:Montserrat,Arial,sans-serif;font-size:16px;line-height:1.5}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font:inherit}
:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
::selection{background:var(--lime);color:var(--black)}
.skip-link{position:absolute;z-index:1000;top:-100px;left:16px;padding:10px 14px;background:var(--lime);color:var(--black);font-weight:800}
.skip-link:focus{top:12px}
.cyan{color:var(--cyan)}.magenta{color:var(--magenta)}.orange{color:var(--orange)}.lime{color:var(--lime)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(0,0,0,.97);border-bottom:1px solid rgba(255,255,255,.18)}
.header-inner{max-width:var(--max);height:82px;margin:auto;padding:0 34px;display:flex;align-items:center;gap:34px}
.brand{flex:0 0 auto;display:block;width:172px}
.brand img{width:100%;height:auto}
.nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,32px);margin-left:auto}
.nav a{font-size:13px;font-weight:700;white-space:nowrap;transition:color .2s}
.nav a:hover{color:var(--cyan)}
.nav a[aria-current="page"]{color:var(--cyan);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}
.header-contact{white-space:nowrap;border:1px solid var(--lime);padding:11px 14px;color:var(--lime);font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em;transition:background .2s,color .2s}
.header-contact:hover{background:var(--lime);color:var(--black)}
.header-contact span{margin-left:7px}
.menu-button{display:none}
.hero{max-width:var(--max);min-height:660px;margin:auto;display:grid;grid-template-columns:52% 48%;position:relative;overflow:hidden}
.hero-copy{padding:clamp(48px,5vw,90px) 34px 72px;position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.eyebrow{display:flex;align-items:center;gap:12px;font-family:Montserrat,Arial,sans-serif;font-size:11px;line-height:1.3;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 24px;color:var(--cyan)}
.eyebrow-mark{width:28px;height:2px;background:var(--cyan);display:inline-block;flex:0 0 auto}
.hero h1,.section-shell h2{font-family:LemonMilk,Montserrat,sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:-.035em;line-height:1.04;margin:0}
.hero h1{font-size:clamp(42px,4.7vw,74px);max-width:750px}
.hero-lead{max-width:530px;font-size:clamp(17px,1.55vw,21px);line-height:1.55;margin:28px 0 13px}
.hero-local{font-size:14px;font-weight:800;margin:0;color:var(--cyan)}
.hero-actions{display:flex;gap:28px;align-items:center;flex-wrap:wrap;margin-top:31px}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:13px 20px;font-size:13px;line-height:1.2;font-weight:900;text-transform:uppercase;letter-spacing:.025em;transition:transform .2s,background .2s,color .2s}
.button:hover{transform:translateY(-3px)}
.button-lime{background:var(--lime);color:var(--black)}
.button-lime:hover{background:var(--cyan)}
.text-link{font-size:14px;font-weight:800;border-bottom:2px solid var(--white);padding:9px 0;transition:color .2s,border-color .2s}
.text-link:hover{color:var(--cyan);border-color:var(--cyan)}
.text-link span{margin-left:8px}
.hero-visual{min-height:660px;position:relative;isolation:isolate}
.hero-main-photo{position:absolute;inset:0 0 36px 5%;overflow:hidden;background:#111}
.parallax-window img{width:100%;height:100%;object-fit:cover;will-change:transform;transform:scale(1.07)}
.hero-main-photo img{object-position:52% 50%}
.hero-main-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.12),transparent 38%)}
.hero-inset-photo{position:absolute;z-index:2;left:-7%;bottom:14px;width:31%;height:43%;overflow:hidden;border:7px solid var(--black);box-shadow:16px 16px 0 var(--cyan)}
.hero-inset-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 37%}
.photo-note{position:absolute;right:28px;bottom:48px;z-index:2;max-width:180px;padding:10px 13px;background:var(--black);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.07em}
.brand-stripe{height:29px;background-color:var(--black);background-image:url('assets/estampa-oficial.png');background-repeat:repeat-x;background-position:center;background-size:auto 105px;border-bottom:5px solid var(--black)}
.section-shell{padding:100px max(34px,calc((100vw - var(--max) + 68px)/2));scroll-margin-top:86px}
.section-top{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.75fr);align-items:end;gap:48px;margin-bottom:42px}
.section-top h2,.special h2,.reviews h2,.visit h2{font-size:clamp(38px,4.7vw,68px);max-width:850px}
.section-top>p{font-size:18px;line-height:1.6;max-width:440px;margin:0 0 5px}
.eyebrow-dark{color:var(--black)}
.structure{background:var(--white);color:var(--black)}
.structure .section-top>p{color:#262626}
.photo-grid{display:grid;grid-template-columns:1.4fr .85fr .85fr;gap:14px;min-height:435px}
.photo-tile{position:relative;margin:0;min-width:0;overflow:hidden;background:var(--black)}
.photo-tile img{width:100%;height:100%;min-height:435px;object-fit:cover;transition:transform .6s ease}
.photo-tile:hover img{transform:scale(1.045)}
.photo-tile-main img{object-position:67% center}
.photo-tile figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 18px 17px;background:linear-gradient(transparent,rgba(0,0,0,.8));font-family:LemonMilk,Montserrat,sans-serif;font-size:15px;text-transform:uppercase;color:var(--white)}
.structure-cta{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:23px;font-size:14px;font-weight:700}
.underlined-link{font-weight:900;border-bottom:2px solid var(--black);padding-bottom:4px}
.underlined-link:hover{color:var(--magenta);border-color:var(--magenta)}
.tickets{background:var(--black);color:var(--white);padding-bottom:80px}
.tickets-intro{margin-bottom:50px}
.tickets-intro>p{color:#e8e8e8}
.ticket-list{border-top:1px solid rgba(255,255,255,.42)}
.ticket{display:grid;grid-template-columns:minmax(200px,1.1fr) minmax(240px,1.2fr) minmax(170px,.65fr);align-items:center;gap:28px;min-height:184px;border-bottom:1px solid rgba(255,255,255,.42);padding:24px 0}
.ticket-mini{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:var(--cyan)}
.ticket h3{font-family:LemonMilk,Montserrat,sans-serif;font-size:clamp(54px,6vw,88px);line-height:1;margin:9px 0 0;text-transform:uppercase}
.ticket h3 small{font-size:.45em}
.ticket>p{font-size:17px;line-height:1.5;max-width:365px;margin:0}
.ticket-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.old-price{font-size:17px;line-height:1.2;text-decoration:line-through;color:#b9b9b9}
.ticket-price strong{font-family:LemonMilk,Montserrat,sans-serif;font-size:clamp(29px,3vw,45px);line-height:1.2;color:var(--orange);white-space:nowrap}
.tickets-footnote{font-size:13px;color:#d8d8d8;margin:20px 0 0}
.special{background:var(--white);color:var(--black);padding-top:94px}
.special-header{max-width:750px;margin-bottom:42px}
.special-header h2{margin-bottom:20px}
.special-header>p:last-child{font-size:17px;max-width:640px;margin:0}
.benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.benefit{border-top:2px solid var(--black);padding:20px 0 30px}
.benefit-line{display:block;width:41px;height:6px;background:var(--magenta);margin-bottom:27px}
.benefit:nth-child(2) .benefit-line{background:var(--cyan)}
.benefit:nth-child(3) .benefit-line{background:var(--lime)}
.benefit:nth-child(4) .benefit-line{background:var(--orange)}
.benefit h3{font-family:LemonMilk,Montserrat,sans-serif;font-size:clamp(18px,1.55vw,24px);line-height:1.18;text-transform:uppercase;margin:0 0 15px}
.benefit p{font-size:14px;line-height:1.55;margin:0;max-width:240px}
.socks{display:grid;grid-template-columns:60px 1fr auto;align-items:center;gap:24px;background:var(--cyan);color:var(--black);padding:23px 28px;margin-top:32px}
.socks-icon{display:flex;align-items:center;justify-content:center;width:54px;height:54px;background:var(--black);color:var(--cyan);font-size:31px;font-weight:900}
.socks h3{font-family:LemonMilk,Montserrat,sans-serif;text-transform:uppercase;font-size:23px;line-height:1.18;margin:0 0 8px}
.socks p{font-size:14px;line-height:1.5;margin:0;max-width:770px}
.socks a{font-size:13px;text-transform:uppercase;font-weight:900;border-bottom:2px solid var(--black);padding-bottom:3px;white-space:nowrap}
.experiences{background:var(--black);color:var(--white)}
.experience-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:15px}
.experience{position:relative;min-height:455px;overflow:hidden;background:#131313;isolation:isolate}
.experience>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.experience:hover>img{transform:scale(1.055)}
.experience::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.93),rgba(0,0,0,.16) 64%);z-index:0}
.experience-copy{position:absolute;z-index:1;left:30px;right:30px;bottom:30px;max-width:540px}
.experience-copy>span{display:block;font-size:11px;font-weight:900;letter-spacing:.16em;color:var(--cyan);margin-bottom:9px}
.experience h3{font-family:LemonMilk,Montserrat,sans-serif;text-transform:uppercase;font-size:clamp(28px,3vw,45px);line-height:1.07;margin:0 0 12px}
.experience p{font-size:15px;line-height:1.48;margin:0 0 20px;max-width:470px}
.experience a{font-size:13px;font-weight:900;text-transform:uppercase;border-bottom:2px solid var(--lime);padding-bottom:4px}
.experience-school>img{object-position:center 33%}
.experience-group{grid-column:1/-1;min-height:300px;background:var(--magenta);color:var(--black)}
.experience-group::after{display:none}
.experience-group .experience-copy{left:40px;bottom:36px;max-width:540px}
.experience-group .experience-copy>span{color:var(--black)}
.experience-group>img{left:auto;right:0;width:43%;object-position:50% 45%}
.experience-group a{border-color:var(--black)}
.experience-group a:hover{color:var(--white)}
.reviews{background:var(--cyan);color:var(--black)}
.reviews-heading{text-align:center;max-width:920px;margin:0 auto 42px}
.reviews-heading .eyebrow{justify-content:center}
.reviews-heading h2{max-width:none}
.reviews-heading h2 span{color:var(--magenta)}
.reviews-heading>p:last-child{font-size:16px;margin:18px auto 0}
.review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.review{min-height:238px;margin:0;padding:30px 27px;background:var(--white);display:flex;flex-direction:column;justify-content:space-between;border-top:7px solid var(--black)}
.review blockquote{font-family:Montserrat,Arial,sans-serif;font-size:clamp(19px,2vw,27px);line-height:1.35;font-weight:800;margin:0}
.review figcaption{display:flex;justify-content:space-between;gap:10px;align-items:end;font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.review figcaption span{text-transform:none;letter-spacing:0;font-weight:600;color:#333}
.visit{position:relative;min-height:520px;display:flex;align-items:center;overflow:hidden;background:#111}
.visit-photo{position:absolute;inset:0;overflow:hidden}
.visit-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#000 2%,rgba(0,0,0,.84) 38%,rgba(0,0,0,.25) 100%)}
.visit-photo img{object-position:center 42%}
.visit-copy{position:relative;z-index:1;max-width:780px}
.visit h2{margin-bottom:25px}
.visit-copy>p:not(.eyebrow){font-size:19px;font-weight:600;line-height:1.7;margin:0}
.visit-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:32px}
.footer{background:var(--black);color:var(--white);border-top:4px solid var(--lime)}
.footer-main{max-width:var(--max);margin:auto;padding:55px 34px 42px;display:grid;grid-template-columns:1.35fr 1fr .7fr .8fr;gap:42px}
.footer-brand img{width:178px;height:auto}
.footer-brand p{max-width:240px;font-size:13px;color:#ddd;margin:18px 0 0}
.footer-detail h2{font-family:Montserrat,Arial,sans-serif;font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--cyan);margin:0 0 15px}
.footer-detail p{font-size:14px;line-height:1.65;margin:0}
.footer-detail a{border-bottom:1px solid var(--white)}
.footer-detail a:hover{color:var(--lime);border-color:var(--lime)}
.footer-detail .footer-address-link{border-bottom:0}
.footer-detail .footer-address-link span{border-bottom:1px solid currentColor}
.footer-bottom{max-width:var(--max);margin:auto;border-top:1px solid #383838;padding:19px 34px 28px;display:flex;justify-content:space-between;gap:20px;font-size:11px;color:#d1d1d1}
.footer-bottom a:hover{color:var(--lime)}
.will-reveal{opacity:1;transform:translateY(12px);transition:transform .6s ease}
.will-reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:1100px){.header-inner{gap:20px}.nav{gap:15px}.nav a{font-size:12px}.header-contact{font-size:11px}.hero{grid-template-columns:53% 47%}.hero h1{font-size:clamp(38px,4.6vw,60px)}.benefits{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-main{grid-template-columns:1.2fr 1fr 1fr;gap:28px}.footer-detail:last-child{grid-column:2/4}}
@media(max-width:850px){.header-inner{height:74px;padding:0 22px}.brand{width:152px}.menu-button{display:flex;align-items:center;gap:10px;margin-left:auto;background:none;border:1px solid #777;color:var(--white);padding:10px 12px;min-height:44px;font-size:12px;font-weight:900;text-transform:uppercase}.menu-button span{width:17px;height:12px;border-top:2px solid var(--white);border-bottom:2px solid var(--white)}.nav{display:none;position:absolute;top:74px;left:0;right:0;padding:18px 22px 22px;background:var(--black);border-bottom:1px solid #555;flex-direction:column;align-items:flex-start;gap:0}.nav.is-open{display:flex}.nav a{width:100%;padding:13px 0;border-bottom:1px solid #333;font-size:14px}.header-contact{display:none}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:58px 22px 48px}.hero h1{font-size:clamp(42px,7.5vw,72px)}.hero-lead{max-width:620px}.hero-visual{min-height:520px}.hero-main-photo{inset:0 0 30px 0}.hero-inset-photo{left:5%;width:24%;height:47%;bottom:12px}.photo-note{right:18px;bottom:42px}.section-shell{padding:80px 22px;scroll-margin-top:76px}.section-top{grid-template-columns:1fr;gap:20px}.section-top>p{max-width:650px}.photo-grid{grid-template-columns:1.2fr .8fr;min-height:0}.photo-tile-main{grid-row:span 2}.photo-tile img{min-height:270px}.photo-tile-main img{min-height:555px}.ticket{grid-template-columns:1fr 1.1fr .75fr;gap:14px}.ticket>p{font-size:15px}.experience-grid{grid-template-columns:1fr 1fr}.experience{min-height:410px}.review-list{gap:10px}.review{padding:22px 18px}.review figcaption{display:block}.review figcaption span{display:block;margin-top:6px}}
@media(max-width:620px){.hero-copy{padding:47px 20px 42px}.eyebrow{font-size:10px;letter-spacing:.13em;margin-bottom:18px}.hero h1{font-size:clamp(38px,10.5vw,60px)}.hero-lead{font-size:17px;margin-top:22px}.hero-local{font-size:13px}.hero-actions{gap:16px}.button{font-size:12px;min-height:48px}.hero-visual{min-height:420px}.hero-inset-photo{width:31%;height:47%;border-width:5px;box-shadow:9px 9px 0 var(--cyan)}.photo-note{font-size:9px;right:12px;bottom:41px;max-width:145px}.section-shell{padding:70px 20px}.section-top h2,.special h2,.reviews h2,.visit h2{font-size:clamp(34px,9vw,49px)}.section-top>p{font-size:16px}.photo-grid{grid-template-columns:1fr 1fr;gap:9px}.photo-tile-main{grid-column:1/-1;grid-row:auto}.photo-tile-main img{min-height:310px;max-height:360px}.photo-tile:not(.photo-tile-main) img{min-height:230px;max-height:250px}.photo-tile figcaption{font-size:11px;padding:20px 10px 11px}.structure-cta{align-items:flex-start;flex-direction:column;gap:8px}.ticket{grid-template-columns:1fr auto;gap:8px 15px;min-height:0;padding:25px 0}.ticket-duration{grid-column:1}.ticket h3{font-size:61px}.ticket>p{grid-column:1;grid-row:2;font-size:14px;max-width:280px}.ticket-price{grid-column:2;grid-row:1/3}.ticket-price strong{font-size:27px}.old-price{font-size:14px}.benefits{grid-template-columns:1fr 1fr;gap:10px}.benefit{padding-bottom:15px}.benefit h3{font-size:16px}.benefit p{font-size:12px}.benefit-line{margin-bottom:17px}.socks{grid-template-columns:44px 1fr;gap:15px;padding:21px 16px}.socks-icon{width:42px;height:42px;font-size:24px}.socks h3{font-size:18px}.socks p{font-size:13px}.socks a{grid-column:2;width:max-content;font-size:12px}.experience-grid{grid-template-columns:1fr}.experience{min-height:420px}.experience-copy{left:20px;right:20px;bottom:22px}.experience-group{grid-column:auto;min-height:400px}.experience-group>img{width:100%;height:52%;top:0;bottom:auto}.experience-group .experience-copy{left:20px;bottom:23px}.experience-group h3{font-size:29px}.review-list{grid-template-columns:1fr}.review{min-height:175px}.review blockquote{font-size:22px}.reviews-heading{margin-bottom:30px}.visit{min-height:500px}.visit-photo::after{background:linear-gradient(90deg,rgba(0,0,0,.9),rgba(0,0,0,.54))}.visit-copy>p:not(.eyebrow){font-size:16px}.footer-main{grid-template-columns:1fr 1fr;padding:45px 20px 33px;gap:30px 18px}.footer-brand{grid-column:1/-1}.footer-brand img{width:160px}.footer-detail:last-child{grid-column:auto}.footer-detail p{font-size:12px}.footer-bottom{padding:18px 20px 24px;flex-direction:column}}
@media(max-width:390px){.hero h1{font-size:37px}.hero-visual{min-height:350px}.hero-inset-photo{height:41%;width:35%}.ticket h3{font-size:50px}.ticket-price strong{font-size:23px}.benefits{grid-template-columns:1fr}.benefit{padding-bottom:12px}.benefit p{max-width:none}.experience h3{font-size:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.will-reveal{opacity:1;transform:none;transition:none}.parallax-window img{transform:none!important;will-change:auto}.button,.photo-tile img,.experience>img{transition:none}}

/* Variação de fundo preto e movimento guiado pela rolagem. */
.scroll-meter{height:3px;background:#151515;overflow:hidden}
.scroll-meter span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--lime),var(--magenta));will-change:width}
.brand-stripe{background-position:var(--stripe-offset,0px) center}
.hero-inset-photo{transform:translate3d(0,var(--hero-shift,0px),0);will-change:transform}
.structure,.special,.reviews{background:var(--black);color:var(--white)}
.structure .section-top>p,.special-header>p:last-child,.benefit p{color:#e0e0e0}
.eyebrow-dark{color:var(--cyan)}
.structure-cta{border-top:1px solid #484848;margin-top:28px}
.structure .underlined-link{border-color:var(--white)}
.benefit{border-color:#666}
.socks{grid-template-columns:110px 1fr auto}
.socks-photo{width:100px;height:100px;object-fit:cover;border:3px solid var(--black);background:var(--white)}
.reviews-heading h2 span{color:var(--magenta)}
.review{background:#111;color:var(--white);border-top-color:var(--cyan);box-shadow:inset 0 0 0 1px #3b3b3b}
.review:nth-child(2){border-top-color:var(--magenta)}
.review:nth-child(3){border-top-color:var(--lime)}
.review figcaption span{color:#d7d7d7}
.experience-group{min-height:390px;background:#101010;color:var(--white)}
.experience-group>img{inset:0;width:100%;height:100%;object-position:center 48%}
.experience-group::after{display:block;background:linear-gradient(90deg,rgba(0,0,0,.98) 0%,rgba(0,0,0,.84) 36%,rgba(0,0,0,.18) 86%)}
.experience-group .experience-copy{left:45px;bottom:50%;transform:translateY(50%);max-width:490px}
.experience-group .experience-copy>span{color:var(--lime)}
.experience-group h3{color:var(--white)}
.experience-group a{border-color:var(--lime)}
.experience-group a:hover{color:var(--lime)}
.footer-main{grid-template-columns:1.35fr 1.25fr .9fr .9fr;gap:28px}
.footer-detail:last-child{grid-column:auto}
.will-reveal{opacity:.62;transform:translateY(54px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.65,.2,1)}
.will-reveal.is-visible{opacity:1;transform:translateY(0)}

.structure-story{position:relative}
.story-sticky{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.story-frame{position:relative;margin:0;min-width:0;min-height:420px;overflow:hidden;background:#111}
.story-frame img{width:100%;height:100%;min-height:420px;object-fit:cover}
.story-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.86),transparent 60%)}
.story-frame figcaption{position:absolute;left:28px;right:28px;bottom:26px;z-index:2;display:grid;gap:8px}
.story-frame figcaption span{font-size:11px;font-weight:900;letter-spacing:.15em;color:var(--cyan)}
.story-frame figcaption strong{font-family:LemonMilk,Montserrat,sans-serif;font-size:clamp(20px,2vw,30px);line-height:1.15;text-transform:uppercase}
.story-progress{display:none}
.structure-story.motion-ready{height:230vh}
.motion-ready .story-sticky{position:sticky;top:94px;height:min(73vh,690px);min-height:440px;display:block;overflow:hidden}
.motion-ready .story-frame{position:absolute;inset:0;height:100%;min-height:0;opacity:0;will-change:transform,opacity}
.motion-ready .story-frame:first-child{opacity:1}
.motion-ready .story-frame img{height:100%;min-height:0;object-position:center}
.motion-ready .story-frame figcaption{left:clamp(25px,5vw,75px);bottom:clamp(30px,5vw,65px);max-width:650px}
.motion-ready .story-frame figcaption strong{font-size:clamp(34px,5vw,72px)}
.motion-ready .story-progress{display:block;position:absolute;z-index:5;left:0;right:0;bottom:0;height:6px;background:#202020}
.motion-ready .story-progress span{display:block;width:0;height:100%;background:var(--lime)}

@media(max-width:1100px){.footer-main{grid-template-columns:1fr;gap:26px}.footer-brand{grid-column:auto}.footer-detail:last-child{grid-column:auto}}
@media(max-width:850px){.story-sticky{grid-template-columns:1fr}.story-frame,.story-frame img{min-height:330px}.motion-ready .story-sticky{top:85px;height:68vh;min-height:400px}}
@media(max-width:620px){.socks{grid-template-columns:76px 1fr;gap:14px}.socks-photo{width:72px;height:72px}.socks a{grid-column:2}.experience-group{min-height:430px}.experience-group>img{height:100%;top:0;object-position:center 45%}.experience-group::after{background:linear-gradient(0deg,rgba(0,0,0,.97),rgba(0,0,0,.28) 76%)}.experience-group .experience-copy{left:20px;right:20px;bottom:23px;transform:none}.motion-ready .story-sticky{top:76px;height:65vh;min-height:380px}.motion-ready .story-frame figcaption{left:20px;right:20px;bottom:30px}.motion-ready .story-frame figcaption strong{font-size:clamp(28px,8vw,42px)}.footer-main{grid-template-columns:1fr;gap:27px}.footer-brand{grid-column:auto}.footer-detail p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.scroll-meter span,.hero-inset-photo{will-change:auto}.hero-inset-photo{transform:none!important}.will-reveal{opacity:1;transform:none;transition:none}.structure-story{height:auto!important}.story-sticky{position:static!important;display:grid!important;height:auto!important;min-height:0!important}.story-frame{position:relative!important;opacity:1!important;visibility:visible!important;transform:none!important;height:auto!important;min-height:330px!important;will-change:auto!important}.story-frame img{min-height:330px!important}.story-progress{display:none!important}}

/* Revisão visual: meia original, passeio escolar e convite a grupos. */
.socks{grid-template-columns:145px minmax(0,1fr) auto}
.socks-photo{width:145px;height:110px;object-fit:contain;border:0;background:#000}
.experience-school::after{background:linear-gradient(0deg,rgba(0,0,0,.94) 0%,rgba(0,0,0,.38) 65%,rgba(0,0,0,.12) 100%),linear-gradient(115deg,rgba(31,241,239,.17),rgba(234,27,230,.13))}
.experience-group{min-height:390px;background:#000}
.experience-group::after{display:block;z-index:1;background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.96) 35%,rgba(0,0,0,.16) 75%,rgba(0,0,0,.05) 100%)}
.experience-group .experience-copy{z-index:2}
.group-visual{position:absolute;inset:0 0 0 auto;width:65%;display:grid;grid-template-columns:.86fr 1.16fr .96fr;gap:8px;overflow:hidden;transform:translate3d(0,var(--group-shift,0px),0) scale(1.08)}
.group-visual img{width:100%;height:100%;min-width:0;object-fit:cover;filter:saturate(1.12)}
.group-visual img:nth-child(1){object-position:56% center;border-top:5px solid var(--cyan)}
.group-visual img:nth-child(2){object-position:51% center;border-top:5px solid var(--magenta)}
.group-visual img:nth-child(3){object-position:51% center;border-top:5px solid var(--lime)}
.footer-main{display:block;max-width:var(--max);padding:55px 34px 0}
.footer-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-bottom:45px;text-align:center}
.footer-detail:last-child{grid-column:auto}
.footer-bottom{max-width:none;margin:0;padding:28px 0 34px;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center}
.footer-brand{display:flex;align-items:center;justify-content:center;gap:26px;min-width:0}
.footer-brand img{width:150px;height:auto;flex:none}
.footer-brand p{max-width:280px;margin:0;font-size:13px}
.footer-copyright{font-size:12px;white-space:nowrap}
@media(max-width:850px){.socks{grid-template-columns:120px minmax(0,1fr) auto}.socks-photo{width:120px;height:95px}.footer-details{gap:18px}}
@media(max-width:620px){.socks{grid-template-columns:96px minmax(0,1fr);gap:14px}.socks-photo{width:96px;height:79px}.socks a{grid-column:2}.experience-group{min-height:470px}.group-visual{inset:0 0 auto 0;width:100%;height:62%;transform:none;gap:5px}.experience-group::after{background:linear-gradient(0deg,#000 0%,rgba(0,0,0,.98) 29%,rgba(0,0,0,.12) 77%)}.experience-group .experience-copy{left:20px;right:20px;bottom:23px;transform:none}.footer-main{padding:44px 20px 0}.footer-details{grid-template-columns:1fr;gap:25px;padding-bottom:34px}.footer-bottom{padding:24px 0 30px;gap:20px}.footer-brand{flex-direction:column;gap:12px}.footer-brand img{width:115px}.footer-brand p{font-size:12px;line-height:1.45}.footer-copyright{font-size:11px}}
@media(prefers-reduced-motion:reduce){.group-visual{transform:none!important}}

/* Em telas estreitas, as fotos e o texto de grupos ocupam áreas próprias. */
@media(max-width:960px){
  .experience-group{display:grid;grid-template-rows:clamp(210px,32vw,290px) auto;min-height:0}
  .experience-group::after{display:none}
  .group-visual{position:relative;inset:auto;width:100%;height:100%;transform:none;gap:6px}
  .experience-group .experience-copy{position:relative;inset:auto;max-width:none;transform:none;padding:28px 30px 32px}
}
@media(max-width:620px){
  .experience-group{grid-template-rows:220px auto}
  .experience-group .experience-copy{padding:24px 20px 28px}
  .experience-group h3{font-size:clamp(29px,8vw,40px)}
}

.group-form-section{background:var(--black);border-top:1px solid #353535}
.group-form-intro{max-width:850px;margin:0 auto 34px}
.group-form-intro>p:last-child{max-width:720px;font-size:18px;line-height:1.6;margin:22px 0 0}
.group-form{max-width:900px;margin:auto;padding:34px;background:#111;border-top:7px solid var(--lime)}
.group-form-kicker{color:var(--lime);font-size:11px;font-weight:900;letter-spacing:.15em;margin:0 0 14px}
.group-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 22px}
.group-field{display:flex;flex-direction:column;min-width:0}
.group-field label{font-size:14px;font-weight:800;margin:0 0 8px}
.group-field input{display:block;width:100%;min-width:0;max-width:100%;height:var(--form-control-height);min-height:var(--form-control-height);max-height:var(--form-control-height);border:1px solid #aaa;border-radius:0;background:#050505;color:var(--white);padding:0 var(--form-control-inset);font:400 var(--form-control-font-size)/1.25 Montserrat,Arial,sans-serif}
.group-field input::placeholder{color:#b5b5b5}
.group-field input[aria-invalid=true]{border-color:var(--orange)}
.group-field small{font-size:12px;line-height:1.45;color:#d5d5d5;margin-top:7px}
.group-field-error{font-size:12px;line-height:1.4;color:var(--orange);margin-top:5px}
.group-form-submit{width:100%;border:0;cursor:pointer;margin-top:25px;text-align:center}
.group-form-help{font-size:12px;line-height:1.5;color:#d5d5d5;margin:11px 0 0}
.group-form-result{margin-top:24px;padding:20px;background:#050505;border:1px solid var(--lime)}
.group-form-result[hidden]{display:none}
.group-form-result h3{font-family:LemonMilk,Montserrat,sans-serif;font-size:19px;line-height:1.2;text-transform:uppercase;margin:0 0 13px}
.group-form-result pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.5 Montserrat,Arial,sans-serif;margin:0 0 19px}
.group-form-result .button{width:100%;text-align:center}
.group-form-result p{font-size:12px;line-height:1.5;color:#ddd;margin:13px 0 0}
.form-temporal{display:flex;align-items:center;width:100%;min-width:0;max-width:100%;height:var(--form-control-height);min-height:var(--form-control-height);max-height:var(--form-control-height);padding:0 var(--form-control-inset);overflow:hidden;border:1px solid #aaa;border-radius:0;background:#050505}
.form-temporal:focus-within{border-color:var(--cyan)}
.form-temporal:has(input[aria-invalid=true]){border-color:var(--orange)}
:is(.group-field,.party-form,.school-form) .form-temporal input:is([type=date],[type=time]){display:block;flex:1 1 auto;width:100%;min-width:0;max-width:100%;height:100%;min-height:0;max-height:100%;margin:0;padding:0;border:0;border-radius:0;outline:0;background:transparent;color:var(--white);color-scheme:dark;-webkit-appearance:none;appearance:none;font:400 var(--form-control-font-size)/1.25 Montserrat,Arial,sans-serif}
.form-temporal input::-webkit-datetime-edit{color:var(--white)}
.form-temporal input::-webkit-date-and-time-value{height:1.5em;line-height:1.5}
@media(max-width:620px){
  .group-form-intro>p:last-child{font-size:16px}
  .group-form{padding:22px 18px}
  .group-form-grid{grid-template-columns:1fr;gap:15px}
}

.back-to-top{position:fixed;z-index:60;right:20px;bottom:20px;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 15px;border:2px solid var(--lime);background:var(--black);color:var(--lime);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.03em;box-shadow:0 5px 24px rgba(0,0,0,.48);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
.back-to-top:hover{background:var(--lime);color:var(--black)}
@media(max-width:620px){.back-to-top{right:16px;bottom:16px;width:48px;height:48px;padding:0;font-size:22px}.back-to-top-label{display:none}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}
@media(max-width:850px){.hero{grid-template-columns:minmax(0,1fr)}.hero-copy,.hero-visual{min-width:0}}
@media(max-width:350px){
  .hero h1{font-size:32px}
  .socks{grid-template-columns:72px minmax(0,1fr);gap:10px;padding:18px 12px}
  .socks-photo{width:72px;height:72px}
  .socks h3{font-size:16px;overflow-wrap:anywhere}
}
@media(min-width:851px) and (max-width:1020px){
  .header-inner{height:74px;padding-inline:22px}
  .menu-button{display:flex;align-items:center;gap:10px;margin-left:auto;background:none;border:1px solid #777;color:var(--white);padding:10px 12px;min-height:44px;font-size:12px;font-weight:900;text-transform:uppercase}
  .menu-button span{width:17px;height:12px;border-top:2px solid var(--white);border-bottom:2px solid var(--white)}
  .nav{display:none;position:absolute;top:74px;left:0;right:0;padding:18px 22px 22px;background:var(--black);border-bottom:1px solid #555;flex-direction:column;align-items:flex-start;gap:0}
  .nav.is-open{display:flex}
  .nav a{width:100%;padding:13px 0;border-bottom:1px solid #333;font-size:14px}
  .header-contact{display:none}
}
