.contact-hero{padding:4rem 0 3rem;position:relative;overflow:hidden}.contact-hero:before{content:"";background:radial-gradient(closest-side, color-mix(in srgb, var(--color-rust) 8%, transparent), transparent 80%);pointer-events:none;z-index:0;width:55%;height:70%;position:absolute;inset:-10% -20% auto auto}.contact-hero>*{z-index:1;position:relative}@media (min-width:1024px){.contact-hero{padding:5rem 0 3.5rem}}.contact-hero h1{margin:.75rem 0 1.25rem;font-size:clamp(2.5rem,4.5vw + 1rem,4.75rem)}.contact-hero__lede{color:var(--color-charcoal);max-width:56ch;font-size:clamp(1.05rem,.4vw + 1rem,1.2rem);line-height:1.55}.contact-methods{padding:2.5rem 0 4rem}@media (min-width:1024px){.contact-methods{padding:3rem 0 5.5rem}}.contact-methods__grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (min-width:720px){.contact-methods__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}}.contact-method{background:var(--color-cream);border:1px solid var(--color-stone-200);transition:border-color .24s var(--ease-out-soft), box-shadow .24s var(--ease-out-soft);border-radius:6px;align-content:start;gap:.7rem;padding:2rem 1.75rem;display:grid}.contact-method:hover{border-color:var(--color-rust);box-shadow:0 8px 24px -12px #e46a3a2e}.contact-method--primary{background:var(--color-headline);color:var(--color-cream);border-color:var(--color-headline)}.contact-method--primary:hover{border-color:var(--color-rust);box-shadow:0 12px 28px -10px #0006}.contact-method--primary .contact-method__title{color:var(--color-cream)}.contact-method--primary .contact-method__lede{color:color-mix(in srgb, var(--color-cream) 78%, transparent)}.contact-method__eyebrow{margin-bottom:.15rem}.contact-method__title{color:var(--color-headline);letter-spacing:var(--tracking-tight);margin:0;font-size:1.35rem;font-weight:800;line-height:1.2}.contact-method__phone,.contact-method__email{color:var(--color-rust);letter-spacing:var(--tracking-tight);word-break:break-word;margin:.1rem 0;font-size:clamp(1.15rem,1.2vw + .75rem,1.5rem);font-weight:700;line-height:1.2;display:inline-block}.contact-method__phone:hover,.contact-method__email:hover{color:var(--color-rust-700)}.contact-method__lede{color:var(--color-charcoal);margin:0;font-size:.92rem;line-height:1.5}.contact-method--primary .btn-primary{background:var(--color-rust)}.contact-area{background:var(--color-stone);padding:4rem 0}@media (min-width:1024px){.contact-area{padding:6rem 0}}.contact-area__head{gap:.6rem;max-width:38rem;margin-bottom:2.25rem;display:grid}.contact-area__lede{color:var(--color-charcoal);margin:.5rem 0 0;font-size:1rem}.contact-area__grid{grid-template-columns:1fr;gap:1rem;margin:0;padding:0;list-style:none;display:grid}@media (min-width:720px){.contact-area__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}}.contact-area__card{background:var(--color-cream);border:1px solid var(--color-stone-200);border-radius:4px;gap:.55rem;padding:1.5rem;display:grid}.contact-area__region{letter-spacing:.18em;text-transform:uppercase;color:var(--color-rust);font-size:.78rem;font-weight:700;line-height:1.3}.contact-area__towns{color:var(--color-headline);letter-spacing:var(--tracking-tight);font-size:1rem;font-weight:600;line-height:1.4}.contact-area__close{color:var(--color-charcoal);max-width:56ch;margin:2rem 0 0;font-size:.95rem;line-height:1.55}.contact-hours{padding:4rem 0}@media (min-width:1024px){.contact-hours{padding:6rem 0}}.contact-hours__inner{gap:2rem;display:grid}@media (min-width:1024px){.contact-hours__inner{grid-template-columns:minmax(0,4fr) minmax(0,6fr);align-items:start;gap:4rem}}.contact-hours__head{align-content:start;gap:.6rem;display:grid}.contact-hours__list{border-top:1px solid var(--color-stone-200);gap:0;max-width:50rem;margin:0;display:grid}.contact-hours__row{border-bottom:1px solid var(--color-stone-200);grid-template-columns:1fr;gap:.2rem;padding:1.1rem 0;display:grid}@media (min-width:600px){.contact-hours__row{grid-template-columns:12rem 1fr;align-items:baseline;gap:1rem}}.contact-hours__row dt{letter-spacing:.05em;color:var(--color-headline);text-transform:uppercase;font-size:.85rem;font-weight:700}.contact-hours__row dd{color:var(--color-charcoal);margin:0;font-size:.98rem;line-height:1.5}.contact-hours__note{color:var(--color-charcoal);background:var(--color-stone);border-left:3px solid var(--color-rust);border-radius:2px;max-width:56ch;margin:1.5rem 0 0;padding:1rem 1.25rem;font-size:.95rem;line-height:1.55}.contact-cta{isolation:isolate;color:var(--color-cream);background:var(--color-headline);padding:6rem 0;position:relative;overflow:hidden}@media (min-width:1024px){.contact-cta{padding:8rem 0}}.contact-cta__glow{background:radial-gradient(closest-side, color-mix(in srgb, var(--color-rust) 18%, transparent), transparent 70%);pointer-events:none;z-index:0;width:50%;height:120%;position:absolute;inset:-30% -10% auto auto}.contact-cta__inner{z-index:1;gap:1rem;max-width:48rem;display:grid;position:relative}.contact-cta h2{color:var(--color-cream);font-size:clamp(2rem,3.5vw + 1rem,3.75rem)}.contact-cta__eyebrow{color:var(--color-rust)}.contact-cta__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.25rem;display:flex}.contact-cta__call{color:var(--color-cream)}.contact-cta__call:hover{color:var(--color-rust)}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
