@import "https://fonts.googleapis.com/css2?family=Sora:wght@500;600;700;800&family=Inter:wght@400;500;600&display=swap";:root{--ink:#17181a;--charcoal:#2b2e33;--charcoal-2:#212327;--red:#c8102e;--red-dark:#a50d26;--paper:#f7f5f1;--neutral:#ece8e1;--line:#17181a1f;--line-soft:#17181a14;--muted:#5c5f66;--body-text:#43464c;--muted-soft:#a0a3a8;--on-dark:#f2efe9;--on-dark-muted:#f2efe9ad;--s-1:4px;--s-2:8px;--s-3:16px;--s-4:24px;--s-5:32px;--s-6:48px;--s-7:64px;--s-8:96px;--s-9:128px;--r-btn:8px;--r-card:16px;--shadow-rest:0 2px 8px #17181a0f, 0 8px 24px #17181a0f;--shadow-hover:0 6px 16px #17181a1a, 0 18px 44px #17181a1f;--container:1200px;--nav-h:76px;--ease:cubic-bezier(.22, .61, .36, 1);--photo-filter-hero:brightness(.82) contrast(1.12) saturate(.85) sepia(.12);--photo-filter:brightness(1.02) contrast(1.04) saturate(.95) sepia(.05);--photo-filter-hover:brightness(1.07) contrast(1.05) saturate(1) sepia(.04)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition-duration:.001ms!important;animation-duration:.001ms!important}}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,system-ui,sans-serif;font-size:18px;line-height:1.65}@media (width<=600px){body{font-size:16px}}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3{letter-spacing:-.02em;color:var(--ink);font-family:Sora,sans-serif;font-weight:700;line-height:1.12}h1{letter-spacing:-.03em;font-size:clamp(2.35rem,1.5rem + 4.4vw,4.2rem)}h2{font-size:clamp(1.75rem,1.2rem + 2.6vw,2.8rem)}h3{letter-spacing:-.01em;font-size:clamp(1.25rem,1.1rem + .6vw,1.4rem)}p{max-width:65ch}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(20px,5vw,24px)}.section{padding-block:var(--s-8)}@media (width<=900px){.section{padding-block:var(--s-7)}}@media (width<=600px){.section{padding-block:var(--s-6)}}section[id]{scroll-margin-top:calc(var(--nav-h) + 16px)}.eyebrow{align-items:center;gap:var(--s-2);letter-spacing:.12em;text-transform:uppercase;color:var(--red);font-family:Sora,sans-serif;font-size:.8rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--red);width:22px;height:2px}.btn{justify-content:center;align-items:center;gap:var(--s-2);border-radius:var(--r-btn);transition:transform .18s var(--ease), background .18s var(--ease), color .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);white-space:nowrap;border:1.5px solid #0000;padding:15px 26px;font-family:Sora,sans-serif;font-size:1rem;font-weight:600;line-height:1;display:inline-flex}.btn:focus-visible{outline:3px solid var(--red);outline-offset:3px}.btn--primary{background:var(--red);color:#fff;box-shadow:0 6px 18px #c8102e47}.btn--primary:hover{background:var(--red-dark);transform:translateY(-2px);box-shadow:0 10px 26px #c8102e57}.btn--ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn--ghost:hover{border-color:var(--ink);transform:translateY(-2px)}.btn--onDark{color:var(--on-dark);background:0 0;border-color:#f2efe966}.btn--onDark:hover{border-color:var(--on-dark);background:#f2efe91a;transform:translateY(-2px)}.heading-block{max-width:640px}.heading-block--center{text-align:center;margin-inline:auto}.heading-block .eyebrow{margin-bottom:var(--s-4)}.heading-block p{color:var(--muted);margin-top:var(--s-4);font-size:1.05rem}.heading-block--center p{margin-inline:auto}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.capture .hero{min-height:640px}.rule-red{background:var(--red);border:none;border-radius:2px;width:48px;height:3px}.nav{z-index:100;height:var(--nav-h);background:var(--charcoal-2);transition:height .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease);border-bottom:1px solid #f2efe914;position:fixed;inset:0 0 auto}.nav--scrolled{-webkit-backdrop-filter:saturate(140%)blur(8px);backdrop-filter:saturate(140%)blur(8px);background:#1d1f23f0;height:64px;box-shadow:0 6px 24px #00000038}.nav__inner{align-items:center;gap:var(--s-4);height:100%;display:flex}.nav__brand{align-items:baseline;gap:8px;margin-right:auto;padding-block:6px;display:flex}.nav__mark{letter-spacing:-.02em;color:#fff;font-family:Sora,sans-serif;font-size:1.4rem;font-weight:800}.nav__word{letter-spacing:.16em;text-transform:uppercase;color:var(--red);font-family:Sora,sans-serif;font-size:.78rem;font-weight:500;position:relative;top:-1px}.nav__links{align-items:center;gap:var(--s-5);display:flex}.nav__link{color:var(--on-dark-muted);transition:color .18s var(--ease);padding:6px 0;font-family:Sora,sans-serif;font-size:.95rem;font-weight:500;position:relative}.nav__link:after{content:"";background:var(--red);transform-origin:0;width:100%;height:2px;transition:transform .22s var(--ease);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.nav__link:hover{color:#fff}.nav__link:hover:after{transform:scaleX(1)}.nav__cta{display:flex}.nav__cta .btn{padding:11px 20px}.nav__burger{border-radius:var(--r-btn);background:0 0;border:1px solid #f2efe938;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:10px;display:none}.nav__burger span{background:var(--on-dark);width:100%;height:2px;transition:transform .25s var(--ease), opacity .2s var(--ease);border-radius:2px;display:block}.nav__burger.is-open span:first-child{transform:translateY(7px)rotate(45deg)}.nav__burger.is-open span:nth-child(2){opacity:0}.nav__burger.is-open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav__panel{top:var(--nav-h);width:min(86vw,360px);height:calc(100dvh - var(--nav-h));background:var(--charcoal-2);padding:var(--s-6) var(--s-5);gap:var(--s-4);transition:transform .32s var(--ease);z-index:101;border-left:1px solid #f2efe914;flex-direction:column;display:flex;position:fixed;right:0;overflow-y:auto;transform:translate(105%)}.nav__panel.is-open{transform:translate(0)}.nav__panel-links{flex-direction:column;display:flex}.nav__panel-link{color:var(--on-dark);padding:var(--s-3) 0;border-bottom:1px solid #f2efe914;font-family:Sora,sans-serif;font-size:1.25rem;font-weight:600}.nav__panel-link:hover{color:var(--red)}.nav__panel-cta{width:100%;margin-top:var(--s-2)}.nav__panel-note{padding-top:var(--s-4);color:var(--on-dark-muted);margin-top:auto;font-size:.95rem;line-height:1.6}.nav__scrim{inset:var(--nav-h) 0 0 0;z-index:100;background:#00000073;position:fixed}@media (width<=860px){.nav__links,.nav__cta{display:none}.nav__burger{display:flex}}.hero{min-height:90vh;padding-top:var(--nav-h);isolation:isolate;align-items:center;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:-2;position:absolute;inset:0}.hero__bg img{object-fit:cover;object-position:center 42%;width:100%;height:100%;filter:var(--photo-filter-hero)}.hero__overlay{z-index:-1;background:linear-gradient(90deg,#121315f0 0%,#121315d1 42%,#12131585 100%),linear-gradient(#12131500 52%,#1213159e 100%);position:absolute;inset:0}.hero__inner{padding-block:var(--s-8)}.hero__content{max-width:640px}.hero__eyebrow{color:#fff;margin-bottom:var(--s-5)}.hero__eyebrow:before{background:var(--red)}.hero__title{color:#fff;letter-spacing:-.035em;max-width:13ch}.hero__supporting{color:#ffffffd6;margin-top:var(--s-5);max-width:46ch;font-size:1.1rem;line-height:1.6}.hero__actions{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;display:flex}.hero__trust{align-items:center;gap:var(--s-2);margin-top:var(--s-5);padding-top:var(--s-4);letter-spacing:.01em;color:#ffffffc7;border-top:1px solid #ffffff29;max-width:46ch;font-family:Sora,sans-serif;font-size:.9rem;display:flex}.hero__trust-dot{background:var(--red);border-radius:50%;flex:none;width:8px;height:8px;box-shadow:0 0 0 4px #c8102e40}@media (width<=900px){.hero__content{max-width:34rem}.hero__title{max-width:16ch}}@media (width<=600px){.hero{min-height:88svh}.hero__inner{padding-block:var(--s-7)}.hero__content,.hero__title,.hero__supporting,.hero__trust{max-width:100%}.hero__eyebrow{margin-bottom:var(--s-4)}.hero__supporting{margin-top:var(--s-4);font-size:1.05rem}.hero__actions{margin-top:var(--s-5);gap:var(--s-3)}.hero__actions .btn{flex:100%;padding-block:17px}.hero__trust{margin-top:var(--s-4);padding-top:var(--s-4);align-items:flex-start;font-size:.88rem}.hero__trust-dot{margin-top:7px}}.services{background:var(--paper)}.services__grid{margin-top:var(--s-7);gap:var(--s-4);grid-template-columns:repeat(6,1fr);display:grid}.services__grid>*{grid-column:span 2}.services__grid>:nth-last-child(2):nth-child(3n+1){grid-column:2/span 2}.service-card{border:1px solid var(--line-soft);border-radius:var(--r-card);height:100%;box-shadow:var(--shadow-rest);transition:transform .22s var(--ease), box-shadow .22s var(--ease);background:#fff;flex-direction:column;display:flex;overflow:hidden}.service-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-4px)}.service-card__media{aspect-ratio:4/3;background:var(--charcoal-2);position:relative;overflow:hidden}.service-card__media:after{content:"";pointer-events:none;transition:opacity .4s var(--ease);background:linear-gradient(#17181a00 55%,#17181a1f 100%),linear-gradient(#c8102e08,#c8102e08);position:absolute;inset:0}.service-card:hover .service-card__media:after{opacity:.7}.service-card__media img{object-fit:cover;width:100%;height:100%;filter:var(--photo-filter);transition:transform .5s var(--ease), filter .4s var(--ease)}.service-card:hover .service-card__media img{filter:var(--photo-filter-hover);transform:scale(1.06)}.service-card__body{padding:var(--s-4) var(--s-4) var(--s-5)}.service-card__body h3{margin-bottom:var(--s-2)}.service-card__body p{color:var(--muted);font-size:1rem;line-height:1.55}@media (width<=900px){.services__grid{grid-template-columns:repeat(2,1fr)}.services__grid>*,.services__grid>:nth-last-child(2):nth-child(3n+1){grid-column:auto}}@media (width<=600px){.services__grid{gap:var(--s-5);grid-template-columns:1fr}.service-card__media{aspect-ratio:3/2}.service-card__body{padding:var(--s-4) var(--s-4) var(--s-4)}}@media (hover:none){.service-card:hover{box-shadow:var(--shadow-rest);transform:none}.service-card:hover .service-card__media img{filter:var(--photo-filter);transform:none}.service-card:hover .service-card__media:after{opacity:1}}.about{background:var(--neutral)}.about__grid{grid-template-columns:1fr 1fr;align-items:center;gap:clamp(32px,6vw,80px);display:grid}.about__media{border-radius:var(--r-card);box-shadow:var(--shadow-rest);aspect-ratio:4/5;background:var(--charcoal-2);position:relative;overflow:hidden}.about__media img{object-fit:cover;width:100%;height:100%;filter:var(--photo-filter)}.about__badge{left:var(--s-4);bottom:var(--s-4);padding:var(--s-3) var(--s-4);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-left:3px solid var(--red);background:#17181adb;border-radius:12px;flex-direction:column;display:flex;position:absolute}.about__badge-city{color:#fff;font-family:Sora,sans-serif;font-size:1rem;font-weight:700}.about__badge-street{color:var(--on-dark-muted);letter-spacing:.04em;font-size:.82rem}.about__text .eyebrow{margin-bottom:var(--s-3)}.about__rule{margin:var(--s-4) 0 var(--s-5)}.about__text p{color:var(--body-text)}.about__text p+p{margin-top:var(--s-4)}.about__actions{gap:var(--s-3);margin-top:var(--s-6);flex-wrap:wrap;display:flex}@media (width<=860px){.about__grid{gap:var(--s-6);grid-template-columns:1fr}.about__media{aspect-ratio:4/3;max-height:460px}}@media (width<=600px){.about__actions .btn{flex:100%}}.why{background:var(--charcoal-2);color:var(--on-dark);position:relative}.why__head{max-width:620px;margin-bottom:var(--s-7)}.why__eyebrow{color:var(--red);margin-bottom:var(--s-3)}.why__heading{color:#fff}.why__grid{gap:var(--s-6);grid-template-columns:repeat(4,1fr);display:grid}.why__item{padding-top:var(--s-5);padding-right:var(--s-3);border-top:1px solid #f2efe92e}.why__mark{background:var(--red);width:28px;height:3px;margin-bottom:var(--s-4);border-radius:2px;display:block}.why__label{color:#fff;margin-bottom:var(--s-3);font-size:1.25rem}.why__text{color:var(--on-dark-muted);font-size:1rem;line-height:1.55}@media (width<=900px){.why__grid{gap:var(--s-6) var(--s-6);grid-template-columns:repeat(2,1fr)}.why__head{margin-bottom:var(--s-6)}}@media (width<=520px){.why__grid{gap:var(--s-5);grid-template-columns:1fr}.why__item{padding-right:0}}.testimonials{background:var(--paper)}.testimonials__grid{margin-top:var(--s-7);gap:var(--s-4);grid-template-columns:repeat(3,1fr);display:grid}.quote{border:1px solid var(--line-soft);border-radius:var(--r-card);padding:var(--s-5);box-shadow:var(--shadow-rest);background:#fff}.quote blockquote{color:var(--ink);padding-top:var(--s-4);font-size:1.05rem;line-height:1.6;position:relative}.quote blockquote:before{content:"“";color:var(--red);font-family:Sora,sans-serif;font-size:3rem;line-height:1;position:absolute;top:-8px;left:-4px}.quote figcaption{margin-top:var(--s-4);color:var(--muted);font-family:Sora,sans-serif;font-size:.95rem;font-weight:600}@media (width<=900px){.testimonials__grid{grid-template-columns:1fr;max-width:560px;margin-inline:auto}}.contact{background:var(--neutral)}.contact__grid{margin-top:var(--s-7);grid-template-columns:1fr 1fr;align-items:start;gap:clamp(24px,4vw,64px);display:grid}.contact__info{gap:var(--s-6);flex-direction:column;display:flex}.contact__block-title{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:var(--s-3);font-size:.85rem;font-weight:600}.contact__address{color:var(--ink);margin-bottom:var(--s-4);font-family:Sora,sans-serif;font-size:1.15rem;font-weight:500}.contact__directions{width:fit-content}.contact__hours{border-top:1px solid var(--line);list-style:none}.contact__hours li{justify-content:space-between;gap:var(--s-4);border-bottom:1px solid var(--line);padding:10px 0;font-size:1rem;display:flex}.contact__hours li span:first-child{color:var(--ink);font-weight:500}.contact__hours li span:last-child{color:var(--muted);font-variant-numeric:tabular-nums}.contact__hours li.is-closed span:last-child{color:var(--muted-soft)}.contact__actions{gap:var(--s-2);flex-direction:column;display:flex}.contact__action{padding:var(--s-4);border:1px solid var(--line-soft);border-left:3px solid var(--red);box-shadow:var(--shadow-rest);transition:transform .18s var(--ease), box-shadow .18s var(--ease), border-color .18s var(--ease);background:#fff;border-radius:12px;flex-direction:column;gap:2px;display:flex}.contact__action:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.contact__action-label{letter-spacing:.1em;text-transform:uppercase;color:var(--red);font-size:.82rem;font-weight:600}.contact__action-value{color:var(--ink);letter-spacing:-.01em;font-family:Sora,sans-serif;font-size:1.2rem;font-weight:700}.contact__form-wrap{border:1px solid var(--line-soft);border-radius:var(--r-card);box-shadow:var(--shadow-rest);background:#fff;padding:clamp(24px,4vw,40px)}.contact__form{gap:var(--s-4);flex-direction:column;display:flex}.field{gap:var(--s-2);flex-direction:column;display:flex}.field--split{gap:var(--s-4);grid-template-columns:1fr 1fr;display:grid}.field--split>div{gap:var(--s-2);flex-direction:column;display:flex}.contact__form label{color:var(--ink);font-family:Sora,sans-serif;font-size:.9rem;font-weight:500}.contact__form input,.contact__form select,.contact__form textarea{color:var(--ink);border-radius:var(--r-btn);transition:border-color .16s var(--ease), box-shadow .16s var(--ease), background .16s var(--ease);background:#fdfcfa;border:1.5px solid #17181a29;width:100%;padding:14px 15px;font-family:inherit;font-size:1rem}.contact__form input:hover,.contact__form select:hover,.contact__form textarea:hover{border-color:#17181a4d}.contact__form textarea{resize:vertical;min-height:108px}.contact__form input:focus,.contact__form select:focus,.contact__form textarea:focus{border-color:var(--red);outline:none;box-shadow:0 0 0 3px #c8102e24}.contact__submit{width:100%;margin-top:var(--s-2)}.contact__form-note{color:var(--muted);text-align:center;font-size:.95rem;line-height:1.6}.contact__form-note a,.contact__thanks a{color:var(--red);text-underline-offset:3px;margin:-5px 0;padding:11px 4px;font-weight:600;text-decoration:underline;text-decoration-thickness:1px;display:inline-block}.contact__thanks{text-align:center;padding:var(--s-5) var(--s-2)}.contact__thanks-mark{width:56px;height:56px;color:var(--red);margin-bottom:var(--s-4);background:#c8102e1f;border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:inline-flex}.contact__thanks h3{margin-bottom:var(--s-2)}.contact__thanks p{color:var(--muted);margin-inline:auto}.contact__thanks-back{margin-top:var(--s-5);color:var(--red);transition:border-color .18s var(--ease);background:0 0;border:none;border-bottom:2px solid #0000;padding:4px 0;font-family:Sora,sans-serif;font-size:.95rem;font-weight:600}.contact__thanks-back:hover{border-bottom-color:var(--red)}.contact__thanks-back:focus-visible{outline:3px solid var(--red);outline-offset:3px;border-radius:4px}@media (width<=860px){.contact__grid{gap:var(--s-7);grid-template-columns:1fr}.contact__info{gap:var(--s-7)}}@media (width<=600px){.contact__form-wrap{padding:var(--s-5) var(--s-4)}.contact__form input,.contact__form select,.contact__form textarea{padding:15px;font-size:16px}.contact__submit{padding-block:17px}.contact__directions{width:100%}}@media (width<=460px){.field--split{grid-template-columns:1fr}}.faq{background:var(--paper)}.faq__inner{grid-template-columns:.8fr 1.2fr;align-items:start;gap:clamp(32px,6vw,80px);display:grid}.faq__list{border-top:1px solid var(--line)}@media (width<=860px){.faq__inner{grid-template-columns:1fr}.faq__list{margin-top:var(--s-6)}}.faq__item{border-bottom:1px solid var(--line)}.faq__q{justify-content:space-between;align-items:center;gap:var(--s-4);text-align:left;width:100%;padding:var(--s-4) 0;color:var(--ink);background:0 0;border:none;font-family:Sora,sans-serif;font-size:1.15rem;font-weight:600;display:flex}.faq__q:hover{color:var(--red)}.faq__q:focus-visible{outline:3px solid var(--red);outline-offset:4px;border-radius:4px}.faq__icon{flex:none;width:20px;height:20px;position:relative}.faq__icon:before,.faq__icon:after{content:"";background:var(--red);transition:transform .25s var(--ease), opacity .25s var(--ease);border-radius:2px;position:absolute}.faq__icon:before{width:20px;height:2px;top:9px;left:0}.faq__icon:after{width:2px;height:20px;top:0;left:9px}.faq__item.is-open .faq__icon:after{opacity:0;transform:rotate(90deg)}.faq__a-wrap{transition:grid-template-rows .28s var(--ease);grid-template-rows:0fr;display:grid}.faq__item.is-open .faq__a-wrap{grid-template-rows:1fr}.faq__a{overflow:hidden}.faq__a p{color:var(--muted);padding-bottom:var(--s-4);max-width:62ch;font-size:1.02rem}.footer{background:var(--ink);color:var(--on-dark);padding-top:var(--s-8)}.footer__inner{gap:var(--s-6) var(--s-5);padding-bottom:var(--s-7);grid-template-columns:1.6fr 1fr 1fr 1fr;display:grid}.footer__mark{color:#fff;font-family:Sora,sans-serif;font-size:1.5rem;font-weight:800}.footer__mark em{color:var(--red);font-style:normal;font-weight:500}.footer__tagline{margin-top:var(--s-3);color:var(--on-dark-muted);max-width:34ch;font-size:.98rem}.footer__col h4{letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin-bottom:var(--s-3);font-family:Sora,sans-serif;font-size:.78rem}.footer__col a{color:var(--on-dark-muted);transition:color .16s var(--ease);padding:10px 0;font-size:.98rem;display:block}.footer__col a:hover{color:#fff}.footer__hours{list-style:none}.footer__hours li{justify-content:space-between;gap:var(--s-4);color:var(--on-dark-muted);font-variant-numeric:tabular-nums;padding:7px 0;font-size:.95rem;display:flex}.footer__hours li span:first-child{color:var(--on-dark)}.footer__hours-closed span:last-child{color:#f2efe96b}.footer__bottom{justify-content:space-between;align-items:center;gap:var(--s-3);padding-block:var(--s-4);color:var(--on-dark-muted);border-top:1px solid #f2efe91a;font-size:.92rem;display:flex}@media (width<=780px){.footer__inner{gap:var(--s-6) var(--s-5);grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=460px){.footer__inner{gap:var(--s-6);grid-template-columns:1fr}.footer__bottom{align-items:flex-start;gap:var(--s-2);flex-direction:column}}
