:root{--brand:#ed1a3b;--brand-dark:#c01530;--accent:#ed1a3b;--accent-dark:#e81536;--bg:#fff;--bg-soft:#f7f7f7;--bg-dark:#2a2a2a;--text:#1a1a1a;--text-muted:#828282;--text-light:#fff;--border:#e5e5e5;--topbar-bg:#707780;--topbar-text:#c1c7ce;--max-width:1200px;--radius:4px;--header-height:72px}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;overflow-anchor:none}body{overflow-anchor:none}:target{scroll-margin-top:90px}body{color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.6}h1,h2,h3,h4{color:var(--text);margin:0 0 .5em;font-family:Georgia,Times New Roman,serif;font-weight:400;line-height:1.2}h1{font-size:clamp(2rem,4.5vw,3.5rem)}h2{font-size:clamp(1.6rem,3vw,2.4rem)}h3{font-size:1.3rem}p{margin:0 0 1em}a{color:var(--brand);text-decoration:none;transition:color .2s}a:hover{color:var(--accent)}img{max-width:100%;height:auto;display:block}.container{max-width:var(--max-width);margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section--soft{background:var(--bg-soft)}.section--dark{background:var(--bg-dark);color:var(--text-light)}.section--dark h1,.section--dark h2,.section--dark h3{color:var(--text-light)}.section__header{text-align:center;margin-bottom:3rem}.section__eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:.75rem;font-size:.75rem;display:inline-block}.btn{background:var(--brand);color:var(--text-light);border-radius:var(--radius);border:1px solid var(--brand);cursor:pointer;padding:.875rem 2rem;font-size:.95rem;font-weight:500;transition:background .2s,color .2s;display:inline-block}.btn:hover{background:var(--brand-dark);color:var(--text-light)}.btn--accent{background:var(--accent);border-color:var(--accent)}.btn--accent:hover{background:var(--accent-dark);color:var(--text-light)}.btn--outline{color:var(--brand);background:0 0}.btn--outline:hover{background:var(--brand);color:var(--text-light)}.site-header{z-index:100;background:var(--bg);color:var(--text);box-shadow:0 1px 0 var(--border);transition:box-shadow .3s;position:sticky;top:0}.site-header[data-scrolled=true]{box-shadow:0 4px 18px #00000014}@media (max-width:1023px){.site-header[data-home=true]:not([data-scrolled=true]){box-shadow:none}}.header-wrapper__inner{justify-content:space-between;align-items:center;gap:2rem;min-height:72px;padding:.25rem 1.5rem;display:flex}.header-logo{flex:none;align-items:center;display:inline-flex}.header-logo:hover{opacity:.85}.header-logo__img{width:auto;height:186px;transition:height .35s cubic-bezier(.4,0,.2,1);display:block}.site-header[data-scrolled=true] .header-logo__img,.site-header[data-home=false] .header-logo__img{height:80px}.header-main{flex-direction:column;flex:auto;justify-content:space-between;align-self:stretch;align-items:flex-end;min-width:0;padding-top:.5rem;display:flex}.header-info{opacity:1;flex-direction:row;justify-content:flex-end;align-items:center;gap:1.75rem;max-height:80px;margin-bottom:20px;transition:max-height .35s cubic-bezier(.4,0,.2,1),opacity .25s,margin-bottom .35s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.site-header[data-scrolled=true] .header-info{opacity:0;max-height:0;margin-bottom:0}.header-info__tagline{color:var(--text-muted);letter-spacing:.01em;text-align:right;max-width:280px;margin:0;font-size:.92rem;font-style:italic;line-height:1.3}.header-tagline-bar{background:var(--topbar-bg);color:#fff;max-height:3rem;margin:0;padding:0;transition:max-height .35s cubic-bezier(.4,0,.2,1);display:none;overflow:hidden}.site-header[data-scrolled=true] .header-tagline-bar{max-height:0}.header-tagline-bar__text{text-align:center;color:inherit;letter-spacing:.02em;margin:0;padding:.6rem 0;font-size:.88rem;font-style:italic;font-weight:500;line-height:1.3}@media (max-width:1023px){.header-info__tagline--inline{display:none}.header-tagline-bar{display:block}}.header-info__item{align-items:center;gap:.7rem;padding:.15rem 0;font-style:normal;display:inline-flex}.header-info__icon{width:28px;height:28px;color:var(--bg);background:var(--brand);border-radius:50%;flex:none;padding:6px;transition:background .2s}a.header-info__item:hover .header-info__icon{background:var(--brand-dark)}.header-info__text{border-left:2px solid #0000;flex-direction:column;align-items:flex-start;padding-left:.1rem;line-height:1.2;display:inline-flex}.header-info__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.14em;margin-bottom:.15rem;font-size:.7rem}.header-info__value{color:var(--brand);letter-spacing:.01em;font-size:1.02rem;font-style:normal;font-weight:600}span.header-info__value{white-space:nowrap}address.header-info__value{display:inline}.header-info__value-line{white-space:nowrap}.header-info__value-sep{white-space:pre}a.header-info__item:hover .header-info__value{color:var(--brand-dark)}.site-nav .main-nav{align-items:center;gap:2.25rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}.site-nav .main-nav>li{min-width:0;position:relative}.site-nav .main-nav>li>a{color:var(--text-muted);padding:1.5rem 0;font-size:.95rem;font-weight:400;transition:color .2s;display:inline-block;position:relative}.site-nav .main-nav>li>a:after{content:"";background:var(--brand);transform-origin:50%;height:2px;transition:transform .25s;position:absolute;bottom:1.1rem;left:0;right:0;transform:scaleX(0)}.site-nav .main-nav>li>a:hover,.site-nav .main-nav>li:hover>a,.site-nav .main-nav>li:focus-within>a{color:var(--brand)}.site-nav .main-nav>li>a:hover:after,.site-nav .main-nav>li:hover>a:after,.site-nav .main-nav>li:focus-within>a:after{transform:scaleX(1)}.site-nav .submenu{background:var(--bg);border-top:2px solid var(--brand);opacity:0;visibility:hidden;min-width:240px;margin:0;padding:.5rem 0;list-style:none;transition:opacity .2s,transform .2s,visibility .2s;position:absolute;top:100%;left:-1rem;right:auto;transform:translateY(-6px);box-shadow:0 12px 30px #0000001f}.site-nav .has-submenu--right>.submenu{left:calc(-1rem + var(--submenu-shift,0px));right:auto}.site-nav .has-submenu:hover>.submenu,.site-nav .has-submenu:focus-within>.submenu{opacity:1;visibility:visible;transform:translateY(0)}.site-nav .submenu a{color:var(--text-muted);padding:.7rem 1.25rem;font-size:.9rem;transition:background .15s,color .15s;display:block}.site-nav .submenu a:hover{background:var(--bg-soft);color:var(--brand)}@media (max-width:1279.98px){.header-logo__img{height:150px}.site-header[data-scrolled=true] .header-logo__img,.site-header[data-home=false] .header-logo__img{height:72px}.site-nav .main-nav{gap:1.75rem}.header-info{gap:1.25rem;margin-bottom:16px}.header-info__value{font-size:.95rem}}@media (max-width:1023.98px){.header-logo__img{height:120px}.site-header[data-scrolled=true] .header-logo__img,.site-header[data-home=false] .header-logo__img{height:64px}.site-nav .main-nav{gap:1.25rem}.header-info{gap:1rem;margin-bottom:12px}.header-info__label{display:none}.header-info__value{font-size:.9rem}.header-info__icon{width:24px;height:24px;padding:5px}address.header-info__value{flex-direction:column;align-items:flex-end;line-height:1.2;display:flex}.header-info__value-sep{display:none}}@media (max-width:767.98px){.header-wrapper__inner{flex-direction:column;align-items:stretch;gap:.5rem;min-height:0;padding:.5rem 1rem .75rem}.header-logo{order:2;justify-content:center;align-self:center;width:100%}.header-logo__img--horizontal{max-width:100%;height:120px;display:block}.site-header[data-scrolled=true] .header-logo__img--horizontal,.site-header[data-home=false] .header-logo__img--horizontal{height:56px}.header-main{order:1;align-items:center;width:100%;padding-top:0}.site-nav{width:100%}.site-nav .main-nav{justify-content:center;gap:1rem;font-size:.9rem}.site-nav .main-nav>li>a{padding:.75rem 0;font-size:.9rem}.site-nav .submenu,.header-info{display:none}}@media (max-width:639.98px){.header-wrapper__inner{gap:.4rem;padding:.5rem .875rem .625rem}.header-logo__img--horizontal{height:100px}.site-header[data-scrolled=true] .header-logo__img--horizontal,.site-header[data-home=false] .header-logo__img--horizontal{height:48px}.site-nav .main-nav{gap:.75rem;font-size:.82rem}.site-nav .main-nav>li>a{padding:.625rem 0;font-size:.82rem}}@media (max-width:420px){.header-wrapper__inner{gap:.35rem;padding:.4rem .625rem .5rem}.header-logo__img--horizontal{height:80px}.site-header[data-scrolled=true] .header-logo__img--horizontal,.site-header[data-home=false] .header-logo__img--horizontal{height:42px}.site-nav .main-nav{gap:.5rem;font-size:.75rem}.site-nav .main-nav>li>a{padding:.5rem 0;font-size:.75rem}.header-tagline-bar__text{padding:.4rem .5rem;font-size:.78rem}}.site-footer{background:var(--bg-dark);color:var(--text-light);padding:4rem 0 1.5rem;font-size:.9rem}.site-footer a{color:var(--text-light);opacity:.85}.site-footer a:hover{opacity:1;color:var(--accent)}.site-footer__grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2.5rem;margin-bottom:3rem;display:grid}.site-footer__col h4{color:#ff5a76;letter-spacing:.15em;text-transform:uppercase;margin-bottom:1rem;font-family:ui-sans-serif,system-ui,sans-serif;font-size:.8rem}.site-footer__col ul{margin:0;padding:0;list-style:none}.site-footer__col li{margin-bottom:.6rem}.site-footer__bottom{text-align:center;opacity:.6;border-top:1px solid #ffffff1a;padding-top:1.5rem;font-size:.8rem}.hero{min-height:72vh;color:var(--text-light);isolation:isolate;background:#2a2a2a;align-items:center;padding:6rem 0;display:flex;position:relative;overflow:hidden}.hero img{z-index:0}.hero__overlay{z-index:1;background:linear-gradient(120deg,#000000b3 0%,#00000073 60%,#0003 100%);position:absolute;inset:0}.hero__content{z-index:2;max-width:720px;position:relative}.hero h1{color:var(--text-light);margin-bottom:1rem}.hero__baseline{opacity:.9;margin-bottom:2rem;font-size:1.25rem;font-style:italic}.hero__cta{flex-wrap:wrap;gap:1rem;display:flex}.grid{gap:2rem;display:grid}.grid--3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid--2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr))}.grid--4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);padding:2.5rem 2rem;transition:border-color .2s,transform .2s}.card:hover{border-color:var(--accent);transform:translateY(-4px)}.card--with-media{flex-direction:column;padding:0;display:flex;overflow:hidden}.card__media{aspect-ratio:16/10;background:var(--bg-soft);width:100%;position:relative;overflow:hidden}.card__body{padding:1.75rem 1.75rem 2rem}.card__body p{color:var(--text-muted);margin:0}.card__body h3{margin-bottom:.75rem}.card__icon{width:48px;height:48px;color:var(--accent);margin-bottom:1.5rem}.card h3{margin-bottom:.75rem}.card>p{color:var(--text-muted);margin:0}.team-member{text-align:center}.team-member__photo{background:var(--bg-soft);border:3px solid var(--accent);border-radius:50%;width:180px;height:180px;margin:0 auto 1.5rem;position:relative;overflow:hidden}.team-member__photo--small{border-width:2px;flex:0 0 100px;width:100px;height:100px;margin:0}.team-member__avatar{background:var(--bg-soft);width:160px;height:160px;color:var(--brand);border:3px solid var(--accent);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 1.5rem;font-family:Georgia,serif;font-size:2.5rem;display:flex}.team-member h3{margin-bottom:.25rem}.team-member__role{color:var(--accent);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;font-size:.85rem}.team-member__bio{color:var(--text-muted);font-size:.95rem}.quote{background:var(--bg-soft);border-left:4px solid var(--accent);color:var(--text);margin:0;padding:2rem 2.5rem;font-size:1.1rem;font-style:italic}.quote__author{color:var(--text-muted);margin-top:1rem;font-size:.9rem;font-style:normal;display:block}.contact-grid{grid-template-columns:1fr 1fr;gap:4rem;display:grid}@media (max-width:760px){.contact-grid{grid-template-columns:1fr;gap:2rem}}.contact-info dt{letter-spacing:.15em;text-transform:uppercase;color:var(--accent);margin-bottom:.25rem;font-size:.75rem}.contact-info dd{margin:0 0 1.5rem;font-size:1.05rem}.hours-list{margin:0;padding:0;list-style:none}.hours-list__item{border-bottom:1px dashed var(--border);border-radius:6px;justify-content:space-between;align-items:center;gap:1.5rem;padding:.4rem .6rem;display:flex}.hours-list__item:last-child{border-bottom:0}.hours-list__day{color:inherit;font-weight:500}.hours-list__time{color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.hours-list__time--closed{border:1px solid var(--border);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:0 0;border-radius:4px;padding:.1rem .55rem;font-size:.78em;display:inline-block}.hours-list__item--today{background:#ed1a3b14}.hours-list__item--today .hours-list__day,.hours-list__item--today .hours-list__time{color:var(--brand);font-weight:600}.hours-list__item--today .hours-list__time--closed{border-color:var(--brand);color:var(--brand);background:0 0}.site-footer .hours-list__item{border-bottom-color:#ffffff1f}.site-footer .hours-list__time{color:#ffffffbf}.site-footer .hours-list__time--closed{color:#ffffffbf;border-color:#ffffff40}.site-footer .hours-list__item--today{background:#ed1a3b38}.site-footer .hours-list__item--today .hours-list__day,.site-footer .hours-list__item--today .hours-list__time{color:#fff}.site-footer .hours-list__item--today .hours-list__time--closed{color:#fff;border-color:#fff}.location-map__figure{margin:0 auto 2.5rem;display:block;overflow:hidden}.location-map__figure--full{width:100%;max-width:none;height:384px;margin:0 0 2.5rem}.location-map__img{object-fit:cover;object-position:25% center;width:100%;height:100%;display:block}.contact-grid--below-map{align-items:start}.location-map__caption h3{margin:0 0 .5rem}.location-map__caption p{color:var(--text-muted);margin:0 0 1rem}.location-map__caption p:last-child{margin-bottom:0}@media (max-width:760px){.location-map__figure{margin-bottom:2rem}}.contact-form label{color:var(--text-muted);margin-bottom:.4rem;font-size:.85rem;font-weight:500;display:block}.contact-form input,.contact-form textarea{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);width:100%;color:var(--text);margin-bottom:1.25rem;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);outline:none}.contact-form textarea{resize:vertical;min-height:140px}.price-table{border-collapse:collapse;width:100%;margin:1rem 0 2.5rem;font-size:.95rem}.price-table th,.price-table td{text-align:left;border-bottom:1px solid var(--border);padding:.85rem 1rem}.price-table th{background:var(--bg-soft);color:var(--brand);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem;font-weight:600}.price-table td:nth-child(2),.price-table td:nth-child(3){text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.service{border-bottom:1px solid var(--border);padding:2rem 0}.service:last-child{border-bottom:0}.service h3{color:var(--brand)}.service p{color:var(--text-muted);margin:0}.page-header{background:var(--bg-soft);text-align:center;padding:5rem 0 3rem}.page-header h1{margin-bottom:.5rem}.page-header p{color:var(--text-muted);max-width:620px;margin:0 auto;font-size:1.15rem}
