/* NDA by EGLuxe. Layout from the v12 concept: the mark is the hero, the decisions stack,
   the number is a poster, brass appears only where it means money or the lockup. */

@font-face{font-family:'Outfit';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/outfit-latin-var.woff2) format('woff2-variations'),url(../fonts/outfit-latin-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Outfit';font-style:normal;font-display:swap;font-weight:100 900;src:url(../fonts/outfit-latin-ext-var.woff2) format('woff2-variations'),url(../fonts/outfit-latin-ext-var.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+1E00-1E9F,U+1EF2-1EFF,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  --paper:#FFFFFF;
  --ink:#111111;
  --ink-2:#3E3D3A;
  --muted:#6B6964;
  --rule:#E6E4DF;
  --rule-2:#D5D3CE;
  --black:#0B0B0B;
  --brass:#A8894F;
  --brass-paper:#8A6F3C;
  --brass-on-ink:#C4A66E;
  --on-ink:#F4F3F0;
  --on-ink-muted:#9E9B95;
  --on-ink-rule:#262624;
  --body:'Outfit','Avenir Next',system-ui,sans-serif;
  --display:var(--body);
  --gutter:clamp(16px,4.5vw,64px);
  --section:clamp(80px,10vw,144px);
  --ease:cubic-bezier(.2,.7,.2,1);
  --top:var(--wp-admin--admin-bar--height,0px);
  color-scheme:light;
  interpolate-size:allow-keywords;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:calc(72px + var(--top));-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-weight:300;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"ss01" 0}
img{max-width:100%;height:auto}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer}
:focus-visible{outline:1px solid currentColor;outline-offset:6px}
::selection{background:var(--ink);color:var(--paper)}
svg.mark{display:block;width:auto;fill:currentColor}
.wrap{padding-inline:var(--gutter)}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--gutter);top:-80px;z-index:100;padding:12px 18px;background:var(--ink);color:var(--paper);font:500 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;text-decoration:none}
.skip:focus{top:calc(12px + var(--top))}
.label{margin:0 0 22px;font:500 12px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}
.note{font:400 13px/1.65 var(--body);letter-spacing:.02em;color:var(--ink-2)}
h2{margin:0 0 26px;max-width:16ch;font:400 clamp(32px,3.4vw,52px)/1.1 var(--display);letter-spacing:-.01em;text-wrap:balance}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:48px;padding:0 26px;border:1px solid currentColor;background:transparent;text-decoration:none;font:500 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;white-space:nowrap;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.btn.solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn.solid:hover{background:transparent;color:var(--ink)}
.btn.light{color:#FFFFFF}
.btn.light:hover{background:#FFFFFF;color:var(--ink)}
.btn.ghost{border-color:var(--rule-2);color:var(--ink)}
.btn.ghost:hover{border-color:var(--ink)}
.btn.sm{min-height:36px;padding:0 16px;font-size:11px;letter-spacing:.16em}

/* Bar: hidden over the hero, slides in when you scroll back up. */
.bar{position:fixed;top:var(--top);left:0;right:0;z-index:40;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;height:64px;padding:0 var(--gutter);background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.3) blur(14px);backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid var(--rule);transform:translateY(calc(-100% - var(--top) - 2px));transition:transform .45s var(--ease);view-transition-name:nda-bar}
.bar.is-on{transform:none}
.bar.is-static{position:sticky;transform:none}
.bar-brand{justify-self:start;display:block;color:var(--ink)}
.bar-brand svg{height:12px}
.bar-worlds{display:flex;gap:clamp(14px,2vw,28px)}
.bar-worlds a{padding:8px 0;text-decoration:none;font:400 14px/1 var(--body);letter-spacing:.02em;color:var(--muted);transition:color .2s ease}
.bar-worlds a:hover,.bar-worlds a[aria-current]{color:var(--ink)}
.bar-worlds a[aria-current]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:8px}
.bar-end{justify-self:end;display:flex;align-items:center;gap:22px}
.bar-tel{text-decoration:none;font:400 14px/1 var(--body);letter-spacing:.04em;font-variant-numeric:tabular-nums}
.bar-tel .short{display:none;font:500 11px/1 var(--body);letter-spacing:.16em;text-transform:uppercase}
.bar-tel:hover{color:var(--ink)}

