:root{--paper:#f4f2ec;--paper-2:#ece9e0;--paper-3:#e4e0d4;--ink:#1b1a16;--ink-soft:#33312a;--muted:#6b675c;--line:#ddd9cd;--line-dark:#3a382f;--accent:#2c5646;--accent-deep:#1f3d33;--accent-wash:#e2e8e0;--ember:#c4622d;--font-display:var(--font-fraunces),"Georgia",serif;--font-body:var(--font-instrument),system-ui,-apple-system,sans-serif;--font-mono:var(--font-plex-mono),ui-monospace,"SFMono-Regular",monospace;--container:1180px;--radius:2px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--accent);color:var(--paper)}.container{max-width:var(--container);margin:0 auto;padding:0 24px}.section{padding:96px 0}.section--tight{padding:64px 0}.section--rule{border-top:1px solid var(--line)}.section--dark{background:var(--ink);color:var(--paper)}.section--wash{background:var(--paper-2)}.eyebrow{font-family:var(--font-mono);font-size:.75rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:flex;align-items:center;gap:12px;margin-bottom:24px}.eyebrow:before{content:"";width:28px;height:1px;background:var(--ember);display:inline-block}.section--dark .eyebrow{color:var(--paper-3)}h1,h2,h3{font-family:var(--font-display);font-weight:480;line-height:1.12;letter-spacing:-.015em}.display-xl{font-size:clamp(2.6rem,6.4vw,4.6rem);max-width:17ch}.display-lg{font-size:clamp(2rem,4.4vw,3.1rem);max-width:22ch}.display-md{font-size:clamp(1.5rem,3vw,2rem)}.lede{font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.55;color:var(--ink-soft);max-width:58ch}.section--dark .lede{color:var(--paper-3)}.prose p+p{margin-top:1.2em}.prose h2{font-size:1.6rem;margin:2.2em 0 .7em}.prose h3{font-size:1.2rem;margin:1.8em 0 .5em}.prose ul{margin:1em 0 1em 1.2em}.prose li+li{margin-top:.4em}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-body);font-size:.95rem;font-weight:500;letter-spacing:.01em;padding:14px 26px;border-radius:var(--radius);border:1px solid var(--ink);transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;cursor:pointer;background:transparent;color:var(--ink)}.btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(27,26,22,.12)}.btn:active{transform:translateY(0);box-shadow:0 2px 6px rgba(27,26,22,.1)}.btn--solid{background:var(--ink);color:var(--paper)}.btn--solid:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.btn--outline:hover{background:var(--ink);color:var(--paper)}.btn--accent{background:var(--accent);border-color:var(--accent);color:var(--paper)}.btn--accent:hover{background:var(--accent-deep);border-color:var(--accent-deep)}.btn--paper{border-color:var(--paper);color:var(--paper)}.btn--paper:hover{background:var(--paper);color:var(--ink)}.btn .arrow{transition:transform .18s ease}.btn:hover .arrow{transform:translateX(3px)}.text-link{color:var(--accent);font-weight:500;border-bottom:1px solid var(--accent-wash);transition:border-color .15s ease,color .15s ease}.text-link:hover{color:var(--accent-deep);border-color:var(--ember)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:48px;gap:48px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:32px;gap:32px}.num-item{border-top:1px solid var(--line);padding:32px 0}.num-item .num{font-family:var(--font-mono);font-size:.8rem;color:var(--ember);letter-spacing:.1em}.num-item h3{font-size:1.35rem;margin:10px 0 12px}.num-item p{color:var(--muted);max-width:60ch}.section--dark .num-item{border-top-color:var(--line-dark)}.section--dark .num-item p{color:var(--paper-3)}.figure{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper-2);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.figure img{width:100%;transition:transform .45s ease}.figure:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 14px 32px rgba(27,26,22,.1)}.figure:hover img{transform:scale(1.025)}.figure figcaption{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:12px 16px;border-top:1px solid var(--line)}.beforeafter{align-items:start}.beforeafter .figure img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:left top}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.site-header--open{background:var(--paper);backdrop-filter:none;-webkit-backdrop-filter:none}.site-header__inner{justify-content:space-between;height:72px}.site-header__inner,.wordmark{display:flex;align-items:center}.wordmark{gap:10px;font-family:var(--font-display);font-size:1.45rem;font-weight:560;letter-spacing:-.01em}.site-nav{display:flex;align-items:center;gap:32px}.site-nav a{font-size:.95rem;color:var(--ink-soft);transition:color .15s ease}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--accent)}.nav-cta{border:1px solid var(--ink);padding:9px 20px;border-radius:var(--radius);color:var(--ink)!important;font-weight:500;display:inline-block;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease!important}.nav-cta:hover{background:var(--ink);color:var(--paper)!important;transform:translateY(-1px);box-shadow:0 4px 12px rgba(27,26,22,.15)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;padding:8px;color:var(--ink);position:relative;z-index:1;isolation:isolate}.menu-toggle svg{display:block}.mobile-menu{display:none}.site-footer{background:var(--ink);color:var(--paper);padding:80px 0 40px}.site-footer a:hover{color:#fff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.4fr;grid-gap:48px;gap:48px;padding-bottom:56px;border-bottom:1px solid var(--line-dark)}.footer-col h4{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--paper-3);margin-bottom:18px}.footer-col ul{list-style:none}.footer-col li+li{margin-top:10px}.footer-col a,.footer-col address{color:var(--paper-3);font-style:normal;font-size:.95rem;line-height:1.7}.footer-bottom{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding-top:32px;font-size:.85rem;color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px}.field label{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:1rem;padding:13px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;color:var(--ink);transition:border-color .15s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent)}.form-status{border-radius:var(--radius);padding:14px 16px;font-size:.95rem}.form-status--ok{background:var(--accent-wash);color:var(--accent-deep);border:1px solid var(--accent)}.form-status--err{background:#f6e3d9;color:#8a3d17;border:1px solid var(--ember)}.hero{padding:96px 0 80px;position:relative;overflow:hidden}.hero>.container{position:relative;z-index:1}.hero-bg{position:absolute;top:0;right:0;bottom:0;width:58%;opacity:.09;pointer-events:none;-webkit-mask-image:linear-gradient(270deg,black 55%,transparent);mask-image:linear-gradient(270deg,black 55%,transparent)}.hero-bg img{width:100%;height:100%;object-fit:cover;object-position:right center}@media (max-width:900px){.hero-bg{width:85%;opacity:.07}}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:32px;gap:32px;border-top:1px solid var(--line);padding-top:40px}.stat .stat-value{font-family:var(--font-display);font-size:2.2rem;color:var(--accent)}.stat .stat-label{font-size:.9rem;color:var(--muted);margin-top:4px}.spot{width:116px;height:116px;flex-shrink:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper-2);overflow:hidden}.spot img{width:100%;height:100%;object-fit:cover}.num-item--media{display:grid;grid-template-columns:minmax(0,68ch) 300px;grid-gap:64px;gap:64px;align-items:center;justify-content:start}.num-item--media>div:first-child{min-width:0}.num-item--media .service-figure{margin:0}.premise-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:40px;gap:40px;margin-top:56px}.premise-card{border-top:1px solid var(--line);padding-top:28px}.premise-card .spot{width:96px;height:96px;margin-bottom:22px}.premise-card h3{font-size:1.35rem}.premise-card .num{font-family:var(--font-mono);font-size:.8rem;color:var(--ember);letter-spacing:.1em}.premise-card p{color:var(--muted);margin-top:10px}.service-row{display:grid;grid-template-columns:1fr 280px;grid-gap:48px;gap:48px;align-items:center}.service-row .figure{margin:0}.thumb-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;margin-top:24px}.thumb-grid a{display:block;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper-2);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.thumb-grid a:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 12px 26px rgba(27,26,22,.1)}.thumb-grid img{width:100%;height:110px;object-fit:cover;display:block;transition:transform .45s ease}.thumb-grid a:hover img{transform:scale(1.06)}.thumb-grid .thumb-label{display:block;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:8px 10px;border-top:1px solid var(--line)}@media (max-width:900px){.premise-grid{grid-template-columns:1fr;gap:32px}.service-row{grid-template-columns:1fr;gap:24px}.num-item--media{grid-template-columns:minmax(0,1fr) 88px;gap:20px;align-items:start;max-width:none}.num-item--media .service-figure{margin-top:34px}.num-item--media .service-figure figcaption{display:none}}.contact-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:48px;gap:48px;align-items:start}@media (max-width:900px){.contact-grid{grid-template-columns:1fr}}.breadcrumb{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}.breadcrumb a:hover{color:var(--accent)}.callout{border-left:2px solid var(--ember);background:var(--paper-2);padding:24px 28px;border-radius:var(--radius)}.testimonial{border-top:1px solid var(--line);padding:32px 0}.testimonial blockquote{font-family:var(--font-display);font-size:1.25rem;line-height:1.5;max-width:52ch}.testimonial cite{display:block;margin-top:14px;font-style:normal;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.skip-link{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:10px 16px;z-index:100}.skip-link:focus{left:12px;top:12px}.post-row{display:flex;gap:36px;align-items:flex-start;justify-content:space-between}.post-row>div:first-child{min-width:0}.post-thumb{flex-shrink:0;width:168px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--paper-2);margin-top:34px;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.post-thumb img{width:100%;aspect-ratio:1;object-fit:cover;display:block}.post-row:hover .post-thumb{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 12px 26px rgba(27,26,22,.1)}@media (max-width:900px){.post-row{gap:20px}.post-thumb{width:104px}}.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}.btn,.figure,.figure img,.post-thumb,.reveal,.thumb-grid a,.thumb-grid img{transition:none}}@media (max-width:900px){.footer-grid,.grid-2,.grid-3{grid-template-columns:1fr}.grid-2{gap:40px}.section{padding:64px 0}.hero{padding:56px 0}.stat-row{grid-template-columns:1fr;gap:24px}}@media (max-width:1080px){.site-nav{gap:18px}.site-nav a{font-size:.88rem}.nav-cta{padding:8px 14px}}@media (max-width:780px){.site-nav{display:none}.menu-toggle,.mobile-menu{display:block}.mobile-menu{position:fixed;inset:0;width:100%;height:100vh;height:100dvh;background:var(--paper);z-index:45;padding:88px 24px 32px;overflow-y:auto;overscroll-behavior:contain}.mobile-menu ul{list-style:none}.mobile-menu a{display:block;font-family:var(--font-display);font-size:1.5rem;line-height:1.25;padding:13px 0;border-bottom:1px solid var(--line)}.mobile-menu .mobile-menu__sub{padding-left:2px}.mobile-menu .mobile-menu__sub a{font-family:var(--font-body);font-size:.95rem;padding:8px 0;border-bottom:none;color:var(--muted)}}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/7452ca4a93358909-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e0ecb571b51ea3b5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/6e8c7cb283336a9d-s.p.woff2) format("woff2");unicode-range:u+00??,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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_fdb222{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_fdb222{--font-fraunces:"Fraunces","Fraunces Fallback"}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/adb45196eddef626-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Instrument Sans;font-style:normal;font-weight:400 700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d0ba92e140f0dc-s.p.woff2) format("woff2");unicode-range:u+00??,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:Instrument Sans Fallback;src:local("Arial");ascent-override:94.42%;descent-override:24.33%;line-gap-override:0.00%;size-adjust:102.74%}.__className_3d9088{font-family:Instrument Sans,Instrument Sans Fallback;font-style:normal}.__variable_3d9088{--font-instrument:"Instrument Sans","Instrument Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.p.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-s.p.woff2) format("woff2");unicode-range:u+00??,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:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_46fe82{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}