:root{--navy:#1b2a5a;--navy-deep:#101a3b;--ink:#1a2233;--muted:#5b6577;--line:#dfe3ea;--soft:#f4f6f9;--white:#fff;--accent:#b3202c;--accent-dark:#8c1822;--accent-soft:#fdecee;--accent-light:#ffa3aa;--star:#f59e0b;--radius:12px;--shadow:0 1px 2px #14213d0f, 0 8px 24px #14213d14;--wrap:1140px;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--ink);background:var(--white);margin:0;font-size:1.0625rem;line-height:1.65}img,svg{max-width:100%;display:block}a{color:var(--accent)}h1,h2,h3{color:var(--navy);letter-spacing:-.02em;text-wrap:balance;margin:0 0 .5em;line-height:1.15}h1{font-size:clamp(2.1rem,5vw,3.4rem);font-weight:800}h2{font-size:clamp(1.6rem,3.2vw,2.25rem);font-weight:800}h3{font-size:1.2rem;font-weight:700}p{margin:0 0 1em}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.skip-link{z-index:100;background:var(--navy);color:var(--white);padding:.75rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:1.25rem}.section{padding-block:clamp(3rem,7vw,5.5rem)}.section--soft{background:var(--soft)}.section--navy{background:var(--navy);color:#d6dcea}.section--navy h2,.section--navy h3{color:var(--white)}.section-head{max-width:44rem;margin-bottom:2.25rem}.section-head p{color:var(--muted);font-size:1.125rem}.section--navy .section-head p{color:#b8c2d8}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:.8125rem;font-weight:700;display:inline-block}.section--navy .eyebrow,.hero .eyebrow{color:var(--accent-light)}.btn{font:inherit;cursor:pointer;border:2px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1.4rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .15s,color .15s,border-color .15s,transform .15s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--accent);color:var(--white)}.btn--primary:hover{background:var(--accent-dark)}.btn--ghost{color:var(--white);border-color:#ffffff73}.btn--ghost:hover{background:#ffffff1f}.btn--outline{border-color:var(--navy);color:var(--navy)}.btn--outline:hover{background:var(--navy);color:var(--white)}.btn--block{width:100%}.btn svg{width:1.1em;height:1.1em}.site-header{z-index:50;background:var(--white);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header__inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.brand{letter-spacing:-.02em;color:var(--navy);align-items:center;gap:.6rem;font-size:1.2rem;font-weight:800;text-decoration:none;display:flex}.brand__text{font-family:Georgia,Times New Roman,serif;line-height:1.1;display:grid}.brand small{font-family:var(--font);letter-spacing:.12em;text-transform:uppercase;color:var(--accent);font-size:.68rem;font-weight:700}.site-footer .brand small{color:var(--accent-light)}.logo-mark{flex:none;width:3.25rem;height:3.25rem}.logo-full{border-radius:var(--radius);background:var(--white);width:9.5rem;height:auto;margin-bottom:1rem;padding:.75rem}.nav{align-items:center;gap:1.5rem;display:flex}.nav__links{gap:1.4rem;margin:0;padding:0;list-style:none;display:flex}.nav__links a{color:var(--ink);font-size:.975rem;font-weight:600;text-decoration:none}.nav__links a:hover,.nav__links a[aria-current=page]{color:var(--accent)}.nav__phone{color:var(--navy);white-space:nowrap;font-weight:800;text-decoration:none}.nav-toggle{border:1px solid var(--line);background:var(--white);color:var(--navy);cursor:pointer;border-radius:8px;padding:.5rem;display:none}.nav-toggle svg{width:1.5rem;height:1.5rem}@media (width<=960px){.nav-toggle{display:inline-flex}.nav{background:var(--white);border-bottom:1px solid var(--line);box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:1rem;padding:1rem 1.25rem 1.5rem;display:none;position:absolute;inset:100% 0 auto}.nav.is-open{display:flex}.nav__links{flex-direction:column;gap:0}.nav__links a{border-bottom:1px solid var(--line);padding:.75rem 0;font-size:1.05rem;display:block}}.hero{background:linear-gradient(135deg, var(--navy-deep), var(--navy) 55%, #2c417f);color:#d6dcea;position:relative;overflow:hidden}.hero:after{content:"";clip-path:polygon(0 100%,50% 0,100% 100%);pointer-events:none;background:repeating-linear-gradient(115deg,#ffffff0d 0 26px,#0000 26px 52px);height:38%;position:absolute;inset:auto -10% -1px}.hero__grid{z-index:1;grid-template-columns:1.15fr .85fr;align-items:start;gap:3rem;padding-block:clamp(3rem,7vw,5.5rem);display:grid;position:relative}@media (width>=901px){.hero__grid>:first-child{padding-top:2.5rem}}.hero h1{color:var(--white)}.hero__lead{max-width:34rem;font-size:1.2rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.75rem;display:flex}.chips{color:var(--white);flex-wrap:wrap;gap:.5rem 1.25rem;margin:2rem 0 0;padding:0;font-size:.95rem;font-weight:600;list-style:none;display:flex}.chips li{align-items:center;gap:.4rem;display:flex}.chips svg{width:1.1rem;height:1.1rem;color:var(--accent-light)}@media (width<=900px){.hero__grid{grid-template-columns:1fr}}.page-hero{background:var(--navy);color:#d6dcea;padding-block:clamp(2.5rem,6vw,4rem)}.page-hero h1{color:var(--white);font-size:clamp(1.9rem,4.5vw,2.9rem)}.page-hero p{max-width:42rem;margin:0;font-size:1.15rem}.crumbs{flex-wrap:wrap;gap:.4rem;margin:0 0 1rem;padding:0;font-size:.9rem;list-style:none;display:flex}.crumbs a{color:var(--accent-light);text-decoration:none}.crumbs li+li:before{content:"/";opacity:.5;margin-right:.4rem}.grid{gap:1.25rem;display:grid}.grid--3{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.grid--4{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;padding:1.5rem;display:flex}a.card{color:inherit;text-decoration:none;transition:box-shadow .15s,border-color .15s,transform .15s}a.card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.card p{color:var(--muted);margin-bottom:0}.card__icon{background:var(--accent-soft);width:3rem;height:3rem;color:var(--accent);border-radius:10px;place-items:center;margin-bottom:1rem;display:grid}.card__icon svg{width:1.6rem;height:1.6rem}.card__more{color:var(--accent);margin-top:1rem;font-weight:700}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border-top:3px solid var(--accent);padding-top:1rem}.steps li:before{content:"0" counter(step);letter-spacing:.1em;color:var(--accent-light);margin-bottom:.4rem;font-size:.9rem;font-weight:800;display:block}.steps p{color:#b8c2d8;margin:0}.checks{gap:.6rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.checks li{padding-left:1.75rem;position:relative}.checks li:before{content:"";border-left:3px solid var(--accent);border-bottom:3px solid var(--accent);width:1rem;height:.55rem;position:absolute;top:.45em;left:0;transform:rotate(-45deg)}.pills{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.pills a,.pills span{border:1px solid var(--line);background:var(--white);color:var(--navy);border-radius:999px;padding:.45rem .95rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-block}.pills a:hover{border-color:var(--accent);color:var(--accent)}.split{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start;gap:3rem;display:grid}.split__aside{position:sticky;top:6rem}@media (width<=900px){.split{grid-template-columns:1fr}.split__aside{position:static}}.prose h2{margin-top:2rem;font-size:1.5rem}.prose>:first-child{margin-top:0}.faq details{border-bottom:1px solid var(--line)}.faq summary{color:var(--navy);cursor:pointer;padding:1rem 0;font-weight:700}.faq details p{color:var(--muted)}.form-card{background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--ink);padding:1.75rem}.form-card h2{margin-bottom:.25rem;font-size:1.4rem}.form-card>p{color:var(--muted);font-size:.975rem}.form{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.field{gap:.3rem;display:grid}.field--full{grid-column:1/-1}.field label{color:var(--navy);font-size:.875rem;font-weight:700}.field input,.field select,.field textarea{background:var(--white);width:100%;font:inherit;color:var(--ink);border:1px solid #b9c0cc;border-radius:8px;padding:.7rem .8rem;font-size:1rem}.field textarea{resize:vertical;min-height:6.5rem}.form__note{color:var(--muted);grid-column:1/-1;margin:0;font-size:.8125rem}.hp{position:absolute;left:-9999px}@media (width<=520px){.form{grid-template-columns:1fr}}.review{position:relative}.review__stars{color:var(--star);gap:.15rem;margin-bottom:.75rem;display:flex}.review__stars svg{width:1.15rem;height:1.15rem}.review blockquote{color:var(--ink);margin:0 0 1rem}.review__who{color:var(--muted);margin-top:auto;font-size:.925rem}.review__who strong{color:var(--navy);display:block}.badge{letter-spacing:.08em;text-transform:uppercase;color:#713f12;background:#fde68a;border-radius:999px;padding:.15rem .55rem;font-size:.7rem;font-weight:800;position:absolute;top:1rem;right:1rem}.filters{flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem;display:flex}.filters[hidden]{display:none}.filters button{border:1px solid var(--line);background:var(--white);font:inherit;color:var(--navy);cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-size:.95rem;font-weight:600}.filters button[aria-pressed=true]{border-color:var(--navy);background:var(--navy);color:var(--white)}.photo{border:1px solid var(--line);border-radius:var(--radius);background:var(--white);margin:0;overflow:hidden}.photo[hidden]{display:none}.photo__img{aspect-ratio:4/3;object-fit:cover;width:100%}.photo__empty{aspect-ratio:4/3;color:var(--muted);background:repeating-linear-gradient(135deg,#e9edf3 0 14px,#f4f6f9 14px 28px);align-content:center;place-items:center;gap:.5rem;font-size:.85rem;font-weight:600;display:grid}.photo__empty svg{opacity:.6;width:2.5rem;height:2.5rem}.photo figcaption{color:var(--navy);padding:.85rem 1rem;font-weight:700}.photo figcaption span{color:var(--muted);font-size:.85rem;font-weight:500;display:block}.cta-band{background:var(--accent);color:var(--white)}.cta-band__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:2.5rem;display:flex}.cta-band h2{color:var(--white);margin:0 0 .25rem;font-size:clamp(1.4rem,3vw,1.9rem)}.cta-band p{margin:0}.cta-band__actions{flex-wrap:wrap;gap:.75rem;display:flex}.cta-band .btn--primary{background:var(--white);color:var(--accent-dark)}.cta-band .btn--primary:hover{background:var(--accent-soft)}.info-list{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.info-list li{gap:.9rem;display:flex}.info-list svg{width:1.4rem;height:1.4rem;color:var(--accent);flex:none;margin-top:.2rem}.info-list strong{color:var(--navy);display:block}.hours{border-collapse:collapse;width:100%}.hours td{padding:.2rem 0}.hours td:last-child{text-align:right}.site-footer{background:var(--navy-deep);color:#aab4ca;font-size:.975rem}.site-footer__grid{grid-template-columns:1.4fr repeat(3,1fr);gap:2.5rem;padding-block:3.5rem 2.5rem;display:grid}.site-footer h2{letter-spacing:.1em;text-transform:uppercase;color:var(--white);margin-bottom:.9rem;font-size:.85rem}.site-footer ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.site-footer a{color:#d6dcea;text-decoration:none}.site-footer a:hover{color:var(--white);text-decoration:underline}.site-footer .brand{color:var(--white);margin-bottom:.9rem}.site-footer__bottom{border-top:1px solid #ffffff1a;padding-block:1.25rem;font-size:.875rem}@media (width<=800px){.site-footer__grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.site-footer__grid{grid-template-columns:1fr}}.call-bar{display:none}@media (width<=700px){.call-bar{z-index:40;padding:.6rem .75rem calc(.6rem + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:.5rem;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -4px 16px #14213d1a}.call-bar .btn{padding:.7rem .5rem;font-size:.975rem}body{padding-bottom:4.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
