:root{--red:#e01827;--ink:#f4f4f4;--muted:#b9bbbe;--line:#44474a;--paper:#222426}
body{background:#17191b;color:var(--ink)}
.topline{background:#111214;color:#d0d0d0}
header{background:#1d1d1b;border-bottom:1px solid #393b3d}
.nav>a:first-child{display:flex;align-items:center}
.logo{width:216px;height:90px;object-fit:contain}
nav{color:#f4f4f4}
nav>a:not(.button):hover,.text-link:hover{color:#ff5260}
.button,.mobile-actions a+a,.workshop-image>span{background:var(--red);color:#fff}
.button{justify-content:center}
.button:hover{background:#b9101e}
.hero-dark{position:relative;min-height:630px;background:#151719;isolation:isolate;overflow:hidden}
.hero-backdrop{position:absolute;inset:0;z-index:-1}
.hero-backdrop img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-backdrop:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#151719 0%,#151719 17%,rgba(21,23,25,.99) 29%,rgba(21,23,25,.9) 39%,rgba(21,23,25,.58) 52%,rgba(21,23,25,.18) 66%,rgba(21,23,25,0) 82%),linear-gradient(0deg,rgba(21,23,25,.35),transparent 42%)}
.hero-dark .hero-grid{display:block;padding-top:94px;padding-bottom:97px}
.hero-dark .hero-copy{position:relative;z-index:1;max-width:560px;padding:0}
.hero-dark .hero-copy h1{font-size:clamp(48px,5vw,68px);line-height:1.05;letter-spacing:-2.6px;margin:27px 0 25px;color:#fff}
.hero-dark .hero-copy h1 em{color:#f02a39}
.hero-dark .hero-copy>p{color:#e4e4e4;font-size:19px;line-height:1.55}
.hero-dark .eyebrow{color:#ff6570;font-size:15px;letter-spacing:1.35px;font-weight:800}
.hero-dark .eyebrow>span{background:#ff6570}
.hero-dark .hero-secondary{color:#fff;border-color:#9b9d9f}
.hero-dark .hero-secondary:hover{color:#ff6570;border-color:#ff6570}
.hero-dark .hero-direct{color:#e0e0e0}
.hero-dark .hero-direct>span{color:#c6c6c6}
.benefits{border-color:var(--line)}
.benefits>div{gap:16px}
.benefits>div>div{min-width:0}
.benefits>div+div{border-color:var(--line)}
.benefit-icon{display:inline-grid;place-items:center;flex:0 0 58px;width:58px;height:58px;border:1px solid #ff627025;border-radius:13px;background:linear-gradient(145deg,#382327,#231e21);color:#ff6270}
.benefit-icon svg{display:block;width:36px;height:36px;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.benefit-icon .icon-tint{fill:#ff62701c}
.eyebrow,.service-index,details a,summary span{color:#ff5664}
.eyebrow>span,.service-photo:after{background:var(--red)}
.benefits div div>span,.section-heading>p,.service>p,.workshop-copy>p,.muted,.service-note{color:var(--muted)}
.service{border-color:var(--line)}
.service:hover{background:transparent}
.service-photo{background:#2b2d2f}
.service-photo>img{filter:saturate(.87) contrast(1.03)}
.service:hover .service-photo>img{filter:saturate(1.06) contrast(1.02)}
.service-compact{background:#242629;border-bottom:0}
.service-compact:hover{background:#2b2e31}
.all-services{margin-top:64px;padding:36px 40px;background:#242629}
.all-services h3{font-size:29px;margin:9px 0 24px}
.all-services ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 24px;list-style:none;padding:0;margin:0}
.all-services li{font-size:15px;line-height:1.5;padding:12px 0;border-top:1px solid #46494c}
.all-services li:before{content:'—';display:inline-block;color:#ff5664;width:22px}
.service-note a,.text-link{color:#f4f4f4}
.workshop{background:#222426}
.workshop-image img,.owner img{filter:none}
.owner{gap:22px}
.owner img{width:128px;height:128px;flex:0 0 128px;object-position:50% 0}
.owner>div{min-width:0}
@media(max-width:760px){.owner{gap:18px}.owner img{width:112px;height:112px;flex-basis:112px}}
.appointment>div>p{color:var(--muted)}
input,select,textarea{background:#242629;border-color:#53565a;color:#fff}
input::placeholder,textarea::placeholder{color:#a3a6a9}
.contact{background:#101113}
.contact .eyebrow{color:#ff6570}
.contact p,.contact .hours-note{color:#c9cbcd}
dl>div{border-color:#44474a}
.hours dd{text-align:right;line-height:1.6}
.button.light{background:#fff;color:#17191b}
.button.light:hover{background:#e8e8e8}
footer{color:#b9bbbe}
.legal-page p,.legal-page li{color:#c7c9cb}
.legal-note{background:#252729}
.menu{border-color:#56595c;background:#27292b;color:#fff}
.mobile-actions{background:#242629}
.mobile-actions a{color:#fff}
@media(max-width:1050px){.all-services ul{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-dark .hero-copy{max-width:500px}.hero-dark .hero-copy h1{font-size:clamp(44px,5vw,58px)}.benefits>div{gap:13px}.benefit-icon{flex-basis:52px;width:52px;height:52px;border-radius:12px}.benefit-icon svg{width:32px;height:32px}}
@media(max-width:900px){.nav{height:80px}.logo{width:185px;height:76px}.menu{display:block;border:1px solid #56595c;background:#27292b;color:#fff;font-size:24px;padding:3px 11px}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#242629;padding:25px;box-shadow:0 12px 20px #0005;align-items:stretch}nav.open{display:flex;flex-direction:column}.hero-dark .hero-backdrop img{object-position:57% center}}
@media(max-width:760px){.logo{width:165px;height:68px}.hero-dark{display:flex;flex-direction:column;min-height:0}.hero-dark .hero-grid{order:0;padding-top:43px;padding-bottom:42px}.hero-dark .hero-copy{max-width:none}.hero-dark .eyebrow{font-size:12px;letter-spacing:1px}.hero-dark .hero-copy h1{font-size:clamp(40px,10.5vw,58px);letter-spacing:-1.7px;margin:20px 0}.hero-dark .hero-copy>p{font-size:16px}.hero-dark .hero-direct{margin-top:23px}.hero-backdrop{position:relative;order:1;z-index:0;height:250px}.hero-backdrop img{object-position:70% center}.hero-backdrop:after{background:linear-gradient(180deg,#151719 0%,rgba(21,23,25,0) 30%)}.all-services{margin-top:42px;padding:25px 23px}.all-services h3{font-size:24px}.all-services ul{grid-template-columns:1fr}.all-services li{font-size:15px}.legal-header .logo{width:165px;height:68px}}
@media(max-width:360px){.hero-dark .hero-copy h1{font-size:38px}.hero-dark .hero-copy h1 em{white-space:normal}}
@media(min-width:761px){.hero-dark .hero-backdrop{left:16%}}
@media(max-width:760px){.hero-dark .hero-backdrop{height:clamp(180px,56vw,250px)}}
@media(min-width:1250px) and (max-width:1399px){.hero-dark .hero-backdrop img{object-position:76% center}}
@media(min-width:1400px){.hero-dark .hero-backdrop{left:0;right:0;width:auto;-webkit-mask-image:none;mask-image:none}.hero-backdrop img{object-position:center}}
@media(max-width:760px){.hero-dark .hero-backdrop img{object-position:82% center}}
