:root{--hb-canvas: #f4f6f9;--hb-canvas-depth: #e6ebf2;--hb-surface: #ffffff;--hb-surface-muted: #edf1f6;--hb-surface-feature: #eff3f8;--hb-border-subtle: #d5deea;--hb-text-primary: #1f2c3a;--hb-text-secondary: #4f6075;--hb-text-inverse: #f7f9fc;--hb-primary: #5e7698;--hb-primary-mid: #8195b1;--hb-primary-soft: #dbe3ef;--hb-accent-sage: #9fb6cd;--hb-accent-apricot: #e7d8c8;--hb-accent-lavender: #d7deec;--hb-accent-ink: #3f566f;--hb-success: #4b7b57;--hb-warning: #9a6a3a;--hb-error: #a34d4d;--hb-focus-ring: #5e7698;--hb-shadow-tint: rgba(26, 40, 58, .12);--hb-dark-bg: #1f2c3a;--hb-font-display: "Cormorant Garamond", Georgia, serif;--hb-font-heading: "Alegreya", Georgia, serif;--hb-font-body: "Source Sans 3", system-ui, sans-serif;--hb-display-xl: 56px;--hb-display-xl-lh: 1.08;--hb-display-xl-ls: -.015em;--hb-display-md: 40px;--hb-display-md-lh: 1.12;--hb-heading-lg: 30px;--hb-heading-lg-lh: 1.2;--hb-heading-md: 24px;--hb-heading-md-lh: 1.25;--hb-body-lg: 18px;--hb-body-lg-lh: 1.58;--hb-body-md: 16px;--hb-body-md-lh: 1.55;--hb-body-sm: 14px;--hb-body-sm-lh: 1.45;--hb-label-caps: 12px;--hb-label-caps-lh: 1.35;--hb-label-caps-ls: .08em;--hb-weight-body: 400;--hb-weight-display: 500;--hb-weight-strong: 700;--hb-radius-sm: 6px;--hb-radius-md: 8px;--hb-radius-lg: 10px;--hb-radius-xl: 12px;--hb-radius-pill: 10px;--hb-space-1: 4px;--hb-space-2: 8px;--hb-space-3: 12px;--hb-space-4: 16px;--hb-space-5: 24px;--hb-space-6: 32px;--hb-space-7: 40px;--hb-space-8: 56px;--hb-canvas-margin: 72px;--hb-section-gap: 96px;--hb-elevation-card: 0 14px 32px var(--hb-shadow-tint);--hb-elevation-nav: 0 12px 28px var(--hb-shadow-tint);--bg: var(--hb-canvas);--surface: var(--hb-surface);--surface-strong: var(--hb-surface-feature);--line: var(--hb-border-subtle);--text: var(--hb-text-primary);--muted: var(--hb-text-secondary);--teal: var(--hb-primary);--teal-strong: var(--hb-accent-ink);--amber: var(--hb-primary);--focus: var(--hb-focus-ring);--radius: var(--hb-radius-xl);--shadow: var(--hb-elevation-card);font-family:var(--hb-font-body);color:var(--text);background:radial-gradient(circle at 0% 0%,var(--hb-surface) 0%,var(--bg) 45%)}[data-theme=dark],.hb-dark{--hb-canvas: #141d27;--hb-canvas-depth: #0e151d;--hb-surface: #1f2c3a;--hb-surface-muted: #283645;--hb-surface-feature: #243240;--hb-border-subtle: #38495d;--hb-text-primary: #e8eef6;--hb-text-secondary: #a6b6ca;--hb-text-inverse: #0f1822;--hb-primary: #8fa3bd;--hb-primary-mid: #a9bcd4;--hb-primary-soft: #2c3e52;--hb-accent-sage: #9fb6cd;--hb-accent-apricot: #e7d8c8;--hb-accent-lavender: #34465a;--hb-accent-ink: #b7c8da;--hb-focus-ring: #8fa3bd;--hb-shadow-tint: rgba(0, 0, 0, .5)}.hb-page-bg{background:radial-gradient(circle at 12% 0%,#ffffff 0%,var(--hb-canvas) 52%,var(--hb-canvas-depth) 100%);color:var(--hb-text-primary);font-family:var(--hb-font-body)}[data-theme=dark] .hb-page-bg,.hb-dark .hb-page-bg{background:radial-gradient(circle at 12% 0%,#243240 0%,var(--hb-canvas) 55%,var(--hb-canvas-depth) 100%)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(180deg,var(--hb-surface-feature) 0%,var(--bg) 16rem,var(--hb-canvas-depth) 100%)}h1,h2,h3{font-family:var(--hb-font-heading);letter-spacing:-.01em;line-height:1.2;margin-top:0}p{line-height:1.68}a,button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.shell{min-height:100vh}.header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffd9;box-shadow:var(--hb-elevation-nav)}[data-theme=dark] .header{background:#141d27d9}.header-inner{max-width:1140px;margin:0 auto;padding:14px 20px;display:grid;gap:12px;grid-template-columns:auto 1fr auto;align-items:center}.brand{color:var(--text);text-decoration:none;display:inline-flex;align-items:center;gap:10px}.brand-logo{display:block;height:40px;width:40px;flex:none}.brand-copy{display:flex;flex-direction:column;align-items:flex-start;gap:0}.brand-name{font-family:var(--hb-font-heading);font-weight:700;font-size:1.3rem;line-height:1.1;letter-spacing:-.01em;white-space:nowrap}.brand-name .wm-heritage{color:var(--hb-accent-ink)}.brand-name .wm-byte{color:var(--hb-primary)}.brand-name .wm-lob{color:var(--hb-text-secondary);font-weight:600}.brand-tagline{font-family:var(--hb-font-body);font-size:11px;line-height:1.2;margin-top:2px;letter-spacing:.08em;text-transform:uppercase;color:var(--hb-accent-ink);font-weight:700;white-space:nowrap}.menu-toggle{display:none;justify-self:end;border:1px solid var(--line);background:var(--surface);padding:8px 12px;border-radius:var(--hb-radius-pill);color:var(--text);font-weight:700}.nav{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px 12px}.nav a{color:var(--hb-text-secondary);text-decoration:none;font-weight:600;padding:6px 12px;border-radius:var(--hb-radius-pill);transition:background .15s ease,color .15s ease}.nav a:hover{color:var(--hb-primary)}.nav a.active{color:var(--hb-primary);background:var(--hb-primary-soft)}.header-cta,.nav-cta,.button-primary,.button-secondary{border-radius:var(--hb-radius-pill);padding:10px 16px;text-decoration:none;font-weight:700;line-height:1.2;display:inline-flex;align-items:center;justify-content:center;white-space:normal;text-align:center}.header-cta,.button-primary{color:var(--hb-text-inverse);background:var(--hb-primary)}.header-cta:hover,.button-primary:hover{background:var(--hb-accent-ink)}.nav-cta,.button-secondary{color:var(--hb-primary);border:1px solid var(--hb-primary);background:transparent}.nav-cta:hover,.button-secondary:hover{background:var(--hb-primary-soft)}.nav-cta{display:none}main{max-width:1140px;margin:0 auto;padding:20px}.section{margin:20px 0;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,var(--surface) 0%,var(--hb-surface-feature) 100%);box-shadow:var(--shadow)}.eyebrow{margin:0;color:var(--hb-accent-ink);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.hero{padding-top:28px}.hero-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:22px}.hero-content,.hero-media{min-width:0}.hero-media img{width:100%;display:block;border-radius:var(--hb-radius-xl);border:1px solid var(--line);background:var(--hb-surface-muted);box-shadow:var(--shadow)}.section p{margin:0}.section p+p{margin-top:.9rem}.section ul,.section ol{font-family:var(--hb-font-body);color:var(--muted);line-height:1.68}.section li{color:var(--muted);line-height:1.68}.section-photo{margin:16px 0 4px}.section-photo img{width:100%;display:block;border-radius:var(--hb-radius-xl);border:1px solid var(--line);box-shadow:var(--shadow);object-fit:cover;max-height:320px}.hero-title{margin:8px 0 12px;font-family:var(--hb-font-display);font-weight:var(--hb-weight-display);font-size:clamp(1.8rem,3.8vw,2.9rem);max-width:20ch}.hero-copy{margin:0;max-width:66ch;color:var(--muted)}.cta-row{margin-top:18px;display:flex;flex-wrap:wrap;gap:10px}.trust{border-top:5px solid var(--amber)}.trust-grid,.cards-grid,.footer-grid{display:grid;gap:14px}.trust-grid,.cards-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card{border:1px solid var(--line);border-radius:var(--hb-radius-xl);background:var(--surface-strong);padding:14px}.card p+p{margin-top:.75rem}.card p,.service-block p,.section p{color:var(--muted)}.card a,.text-link{color:var(--teal-strong);font-weight:700}.card a.button-primary,.card a.button-primary:visited{color:var(--hb-text-inverse)}.card a.button-secondary,.card a.button-secondary:visited{color:var(--hb-primary)}.text-link{background:none;border:0;border-radius:0;padding:0;text-decoration:underline;cursor:pointer}.text-link:hover{color:var(--teal)}.case-study-cta-row,.service-cta-row{margin-top:14px}.case-study-outcome{margin-top:16px}.case-study-outcome ul{margin:10px 0 0;padding-left:20px;color:var(--muted);font-family:var(--hb-font-body);line-height:1.68}.case-study-outcome li{font-family:var(--hb-font-body)}.case-study-outcome li+li{margin-top:8px}.legal-page>h1{margin-bottom:12px}.legal-page>h2{margin-top:20px;margin-bottom:10px}.legal-cards .card{padding:16px}.legal-cards .card p{line-height:1.72}.service-block ul{margin:8px 0 12px;padding-left:18px;display:grid;gap:6px}.final-cta{border-top:5px solid var(--teal)}.reassurance{margin-top:12px;font-size:.92rem}.contact-form{display:grid;gap:12px}.contact-form label{display:grid;gap:6px;font-weight:600}.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.contact-submit-note{border:1px solid var(--line);border-radius:var(--hb-radius-lg);background:var(--surface-strong);padding:10px}.contact-submit-note p{margin:0}.contact-submit-note p+p{margin-top:6px}input,textarea,select,button{padding:10px;border-radius:var(--hb-radius-md);border:1px solid var(--hb-border-subtle);background:var(--hb-surface)}button{background:var(--hb-primary);color:var(--hb-text-inverse);border:none;cursor:pointer;font-weight:700}button:hover{background:var(--hb-accent-ink)}.error{color:var(--hb-error);font-weight:700}.admin-page{display:grid;gap:14px}.admin-auth-form,.admin-filter-form{display:grid;gap:10px}.admin-auth-form label,.admin-filter-form label{display:grid;gap:6px;font-weight:600}.admin-header-row{display:flex;justify-content:space-between;gap:12px;align-items:center}.admin-filter-form{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-filter-actions{display:flex;gap:8px;align-items:center;align-self:end}.admin-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:var(--hb-radius-lg);background:var(--hb-surface)}.admin-leads-table{width:100%;border-collapse:collapse;min-width:820px}.admin-leads-table th,.admin-leads-table td{border-bottom:1px solid var(--hb-border-subtle);text-align:left;vertical-align:top;padding:10px;font-size:.92rem}.admin-leads-table th{background:var(--hb-surface-muted);font-weight:700}.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:12px}.footer{margin-top:20px;border-top:1px solid var(--line);background:var(--hb-surface-muted)}.footer-grid{max-width:1140px;margin:0 auto;padding:20px;grid-template-columns:repeat(4,minmax(0,1fr))}.footer h3{margin:0 0 8px;font-size:1rem}.footer ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}.footer a{color:var(--teal-strong);text-decoration:none}@media(max-width:960px){.header-inner{grid-template-columns:auto auto}.menu-toggle{display:inline-flex}.header-cta{display:none}.nav{grid-column:1 / -1;display:none;align-items:flex-start;justify-content:flex-start;flex-direction:column;padding-top:6px}.nav.is-open{display:flex}.nav-cta{display:inline-flex}.trust-grid,.cards-grid,.footer-grid,.admin-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-layout{grid-template-columns:1fr;gap:16px}.hero-media{order:-1}}@media(max-width:640px){.header-inner,main,.footer-grid{padding-left:14px;padding-right:14px}.section{padding:16px}.section{margin:14px 0}.section>h1{margin-bottom:10px;font-size:clamp(1.55rem,6.4vw,1.9rem)}.section>h2{margin-bottom:8px;font-size:clamp(1.25rem,5.3vw,1.5rem)}.brand-logo{height:32px;width:32px}.trust-grid,.cards-grid,.footer-grid{grid-template-columns:1fr}.button-primary,.button-secondary,.nav-cta,.service-cta-row .button-secondary{width:100%}.case-study-outcome{margin-top:12px;padding:14px}.case-study-outcome ul{padding-left:18px}.legal-cards{gap:10px}.legal-cards .card{padding:14px}.admin-filter-form{grid-template-columns:1fr}.admin-header-row,.admin-pagination{flex-direction:column;align-items:stretch}}@media(max-width:420px){.brand-logo{height:36px;width:36px}.brand-name{font-size:1.15rem}.brand-tagline{display:none}}.theme-toggle{position:fixed;right:18px;bottom:18px;z-index:1000;width:44px;height:44px;border-radius:999px;border:1px solid var(--hb-border-subtle);background:var(--hb-surface);color:var(--hb-text-primary);box-shadow:0 8px 22px var(--hb-shadow-tint);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:18px;line-height:1;transition:transform .15s ease,background .2s ease,color .2s ease}.theme-toggle:hover{transform:translateY(-2px)}.theme-toggle:focus-visible{outline:2px solid var(--hb-focus-ring);outline-offset:2px}
