*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--cream:#f5f1e6;--cream-2:#ede7d4;--cream-3:#e4dcc4;--ink:#14201a;--ink-2:#2a3a30;--ink-muted:#586a5a;--brand:#4d6a30;--brand-light:#5a7838;--brand-dark:#3d5424;--brand-darker:#2d3f1a;--green:var(--brand);--green-2:var(--brand-dark);--green-3:var(--brand-light);--olive:var(--brand-light);--moss:#a3b18a;--clay:#8b5e3c;--gold:#c9a24b;--line:#14201a1a;--line-strong:#14201a2e;--font-display:"Bricolage Grotesque", system-ui, sans-serif;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-serif:"Bricolage Grotesque", serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-apple:cubic-bezier(.32, .72, 0, 1)}html{scroll-behavior:smooth;background-color:var(--cream);scroll-padding-top:100px}@media (width<=760px){html{scroll-padding-top:76px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}body{font-family:var(--font-sans);letter-spacing:-.011em;background:var(--cream);color:var(--ink);font-feature-settings:"ss01", "cv11", "calt", "liga", "kern";text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;font-size:16px;line-height:1.55}main:focus{outline:none}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}body:before{content:"";pointer-events:none;z-index:1000;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");position:fixed;inset:0}.skip-link{background:var(--ink);color:var(--cream);z-index:9999;border-radius:0 0 8px 8px;padding:12px 18px;font-weight:600;position:absolute;top:0;left:-9999px}.skip-link:focus{outline:2px solid var(--moss);outline-offset:2px;left:12px}:focus-visible{outline:2px solid var(--green-3);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important}.reveal{opacity:1!important;transform:none!important}}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--green-3);align-items:center;gap:8px;font-size:11px;font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:14px;height:1px;display:inline-block}h1,h2,h3{font-family:var(--font-display);color:var(--ink);letter-spacing:-.025em;font-variation-settings:"opsz" 96;font-weight:600;line-height:1.05}.section-h{max-width:18ch;margin-bottom:12px;font-size:clamp(2rem,4vw + .5rem,3.6rem)}.section-sub{color:var(--ink-muted);max-width:56ch;margin-bottom:56px;font-size:clamp(1rem,.5vw + .9rem,1.125rem)}.reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(20px)}.reveal:not(.in){pointer-events:none}.reveal.in{opacity:1;pointer-events:auto;transform:translateY(0)}.container{max-width:1240px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}section{padding-block:clamp(80px,11vw,140px);position:relative}.nav{z-index:100;transition:transform .35s var(--ease-apple), opacity .25s ease, background .3s ease, backdrop-filter .3s ease, border-color .3s ease;border-bottom:1px solid #0000;position:fixed;top:0;left:0;right:0}.nav[data-in-hero=true][data-scrolled=false] .nav-brand{opacity:0;visibility:hidden;pointer-events:none}.nav-brand{transition:opacity .25s,visibility .25s}.nav[data-scrolled=true]{background:color-mix(in oklab, var(--cream) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(14px);border-bottom-color:var(--line)}.nav-inner{max-width:1240px;padding:calc(14px + env(safe-area-inset-top)) clamp(20px, 4vw, 48px) 14px;align-items:center;gap:24px;margin-inline:auto;display:flex}@media (width<=980px){.nav{background:var(--cream);border-bottom-color:var(--line)}.nav[data-scrolled=true]{background:var(--cream);-webkit-backdrop-filter:none}}.nav-burger{background:var(--cream);border:1px solid var(--line-strong);width:44px;height:44px;color:var(--ink);border-radius:12px;justify-content:center;align-items:center;transition:background .2s,color .2s;display:none}.nav-burger:hover{background:var(--brand);color:var(--cream);border-color:var(--brand-darker)}.nav-burger:active{transform:translateY(1px)}.mobile-drawer{z-index:200;pointer-events:none;visibility:hidden;position:fixed;inset:0}.mobile-drawer.open{pointer-events:auto;visibility:visible}.mobile-drawer-overlay{opacity:0;transition:opacity .25s var(--ease-out);background:#14201a8c;position:absolute;inset:0}.mobile-drawer.open .mobile-drawer-overlay{opacity:1}.mobile-drawer-panel{background:var(--cream);border-left:1px solid var(--line);width:min(360px,88vw);padding:calc(20px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));transition:transform .32s var(--ease-apple);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(100%);box-shadow:-24px 0 60px -20px #14201a59}.mobile-drawer.open .mobile-drawer-panel{transform:translate(0)}.mobile-drawer-links{flex-direction:column;gap:4px;margin-top:60px;display:flex}.mobile-link{min-height:56px;font-family:var(--font-serif);color:var(--ink);border:1px solid #0000;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:16px 14px;font-size:20px;font-weight:500;transition:background .18s,border-color .18s;display:flex}.mobile-link:hover{background:color-mix(in oklab, var(--ink) 5%, transparent)}.mobile-link.active{background:var(--ink);color:var(--cream);border-color:var(--ink)}.mobile-link svg{opacity:.5}.mobile-link.active svg{opacity:1}.mobile-drawer-foot{border-top:1px solid var(--line);flex-direction:column;gap:10px;margin-top:auto;padding-top:24px;display:flex}.mobile-cta{justify-content:center;min-height:48px}.nav-brand{flex-shrink:0;align-items:center;gap:12px;display:flex}.nav-logo{object-fit:cover;border:1.5px solid var(--brand-light);border-radius:50%;width:64px;height:64px;box-shadow:0 2px 8px #2d3f1a26}.nav-name{flex-direction:column;line-height:1;display:flex}.nav-name strong{font-family:var(--font-serif);letter-spacing:-.01em;font-size:17px;font-weight:500}.nav-name span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);margin-top:4px;font-size:10px}.nav-links{background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);border:1px solid var(--brand-darker);border-radius:999px;gap:2px;margin:0 auto;padding:4px;display:flex;box-shadow:inset 0 1px #ffffff1f}.nav-link{color:color-mix(in oklab, var(--cream) 80%, transparent);border-radius:999px;padding:8px 18px;font-size:13px;font-weight:500;transition:background .2s,color .2s;position:relative}.nav-link:hover{color:var(--cream)}.nav-link.active{background:var(--ink);color:var(--cream);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--moss) 30%, transparent)}.nav-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.nav-icon{background:var(--cream);border:1px solid var(--line-strong);width:38px;height:38px;color:var(--ink-2);transition:background .2s ease, color .2s ease, transform .15s var(--ease-apple), border-color .2s;border-radius:50%;place-items:center;display:grid}.nav-icon:hover{background:var(--brand);color:var(--cream);border-color:var(--brand-darker)}.nav-icon:active{transform:translateY(1px)}.nav-cta{background:var(--ink);color:var(--cream);border:1px solid var(--ink);transition:transform .15s var(--ease-apple), background .2s ease;border-radius:999px;align-items:center;gap:8px;padding:9px 16px 9px 14px;font-size:13px;font-weight:500;display:inline-flex}.nav-cta:hover{background:var(--brand-dark)}.nav-cta:active{transform:translateY(1px)}.hero{background:var(--cream);z-index:2;align-items:center;min-height:100svh;padding-top:clamp(140px,14vw,200px);padding-bottom:clamp(120px,14vw,180px);display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;background-image:url(/hero.jpg);background-position:75%;background-size:cover;position:absolute;inset:0}.hero-bg:after{content:"";background:linear-gradient(to right, var(--cream) 0%, color-mix(in oklab, var(--cream) 96%, transparent) 30%, color-mix(in oklab, var(--cream) 50%, transparent) 50%, transparent 70%), linear-gradient(to bottom, transparent 50%, color-mix(in oklab, var(--cream) 30%, transparent) 75%, var(--cream) 100%);position:absolute;inset:0}.hero-inner{z-index:2;width:100%;max-width:1240px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px);position:relative}.hero-copy{text-align:left;align-items:flex-start;max-width:620px}.hero-mark{margin-bottom:20px}.hero-logo{aspect-ratio:1;border:2px solid color-mix(in oklab, var(--brand-light) 60%, transparent);background:var(--cream);object-fit:cover;border-radius:50%;width:clamp(96px,12vw,140px);height:auto;box-shadow:inset 0 1px #fff9,0 18px 40px -16px #2d3f1a59,0 4px 10px -4px #14201a2e}.hero-brand{font-family:var(--font-display);letter-spacing:-.035em;color:var(--ink);font-variation-settings:"opsz" 96;max-width:12ch;margin-bottom:22px;font-size:clamp(2.6rem,6vw + .4rem,4.8rem);font-weight:700;line-height:1}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.btn-hero-ghost{color:var(--ink);border:1px solid var(--line-strong);transition:background .2s ease, border-color .2s ease, transform .15s var(--ease-apple);background:0 0;border-radius:999px;align-items:center;gap:8px;padding:13px 22px;font-size:14px;font-weight:500;display:inline-flex}.btn-hero-ghost:hover{background:color-mix(in oklab, var(--ink) 5%, transparent);border-color:var(--ink-muted)}.btn-hero-ghost:active{transform:translateY(1px)}.btn-hero{gap:8px}.btn-hero svg{transition:transform .25s var(--ease-out)}.btn-hero:hover svg{transform:translate(3px)}.hero-scroll{z-index:4;color:var(--ink-2);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;transition:color .2s ease, transform .2s var(--ease-apple);flex-direction:column;align-items:center;gap:8px;padding:8px 4px;font-size:10px;font-weight:500;text-decoration:none;display:inline-flex;position:absolute;bottom:clamp(20px,4vw,36px);left:50%;transform:translate(-50%)}.hero-scroll-label{opacity:.7}.hero-scroll-arrow{background:color-mix(in oklab, var(--cream) 85%, transparent);border:1px solid var(--line-strong);width:30px;height:30px;color:var(--brand-dark);animation:hero-scroll-bounce 1.8s var(--ease-in-out) infinite;border-radius:50%;place-items:center;display:grid;box-shadow:0 4px 10px -4px #14201a2e}.hero-scroll:hover{color:var(--ink)}.hero-scroll:hover .hero-scroll-label{opacity:1}@keyframes hero-scroll-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}@media (prefers-reduced-motion:reduce){.hero-scroll-arrow{animation:none}}.tagline-strip{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--brand-dark);background:0 0;border:0;border-radius:0;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;padding:0;font-size:10px;font-weight:500;display:inline-flex}.tagline-strip i{background:var(--brand);opacity:.45;border-radius:50%;flex-shrink:0;width:4px;height:4px}.tagline-strip span{box-shadow:none;white-space:nowrap;background:0 0;border:0;padding:0;display:inline}.hero-sub{color:var(--ink);max-width:44ch;margin-bottom:36px;font-size:1.05rem;font-weight:500;line-height:1.55}.link-underline{color:var(--brand-dark);text-underline-offset:3px;font-weight:500;text-decoration:underline;text-decoration-thickness:1px}.link-underline:hover{color:var(--brand)}.story-tagline{font-family:var(--font-serif);font-size:1.1rem;font-style:italic;color:var(--moss)!important;margin-top:8px!important;margin-bottom:8px!important}.btn-hero{background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);color:var(--cream);letter-spacing:.01em;border:1px solid var(--brand-darker);transition:transform .15s var(--ease-apple), filter .2s;border-radius:999px;justify-content:center;align-items:center;padding:14px 28px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #00000026,0 2px 4px #2d3f1a40}.btn-hero:hover{filter:brightness(1.05)}.btn-hero:active{transform:translateY(1px)}.quote-section{background:var(--cream-2);border-top:1px solid var(--line)}.quote-wrap{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(40px,6vw,80px);display:grid}.quote-intro .section-sub{max-width:38ch}.quote-card-v2{border:1px solid var(--line);background:#fffef9;border-radius:22px;padding:clamp(24px,3vw,36px);box-shadow:inset 0 1px #ffffff80,0 24px 60px -16px #14201a2e,0 8px 20px -8px #14201a1a}.quote-card-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;margin-bottom:18px;padding-bottom:18px;display:flex}.quote-card-head h3{font-family:var(--font-sans);color:var(--ink);letter-spacing:-.01em;font-variation-settings:normal;font-size:18px;font-weight:600}@media (width<=980px){.quote-wrap{grid-template-columns:1fr;gap:28px}.quote-intro .section-sub{max-width:56ch}}.hero-quote-head{align-items:center;gap:10px;margin-bottom:18px;display:flex}.hero-quote-badge{background:color-mix(in oklab, var(--brand-light) 16%, transparent);width:28px;height:28px;color:var(--brand-dark);border-radius:50%;place-items:center;display:grid}.hero-quote h3{font-family:var(--font-sans);color:var(--ink);letter-spacing:-.01em;font-variation-settings:normal;font-size:18px;font-weight:600}.hero-form{flex-direction:column;gap:12px;display:flex}.hf-row{gap:12px;display:grid}.hf-row-3{grid-template-columns:1fr 1fr 1fr}.hf-row-2{grid-template-columns:1fr 1fr}.hero-form input,.hero-form select{width:100%;font:inherit;color:var(--ink);appearance:none;background:#f0ede5;border:none;border-radius:999px;outline:none;padding:14px 18px;font-size:14px;transition:background .18s,box-shadow .18s}.hero-form input::placeholder{color:#8d8b80}.hero-form select{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");background-position:right 18px center;background-repeat:no-repeat;padding-right:40px}.hero-form input:hover,.hero-form select:hover{background:#ebe7dc}.hero-form input:focus,.hero-form select:focus{box-shadow:0 0 0 2px var(--brand-light);background:#fff}.hero-submit{background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);width:100%;color:var(--cream);border:1px solid var(--brand-darker);transition:filter .2s ease, transform .15s var(--ease-apple);border-radius:999px;margin-top:4px;padding:16px;font-size:15px;font-weight:600;box-shadow:inset 0 1px #ffffff2e,0 2px 4px #2d3f1a40}.hero-submit:hover{filter:brightness(1.06)}.hero-submit:active{transform:translateY(1px)}.hero-submit:disabled{filter:none;opacity:.7;cursor:progress;transform:none}.form-error{color:#8a2c1a;margin-top:6px;font-size:13px;line-height:1.45}.form-error a{color:#8a2c1a;font-weight:500;text-decoration:underline}.btn{letter-spacing:-.005em;transition:transform .15s var(--ease-apple), background .2s ease, color .2s ease, border-color .2s ease;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:14px 22px;font-size:14px;font-weight:500;display:inline-flex;position:relative}.btn-primary{background:var(--ink);color:var(--cream);border-color:var(--ink);box-shadow:inset 0 1px #ffffff14,0 1px 2px #0000001f}.btn-primary:hover{background:var(--green);border-color:var(--green)}.btn-primary:active{transform:translateY(1px)}.btn-ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn-ghost:hover{background:color-mix(in oklab, var(--ink) 6%, transparent)}.btn .arrow{transition:transform .25s var(--ease-out)}.btn:hover .arrow{transform:translate(3px)}.trust-bar{z-index:2;border-block:1px solid var(--line);background:color-mix(in oklab, var(--cream) 65%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-top:clamp(60px,8vw,100px);position:relative}.trust-inner{grid-template-columns:repeat(4,1fr);align-items:center;gap:32px;max-width:1240px;margin-inline:auto;padding:22px clamp(20px,4vw,48px);display:grid}.trust-item{color:var(--ink-2);align-items:center;gap:12px;font-size:13px;display:flex}.trust-item .icon-wrap{background:color-mix(in oklab, var(--green) 8%, transparent);width:32px;height:32px;color:var(--green);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.trust-item strong{font-family:var(--font-serif);color:var(--ink);font-size:17px;font-weight:500;line-height:1.1;display:block}.trust-item small{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.quote-section{background:var(--cream-2);border-block:1px solid var(--line)}.quote-grid{grid-template-columns:5fr 7fr;align-items:start;gap:clamp(40px,6vw,80px);display:grid}.quote-intro h2{max-width:14ch;margin-bottom:18px;font-size:clamp(2rem,3vw + .5rem,3rem)}.quote-intro p{color:var(--ink-muted);max-width:38ch;margin-bottom:24px;font-size:1rem}.quote-bullets{flex-direction:column;gap:12px;margin-top:28px;list-style:none;display:flex}.quote-bullets li{color:var(--ink-2);align-items:center;gap:12px;font-size:14px;display:flex}.quote-bullets svg{color:var(--green-3);flex-shrink:0}.quote-card{background:var(--cream);border:1px solid var(--line);box-shadow:0 1px 0 var(--line) inset, 0 24px 48px -24px #14201a26;border-radius:18px;padding:clamp(24px,3vw,36px)}.quote-card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:18px;display:flex}.quote-card-head h3{font-family:var(--font-serif);letter-spacing:-.015em;font-size:22px;font-weight:500}.quote-card-head .badge{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--green);background:color-mix(in oklab, var(--green) 10%, transparent);border-radius:999px;padding:5px 10px;font-size:10px}.quote-form{flex-direction:column;gap:14px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.form-row.three{grid-template-columns:1fr 1fr 1fr}.field{flex-direction:column;display:flex;position:relative}.field label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px;font-size:10px}.field input,.field select,.field textarea{background:var(--cream);border:1px solid var(--line-strong);font:inherit;color:var(--ink);border-radius:10px;outline:none;padding:12px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}.field input:hover,.field select:hover,.field textarea:hover{background:color-mix(in oklab, var(--cream) 96%, var(--ink) 4%)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green-3);box-shadow:0 0 0 3px color-mix(in oklab, var(--green-3) 18%, transparent)}.btn-submit{background:var(--ink);width:100%;color:var(--cream);border:1px solid var(--ink);transition:transform .15s var(--ease-apple), background .2s ease;border-radius:12px;justify-content:center;align-items:center;gap:10px;margin-top:4px;padding:16px 22px;font-size:15px;font-weight:500;display:inline-flex;box-shadow:inset 0 1px #ffffff14}.btn-submit:hover{background:var(--green)}.btn-submit:active{transform:translateY(1px)}.success-msg{background:color-mix(in oklab, var(--green) 8%, var(--cream));border:1px solid color-mix(in oklab, var(--green) 22%, transparent);color:var(--green);text-align:center;border-radius:12px;padding:32px;font-weight:500;line-height:1.5}.success-msg-pending{text-align:left;border-color:color-mix(in oklab, var(--gold) 35%, transparent);color:var(--ink);background:#fffdf0;padding:22px;font-weight:400}.success-msg-pending strong{font-family:var(--font-serif);color:var(--ink);margin-bottom:8px;font-size:18px;display:block}.success-msg-pending p{color:var(--ink-2);margin-bottom:16px;font-size:14px;line-height:1.5}.success-msg-pending em{color:var(--brand-dark);font-style:normal;font-weight:600}.success-actions{flex-wrap:wrap;gap:10px;display:flex}.success-actions .btn{flex:200px;justify-content:center}.services{background:var(--cream);border-top:1px solid var(--line)}.services-showcase{grid-template-columns:minmax(320px,5fr) minmax(0,7fr);align-items:center;gap:clamp(32px,5vw,72px);display:grid}.services-photo-wrap{min-width:0;position:relative}.services-photo-wrap:after{content:"";border:1px solid color-mix(in oklab, var(--brand) 28%, transparent);z-index:0;border-radius:18px;position:absolute;inset:18px -18px -18px 18px}.services-photo{z-index:1;aspect-ratio:4/3.2;object-fit:cover;object-position:center;border:1px solid var(--line-strong);border-radius:18px;width:100%;max-height:460px;display:block;position:relative;box-shadow:0 26px 60px -30px #14201a6b}.services-photo-badge{z-index:3;object-fit:cover;object-position:55% 55%;border:7px solid var(--cream);background:var(--cream);width:clamp(160px,18vw,200px);height:clamp(160px,18vw,200px);transition:transform .25s var(--ease-out);border-radius:50%;position:absolute;bottom:-20px;right:-20px;box-shadow:inset 0 1px #fff9,0 22px 50px -14px #14201a8c,0 8px 18px -4px #14201a4d}.services-photo-wrap:hover .services-photo-badge{transform:scale(1.04)rotate(-2deg)}@media (width<=560px){.services-photo-badge{border-width:6px;width:170px;height:170px;bottom:-14px;right:-14px}}.services-content{min-width:0}.services-sub{margin-bottom:34px}.services-head{grid-template-columns:1fr auto;align-items:end;gap:32px;margin-bottom:56px;display:grid}.services-grid{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.services-showcase .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.services-showcase .services-grid>.reveal{min-width:0}.svc-card{border:1px solid color-mix(in oklab, var(--ink) 18%, transparent);transition:border-color .25s ease, transform .25s var(--ease-out), background .25s ease;background:#fffdf6;border-radius:16px;flex-direction:column;height:100%;padding:32px 28px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffa6,0 18px 38px -30px #14201a6b}.services>.container>.services-grid .svc-card{grid-column:span 4}.services>.container>.services-grid .svc-card:nth-child(4),.services>.container>.services-grid .svc-card:nth-child(5){grid-column:span 6}.svc-card:hover{border-color:var(--green-3);background:color-mix(in oklab, #fffdf6 94%, var(--green) 6%);transform:translateY(-3px);box-shadow:inset 0 1px #ffffffbf,0 24px 48px -28px #14201a80}.svc-icon{background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);width:44px;height:44px;color:var(--cream);border:1px solid var(--brand-darker);border-radius:12px;place-items:center;margin-bottom:22px;display:grid;box-shadow:inset 0 1px #ffffff29}.svc-card h3{font-family:var(--font-serif);letter-spacing:-.015em;margin-bottom:8px;font-size:22px;font-weight:500}.svc-card p{color:var(--ink-2);margin-bottom:20px;font-size:14px;line-height:1.55}.svc-meta{border-top:1px solid color-mix(in oklab, var(--ink) 14%, transparent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--brand-dark);justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:18px;font-size:11px;display:flex}.svc-price strong{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums lining-nums;text-transform:none;margin-right:6px;font-size:18px;font-weight:500}.svc-tag{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--clay);background:color-mix(in oklab, var(--clay) 12%, transparent);border-radius:999px;padding:4px 9px;font-size:10px;position:absolute;top:18px;right:18px}.story{background:var(--ink);color:var(--cream);z-index:1;padding-top:clamp(190px,18vw,250px);position:relative;overflow:hidden}.story:before{content:"";background-image:radial-gradient(circle at 20% 20%, color-mix(in oklab, var(--green) 50%, transparent), transparent 50%), radial-gradient(circle at 80% 80%, color-mix(in oklab, var(--olive) 30%, transparent), transparent 60%);opacity:.7;pointer-events:none;position:absolute;inset:0}.story-inner{grid-template-columns:7fr 5fr;align-items:center;gap:clamp(40px,6vw,96px);display:grid;position:relative}.story-text .eyebrow{color:var(--moss)}.story-text h2{color:var(--cream);max-width:18ch;margin:14px 0 24px;font-size:clamp(2rem,3.5vw + .5rem,3.4rem)}.story-text h2 em{color:var(--moss);font-style:italic}.story-text p{color:color-mix(in oklab, var(--cream) 75%, var(--ink) 25%);max-width:52ch;margin-bottom:18px;font-size:1.05rem;line-height:1.65}.story-stats{border-top:1px solid color-mix(in oklab, var(--cream) 15%, transparent);grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;padding-top:30px;display:grid}.story-stat strong{font-family:var(--font-serif);color:var(--moss);font-variant-numeric:lining-nums;letter-spacing:-.02em;font-size:clamp(1.8rem,2.5vw,2.6rem);font-weight:500;line-height:1;display:block}.story-stat span{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:color-mix(in oklab, var(--cream) 60%, var(--ink) 40%);margin-top:10px;font-size:10px;display:block}.story-badge{aspect-ratio:1;background:radial-gradient(circle, var(--cream) 0%, var(--cream-2) 100%);border:1px solid color-mix(in oklab, var(--cream) 30%, transparent);border-radius:50%;place-items:center;padding:30px;display:grid;position:relative;box-shadow:0 32px 64px -24px #0006}.story-badge img{object-fit:contain;border-radius:50%;width:100%;height:100%}.areas{background:var(--cream);border-top:1px solid var(--line)}.areas-head{max-width:720px;margin-bottom:clamp(36px,4vw,56px)}.areas-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:0 0 36px;padding:0;list-style:none;display:grid}.area-chip{border:1px solid color-mix(in oklab, var(--ink) 12%, transparent);transition:border-color .2s ease, transform .2s var(--ease-out), background .2s ease;background:#fffdf6;border-radius:14px;grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;padding:14px 18px;display:grid}.area-chip:hover{border-color:var(--green-3);background:color-mix(in oklab, #fffdf6 92%, var(--green) 8%);transform:translateY(-2px)}.area-chip svg{color:var(--brand);flex-shrink:0;grid-row:1/3}.area-name{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.01em;font-size:17px;font-weight:500;line-height:1.1}.area-note{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);font-size:10px}.areas-extra{background:color-mix(in oklab, var(--brand-light) 6%, var(--cream));border:1px solid color-mix(in oklab, var(--brand-light) 22%, transparent);border-radius:16px;flex-direction:column;gap:14px;max-width:78ch;padding:24px clamp(20px,2.5vw,32px);display:flex}.areas-extra p{color:var(--ink-2);font-size:15px;line-height:1.6}.areas-extra strong{color:var(--brand-dark);font-weight:600}@media (width<=560px){.areas-grid{grid-template-columns:1fr 1fr;gap:10px}.area-chip{padding:12px 14px}.area-name{font-size:15px}}.reviews{background:var(--cream-2)}.reviews-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:18px;display:grid}.reviews-grid>.reveal{min-width:0;height:100%}.review{background:var(--cream);border:1px solid var(--line);border-radius:16px;flex-direction:column;height:100%;min-height:300px;padding:28px;display:flex}.review.feature{background:color-mix(in oklab, var(--green) 6%, var(--cream));border-color:color-mix(in oklab, var(--green) 20%, transparent)}.review-stars{color:var(--gold);gap:2px;margin-bottom:16px;display:inline-flex}.review-quote{font-family:var(--font-serif);color:var(--ink);letter-spacing:-.015em;margin-bottom:22px;font-size:18px;line-height:1.45}.review.feature .review-quote{font-size:18px}.review-author{align-items:center;gap:12px;margin-top:auto;display:flex}.review-avatar{background:var(--green);width:38px;height:38px;color:var(--cream);border-radius:50%;place-items:center;font-size:14px;font-weight:600;display:grid}.review-meta strong{color:var(--ink);font-size:14px;font-weight:600;display:block}.review-meta span{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);margin-top:2px;font-size:10px;display:block}.faq{background:var(--cream)}.faq-grid{grid-template-columns:1fr 1.4fr;align-items:start;gap:clamp(40px,6vw,96px);display:grid}.faq-left .section-sub{margin-bottom:36px}.faq-cta{background:var(--ink);color:var(--cream);border-radius:18px;margin-top:8px;padding:clamp(22px,2.4vw,30px);position:relative;overflow:hidden}.faq-cta:before{content:"";background:radial-gradient(circle at 80% 50%, color-mix(in oklab, var(--green) 70%, transparent), transparent 60%);opacity:.55;pointer-events:none;position:absolute;inset:0}.faq-cta>*{z-index:1;position:relative}.faq-cta .eyebrow{color:var(--moss)}.faq-cta-h{font-family:var(--font-display);color:var(--cream);letter-spacing:-.02em;max-width:22ch;margin:12px 0 20px;font-size:clamp(1.4rem,1.4vw + 1rem,1.8rem);font-weight:600;line-height:1.15}.faq-cta-actions{flex-direction:column;gap:10px;display:flex}.faq-cta-btn{justify-content:center}.faq-cta-btn.btn-primary{background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);color:var(--cream);border-color:var(--brand-darker);box-shadow:inset 0 1px #ffffff26,0 2px 4px #0000002e}.faq-cta-btn.btn-primary:hover{filter:brightness(1.07);background:linear-gradient(180deg, var(--brand-light) 0%, var(--brand-dark) 100%);border-color:var(--brand-darker)}.faq-cta-btn.btn-ghost{color:var(--cream);border-color:color-mix(in oklab, var(--cream) 30%, transparent)}.faq-cta-btn.btn-ghost:hover{background:color-mix(in oklab, var(--cream) 10%, transparent)}.faq-list{flex-direction:column;display:flex}.faq-item{border-top:1px solid var(--line);padding-block:20px}.faq-item:last-child{border-bottom:1px solid var(--line)}.faq-item summary{cursor:pointer;font-family:var(--font-serif);letter-spacing:-.01em;color:var(--ink);justify-content:space-between;align-items:center;gap:24px;font-size:19px;font-weight:500;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary .plus{border:1px solid var(--line-strong);width:24px;height:24px;transition:transform .3s var(--ease-out), background .2s;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.faq-item[open] summary .plus{background:var(--green);color:var(--cream);transform:rotate(45deg)}.faq-item p{color:var(--ink-muted);max-width:62ch;margin-top:12px;font-size:15px;line-height:1.65}.footer{background:var(--ink);color:color-mix(in oklab, var(--cream) 70%, transparent);border-top:1px solid color-mix(in oklab, var(--cream) 10%, transparent);padding-block:64px 32px}.footer-grid{border-bottom:1px solid color-mix(in oklab, var(--cream) 12%, transparent);grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;display:grid}.footer-brand img{border-radius:50%;width:56px;height:56px;margin-bottom:18px}.footer-brand p{font-family:var(--font-serif);color:var(--cream);max-width:30ch;margin-bottom:12px;font-size:17px;font-style:italic;line-height:1.4}.footer-brand .footer-loc{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklab, var(--cream) 60%, transparent);font-size:10px;display:inline-block}.reviews-badge-link{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;align-self:end;font-size:11px}.reviews-badge-link:hover{color:var(--moss);border-color:var(--moss)}.footer-col h4{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:color-mix(in oklab, var(--cream) 55%, transparent);margin-bottom:18px;font-size:11px;font-weight:500}.footer-col ul{flex-direction:column;gap:10px;list-style:none;display:flex}.footer-col a{color:color-mix(in oklab, var(--cream) 80%, transparent);font-size:14px;transition:color .2s}.footer-col a:hover{color:var(--moss)}.footer-fb{border:1px solid color-mix(in oklab, var(--cream) 22%, transparent);border-radius:999px;align-items:center;gap:8px;margin-top:4px;padding:8px 12px;transition:background .2s,border-color .2s;display:inline-flex}.footer-fb:hover{background:color-mix(in oklab, var(--cream) 8%, transparent);border-color:var(--moss)}.footer-bottom{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in oklab, var(--cream) 50%, transparent);justify-content:space-between;align-items:center;padding-top:28px;font-size:11px;display:flex}@media (width<=980px){.nav-links,.nav-name{display:none}.nav-logo{width:52px;height:52px}.nav-burger{display:inline-flex}.trust-inner{grid-template-columns:repeat(2,1fr);gap:18px}.quote-grid{grid-template-columns:1fr}.services-showcase{grid-template-columns:1fr;align-items:start}.services-grid{grid-template-columns:repeat(2,1fr)}.services-showcase .services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.svc-card,.svc-card:nth-child(4),.svc-card:nth-child(5){grid-column:span 1}.story-inner{grid-template-columns:1fr}.story-badge{max-width:280px;margin-inline:auto}.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.faq-grid,.cta-card{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=760px){.hf-row-3,.hf-row-2{grid-template-columns:1fr}.hero{align-items:stretch;min-height:100dvh;padding-top:110px;padding-bottom:40px;display:flex}.hero-inner{flex:1;align-items:center;width:100%;display:flex}.hero-bg{opacity:.85}.hero-bg:after{background:linear-gradient(to bottom, color-mix(in oklab, var(--cream) 75%, transparent) 0%, color-mix(in oklab, var(--cream) 55%, transparent) 35%, color-mix(in oklab, var(--cream) 35%, transparent) 65%, color-mix(in oklab, var(--cream) 80%, transparent) 100%)}.hero-copy{text-align:center;flex-direction:column;align-items:center;width:100%;margin-inline:auto;display:flex}.hero-mark{justify-content:center;display:flex}.tagline-strip{justify-content:center}.hero-brand{max-width:none}.hero-logo{width:clamp(120px,32vw,160px)}.hero-brand{margin-bottom:16px;font-size:clamp(2.2rem,10vw,3rem)}.hero-sub{max-width:40ch;color:var(--ink);margin-bottom:24px;font-size:.98rem;font-weight:500;line-height:1.5}.btn-hero,.btn-hero-ghost{min-height:44px;padding:12px 22px;font-size:13px}.hero-actions{flex-flow:row;align-items:stretch;gap:8px;width:100%}.hero-actions a{white-space:nowrap;flex:1 1 0;justify-content:center;min-width:0;padding-left:12px;padding-right:12px;font-size:12.5px}.hero-actions .btn-hero-ghost{background:var(--ink);color:var(--cream);border-color:var(--ink);font-weight:600;box-shadow:inset 0 1px #ffffff1a,0 2px 4px #0000002e}.hero-actions .btn-hero-ghost svg{color:var(--moss)}.tagline-strip{flex-wrap:wrap;gap:8px;width:100%;margin-bottom:12px;font-size:11px;line-height:1.3;display:flex}.tagline-strip span{white-space:nowrap}.tagline-strip i{width:4px;height:4px}.quote-card-v2{border-radius:16px;padding:18px}.quote-card-head{margin-bottom:14px;padding-bottom:14px}.hero-quote-badge{width:24px;height:24px}.quote-card-head h3{font-size:16px}.hero-form,.hf-row{gap:10px}.hero-form input,.hero-form select{min-height:44px;padding:11px 14px;font-size:14px}.hero-submit{min-height:48px;margin-top:0;padding:12px 16px;font-size:14px}.story{padding-top:78px}}@media (width<=560px){section{padding-block:72px}.nav-inner{gap:12px;padding:9px 16px}.nav-logo,.nav-icon{width:44px;height:44px}.nav-cta{justify-content:center;gap:0;width:44px;height:44px;padding:0}.nav-cta span{display:none}.nav-burger{width:44px;height:44px}.hero{padding-top:88px}.tagline-strip{gap:6px;max-width:none;font-size:10.5px}.hero-form input,.hero-form select,.hero-submit{border-radius:14px}.form-row,.form-row.three,.services-grid{grid-template-columns:1fr}.services-showcase{gap:28px}.services-showcase .services-grid{grid-template-columns:1fr}.services-photo-wrap:after{inset:10px -8px -10px 10px}.services-photo{border-radius:14px}.svc-card{padding:24px 22px}.services-head{grid-template-columns:1fr;gap:18px}.reviews-grid{grid-template-columns:1fr}.story-stats{grid-template-columns:1fr 1fr;gap:14px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer-bottom{flex-direction:column;gap:10px}}@media (width<=760px) and (height<=720px){.hero{padding-top:96px;padding-bottom:40px}.hero-logo{width:110px}.tagline-strip{gap:6px;margin-bottom:8px;font-size:10px}.hero-brand{margin-bottom:10px;font-size:clamp(1.9rem,9vw,2.4rem)}.hero-sub{margin-bottom:14px;font-size:.88rem;line-height:1.34}}