/* Hero nav */
.nav{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px var(--gutter);color:#FFFFFF;view-transition-name:nda-nav}
.nav .brand{display:block;color:inherit}
.nav .brand svg{height:15px}
.nav-links{display:flex;align-items:center;gap:clamp(10px,2.2vw,32px)}
.nav-links a{padding:8px 0;color:rgba(255,255,255,.72);text-decoration:none;font:400 15px/1 var(--body);letter-spacing:.02em;transition:color .2s ease}
.nav-links a:hover{color:#FFFFFF}
.nav-links a[aria-current]{color:#FFFFFF;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:9px}
.nav-links .sep{width:1px;height:14px;background:rgba(255,255,255,.35)}

/* Hero: the mark is the headline. The photograph drifts once, slowly. */
.hero{position:relative;height:100svh;min-height:640px;max-height:1000px;color:#FFFFFF;overflow:hidden;isolation:isolate;background:#16181C}
.hero-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transform-origin:50% 60%;animation:drift 14s ease-out both;view-transition-name:nda-hero}
@keyframes drift{from{transform:scale(1.06)}to{transform:scale(1)}}
.hero::after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(6,7,9,.44) 0%,rgba(6,7,9,0) 22%,rgba(6,7,9,.06) 40%,rgba(6,7,9,.38) 64%,rgba(6,7,9,.74) 100%)}
.hero-copy{position:absolute;z-index:2;left:var(--gutter);right:var(--gutter);bottom:clamp(44px,8vh,88px);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 48px}
.eyebrow{margin:0 0 clamp(18px,2.4vw,30px);font:500 12px/1.4 var(--body);letter-spacing:.22em;text-transform:uppercase;color:rgba(255,255,255,.92);text-shadow:0 1px 18px rgba(0,0,0,.45)}
.hero h1{margin:0;line-height:0;color:#FFFFFF}
.hero h1 svg{height:clamp(96px,15vw,232px);max-width:100%;view-transition-name:nda-mark;animation:wipe 1.25s cubic-bezier(.65,0,.35,1) .15s both}
@keyframes wipe{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
.tagline{margin:clamp(20px,2.4vw,30px) 0 0;max-width:40ch;text-wrap:balance;font:400 clamp(18px,1.7vw,24px)/1.4 var(--display);color:rgba(255,255,255,.94);text-shadow:0 1px 22px rgba(0,0,0,.4)}
.hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:18px;padding-bottom:6px}
.offer{display:inline-flex;align-items:center;gap:12px;padding:6px 0;text-decoration:none;font:500 12px/1.4 var(--body);letter-spacing:.18em;text-transform:uppercase;color:#FFFFFF;border-bottom:1px solid rgba(255,255,255,.4);transition:border-color .2s ease}
.offer::before{content:"";width:6px;height:6px;background:var(--brass-on-ink);transform:rotate(45deg)}
.offer:hover{border-bottom-color:#FFFFFF}
.counter{font:400 13px/1 var(--body);letter-spacing:.12em;color:rgba(255,255,255,.7);font-variant-numeric:tabular-nums}
.counter .more{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:3px;transition:color .2s ease,border-color .2s ease}
.counter .more:hover{color:#FFFFFF;border-bottom-color:#FFFFFF}
.rise>*{animation:rise .9s var(--ease) both}
.rise>*:nth-child(2){animation-delay:.12s}
@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}

/* The plan */
.plan{position:relative;overflow:hidden;padding-block:var(--section)}
.plan .ghost{position:absolute;left:-4vw;bottom:-18%;height:min(90vh,820px);width:auto;color:var(--ink);opacity:.04;pointer-events:none}
.plan .big{margin:0 0 28px;max-width:18ch;font:400 clamp(34px,5vw,76px)/1.05 var(--display);letter-spacing:-.015em;text-wrap:balance}
.plan p.body{margin:0;max-width:52ch;font-size:clamp(17px,1.4vw,20px);line-height:1.65;color:var(--ink-2)}
.plan-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px 64px;align-items:end}

/* The turn */
.turn{position:relative;background:var(--black);color:var(--on-ink);overflow:hidden;isolation:isolate}
.turn>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;opacity:.38}
.turn .in{position:relative;z-index:1;padding:var(--section) var(--gutter);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:32px 64px;align-items:end;min-height:min(80vh,720px)}
.turn .label{color:var(--on-ink-muted)}
.turn h2{color:var(--on-ink);max-width:16ch;font-size:clamp(30px,3.8vw,56px);margin:0}
.turn p{margin:0;max-width:42ch;font-size:clamp(17px,1.4vw,20px);line-height:1.65;color:rgba(244,243,240,.86)}

/* Statement */
.detail{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch}
.detail-media{margin:0;position:relative;min-height:min(78vw,760px);background:#E9E8E4;overflow:hidden}
.detail-media img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.detail-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:var(--section) var(--gutter);min-width:0}
.detail-copy p.body{margin:0 0 40px;max-width:44ch;font-size:17px;line-height:1.7;color:var(--ink-2)}

/* Four decisions: full-height panels that stack as you scroll */
.decisions{position:relative}
.decisions-head{padding:var(--section) var(--gutter) clamp(40px,5vw,72px)}
.decisions-head h2{max-width:14ch;font-size:clamp(40px,6vw,96px);line-height:1;letter-spacing:-.025em;margin:0}
.decisions-head p{margin:24px 0 0;max-width:46ch;font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:var(--ink-2)}
.steps{margin:0;padding:0;list-style:none}
.decision{position:sticky;top:var(--top);min-height:calc(100svh - var(--top));display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--paper);border-top:1px solid var(--rule);isolation:isolate}
.decision .pic{position:relative;min-height:60vh;overflow:hidden;background:#16181C}
.decision .pic img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.decision .txt{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:clamp(48px,7vw,112px) var(--gutter)}
.decision .num{position:absolute;top:clamp(24px,4vw,56px);right:var(--gutter);font:400 clamp(96px,18vw,280px)/.8 var(--body);letter-spacing:-.04em;color:var(--rule);font-variant-numeric:tabular-nums;pointer-events:none}
.decision .num::before{content:attr(data-n)}
.decision h3{position:relative;margin:0 0 20px;max-width:12ch;font:400 clamp(36px,4.6vw,72px)/1.02 var(--body);letter-spacing:-.02em;text-wrap:balance}
.decision p{position:relative;margin:0;max-width:40ch;font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:var(--ink-2)}
.decision:nth-child(even) .pic{order:2}

/* Need to sell first? NDA and EGLuxe side by side, without merging */
.sell{padding-block:var(--section);border-top:1px solid var(--rule)}
.sell-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px clamp(48px,7vw,120px);align-items:start}
.sell h2{margin:0;max-width:9ch;font-size:clamp(48px,8.4vw,136px);line-height:.98;letter-spacing:-.035em}
.sell-sub{margin:clamp(18px,2.4vw,32px) 0 0;max-width:20ch;font:400 clamp(22px,2.2vw,32px)/1.2 var(--body);letter-spacing:-.01em;color:var(--ink-2)}
.sell-copy{padding-top:clamp(8px,1.4vw,22px)}
.sell-mark{margin:0 0 28px}
.sell-mark svg{height:13px;color:var(--ink)}
.sell-copy p{margin:0 0 1.1em;max-width:44ch;font-size:17px;line-height:1.7;color:var(--ink-2)}
.sell-copy p.first{font:400 clamp(20px,1.8vw,26px)/1.35 var(--body);color:var(--ink);letter-spacing:-.01em;max-width:30ch}
.sell-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin:32px 0 0}
.sell-link{text-decoration:none;font:500 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid var(--rule-2);padding-bottom:6px;transition:border-color .2s ease}
.sell-link:hover{border-bottom-color:var(--ink)}
.sell-link.on-ink{color:var(--on-ink);border-bottom-color:var(--on-ink-rule)}
.sell-link.on-ink:hover{border-bottom-color:var(--on-ink)}
.sell-note{margin:48px 0 0;padding-top:20px;border-top:1px solid var(--rule);max-width:52ch;font:400 13px/1.65 var(--body);letter-spacing:.02em;color:var(--ink-2)}
.sell.quiet{padding-block:clamp(64px,8vw,104px)}
.sell.quiet .sell-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start}
.sell.quiet h2{font-size:clamp(34px,4.4vw,64px);letter-spacing:-.025em;max-width:12ch}
.sell.quiet .sell-sub{font-size:clamp(18px,1.6vw,22px)}
.sell.quiet .sell-copy p.first{display:none}
.sell.quiet .sell-copy p{max-width:52ch}
.sell.quiet .sell-copy{padding-top:0}

