/* Art direction: one full-width scene, one decision, room to look. */
.visit{--hm-fg:var(--hm-paper-100);position:relative;background:var(--hm-paper-500)}
.visit-stage{position:relative;overflow:hidden;background:var(--hm-paper-500)}
.visit-images,.visit-light{display:none}.visit-panel{padding:var(--hm-section) var(--hm-gutter);color:var(--hm-paper-100)}
.visit-copy{max-width:var(--hm-content-max);margin-inline:auto;text-align:center}
.visit-eyebrow{display:block;font-size:var(--hm-legend-size);line-height:var(--hm-legend-line);font-weight:var(--hm-fw-semibold);letter-spacing:.12em;text-transform:uppercase;color:var(--hm-green-300);margin-bottom:var(--hm-space-24)}
.visit-copy h1,.visit-copy h2{font-weight:var(--hm-fw-medium);letter-spacing:var(--hm-headline-track);text-wrap:balance;margin:0 auto;color:var(--hm-paper-100)}
.visit-copy h1{font-size:var(--hm-headline-size);line-height:1.04;max-width:18ch}.visit-copy h1 em{font-style:normal;color:var(--hm-paper-100)}
.visit-copy h2{font-size:var(--hm-display-section-size);line-height:1.04;max-width:24ch}
.visit-copy p{max-width:48ch;margin:var(--hm-space-24) auto 0;font-size:var(--hm-body-lg-size);line-height:var(--hm-body-lg-line);color:var(--hm-paper-200);text-wrap:pretty}
.visit-product{margin:var(--hm-space-40) auto 0;width:fit-content;max-width:100%}
.visit-image-note{display:none}.visit-rail{display:none}
.purchase-piece{--hm-fg:var(--hm-paper-500);--hm-fg-on-dark:var(--hm-paper-100);--hm-bg-soft:var(--hm-paper-100);--hm-bg-alt:var(--hm-paper-200);--hm-bg-strong:var(--hm-paper-100);--hm-accent:var(--hm-green-300);background:var(--hm-paper-100);color:var(--hm-paper-500);padding:var(--hm-space-24);text-align:left;box-shadow:var(--hm-shadow-modal);max-width:100%}
.piece-label{display:block;font-size:var(--hm-legend-size);line-height:var(--hm-legend-line);color:var(--hm-paper-500);margin-bottom:var(--hm-space-16)}
.purchase-piece h3{font-size:var(--hm-title-sm-size);line-height:var(--hm-title-sm-line);font-weight:var(--hm-fw-semibold);margin:0 0 var(--hm-space-24);color:var(--hm-paper-500)}
.purchase-piece p{font-size:var(--hm-body-md-size);line-height:var(--hm-body-md-line);color:var(--hm-paper-500)}
.piece-speech{background:var(--hm-paper-500);color:var(--hm-paper-100);max-width:var(--hm-panel-width);padding:var(--hm-space-24) var(--hm-space-32)}
.piece-speech .piece-label{color:var(--hm-paper-200)}.piece-speech>img{display:none}.piece-speech p{font-size:var(--hm-subtitle-size);line-height:var(--hm-subtitle-line);color:var(--hm-paper-100)}.piece-speech .piece-footnote{display:none}
.piece-plan{width:calc(var(--hm-scale-64)*6);padding:var(--hm-space-16) var(--hm-space-24)}
.purchase-blueprint{display:block;width:100%;height:calc(var(--hm-space-64)*3);object-fit:contain}
.piece-bottom{display:flex;flex-direction:column;gap:var(--hm-space-4);padding-top:var(--hm-space-12);border-top:var(--hm-stroke-1) solid var(--hm-paper-200);font-size:var(--hm-body-md-size)}.piece-bottom span{font-size:var(--hm-legend-size);color:var(--hm-paper-500)}
.piece-unit{width:calc(var(--hm-scale-64)*6)}.piece-unit h3{margin-bottom:var(--hm-space-16)}
.unit-choice{display:grid;grid-template-columns:1fr auto;gap:var(--hm-space-8);align-items:center;border-top:var(--hm-stroke-1) solid var(--hm-paper-200);padding-top:var(--hm-space-16);margin-top:var(--hm-space-16);font-size:var(--hm-legend-size)}
.unit-choice strong{font-size:var(--hm-page-size);line-height:var(--hm-page-line);grid-column:2;grid-row:1/3;font-weight:var(--hm-fw-light)}
.piece-mint{color:var(--hm-paper-500)}.piece-footnote{font-size:var(--hm-legend-size)!important;line-height:var(--hm-legend-line)!important;margin-top:var(--hm-space-12);color:var(--hm-paper-500)}
.purchase-composition{display:flex;align-items:center;gap:var(--hm-space-16);max-width:100%}.piece-selection{transform:translateY(var(--hm-space-24));min-width:calc(var(--hm-space-64)*3)}
.selection-value{display:grid;gap:var(--hm-space-4);margin-block:var(--hm-space-24)}.selection-value>span{font-size:var(--hm-page-size);line-height:var(--hm-page-line);font-weight:var(--hm-fw-light)}.selection-value small{font-size:var(--hm-legend-size);color:var(--hm-paper-500)}
.selection-tags{display:grid;gap:var(--hm-space-8);font-size:var(--hm-legend-size)}.selection-tags span{border-top:var(--hm-stroke-1) solid var(--hm-paper-200);padding-top:var(--hm-space-8)}
.piece-terms{min-width:calc(var(--hm-space-64)*4);}.purchase-terms{display:flex;align-items:center;gap:var(--hm-space-12);font-size:var(--hm-body-md-size);padding:var(--hm-space-16) 0;border-top:var(--hm-stroke-1) solid var(--hm-paper-200)}.purchase-terms i{width:var(--hm-space-32);height:var(--hm-stroke-1);background:var(--hm-green-300)}
.purchase-ecosystem{display:flex;gap:var(--hm-space-16)}.purchase-ecosystem .purchase-piece{width:calc(var(--hm-space-64)*3.5)}.purchase-ecosystem h3{font-size:var(--hm-title-md-size);line-height:var(--hm-title-md-line);margin-bottom:var(--hm-space-16)}
/* Approved document metaphor: compose, sign, preserve the record. */
.contract-story{--contract-lines:1;--contract-signature:1;--contract-signed:1;width:calc(var(--hm-space-64)*7);padding:var(--hm-space-24)}
.contract-story-header{display:flex;align-items:center;justify-content:space-between;gap:var(--hm-space-16);padding-bottom:var(--hm-space-16);border-bottom:var(--hm-stroke-1) solid var(--hm-paper-300);font-size:var(--hm-body-md-size);line-height:var(--hm-body-md-line)}
.contract-story-header>span{font-size:var(--hm-legend-size);color:var(--hm-paper-500)}
.contract-story h3{font-size:var(--hm-title-lg-size);line-height:var(--hm-title-lg-line);font-weight:var(--hm-fw-semibold);margin:var(--hm-space-24) 0}
.contract-story-lines{display:grid;gap:var(--hm-space-8)}
.contract-story-lines i{display:block;height:var(--hm-stroke-1);background:var(--hm-paper-200);transform:scaleX(var(--contract-lines));transform-origin:left}
.contract-story-lines i:last-child{width:72%}
.contract-story-signature{display:flex;align-items:center;justify-content:space-between;gap:var(--hm-space-24);margin-top:var(--hm-space-20);min-height:var(--hm-space-56)}
.contract-story-signature svg{width:62%;max-width:calc(var(--hm-space-64)*3);height:var(--hm-space-56);overflow:visible}
.contract-story-signature path{fill:none;stroke:var(--hm-paper-500);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--contract-signature))}
.contract-story-state{display:grid;white-space:nowrap;font-size:var(--hm-body-md-size);line-height:var(--hm-body-md-line)}
.contract-story-state>span{grid-area:1/1}.contract-awaiting{opacity:calc(1 - var(--contract-signed));color:var(--hm-paper-500)}.contract-signed{opacity:var(--contract-signed);font-weight:var(--hm-fw-medium)}
.contract-story .contract-story-note{font-size:var(--hm-legend-size);line-height:var(--hm-legend-line);margin-top:var(--hm-space-16);color:var(--hm-paper-500)}
@media(max-width:899px),(max-height:800px){.contract-story{padding:var(--hm-space-16)}.contract-story h3{font-size:var(--hm-title-sm-size);line-height:var(--hm-title-sm-line);margin:var(--hm-space-16) 0}.contract-story-header{padding-bottom:var(--hm-space-12)}.contract-story-signature{gap:var(--hm-space-12);margin-top:var(--hm-space-12);min-height:var(--hm-space-40)}.contract-story-signature svg{height:var(--hm-space-40)}.contract-story .contract-story-note{margin-top:var(--hm-space-12)}}
/* A film occupies the whole viewport. Type and product sit in its quiet spaces. */
.visit{--hero-light:1;--proposal-progress:1;--interior:0}
.visit-eyebrow{display:none}
.visit-copy h1,.visit-copy h2,.visit-copy h1 em{font-weight:var(--hm-fw-medium);letter-spacing:-.035em;line-height:1.06;font-style:normal}
.visit-copy h1{font-size:clamp(56px,6.6vw,96px);max-width:17ch}
.visit-copy h2{font-size:clamp(40px,4.4vw,64px);max-width:25ch}
.visit-copy p{color:var(--hm-paper-100);font-size:var(--hm-body-lg-size);line-height:1.5;max-width:48ch;margin:var(--hm-space-20) auto 0;text-wrap:pretty}
.purchase-piece{box-shadow:0 16px 48px color-mix(in srgb,var(--hm-paper-500) 22%,transparent);border:0;will-change:transform,opacity}
.purchase-piece .piece-label{font-size:var(--hm-legend-size);font-weight:var(--hm-fw-semibold);margin-bottom:var(--hm-space-16)}
.piece-speech{border:0;width:420px;max-width:100%;padding:var(--hm-space-24);background:var(--hm-paper-100);color:var(--hm-paper-500)}
.piece-speech .piece-label{color:var(--hm-paper-500)}.piece-speech p{color:var(--hm-paper-500);font-size:var(--hm-title-sm-size);line-height:1.3}.piece-speech .piece-footnote{display:block;color:var(--hm-paper-500);margin-top:var(--hm-space-24)}
.piece-speech>img{display:block;width:var(--hm-scale-24);height:var(--hm-scale-24);margin-bottom:var(--hm-space-16)}
.piece-plan{width:352px}.purchase-blueprint{height:208px;object-fit:contain}.piece-unit{width:400px}
.unit-choice strong,.selection-value>span{font-weight:var(--hm-fw-medium);font-variant-numeric:tabular-nums}
.purchase-composition{gap:var(--hm-space-24);align-items:flex-start}.piece-selection{width:200px;margin-top:var(--hm-space-48);transform:none}.piece-terms{width:280px;min-height:276px}
.piece-terms h3{font-size:var(--hm-title-md-size);line-height:1.15}.piece-terms p{margin-top:var(--hm-space-24)}
.proposal-progress{height:2px;background:var(--hm-paper-200)}.proposal-progress span{display:block;height:100%;background:var(--hm-green-300);transform-origin:left;transform:scaleX(var(--proposal-progress))}
.purchase-ecosystem{gap:var(--hm-space-24);align-items:flex-start}.purchase-ecosystem .purchase-piece:nth-child(2){margin-top:var(--hm-space-32)}.purchase-ecosystem .purchase-piece:nth-child(3){margin-top:var(--hm-space-64)}
.visit-images,.visit-light,.tour-utilities{display:none}
html.visit-ready .visit{height:calc(100svh + var(--visit-distance,990svh))}
html.visit-ready .visit-stage{position:sticky;top:0;height:100svh;isolation:isolate;overflow:hidden}
html.visit-ready .visit-images{display:block;position:absolute;inset:0;z-index:-3;background:var(--hm-paper-500)}
.tour-reel{position:absolute;inset:0;overflow:hidden;opacity:1}
.tour-reel[data-tour-reel="interior"]{opacity:var(--interior)}
.tour-reel img,.tour-reel video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tour-reel video{opacity:0}.tour-reel.is-ready video{opacity:1}
html.visit-ready .visit-light{display:block;position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,color-mix(in srgb,var(--hm-paper-500) 76%,transparent),transparent 48%,transparent 76%,color-mix(in srgb,var(--hm-paper-500) 56%,transparent))}
.visit-light::after{content:"";position:absolute;inset:0;background:color-mix(in srgb,var(--hm-paper-500) 54%,transparent);opacity:var(--reading-light,1)}
html.visit-ready .visit-panel{position:absolute;inset:0;padding:calc(var(--hm-topbar-h) + var(--hm-space-32)) 120px 80px;opacity:0;pointer-events:none;will-change:opacity,transform}
html.visit-ready .visit-panel--0{display:flex;flex-direction:column;justify-content:center;padding-top:var(--hm-topbar-h);padding-bottom:var(--hm-space-64);opacity:1}
html.visit-ready .visit-panel--0 .visit-copy{margin-inline:auto;width:100%}
html.visit-ready .visit-panel--0 .visit-product{display:none}
html.visit-ready .visit-panel a,html.visit-ready .visit-panel button{pointer-events:auto}
html.visit-ready .visit-panel[inert] a,html.visit-ready .visit-panel[inert] button{pointer-events:none}
html.visit-ready .visit-product{position:absolute;left:50%;bottom:9svh;transform:translateX(-50%);margin:0;width:max-content;max-width:calc(100% - 240px)}
html.visit-ready .visit-panel--1 .visit-product{left:32%}
html.visit-ready .visit-panel--2 .visit-product{left:62%}
html.visit-ready .visit-panel--3 .visit-product{left:36%}
html.visit-ready .visit-panel--4 .visit-product{left:53%}
html.visit-ready .visit-panel--5 .visit-product{left:59%}
html.visit-ready .visit-rail{display:block;position:absolute;inset:0;pointer-events:none}
.visit-stop{height:var(--visit-step,165svh);scroll-margin-top:0}.visit-stop:last-child{height:100svh}
html.visit-ready .tour-utilities{position:absolute;inset:auto 120px 20px;display:flex;align-items:center;gap:var(--hm-space-24);z-index:5;color:var(--hm-paper-100);font-size:var(--hm-legend-size);line-height:var(--hm-legend-line)}
.tour-look{display:flex;align-items:center;gap:8px;padding:8px 0;min-height:44px;color:inherit;background:none;border:0;font:inherit;cursor:pointer;text-underline-offset:4px}
.tour-look img{width:20px;height:20px;filter:brightness(0) invert(1)}.tour-look:hover span{text-decoration:underline}
.tour-media-state:empty{display:none}.tour-media-state{position:absolute;bottom:52px;right:0;background:var(--hm-paper-500);padding:12px 16px}.tour-media-state button{background:none;border:0;text-decoration:underline;color:inherit;font:inherit;cursor:pointer;min-height:32px}
.visit-panels,.visit-light{transition:opacity .5s cubic-bezier(.16,1,.3,1)}
.is-looking .visit-panels{opacity:0}.is-looking .visit-light{opacity:.2}
html:not(.visit-ready) .visit-panel{scroll-margin-top:var(--hm-topbar-h)}
html:not(.visit-ready) .visit-panel--0{min-height:90svh;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(color-mix(in srgb,var(--hm-paper-500) 55%,transparent),color-mix(in srgb,var(--hm-paper-500) 55%,transparent)),url('assets/tour/exterior-poster.webp') center/cover}
@media(min-width:900px) and (max-height:800px){
 .visit-copy h2{font-size:48px}.visit-copy p{font-size:var(--hm-body-md-size);margin-top:16px}
 html.visit-ready .visit-panel{padding-top:calc(var(--hm-topbar-h) + 20px)}
 .purchase-piece{padding:var(--hm-space-16)}.purchase-blueprint{height:152px}.piece-plan{width:300px}
 html.visit-ready .visit-product{bottom:76px}.piece-speech p{font-size:24px}.piece-unit{width:380px}
 .piece-terms{min-height:248px}.purchase-ecosystem .purchase-piece{width:208px}
}
@media(max-width:899px){
 .visit-copy h1{font-size:clamp(42px,7vw,64px);line-height:1.06}.visit-copy h2{font-size:clamp(30px,4.6vw,44px);line-height:1.1}.visit-copy h2 br{display:none}
 .visit-copy p{font-size:var(--hm-body-md-size);line-height:1.45;margin-top:16px;max-width:40ch}
 html.visit-ready .visit-panel{padding:calc(var(--hm-topbar-h) + 24px) 72px 64px 16px}
 html.visit-ready .visit-panel .visit-product{left:16px;right:auto;bottom:80px;transform:none;width:calc(100% - 88px);max-width:380px}
 html.visit-ready .visit-panel--0{padding-bottom:80px}
 .purchase-piece{padding:var(--hm-space-16);width:100%;min-width:0}.purchase-piece h3{font-size:var(--hm-title-sm-size);line-height:1.15;margin-bottom:16px}
 .purchase-blueprint{height:168px}.piece-speech p{font-size:var(--hm-title-sm-size);line-height:1.3}.piece-speech .piece-footnote{margin-top:16px}
 .piece-bottom{font-size:var(--hm-body-md-size)}
 .purchase-composition{gap:8px;align-items:flex-start}.piece-selection{width:40%;margin-top:32px}.piece-terms{width:60%;min-height:248px}.piece-terms h3{font-size:var(--hm-subtitle-size)}.piece-terms p{font-size:var(--hm-legend-size);line-height:1.5}.purchase-terms{flex-wrap:wrap;gap:8px;font-size:var(--hm-legend-size)}.purchase-terms i{width:16px}
 .selection-value{margin-block:16px}.selection-value>span{font-size:var(--hm-title-lg-size)}.selection-tags{font-size:var(--hm-legend-size)}
 .purchase-ecosystem{display:grid;gap:12px;width:100%}.purchase-ecosystem .purchase-piece{width:100%;margin-top:0!important;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;padding:12px 16px}.purchase-ecosystem .piece-label{margin:0;grid-column:1;font-size:var(--hm-legend-size)}.purchase-ecosystem h3{grid-column:1;margin:0;font-size:var(--hm-subtitle-size)}.purchase-ecosystem p{grid-column:2;grid-row:1/3;font-size:var(--hm-legend-size);line-height:1.5}
 html.visit-ready .tour-utilities{inset:auto 16px 12px;gap:8px;font-size:var(--hm-legend-size);flex-wrap:wrap}.tour-look{font-size:var(--hm-legend-size)}.tour-media-state{right:0}
}
@media(max-width:599px){
 .visit-copy h1{font-size:44px}.visit-copy h2{font-size:32px}
.tour-utilities .tour-look{margin-right:auto}
 html.visit-ready .visit-panel--0 .visit-copy p{max-width:27ch}
}
@media(max-height:740px) and (max-width:899px){
 html.visit-ready .visit-panel{padding-top:calc(var(--hm-topbar-h) + 8px)}
 .visit-copy h2{font-size:28px}.visit-copy p{font-size:14px;margin-top:12px}
 .purchase-blueprint{height:128px}.piece-label{margin-bottom:8px!important}
 .piece-unit h3{font-size:20px;margin-bottom:12px}.piece-unit .unit-choice{margin-top:12px;padding-top:12px}
 .piece-speech>img{margin-bottom:8px}.piece-terms{min-height:224px}.piece-terms p{margin-top:16px}
 html.visit-ready .visit-panel .visit-product{bottom:72px}
}
@media(prefers-reduced-motion:reduce){.visit-panel{padding:64px 24px}.purchase-composition{flex-wrap:wrap}.piece-selection{margin-top:0}.purchase-ecosystem{flex-wrap:wrap}.visit-product{max-width:100%}.proposal-progress span{transform:none}.visit-rail,.tour-utilities{display:none!important}}
/* Final review: selection remains inside the document at narrow widths. */
.purchase-ecosystem h3{font-size:var(--hm-title-sm-size);line-height:1.2;min-height:var(--hm-space-56)}
@media(max-width:599px){
 .piece-unit .hm-bchip-grid{grid-template-columns:minmax(0,1fr)}
 .piece-unit .hm-bchip{flex-direction:row;gap:var(--hm-space-12);align-items:center;min-width:0}
 .piece-unit .hm-bchip__tag{align-self:center}
 .piece-unit .hm-bchip__num{white-space:nowrap}
 .purchase-ecosystem h3{font-size:var(--hm-body-lg-size);line-height:1.2;min-height:0}
}
/* Scroll direction, not a launch screen. Cue contract: Figma 11182:63. */
.tour-scroll-cue{display:flex;flex-direction:column;align-items:center;gap:var(--hm-space-16);width:fit-content;margin:var(--hm-space-40) auto 0;color:var(--hm-paper-100);text-decoration:none;font-family:var(--hm-font-sans);font-size:var(--hm-eyebrow-size);font-weight:var(--hm-eyebrow-weight);line-height:var(--hm-eyebrow-line);letter-spacing:var(--hm-eyebrow-track);text-transform:uppercase}
.tour-scroll-cue-line{display:block;position:relative;overflow:hidden;width:var(--hm-stroke-1);height:var(--hm-space-56);background:currentColor}
.tour-scroll-cue-line::after{content:"";position:absolute;left:0;top:-50%;width:100%;height:50%;background:var(--hm-green-300);animation:tour-cue 2.4s ease-in-out infinite}
@keyframes tour-cue{to{top:100%}}
.tour-scroll-cue:focus-visible{outline:var(--hm-stroke-2) solid currentColor;outline-offset:var(--hm-space-8)}
html.visit-ready .tour-scroll-cue{position:absolute;bottom:var(--hm-space-48);left:50%;transform:translateX(-50%);margin:0;opacity:var(--cue-opacity,1)}
html.visit-ready .tour-scroll-cue[inert]{pointer-events:none}
html.visit-ready .tour-scroll-cue[inert] .tour-scroll-cue-line::after{animation-play-state:paused}
html.visit-ready .visit-panel--0{padding-inline:var(--hm-gutter);padding-bottom:calc(var(--hm-space-64) + var(--hm-space-32))}
html.visit-ready .visit-copy{transform-origin:center top;will-change:transform,opacity}
html.visit-ready .visit-product{bottom:12svh}
html.visit-ready .visit-panel--1 .visit-product{left:42%}
html.visit-ready .visit-panel--2 .visit-product{left:56%}
html.visit-ready .visit-panel--3 .visit-product{left:42%}
html.visit-ready .visit-panel--5 .visit-product{left:55%}
.tour-look[hidden]{display:none}
@media(min-width:900px) and (min-height:801px){
 .piece-plan{width:calc(var(--hm-scale-64)*7)}
 .purchase-blueprint{height:calc(var(--hm-scale-64)*4)}
 .piece-unit{width:calc(var(--hm-scale-64)*7)}
 .piece-speech{width:calc(var(--hm-scale-64)*7)}
}
@media(max-width:899px){
 html.visit-ready .visit-panel--0{padding-inline:var(--hm-space-24);padding-bottom:calc(var(--hm-space-64) + var(--hm-space-32))}
 html.visit-ready .tour-scroll-cue{bottom:var(--hm-space-32);white-space:nowrap}
 html.visit-ready .visit-panel .visit-product{bottom:16svh;left:var(--hm-space-16)}
}
@media(prefers-reduced-motion:reduce){
 .tour-scroll-cue-line::after{display:none}
}
/* Atoms assemble once along the scroll; layout stays reserved and parents hold still. */
html.visit-ready [data-tour-atom]{opacity:var(--atom-progress,1);transform:translate3d(0,calc((1 - var(--atom-progress,1))*var(--hm-space-16)),0)}
html.visit-ready [data-tour-atom="plan"]{transform:scale(calc(.96 + var(--atom-progress,1)*.04));clip-path:inset(0 0 calc((1 - var(--atom-progress,1))*100%) 0)}
[data-tour-atom]:focus-visible{outline:var(--hm-stroke-2) solid var(--hm-paper-500);outline-offset:var(--hm-space-8)}
/* Figma 11136:2: a Paper navbar anchors the scene, with the same 56/32/16 grid. */
.site-nav{--hm-fg:var(--hm-paper-500);--hm-bg-soft:var(--hm-paper-200);background:var(--hm-paper-100);border-bottom:var(--hm-stroke-1) solid var(--hm-paper-200);padding-inline:max(var(--hm-space-56),calc((100vw - (var(--hm-content-max-editorial) - var(--hm-space-56)*2))/2));gap:var(--hm-space-32)}
.site-nav nav{margin-inline:auto;align-items:center}
.site-nav nav a{color:var(--hm-paper-500);font-weight:var(--hm-fw-semibold);padding-block:var(--hm-space-12);text-underline-offset:var(--hm-space-4)}
.site-nav nav a:hover,.site-nav nav a:focus-visible{color:var(--hm-paper-500);text-decoration:underline}
.site-nav .site-menu-toggle{display:none;margin:0;padding:var(--hm-space-8);width:var(--hm-space-64);height:var(--hm-space-40);min-width:var(--hm-space-64)}
.site-menu-toggle img{width:var(--hm-scale-24);height:var(--hm-scale-24)}
@media(max-width:1023px){
 .site-nav{padding-inline:var(--hm-space-32);gap:var(--hm-space-16)}
 .site-nav nav{display:flex;position:absolute;inset:100% 0 auto;background:var(--hm-paper-100);border-bottom:var(--hm-stroke-1) solid var(--hm-paper-200);padding:var(--hm-space-16) var(--hm-space-32);gap:var(--hm-space-24)}
 html.nav-ready .site-nav nav{display:none}
 html.nav-ready .site-nav.is-menu-open nav{display:flex}
 html.nav-ready .site-nav .site-menu-toggle{display:flex}
}
@media(max-width:599px){
 .site-nav{padding-inline:var(--hm-space-16);gap:var(--hm-space-12)}
 .site-nav .brand img{width:calc(var(--hm-space-48)*2);height:auto}
 .site-nav>.hm-btn:not(.site-menu-toggle){white-space:nowrap;padding-inline:var(--hm-space-8)}
 .site-nav nav{padding:var(--hm-space-16);gap:var(--hm-space-24);flex-wrap:wrap}
 .site-nav nav a{font-size:var(--hm-body-md-size)}
}
.nav-demo-short{display:none}
@media(max-width:599px){.nav-demo-full{display:none}.nav-demo-short{display:inline}}
@media(min-width:1024px){
 .site-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
 .site-nav .brand{justify-self:start}
 .site-nav nav{margin:0;justify-self:center}
 .site-nav>.hm-btn:not(.site-menu-toggle){margin:0;justify-self:end}
}
/* Header 11466:30409 — display 94px/700 + 300 italic, tracking -5%.
   Responsive size is local (the Figma node defines only its 1440px composition).
   Its fixed text boxes step by 94.5px; the exported 164.74px leading is not the visual line rhythm. */
