:root{--bg: #fdfcf9;--bg-soft: #f6f3ec;--bg-deep: #1a1916;--ink: #0c0a09;--ink-2: #2b2925;--muted: #5d574e;--muted-2: #8a8478;--rule: #e6e0d3;--rule-strong: #d6cfbf;--primary: #1e3a8a;--primary-ink: #15296b;--r1: oklch(.62 .16 25);--r2: oklch(.7 .14 55);--r3: oklch(.78 .13 90);--r4: oklch(.62 .13 150);--r5: oklch(.55 .15 250);--r6: oklch(.52 .16 305);--serif: "Newsreader", ui-serif, Georgia, "Times New Roman", serif;--sans: "IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: "IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--container: 1180px;--gutter: clamp(20px, 4vw, 48px)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{font-feature-settings:"ss01","cv11";text-wrap:pretty}h1,h2,h3,h4{font-family:var(--serif);font-weight:500;letter-spacing:-.012em;color:var(--ink);margin:0;text-wrap:balance}h1{font-size:clamp(44px,6.4vw,88px);line-height:1.02;letter-spacing:-.02em;font-weight:450}h2{font-size:clamp(30px,3.4vw,44px);line-height:1.1}h3{font-size:clamp(22px,2vw,28px);line-height:1.2}h4{font-size:18px;line-height:1.3;font-family:var(--sans);font-weight:600;letter-spacing:-.005em}p{margin:0;color:var(--ink-2)}a{color:inherit;text-decoration:none}::selection{background:#efca6180}.shell{max-width:var(--container);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter)}.section{padding:clamp(80px,10vw,140px) 0;position:relative}.section-tight{padding:clamp(56px,6vw,80px) 0}.divider{height:1px;background:var(--rule)}.eyebrow{font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:10px}.eyebrow .dot{width:7px;height:7px;border-radius:999px;background:var(--primary);display:inline-block}.sec-num{font-family:var(--mono);font-size:11.5px;letter-spacing:.1em;color:var(--muted)}.nav{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--bg) 88%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .2s ease,background .2s ease}.nav.scrolled{border-bottom-color:var(--rule)}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:64px;gap:24px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--serif);font-size:17px;letter-spacing:-.01em;color:var(--ink);flex-shrink:0;white-space:nowrap}.brand .mark{display:inline-grid;place-items:center;width:46px;height:30px;position:relative}.brand .mark img{width:100%;height:100%;object-fit:contain;display:block}.brand-name{display:flex;gap:6px;align-items:baseline;white-space:nowrap}.brand-name b{font-weight:500;white-space:nowrap}.brand-name span{color:var(--muted);font-family:var(--sans);font-size:13px;white-space:nowrap}@media(max-width:1024px){.brand-name>span{display:none}}.nav-links{display:flex;gap:28px;align-items:center;font-family:var(--sans);font-size:14px}.nav-links a{color:var(--ink-2);transition:color .15s ease}.nav-links a:hover{color:var(--primary)}.nav-cta{font-family:var(--sans);font-size:14px;background:var(--ink);color:var(--bg);padding:9px 16px;border-radius:999px;transition:background .15s ease;flex-shrink:0;white-space:nowrap;line-height:1}.nav-cta:hover{background:var(--primary)}@media(max-width:980px){.nav-links{display:none}}.rail{position:fixed;left:20px;top:50%;transform:translateY(-50%);z-index:40;display:flex;flex-direction:column;gap:14px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--muted-2);pointer-events:auto}.rail a{display:flex;align-items:center;gap:10px;color:var(--muted-2);transition:color .15s ease;position:relative}.rail a .pip{width:18px;height:1px;background:var(--rule-strong);transition:width .2s ease,background .2s ease;flex-shrink:0}.rail a.active{color:var(--ink)}.rail a.active .pip{width:30px;background:var(--primary)}.rail a:hover{color:var(--ink)}.rail .label{text-transform:uppercase;white-space:nowrap;opacity:0;transform:translate(-6px);transition:opacity .18s ease,transform .18s ease;background:color-mix(in oklab,var(--bg) 92%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:3px 8px;border-radius:6px;box-shadow:0 1px 0 var(--rule);pointer-events:none}.rail:hover .label{opacity:1;transform:none}.rail:hover a.active .label{color:var(--primary)}@media(max-width:1240px){.rail{display:none}}.hero{padding:clamp(80px,10vw,140px) 0 clamp(60px,8vw,100px);position:relative}.hero-grid{display:grid;grid-template-columns:1fr;gap:56px;align-items:end}.hero h1 em{font-style:italic;font-weight:450;color:var(--primary);font-family:var(--serif)}.hero .lede{margin-top:28px;max-width:640px;font-size:clamp(17px,1.4vw,19px);line-height:1.55;color:var(--ink-2)}.hero-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:56px;padding-top:28px;border-top:1px solid var(--rule)}.hero-meta .mk{display:flex;flex-direction:column;gap:4px}.hero-meta .mk .k{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero-meta .mk .v{font-size:15px;color:var(--ink)}@media(max-width:700px){.hero-meta{grid-template-columns:1fr;gap:16px}}.rainbow-rule{display:grid;grid-template-columns:repeat(6,1fr);height:3px;border-radius:4px;overflow:hidden;width:84px}.rainbow-rule span{display:block;height:100%}.rainbow-rule span:nth-child(1){background:var(--r1)}.rainbow-rule span:nth-child(2){background:var(--r2)}.rainbow-rule span:nth-child(3){background:var(--r3)}.rainbow-rule span:nth-child(4){background:var(--r4)}.rainbow-rule span:nth-child(5){background:var(--r5)}.rainbow-rule span:nth-child(6){background:var(--r6)}.sec-head{display:grid;grid-template-columns:220px 1fr;gap:48px;align-items:start;margin-bottom:48px}.sec-head .left{display:flex;flex-direction:column;gap:14px}.sec-head .right{max-width:720px}@media(max-width:760px){.sec-head{grid-template-columns:1fr;gap:16px}}.practices{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:14px;overflow:hidden}.practice{background:var(--bg);padding:36px 32px;display:flex;flex-direction:column;gap:16px}.practice .pmark{display:flex;align-items:center;gap:10px}.practice .pmark .ico{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--bg-soft)}.practice .pmark .ico svg{width:16px;height:16px}.practice h3{font-family:var(--serif);font-size:26px}.practice .ptag{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.practice p{color:var(--ink-2)}.practice .lead{display:inline-flex;align-items:center;gap:6px;color:var(--primary);font-size:14px;margin-top:auto;padding-top:8px}.practice .lead svg{width:14px;height:14px;transition:transform .15s ease}.practice:hover .lead svg{transform:translate(3px)}@media(max-width:760px){.practices{grid-template-columns:1fr}}.svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.svc{background:var(--bg);border:1px solid var(--rule);border-radius:12px;padding:28px;display:flex;flex-direction:column;gap:14px;position:relative;overflow:hidden;transition:border-color .2s ease,transform .2s ease}.svc:hover{border-color:var(--rule-strong)}.svc .num{font-family:var(--mono);font-size:11px;letter-spacing:.08em;display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.svc .num .swatch{width:8px;height:8px;border-radius:999px}.svc h3{font-family:var(--serif);font-size:22px;line-height:1.2}.svc p{font-size:14.5px;color:var(--muted)}.svc ul{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.svc ul li{font-family:var(--mono);font-size:11px;letter-spacing:.02em;color:var(--ink-2);background:var(--bg-soft);padding:4px 8px;border-radius:4px}@media(max-width:920px){.svc-grid{grid-template-columns:1fr}}.vibe-panel{background:var(--bg-deep);color:#f4f1ea;border-radius:16px;padding:clamp(40px,5vw,72px);position:relative;overflow:hidden}.vibe-panel h2{color:#f4f1ea}.vibe-panel .lede{color:#c9c2b4;max-width:640px}.vibe-panel .eyebrow{color:#a39c8d}.vibe-panel .eyebrow .dot{background:var(--r2)}.vibe-flow{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;margin-top:40px;align-items:stretch}.vibe-card{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px;display:flex;flex-direction:column;gap:12px}.vibe-card .label{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:#a39c8d}.vibe-card.before .label{color:var(--r1)}.vibe-card.after .label{color:var(--r4)}.vibe-card h4{color:#f4f1ea;font-size:17px}.vibe-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.vibe-card ul li{font-size:13.5px;color:#c9c2b4;display:flex;gap:10px;align-items:flex-start}.vibe-card ul li:before{content:"";width:4px;height:4px;border-radius:999px;background:#fff6;margin-top:8px;flex-shrink:0}.vibe-arrow{display:grid;place-items:center;font-family:var(--mono);font-size:11px;color:#a39c8d;letter-spacing:.1em}.vibe-arrow .arrowline{width:80px;height:1px;background:#ffffff2e;position:relative}.vibe-arrow .arrowline:after{content:"→";position:absolute;right:-8px;top:-10px;color:#a39c8d;font-size:18px}@media(max-width:880px){.vibe-flow{grid-template-columns:1fr}.vibe-arrow{transform:none;padding:4px 0}.vibe-arrow .arrowline{width:1px;height:44px}.vibe-arrow .arrowline:after{content:"↓";inset:auto auto -13px 50%;transform:translate(-50%)}}.vibe-meta{margin-top:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.vibe-meta .mk{display:flex;flex-direction:column;gap:4px}.vibe-meta .mk .k{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#a39c8d}.vibe-meta .mk .v{font-size:14px;color:#f4f1ea}@media(max-width:760px){.vibe-meta{grid-template-columns:1fr;gap:14px}}.writing{background:var(--bg-soft);border-radius:16px;padding:clamp(40px,5vw,64px);position:relative;overflow:hidden}.writing-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:start}.writing h2 em{font-style:italic;color:var(--r6);font-family:var(--serif)}.writing .lede{font-size:17.5px;color:var(--ink-2);margin-top:24px;max-width:540px}.writing-svc{display:grid;gap:0;background:var(--bg);border:1px solid var(--rule);border-radius:12px;overflow:hidden}.writing-svc .row{padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;border-bottom:1px solid var(--rule)}.writing-svc .row:last-child{border-bottom:0}.writing-svc .row h4{font-family:var(--serif);font-size:18px;font-weight:500}.writing-svc .row p{font-size:13.5px;color:var(--muted);margin-top:4px}.writing-svc .row .tag{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}@media(max-width:880px){.writing-grid{grid-template-columns:1fr;gap:32px}}.work-controls{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;align-items:center}.chip{font-family:var(--mono);font-size:12px;letter-spacing:.04em;background:transparent;border:1px solid var(--rule);color:var(--ink-2);padding:7px 12px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .15s ease}.chip .swatch{width:8px;height:8px;border-radius:999px}.chip:hover{border-color:var(--rule-strong)}.chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.chip.on .swatch{box-shadow:0 0 0 2px #ffffff4d}.work-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.work-card{grid-column:span 3;background:var(--bg);border:1px solid var(--rule);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:14px;cursor:pointer;transition:border-color .2s ease,transform .2s ease;position:relative;overflow:hidden}.work-card.featured{grid-column:span 6}.work-card.compact{grid-column:span 2}.work-card:hover{border-color:var(--rule-strong)}.work-card .head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.work-card .tag-row{display:flex;gap:8px;flex-wrap:wrap}.work-card .tag-row .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:inline-flex;align-items:center;gap:6px}.work-card .tag-row .tag .swatch{width:7px;height:7px;border-radius:999px}.work-card h3{font-family:var(--serif);font-size:clamp(20px,2.2vw,28px);line-height:1.15}.work-card .meta{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.05em}.work-card .desc{font-size:14.5px;color:var(--ink-2)}.work-card.featured .desc{font-size:15.5px}.work-card .stat-strip{margin-top:8px;padding-top:18px;border-top:1px dashed var(--rule);display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.work-card .stat-strip .s{display:flex;flex-direction:column;gap:2px}.work-card .stat-strip .s .num{font-family:var(--serif);font-size:24px;color:var(--ink)}.work-card .stat-strip .s .lbl{font-family:var(--mono);font-size:10.5px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.work-card .stack{display:flex;flex-wrap:wrap;gap:4px}.work-card .stack span{font-family:var(--mono);font-size:10.5px;color:var(--ink-2);background:var(--bg-soft);padding:3px 7px;border-radius:4px}@media(max-width:920px){.work-grid{grid-template-columns:1fr}.work-card,.work-card.featured,.work-card.compact{grid-column:span 1}.work-card .stat-strip{grid-template-columns:1fr 1fr}}.credits{margin-top:32px;padding:24px 28px;border:1px dashed var(--rule-strong);border-radius:12px}.credits .ctitle{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:14px}.credits ul{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;column-gap:28px;row-gap:8px}.credits ul li{font-family:var(--serif);font-size:17px;color:var(--ink)}.credits ul li:before{content:"";display:inline-block;width:6px;height:6px;border-radius:999px;background:var(--rule-strong);margin-right:10px;vertical-align:middle}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.about-grid.about-solo{grid-template-columns:minmax(0,1fr)}.bio{background:var(--bg);border:1px solid var(--rule);border-radius:14px;padding:32px;display:flex;flex-direction:column;gap:16px}.bio-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px}.bio-head>div{min-width:0}.bio-head h3{white-space:normal}.bio-avatar{width:64px;height:64px;border-radius:999px;background:var(--bg-soft);display:grid;place-items:center;font-family:var(--serif);font-size:22px;color:var(--accent, var(--ink));position:relative;overflow:hidden;flex-shrink:0}.bio-avatar img{width:100%;height:100%;object-fit:cover;object-position:50% 18%;display:block}.bio-avatar:after{content:"";position:absolute;inset:-4px;border-radius:999px;border:1px solid;border-color:var(--accent, var(--rule-strong));opacity:.5}.bio h3{font-family:var(--serif);font-size:22px}.bio .role{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.bio p{font-size:15px;color:var(--ink-2)}.bio .runs{font-family:var(--mono);font-size:11.5px;color:var(--muted);display:flex;flex-direction:column;gap:4px;border-top:1px solid var(--rule);padding-top:16px;margin-top:4px}.bio .runs .run{display:grid;grid-template-columns:90px 1fr;gap:10px}.bio .runs .run .yrs{color:var(--muted-2)}.bio .runs .run .where{color:var(--ink-2);letter-spacing:.02em}@media(max-width:880px){.about-grid{grid-template-columns:1fr;gap:20px}}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:0;background:var(--rule);border:1px solid var(--rule);border-radius:14px;overflow:hidden}.how .step{background:var(--bg);padding:32px;display:flex;flex-direction:column;gap:12px;position:relative}.how .step .n{font-family:var(--mono);font-size:11px;letter-spacing:.1em;color:var(--muted);display:inline-flex;align-items:center;gap:8px}.how .step .n .dot{width:6px;height:6px;border-radius:999px}.how .step h4{font-family:var(--serif);font-size:22px;font-weight:500}.how .step p{font-size:14.5px;color:var(--ink-2)}@media(max-width:880px){.how{grid-template-columns:1fr}}.contact{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center;padding:clamp(48px,6vw,80px);background:var(--bg-soft);border-radius:18px;position:relative;overflow:hidden}.contact h2 em{font-style:italic;color:var(--primary);font-family:var(--serif)}.contact .lede{margin-top:20px;max-width:480px;color:var(--ink-2)}.contact-card{background:var(--bg);border:1px solid var(--rule);border-radius:14px;padding:28px;display:flex;flex-direction:column;gap:14px}.contact-card .row{display:grid;grid-template-columns:100px 1fr;gap:14px;align-items:baseline}.contact-card .row .k{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.contact-card .row .v{font-size:15.5px;color:var(--ink)}.contact-card .row .v a{color:var(--primary);border-bottom:1px solid color-mix(in oklab,var(--primary) 30%,transparent)}.contact-card .row .v a:hover{border-bottom-color:var(--primary)}@media(max-width:880px){.contact{grid-template-columns:1fr;gap:32px}}@media(max-width:480px){.contact-card .row{grid-template-columns:1fr;gap:4px}.contact-card .row .v{overflow-wrap:anywhere}}.foot{border-top:1px solid var(--rule);padding:32px 0 48px;display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:12px;color:var(--muted);flex-wrap:wrap;gap:16px}.foot .links{display:flex;gap:18px}.foot .links a:hover{color:var(--ink)}.rfp-pill{position:fixed;bottom:24px;left:24px;z-index:30;font-family:var(--mono);font-size:11px;letter-spacing:.04em;background:var(--ink);color:var(--bg);padding:10px 14px;border-radius:999px;cursor:pointer;border:0;display:inline-flex;align-items:center;gap:8px;box-shadow:0 6px 20px #0c0a092e}.rfp-pill .rdot{width:7px;height:7px;border-radius:999px;background:var(--r4)}.rfp-panel{position:fixed;bottom:70px;left:24px;z-index:30;width:min(340px,calc(100vw - 48px));background:var(--bg);border:1px solid var(--rule-strong);border-radius:14px;padding:20px;box-shadow:0 12px 40px #0c0a0929}.rfp-panel h4{font-family:var(--serif);font-size:18px;margin-bottom:4px}.rfp-panel .sub{font-size:12.5px;color:var(--muted);margin-bottom:14px}.rfp-panel ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}.rfp-panel ul li{display:flex;gap:10px;font-size:13.5px;color:var(--ink-2)}.rfp-panel ul li .ck{width:16px;height:16px;border-radius:4px;background:var(--r4);display:grid;place-items:center;flex-shrink:0;margin-top:2px}.rfp-panel ul li .ck svg{width:10px;height:10px;color:#fff}.rfp-panel .close{position:absolute;top:10px;right:10px;background:transparent;border:0;font-family:var(--mono);font-size:11px;color:var(--muted);cursor:pointer;padding:4px 8px}@media(max-width:760px){.rfp-pill{bottom:16px;left:16px}}.fade-in{opacity:0;transform:translateY(8px);transition:opacity .6s ease,transform .6s ease}.fade-in.in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.fade-in{opacity:1;transform:none;transition:none}*{transition-duration:0ms!important;animation-duration:0ms!important}}
