:root{--color-bg: #131519;--color-bg-tint: #1b1e24;--color-surface: #22262f;--color-border: rgba(255, 255, 255, .08);--color-border-strong: #767c86;--color-ink: #f4f6f8;--color-ink-muted: #a4abb6;--color-accent: #ff2e33;--color-accent-strong: #e11922;--color-accent-soft: rgba(255, 46, 51, .12);--color-accent-ink: #17171b;--amber: #ffb24d;--cobalt: #17233f;--font-display: "Space Grotesk Variable", "Space Grotesk", system-ui, sans-serif;--font-body: "Public Sans Variable", "Public Sans", system-ui, sans-serif;--step--1: clamp(.833rem, .8rem + .16vw, .9375rem);--step-0: clamp(1rem, .97rem + .15vw, 1.0625rem);--step-1: clamp(1.2rem, 1.13rem + .35vw, 1.375rem);--step-2: clamp(1.44rem, 1.3rem + .7vw, 1.85rem);--step-3: clamp(1.73rem, 1.5rem + 1.15vw, 2.5rem);--step-4: clamp(2.07rem, 1.6rem + 2.35vw, 3.6rem);--step-5: clamp(2.8rem, 1.9rem + 4.5vw, 5.5rem);--space-2xs: .375rem;--space-xs: .625rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--space-3xl: 9rem;--radius-sm: 4px;--radius-md: 10px;--radius-lg: 18px;--container: 1200px;--shadow-sm: 0 1px 2px rgba(8, 10, 20, .6);--shadow-md: 0 6px 18px -6px rgba(8, 10, 20, .7), 0 2px 6px rgba(8, 10, 20, .55);--shadow-lg: 0 32px 60px -24px rgba(8, 10, 20, .85), 0 12px 24px -12px rgba(10, 12, 22, .7), 0 2px 4px rgba(0, 0, 0, .6);--dur-fast: .14s;--dur-base: .46s;--dur-slow: .6s;--ease: cubic-bezier(.16, 1, .3, 1);--reveal-shift: 34px;--reveal-blur: 8px;--stagger-step: 70ms;--glow: rgba(255, 178, 84, .18);--gradient-band: radial-gradient(120% 85% at 50% 108%, rgba(255, 178, 84, .14) 0%, rgba(255, 178, 84, 0) 42%), radial-gradient(130% 90% at 50% 0%, #17233f 0%, #0e1420 46%, #0a0c11 100%);--grain-opacity: .05}</content> *,*::before,*::after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;-webkit-font-smoothing:antialiased}img,picture,svg,video{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;text-wrap:balance;overflow-wrap:break-word}p{text-wrap:pretty}a{color:var(--color-accent)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}@media(prefers-reduced-motion:no-preference){a,button,summary,label,[role=button],[tabindex]{transition:color var(--dur-fast) var(--ease),background-color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease)}}.underline-draw{text-decoration:none;background-image:linear-gradient(currentColor,currentColor);background-repeat:no-repeat;background-position:0 100%;background-size:100% 1.5px;padding-bottom:1px}@media(prefers-reduced-motion:no-preference){.underline-draw{background-size:0% 1.5px;transition:background-size var(--dur-base) var(--ease)}.underline-draw:hover,.underline-draw:focus-visible{background-size:100% 1.5px}}@view-transition{navigation:auto}@media(prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.8em 1.4em;border-radius:var(--radius-sm);font-family:var(--font-body);font-weight:600;font-size:var(--step-0);line-height:1;text-decoration:none;cursor:pointer;border:1px solid transparent}.btn-primary{background:var(--color-accent);color:var(--color-accent-ink);box-shadow:var(--shadow-md)}@media(prefers-reduced-motion:no-preference){.btn-primary:hover,.btn-primary:focus-visible{transform:translateY(-2px)}.btn-primary:active{transform:translateY(0)}}.btn-primary:hover,.btn-primary:focus-visible{background:color-mix(in srgb,var(--color-accent) 96%,white);box-shadow:inset 0 0 0 1px var(--color-accent-strong),0 10px 26px #ff2e3359,var(--shadow-md)}.btn-ghost{background:transparent;color:var(--color-ink);border-color:var(--color-border-strong)}.btn-ghost:hover,.btn-ghost:focus-visible{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-soft)}.eyebrow{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.35em .6em;font-family:var(--font-display);font-weight:500;font-size:var(--step--1);letter-spacing:.16em;text-transform:uppercase;color:var(--color-ink-muted)}.eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--color-accent);flex:none}.lede{font-size:var(--step-1);color:var(--color-ink-muted);line-height:1.5;max-width:46ch}.container{max-width:var(--container);margin-inline:auto;padding-inline:var(--space-md)}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;top:var(--space-xs);left:var(--space-xs);z-index:100;padding:var(--space-xs) var(--space-md);background:var(--color-accent);color:var(--color-accent-ink);border-radius:var(--radius-sm);text-decoration:none;transform:translateY(-300%)}.skip-link:focus-visible{transform:none}.grain:after{content:"";position:fixed;inset:0;z-index:999;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)'/%3E%3C/svg%3E")}.glow-wash{position:relative}.glow-wash:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse var(--glow-size, 70% 55%) at var(--glow-x, 50%) var(--glow-y, 20%),var(--glow) 0%,transparent 70%)}.glow-wash>*{position:relative;z-index:1}.band{background-image:var(--gradient-band)}.scrim{position:relative}.scrim:after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,rgb(0 0 0 / .55) 100%)}.scrim--top:after{background:linear-gradient(0deg,transparent 0%,rgb(0 0 0 / .55) 100%)}.scrim>*{position:relative;z-index:1}.elevated{box-shadow:var(--shadow-lg)}.lift{transition:transform var(--dur-fast) var(--ease),box-shadow var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}@media(prefers-reduced-motion:no-preference){.lift:hover,.lift:focus-visible{transform:translateY(-3px);box-shadow:var(--shadow-md)}.elevated.lift:hover,.elevated.lift:focus-visible{box-shadow:var(--shadow-lg)}}@media(prefers-reduced-motion:no-preference){html.js [data-reveal]:not([data-reveal~=stagger]){opacity:0;transform:translateY(var(--reveal-shift));transition:opacity var(--dur-base) var(--ease),transform var(--dur-base) var(--ease);will-change:opacity,transform}html.js [data-reveal~=blur]:not([data-reveal~=stagger]){filter:blur(var(--reveal-blur));transition:opacity var(--dur-slow) var(--ease),transform var(--dur-slow) var(--ease),filter var(--dur-slow) var(--ease)}html.js [data-reveal~=clip]:not([data-reveal~=stagger]){opacity:1;transform:none;clip-path:inset(0 0 100% 0);transition:clip-path var(--dur-slow) var(--ease)}html.js [data-reveal~=settle]:not([data-reveal~=stagger]){transform:scale(1.04)}html.js [data-reveal~=wipe]:not([data-reveal~=stagger]){position:relative;overflow:hidden;opacity:1;transform:scale(1.06);transition:transform var(--dur-slow) var(--ease)}html.js [data-reveal~=wipe]:not([data-reveal~=stagger]):after{content:"";position:absolute;inset:0;z-index:1;background:var(--color-accent);transform:translate(0);transition:transform var(--dur-slow) var(--ease);will-change:transform}html.js [data-reveal]:not([data-reveal~=stagger]).is-revealed{opacity:1;transform:none;filter:none;clip-path:none;will-change:auto}html.js [data-reveal~=wipe]:not([data-reveal~=stagger]).is-revealed:after{transform:translate(101%)}html.js [data-reveal~=stagger]>*{opacity:0;transform:translateY(var(--reveal-shift));transition:opacity var(--dur-base) var(--ease),transform var(--dur-base) var(--ease);will-change:opacity,transform}html.js [data-reveal~=stagger][data-reveal~=settle]>*{transform:scale(1.04)}html.js [data-reveal~=stagger].is-revealed>*{opacity:1;transform:none;will-change:auto}html.js [data-reveal~=stagger]>:nth-child(1){transition-delay:0ms}html.js [data-reveal~=stagger]>:nth-child(2){transition-delay:var(--stagger-step)}html.js [data-reveal~=stagger]>:nth-child(3){transition-delay:calc(var(--stagger-step) * 2)}html.js [data-reveal~=stagger]>:nth-child(4){transition-delay:calc(var(--stagger-step) * 3)}html.js [data-reveal~=stagger]>:nth-child(5){transition-delay:calc(var(--stagger-step) * 4)}html.js [data-reveal~=stagger]>:nth-child(6){transition-delay:calc(var(--stagger-step) * 5)}html.js [data-reveal~=stagger]>:nth-child(7){transition-delay:calc(var(--stagger-step) * 6)}html.js [data-reveal~=stagger]>:nth-child(n+8){transition-delay:calc(var(--stagger-step) * 7)}html.js [data-load-seq]>*{animation:load-rise var(--dur-slow) var(--ease) both}html.js [data-load-seq]>:nth-child(2){animation-delay:var(--stagger-step)}html.js [data-load-seq]>:nth-child(3){animation-delay:calc(var(--stagger-step) * 2)}html.js [data-load-seq]>:nth-child(4){animation-delay:calc(var(--stagger-step) * 3)}html.js [data-load-seq]>:nth-child(5){animation-delay:calc(var(--stagger-step) * 4)}html.js [data-load-seq]>:nth-child(n+6){animation-delay:calc(var(--stagger-step) * 5)}@supports (animation-timeline: view()){.st-drift{animation:st-drift linear both;animation-timeline:view()}.st-draw{stroke-dasharray:1;animation:st-draw linear both;animation-timeline:view();animation-range:entry 0% cover 45%}.st-settle{animation:st-settle var(--ease) both;animation-timeline:view();animation-range:entry 0% entry 90%}.st-scale{animation:st-scale var(--ease) both;animation-timeline:view();animation-range:entry 0% cover 60%}}}@keyframes load-rise{0%{opacity:0;transform:translateY(var(--reveal-shift))}to{opacity:1;transform:none}}@keyframes st-drift{0%{transform:translateY(5%)}to{transform:translateY(-5%)}}@keyframes st-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes st-settle{0%{opacity:.3;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes st-scale{0%{transform:scale(1.12)}to{transform:scale(1)}}.site-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--color-bg) 82%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);transition:background var(--dur-base) var(--ease),border-color var(--dur-base) var(--ease)}.site-header[data-scrolled]{background:color-mix(in srgb,var(--color-bg) 94%,transparent);border-bottom-color:color-mix(in srgb,var(--color-border-strong) 40%,transparent)}.header-inner{max-width:var(--container);margin-inline:auto;padding:var(--space-sm) var(--space-md);display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.brand-chip{display:inline-flex;align-items:center;padding:7px 12px;background:#eaedf1;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.site-header .brand-chip img{width:auto;height:34px}.primary-nav{display:flex;align-items:center;gap:var(--space-lg)}.primary-nav ul{display:flex;align-items:center;gap:var(--space-md);list-style:none;padding:0}.primary-nav a{color:var(--color-ink);font-weight:600;font-size:var(--step--1);letter-spacing:.01em}.primary-nav ul a:hover,.primary-nav ul a:focus-visible{color:var(--color-accent)}.header-cta{display:flex;align-items:center;gap:var(--space-sm)}.phone-chip{display:inline-flex;align-items:center;gap:.5em;padding:.5em .9em;border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-ink);font-weight:600;font-size:var(--step--1);font-family:var(--font-display);text-decoration:none;white-space:nowrap}.phone-chip:hover,.phone-chip:focus-visible{background:var(--color-accent-soft)}.phone-dot{width:7px;height:7px;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 0 var(--color-accent)}@media(prefers-reduced-motion:no-preference){.phone-dot{animation:pulse-dot 2.4s var(--ease) infinite}}@keyframes pulse-dot{0%,to{box-shadow:0 0 color-mix(in srgb,var(--color-accent) 60%,transparent)}50%{box-shadow:0 0 0 5px transparent}}.nav-toggle{display:none;width:44px;height:44px;background:transparent;border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;position:relative}.nav-toggle-bars,.nav-toggle-bars:before,.nav-toggle-bars:after{position:absolute;left:50%;width:20px;height:2px;background:var(--color-ink);transform:translate(-50%);content:""}.nav-toggle-bars{top:50%;margin-top:-1px}.nav-toggle-bars:before{top:-6px}.nav-toggle-bars:after{top:6px}@media(max-width:860px){.nav-toggle{display:block}.primary-nav{position:absolute;inset:100% 0 auto;flex-direction:column;align-items:stretch;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-tint);border-bottom:1px solid var(--color-border);max-height:0;overflow:hidden;opacity:0;pointer-events:none;visibility:hidden;transition:max-height var(--dur-base) var(--ease),opacity var(--dur-base) var(--ease),visibility var(--dur-base) var(--ease)}.primary-nav.is-open{max-height:80vh;opacity:1;pointer-events:auto;visibility:visible}.primary-nav ul{flex-direction:column;align-items:stretch;gap:var(--space-sm)}.primary-nav ul a{display:block;padding:var(--space-2xs) 0;font-size:var(--step-0)}.header-cta{flex-direction:column;align-items:stretch}.phone-chip{justify-content:center}.site-header .btn-primary{text-align:center}}.site-footer{background:#0d0f13;border-top:1px solid var(--color-border);padding-block:var(--space-2xl) var(--space-lg);color:var(--color-ink-muted)}.footer-inner{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:var(--space-xl) var(--space-lg)}.site-footer .brand-chip{padding:8px 12px}.site-footer .brand-chip img{width:auto;height:40px}.footer-tag{margin-top:var(--space-md);font-size:var(--step--1);max-width:40ch;line-height:1.6}.footer-badge{margin-top:var(--space-md);width:96px;height:auto;opacity:.9}.footer-col h2{font-family:var(--font-display);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink);margin-bottom:var(--space-sm)}.footer-col ul{list-style:none;padding:0;display:grid;gap:var(--space-xs)}.footer-col a{color:var(--color-ink-muted);text-decoration:none;font-size:var(--step--1)}.footer-col a:hover,.footer-col a:focus-visible{color:var(--color-accent)}.footer-towns{font-size:var(--step--1);line-height:1.7;max-width:34ch}.footer-legal{display:flex;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;margin-top:var(--space-2xl);padding-top:var(--space-md);border-top:1px solid var(--color-border);font-size:var(--step--1)}.footer-legal p{margin:0}@media(max-width:860px){.footer-inner{grid-template-columns:1fr 1fr}}@media(max-width:520px){.footer-inner{grid-template-columns:1fr}}.current-divider{max-width:var(--container);margin-inline:auto;padding-inline:var(--space-md)}.current-svg{display:block;width:100%;height:34px;overflow:visible}.current-divider.flip .current-svg{transform:scaleX(-1)}.current-divider .node{filter:drop-shadow(0 0 5px color-mix(in srgb,var(--color-accent) 60%,transparent))}@supports not (animation-timeline: view()){.current-line{stroke-dasharray:none}}.contact-form{display:grid;gap:var(--space-md);max-width:34rem}.contact-form .field{display:grid;gap:var(--space-2xs)}.contact-form label{font-size:var(--step--1);font-weight:600}.contact-form input,.contact-form textarea{padding:var(--space-sm);background:var(--color-surface);color:var(--color-ink);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm)}.contact-form .submit{justify-self:start;padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-accent-ink);border:0;border-radius:var(--radius-sm);font-weight:600;cursor:pointer;transition:background var(--dur-fast) var(--ease)}.contact-form .submit:hover,.contact-form .submit:focus-visible{background:color-mix(in srgb,var(--color-accent) 96%,white)}.contact-form .follow-up,.contact-form .alt-contact,.contact-form .required-note{font-size:var(--step--1);color:var(--color-ink-muted)}.contact-form .required-note{margin-top:calc(-1 * var(--space-xs))}.contact-form .alt-contact a{color:var(--color-ink);text-decoration:underline;text-underline-offset:2px}.contact-form .alt-contact a:hover,.contact-form .alt-contact a:focus-visible{text-decoration-thickness:2px}.contact-form .form-status{font-weight:600}.section[data-astro-cid-sh445jdo]{padding-block:var(--space-2xl)}.section[data-astro-cid-sh445jdo].tint{background:var(--color-bg-tint)}