/* Plan both moves */
.both-head{padding:clamp(96px,14vw,200px) var(--gutter) clamp(48px,6vw,88px)}
.both-head h1{margin:0 0 24px;max-width:10ch;font:400 clamp(44px,7vw,112px)/.98 var(--body);letter-spacing:-.03em}
.both-lede{margin:0;max-width:52ch;font-size:clamp(17px,1.4vw,20px);line-height:1.65;color:var(--ink-2)}
.both-form{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:56px clamp(48px,8vw,140px);padding-block:var(--section);background:var(--black);color:var(--on-ink)}
.both-form .label{color:var(--on-ink-muted);padding:0}
.situation{border:0;margin:0 0 8px;padding:0;display:grid;gap:4px}
.situation legend{margin-bottom:16px}
.choice{display:flex;align-items:center;gap:16px;padding:14px 0;border-top:1px solid #3A3936;cursor:pointer;font:300 18px/1.4 var(--body);color:var(--on-ink)}
.choice:last-child{border-bottom:1px solid #3A3936}
.inquiry .choice input[type=radio]{appearance:none;-webkit-appearance:none;display:inline-block;width:14px;height:14px;margin:0;padding:0;border:1px solid var(--on-ink-muted);border-radius:0;background:transparent;flex:none;transition:background .15s ease,border-color .15s ease}
.inquiry .choice input[type=radio]:checked{background:var(--on-ink);border-color:var(--on-ink)}
.inquiry .choice input[type=radio]:focus-visible{outline:1px solid var(--on-ink);outline-offset:4px}
.both-inquiry .fields{margin-top:28px}
.inquiry select{display:block;width:100%;padding:10px 0 12px;border:0;border-bottom:1px solid #3A3936;border-radius:0;background:transparent;color:var(--on-ink);font:300 19px/1.4 var(--body);outline:0;appearance:none;-webkit-appearance:none;cursor:pointer}
.inquiry select:focus{border-bottom-color:var(--on-ink)}
.inquiry select option{color:var(--ink);background:#fff}
.inquiry .consent a{color:var(--on-ink);text-decoration:none;border-bottom:1px solid var(--on-ink-rule)}
.both-aside{align-self:start;padding-top:6px}
.both-mark svg{height:13px;color:var(--on-ink);margin-bottom:28px}
.both-aside p{margin:0 0 1.1em;max-width:36ch;font-size:17px;line-height:1.7;color:var(--on-ink-muted)}
.both-aside .fine-note{font-size:13px;line-height:1.65;color:var(--on-ink-muted);padding-top:18px;border-top:1px solid var(--on-ink-rule)}

/* The number, as a poster */
.why{position:relative;padding-block:var(--section);overflow:hidden;background:var(--paper);border-top:1px solid var(--rule)}
.why .poster{position:relative;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:32px}
.why .amount{margin:0;font:400 clamp(72px,16vw,260px)/.85 var(--body);letter-spacing:-.05em;font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:-.04em}
.why .amount{container-type:inline-size}
.why .amount output{display:block;font-size:clamp(64px,31cqw,260px)}
.why .amount output[data-len="7"]{font-size:clamp(56px,27cqw,236px)}
.why .amount output[data-len="8"]{font-size:clamp(48px,23.5cqw,210px)}
.why .amount .upto{display:block;margin:0 0 clamp(14px,1.6vw,24px) .3em;font:500 12px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);white-space:normal}
.why .amount small{display:block;margin:28px 0 0 .08em;font:300 clamp(17px,1.5vw,22px)/1.5 var(--body);letter-spacing:0;color:var(--ink-2);white-space:normal;max-width:30ch}
.why .pic{position:relative;aspect-ratio:4/5;max-width:100%;overflow:hidden;background:#16181C;margin-right:calc(-1 * var(--gutter))}
.why .pic img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover}
.why .pic .tag{position:absolute;left:24px;bottom:24px;right:24px;color:#fff;font:300 clamp(18px,1.6vw,24px)/1.3 var(--body);max-width:16ch;text-shadow:0 1px 24px rgba(0,0,0,.4)}
.why .pic .tag b{display:block;font-weight:400;font-size:clamp(26px,2.6vw,40px);margin-bottom:6px;font-variant-numeric:tabular-nums}
.why input[type=range]{-webkit-appearance:none;appearance:none;display:block;width:100%;height:44px;margin:clamp(32px,4vw,56px) 0 0;padding:0;background:transparent;cursor:ew-resize;touch-action:pan-y;--p:30%}
.why input[type=range]:focus-visible{outline-offset:8px}
.why input[type=range]::-webkit-slider-runnable-track{height:1px;background:linear-gradient(90deg,var(--ink) var(--p),var(--rule-2) var(--p))}
.why input[type=range]:active::-webkit-slider-thumb,.why input[type=range]:hover::-webkit-slider-thumb{width:3px;height:40px;margin-top:-19.5px}
.why input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:2px;height:32px;margin-top:-15.5px;background:var(--ink);border:0;border-radius:0;transition:width .15s ease,height .15s ease,margin .15s ease}
.why input[type=range]::-moz-range-track{height:1px;background:var(--rule-2)}
.why input[type=range]::-moz-range-progress{height:1px;background:var(--ink)}
.why input[type=range]::-moz-range-thumb{width:2px;height:32px;background:var(--ink);border:0;border-radius:0}
.why .scale{display:flex;justify-content:space-between;gap:16px;font:400 12px/1 var(--body);letter-spacing:.12em;color:var(--muted);margin-top:12px;font-variant-numeric:tabular-nums}
.why .scale-mid{text-transform:uppercase;letter-spacing:.18em;font-size:11px;color:var(--muted)}
.why h2{margin:clamp(64px,8vw,120px) 0 clamp(28px,3vw,44px);max-width:14ch;font-size:clamp(34px,4.6vw,72px);line-height:1.02;letter-spacing:-.02em}
.why-prose{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px clamp(48px,7vw,120px)}
.why-prose p{margin:0 0 1.2em;font-size:17px;line-height:1.7;color:var(--ink-2);max-width:46ch}
.why-prose p:last-child{margin-bottom:0}
.why-prose b{font-weight:400;color:var(--ink)}
.why-prose b.brass{color:var(--brass-paper)}
.why-prose p.plain{max-width:30ch;font:400 clamp(22px,2vw,30px)/1.3 var(--body);color:var(--ink);letter-spacing:-.01em}
.plain span{display:block;margin-top:14px;font:400 12px/1.6 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.why .note{margin:clamp(40px,5vw,64px) 0 0;padding-top:22px;border-top:1px solid var(--rule);max-width:76ch;font:400 13px/1.7 var(--body);letter-spacing:.02em;color:var(--ink-2)}

/* The ask: one conversation, before anything is signed */
.ask{padding-block:clamp(72px,9vw,128px);border-top:1px solid var(--rule)}
.ask-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px clamp(48px,7vw,120px);align-items:end}
.ask h2{max-width:18ch;font-size:clamp(30px,3.6vw,54px);letter-spacing:-.015em;margin-bottom:20px}
.ask p.body{margin:0;max-width:48ch;font-size:17px;line-height:1.7;color:var(--ink-2)}
.ask-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;justify-self:end}
.ask-tel{text-decoration:none;font:400 15px/1.4 var(--body);color:var(--muted);letter-spacing:.02em}
.ask-tel span{color:var(--ink);font-variant-numeric:tabular-nums;border-bottom:1px solid var(--rule-2);padding-bottom:2px;transition:border-color .2s ease}
.ask-tel:hover span{border-bottom-color:var(--ink)}

/* The advisor */
.person{position:relative;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;background:var(--paper)}
.person .portrait{position:relative;aspect-ratio:4/5;max-width:100%;overflow:hidden;background:#16181C}
.person .portrait img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;filter:saturate(.85)}
.person .portrait .who{position:absolute;left:24px;bottom:24px;color:#fff;font:400 12px/1.8 var(--body);letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 18px rgba(0,0,0,.5)}
.person .portrait .who svg{height:11px;margin-bottom:8px;color:#fff}
.person blockquote{position:relative;z-index:1;margin:0 0 0 calc(-1 * clamp(32px,6vw,120px));padding:clamp(40px,5vw,72px) var(--gutter) clamp(40px,5vw,72px) clamp(32px,4vw,64px);background:var(--paper);font:400 clamp(24px,2.6vw,42px)/1.3 var(--body);letter-spacing:-.01em;text-wrap:balance}
.person blockquote p{margin:0 0 1em;max-width:22ch}
.person blockquote p:last-child{margin:0}

.person.no-portrait{display:block;padding:clamp(72px,9vw,128px) var(--gutter);border-top:1px solid var(--rule)}
.person.no-portrait blockquote{margin:0;padding:0;max-width:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px clamp(48px,7vw,120px);font-size:clamp(26px,3vw,48px);line-height:1.22;letter-spacing:-.015em}
.person.no-portrait blockquote p{max-width:20ch;margin:0}
.person.no-portrait blockquote p:nth-child(2){padding-top:clamp(20px,3vw,48px)}
.person.no-portrait .who{grid-column:1 / -1;display:flex;align-items:center;gap:18px;margin-top:clamp(28px,4vw,56px);padding-top:22px;border-top:1px solid var(--rule);font:400 12px/1.6 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.person.no-portrait .who svg{height:11px;color:var(--ink)}

/* The family: three doors */
.doors{padding-bottom:var(--section);padding-top:clamp(56px,7vw,96px)}
.doors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1vw,16px)}
.door{position:relative;display:block;aspect-ratio:3/4;max-width:100%;overflow:hidden;background:#16181C;color:#FFFFFF;text-decoration:none;isolation:isolate}
.door img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;transition:transform 1.2s ease;transform:scale(1.001)}
.door:hover img{transform:scale(1.04)}
.door::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(6,7,9,.08) 0%,rgba(6,7,9,0) 35%,rgba(6,7,9,.7) 100%)}
.door .in{position:absolute;z-index:2;inset:auto 24px 26px 24px;display:grid;gap:14px}
.door .in svg{height:clamp(30px,3.2vw,46px)}
.door .in span{font:500 12px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.88)}
.door .idx{position:absolute;z-index:2;top:22px;left:24px;font:400 13px/1 var(--body);letter-spacing:.12em;color:rgba(255,255,255,.8);font-variant-numeric:tabular-nums}