.visit-panel--0 .visit-copy h1{font-family:var(--hm-font-sans);font-weight:var(--hm-fw-bold);font-style:normal;font-size:clamp(48px,6.5277778vw,94px);line-height:1.005319149;letter-spacing:-.05em;color:var(--hm-white);max-width:100%;font-synthesis:none}
.visit-panel--0 .visit-copy h1 em{font-weight:var(--hm-fw-light);font-style:italic;line-height:inherit;letter-spacing:inherit;color:var(--hm-white)}
.site-nav{height:var(--hm-space-72)}
.site-nav .brand img{width:145px;height:var(--hm-space-32);object-fit:contain}
.site-nav .brand-on-film{display:none}
.site-nav nav{gap:var(--hm-space-40)}
.site-nav nav a{font-weight:var(--hm-fw-bold);line-height:var(--hm-legend-line)}
html.tour-active .site-nav{background:transparent;border-color:transparent;--hm-fg:var(--hm-paper-100);--hm-bg-soft:var(--hm-paper-500)}
html.tour-active .site-nav .brand-on-paper{display:none}
html.tour-active .site-nav .brand-on-film{display:block}
html.tour-active .site-nav nav a,html.tour-active .site-nav nav a:hover,html.tour-active .site-nav nav a:focus-visible{color:var(--hm-paper-100)}
@media(max-width:1023px){
 html.tour-active .site-nav nav{background:var(--hm-paper-500);border-color:transparent}
 .site-nav nav{gap:var(--hm-space-24)}
}
@media(max-width:599px){
 .site-nav{height:var(--hm-space-64)}
 .site-nav .brand img{width:calc(var(--hm-space-48)*2);height:auto}
}
@media(max-height:440px) and (min-width:600px) and (max-width:899px){
 html.visit-ready .tour-scroll-cue{bottom:var(--hm-space-16)}
}
/* Navegador da visita — mínimo, no eixo central inferior (referência: a pílula de capítulos da Apple).
   As setas avançam cena a cena pelos pontos de leitura (correção de 12/09: nunca pular etapas inteiras).
   Os traços só indicam o progresso; não são clicáveis. Só existe durante o filme. */
