:root{--cover: #14201b;--cover-soft: #1b2a23;--paper: #14201b;--paper-raised: #1b2a23;--ink: #e9e6dc;--ink-soft: #a9b0a6;--brass: #96772e;--brass-text: #c2a96a;--brass-pale: #c2a96a;--bone: #e9e6dc;--bone-dim: #a9b0a6;--line: #263329;--line-dark: #2c3b33;--maxw: 1140px;--ease: cubic-bezier(.2, .7, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scrollbar-color:var(--line-dark) var(--paper)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--paper);color:var(--ink);font-family:Archivo,system-ui,sans-serif;font-weight:300;line-height:1.7;-webkit-font-smoothing:antialiased;overflow-x:hidden}::selection{background:var(--brass);color:var(--cover)}.scene-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}main,footer{position:relative;z-index:1}@media(max-width:900px){.scene-canvas{opacity:.3}}html:not(.js) .scene-canvas,.reduced-motion .scene-canvas{display:none}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 36px}.skip{position:absolute;left:-9999px;top:0;z-index:200;background:var(--brass);color:var(--paper);padding:10px 18px;font-size:12px;letter-spacing:.15em;text-transform:uppercase;text-decoration:none}.skip:focus{left:0}.label{font-size:11px;letter-spacing:.3em;text-transform:uppercase;font-weight:400;color:var(--brass-text)}h1,h2,h3{font-weight:400;letter-spacing:.005em;text-wrap:balance}h1{font-family:Libre Caslon Display,Georgia,serif}h2,h3{font-family:Libre Caslon Text,Georgia,serif}.display{font-family:Libre Caslon Display,Georgia,serif;font-weight:400;font-size:clamp(44px,7.6vw,96px);line-height:1.04}.display em{font-style:italic}.num{font-family:Archivo,sans-serif;font-variant-numeric:tabular-nums lining-nums}.mask-line{display:block;overflow:hidden}.mask-line>.mask-inner{display:block;will-change:transform}header.bar{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:24px 36px;border-bottom:1px solid transparent;transition:background .4s,padding .4s,border-color .4s,transform .5s var(--ease)}.brandmark{font-family:Libre Caslon Text,serif;font-size:19px;letter-spacing:.4em;text-transform:uppercase;text-decoration:none;padding-left:.4em;color:var(--ink);transition:color .4s}.bar nav a{text-decoration:none;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;margin-left:32px;transition:color .3s;color:var(--ink-soft);position:relative;padding-bottom:4px}.bar nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:right;transition:transform .4s var(--ease)}.bar nav a:hover{color:var(--brass-text)}.bar nav a:hover:after{transform:scaleX(1);transform-origin:left}.brandmark{color:var(--bone)}.bar nav a{color:var(--bone-dim)}.bar nav a:hover{color:var(--brass-pale)}header.bar.scrolled{padding:15px 36px;backdrop-filter:blur(8px);background:#14201bf0;border-bottom-color:var(--line-dark)}header.bar.hidden{transform:translateY(-100%)}@media(max-width:640px){.brandmark{font-size:15px}.bar nav a{margin-left:18px;font-size:10.5px;letter-spacing:.16em}.bar nav a.nav-secondary{display:none}}.cover{color:var(--bone);min-height:100svh;display:flex;flex-direction:column;position:relative}.cover-main{flex:1;display:flex;flex-direction:column;justify-content:center;padding-top:120px;padding-bottom:40px;position:relative;z-index:1}.cover .label{color:var(--brass-pale);display:inline-block;margin-bottom:30px}.cover .display{color:var(--bone);max-width:11ch}.cover-rule{width:64px;height:1px;background:var(--brass);margin-bottom:34px;transform-origin:left}.cover .lede{margin-top:36px;font-size:clamp(16px,1.8vw,19px);color:var(--bone-dim);max-width:46ch;font-weight:300}.cover-cta-row{margin-top:42px;display:flex;align-items:center;gap:36px;flex-wrap:wrap}a.cta{display:inline-block;color:var(--cover);background:var(--brass-pale);text-decoration:none;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;padding:17px 34px;white-space:nowrap;position:relative;overflow:hidden}a.cta span{position:relative;z-index:1;transition:color .35s}a.cta:before{content:"";position:absolute;inset:0;background:var(--bone);transform:translateY(101%);transition:transform .45s var(--ease)}a.cta:hover:before{transform:translateY(0)}.cover-mail{color:var(--bone-dim);text-decoration:none;font-size:13px;letter-spacing:.06em;border-bottom:1px solid var(--line-dark);padding-bottom:3px;transition:color .3s,border-color .3s}.cover-mail:hover{color:var(--brass-pale);border-color:var(--brass)}.cover-meta{margin-top:34px;font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;color:var(--bone-dim)}.contents{position:relative;z-index:1;border-top:1px solid var(--line-dark)}.contents-row{display:flex}.contents a{flex:1;text-decoration:none;padding:22px 10px 26px 0;display:flex;align-items:baseline;gap:12px;white-space:nowrap}.contents a+a{border-left:1px solid var(--line-dark);padding-left:22px}.contents .no{font-family:Libre Caslon Text,serif;font-size:13px;color:var(--brass-pale);letter-spacing:.1em}.contents .ti{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--bone-dim);transition:color .3s}.contents a:hover .ti{color:var(--bone)}@media(max-width:760px){.contents-row{flex-wrap:wrap}.contents a{flex:1 1 50%}.contents a:nth-child(3){border-left:none;padding-left:0}}section{padding:116px 0}section+section{border-top:1px solid var(--line)}.sec-head{display:flex;align-items:baseline;gap:20px;margin-bottom:64px}.sec-head .no{font-family:Libre Caslon Text,serif;font-size:15px;color:var(--brass-text);letter-spacing:.1em}.sec-head h2{font-size:clamp(28px,4vw,42px);color:var(--ink)}.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:56px}.pillar .tick{width:26px;height:2px;background:var(--brass);margin-bottom:26px}.pillar .no{font-family:Libre Caslon Text,serif;font-size:14px;color:var(--brass-text);display:block;margin-bottom:8px;letter-spacing:.12em}.pillar .tag{display:block;font-size:10.5px;letter-spacing:.26em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:22px;font-weight:400}.pillar h3{font-size:23px;margin-bottom:14px;color:var(--ink)}.pillar p{font-size:15px;color:var(--ink-soft);line-height:1.75}.pillar-links{margin-top:20px;display:flex;flex-wrap:wrap;gap:10px 18px}.pillar-links a{font-size:11px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;color:var(--brass-text);padding-bottom:3px;border-bottom:1px solid var(--line-dark);transition:color .3s,border-color .3s}.pillar-links a:hover{color:var(--ink);border-color:var(--brass)}@media(max-width:760px){.pillars{grid-template-columns:1fr;gap:44px}}.approach-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:72px;align-items:start}.approach-grid .prose p{font-size:17px;color:var(--ink);margin-bottom:20px}.approach-grid .prose p:last-child{margin-bottom:0}.approach-aside{border-left:2px solid var(--brass);padding-left:32px}.approach-aside .line{display:block;font-size:14.5px;color:var(--ink-soft);padding:13px 0;border-bottom:1px solid var(--line)}.approach-aside .line:last-child{border-bottom:none}.approach-aside .line span{color:var(--brass-text);display:block;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;margin-bottom:2px;font-weight:400}@media(max-width:760px){.approach-grid{grid-template-columns:1fr;gap:44px}}.steps-frame{position:relative}.steps-line{position:absolute;top:4px;left:0;right:0;height:1px;background:var(--brass);transform-origin:left;transform:scaleX(0)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:40px;padding-top:46px}.step{position:relative}.step:before{content:"";position:absolute;top:-46px;left:0;width:9px;height:9px;border-radius:50%;background:var(--paper);border:1.5px solid var(--brass)}.step .no{font-family:Libre Caslon Text,serif;font-size:13px;letter-spacing:.12em;color:var(--brass-text);display:block;margin-bottom:14px}.step h3{font-size:20px;margin-bottom:12px;color:var(--ink)}.step p{font-size:14px;color:var(--ink-soft);line-height:1.7}@media(max-width:860px){.steps{grid-template-columns:1fr 1fr;row-gap:52px}}@media(max-width:520px){.steps-line{display:none}.steps{grid-template-columns:1fr;padding-top:0;gap:0}.step{padding:26px 0 26px 24px;border-left:1px solid var(--line)}.step:before{top:32px;left:-5px}}.contact-inner{display:grid;grid-template-columns:1.15fr 1fr;gap:72px;align-items:start}.contact-inner h2{font-size:clamp(30px,4.6vw,54px);line-height:1.08;margin:20px 0 26px}.contact-mail{display:inline-block;font-family:Libre Caslon Text,serif;font-size:clamp(20px,2.6vw,28px);color:var(--brass-text);text-decoration:none;border-bottom:1px solid var(--brass);padding-bottom:4px;transition:color .3s,border-color .3s}.contact-mail:hover{color:var(--ink);border-color:var(--ink)}.contact-note{font-size:14.5px;color:var(--ink-soft);max-width:36ch;margin-bottom:34px}@media(max-width:760px){.contact-inner{grid-template-columns:1fr;gap:40px}}.form-field{margin-bottom:26px}.form-field label{display:block;font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--brass-text);margin-bottom:9px;font-weight:400}.form-field input,.form-field textarea{width:100%;background:transparent;border:none;border-bottom:1px solid var(--line);color:var(--ink);font-family:Archivo,sans-serif;font-weight:300;font-size:16px;padding:9px 0;transition:border-color .3s;border-radius:0}.form-field input::placeholder,.form-field textarea::placeholder{color:#66716a}.form-field input:focus,.form-field textarea:focus{outline:none;border-bottom-color:var(--brass)}.form-field textarea{resize:vertical;min-height:92px;line-height:1.6}button.send{margin-top:4px;color:var(--cover);background:var(--brass-pale);border:none;cursor:pointer;font-family:Archivo,sans-serif;font-size:11.5px;letter-spacing:.22em;text-transform:uppercase;font-weight:500;padding:17px 38px;position:relative;overflow:hidden}button.send span{position:relative;z-index:1;transition:color .35s}button.send:before{content:"";position:absolute;inset:0;background:var(--bone);transform:translateY(101%);transition:transform .45s var(--ease)}button.send:hover:before{transform:translateY(0)}.form-status{font-size:13px;color:var(--brass-text);margin-top:14px;line-height:1.6}.form-hint{font-size:12.5px;color:var(--ink-soft);margin-top:16px;line-height:1.6}footer{border-top:1px solid var(--line-dark);color:var(--bone);padding:60px 0 70px}.foot-grid{display:flex;justify-content:space-between;gap:44px;flex-wrap:wrap;align-items:flex-start}.foot-brand{font-family:Libre Caslon Text,serif;font-size:17px;letter-spacing:.4em;text-transform:uppercase;color:var(--bone);padding-left:.4em}.reg{font-size:12.5px;color:var(--bone-dim);line-height:1.9;max-width:46ch}.reg strong{color:var(--bone);font-weight:400;font-variant-numeric:tabular-nums}.foot-meta{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--bone-dim);line-height:2.2}.foot-meta a{color:var(--bone-dim);text-decoration:none;transition:color .3s}.foot-meta a:hover{color:var(--brass-pale)}[data-reveal],[data-reveal-group]>*{opacity:1}.js [data-reveal],.js [data-reveal-group]>*{opacity:0;transform:translateY(20px)}.js.reduced-motion [data-reveal],.js.reduced-motion [data-reveal-group]>*{opacity:1;transform:none}.js.reduced-motion .steps-line{transform:none}html:not(.js) .steps-line{transform:none}a:focus-visible,button:focus-visible{outline:2px solid var(--brass);outline-offset:3px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