/* The lot, then the build: land only */
.phases{padding-block:var(--section);background:var(--paper);border-top:1px solid var(--rule)}
.phases h2{margin:0 0 20px;max-width:14ch;font-size:clamp(40px,6vw,96px);line-height:1;letter-spacing:-.025em}
.phases .lede{margin:0 0 clamp(48px,6vw,88px);max-width:46ch;font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:var(--ink-2)}
.phase{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);gap:16px clamp(32px,5vw,96px);padding:clamp(28px,3.5vw,56px) 0;border-top:1px solid var(--rule)}
.phase:last-of-type{border-bottom:1px solid var(--rule)}
.phase .ph{font:500 12px/1.6 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--muted);padding-top:10px}
.phase .step{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;max-width:58ch}
.phase .step+.step{margin-top:clamp(28px,3vw,44px)}
.phase .step h3{margin:0;font:400 clamp(28px,3.2vw,48px)/1.05 var(--body);letter-spacing:-.02em}
.phase .step h3 span{display:inline-block;margin-right:.5em;color:var(--muted);font-size:.5em;vertical-align:.5em;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.phase .step p{margin:0;font-size:clamp(16px,1.3vw,19px);line-height:1.6;color:var(--ink-2)}
.phases .note{margin:28px 0 0;max-width:62ch;font:400 13px/1.65 var(--body);letter-spacing:.02em;color:var(--ink-2)}

/* Where: names as a poster */
.valley{position:relative;overflow:hidden;background:var(--paper);padding-block:var(--section) calc(var(--section) * .75)}
.valley .names{position:relative;z-index:1;margin:0;padding:0;list-style:none}
.valley .names li{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px clamp(12px,2vw,28px);font:400 clamp(44px,8.4vw,136px)/1 var(--body);letter-spacing:-.035em;border-top:1px solid var(--rule);padding:clamp(10px,1.4vw,22px) 0}
.valley .names li:last-child{border-bottom:1px solid var(--rule)}
.valley .names small{font:400 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.valley .lead{position:relative;z-index:1;margin:0 0 14px;max-width:24ch;font:400 clamp(24px,2.4vw,36px)/1.2 var(--body);letter-spacing:-.01em;color:var(--ink)}
.valley .valley-body{position:relative;z-index:1;margin:0 0 clamp(28px,3vw,44px);max-width:46ch;font-size:17px;line-height:1.7;color:var(--ink-2)}
.valley .ghost{position:absolute;right:-6vw;top:50%;transform:translateY(-50%);height:min(70vh,640px);width:auto;color:var(--ink);opacity:.045;pointer-events:none}

/* Questions */
.faq{padding-block:var(--section);border-top:1px solid var(--rule)}
.faq-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:32px clamp(48px,7vw,120px);align-items:start}
.faq h2{max-width:12ch;font-size:clamp(32px,3.8vw,60px);line-height:1.04;letter-spacing:-.02em;position:sticky;top:calc(96px + var(--top))}
.qa details{border-top:1px solid var(--rule)}
.qa details:last-child{border-bottom:1px solid var(--rule)}
.qa summary{display:flex;align-items:baseline;justify-content:space-between;gap:24px;padding:24px 0;list-style:none;cursor:pointer;font:400 clamp(18px,1.55vw,23px)/1.35 var(--body);letter-spacing:-.005em}
.qa summary::-webkit-details-marker{display:none}
.qa summary i{position:relative;flex:none;width:13px;height:13px;transform:translateY(1px)}
.qa summary i::before,.qa summary i::after{content:"";position:absolute;left:0;right:0;top:6px;height:1px;background:currentColor;transition:transform .35s var(--ease)}
.qa summary i::after{transform:rotate(90deg)}
.qa details[open] summary i::after{transform:rotate(0)}
.qa summary:hover span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.qa details p{margin:0;padding:0 0 28px;max-width:62ch;font-size:17px;line-height:1.7;color:var(--ink-2)}
.qa-more{margin:28px 0 0;font:400 15px/1.5 var(--body);color:var(--muted)}
.qa-more a{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--rule-2);padding-bottom:2px;transition:border-color .2s ease}
.qa-more a:hover{border-bottom-color:var(--ink)}
.qa details::details-content{block-size:0;overflow:hidden;transition:block-size .4s var(--ease),content-visibility .4s allow-discrete}
.qa details[open]::details-content{block-size:auto}