.visit-dock{position:fixed;z-index:30;left:50%;bottom:max(var(--hm-space-24),env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:var(--hm-space-4);height:var(--hm-scale-48);padding-inline:var(--hm-space-4);background:color-mix(in srgb,var(--hm-paper-500) 72%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);box-shadow:inset 0 0 0 var(--hm-stroke-1) var(--hm-on-ink-16);color:var(--hm-paper-100);font-family:var(--hm-font-sans);animation:visit-dock-in .5s cubic-bezier(.16,1,.3,1) both}
.visit-dock[hidden],html:not(.tour-active) .visit-dock{display:none!important}
@keyframes visit-dock-in{from{opacity:0;transform:translate(-50%,8px)}}
.visit-step{display:grid;place-items:center;width:var(--hm-scale-40);height:var(--hm-scale-40);padding:0;border:0;background:none;cursor:pointer;transition:background-color .2s ease}
.visit-step img{width:var(--hm-scale-20,20px);height:var(--hm-scale-20,20px);filter:brightness(0) invert(1)}
.visit-step:disabled{opacity:.3;cursor:default}
.visit-dock-label{display:flex;gap:var(--hm-space-8);min-width:calc(var(--hm-scale-64) + var(--hm-space-24));padding-inline:var(--hm-space-4);font-size:var(--hm-legend-size);line-height:var(--hm-legend-line);font-weight:var(--hm-fw-semibold);white-space:nowrap}
.visit-dock-label [data-visit-count]{color:var(--hm-green-300);font-variant-numeric:tabular-nums}
.visit-dots{display:flex;align-items:center;gap:var(--hm-space-8);padding-inline:var(--hm-space-12) var(--hm-space-16)}
.visit-dots>span{display:block;width:var(--hm-space-8);height:var(--hm-stroke-2);background:color-mix(in srgb,var(--hm-paper-100) 32%,transparent);transition:width .45s cubic-bezier(.16,1,.3,1),background-color .3s ease}
.visit-dots>span[data-past="true"]{background:color-mix(in srgb,var(--hm-paper-100) 72%,transparent)}
.visit-dots>span[aria-current="step"]{width:var(--hm-space-40);background:linear-gradient(90deg,var(--hm-green-300) calc(var(--segment,0)*100%),color-mix(in srgb,var(--hm-paper-100) 32%,transparent) 0)}
.visit-skip{display:grid;place-items:center;height:var(--hm-scale-40);padding-inline:var(--hm-space-12);border-left:var(--hm-stroke-1) solid var(--hm-on-ink-16);color:var(--hm-paper-200);font-size:var(--hm-legend-size);line-height:var(--hm-legend-line);font-weight:var(--hm-fw-semibold);text-decoration:none}
@media(hover:hover) and (pointer:fine){.visit-step:not(:disabled):hover{background:color-mix(in srgb,var(--hm-paper-100) 12%,transparent)}.visit-skip:hover{color:var(--hm-paper-100)}}
.visit-step:focus-visible,.visit-skip:focus-visible{outline:2px solid var(--hm-green-300);outline-offset:-2px}
@media(max-width:599px){
 .visit-dock{gap:0;max-width:calc(100% - var(--hm-space-32))}
 .visit-dock-label{min-width:0}.visit-dock-label [data-visit-label]{display:none}
 .visit-dots{gap:var(--hm-space-4);padding-inline:var(--hm-space-8)}
 .visit-dots>span{width:var(--hm-space-4)}.visit-dots>span[aria-current="step"]{width:var(--hm-space-24)}
}
@media(prefers-reduced-motion:reduce){.visit-dock{animation:none}.visit-dots>span{transition:none}}
/* Visita já vista: a abertura vira uma hero comum e o percurso fica guardado até o convite "Rever a introdução". */
html.tour-seen .opening-cta-first,html:not(.tour-seen) .opening-cta-again{display:none}
html.tour-seen .visit-panel:not(.visit-panel--0),html.tour-seen .visit-rail,html.tour-seen .visit-dock,html.tour-seen .tour-utilities{display:none!important}
html.tour-seen.visit-ready .visit{height:100svh}
html.tour-seen.visit-ready .visit-stage{position:relative}
