@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-normal.cHuGMAiY.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-normal.DwHjdM4S.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-normal.ece1310W.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-normal.D-yuW59g.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-normal.CxNHBx-q.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-normal.D9elroTD.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-italic.BXuSHrjR.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-italic.RLIThRd4.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-italic.F2ziEGcb.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-italic.C3q834ic.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-italic.CpkvI5hy.woff2) format("woff2-variations");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:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-italic.D2yaqPoE.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-ext-wght-normal.DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-cyrillic-wght-normal.BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-vietnamese-wght-normal.6IgcOCM7.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-ext-wght-normal.DC-KSUi6.woff2) format("woff2-variations");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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-latin-wght-normal.BgDaEnEv.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2) format("woff2-variations");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}:root{--bg: #f4f1e6;--bg-2: #e6e3d4;--bg-warm: #f0ede0;--bg-cool: #e9eddf;--bg-stone: #dde2d4;--bg-paper: #faf7eb;--bg-card: #ffffff;--bg-deep: #142a1f;--bg-deep-2: #1f3a2a;--ink: #0e1812;--ink-2: #243024;--muted: #525549;--rule: #7b8070;--rule-soft: #8a8e80;--accent: #1f3a2a;--accent-deep: #0e1f15;--accent-soft: #b8c9b8;--green: #1f3a2a;--green-deep: #0e1f15;--green-mid: #2f5a3f;--green-soft: #b8c9b8;--green-tint: #e0e8dd;--coral: #d4a259;--coral-deep: #a8782e;--coral-soft: #e9c890;--amber: #d4a259;--amber-deep: #a8782e;--amber-soft: #e9c890;--logo-yellow: #fed000;--logo-black: #111;--rust: #d4a259;--rust-deep: #a8782e;--rust-soft: #e9c890;--highlight: #c66831;--f-display: "Source Serif 4 Variable", "Source Serif 4", Georgia, serif;--f-sans: "Geist Variable", "Geist", ui-sans-serif, system-ui, sans-serif;--f-mono: "JetBrains Mono Variable", "JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--pad-x: clamp(20px, 4vw, 64px);--section-y: clamp(72px, 9vw, 140px);--max-w: 1320px;--topbar-h: 88px;--shadow-card: 0 1px 2px color-mix(in oklab, var(--green-deep) 9%, transparent), 0 12px 30px -20px color-mix(in oklab, var(--green-deep) 40%, transparent)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink)}html{scroll-behavior:smooth}body{font-family:var(--f-sans);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;transition:background-color .55s cubic-bezier(.2,.7,.2,1);overflow-x:clip}body{--page-surface: var(--bg)}body[data-page=services],body[data-page=areas]{background:var(--bg-warm);--page-surface: var(--bg-warm)}body[data-page=about]{background:var(--bg-cool);--page-surface: var(--bg-cool)}body[data-page=work]{background:var(--bg-stone);--page-surface: var(--bg-stone)}body[data-page=resources]{background:var(--bg-paper);--page-surface: var(--bg-paper)}body[data-page=contact]{background:var(--bg);--page-surface: var(--bg)}body[data-page^=blog-]{background:var(--bg-paper);--page-surface: var(--bg-paper)}body[data-page^=area-],body[data-page^=svc-]{background:var(--bg-warm);--page-surface: var(--bg-warm)}.section-dark{background:var(--green-deep);color:var(--bg);position:relative;overflow:hidden}.section-dark.section-dark h2,.section-dark.section-dark h3,.section-dark.section-dark strong{color:var(--bg-card)}.section-dark.section-dark p{color:color-mix(in oklab,var(--bg-card) 88%,transparent)}.section-dark.section-dark h2 em{font-style:italic;color:var(--amber)}.section-dark.section-dark .eyebrow{color:color-mix(in oklab,var(--bg-card) 55%,transparent)}.section-dark.section-dark .text-link{color:var(--bg-card);border-color:color-mix(in oklab,var(--bg-card) 42%,transparent)}.section-dark.section-dark .text-link:hover{color:var(--green-deep);background:var(--bg-card);border-color:var(--bg-card)}.intro-band .wrap{position:relative;z-index:1}.intro-band .intro-block h2:before{content:"";display:block;width:56px;height:3px;background:var(--amber);border-radius:2px;margin-bottom:28px}img{max-width:100%;display:block}a{color:inherit}::selection{background:var(--coral);color:var(--bg-card)}.wrap{max-width:var(--max-w);margin:0 auto;padding-left:var(--pad-x);padding-right:var(--pad-x)}section{padding-top:var(--section-y);padding-bottom:var(--section-y)}.section-tight{padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(40px,5vw,72px)}.section-flush-top{padding-top:0}.section-flush-bottom{padding-bottom:0}.eyebrow{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.svc-card,.svc-step,.blog-card,.svc-sidebar-card,.area-card,.related-card,.svc-aside,.resource-callout{box-shadow:var(--shadow-card)}.topbar{position:sticky;top:0;z-index:30;background:color-mix(in oklab,var(--bg) 92%,transparent);backdrop-filter:saturate(150%) blur(14px);-webkit-backdrop-filter:saturate(150%) blur(14px);border-bottom:1px solid var(--rule-soft);transition:border-color .3s ease,background .35s ease,color .3s ease,box-shadow .35s ease}.topbar.scrolled{border-bottom-color:var(--rule);box-shadow:0 10px 32px -20px color-mix(in oklab,var(--green-deep) 65%,transparent)}body[data-page=home] .topbar:not(.scrolled){background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom-color:transparent;color:var(--bg-card)}body[data-page=home] .topbar:not(.scrolled):before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#0e18128c,#0e181200)}body[data-page=home] .topbar:not(.scrolled) .brand{color:var(--bg-card)}body[data-page=home] .topbar:not(.scrolled) .brand-name small{color:color-mix(in oklab,var(--bg-card) 60%,transparent)}body[data-page=home] .topbar:not(.scrolled) .brand-mark{color:var(--logo-yellow)}body[data-page=home] .topbar:not(.scrolled) .nav-links a{color:color-mix(in oklab,var(--bg-card) 88%,transparent)}body[data-page=home] .topbar:not(.scrolled) .nav-links a:hover,body[data-page=home] .topbar:not(.scrolled) .nav-links a[aria-current=page]{color:var(--bg-card)}body[data-page=home] .topbar:not(.scrolled) .btn-primary{background:transparent;color:var(--bg-card);border-color:color-mix(in oklab,var(--bg-card) 70%,transparent)}body[data-page=home] .topbar:not(.scrolled) .btn-primary:hover{background:var(--amber);border-color:var(--amber);color:var(--green-deep)}.topbar-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);cursor:pointer}.brand-mark{height:32px;display:flex;align-items:center;color:var(--logo-black)}.brand-mark svg{height:100%;width:auto;display:block}.brand-name{font-family:var(--f-display);font-size:21px;letter-spacing:-.01em;font-weight:500}.brand-name small{display:block;font-family:var(--f-mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-top:1px;font-weight:400}.nav-links{display:flex;gap:36px;list-style:none;margin:0;padding:0;font-size:16.5px;font-weight:500}.nav-links a{text-decoration:none;color:var(--ink-2);position:relative;padding:10px 0;cursor:pointer}@media(min-width:801px){:root{--topbar-h: 110px}.topbar-row{padding:25px 0}.topbar .brand{gap:14px}.topbar .brand-mark{height:40px}.topbar .brand-name{font-size:26px}.topbar .brand-name small{font-size:11.5px;margin-top:2px}.nav-links{gap:44px;font-size:20px}.nav-links a{padding:13px 0}.topbar-row .btn-primary{font-size:16px;padding:14px 26px}}.nav-links a:hover{color:var(--green-deep)}.nav-links a[aria-current=page]{color:var(--green-deep);font-weight:500}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-2px;height:2px;background:var(--coral);transition:right .25s ease}.nav-links a:hover:after{right:0}.nav-links a[aria-current=page]:after{right:0;transition:none}.nav-toggle{display:none;background:transparent;border:1.5px solid var(--ink);border-radius:999px;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;color:var(--ink);padding:0;transition:border-color .15s ease,background .15s ease,color .15s ease}.nav-toggle:hover{background:var(--green);border-color:var(--green);color:var(--bg-card)}.nav-toggle svg{width:18px;height:18px}.nav-toggle .icon-close,.nav-toggle[aria-expanded=true] .icon-open{display:none}.nav-toggle[aria-expanded=true] .icon-close{display:block}body[data-page=home] .topbar:not(.scrolled) .nav-toggle{border-color:color-mix(in oklab,var(--bg-card) 55%,transparent);color:var(--bg-card)}body[data-page=home] .topbar:not(.scrolled) .nav-toggle:hover{background:var(--amber);border-color:var(--amber);color:var(--green-deep)}.mobile-menu{position:fixed;inset:0;background:var(--bg);z-index:25;padding:110px var(--pad-x) 48px;display:none;flex-direction:column;gap:4px;overflow-y:auto}.mobile-menu.open{display:flex}.mobile-menu a{font-family:var(--f-display);font-size:clamp(28px,6vw,44px);font-weight:400;line-height:1.1;color:var(--ink);text-decoration:none;padding:18px 0;border-bottom:1px solid var(--rule-soft);cursor:pointer;letter-spacing:-.015em}.mobile-menu a[aria-current=page]{color:var(--green-deep)}.mobile-menu a[aria-current=page]:not(.mobile-cta):after{content:" ·";color:var(--coral)}.mobile-menu .mobile-cta:after{content:none}.mobile-menu .mobile-cta{margin-top:40px;align-self:stretch;justify-content:center;font-family:var(--f-sans);font-size:17px;font-weight:500;line-height:1;letter-spacing:0;color:var(--bg-card);padding:18px 28px;border-bottom:none}.mobile-menu .mobile-cta:hover{color:var(--bg-card)}.mobile-menu .mobile-wa{display:inline-flex;align-items:center;justify-content:center;gap:11px;align-self:stretch;margin-top:12px;padding:17px 24px;border-radius:999px;border-bottom:none;background:#17833e;color:#fff;font-family:var(--f-sans);font-size:16px;font-weight:600;line-height:1;letter-spacing:0;text-decoration:none}.mobile-menu .mobile-wa:hover{background:#146c31;color:#fff}.mobile-menu .mobile-wa .mobile-wa-icon{display:inline-flex}.mobile-menu .mobile-wa svg{width:22px;height:22px;display:block}.wa-fab{position:fixed;right:clamp(16px,3vw,28px);bottom:clamp(16px,3vw,28px);z-index:20;display:inline-flex;align-items:center;gap:10px;padding:13px 20px 13px 16px;border-radius:999px;background:#17833e;color:#fff;text-decoration:none;font-family:var(--f-sans);font-size:15px;font-weight:600;line-height:1;box-shadow:0 8px 24px -6px #0e181280,0 2px 6px #0e181240;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.wa-fab:hover{background:#146c31;transform:translateY(-2px);box-shadow:0 12px 30px -6px #0e18128c,0 3px 8px #0e18124d}.wa-fab:focus-visible{outline:3px solid var(--amber);outline-offset:3px}.wa-fab .wa-fab-icon{display:inline-flex}.wa-fab .wa-fab-icon svg{width:26px;height:26px;display:block}@media(max-width:640px){.wa-fab{padding:0;width:56px;height:56px;justify-content:center}.wa-fab .wa-fab-label{display:none}}@media(prefers-reduced-motion:reduce){.wa-fab{transition:none}.wa-fab:hover{transform:none}}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:999px;font-family:var(--f-sans);font-size:14.5px;font-weight:500;text-decoration:none;cursor:pointer;border:1.5px solid transparent;transition:transform .18s cubic-bezier(.2,.7,.2,1),background .22s ease,color .22s ease,border-color .22s ease,box-shadow .22s ease;white-space:nowrap}.btn-primary{background:var(--green);color:var(--bg-card);border-color:var(--green)}.btn-primary:hover{background:var(--coral);border-color:var(--coral);color:var(--bg-card);transform:translateY(-2px);box-shadow:0 8px 24px -8px color-mix(in oklab,var(--coral) 60%,transparent)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--green);border-color:var(--green);color:var(--bg-card);transform:translateY(-2px)}.figure{position:relative;background:var(--bg-2);border-radius:3px;overflow:hidden;isolation:isolate}.figure-stripes{position:absolute;inset:0;background-image:repeating-linear-gradient(135deg,color-mix(in oklab,var(--accent-deep) 14%,transparent) 0 1px,transparent 1px 16px)}.figure-tag{position:absolute;left:14px;bottom:14px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2);background:var(--bg-card);padding:5px 9px;border-radius:2px}.figure-tag .dim{color:var(--muted);margin-left:6px}.hero{padding:0}.hero-bleed{position:relative;min-height:78vh;display:flex;align-items:flex-end;padding:0 0 clamp(48px,6vw,88px);margin-top:calc(-1 * var(--topbar-h, 72px));padding-top:calc(var(--topbar-h, 72px) + clamp(64px,10vw,160px));overflow:hidden}.hero-bleed-bg{position:absolute;inset:0;z-index:0}.hero-bleed-bg img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}.hero-bleed-overlay{position:absolute;inset:0;background:radial-gradient(58% 52% at 47% 62%,#0e181285,#0e181257 40%,#0e181200 76%),linear-gradient(180deg,#0e181299,#0e181257 30%,#0e181270 50%,#0e1812a8)}.hero-bleed-content{position:relative;z-index:1;color:var(--bg-card);display:flex;flex-direction:column;gap:24px;max-width:900px}.hero-bleed-content h1{font-family:var(--f-display);font-weight:400;font-size:clamp(44px,6.4vw,108px);line-height:.95;letter-spacing:-.03em;margin:0;color:var(--bg-card);text-wrap:balance;text-shadow:0 1px 18px rgba(14,24,18,.42),0 1px 3px rgba(14,24,18,.45)}.hero-bleed-content h1 em{font-style:italic;color:var(--amber)}.hero-bleed-lede{font-size:clamp(17px,1.5vw,20px);line-height:1.55;color:color-mix(in oklab,var(--bg-card) 90%,transparent);margin:0;max-width:56ch;text-shadow:0 1px 12px rgba(14,24,18,.5)}.hero-crumb{display:flex;align-items:center;gap:14px;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklab,var(--bg-card) 75%,transparent)}.hero-crumb .sep{color:color-mix(in oklab,var(--bg-card) 40%,transparent)}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.hero-credstrip-section{padding-top:clamp(32px,4vw,56px);padding-bottom:clamp(32px,4vw,56px)}.btn-amber,.hero-bleed .btn-primary{background:var(--amber);color:var(--green-deep);border-color:var(--amber)}.btn-amber:hover,.hero-bleed .btn-primary:hover{background:var(--amber-deep);border-color:var(--amber-deep);color:var(--bg-card);transform:translateY(-2px);box-shadow:0 10px 28px -10px color-mix(in oklab,var(--amber) 70%,transparent)}.btn-ghost-light{background:transparent;color:var(--bg-card);border-color:color-mix(in oklab,var(--bg-card) 55%,transparent)}.btn-ghost-light:hover{background:var(--bg-card);color:var(--green-deep);border-color:var(--bg-card);transform:translateY(-2px)}@media(max-width:800px){.hero-bleed{min-height:80vh;padding-top:calc(var(--topbar-h, 72px) + 64px);padding-bottom:64px}.hero-bleed-content h1{font-size:clamp(44px,13vw,80px)}}.hero-bleed--page{min-height:clamp(480px,64vh,760px);margin-top:0;padding-top:clamp(88px,12vw,160px);padding-bottom:clamp(40px,5vw,72px)}.hero-bleed--page .hero-bleed-bg img{filter:saturate(.9) sepia(.07) contrast(1.02)}.hero-bleed--page .hero-bleed-overlay{background:radial-gradient(56% 56% at 36% 70%,#0e181280,#0e181252 42%,#0e181200 78%),linear-gradient(180deg,#0e181233,#0e18121f 35%,#0e181273 68%,#0e1812bd)}.hero-bleed--page .hero-bleed-content h1{font-size:clamp(40px,5.6vw,88px)}.hero-bleed--page .eyebrow{color:color-mix(in oklab,var(--bg-card) 70%,transparent)}.hero-bleed--page .btn-ghost{background:transparent;color:var(--bg-card);border-color:color-mix(in oklab,var(--bg-card) 55%,transparent)}.hero-bleed--page .btn-ghost:hover{background:var(--bg-card);color:var(--green-deep);border-color:var(--bg-card)}@media(max-width:800px){.hero-bleed--page{min-height:66vh;padding-top:96px;padding-bottom:48px}.hero-bleed--page .hero-bleed-overlay{background:radial-gradient(72% 58% at 42% 52%,#0e181275,#0e18124d 45%,#0e181200 80%),linear-gradient(180deg,#0e18124d,#0e181252 30%,#0e181280,#0e1812c2)}}.cred-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.cred{display:grid;gap:8px;text-align:center;justify-items:center}.cred .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.cred .v{font-family:var(--f-display);font-size:clamp(32px,3.4vw,48px);letter-spacing:-.025em;line-height:1;color:var(--green);font-weight:400}.cred .v small{font-family:var(--f-sans);font-size:13px;color:var(--muted);letter-spacing:0;margin-left:8px;font-weight:400;display:inline-block;vertical-align:middle}.cred:nth-child(2) .v{color:var(--coral-deep)}.intro-block{display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(40px,6vw,96px);align-items:start}.intro-block h2{font-family:var(--f-display);font-weight:400;font-size:clamp(32px,3.6vw,48px);line-height:1.05;letter-spacing:-.018em;margin:0}.intro-block-body p{font-size:17px;line-height:1.65;color:var(--ink-2);margin:0 0 20px;max-width:60ch}.intro-block-body p:last-of-type{margin-bottom:28px}.text-link{display:inline-flex;align-items:center;gap:9px;font-family:var(--f-sans);font-size:14px;font-weight:500;color:var(--accent-deep);text-decoration:none;cursor:pointer;background:none;border:1.5px solid color-mix(in oklab,var(--accent-deep) 30%,transparent);border-radius:999px;padding:9px 18px;transition:color .2s ease,background .22s ease,border-color .22s ease,transform .18s cubic-bezier(.2,.7,.2,1)}.text-link:hover{color:var(--bg-card);background:var(--accent-deep);border-color:var(--accent-deep);transform:translateY(-1px)}.text-link svg{transition:transform .2s ease;color:currentColor}.text-link:hover svg{transform:translate(3px)}.testimonials{background:var(--green-tint);border-top:1px solid var(--rule-soft);border-bottom:1px solid var(--rule-soft)}.test-list{display:grid;grid-template-columns:repeat(3,1fr);gap:0 clamp(32px,5vw,64px)}.test{margin:0;padding:44px 0 0;border-top:4px solid var(--coral);display:flex;flex-direction:column}.test p{font-family:var(--f-display);font-size:clamp(19px,1.7vw,23px);line-height:1.32;letter-spacing:-.012em;color:var(--ink);margin:0 0 28px;text-wrap:pretty;flex:1}.test cite{display:block;font-style:normal;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);padding-top:20px;border-top:1px solid var(--rule-soft);line-height:1.7}.test cite strong{display:block;font-family:var(--f-sans);font-size:13.5px;font-weight:500;color:var(--green-deep);text-transform:none;letter-spacing:0;margin-bottom:2px}.cta-band{background:var(--green-deep);color:var(--bg);padding:clamp(56px,7vw,96px) 0;position:relative;overflow:hidden}.cta-band h2:before{content:"";display:block;width:56px;height:3px;background:var(--amber);border-radius:2px;margin-bottom:28px}.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap;position:relative;z-index:1}.cta-band h2{font-family:var(--f-display);font-weight:400;font-size:clamp(36px,4.4vw,62px);letter-spacing:-.025em;line-height:1.02;margin:0;color:var(--bg)}.cta-band h2 em{font-style:italic;color:var(--coral-soft)}.cta-band .btn-primary{background:var(--bg-card);color:var(--green-deep);border-color:var(--bg-card)}.cta-band .btn-primary:hover{background:var(--coral);color:var(--bg-card);border-color:var(--coral)}.cta-band--coral{background:var(--coral)}.cta-band--coral h2:before{background:var(--green-deep)}.cta-band--coral h2 em{color:var(--green-deep)}.cta-band--coral .btn:hover{background:var(--green-deep)!important;color:var(--bg-card)!important;border-color:var(--green-deep)!important}.page-head{padding-top:clamp(48px,7vw,96px);padding-bottom:clamp(32px,5vw,64px);border-bottom:1px solid var(--rule)}.page-head h1{font-family:var(--f-display);font-weight:400;font-size:clamp(48px,8vw,112px);line-height:.92;letter-spacing:-.03em;margin:16px 0 0}.page-head h1 em{font-style:italic;color:#9a6a26}.page-head .lede{font-size:18px;line-height:1.6;color:var(--ink-2);max-width:56ch;margin:24px 0 0}.page-head--hub{padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(28px,4vw,44px)}.page-head--hub h1{font-size:clamp(40px,6vw,80px)}.svc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(20px,2.4vw,32px);padding:clamp(24px,4vw,48px) 0 clamp(48px,6vw,80px)}.svc-card{display:flex;flex-direction:column;background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:4px;overflow:hidden;text-decoration:none;color:inherit;cursor:pointer;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s ease,border-color .22s ease}.svc-card:hover{transform:translateY(-3px);border-color:var(--rule);box-shadow:0 16px 40px -18px color-mix(in oklab,var(--green-deep) 50%,transparent)}.svc-card-media{position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--bg-2)}.svc-card-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.svc-card:hover .svc-card-media img{transform:scale(1.04)}.svc-card-media--product{background:#fff}.svc-card-media--product img{object-fit:contain;padding:18px;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.svc-card:hover .svc-card-media--product img{transform:scale(1.05)}.svc-card-num{position:absolute;top:14px;left:14px;font-family:var(--f-display);font-size:22px;line-height:1;color:var(--bg-card);background:color-mix(in oklab,var(--green-deep) 78%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:6px 14px 7px;border-radius:999px;letter-spacing:-.005em;font-weight:400}.svc-card-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:12px;flex:1}.svc-card-body h2{font-family:var(--f-display);font-weight:400;font-size:clamp(22px,2vw,28px);line-height:1.1;letter-spacing:-.015em;margin:0;color:var(--ink)}.svc-card-body p{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0;flex:1}.svc-card-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-sans);font-size:14px;font-weight:500;color:var(--green-deep);margin-top:4px;transition:gap .2s ease,color .2s ease}.svc-card:hover .svc-card-link{gap:14px;color:#80551d}.svc-card:hover .svc-card-link svg{color:#80551d}@media(max-width:800px){.svc-grid{grid-template-columns:1fr;gap:16px}}a:focus-visible,button:focus-visible,.svc-card:focus-visible,summary:focus-visible,.chip:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:3px}.field input:focus-visible,.field textarea:focus-visible,.tpo-input:focus-visible{outline:none}.skip-link{position:absolute;top:0;left:var(--pad-x);transform:translateY(-110%);background:var(--green-deep);color:var(--bg-card);padding:14px 22px;text-decoration:none;font-family:var(--f-sans);font-size:14px;font-weight:500;border-radius:0 0 6px 6px;z-index:100;transition:transform .15s ease}.skip-link:focus{transform:translateY(0);outline:2px solid var(--coral);outline-offset:2px}.svc-entry{display:grid;grid-template-columns:200px 1fr;gap:clamp(32px,5vw,80px);padding:clamp(48px,6vw,80px) 0;border-bottom:1px solid var(--rule-soft)}.svc-entry:first-child{border-top:1px solid var(--rule-soft)}.svc-num{font-family:var(--f-display);font-size:clamp(48px,6.5vw,88px);letter-spacing:-.04em;color:var(--coral);text-transform:none;margin-bottom:8px;line-height:.9;font-weight:400}.svc-thumb{margin-top:16px;aspect-ratio:4/3;background:var(--bg-2);border-radius:3px;overflow:hidden;position:relative;isolation:isolate}@media(max-width:1040px){.svc-thumb{display:none}}.svc-entry h2{font-family:var(--f-display);font-weight:400;font-size:clamp(28px,3.2vw,44px);line-height:1.05;letter-spacing:-.02em;margin:0 0 24px}.svc-entry p{font-size:16px;line-height:1.65;color:var(--ink-2);margin:0 0 20px;max-width:62ch}.svc-entry ul{margin:8px 0 0;padding:20px 0 0;list-style:none;display:grid;gap:8px;border-top:1px solid var(--rule-soft)}.svc-entry li{font-family:var(--f-mono);font-size:12px;letter-spacing:.06em;color:var(--muted);padding-left:16px;position:relative}.svc-entry li:before{content:"";position:absolute;left:0;top:8px;width:7px;height:1px;background:var(--accent)}.svc-detail{padding:clamp(48px,6vw,80px) 0}.svc-detail p{font-size:17px;line-height:1.65;color:var(--ink-2);margin:0 0 20px;max-width:68ch}.svc-what{margin-top:48px;padding-top:32px;border-top:1px solid var(--rule-soft);display:grid;grid-template-columns:160px 1fr;gap:clamp(24px,4vw,56px);align-items:start}.svc-what h3{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:4px 0 0}.svc-what ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.svc-what li{font-size:16px;color:var(--ink-2);padding-left:18px;position:relative;line-height:1.55}.svc-what li:before{content:"";position:absolute;left:0;top:10px;width:7px;height:1px;background:var(--accent)}@media(max-width:640px){.svc-what{grid-template-columns:1fr;gap:16px}}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(48px,7vw,112px);align-items:start}.about-figure{position:sticky;top:96px;overflow:hidden;border-radius:3px}.about-copy h2{font-family:var(--f-display);font-weight:400;font-size:clamp(36px,4.4vw,60px);line-height:1.02;letter-spacing:-.02em;margin:0 0 32px}.about-copy p{font-size:17px;line-height:1.65;color:var(--ink-2);margin:0 0 20px;max-width:58ch}.signature{margin-top:32px;display:flex;align-items:center;gap:16px;font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;padding-top:28px;border-top:1px solid var(--rule-soft)}.signature .ink{font-family:var(--f-display);font-size:26px;font-style:italic;color:var(--rust-deep);letter-spacing:0;text-transform:none}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--rule);margin-top:clamp(48px,6vw,80px)}.value{padding:32px 32px 32px 0;border-right:1px solid var(--rule-soft)}.value:last-child{border-right:none;padding-right:0}.value:not(:first-child){padding-left:32px}.value h3{font-family:var(--f-display);font-weight:400;font-size:clamp(20px,2vw,26px);letter-spacing:-.01em;margin:0 0 12px}.value p{font-size:15px;line-height:1.65;color:var(--ink-2);margin:0}.val-mark{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--rust);margin-bottom:16px;display:block}.faq-section{border-top:1px solid var(--rule)}.faq{border-bottom:1px solid var(--rule-soft)}.faq-summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto;gap:24px;padding:22px 0;font-family:var(--f-display);font-size:clamp(19px,1.7vw,23px);letter-spacing:-.01em;line-height:1.25;align-items:center}.faq-summary::-webkit-details-marker{display:none}.faq-toggle{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;color:var(--muted);border:1px solid var(--rule);transition:transform .25s ease,color .2s ease,border-color .2s ease;flex-shrink:0}.faq[open] .faq-toggle{transform:rotate(180deg);color:var(--accent-deep);border-color:var(--accent-deep)}.faq-body{color:var(--ink-2);font-size:16px;line-height:1.65;max-width:68ch;padding:0 0 24px}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}.gi{aspect-ratio:1}.gi-1{grid-column:span 7;grid-row:span 2;aspect-ratio:auto;min-height:320px}.gi-2,.gi-3{grid-column:span 5;aspect-ratio:16/10}.gi-4,.gi-5,.gi-6{grid-column:span 4}.gi-7,.gi-8,.gi-9{grid-column:span 4;aspect-ratio:16/10}.gallery-quote{grid-column:1 / -1;padding:clamp(32px,4vw,56px) 0;display:flex;align-items:center;gap:clamp(24px,4vw,56px)}.gallery-quote:before{content:"";flex-shrink:0;width:clamp(40px,5vw,64px);height:1px;background:var(--rust)}.gallery-quote p{font-family:var(--f-display);font-size:clamp(20px,2.2vw,28px);letter-spacing:-.015em;line-height:1.25;color:var(--ink);margin:0;max-width:52ch}.gallery-quote p em{font-style:italic;color:#80551d}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:start}.area-towns{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--rule)}.area-towns li{display:flex;align-items:baseline;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--rule-soft);font-size:16px}.area-towns li .miles{font-family:var(--f-mono);font-size:11.5px;color:var(--muted);letter-spacing:.04em}.area-towns li.primary{color:var(--accent-deep);font-weight:500}.area-map{aspect-ratio:1;position:relative;background:var(--bg-2);border-radius:3px;overflow:hidden}.map-grid{position:absolute;inset:0;background-image:linear-gradient(to right,color-mix(in oklab,var(--accent-deep) 10%,transparent) 1px,transparent 1px),linear-gradient(to bottom,color-mix(in oklab,var(--accent-deep) 10%,transparent) 1px,transparent 1px);background-size:40px 40px}.pin{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid var(--bg-card);transform:translate(-50%,-50%);box-shadow:0 0 0 5px color-mix(in oklab,var(--accent) 18%,transparent)}.pin.leeds{width:16px;height:16px;background:var(--accent-deep);box-shadow:0 0 0 9px color-mix(in oklab,var(--accent) 20%,transparent)}.pin .pin-label{position:absolute;left:16px;top:-3px;font-family:var(--f-mono);font-size:10.5px;color:var(--ink);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.pin.leeds .pin-label{font-family:var(--f-display);font-size:15px;text-transform:none;letter-spacing:-.01em;top:-6px}.radius{position:absolute;left:50%;top:55%;width:70%;padding-bottom:70%;border:1px dashed color-mix(in oklab,var(--accent-deep) 30%,transparent);border-radius:50%;transform:translate(-50%,-50%);height:0}.contact-hero{background:var(--accent-deep);color:var(--bg);padding-top:clamp(40px,5vw,64px)}.contact-hero .eyebrow{color:color-mix(in oklab,var(--bg) 70%,transparent);display:block;margin-bottom:16px}.contact-hero h1{font-family:var(--f-display);font-weight:400;font-size:clamp(44px,6vw,80px);line-height:.92;letter-spacing:-.03em;margin:0 0 clamp(20px,2.4vw,30px);color:var(--bg)}.contact-hero h1 em{font-style:italic;color:var(--accent-soft)}.contact-hero-call{display:inline-flex;align-items:baseline;gap:16px;flex-wrap:wrap;text-decoration:none;color:var(--bg);padding:6px 0}.contact-hero-call .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-soft);align-self:center}.contact-hero-call .num{font-family:var(--f-display);font-size:clamp(30px,3.6vw,44px);letter-spacing:-.01em;line-height:1.05}.contact-hero-call svg{align-self:center;color:var(--accent-soft);transition:transform .2s ease}.contact-hero-call:hover .num{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:5px}.contact-hero-call:hover svg{transform:translate(3px)}.contact-jump{display:none}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(40px,6vw,96px);padding-top:clamp(36px,4.5vw,64px);padding-bottom:var(--section-y)}#quote-form{scroll-margin-top:calc(var(--topbar-h, 88px) + 16px)}.contact-info{display:grid;gap:28px;align-content:start}.contact-info .row{display:grid;gap:6px;padding-bottom:20px;border-bottom:1px solid color-mix(in oklab,var(--bg) 45%,transparent)}.contact-info .row:last-child{border:none;padding-bottom:0}.contact-info .k{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in oklab,var(--bg) 70%,transparent)}.contact-info .v{font-family:var(--f-display);font-size:24px;letter-spacing:-.01em;line-height:1.2}.contact-info .v a{text-decoration:none}.contact-info .v a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.contact-info .v.small{font-size:16px;font-family:var(--f-sans);line-height:1.5}.contact-form{background:color-mix(in oklab,var(--bg-card) 90%,transparent);color:var(--ink);border-radius:3px;padding:clamp(28px,3.5vw,44px);display:grid;gap:20px}.field{display:grid;gap:6px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field label{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}.field input,.field textarea{font-family:var(--f-sans);font-size:16px;color:var(--ink);background:transparent;border:none;border-bottom:1px solid var(--rule);padding:10px 0;border-radius:0;outline:none;transition:border-color .2s ease;width:100%}.field textarea{resize:vertical;min-height:88px}.field input:focus,.field textarea:focus{border-bottom-color:var(--accent-deep)}.field.invalid input,.field.invalid textarea{border-bottom-color:var(--highlight)}.field .err{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.08em;color:var(--highlight);text-transform:uppercase;opacity:0;transition:opacity .15s ease;min-height:14px}.field.invalid .err{opacity:1}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.chip{font-family:var(--f-sans);font-size:13px;padding:7px 13px;border-radius:999px;border:1px solid var(--rule);background:transparent;cursor:pointer;color:var(--ink-2);text-decoration:none;transition:background .15s ease,color .15s ease,border-color .15s ease}.chip:hover{border-color:var(--accent-deep);color:var(--accent-deep)}.chip[aria-pressed=true]{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--bg)}.form-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:4px}.form-foot small{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase}.form-sent{background:var(--accent-soft);border:1px solid var(--accent);border-radius:3px;padding:16px 18px;font-size:15px;color:var(--accent-deep);display:none}.form-sent.show{display:block}footer{padding:56px 0 32px;background:var(--green-deep);color:var(--bg-2)}footer a{color:inherit}.foot-grid{display:grid;grid-template-columns:1.4fr 1.9fr 1fr 1.25fr;gap:32px;align-items:start}.foot-services ul{grid-template-columns:1fr 1fr;column-gap:28px}.foot-contact .foot-meta{color:color-mix(in oklab,var(--bg) 50%,transparent)}.foot-contact .foot-meta:first-of-type{margin-top:7px}.foot-brand .brand{color:var(--bg);margin-bottom:16px}.foot-brand .brand-mark{height:28px;color:var(--logo-yellow)}.foot-brand .brand-name small{color:color-mix(in oklab,var(--bg) 55%,transparent)}.foot-brand p{color:color-mix(in oklab,var(--bg) 70%,transparent);font-size:14px;max-width:34ch;line-height:1.6;margin:0}.foot-grid h2{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:color-mix(in oklab,var(--bg) 55%,transparent);margin:0 0 16px;font-weight:500}.foot-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:9px;font-size:14.5px}.foot-grid ul li{color:color-mix(in oklab,var(--bg) 70%,transparent)}.foot-grid ul a{text-decoration:none;color:color-mix(in oklab,var(--bg) 70%,transparent)}.foot-grid ul a:hover{color:var(--bg)}.foot-rule{margin-top:28px;padding-top:22px;border-top:1px solid color-mix(in oklab,var(--bg) 25%,transparent);display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;color:color-mix(in oklab,var(--bg) 55%,transparent);text-transform:uppercase}.foot-social{display:flex;gap:8px;flex-wrap:nowrap;align-items:center;margin-top:48px}.foot-social a{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:999px;font-family:var(--f-sans);font-size:12.5px;font-weight:500;letter-spacing:0;text-transform:none;text-decoration:none;white-space:nowrap;transition:opacity .15s ease}.foot-social a:hover{opacity:.85}@media(max-width:400px){.foot-social a{font-size:11.5px;padding:7px 11px;gap:6px}}.reveal{opacity:0;transform:translateY(16px);transition:opacity .75s cubic-bezier(.2,.7,.2,1),transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}.reveal-stagger>*{opacity:0;transform:translateY(12px);transition:opacity .65s cubic-bezier(.2,.7,.2,1),transform .65s cubic-bezier(.2,.7,.2,1);transition-delay:calc(var(--i, 0) * 60ms)}.reveal-stagger.in>*{opacity:1;transform:none}.gallery-grid.reveal-stagger>.gi-1{opacity:1;transform:none;transition:none}@media(max-width:1040px){.svc-entry,.intro-block{grid-template-columns:1fr;gap:20px}.about-grid{display:block}.about-figure{position:static;top:auto;display:block;width:100%;max-width:100%;margin-bottom:24px}.about-figure img{display:block;width:100%!important;height:clamp(220px,55vw,340px)!important;object-fit:cover;object-position:center 45%!important}.area-grid,.contact-grid{grid-template-columns:1fr}.contact-jump{display:inline-flex;align-items:center;gap:7px;width:fit-content;margin-top:20px;font-family:var(--f-sans);font-size:15px;font-weight:500;color:var(--accent-soft);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.contact-jump:hover{color:var(--bg)}.foot-grid{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gi-1,.gi-2,.gi-3,.gi-7,.gi-8,.gi-9{grid-column:span 1;aspect-ratio:4/5}.gi-4,.gi-5,.gi-6{grid-column:span 1}.values{grid-template-columns:1fr}.value{border-right:none;border-bottom:1px solid var(--rule-soft);padding:28px 0}.value:last-child{border-bottom:none}.value:not(:first-child){padding-left:0}}@media(max-width:800px){.nav-links{display:none}.nav-toggle{display:inline-flex}.topbar-row{padding-left:var(--pad-x);padding-right:var(--pad-x)}.topbar-row>div:has(.btn-primary){display:none}.hero-grid{grid-template-columns:1fr}.hero-figure{min-height:300px}.cred-strip{grid-template-columns:repeat(2,1fr);gap:24px}.test-list{grid-template-columns:1fr;gap:40px}.cta-band-inner{flex-direction:column;align-items:flex-start}.gallery-quote{flex-direction:column}}@media(prefers-reduced-motion:reduce){.reveal,.reveal-stagger>*{opacity:1!important;transform:none!important;transition:none!important}html{scroll-behavior:auto}body{transition:none!important}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(max-width:560px){.cred-strip{grid-template-columns:1fr 1fr}.field-row{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr;gap:32px 24px}.foot-grid>.foot-brand{grid-column:1 / -1}.foot-grid>div:nth-child(4){grid-column:1 / -1}.foot-services ul{grid-template-columns:1fr}}.tpo-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(40px,6vw,96px);align-items:center}.tpo-head h2{font-family:var(--f-display);font-weight:400;font-size:clamp(32px,3.6vw,48px);line-height:1.05;letter-spacing:-.018em;margin:0 0 16px}.tpo-head p{font-size:16px;line-height:1.65;color:var(--ink-2);margin:0;max-width:40ch}.tpo-form-row{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}.tpo-input{font-family:var(--f-sans);font-size:16px;color:var(--ink);background:var(--bg-card);border:1px solid var(--rule);border-radius:999px;padding:12px 22px;outline:none;transition:border-color .2s ease;width:190px}.tpo-input:focus{border-color:var(--accent-deep)}.tpo-input::placeholder{color:var(--muted)}.tpo-result{margin-top:20px}.tpo-status-grid{display:grid;gap:10px}.tpo-status{display:grid;grid-template-columns:28px 1fr;gap:14px;align-items:start;padding:16px 18px;border-radius:3px;border:1px solid var(--rule-soft);background:var(--bg-card)}.tpo-status.protected{border-color:color-mix(in oklab,var(--highlight) 40%,transparent);background:color-mix(in oklab,var(--highlight) 6%,var(--bg))}.tpo-status.clear{border-color:color-mix(in oklab,var(--accent) 30%,transparent);background:color-mix(in oklab,var(--accent) 5%,var(--bg))}.tpo-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;margin-top:1px}.tpo-status.protected .tpo-icon{background:var(--highlight);color:var(--bg)}.tpo-status.clear .tpo-icon{background:var(--accent);color:var(--bg)}.tpo-status-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:3px}.tpo-status-value{font-family:var(--f-display);font-size:18px;letter-spacing:-.01em;line-height:1.2;color:var(--ink)}.tpo-status-note{font-size:13px;color:var(--ink-2);margin-top:6px;line-height:1.5}.tpo-caveat{font-family:var(--f-mono);font-size:9.5px;letter-spacing:.1em;color:var(--muted);text-transform:uppercase;margin-top:14px;line-height:1.7}.tpo-error{padding:13px 17px;border-radius:3px;background:color-mix(in oklab,var(--highlight) 6%,var(--bg));border:1px solid color-mix(in oklab,var(--highlight) 35%,transparent);color:var(--highlight);font-size:14px}.tpo-loading{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding:14px 0;display:flex;align-items:center;gap:10px}.tpo-spinner{width:14px;height:14px;border:2px solid var(--rule);border-top-color:var(--accent);border-radius:50%;animation:tpo-spin .8s linear infinite}@keyframes tpo-spin{to{transform:rotate(360deg)}}@media(max-width:800px){.tpo-inner{grid-template-columns:1fr}}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,36px);margin-top:clamp(32px,4vw,48px)}.blog-card{background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:3px;padding:28px 28px 24px;display:flex;flex-direction:column;gap:10px;cursor:pointer;text-decoration:none;color:inherit;transition:border-color .2s ease,transform .2s ease}.blog-card:hover{border-color:var(--accent);transform:translateY(-2px)}.blog-card-tag{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.blog-card h2{font-family:var(--f-display);font-weight:400;font-size:clamp(19px,1.9vw,25px);line-height:1.15;letter-spacing:-.01em;margin:0}.blog-card p{font-size:15px;line-height:1.6;color:var(--ink-2);margin:0;flex:1}.blog-card-meta{font-family:var(--f-mono);font-size:10px;color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-top:4px}@media(max-width:900px){.blog-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.blog-grid{grid-template-columns:1fr}}.svc-layout{display:grid;grid-template-columns:1fr 300px;gap:clamp(40px,5vw,72px);align-items:start}.svc-sidebar{position:sticky;top:calc(var(--topbar-h, 80px) + 24px)}.svc-sidebar-card{background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:4px;padding:28px 24px;display:grid;gap:12px}.svc-sidebar-card h3{font-family:var(--f-display);font-weight:400;font-size:clamp(19px,1.7vw,23px);letter-spacing:-.01em;margin:0;line-height:1.2;color:var(--ink)}.svc-sidebar-card p{font-size:13.5px;line-height:1.6;color:var(--ink-2);margin:0}@media(max-width:960px){.svc-layout{grid-template-columns:1fr}.svc-sidebar{position:static}}.svc-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(12px,2vw,20px);margin-top:clamp(32px,4vw,48px)}.svc-gallery .figure{aspect-ratio:3/2;border-radius:3px}.svc-gallery .figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.svc-gallery--feature{grid-template-columns:1.4fr 1fr;align-items:stretch}@media(max-width:640px){.svc-gallery,.svc-gallery--feature{grid-template-columns:1fr}}.svc-extras{padding:clamp(40px,5vw,64px) 0;border-top:1px solid var(--rule-soft);display:grid;gap:clamp(40px,5vw,64px)}.typical-jobs-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.typical-jobs-chips span{font-family:var(--f-sans);font-size:13.5px;color:var(--ink-2);background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:999px;padding:7px 15px}.svc-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,24px);margin-top:16px}.svc-step{background:var(--bg-card);border:1px solid var(--rule-soft);border-radius:4px;padding:22px 24px 26px;display:flex;flex-direction:column;gap:8px}.svc-step-num{font-family:var(--f-mono);font-size:11px;letter-spacing:.16em;color:var(--coral);font-weight:500}.svc-step h3{font-family:var(--f-display);font-weight:400;font-size:clamp(17px,1.6vw,21px);letter-spacing:-.01em;margin:0;line-height:1.15;color:var(--ink)}.svc-step p{font-size:14px;line-height:1.6;color:var(--ink-2);margin:0}@media(max-width:800px){.svc-steps{grid-template-columns:1fr}}.svc-contact-strip{background:var(--green-tint);border:1px solid var(--green-soft);border-radius:4px;padding:clamp(24px,3vw,32px);display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.svc-contact-strip h3{font-family:var(--f-display);font-weight:400;font-size:clamp(19px,1.8vw,24px);letter-spacing:-.01em;margin:0 0 4px;color:var(--ink)}.svc-contact-strip p{font-size:13.5px;color:var(--ink-2);margin:0}.svc-contact-btns{display:flex;gap:10px;flex-wrap:wrap}.btn-wa{background:#17833e;border-color:#17833e;color:#fff}.btn-wa:hover{background:#146c31;border-color:#146c31;color:#fff;transform:translateY(-2px)}@media(max-width:680px){.svc-contact-strip{flex-direction:column;align-items:flex-start}}.blog-meta-bar{display:flex;align-items:center;gap:14px;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding:24px 0;border-bottom:1px solid var(--rule-soft);margin-bottom:36px}.blog-meta-bar .sep{width:14px;height:1px;background:var(--rule);flex-shrink:0}.blog-body{max-width:70ch}.blog-body h2{font-family:var(--f-display);font-weight:400;font-size:clamp(22px,2.2vw,30px);line-height:1.1;letter-spacing:-.015em;margin:44px 0 14px;color:var(--ink)}.blog-body p{font-size:17px;line-height:1.72;color:var(--ink-2);margin:0 0 22px}.blog-body ul{margin:0 0 22px;padding:0;list-style:none;display:grid;gap:9px}.blog-body li{font-size:16px;line-height:1.6;color:var(--ink-2);padding-left:20px;position:relative}.blog-body li:before{content:"";position:absolute;left:0;top:11px;width:7px;height:1px;background:var(--accent)}.blog-body strong{color:var(--ink)}.blog-body a{color:var(--accent);text-decoration:underline;text-decoration-color:var(--rust);text-underline-offset:3px;text-decoration-thickness:1.5px;transition:color .15s ease,text-decoration-color .15s ease}.blog-body a:hover{color:var(--accent-deep);text-decoration-color:var(--rust-deep)}body.menu-open .topbar:not(.scrolled) .brand{color:var(--ink)}body.menu-open .topbar:not(.scrolled) .brand-name small{color:var(--muted)}body.menu-open .topbar:not(.scrolled) .nav-toggle{color:var(--ink);border-color:var(--ink)}.work-preview{padding:clamp(56px,7vw,96px) 0;border-top:1px solid var(--rule-soft)}.work-preview-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:clamp(28px,3.5vw,44px)}.work-preview-head h2{font-family:var(--f-display);font-weight:400;font-size:clamp(32px,4vw,52px);line-height:1.02;letter-spacing:-.02em;margin:12px 0 0}.work-preview-head h2 em{font-style:italic;color:var(--accent-deep)}.work-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.work-preview-grid .figure{aspect-ratio:4/5}.work-preview-grid .figure img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ba-tag{position:absolute;left:14px;top:14px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--bg-card);background:color-mix(in oklab,var(--green-deep) 82%,transparent);padding:5px 9px;border-radius:2px}.ba-tag.after{background:color-mix(in oklab,var(--accent-deep) 88%,transparent)}@media(max-width:800px){.work-preview-grid{grid-template-columns:1fr 1fr}.work-preview-grid .figure:nth-child(3){grid-column:span 2;aspect-ratio:16/10}}
