:root{color-scheme:light;--color-primary: #123524;--color-primary-dark: #0b2217;--color-primary-light: #f0f5f2;--color-accent: #c5a059;--color-accent-dark: #a27e3b;--color-accent-dark-text: #735620;--color-accent-light: #faf7f0;--color-ink: #1e293b;--color-muted: #475569;--color-muted-light: #64748b;--color-bg-base: #f8fafc;--color-bg-surface: #ffffff;--color-bg-alt: #f1f5f9;--color-bg-faq: #f3f4f0;--color-bg-hero-accent: #eef3eb;--color-footer-bg: #0d1310;--color-line: #cbd5e1;--color-line-subtle: #e2e8f0;--color-line-accent: #ecd8a5;--color-focus: #123524;--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-black: 900;--line-height-body: 1.6;--line-height-heading: 1.15;--space-xs-subtle: .15rem;--space-xxs: .25rem;--space-xs: .5rem;--space-xsm: .75rem;--space-header-py: .9rem;--space-sm: 1rem;--space-header-call-px: 1.15rem;--space-md-lg: 1.25rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-xxl: 4rem;--space-card-padding: 1.5rem;--space-card-media-mb: .4rem;--space-card-media-py: .4rem;--space-section-py: clamp(3rem, 7vw, 6rem);--space-container-px: clamp(1.2rem, 5vw, 5rem);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(15, 23, 42, .05);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .08), 0 2px 4px -2px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .08), 0 4px 6px -4px rgba(15, 23, 42, .04);--shadow-xl: 0 20px 25px -5px rgba(15, 23, 42, .1), 0 8px 10px -6px rgba(15, 23, 42, .05);--transition-fast: .15s ease;--transition-smooth: .25s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg-base);color:var(--color-ink)}body,button,input,select,textarea{font-family:var(--font-sans);font-size:16px;line-height:var(--line-height-body)}a{color:inherit;transition:color var(--transition-fast)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.quote-section,.site-footer,.area-section{--color-focus: var(--color-accent)}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:var(--line-height-heading);letter-spacing:-.01em;color:var(--color-primary-dark)}h1{max-width:980px;font-size:clamp(2.4rem,6vw,4.5rem);margin-bottom:var(--space-md);font-weight:var(--font-weight-black)}h2{font-size:clamp(1.8rem,3.5vw,2.8rem);margin-bottom:var(--space-sm);font-weight:var(--font-weight-black)}h3{font-size:1.35rem;margin-bottom:var(--space-xs);font-weight:var(--font-weight-bold)}p{color:var(--color-muted)}.eyebrow,.card-kicker{color:var(--color-accent-dark-text);font-size:.78rem;font-weight:var(--font-weight-black);letter-spacing:.08em;margin-bottom:var(--space-xs);text-transform:uppercase}.site-header{align-items:center;background:#fffffff2;border-bottom:1px solid var(--color-line-subtle);display:grid;gap:var(--space-sm);grid-template-columns:auto 1fr auto;padding:var(--space-header-py) var(--space-container-px);position:sticky;top:0;z-index:20;backdrop-filter:blur(14px);box-shadow:var(--shadow-sm)}.brand{align-items:center;display:inline-flex;gap:.65rem;font-size:1.25rem;font-weight:var(--font-weight-black);text-decoration:none;color:var(--color-primary-dark)}.brand-logo{border-radius:var(--radius-sm);height:34px;width:34px;object-fit:contain}.primary-nav{display:flex;gap:var(--space-md);justify-content:center}.primary-nav a{color:var(--color-muted);font-weight:var(--font-weight-semibold);text-decoration:none;font-size:.95rem;padding:0 var(--space-xsm);border-radius:var(--radius-sm);transition:var(--transition-smooth);display:inline-flex;align-items:center;min-height:48px}.primary-nav a:hover{color:var(--color-primary);background:var(--color-primary-light)}.header-actions{align-items:center;display:flex;gap:var(--space-sm);justify-content:flex-end}.header-call{align-items:center;display:inline-flex;gap:.5rem;color:var(--color-primary);font-weight:var(--font-weight-bold);text-decoration:none;font-size:.9rem;background:var(--color-accent-light);border:1px solid var(--color-line-accent);padding:var(--space-xsm) var(--space-header-call-px);border-radius:var(--radius-full);box-shadow:var(--shadow-sm);transition:var(--transition-smooth);min-height:48px}.header-call svg{margin-right:var(--space-xs-subtle)}.header-call:hover{background:var(--color-accent);color:var(--color-primary-dark);border-color:var(--color-accent);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn{align-items:center;border:1px solid transparent;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-weight:var(--font-weight-bold);justify-content:center;min-height:48px;padding:.78rem 1.35rem;text-decoration:none;box-shadow:var(--shadow-sm);transition:var(--transition-smooth)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary{background:transparent;border-color:var(--color-primary);color:var(--color-primary-dark)}.btn-secondary:hover{background:var(--color-primary-light);transform:translateY(-1px)}.btn-secondary.light{border-color:#ffffff80;color:#fff}.btn-secondary.light:hover{background:#ffffff26;border-color:#fff}.hero,.page-hero,.section,.quote-section,.site-footer{padding-left:var(--space-container-px);padding-right:var(--space-container-px)}.hero{align-items:stretch;display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:minmax(0,1.05fr) minmax(320px,.75fr);min-height:76vh;padding-bottom:clamp(3.5rem,8vw,6rem);padding-top:clamp(3.5rem,8vw,6rem)}.hero-home{background:linear-gradient(105deg,#f8fafcfa,#f8fafce6 52%,#12352414),repeating-linear-gradient(135deg,rgba(18,53,36,.04) 0 2px,transparent 2px 22px),linear-gradient(135deg,var(--color-bg-base),var(--color-bg-hero-accent))}.hero-copy{align-self:center}.hero-copy p,.page-hero p,.section-heading p,.quote-copy p,.split-section>p{color:var(--color-muted);font-size:1.08rem;line-height:1.7;max-width:760px}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin-top:var(--space-md)}.hero-proof{align-self:center;background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:clamp(1.4rem,4vw,2.2rem)}.hero-proof h2{font-size:clamp(1.6rem,3vw,2.3rem);color:var(--color-primary-dark)}.hero-visual-stack{align-self:center;display:grid;gap:var(--space-md)}.hero-media{margin:0}.hero-media img,.service-card-media img{display:block;height:auto;width:100%}.home-hero-media img,.service-page-media img{aspect-ratio:16 / 10;border:1px solid var(--color-line-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);object-fit:cover}.hero-media figcaption,.service-card-media figcaption{color:var(--color-muted-light);font-size:.8rem;margin-top:var(--space-xs)}.page-hero{background:linear-gradient(120deg,#f8fafcfa,#eef3ebeb),repeating-linear-gradient(90deg,rgba(18,53,36,.03) 0 1px,transparent 1px 28px);padding-bottom:clamp(3rem,6vw,4.5rem);padding-top:clamp(3.5rem,7vw,5.5rem);border-bottom:1px solid var(--color-line-subtle)}.compact-hero{min-height:auto}.contact-funnel-hero{align-items:start;display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:minmax(0,.85fr) minmax(360px,.72fr)}.contact-funnel-hero>*{min-width:0}.contact-funnel-copy{align-self:start}.contact-funnel-form{background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);padding:clamp(1.25rem,3vw,2rem)}.contact-funnel-form h2{color:var(--color-primary-dark);font-size:clamp(1.55rem,2.4vw,2rem)}.contact-funnel-form p{color:var(--color-muted);line-height:1.55}.contact-funnel-form .quote-form{background:transparent;border:0;box-shadow:none;padding:var(--space-sm) 0 0}.compact-request-form{gap:.8rem}.compact-request-form textarea{min-height:104px}.service-hero{border-bottom:1px solid var(--color-line-subtle)}.service-hero-layout{display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:minmax(0,.9fr) minmax(320px,.75fr)}.section{padding-bottom:var(--space-section-py);padding-top:var(--space-section-py)}.section-heading,.split-section,.detail-grid{display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:minmax(0,.85fr) minmax(320px,.8fr)}.section-heading{margin-bottom:var(--space-lg)}.service-grid{display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}.service-card{background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-top:3px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:grid;gap:.65rem;overflow:hidden;padding:var(--space-card-padding);transition:var(--transition-smooth)}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-xl);border-color:var(--color-line-accent)}.service-card-media{margin:calc(-1 * var(--space-card-padding)) calc(-1 * var(--space-card-padding)) var(--space-card-media-mb);border-bottom:1px solid var(--color-line-subtle)}.service-card-media img{aspect-ratio:3 / 2;object-fit:cover}.service-card-media figcaption{padding:var(--space-card-media-py) var(--space-card-padding)}.service-card h3 a{text-decoration:none;color:var(--color-primary-dark);transition:color var(--transition-fast)}.service-card:hover h3 a{color:var(--color-accent-dark-text)}.service-card p{line-height:1.6}.text-link,.service-card .text-link{color:var(--color-primary);font-weight:var(--font-weight-bold);display:inline-flex;align-items:center;gap:.25rem;text-decoration:none;font-size:.95rem}.text-link:hover,.service-card .text-link:hover{color:var(--color-accent-dark-text);text-decoration:underline}.audience-grid,.problem-grid,.related-links{display:grid;gap:.8rem}.audience-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.audience-item{color:var(--color-primary-dark);background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);font-weight:var(--font-weight-semibold);padding:1.15rem}.intent-band{background:var(--color-primary-light);border-bottom:1px solid var(--color-line-subtle);border-top:1px solid var(--color-line-subtle)}.problem-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.problem-grid a,.related-links a{background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:var(--color-primary-dark);font-weight:var(--font-weight-bold);min-height:96px;padding:var(--space-sm);text-decoration:none;display:flex;align-items:center;transition:var(--transition-smooth)}.problem-grid a:hover,.related-links a:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-accent);color:var(--color-accent-dark-text)}.area-section{background:var(--color-primary-dark);color:#fff}.area-section p{color:#ffffffc7}.area-section h2,.area-section h3{color:#fff}.area-section .eyebrow{color:var(--color-accent)}.area-list{display:flex;flex-wrap:wrap;gap:.7rem;list-style:none;margin:0 0 1.5rem;padding:0}.area-list li{background:#ffffff14;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-full);padding:.55rem .95rem;font-size:.9rem;font-weight:var(--font-weight-medium);transition:var(--transition-fast)}.area-list li:hover{background:#ffffff29;border-color:var(--color-accent);transform:translateY(-1px)}.area-list a{color:inherit;text-decoration:none}.area-list a:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.check-list{display:grid;gap:.85rem;list-style:none;margin:0;padding:0}.check-list li{color:var(--color-muted);padding-left:1.5rem;position:relative}.check-list li:before{background:var(--color-accent);border-radius:var(--radius-full);content:"";height:.55rem;left:0;position:absolute;top:.52rem;width:.55rem}.process-section{background:var(--color-bg-surface)}.process-list{counter-reset:steps;display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));list-style:none;margin:0;padding:0}.process-list li{background:var(--color-bg-base);border:1px solid var(--color-line-subtle);border-radius:var(--radius-md);padding:1.35rem;box-shadow:var(--shadow-sm);position:relative}.process-list li:before{counter-increment:steps;content:"0" counter(steps);position:absolute;top:1rem;right:1.25rem;font-size:1.7rem;font-weight:var(--font-weight-black);color:#1235241a}.local-conditions-box{background:var(--color-accent-light);border:1px solid var(--color-line-accent);border-left:4px solid var(--color-accent);border-radius:var(--radius-md);margin-top:var(--space-md);padding:var(--space-md)}.local-conditions-box h3{color:var(--color-primary-dark);font-size:1.1rem;margin-bottom:var(--space-xs)}.local-conditions-box p{font-size:.95rem;line-height:1.55;margin:0}.local-conditions-box .condition-note{color:var(--color-muted);font-size:.9rem;margin-top:var(--space-xsm)}.location-anchor-section{background:var(--color-bg-surface)}.location-anchor-grid{display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.location-anchor-card{background:var(--color-bg-base);border:1px solid var(--color-line-subtle);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;gap:var(--space-xs);padding:var(--space-card-padding)}.location-anchor-card h3 a{color:var(--color-primary-dark);text-decoration:none}.location-anchor-card h3 a:hover{color:var(--color-accent-dark-text);text-decoration:underline}.faq-section{background:var(--color-bg-faq)}.faq-list{display:grid;gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr))}.faq-list article{padding:1.5rem;background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-left:3px solid var(--color-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.related-section{background:var(--color-bg-surface)}.related-links{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.quote-section{background:var(--color-primary-dark);color:#fff;display:grid;gap:clamp(1.5rem,4vw,3rem);grid-template-columns:minmax(0,.75fr) minmax(320px,.85fr);padding-bottom:var(--space-section-py);padding-top:var(--space-section-py)}.quote-section h2{color:#fff}.quote-section p,.quote-section .quote-copy p{color:#fffc}.quote-section .eyebrow{color:var(--color-accent)}.quote-callout{background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-md);display:grid;gap:.5rem;margin-top:var(--space-md);padding:1.25rem}.quote-callout strong{font-size:1.05rem}.quote-callout a{color:#fff;font-size:1.2rem;font-weight:var(--font-weight-black);text-decoration:underline;text-underline-offset:4px;transition:color var(--transition-fast)}.quote-callout a:hover{color:var(--color-accent)}.quote-form{background:var(--color-bg-surface);border:1px solid var(--color-line-subtle);border-radius:var(--radius-md);color:var(--color-ink);display:grid;gap:var(--space-sm);padding:clamp(1.2rem,3vw,2rem);box-shadow:var(--shadow-xl)}label{color:var(--color-primary-dark);display:grid;gap:.35rem;font-weight:var(--font-weight-bold);font-size:.95rem}.checkbox-field{align-items:start;gap:.65rem;grid-template-columns:1rem 1fr;line-height:1.45;color:var(--color-muted)}.checkbox-field input{margin-top:.25rem}input,select,textarea{background:var(--color-bg-base);border:1px solid var(--color-line-subtle);border-radius:var(--radius-sm);color:var(--color-ink);min-height:48px;padding:var(--space-xsm);width:100%;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}textarea{resize:vertical}.site-footer{background:var(--color-footer-bg);color:#fff;display:grid;gap:var(--space-xl);grid-template-columns:1.2fr .7fr .9fr;padding-bottom:clamp(2.5rem,5vw,4.5rem);padding-top:clamp(2.5rem,5vw,4.5rem);border-top:1px solid rgba(255,255,255,.08)}.site-footer h3{font-size:1rem;margin-bottom:.9rem;color:#fff;text-transform:uppercase;letter-spacing:.05em}.site-footer p,.site-footer a,.site-footer li{color:#ffffffc2}.site-footer a:hover{color:var(--color-accent)}.site-footer ul{display:grid;gap:.5rem;list-style:none;margin:0;padding:0}.footer-brand{color:#fff;margin-bottom:1.2rem}.footer-call-box{background:#ffffff0a;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:1rem;margin-top:var(--space-sm);display:grid;gap:.35rem}.footer-call-box strong{font-size:.85rem;color:var(--color-accent);text-transform:uppercase;letter-spacing:.05em}.footer-call-box a{color:#fff;font-size:1.15rem;font-weight:var(--font-weight-black);text-decoration:none;transition:color var(--transition-fast)}.footer-call-box a:hover{color:var(--color-accent)}.mobile-sticky-cta{display:none;position:fixed;bottom:0;left:0;right:0;background:var(--color-bg-surface);border-top:1px solid var(--color-line-subtle);padding:.75rem 1rem;box-shadow:0 -4px 12px #0f172a14;z-index:50;gap:.5rem;grid-template-columns:1fr 1fr}.mobile-sticky-cta .btn{min-height:48px;padding:.6rem .75rem;font-size:.95rem}@media(max-width:980px){.site-header,.hero,.contact-funnel-hero,.service-hero-layout,.section-heading,.split-section,.detail-grid,.quote-section,.site-footer{grid-template-columns:1fr}.primary-nav,.header-actions{justify-content:start}.service-grid,.problem-grid,.process-list,.related-links{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}}@media(max-width:640px){h1{font-size:clamp(2.2rem,11vw,3.2rem)}.site-header{gap:.45rem;grid-template-columns:1fr;padding:.6rem var(--space-container-px);position:sticky}.brand{min-height:40px}.primary-nav{align-items:center;display:flex;gap:.35rem;justify-content:flex-start;overflow-x:auto;padding-bottom:.1rem;scrollbar-width:none}.primary-nav::-webkit-scrollbar{display:none}.primary-nav a{flex:0 0 auto;min-height:48px;padding:0 .55rem;white-space:nowrap}.header-actions{align-items:stretch;display:grid;gap:.5rem;grid-template-columns:1fr 1fr;justify-content:stretch;min-width:0}.hero-actions{align-items:stretch;display:grid}.header-quote,.header-call,.hero-actions .btn{justify-content:center;min-width:0;text-align:center;width:100%}.header-quote,.header-call,.mobile-sticky-cta .btn{padding-left:.65rem;padding-right:.65rem;white-space:normal}.service-grid,.audience-grid,.problem-grid,.process-list,.faq-list,.related-links{grid-template-columns:1fr}.mobile-sticky-cta{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body{padding-bottom:80px}}
