/* Final V2 editorial layer; original checkpoints and camera rigs retained. */
.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:#f4efe6;padding:14px 20px;color:#2b2724}.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #914d2c;outline-offset:5px}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}html{scroll-padding-top:90px;overflow-x:clip}body{overflow-x:clip}
/* O `clip` estava so no `body` e isso NAO chega: medido, a pagina deslizava
   3000px na horizontal (`window.scrollTo(3000,y)` e `scrollX` ficava em 3000)
   porque quem rola e o elemento raiz, e `html` estava em `visible`. O que
   transborda e a pista das quatro estacoes da Cena 04 (`.path-track`, 5340px)
   antes de o `path.js` a fixar. `clip` e nao `hidden`, pela mesma razao que
   ja esta escrita em styles.css: `hidden` faz do elemento um contentor de
   scroll e parte o `pin` do ScrollTrigger. */.site-header{position:fixed;inset:0 0 auto;background:rgba(244,239,230,.9);z-index:50}.site-header.is-over-hero{background:rgba(244,239,230,.58);border-color:transparent;backdrop-filter:blur(12px)}
.lang-switch{display:flex;gap:9px;font:500 10px var(--ff-mono)}.lang-switch a{color:var(--bone-dim);text-decoration:none}.lang-switch [aria-current]{color:var(--bone);text-decoration:underline;text-underline-offset:5px}.menu-toggle{display:none}
.rs-poster{position:absolute;inset:0;z-index:0;display:block}.rs-poster img{width:100%;height:100%;object-fit:cover}.rs-canvas{opacity:0;transition:opacity .55s}.rs--loaded .rs-canvas{opacity:1}.rs--sequence .rs-canvas{display:none}.rs-stage:after{content:'';position:absolute;inset:auto 0 0;height:24%;background:linear-gradient(transparent,#f4efe644);pointer-events:none;z-index:1}
.rs-chapter{gap:15px;bottom:7vh!important}.rs-chapter::before,.rs-chapter[data-ch="5"]::before,.rs-chapter[data-ch="4"]::before{inset:-35px -60px;background:radial-gradient(ellipse at 35% 60%,#f4efe6 0%,#f4efe6ec 32%,#f4efe699 58%,transparent 76%)}.rs-chapter .display{font-size:clamp(26px,2.55vw,40px);line-height:1.1;text-shadow:none}.rs-chapter .rs-complement{font:500 13px/1.65 var(--ff-ui);color:#494039;max-width:38ch}.rs-chapter .eyebrow{color:#814b31;font-size:10px}.rs-chapter .rs-indicators{line-height:1.6;color:#554b42}.rs-chapter[data-ch="2"]{top:25%;bottom:auto!important}.rs-chapter[data-ch="3"]{top:16%;bottom:auto!important}.rs-chapter[data-ch="5"]{width:min(460px,38vw)}.rs-chapter[data-ch="5"] .btn-row{flex-wrap:wrap;gap:10px}.rs-chapter[data-ch="5"] .btn{padding:13px 19px;font-size:12px}.rs-ui{border:0;background:#f7f3eb;box-shadow:0 16px 50px #27201620;width:32vw;max-width:460px;top:17vh;right:4vw;padding:0;overflow:visible}.rs-ui::before{background:#9c907f}.property-label{display:block;font:10px var(--ff-mono);letter-spacing:.12em;padding:14px 18px}.property-photo{width:100%;height:19vh;min-height:125px;object-fit:cover}.property-info{padding:18px}.property-info h3{font:600 clamp(19px,2vw,26px) var(--ff-display);margin:0 0 10px}.property-info p{font:12px/1.6 var(--ff-ui);color:#5b5148;margin:10px 0}.property-tabs{display:flex;gap:16px;border-block:1px solid #d9cfbf;margin:12px 0;padding:10px 0}.property-tabs button{border:0;background:none;padding:3px 0;color:#62564a;font:12px var(--ff-ui);cursor:pointer}.property-tabs button[aria-pressed="true"]{color:#83482d;text-decoration:underline;text-underline-offset:5px}.property-info a{display:block;border-top:1px solid #d9cfbf;padding-top:12px;color:#79432b;font-weight:700;font-size:13px}.property-availability{font-size:10px!important}
#estudio{background:var(--ink);padding-top:120px}.studio-grid{display:block}.studio-item{display:grid;grid-template-columns:32px 1fr;border-top:1px solid var(--line);padding:22px 0}.studio-item p{grid-column:2}.studio-item h3{margin:0 0 8px}.medallion{filter:drop-shadow(14px 18px 7px #665a4220);transform:perspective(700px) rotateY(-14deg) rotateX(10deg)}
.work-grid{gap:48px 28px}.work-card--real{padding:0 0 24px;background:none;border:0;border-bottom:1px solid #cfc5b7;border-radius:0;box-shadow:none;transition:transform .25s}.work-card--real .work-cover{display:block;position:relative;overflow:hidden;background:#e5dbc9;aspect-ratio:1.15}.work-card--real img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}.work-card--real .work-cover>span{position:absolute;bottom:14px;left:14px;background:#f4efe6;padding:8px 12px;font:10px var(--ff-mono)}.work-card-top{display:flex;justify-content:space-between;padding-top:18px;font:10px var(--ff-mono);color:#6a6056}.work-card--real h3{font:600 29px/1.1 var(--ff-display);margin:14px 0}.work-card--real p{font-size:14px;line-height:1.7;max-width:46ch}.work-card--real ul{display:flex;gap:12px;list-style:none;padding:0;font:10px var(--ff-mono);color:#736759}.work-link{display:inline-block;margin-top:18px;color:#7c462d;font-size:12px;font-weight:700}.villa-recap{width:100%;height:auto;display:block;aspect-ratio:1.4;object-fit:cover}.re-points{margin-top:60px}.collection{border-bottom:1px solid var(--line)}
.project-form{max-width:720px;margin:60px auto 0;text-align:left;padding:36px;border:1px solid #cfc4b3;background:#f7f2e9}.project-form h3{font:600 28px var(--ff-display);margin:15px 0}.project-form label{display:block;font-size:13px;margin:16px 0}.project-form label>span{display:block;margin-bottom:8px}.project-form input:not([type=radio]):not([type=checkbox]),.project-form select,.project-form textarea{width:100%;padding:13px 14px;font:15px var(--ff-ui);background:#fffdf7;border:1px solid #b8ad9b;border-radius:0;color:#2b2724}.project-form fieldset{border:0;padding:0;margin:22px 0}.project-form legend{font-size:13px;margin-bottom:10px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice-grid label{display:flex;gap:10px;align-items:flex-start;border:1px solid #c9bead;padding:14px;margin:0;cursor:pointer}.choice-grid label:has(input:checked){border-color:#8b4c2e;background:#ede1d1}.choice-grid input{accent-color:#945331}.choice-grid b{font-size:13px}.choice-grid small{display:block;font-size:11px;margin-top:6px;color:#655b4e}.choice-grid i{display:none}.contact-choice{grid-template-columns:repeat(3,1fr)}.choice-group .project-choice-wide{grid-column:1/-1}.project-form .consent-check{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.6}.consent-check input{margin-top:5px}.honeypot{position:absolute!important;left:-9999px;width:1px!important;height:1px;opacity:0}.wizard-actions{display:flex;justify-content:space-between;gap:15px;margin-top:24px}.wizard-next,.submit-project{background:#915131;color:#fffaf0;border:0;padding:14px 22px;cursor:pointer;font:600 13px var(--ff-ui)}.wizard-back{background:transparent;border:1px solid #b8ad9b;padding:13px 18px;cursor:pointer;color:#51483e}.lead-progress{display:flex;gap:8px}.lead-progress span{height:2px;background:#d5cbbb;flex:1}.lead-progress .is-active{background:#915131}.step-copy,.privacy-note{font-size:12px;line-height:1.7;color:#63584c}.form-kicker{font:10px var(--ff-mono);letter-spacing:.13em}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-status{padding:12px;font-size:13px}.form-status:empty{display:none}.form-status[data-state=error]{color:#8b2920;background:#f8e9e1}.privacy-note a{color:#79432b}.contact-lines{flex-wrap:wrap}.site-footer nav{flex-wrap:wrap}
html:not(.js) .rs,.rs--static{height:auto!important}html:not(.js) .rs-stage,.rs--static .rs-stage{height:auto;overflow:visible}html:not(.js) .rs-poster,.rs--static .rs-poster{position:relative;height:60svh}html:not(.js) .rs-overlays,.rs--static .rs-overlays{position:relative}html:not(.js) .rs-chapter,.rs--static .rs-chapter{position:relative!important;inset:auto!important;width:auto!important;opacity:1!important;filter:none!important;transform:none!important;margin:0;padding:32px var(--gutter);pointer-events:auto!important}html:not(.js) .rs-ui,.rs--static .rs-ui,html:not(.js) .rs-canvas,.rs--static .rs-canvas{display:none}html:not(.js) .rs-chapter::before,.rs--static .rs-chapter::before{display:none}html:not(.js) .wizard-next,html:not(.js) .wizard-back,html:not(.js) .cf-turnstile{display:none}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.work-card--real:hover img{transform:scale(1.025)}.work-card--real:hover{transform:perspective(1200px) rotateX(1deg) rotateY(-1deg)}}
@media(max-width:820px){.site-header .wrap{gap:14px}.site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f4efe6;padding:28px;flex-direction:column;align-items:flex-start;border-bottom:1px solid #c5b9a7}.site-nav.is-open{display:flex}.menu-toggle{display:block;background:transparent;border:1px solid #a99a87;padding:8px 10px;font:11px var(--ff-ui);color:#3e352e}.lang-switch{margin-left:auto;gap:7px}.brand{font-size:11px}.brand .mark{display:none}.rs-chapter .display{font-size:27px}.rs-chapter{left:22px!important;right:22px!important;width:auto!important;bottom:7vh!important}.rs-chapter[data-ch="2"],.rs-chapter[data-ch="3"],.rs-chapter[data-ch="4"]{top:14vh!important;bottom:auto!important;text-align:left;align-items:flex-start}.rs-chapter[data-ch="5"]{bottom:6vh!important}.rs-chapter .rs-complement{font-size:12px}.rs-chapter::before,.rs-chapter[data-ch="5"]::before{inset:-24px -40px}.rs-ui{display:none}.work-grid{grid-template-columns:1fr;gap:40px}.work-card--real .work-cover{aspect-ratio:1.1}.project-form{padding:22px;margin-top:36px}.choice-grid,.contact-choice{grid-template-columns:1fr}.form-pair{grid-template-columns:1fr;gap:0}.section{padding-block:80px}.rs-chapter[data-ch="5"] .btn-row .btn{flex:1 1 auto;width:100%}.rs-chapter[data-ch="5"] .display{max-width:24ch}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.rs{height:auto!important}.rs-stage{height:auto}.rs-poster{position:relative;height:55svh}.rs-canvas{display:none}.rs-overlays{position:relative}.rs-chapter{position:relative!important;inset:auto!important;opacity:1!important;filter:none!important;transform:none!important;padding:30px var(--gutter);width:auto!important}.rs-chapter::before,.rs-ui{display:none}.rs-chapter .btn-row{pointer-events:auto}}

/* === hero-graph.css — hero "O Sistema Ganha Forma" === */
.hero-graph{position:relative;height:280vh;background:var(--ink)}
@media(max-width:820px){.hero-graph{height:230vh}}
.hero-graph-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.hero-graph-canvas{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0}
.hero-graph-inner{position:relative;z-index:1;display:flex;flex-direction:column;gap:clamp(14px,2vw,22px);width:100%;max-width:calc(var(--maxw) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter);box-sizing:border-box;pointer-events:none}
.hero-graph-inner > *{max-width:min(660px,100%)}
.hero-graph-inner a,.hero-graph-inner button{pointer-events:auto}
.hero-graph #opening-title{margin:0;font-size:clamp(32px,5.2vw,64px);line-height:1.03;letter-spacing:-.022em}
.hero-graph-lede{margin:0;font-size:clamp(16px,1.5vw,20px);line-height:1.5;color:var(--bone-dim)}
.hero-graph-points{display:flex;flex-wrap:wrap;gap:8px 10px;margin:4px 0 0;padding:0;list-style:none}
.hero-graph-points li{font-family:var(--ff-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);border:1px solid var(--line-strong);border-radius:999px;padding:7px 13px;background:rgba(244,239,230,.62)}
.hero-graph .btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(8px,1.4vw,16px)}
.hero-beat{position:absolute;left:var(--gutter);bottom:clamp(22px,5vh,44px);z-index:1;margin:0;font-family:var(--ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-dim)}
@media(max-width:820px){
  .hero-graph-stage{justify-content:flex-end;padding-bottom:clamp(64px,14vh,110px)}
  .hero-graph-inner{padding-block:0}
  .hero-graph .btn-row .btn{flex:1 1 auto;width:100%}
  .hero-beat{bottom:clamp(14px,3vh,24px)}
}
@media(prefers-reduced-motion:reduce){.hero-graph{height:auto}.hero-graph-stage{position:relative;height:auto;min-height:88svh;padding-block:clamp(110px,16vh,170px) clamp(56px,9vh,90px)}}

/* === opening.css — abertura do estúdio, acima do scrollytelling === */
.opening{position:relative;isolation:isolate;min-height:min(92svh,860px);display:flex;flex-direction:column;justify-content:flex-end;padding-block:clamp(120px,18vh,200px) clamp(56px,9vh,96px);overflow:hidden}
.opening-plate{position:absolute;inset:0;z-index:-2;display:block}
.opening-plate img{width:100%;height:100%;object-fit:cover;object-position:72% 60%}
.opening::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,var(--ink) 0%,rgba(244,239,230,.94) 34%,rgba(244,239,230,.62) 58%,rgba(244,239,230,.18) 100%)}
.opening-inner{display:flex;flex-direction:column;gap:clamp(14px,2vw,22px);width:min(var(--maxw),100%);margin-inline:auto;padding-inline:var(--gutter);box-sizing:content-box}
.opening-inner > *{max-width:min(720px,100%)}
.opening #opening-title{margin:0;font-size:clamp(34px,5.6vw,68px);line-height:1.02;letter-spacing:-.022em}
.opening-lede{margin:0;font-size:clamp(16px,1.5vw,20px);line-height:1.5;color:var(--bone-dim)}
.opening-points{display:flex;flex-wrap:wrap;gap:8px 10px;margin:4px 0 0;padding:0;list-style:none}
.opening-points li{font-family:var(--ff-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--bone-dim);border:1px solid var(--line-strong);border-radius:999px;padding:7px 13px}
.opening .btn-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:clamp(8px,1.4vw,16px)}
.opening-cue{position:absolute;right:var(--gutter);bottom:clamp(20px,4vh,38px);font-family:var(--ff-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone);text-decoration:none;display:flex;align-items:center;gap:9px;background:rgba(244,239,230,.86);border:1px solid var(--line);border-radius:999px;padding:9px 15px;backdrop-filter:blur(3px)}
.opening-cue::after{content:"";width:26px;height:1px;background:var(--bone-faint);transition:width .3s ease}
.opening-cue:hover::after,.opening-cue:focus-visible::after{width:52px}
@media(max-width:820px){
  .opening{min-height:auto;padding-block:clamp(104px,16vh,150px) clamp(40px,7vh,64px)}
  .opening-plate img{object-position:66% 58%}
  .opening::after{background:linear-gradient(170deg,var(--ink) 0%,rgba(244,239,230,.93) 46%,rgba(244,239,230,.74) 100%)}
  .opening-cue{position:static;margin:26px var(--gutter) 0}
  .opening .btn-row .btn{flex:1 1 auto;width:100%}
}
/* Movimento reduzido · Cena 03: o painel do Beat 02 fica visível, estático e clicável, logo a seguir a "02 · Estar". */
@media(prefers-reduced-motion:reduce){html.js .rs-overlays{display:flex;flex-direction:column}html.js .rs-overlays>.rs-chapter[data-ch="1"],html.js .rs-overlays>.rs-chapter[data-ch="2"],html.js .rs-overlays>.rs-chapter[data-ch="3"]{order:1}html.js .rs-overlays>.rs-ui{order:2;display:block!important;position:relative!important;inset:auto!important;top:auto!important;right:auto!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;width:auto!important;max-width:520px;margin:0 var(--gutter) 30px}html.js .rs-overlays>.rs-chapter[data-ch="4"],html.js .rs-overlays>.rs-chapter[data-ch="5"],html.js .rs-overlays>.rs-chapter[data-ch="6"]{order:3}html.js .rs-ui .property-photo{width:100%;height:auto}}
