:root{--cream:#fffaf6;--sage:#ecefea;--teal:#153243;--gold:#f1bd61;--muted:#c2c0be;--ink:#111614;--container:1280px;--radius:10px}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:Open Sans,Arial,sans-serif;font-size:18px;font-weight:300;line-height:1.4}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}p{margin-block:0 1.25rem}h1,h2,h3{margin-block:0 1.5rem;font-family:Manrope,Arial,sans-serif;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,3.5rem);font-weight:700}h2{font-size:clamp(2.25rem,4vw,3rem);font-weight:800}.container{width:min(calc(100% - 10vw), var(--container));margin-inline:auto}.section-padding{padding-block:6rem}.section-heading{text-align:center;max-width:850px;margin:0 auto 4rem}.section-heading p{max-width:720px;margin-inline:auto;font-size:1.1rem}.eyebrow{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-family:Manrope,Arial,sans-serif;font-size:.9rem;font-weight:700}.skip-link{z-index:100;background:var(--gold);padding:.75rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.button{border-radius:var(--radius);background:var(--gold);color:#000;border:0;justify-content:center;align-items:center;gap:.55rem;min-height:3.25rem;padding:.75rem 1.25rem;font-family:Manrope,Arial,sans-serif;font-size:1.05rem;font-weight:700;line-height:1.2;display:inline-flex}.button:hover,.button:focus-visible{filter:brightness(.95)}.button--secondary{background:var(--muted)}.button-group{flex-wrap:wrap;gap:1rem;display:flex}.site-header{z-index:20;background:var(--cream);position:relative}.site-header__inner{justify-content:space-between;align-items:center;min-height:5.5rem;padding-inline:5%;display:flex}.brand img{width:225px;height:auto}.desktop-nav{align-items:center;gap:clamp(1rem,2vw,2rem);font-family:Manrope,Arial,sans-serif;font-size:.9rem;font-weight:600;display:flex}.desktop-nav>a:not(.button){padding-block:1rem}.desktop-nav>a[aria-current=page]{text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:.45rem;text-decoration-thickness:3px}.button--phone{font-size:1rem}.mobile-nav{display:none}.route-intro{background:radial-gradient(circle at 85% 28%, #f1bd6133, transparent 22rem), var(--cream);min-height:34rem;padding-block:6rem}.route-intro__content{max-width:900px}.route-intro p{max-width:750px;font-size:1.1rem}.route-intro .button-group{margin-top:2rem}.site-footer{background:var(--sage);padding-top:5rem;font-size:.9rem}.site-footer__top{grid-template-columns:1fr 1.25fr;gap:5rem;padding-bottom:4rem;display:grid}.site-footer__identity,.site-footer__links,.site-footer__links nav{align-content:start;gap:1.25rem;display:grid}.brand--footer{margin-bottom:.5rem;display:inline-block}.brand--footer img{width:250px}.site-footer__identity strong,.site-footer__identity a{display:block}.site-footer__links{grid-template-columns:1fr 1fr;gap:3rem}.site-footer h2{margin-bottom:1rem;font-size:1.25rem}.hours-list{gap:.55rem;margin:0;padding:0;list-style:none;display:grid}.hours-list li{justify-content:space-between;gap:1rem;display:flex}.site-footer__bottom{border-top:1px solid #15324333;justify-content:space-between;gap:2rem;padding-block:1.5rem;display:flex}.site-footer__bottom p{margin:0}.site-footer__bottom nav{gap:2rem;display:flex}@media (width<=1080px){.desktop-nav{display:none}.mobile-nav{display:block}.mobile-nav summary{cursor:pointer;gap:5px;width:3rem;padding:.75rem;list-style:none;display:grid}.mobile-nav summary::-webkit-details-marker{display:none}.mobile-nav summary span{background:var(--ink);width:1.5rem;height:2px;display:block}.mobile-nav nav{background:var(--cream);align-content:start;gap:.5rem;width:100%;min-height:calc(100dvh - 5.5rem);padding:2rem 5%;font-family:Manrope,Arial,sans-serif;font-size:1.35rem;font-weight:700;display:grid;position:absolute;top:100%;left:0}.mobile-nav nav>a:not(.button){padding-block:.85rem}.mobile-nav .button{justify-self:start;margin-top:1rem}}@media (width<=720px){body{font-size:16px}.container{width:min(calc(100% - 2rem), var(--container))}.section-padding{padding-block:4rem}.section-heading{margin-bottom:3rem}.site-header__inner{padding-inline:1rem}.brand img{width:180px}.route-intro{min-height:30rem;padding-block:4rem}.button-group,.button-group .button{width:100%}.site-footer{padding-top:4rem}.site-footer__top,.site-footer__links{grid-template-columns:1fr;gap:3rem}.site-footer__bottom,.site-footer__bottom nav{flex-direction:column;gap:1rem}}
