.header{z-index:900;background-color:var(--color-bg);color:var(--color-ink);border-bottom:1px solid var(--color-ink);width:100%;padding:0;position:sticky;top:0}.divider{display:none}.header .container{max-width:var(--max-width);height:var(--header-height);flex-direction:row;justify-content:space-between;align-items:stretch;margin:0 auto;padding:0 0 0 24px;display:flex;position:relative}.logo-menu-container{flex-direction:row;align-items:stretch;gap:40px;display:flex}.logo{justify-content:flex-start;align-items:center;margin-bottom:0;display:flex}.logo img{width:auto;height:46px;display:block}.header-actions{align-items:stretch;display:flex}.header-phone{border-left:1px solid var(--color-rule);font-family:var(--font-mono);color:var(--color-ink);white-space:nowrap;transition:color var(--dur-fast) var(--ease-standard);flex-direction:column;justify-content:center;gap:2px;padding:0 24px;font-size:.95rem;font-weight:500;display:flex}.header-phone svg{display:none}.header-phone:before{content:"Give us a call";font-family:var(--font-sans);letter-spacing:.04em;color:var(--color-text-muted);font-size:.7rem;font-weight:500}@media (hover:hover){.header-phone:hover{color:var(--color-primary)}}.header-actions .header-cta{border-radius:0;height:auto;min-height:0;padding:0 28px}@media (max-width:1024px){.header-cta{display:none}}.burger-menu{font:inherit;background:0 0;border:none;display:none}@media (max-width:768px){.header .container{align-items:center;padding:0 0 0 20px}.header-actions{display:none}.logo-menu-container{align-items:center;width:100%}.logo{justify-content:space-between;width:100%;height:100%}.logo img{height:38px}.burger-menu{cursor:pointer;width:var(--header-height);border-left:1px solid var(--color-rule);-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-self:stretch;align-items:center;display:flex}.burger-menu .bar{background-color:var(--color-ink);width:22px;height:2px;transition:transform var(--dur-base) var(--ease-out-expo), opacity var(--dur-fast) var(--ease-standard);margin:3px 0;display:block}.burger-menu .change:first-child{transform:translateY(8px)rotate(-45deg)}.burger-menu .change:nth-child(2){opacity:0}.burger-menu .change:nth-child(3){transform:translateY(-8px)rotate(45deg)}}
.nav{display:flex}.nav ul{align-items:stretch;list-style:none;display:flex}.nav ul li{display:flex}.nav ul li a{color:var(--color-ink);transition:color var(--dur-fast) var(--ease-standard);align-items:center;padding:0 14px;font-size:.9rem;font-weight:500;text-decoration:none;display:flex;position:relative}.nav ul li a:after{content:"";background:var(--color-primary);transform-origin:bottom;height:3px;transition:transform var(--dur-base) var(--ease-out-expo);position:absolute;bottom:-1px;left:14px;right:14px;transform:scaleY(0)}.nav ul li a:hover{color:var(--color-primary)}.nav ul li a.active:after,.nav ul li a:hover:after{transform:scaleY(1)}@media (max-width:768px){.nav{display:none}}
.social-icons-container{gap:8px;display:flex}.social-icons-container .icon{border:1px solid var(--color-rule);width:46px;height:46px;color:var(--color-ink);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-standard), color var(--dur-fast) var(--ease-standard), transform var(--dur-base) var(--ease-out-expo);background-color:#0000;justify-content:center;align-items:center;margin:0;padding:0;font-family:inherit;font-size:20px;display:flex}.social-icons-container .icon:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (hover:hover){.social-icons-container .icon:hover{background-color:var(--color-ink);border-color:var(--color-ink);color:#fff}}
.mobile-nav{--mobile-nav-text:var(--color-ink);--mobile-nav-rule:var(--color-rule);background:var(--color-bg);z-index:1000;box-sizing:border-box;overscroll-behavior:contain;opacity:0;visibility:hidden;transition:opacity var(--dur-base) var(--ease-standard), translate var(--dur-base) var(--ease-standard), visibility 0s linear var(--dur-base);outline:none;flex-direction:column;justify-content:safe center;gap:1.75rem;padding:4.5rem 1.5rem 2rem;display:flex;position:fixed;inset:0;overflow-y:auto;translate:0 10px}.mobile-nav.open{opacity:1;visibility:visible;transition:opacity var(--dur-base) var(--ease-standard), translate var(--dur-enter) var(--ease-out-expo);translate:none}.mobile-nav .menu-reveal{opacity:0;transition:opacity var(--dur-fast) var(--ease-standard), translate var(--dur-fast) var(--ease-standard);translate:0 12px}.mobile-nav.open .menu-reveal{opacity:1;transition:opacity var(--dur-base) var(--ease-standard), translate var(--dur-enter) var(--ease-out-expo);transition-delay:calc(60ms + var(--i,0) * 45ms);translate:none}.mobile-nav a:focus-visible,.mobile-nav .close-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.close-btn{width:var(--header-height);height:var(--header-height);color:var(--mobile-nav-text);border:0;border-left:1px solid var(--mobile-nav-rule);border-bottom:1px solid var(--mobile-nav-rule);cursor:pointer;transition:color var(--dur-fast) var(--ease-standard);-webkit-tap-highlight-color:transparent;background:0 0;justify-content:center;align-items:center;font-size:1.5rem;display:flex;position:fixed;top:0;right:0}.close-btn:hover,.close-btn:active{color:var(--color-primary)}.nav-menu{width:100%}.mobile-nav-logo{width:fit-content;margin:0 0 1.5rem;display:flex}.mobile-nav-logo img{width:170px;height:auto;display:block}.nav-menu ul{counter-reset:menu;border-top:1px solid var(--mobile-nav-rule);margin:0;padding:0;list-style:none}.nav-menu ul li{counter-increment:menu;border-bottom:1px solid var(--mobile-nav-rule)}.nav-menu ul li a{color:var(--mobile-nav-text);font-family:var(--font-display);text-transform:uppercase;transition:color var(--dur-fast) var(--ease-standard);align-items:baseline;gap:16px;padding:.7rem 0;font-size:2.2rem;font-weight:800;font-stretch:72%;line-height:1;text-decoration:none;display:flex}.nav-menu ul li a:before{content:counter(menu, decimal-leading-zero);font-family:var(--font-mono);color:var(--color-text-muted);font-size:.75rem;font-weight:400}.nav-menu ul li a:hover,.nav-menu ul li a:active,.nav-menu ul li a.active{color:var(--color-primary)}.mobile-nav-cta{color:#fff;background-color:var(--color-primary);letter-spacing:.06em;text-transform:uppercase;min-height:56px;transition:background-color var(--dur-fast) var(--ease-standard);justify-content:center;align-items:center;gap:10px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.mobile-nav-cta:after{content:"→";font-family:var(--font-mono);font-weight:400}.mobile-nav-cta:hover,.mobile-nav-cta:active{background-color:var(--color-ink)}.mobile-nav-tagline{font-family:var(--font-mono);color:var(--color-text-muted);margin:0;font-size:.75rem;line-height:1.5}.mobile-nav-icons{border-top:1px solid var(--mobile-nav-rule);border-left:1px solid var(--mobile-nav-rule);gap:0;display:flex}.mobile-nav-icons .social-icons-container{display:contents}.mobile-nav-icons a,.mobile-nav-icons .social-icons-container .icon{height:3.25rem;color:var(--mobile-nav-text);border:0;border-right:1px solid var(--mobile-nav-rule);border-bottom:1px solid var(--mobile-nav-rule);transition:color var(--dur-fast) var(--ease-standard);background:0 0;border-radius:0;flex:1;justify-content:center;align-items:center;font-size:1.25rem;display:flex;transform:none}.mobile-nav-icons a:hover,.mobile-nav-icons a:active,.mobile-nav-icons .social-icons-container .icon:hover{color:var(--color-primary);background:0 0;transform:none}@media (max-height:700px){.mobile-nav{gap:1rem;padding:3.5rem 1.5rem 1rem}.mobile-nav-logo{margin-bottom:.75rem}.mobile-nav-logo img{width:120px}.nav-menu ul li a{padding:.45rem 0;font-size:1.6rem}.mobile-nav-tagline{display:none}}@media (max-height:440px){.mobile-nav{grid-template-columns:1fr 1fr;align-content:safe center;gap:.75rem;padding-bottom:.75rem;display:grid}.nav-menu{grid-column:1/-1}.mobile-nav-logo{display:none}.nav-menu ul li a{padding:.3rem 0;font-size:1.35rem}.mobile-nav-cta{min-height:44px}.mobile-nav-icons a,.mobile-nav-icons .social-icons-container .icon{height:2.75rem}}body.mobile-nav-open{overflow:hidden}html:has(body.mobile-nav-open){overflow:hidden}
footer.footer{color:#ffffffb8;background-color:var(--color-steel-950);border-top:1px solid var(--color-rule-on-dark);width:100%;padding:0 clamp(24px,4vw,56px) 24px;font-size:14px}footer.footer .container{max-width:var(--max-width);margin:0 auto}.footer-columns{border-bottom:1px solid var(--color-rule-on-dark);grid-template-columns:1.6fr 1fr 1fr 1.4fr;display:grid}.footer-column{flex-direction:column;align-items:flex-start;padding:48px 28px 48px 0;display:flex}.footer-column+.footer-column{border-left:1px solid var(--color-rule-on-dark);padding-left:28px}.footer-eyebrow{font-family:var(--font-mono);color:var(--color-primary-on-dark);margin:0 0 20px;font-size:.75rem}.footer-brand{font-family:var(--font-display);text-transform:uppercase;color:#fff;margin:0 0 16px;font-size:2.4rem;font-weight:800;font-stretch:72%;line-height:.95}.footer-muted{color:#ffffff9e;max-width:36ch;margin:0;font-size:.9rem;line-height:1.6}.footer-link-list{flex-direction:column;gap:10px;display:flex}.footer-link-list a{color:#fff;font-weight:500}.footer-link-list a:hover{color:var(--color-primary-on-dark)}.footer-contact-line{font-family:var(--font-mono);margin-bottom:10px;font-size:.95rem;display:block;color:#fff!important}.footer-contact-line span{color:#ffffff8c}.footer-contact-line:hover{color:var(--color-primary-on-dark)!important}.footer-hours{font-family:var(--font-mono);margin-top:8px;font-size:.8rem}.footer-bottom-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 32px;padding-top:24px;display:flex}.footer-copyright{color:#fff9;margin:0;font-size:.75rem}.footer-privacy-link{color:#fffc;text-underline-offset:2px;margin-left:8px;text-decoration:underline}.footer-privacy-link:hover{color:#fff}.footer-social{align-items:center;gap:18px;display:flex}.footer-social-icon{font-size:1.05rem;color:#ffffffb3!important}.footer-social-icon:hover{color:var(--color-primary-on-dark)!important}.footer-scroll-top{border:0;border-left:1px solid var(--color-rule-on-dark);font-family:var(--font-mono);color:#ffffffb3;cursor:pointer;transition:color var(--dur-fast) var(--ease-standard);background:0 0;margin-left:8px;padding:6px 0 6px 18px;font-size:.75rem}.footer-scroll-top:hover{color:#fff}.footer-designed-by{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.footer-designed-by-label{font-family:var(--font-mono);color:#ffffff80;margin:0;font-size:.68rem}.footer-designed-by-name{text-decoration:underline;-webkit-text-decoration-color:var(--color-primary-light);text-decoration-color:var(--color-primary-light);text-underline-offset:4px;transition:text-decoration-color var(--dur-fast) var(--ease-standard);font-size:.85rem;color:#fff!important;font-weight:600!important}.footer-designed-by-name:hover{text-decoration-color:#fff}footer.footer :focus-visible{outline-color:#fff}@media (max-width:900px){.footer-columns{grid-template-columns:1fr 1fr}.footer-column-brand{border-bottom:1px solid var(--color-rule-on-dark);grid-column:1/-1}.footer-column{padding:32px 20px 32px 0}.footer-column+.footer-column{padding-left:20px}.footer-column:nth-child(2){border-left:0;padding-left:0}.footer-column:nth-child(4){border-left:0;border-top:1px solid var(--color-rule-on-dark);grid-column:1/-1;padding-left:0}}@media (max-width:768px){footer.footer{padding:0 20px calc(20px + env(safe-area-inset-bottom,0))}.footer-bottom-bar{flex-direction:column;align-items:flex-start}.footer-designed-by{align-items:flex-start}}
