.act-social .act-stage{background:radial-gradient(ellipse at 75% 40%,#202044,#0a0b13 65%)}
.social-heading{position:absolute;top:21%;left:4.5vw;width:32%}.social-heading h2{font-size:clamp(3.2rem,5.7vw,6.5rem)}
.social-gallery{position:absolute;inset:17% 4.5vw 13% 40%;display:grid;grid-template-columns:50% 50%;gap:20px;perspective:1300px}
.social-spotlight{height:100%;min-height:0;transform:rotateY(calc((var(--act-p, .5) - .5)* -10deg)) translateZ(calc((var(--act-p, .5) - .5)*180px))}
.social-spotlight button{position:relative;display:block;width:100%;height:88%;padding:0;border:1px solid #aca6d7;background:#151620;box-shadow:30px 45px 95px #0008;overflow:hidden}
.social-spotlight img{width:100%;height:100%;object-fit:contain}.social-spotlight button span{position:absolute;bottom:0;right:0;padding:10px 14px;background:#0d0e16e8;font-size:.65rem;color:#fff}.social-spotlight p{margin:7px 0;font-size:.8rem}
.social-collection{display:flex;flex-direction:column;justify-content:center;min-width:0}.social-rail{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:15px 0}
.social-rail button{flex:0 0 112px;height:170px;padding:0;border:1px solid #5b5873;background:#171824;scroll-snap-align:start}.social-rail button[aria-current=true]{border:2px solid #e2c5ff;transform:translateY(-6px)}.social-rail img{width:100%;height:100%;object-fit:contain}.social-rail-nav{display:flex;gap:8px}.social-collection>small{max-width:300px;margin-top:18px;color:#aaa6b9;font-size:.7rem;line-height:1.4}
.image-dialog{width:min(880px,96vw);height:min(94vh,1050px);max-height:94vh;padding:18px;border:1px solid #a99bc3;background:#11121c;color:#fff}.image-dialog::backdrop{background:#05060deb}.image-dialog>button{position:absolute;z-index:2;right:10px;top:10px;width:38px;height:38px;border:0;background:#111;color:#fff;font-size:2rem}.image-dialog img{width:100%;height:calc(100% - 30px);object-fit:contain}.image-dialog p{text-align:center;font-size:.75rem;color:#cac6d8}
.act-people .act-stage{background:#0e0e17}.people-copy{position:absolute;top:20%;left:4.5vw;width:43%;z-index:2}.people-copy h2{font-size:clamp(4rem,7vw,8rem)}.people-copy>p:not(.eyebrow){max-width:500px}
.people-promises{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:30px;max-width:510px}.people-promises span{border-top:1px solid #7d7895;padding-top:6px;font-size:.67rem;color:#bfbaca}
.people-photo{position:absolute;top:15%;right:8%;width:33%;height:62%;margin:0;border:1px solid #c4bce5;box-shadow:35px 40px 100px #000a;transform:rotateY(calc((var(--act-p, .5) - .5)* -8deg)) translateZ(calc((var(--act-p, .5) - .5)*120px));overflow:hidden}.people-photo img{width:100%;height:100%;object-fit:cover}.people-photo figcaption{position:absolute;inset:auto 0 0;padding:28px 12px 12px;background:linear-gradient(transparent,#000a);font-size:.57rem;letter-spacing:.15em}
.people-bottom{position:absolute;bottom:8%;left:4.5vw;right:4.5vw;display:flex;align-items:center;gap:20px}.process-line{display:flex;flex:1;justify-content:space-between;gap:14px;margin:0;padding:0;list-style:none;border-top:1px solid #686677}.process-line li{padding-top:10px;color:#dedce7;font-size:.68rem;white-space:nowrap}.process-line strong{display:block;color:#b7b0ff;font-size:.7rem}.people-bottom button{border:1px solid #9f95c6;padding:12px 15px;background:#171722;color:#fff;font-size:.7rem;font-weight:700;white-space:nowrap}
.act-decision .act-stage{background:#131321}.decision-head{position:absolute;top:17%;left:4.5vw;width:32%}.decision-head h2{font-size:clamp(3rem,5.2vw,6.5rem)}
.package-rail{position:absolute;left:40%;right:4.5vw;top:17%;height:49%;display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;padding:8px 2px 12px;perspective:1200px}.package{flex:0 0 clamp(220px,20vw,310px);height:100%;padding:21px;border:1px solid #8a849d;background:linear-gradient(150deg,#242337,#15151f);scroll-snap-align:start;box-shadow:14px 22px 38px #0005;transform:rotateY(calc((var(--act-p, .5) - .5)* -7deg))}.package small{font-size:.58rem;letter-spacing:.14em;color:#afa7ff}.package h3{margin:15px 0;font-size:clamp(1.5rem,1.9vw,2.5rem);line-height:1}.package ul{margin:0;padding-left:17px;color:#e0dfe8;font-size:.7rem;line-height:1.55}.package p{font-size:.62rem;color:#b5b2c3}.package a{display:inline-block;margin-top:6px;border-bottom:1px solid #c6c2da;padding-bottom:3px;font-size:.67rem;font-weight:700;text-decoration:none}.package-controls{position:absolute;top:68%;left:40%;right:4.5vw;display:flex;align-items:center;gap:8px}.package-controls span{margin-left:auto;color:#ada8b9;font-size:.56rem;letter-spacing:.13em}
.decision-faq{position:absolute;bottom:7%;left:4.5vw;right:4.5vw;display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:12px;align-items:start;border-top:1px solid #666379;padding-top:10px}.decision-faq>p{margin:0;color:#fff;font-size:1rem;font-weight:700}.decision-faq details{font-size:.67rem;color:#c8c5d4}.decision-faq summary{cursor:pointer;font-weight:700;color:#fff}.decision-faq details p{font-size:.65rem;line-height:1.4}
.act-contact{height:125svh}.act-contact .act-stage{background:radial-gradient(circle at 50% 50%,#202052,#090a11 70%)}.contact-halo{position:absolute;left:20%;top:-20%;width:80vw;height:80vw;border:1px solid #a69eff3c;border-radius:50%;box-shadow:0 0 0 5vw #a69eff0b,0 0 0 11vw #a69eff08;transform:translateZ(calc((var(--act-p, .5) - .5)*250px));pointer-events:none}
.contact-copy{position:absolute;top:22%;left:4.5vw;width:54%;z-index:2}.contact-copy h2{font-size:clamp(4rem,7.5vw,9rem)}.contact-copy>p:not(.eyebrow){max-width:520px}.contact-primary{display:inline-flex;justify-content:space-between;gap:40px;margin-top:15px;padding:17px 22px;background:#fff;color:#11111a;font-weight:700;font-size:.9rem;text-decoration:none}.contact-primary:hover{background:#c4baff;transform:translateY(-4px)}
.contact-form{position:absolute;top:21%;right:4.5vw;width:31%;z-index:2;display:grid;gap:9px;padding:25px;border:1px solid #b2a7db;background:#171725e0;box-shadow:20px 30px 80px #0008}.contact-form h3{margin:0 0 3px;font-size:1.7rem}.contact-form label{display:grid;gap:4px;color:#e5e2ef;font-size:.68rem}.contact-form input,.contact-form select{width:100%;min-height:34px;border:1px solid #727083;border-radius:0;padding:6px;background:#0b0c13;color:#fff;font:inherit}.contact-form button{border:0;padding:11px;background:#b9afff;color:#101019;font-weight:700}.contact-form small,.contact-form #form-status{font-size:.63rem;color:#c8c5d7}
.immersive-footer{position:absolute;bottom:0;left:4.5vw;right:4.5vw;min-height:66px;display:flex;align-items:center;gap:25px;border-top:1px solid #777185;color:#b2afc2;font-size:.64rem}.immersive-footer img{width:135px;height:55px;object-fit:contain}.immersive-footer a{color:#d8d5e3;text-decoration:none}.immersive-footer span:last-child{margin-left:auto}

@media(max-width:1100px){
  .header-nav{display:none}.act-index{top:91px}.act h2{font-size:clamp(3rem,5.5vw,6rem)}
  .act-audience .act-copy{width:48%}.audience-orbit{left:52%;width:46vw;height:46vw}
  .services-head{width:30%}.service-theatre{left:34%}.film-heading{width:31%}.film-theatre{left:35%}.social-heading{width:30%}.social-gallery{left:35%}
  .people-copy{width:48%}.people-photo{right:5%;width:35%}.decision-head{width:30%}.package-rail,.package-controls{left:35%}
}
@media(max-width:720px){
  .act{height:145svh}.act-stage{height:100svh;overflow-y:auto;overflow-x:hidden;padding:0 20px 65px;scrollbar-width:thin}.act-stage:after{inset:7px;pointer-events:none}.act-index{top:81px;right:20px;font-size:.47rem}
  .act h2{font-size:clamp(2.6rem,10vw,4.8rem)}.act .eyebrow{font-size:.51rem}.act-copy>p:not(.eyebrow),.services-head>p:not(.eyebrow),.traffic-body>div>p,.film-heading>p:not(.eyebrow),.social-heading>p:not(.eyebrow),.people-copy>p:not(.eyebrow),.decision-head>p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:.82rem;line-height:1.4}
  .act-audience .act-copy{left:20px;top:118px;width:calc(100% - 40px);transform:none}.act-audience .act-copy h2{font-size:clamp(2.7rem,11vw,4.8rem)}.audience-orbit{left:50%;top:620px;width:min(82vw,400px);height:min(82vw,400px);max-width:none;max-height:none;transform:translate(-50%,-50%)}.segment-options button{width:clamp(75px,19vw,100px);height:clamp(75px,19vw,100px);font-size:.55rem}.orbit-center strong{font-size:1.5rem}.orbit-center{font-size:.6rem}.act-floor{left:20px;bottom:12px;font-size:.45rem}
  .services-head{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.services-head h2{font-size:clamp(2.7rem,11vw,4.5rem)}.services-head>p:not(.eyebrow){max-width:340px}.service-theatre{position:relative;inset:auto;width:100%;height:min(52svh,480px);min-height:350px;margin-top:16px}.service-focus{inset:0 0 74px;grid-template-columns:45% 55%;transform:translateZ(calc((var(--act-p, .5) - .5)*75px))}.service-detail{padding:12px}.service-detail h3{font-size:clamp(1.3rem,5vw,2.3rem);margin:9px 0}.service-detail p{font-size:.66rem;line-height:1.35}.service-detail .act-link{font-size:.63rem;gap:6px}.service-selector{display:flex;overflow-x:auto}.service-selector button{flex:0 0 95px;font-size:.55rem;padding:7px 3px}.site-illustration span{font-size:.95rem}
  .traffic-body{display:block;height:auto;padding-top:120px}.traffic-body h2{font-size:clamp(3.2rem,12vw,5rem)}.traffic-numbers{margin-top:35px;gap:20px}.traffic-number strong{font-size:clamp(2.8rem,11vw,5rem)}.traffic-type{top:55%;left:-15%;font-size:40vw}.traffic-numbers>p{font-size:.64rem}
  .film-heading{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.film-heading h2{font-size:clamp(2.7rem,10.6vw,4.5rem);margin-bottom:10px}.film-heading>p:not(.eyebrow){max-width:340px;margin:8px 0}.film-theatre{position:relative;inset:auto;display:block;margin-top:16px}.film-main{height:300px;transform:none}.film-screen{height:250px;width:min(230px,62vw);margin:auto}.film-meta{justify-content:center}.film-meta h3{flex:none;font-size:1.2rem}.film-control{margin-top:10px}.film-tabs{padding-bottom:6px}.film-strip button{flex-basis:76px;height:112px}.film-control>p{display:none}.drone-flag{position:relative;left:auto;bottom:auto;margin-top:10px;font-size:.63rem}
  .social-heading{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.social-heading h2{font-size:clamp(2.8rem,11vw,4.8rem);margin-bottom:8px}.social-heading>p:not(.eyebrow){max-width:340px;margin:8px 0}.social-gallery{position:relative;inset:auto;display:block;margin-top:13px}.social-spotlight{height:min(42svh,350px);transform:none}.social-spotlight button{height:90%}.social-collection{margin-top:10px}.social-rail button{flex-basis:78px;height:112px}.social-collection>small{margin-top:5px;font-size:.6rem}
  .act-people .act-stage{display:flex;flex-direction:column;gap:16px}.people-copy{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.people-copy h2{font-size:clamp(3.5rem,13vw,5.5rem);margin-bottom:12px}.people-promises{margin-top:15px}.people-promises span{font-size:.56rem}.people-photo{position:relative;top:auto;right:auto;width:min(66vw,310px);height:230px;align-self:center;transform:none}.people-bottom{position:relative;bottom:auto;left:auto;right:auto;display:block}.process-line{flex-wrap:wrap;gap:10px}.process-line li{flex:0 0 calc(50% - 6px);font-size:.6rem}.people-bottom button{margin-top:14px}
  .act-decision .act-stage{display:flex;flex-direction:column}.decision-head{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.decision-head h2{font-size:clamp(2.8rem,11vw,4.6rem);margin-bottom:8px}.decision-head>p:not(.eyebrow){margin:8px 0}.package-rail{position:relative;left:auto;right:auto;top:auto;width:100%;height:310px;min-height:310px;margin-top:15px}.package{flex-basis:235px;padding:16px}.package h3{font-size:1.7rem}.package-controls{position:relative;top:auto;left:auto;right:auto;margin-top:5px}.decision-faq{position:relative;bottom:auto;left:auto;right:auto;display:block;margin-top:15px;padding-bottom:45px}.decision-faq>p{margin-bottom:8px}.decision-faq details{border-top:1px solid #565267;padding:7px 0}
  .act-contact{height:145svh}.act-contact .act-stage{display:flex;flex-direction:column}.contact-halo{width:140vw;height:140vw;left:-20%;top:20%}.contact-copy{position:relative;top:auto;left:auto;width:100%;padding-top:116px}.contact-copy h2{font-size:clamp(3.5rem,13vw,5.5rem);margin-bottom:13px}.contact-copy>p:not(.eyebrow){margin:10px 0}.contact-primary{padding:13px;font-size:.74rem}.contact-form{position:relative;top:auto;right:auto;width:100%;margin:20px 0 75px;padding:16px}.immersive-footer{left:20px;right:20px;min-height:60px;flex-wrap:wrap;gap:4px 13px}.immersive-footer img{width:105px;height:38px}.immersive-footer span:last-child{margin-left:0}
}
@media(max-width:420px){.act-audience .act-copy h2{font-size:2.7rem}.audience-orbit{top:620px}.segment-options button{width:72px;height:72px;font-size:.49rem}.film-screen{height:215px;width:195px}.film-main{height:265px}.film-strip button{height:96px}.social-spotlight{height:31svh}.social-rail button{height:95px}.package-rail{height:300px;min-height:300px}}
@media(max-height:700px) and (min-width:721px){.act h2{font-size:clamp(2.8rem,5.2vw,5.5rem)}.act-index{top:86px}.services-head,.film-heading,.social-heading,.people-copy{top:18%}.decision-head{top:16%}.film-theatre,.social-gallery{top:15%;bottom:13%}.film-strip button{height:130px}.people-photo{height:58%}.package-rail{top:15%;height:45%}.decision-faq{bottom:5%}}
@media(prefers-reduced-motion:reduce){.act .service-focus,.act .film-main,.act .social-spotlight,.act .people-photo,.act .package,.act .traffic-type{transform:none!important}.audience-orbit{transform:translateY(-50%)!important}.film-backdrop,.contact-halo{transform:none!important}}

/* Unidades pré-calculadas em JS evitam diferenças de suporte ao calc() em 3D. */
.act{margin-top:-115svh;z-index:2}.act-audience{margin-top:-100svh}
.act-stage{opacity:var(--act-opacity,1)}
.audience-orbit{transform:translateY(-50%) rotateX(8deg) rotateY(var(--orbit-rot,0deg))}
.service-focus{transform:translateZ(var(--service-z,0px)) rotateY(var(--service-rot,0deg))}
.traffic-type{transform:translate3d(var(--traffic-shift,0vw),-50%,var(--traffic-z,0px))}
.traffic-numbers{transform:translateY(var(--number-shift,0px))}
.film-backdrop{transform:rotateX(17deg) translateZ(var(--film-z,0px))}
.film-main{transform:rotateY(var(--film-rot,0deg)) translateZ(var(--film-front,0px))}
.social-spotlight{transform:rotateY(var(--social-rot,0deg)) translateZ(var(--social-z,0px))}
.people-photo{transform:rotateY(var(--people-rot,0deg)) translateZ(var(--people-z,0px))}
.package{transform:rotateY(var(--package-rot,0deg))}
.contact-halo{transform:translateZ(var(--contact-z,0px))}
@media(max-width:720px){.act{margin-top:-105svh}.act-audience{margin-top:-100svh}.audience-orbit{transform:translate(-50%,-50%) rotateY(var(--orbit-rot,0deg))}.film-main,.social-spotlight,.people-photo,.package{transform:none}.service-focus{transform:translateZ(var(--service-z,0px))}}
@media(prefers-reduced-motion:reduce){.audience-orbit{transform:translateY(-50%)!important}.film-backdrop,.contact-halo{transform:none!important}}

/* Cada capítulo entra por uma direção espacial própria antes de se estabilizar. */
.act-audience .act-copy{transform:translate3d(var(--copy-arrive,0px),-45%,0)}
.audience-orbit{transform:translate3d(var(--object-arrive,0px),-50%,var(--object-depth,0px)) rotateX(8deg) rotateY(var(--orbit-rot,0deg))}
.act-services .services-head{transform:translateX(var(--copy-arrive,0px))}
.service-focus{transform:translate3d(var(--object-arrive,0px),0,calc(var(--object-depth,0px) + var(--service-z,0px))) rotateY(calc(var(--object-tilt,0deg) + var(--service-rot,0deg)))}
.service-selector{transform:translateY(var(--selector-arrive,0px))}
.traffic-body>div:first-child{transform:translateX(var(--copy-arrive,0px))}
.traffic-number:first-child{transform:translate3d(var(--number-one-x,0px),0,var(--number-depth,0px))}
.traffic-number:nth-child(2){transform:translate3d(var(--number-two-x,0px),0,var(--number-depth,0px))}
.act-film .film-heading{transform:translateX(var(--copy-arrive,0px))}
.film-main{transform:translate3d(var(--object-arrive,0px),0,calc(var(--object-depth,0px) + var(--film-front,0px))) rotateY(calc(var(--object-tilt,0deg) + var(--film-rot,0deg)))}
.film-control{transform:translateX(var(--rail-arrive,0px))}
.act-social .social-heading{transform:translateX(var(--copy-arrive,0px))}
.social-spotlight{transform:translate3d(var(--object-arrive,0px),0,calc(var(--object-depth,0px) + var(--social-z,0px))) rotateY(calc(var(--object-tilt,0deg) + var(--social-rot,0deg)))}
.social-collection{transform:translateX(var(--rail-arrive,0px))}
.people-copy{transform:translateX(var(--copy-arrive,0px))}
.people-photo{transform:translate3d(var(--people-arrive,0px),0,calc(var(--object-depth,0px) + var(--people-z,0px))) rotateY(calc(var(--object-tilt,0deg) + var(--people-rot,0deg)))}
.process-line{transform:translateX(var(--rail-arrive,0px))}
.decision-head{transform:translateX(var(--copy-arrive,0px))}
.package-rail{transform:translate3d(var(--rail-arrive,0px),0,var(--object-depth,0px))}
.contact-copy{transform:translateX(var(--copy-arrive,0px))}
.contact-form{transform:translate3d(var(--contact-arrive,0px),0,var(--object-depth,0px))}
@media(max-width:720px){
  .act-audience .act-copy{transform:translateX(var(--copy-arrive,0px))}
  .audience-orbit{transform:translate3d(calc(-50% + var(--object-arrive,0px)),-50%,var(--object-depth,0px)) rotateY(var(--orbit-rot,0deg))}
  .service-selector{transform:none}.film-control,.social-collection,.process-line,.package-rail{transform:none}
  .film-main,.social-spotlight,.people-photo{transform:translate3d(0,0,var(--object-depth,0px))}
  .contact-form{transform:translateX(var(--contact-arrive,0px))}
}
@media(prefers-reduced-motion:reduce){.act-audience .act-copy,.audience-orbit,.act-services .services-head,.service-focus,.service-selector,.traffic-body>div:first-child,.traffic-number,.act-film .film-heading,.film-main,.film-control,.act-social .social-heading,.social-spotlight,.social-collection,.people-copy,.people-photo,.process-line,.decision-head,.package-rail,.contact-copy,.contact-form{transform:none!important}}
