/* Primavera · identidade refinada a partir da referência Santa Helena.
   Jost leve, superfícies de linho, bronze e oliva. */
:root {
  --paper:#f7f3eb; --paper-2:#eee8dc; --paper-3:#ded5c5;
  --ink:#343a32; --ink-2:#505347; --mute:#716d60;
  --green:#59644f; --green-2:#45513f; --green-lit:#69745d;
  --bronze:#82704e; --sand:#d6c5a4; --night:#242d27;
  --olive:#c7b998; --tour-ink:#f7f3eb; --film:#202720;
  --line:rgba(86,77,58,.2); --line-paper:rgba(247,243,235,.22);
}
body{font-weight:400;line-height:1.65;font-synthesis:none}
body::after{opacity:.018}
::selection{background:#d9ccb4;color:#30382d}
h1,h2,h3{font-family:var(--disp);font-weight:300}
h2.t{font-weight:300;letter-spacing:-.018em;line-height:1.18;font-size:clamp(34px,4.5vw,68px)}
h2.t em{font-weight:400;color:var(--bronze)}
.cap{align-items:start;padding-top:25px}
.cap .idx{line-height:1.8;letter-spacing:.18em}
.cap .idx b{font-weight:400;color:var(--bronze);margin-bottom:10px}
.lede{font-size:clamp(18px,1.55vw,23px);font-weight:300;line-height:1.75;letter-spacing:.005em;max-width:40ch}
.lista li{line-height:1.7;font-size:16px;padding:20px 0}
.lista li::before{color:var(--bronze)}
.wordmark{font-weight:400;letter-spacing:.19em;font-size:24px}
.wordmark span{font-weight:400;letter-spacing:.24em;font-size:9px;margin-top:9px}
.cover h1{font-weight:300;line-height:1.08;letter-spacing:-.025em;font-size:clamp(56px,6.5vw,100px)}
.cover h1 em,.visit-intro h2 em,.model-heading h2 em{font-family:var(--disp);font-style:normal;font-size:1em;font-weight:400;letter-spacing:inherit}
.cover h1 em{color:#e2d3b8}
.cover-shade{background:linear-gradient(180deg,rgba(30,39,31,.44),rgba(30,39,31,.08) 34%,rgba(25,33,27,.78) 96%)}
.cover-bottom p{font-size:17px;font-weight:300;line-height:1.7;color:#f3eee2}
.eyebrow{font-weight:400;letter-spacing:.19em}
.cover-links a,.cover-meta{font-size:12px;letter-spacing:.07em}
.cover-last{color:#e2d3b8}
.cover-links .nav-contact{border-color:#e2d3b880;background:#26312830}
.round-link b{border-color:#e2d3b880}
.bar{background:rgba(247,243,235,.95)}
.bar .p{letter-spacing:.06em;font-size:12px}
.bar .n{font-weight:500;letter-spacing:.16em}
.bar a.cta,.btn{background:var(--bronze);color:#fffaf2;border-radius:0}
.bar a.cta:hover,.btn:hover{background:#6f5f43}
.bar a.cta{max-width:270px;white-space:normal;line-height:1.4;text-align:center}
.location-description{margin:0 0 35px;max-width:54ch}
.visit-intro h2,.model-heading h2{font-weight:300;line-height:1.18;letter-spacing:-.02em;font-size:clamp(36px,3.8vw,58px)}
.visit-intro h2 em,.model-heading h2 em{color:var(--bronze)}
.visit-intro p{font-size:16px;line-height:1.8;color:var(--ink-2)}
.visit-intro .quiet{font-size:13px}
.text-link{font-size:12px;letter-spacing:.06em;color:var(--bronze)}
.chapter-stack,.chapter-sticky{background:var(--night);color:var(--paper)}
.chapter-nav{background:rgba(36,45,39,.96);border-color:#d6c5a42b}
.chapter-nav a{font-size:12px;letter-spacing:.04em;color:#e1ded2}
.chapter-nav a[aria-current=true],.chapter-nav a[aria-current=true] span{color:#e4cfaa}
.chapter-nav a span{color:#c1bdac}
.chapter-intro h2{font-weight:300;font-size:clamp(40px,4.6vw,68px);line-height:1.16;letter-spacing:-.015em}
.chapter-intro .eyebrow,.chapter-copy .eyebrow,.chapter-detail{color:#dac9a8}
.chapter-intro p{color:#deded1;font-size:16px;line-height:1.85}
.chapter-facts{color:#e5dccb;font-size:12px;letter-spacing:.04em}
.chapter-facts span{border-color:#d6c5a457}
.chapter-copy h3{font-weight:300;font-size:clamp(38px,4.5vw,66px);line-height:1.14;letter-spacing:-.018em}
.chapter-copy p{font-size:16px;line-height:1.75;font-weight:400;color:#eeeade}
.chapter-detail{font-size:12px;letter-spacing:.06em;border-color:#d6c5a469}
.chapter-scene-top a{font-size:11px;color:#f1e8d7}
.chapter-shade{background:linear-gradient(180deg,#202b2580,transparent 35%,#202b2518 48%,#202b25ed 96%)}
.chapter-play{background:#242d2799;border-color:#d6c5a47a;color:#f3ebdb;font-size:12px;letter-spacing:.04em}
.chapter-play:hover{background:#59644f}
.beat-nav button{color:#dac9a8;border-color:#d6c5a452}
.beat-nav button[aria-pressed=true]{border-color:#dac9a8}
.chapter-progress i{background:#c7b998}
.chapter-help{color:#c4bea9}
.hero-motion{background:#242d2799;color:var(--paper);font-size:11px}
.film-note,.model-note{font-size:12px;line-height:1.8;color:var(--mute)}
.model-section{background:#eee9df}
.model-main{background:radial-gradient(ellipse at 55% 40%,#f8f5ee,#e2dbce)}
.model-detail{background:#f7f3eb}
.segmented{background:#f7f3ebc7}
.segmented button,.model-controls button{font-size:12px;color:var(--green-2)}
.segmented button[aria-pressed=true],.model-controls button[aria-pressed=true],#modelRooms button[aria-pressed=true]{background:var(--green);color:var(--paper);border-color:var(--green)}
.room-copy h3{font-weight:400;line-height:1.2;letter-spacing:-.01em}
.room-copy p{font-size:13px;line-height:1.8;color:var(--ink-2)}
.room-copy button{font-size:12px;color:var(--bronze);border-color:#82704e66}
.ficha{border-top-color:var(--line)}
.ficha>div:first-child{background:var(--green);border-color:var(--green)}
.ficha .n{font-weight:300;letter-spacing:-.025em;line-height:1.05;font-size:clamp(40px,4.7vw,66px)}
.ficha>div:first-child .n{font-size:clamp(56px,6.5vw,88px)}
.ficha .l{font-size:12px;letter-spacing:.1em}
.amb header h3{font-weight:400;letter-spacing:0}
.abas button{font-size:11px;letter-spacing:.09em;border-radius:2px;padding:11px 15px}
.abas button.on{background:var(--green);border-color:var(--green);color:var(--paper)}
.grid figcaption{background:#242d27c9;letter-spacing:.12em;font-size:11px}
.expansion-section{background:var(--paper-2);scroll-margin-top:70px}
.expansion-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(30px,5vw,76px);align-items:start}
.expansion-photo{margin:0}
.expansion-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.expansion-photo figcaption{margin-top:12px;font-size:12px;color:var(--mute);letter-spacing:.04em}
.expansion-copy>.eyebrow{display:block;color:var(--bronze);font-size:10px;margin-bottom:18px}
.expansion-copy .lede{margin:0 0 26px;font-size:clamp(18px,1.4vw,22px)}
.expansion-spaces{list-style:none;margin:0;padding:0}
.expansion-spaces li{display:flex;gap:22px;border-top:1px solid var(--line);padding:17px 0}
.expansion-count{font-size:27px;line-height:1.4;font-weight:300;color:var(--bronze);min-width:34px}
.expansion-spaces h3{font-size:21px;font-weight:400;line-height:1.4;margin:0 0 4px}
.expansion-spaces p{font-size:14px;color:var(--ink-2);margin:0;line-height:1.6}
.expansion-note{font-size:12px;line-height:1.7;color:var(--mute);margin:16px 0}
.expansion-contact{display:inline-block;padding:12px 0;border-bottom:1px solid var(--bronze);text-decoration:none}
@media(max-width:860px){.expansion-layout{grid-template-columns:1fr;gap:32px}.expansion-copy .lede{max-width:52ch}}
.verde{background:#59644f}
.verde h2.t em,.tinta h2.t em{color:#e3d3b6}
.tinta{background:var(--night)}
.preco .v{font-weight:300;letter-spacing:-.03em;line-height:1.1;font-size:clamp(46px,8vw,112px)}
.preco .pm{font-size:12px;letter-spacing:.1em}
.mercado .who{font-weight:400;letter-spacing:0}
.mercado .val,.mercado .tot,.fonte,.destinos span{letter-spacing:.03em}
.mercado .row.eu .barra i{background:var(--green)}
.btn{font-size:12px;letter-spacing:.15em}
.dock{background:var(--green);box-shadow:0 5px 24px #242d2726}
button:focus-visible,a:focus-visible,canvas:focus-visible{outline-color:#a58b5d}
@media(max-width:700px){
  .bar .n{max-width:130px;font-size:9px}
  .bar a.cta{max-width:185px;font-size:9px;padding:8px 10px;letter-spacing:.08em}
  h2.t{font-size:clamp(32px,7.7vw,46px);line-height:1.22}
  .cap{padding-top:20px;gap:20px}
  .lede{font-size:18px;line-height:1.75}
  .wordmark{font-size:19px;letter-spacing:.15em}
  .wordmark span{font-size:8px;letter-spacing:.17em}
  .cover h1{font-size:clamp(48px,10.5vw,70px);line-height:1.1}
  .cover-bottom p{font-size:14px}
  .cover-meta{font-size:11px;gap:8px}
  .cover-copy>.eyebrow{font-size:9px;letter-spacing:.12em}
  .visit-intro h2,.model-heading h2{font-size:38px}
  .chapter-intro h2{font-size:40px}
  .chapter-intro p{font-size:15px}
  .chapter-facts{font-size:11px}
  .chapter-nav a{font-size:11px}
  .chapter-copy h3{font-size:34px;line-height:1.14;margin:12px 0 14px}
  .chapter-copy p{font-size:14px;line-height:1.6;max-width:310px}
  .chapter-copy{bottom:140px;max-width:86%}
  .chapter-detail{font-size:10px;padding-top:8px}
  .chapter-copy .eyebrow{font-size:9px}
  .chapter-scene-top a{font-size:9px}
  .chapter-play{font-size:10px;padding:9px}
  .chapter-shade{background:linear-gradient(180deg,transparent 45%,#242d2700 50%,#242d27 62%)}
  .hero-motion{font-size:10px}
  .film-note,.model-note{font-size:11px}
  .segmented button,.model-controls button{font-size:10px}
  .room-copy p{font-size:12px}
  .ficha>div{min-height:155px}
}

/* Filme completo na abertura, com contato e reprodução com som à mão. */
.cover-poster{display:contents}
.cover-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px}
.hero-contact,.hero-watch{display:inline-flex;align-items:center;justify-content:center;gap:20px;min-height:48px;padding:13px 22px;font:400 12px/1.5 var(--disp);letter-spacing:.08em;text-decoration:none;cursor:pointer}
.hero-contact{background:#e2d3b8;color:#30382d;border:1px solid #e2d3b8}
.hero-contact:hover{background:#f3e8d4;border-color:#f3e8d4}
.hero-watch{border:1px solid #e2d3b880;background:#242d2766;color:var(--paper)}
.hero-watch:hover{background:#242d27bb}
.hero-motion{top:104px;bottom:auto;min-height:36px;border:1px solid #e2d3b84d;padding:8px 12px}
#filmDialog video{height:auto;object-fit:contain;max-height:calc(90svh - 55px)}
#filmDialog.portrait-film{width:min(90vw,calc(82svh * 9 / 16));max-width:500px}
#filmDialog.portrait-film video{aspect-ratio:9/16;max-height:82svh}
@media(max-width:699px){
 .cover{height:100svh;min-height:760px}
 .cover-photo{object-position:center}
 .cover-copy{bottom:132px}
 .cover-copy>.eyebrow{margin-bottom:16px}
 .cover h1{font-size:clamp(44px,10.5vw,64px)}
 .cover-bottom{margin-top:18px}
 .cover-bottom .round-link{display:none}
 .cover-actions{gap:10px;margin-top:20px;flex-wrap:nowrap}
 .hero-contact,.hero-watch{padding:12px 13px;font-size:11px;letter-spacing:.035em;min-height:46px;gap:10px;white-space:nowrap}
 .hero-motion{top:98px;bottom:auto;right:4%;font-size:10px}
}