/* Contact: the number is the section */
.contact{padding-block:var(--section);background:var(--black);color:var(--on-ink)}
.contact-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:56px clamp(48px,7vw,120px);align-items:end}
.contact .label{color:var(--on-ink-muted)}
.contact h2{margin:0 0 clamp(32px,4vw,56px);max-width:18ch;font-size:clamp(28px,3.4vw,52px);letter-spacing:-.015em;color:var(--on-ink)}
.contact .tel{display:block;text-decoration:none;font:400 clamp(44px,8vw,132px)/1 var(--body);letter-spacing:-.04em;font-variant-numeric:tabular-nums;color:var(--on-ink);white-space:nowrap;transition:color .25s ease}
.contact .tel:hover{color:#FFFFFF}
.contact .mail{display:inline-block;margin-top:clamp(20px,2.4vw,36px);text-decoration:none;font:300 clamp(20px,2vw,30px)/1.3 var(--body);color:var(--on-ink-muted);border-bottom:1px solid var(--on-ink-rule);padding-bottom:4px;transition:color .2s ease,border-color .2s ease}
.contact .mail:hover{color:var(--on-ink);border-bottom-color:var(--on-ink)}
.contact p.body{margin:clamp(28px,3vw,44px) 0 0;max-width:44ch;font-size:17px;line-height:1.7;color:var(--on-ink-muted)}

.inquiry{position:relative}
.inquiry .fields{display:grid;grid-template-columns:1fr 1fr;gap:8px 32px}
.inquiry .f{display:block;padding-top:18px}
.inquiry .f.wide{grid-column:1 / -1}
.inquiry .f span{display:block;margin-bottom:6px;font:500 12px/1.4 var(--body);letter-spacing:.18em;text-transform:uppercase;color:var(--on-ink-muted)}
.inquiry input,.inquiry textarea{display:block;width:100%;padding:10px 0 12px;border:0;border-bottom:1px solid #3A3936;border-radius:0;background:transparent;color:var(--on-ink);font:300 19px/1.4 var(--body);outline:0;resize:vertical;transition:border-color .2s ease}
.inquiry textarea{min-height:52px}
.inquiry input:focus,.inquiry textarea:focus{border-bottom-color:var(--on-ink)}
.inquiry input:-webkit-autofill{-webkit-text-fill-color:var(--on-ink);transition:background-color 9999s}
.inquiry .send{display:flex;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-top:36px}
.inquiry .status{margin:0;font:400 15px/1.5 var(--body);color:var(--on-ink)}
.inquiry .consent{margin:22px 0 0;font:400 12px/1.6 var(--body);letter-spacing:.04em;color:var(--on-ink-muted)}
.inquiry .hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.inquiry.is-busy button{opacity:.5;pointer-events:none}
.inquiry.is-sent .fields,.inquiry.is-sent .send button{display:none}
.inquiry.is-sent .status{font:400 clamp(22px,2vw,30px)/1.3 var(--body);letter-spacing:-.01em}

/* Phones: call or write, one thumb away, once the hero is behind you */
.mob{position:fixed;left:0;right:0;bottom:0;z-index:39;display:none;grid-template-columns:1fr 1fr;gap:1px;background:var(--on-ink-rule);border-top:1px solid var(--on-ink-rule);padding-bottom:env(safe-area-inset-bottom);transform:translateY(calc(100% + 2px));transition:transform .45s var(--ease)}
.mob a{display:flex;align-items:center;justify-content:center;min-height:54px;background:var(--black);color:var(--on-ink);text-decoration:none;font:500 12px/1 var(--body);letter-spacing:.18em;text-transform:uppercase}
.mob.is-on{transform:none}

/* Footer */
.foot{background:var(--black);color:var(--on-ink);padding:clamp(64px,8vw,112px) var(--gutter) 28px;border-top:1px solid var(--on-ink-rule)}
.foot-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px clamp(48px,8vw,140px);align-items:end}
.lockup svg{display:block;width:min(380px,100%);height:auto;margin:0 auto}
.lk-word{fill:var(--brass-on-ink)}
.lk-word .mod{fill:var(--on-ink)}
.lk-eg{fill:var(--on-ink)}
.family-label{margin:0 0 26px;font:500 12px/1.4 var(--body);letter-spacing:.2em;text-transform:uppercase;color:var(--on-ink-muted)}
.family{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;border-top:1px solid var(--on-ink-rule)}
.family a{display:flex;flex-direction:column;align-items:flex-start;gap:14px;border-top:1px solid transparent;margin-top:-1px;padding:22px 0 0;color:var(--on-ink-muted);text-decoration:none;transition:color .2s ease,border-color .2s ease}
.family a:hover,.family a[aria-current]{color:var(--on-ink);border-top-color:var(--on-ink)}
.family svg{height:34px}
.family span{font:400 12px/1.4 var(--body);letter-spacing:.06em}
.fine{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 32px;margin-top:clamp(56px,7vw,96px);padding-top:22px;border-top:1px solid var(--on-ink-rule);font:400 12px/1.6 var(--body);letter-spacing:.04em;color:var(--on-ink-muted)}
.fine p{margin:0}
.fine a{text-decoration:none}
.fine a:hover{color:var(--on-ink)}

/* Ordinary pages */
.pg{padding-top:clamp(64px,9vw,128px);padding-bottom:var(--section);min-height:60vh}
.page-title{margin:0 0 clamp(32px,4vw,56px);max-width:18ch;font:400 clamp(40px,6vw,88px)/1.02 var(--body);letter-spacing:-.025em}
.prose{max-width:68ch;font-size:17px;line-height:1.75;color:var(--ink-2)}
.prose h2,.prose h3{color:var(--ink);font-weight:400;letter-spacing:-.01em;max-width:none}
.prose h2{font-size:clamp(24px,2.4vw,34px);margin:2em 0 .6em}
.prose h3{font-size:21px;margin:1.8em 0 .5em}
.prose a{text-decoration-thickness:1px;text-underline-offset:4px}
.listing{margin:0;padding:0;list-style:none;max-width:900px}
.listing li{display:flex;justify-content:space-between;gap:24px;padding:20px 0;border-top:1px solid var(--rule);font-size:20px}
.listing li a{text-decoration:none}
.listing li span{font-size:13px;color:var(--muted);letter-spacing:.06em}
.lost-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}

