:root{--serif:"Cormorant Garamond", "EB Garamond", Georgia, serif;--sans:"Inter", "Helvetica Neue", Helvetica, Arial, sans-serif;--bg:#0d0d0d;--bg-2:#111110;--ink:#e8e2d5;--ink-soft:#b8b1a3;--ink-faint:#6a655c;--rule:#1f1d1a;--rule-2:#2a2722;--accent:#c8a47a;--accent-soft:#9a8165}@supports (color:lab(0% 0 0)){:root{--accent:lab(69.7926% 9.60463 26.668);--accent-soft:lab(55.8958% 6.6866 18.8344)}}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg)}body{background:var(--bg);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px;font-weight:300;line-height:1.6;overflow-x:hidden}::selection{background:var(--accent);color:#0d0d0d}a{color:inherit;text-decoration:none}.shell{width:100%;max-width:1400px;margin:0 auto;padding:0 28px}@media (min-width:720px){.shell{padding:0 56px}}@media (min-width:1100px){.shell{padding:0 88px}}.ambient{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.ambient .grain{opacity:.35;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.92  0 0 0 0 0.89  0 0 0 0 0.83  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:absolute;inset:-10%}.ambient .vignette{background:radial-gradient(120% 80% at 50% 110%,#0000 40%,#0000008c 100%);position:absolute;inset:0}.side-rule{background:var(--rule);z-index:1;width:1px;display:none;position:fixed;top:0;bottom:0}.side-rule.left{left:28px}.side-rule.right{right:28px}@media (min-width:720px){.side-rule{display:block}}@media (min-width:1100px){.side-rule.left{left:44px}.side-rule.right{right:44px}}.tick{background:var(--rule-2);width:9px;height:1px;position:absolute;left:-4px}.tick.dot{background:var(--accent);border-radius:50%;width:5px;height:5px;left:-2px}.strip{z-index:3;border-bottom:1px solid var(--rule);font-family:var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);font-size:11px;display:none;position:relative}@media (min-width:720px){.strip{display:block}}.strip-inner{justify-content:space-between;align-items:center;gap:24px;padding:18px 0;display:flex}.strip .dot{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:10px;display:inline-block;box-shadow:0 0 0 4px #cea26314}.strip .strip-text{display:none}@media (min-width:720px){.strip .strip-text{display:inline}}.strip .strip-right{align-items:center;gap:16px;display:none}@media (min-width:720px){.strip .strip-right{display:flex}}.strip-coords{letter-spacing:.22em}.hero{z-index:2;grid-template-rows:1fr auto auto 1fr;min-height:calc(100svh - 56px);padding:40px 0 32px;display:grid;position:relative}.hero-meta{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);justify-content:space-between;align-items:flex-start;gap:24px;font-size:11px;display:flex}.hero-meta .stack{flex-direction:column;gap:4px;display:flex}.hero-meta .num{color:var(--ink-soft);font-feature-settings:"tnum"}.wordmark-wrap{align-self:end;position:relative}.wordmark{font-family:var(--serif);letter-spacing:-.04em;color:var(--ink);align-items:flex-start;margin:0;font-size:clamp(96px,28vw,380px);font-style:normal;font-weight:500;line-height:.86;display:flex}.wordmark .glyph{display:inline-block}.wordmark .o-mark{color:var(--ink);display:inline-block}.wordmark .accent-ring{color:var(--accent)}.wordmark .reg{font-family:var(--sans);letter-spacing:.3em;color:var(--ink-faint);text-transform:uppercase;align-self:flex-start;margin-top:.6em;margin-left:.2em;font-size:.06em}.tagline-row{border-top:1px solid var(--rule);grid-template-columns:1fr;align-self:end;align-items:end;gap:24px;margin-top:56px;padding-top:28px;display:grid}@media (min-width:720px){.tagline-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:56px}}.tagline{font-family:var(--serif);color:var(--ink-soft);letter-spacing:.005em;max-width:38ch;margin:0;font-size:clamp(26px,3.2vw,44px);font-style:italic;font-weight:500;line-height:1.3}.tagline em{color:var(--ink);font-style:normal}.hero-coord{letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);text-align:right;font-feature-settings:"tnum";font-size:11px}.hero-coord b{color:var(--ink-soft);font-weight:400}.horizon{align-self:end;width:100%;margin-top:32px;display:block}.horizon svg{width:100%;height:56px;display:block}.horizon-labels{font-family:var(--sans);letter-spacing:.22em;color:var(--ink-faint);justify-content:space-between;padding:2px 4px 0;font-size:9px;display:flex}section{z-index:2;border-top:1px solid var(--rule);padding:96px 0;position:relative}@media (min-width:720px){section{padding:140px 0}}.eyebrow{font-family:var(--sans);letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:14px;font-size:11px;display:flex}.eyebrow .num{color:var(--accent-soft);font-feature-settings:"tnum"}.eyebrow .bar{background:var(--rule-2);flex:0 0 32px;height:1px}.section-grid{grid-template-columns:1fr;gap:40px;display:grid}@media (min-width:880px){.section-grid{grid-template-columns:240px 1fr;gap:80px}}.marginalia{writing-mode:vertical-rl;letter-spacing:.32em;text-transform:uppercase;color:var(--ink-faint);font-size:10px;display:none;position:absolute;top:96px;left:8px;transform:rotate(180deg)}@media (min-width:1100px){.marginalia{display:block}}.ornament{width:36px;height:36px;color:var(--accent);opacity:.85}.about-body{font-family:var(--serif);letter-spacing:-.005em;color:var(--ink);text-wrap:pretty;max-width:22ch;font-size:clamp(32px,3.8vw,52px);font-weight:500;line-height:1.35}.about-body p{margin:0}.about-body p+p{margin-top:1em}.about-body .soft{color:var(--ink-soft)}.about-body .accent{color:var(--accent);font-style:italic}.about-meta{border-top:1px solid var(--rule);grid-template-columns:repeat(2,1fr);gap:24px 32px;max-width:520px;margin-top:48px;padding-top:32px;display:grid}@media (min-width:600px){.about-meta{grid-template-columns:repeat(4,1fr)}}.about-meta .cell .k{letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px;font-size:12px}.about-meta .cell .v{font-family:var(--serif);color:var(--ink-soft);font-feature-settings:"tnum";font-size:28px}.approach-grid{grid-template-columns:1fr;gap:32px;display:grid}@media (min-width:720px){.approach-grid{grid-template-columns:repeat(3,1fr);gap:48px}}.approach-card{border-top:1px solid var(--rule-2);padding-top:24px}.approach-card .mark{width:28px;height:28px;color:var(--accent);margin-bottom:24px;display:block}.approach-card h3{font-family:var(--serif);color:var(--ink);letter-spacing:.005em;margin:0 0 12px;font-size:42px;font-style:italic;font-weight:500}.approach-card p{color:var(--ink-soft);margin:0;font-size:17px;line-height:1.65}.contact-wrap{text-align:left}.contact-line{font-family:var(--serif);color:var(--ink-soft);max-width:28ch;margin:0 0 40px;font-size:clamp(26px,3.2vw,38px);font-style:italic;font-weight:500;line-height:1.4}.email{font-family:var(--serif);letter-spacing:-.015em;color:var(--ink);align-items:baseline;gap:18px;font-size:clamp(36px,6vw,72px);font-weight:500;line-height:1;display:inline-flex;position:relative}.email .arrow{font-family:var(--sans);color:var(--accent);font-size:.45em;font-weight:300;transition:transform .4s;display:inline-block;transform:translateY(-.15em)}.email:after{content:"";background:var(--rule-2);transform-origin:0;height:1px;transition:transform .6s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(.2)}.email:hover:after{transform:scaleX(1)}.email:hover .arrow{transform:translate(4px,-.15em)}footer{z-index:2;border-top:1px solid var(--rule);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);padding:32px 0 40px;font-size:11px;position:relative}footer .row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.reveal{opacity:0;transition:opacity 1.1s,transform 1.1s cubic-bezier(.2,.7,.2,1);transform:translateY(14px)}.reveal.in{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transition:none;transform:none}}