/* Between worlds: the photograph cross-fades, the mark holds its ground. */
@view-transition{navigation:auto}
::view-transition-group(*){animation-duration:.75s;animation-timing-function:cubic-bezier(.3,0,.2,1)}
::view-transition-old(nda-mark),::view-transition-new(nda-mark){height:100%;width:auto;inset-inline-start:0;object-fit:none;object-position:left bottom}
::view-transition-old(root){animation:.45s cubic-bezier(.4,0,1,1) both vt-out}
::view-transition-new(root){animation:.6s cubic-bezier(0,0,.2,1) .1s both vt-in}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0}}
.is-vt .hero h1 svg,.is-vt .rise>*,.is-vt .hero-media img{animation:none}

@media (max-width:1100px){
  .bar{grid-template-columns:auto 1fr auto}
  .bar-worlds{justify-content:center}
  .bar-tel .full{display:none}
  .bar-tel .short{display:inline}
}
@media (max-width:900px){
  .detail,.foot-top,.turn .in,.plan-grid,.why-prose,.why .poster,.person,.decision,.faq-grid,.contact-grid{grid-template-columns:1fr}
  .decision{position:relative;top:auto;min-height:0}
  .ask-grid{grid-template-columns:1fr}
  .phase{grid-template-columns:1fr}
  .sell-grid,.sell.quiet .sell-grid,.both-form{grid-template-columns:1fr}
  .sell h2{max-width:12ch}
  .ask-actions{justify-self:start}
  .turn .in{min-height:0;gap:28px}
  .decision .pic{min-height:0;aspect-ratio:4/3;order:0!important}
  .decision .num{top:16px;right:var(--gutter);color:var(--rule)}
  .decision .txt{padding-top:clamp(40px,8vw,64px)}
  .why .pic{margin-right:0;aspect-ratio:3/2}
  .person blockquote{margin:0;padding:clamp(40px,5vw,72px) var(--gutter)}
  .person.no-portrait blockquote{grid-template-columns:1fr;padding:0}
  .person.no-portrait blockquote p:nth-child(2){padding-top:0}
  .valley .ghost{display:none}
  .contact .tel{white-space:normal}
  .detail-media{min-height:0;aspect-ratio:4/3}
  .doors-grid{grid-template-columns:1fr;gap:12px}
  .door{aspect-ratio:4/3}
  .faq h2{position:static}
}
@media (max-width:620px){
  .nav{padding:20px var(--gutter)}
  .nav .brand svg{height:11px}
  .nav-links{gap:14px}
  .nav-links .sep,.nav-links .contact-link{display:none}
  .nav-links a{font-size:14px}
  .hero{height:min(100svh,780px);min-height:600px}
  .hero::after{background:linear-gradient(180deg,rgba(6,7,9,.48) 0%,rgba(6,7,9,0) 18%,rgba(6,7,9,.1) 40%,rgba(6,7,9,.76) 78%,rgba(6,7,9,.82) 100%)}
  .world-nda .hero-media img{object-position:72% 50%}
  .eyebrow-n{display:none}
  .hero-copy{grid-template-columns:1fr;bottom:28px}
  .hero h1 svg{height:auto;width:min(78vw,320px)}
  .world-luxe .hero h1 svg,.world-land .hero h1 svg{width:min(88vw,400px)}
  .hero-side{display:grid;grid-template-columns:1fr auto;align-items:center;width:100%;gap:18px 16px}
  .hero-side .offer{grid-column:1 / -1;justify-self:start}
  .hero-side .btn{justify-self:start}
  .bar{height:56px;gap:12px}
  .bar-brand svg{height:10px}
  .bar-worlds{gap:12px}
  .bar-worlds a{font-size:13px}
  .bar-end .btn{display:none}
  .why .amount{font-size:clamp(64px,22vw,120px)}
  .inquiry .fields{grid-template-columns:1fr}
  .why .scale-mid{display:none}
  .sell h2{font-size:clamp(40px,13vw,64px)}
  .family{grid-template-columns:1fr;gap:0}
  .family a{flex-direction:row;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--on-ink-rule)}
  .family svg{height:22px}
  .fine{flex-direction:column}
  .valley .names li{font-size:clamp(36px,11vw,56px)}
  .mob{display:grid}
  .hero-side .counter{grid-column:1 / -1}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hero-media img{transform:none}
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
}
@media print{
  .bar,.nav,.hero-media,.doors,.inquiry,.skip{display:none!important}
  .hero{height:auto;min-height:0;background:none;color:var(--ink)}
  .hero-copy{position:static;color:var(--ink)}
  .decision{position:static}
}
