:root{--bg:#090a0c;--panel:#141518;--muted:#a7a7aa;--copper:#c99575;--line:#343035}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f6f2ee;font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}header{position:sticky;top:0;z-index:10;background:#0b0b0de8;backdrop-filter:blur(14px);border-bottom:1px solid #ffffff17}.nav{max-width:1200px;margin:auto;padding:16px 28px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{font-family:Manrope;font-weight:800;letter-spacing:.22em;font-size:19px;color:#d4a084}.brand small{display:block;letter-spacing:.43em;font-size:9px;color:#ddd;text-align:center}.links{display:flex;gap:29px;align-items:center;font-size:13px}.links a:hover{color:var(--copper)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;background:var(--copper);color:#15100e;font-size:12px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;border:1px solid var(--copper);transition:.2s}.btn:hover{background:#e1ad8c}.btn.outline{background:transparent;color:#fff;border-color:#ffffff75}.btn.outline:hover{border-color:var(--copper);color:var(--copper)}.hero{position:relative;min-height:660px;display:flex;align-items:center;background:linear-gradient(90deg,#090a0cf5 0%,#090a0cce 43%,#090a0c52 100%)}.wrap{max-width:1200px;margin:auto;padding:0 28px;width:100%}.eyebrow{color:var(--copper);font-size:11px;letter-spacing:.25em;text-transform:uppercase;font-weight:800}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(46px,6vw,84px);line-height:1.07;letter-spacing:-.055em;margin:20px 0;max-width:780px}h1 em{font-style:normal;color:var(--copper)}.hero p{max-width:550px;line-height:1.8;color:#d1d0d0;font-size:16px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.hero-foot{position:absolute;bottom:30px;left:0;right:0;color:#ccc;font-size:12px;letter-spacing:.08em}.hero-foot .wrap{display:flex;gap:35px;flex-wrap:wrap}.section{padding:100px 0}.section.alt{background:#111215}.section-head{max-width:680px;margin-bottom:42px}h2{font-size:clamp(32px,4vw,51px);letter-spacing:-.045em;line-height:1.15;margin:14px 0}p.lead{color:var(--muted);line-height:1.8}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:#191a1d;border:1px solid #ffffff14;padding:32px;min-height:210px}.card .num{color:var(--copper);font-size:12px;letter-spacing:.18em}.card h3{font-size:21px;margin:28px 0 10px}.card p{color:#aaa;line-height:1.7;font-size:14px;margin:0}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo{min-height:440px;background:#17181a}.ticks{display:grid;gap:17px;margin-top:28px;color:#ddd}.ticks span:before{content:'✓';color:var(--copper);margin-right:14px}.cta{background:linear-gradient(100deg,#29201e,#121315);border:1px solid #654737;padding:60px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin-bottom:0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.details{display:grid;gap:25px}.detail label{display:block;color:var(--copper);font-size:11px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}.detail div{line-height:1.7}.form{display:grid;gap:12px}.form input,.form textarea{width:100%;padding:15px;background:#1b1c1f;color:#fff;border:1px solid #3a3a3e;border-radius:0}.form textarea{min-height:120px;resize:vertical}.form .btn{cursor:pointer}footer{border-top:1px solid #ffffff20;padding:30px 0;color:#999;font-size:12px}footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.mobile-menu{display:none}@media(max-width:760px){.links{display:none}.mobile-menu{display:block;color:#fff;background:none;border:0;font-size:24px;cursor:pointer}.links.open{display:flex;position:absolute;top:66px;left:0;right:0;background:#111;flex-direction:column;align-items:stretch;padding:25px}.hero{min-height:670px}.hero-foot .wrap{gap:12px}.cards,.split,.contact-grid{grid-template-columns:1fr}.section{padding:70px 0}.photo{min-height:300px}.cta{padding:32px;display:block}.cta .btn{margin-top:28px}.nav{padding:16px 20px}.wrap{padding:0 20px}}
:root{--copper:#d2a07f}body{line-height:1.65}.btn{border-radius:7px;letter-spacing:0;text-transform:none;font-size:14px}.card{border-radius:12px;transition:transform .2s}.card:hover{transform:translateY(-4px)}.hero h1{max-width:850px}.visit-panel{background:#1b1c1f;border:1px solid #ffffff24;border-radius:14px;padding:38px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.visit-panel h3{margin:0;font-size:26px}.visit-panel p{color:#bdb8b4;line-height:1.8;margin:0}.visit-panel .disclaimer{font-size:12px}.hero-foot span{letter-spacing:.03em}.photo{border-radius:12px}.cta{border-radius:12px}.form{display:none}@media(max-width:760px){.visit-panel{padding:26px}.hero{min-height:620px}}.mobile-fixed{display:none}@media(max-width:760px){footer{padding-bottom:95px}.mobile-fixed{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#111214f5;padding:10px 14px max(10px,env(safe-area-inset-bottom));border-top:1px solid #ffffff33}.mobile-fixed a{text-align:center;padding:13px 8px;border-radius:7px;font-size:14px;font-weight:800;background:#d2a07f;color:#19110d}.mobile-fixed a+ a{background:#28292b;color:white;border:1px solid #777}} .logo-img{width:124px;height:68px;object-fit:contain;display:block}.brand{letter-spacing:0}.page-hero{padding:65px 0;background:linear-gradient(120deg,#29211e,#0b0c0d)}.page-hero h1{font-size:clamp(40px,5vw,66px)}.breadcrumbs{font-size:13px;color:#d2a07f}.service-link{color:#d2a07f;font-weight:700;display:inline-block;margin-top:14px}.service-link:hover{text-decoration:underline}.footer-nav{display:flex;gap:20px;flex-wrap:wrap}.faq details{border-bottom:1px solid #ffffff33;padding:18px 0}.faq summary{cursor:pointer;font-weight:700}.faq p{color:#bbb;margin:12px 0 0}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:760px){.logo-img{width:100px;height:56px}.menu-grid{grid-template-columns:1fr}}
:focus-visible{outline:3px solid #efbc9c;outline-offset:4px}
.links [aria-current]{text-decoration:underline;text-underline-offset:.4em}
.visit-panel h2{font-size:26px;margin:0}
@media(max-width:760px){.nav{position:relative}.links.open{top:100%;max-height:calc(100dvh - 160px);overflow:auto}.mobile-menu{min-width:64px;min-height:44px}.links a{padding-block:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

.hero{min-height:0;padding:clamp(60px,9vw,128px) 0;background:linear-gradient(110deg,#211c19,#0b0c0d 75%)}
.card h2,.card h3{font-size:1.35rem}.card a:hover{text-decoration:underline}

/* Shared page rhythm and interactive states */
body{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
h1,h2,h3{font-family:inherit;text-wrap:balance}
.skip{position:fixed;top:8px;left:12px;z-index:50;padding:10px 16px;color:#15110e;background:#f6dfca;border-radius:5px;transform:translateY(-160%)}
.skip:focus{transform:none}
html{scroll-padding-top:105px}
.hero,.page-hero{border-bottom:1px solid #564237}
.meta{margin-top:30px;padding-top:16px;border-top:1px solid #54453b;color:#d0c4ba;font-size:.875rem;width:fit-content}
.section{padding-block:clamp(48px,6vw,84px)}
.section-head{margin-bottom:28px}
.breadcrumbs{margin-bottom:24px}.breadcrumbs a:hover{text-decoration:underline}
.lead{max-width:65ch}
.lead .service-link{display:inline;margin:0;text-decoration:underline;text-underline-offset:.16em}
.menu-grid{counter-reset:service;gap:14px}
.card{counter-increment:service;position:relative;padding:24px;min-height:0;border-color:#383437;transition:border-color .18s,background .18s}
.card::before{content:counter(service,decimal-leading-zero);display:block;color:var(--copper);font:600 .75rem/1.4 ui-monospace,monospace;letter-spacing:.12em}
.card h2,.card h3{margin:16px 0 8px;line-height:1.25}
.card a::after{content:"";position:absolute;inset:0;border-radius:12px}
.card:hover,.card:focus-within{background:#222023;border-color:var(--copper);transform:none}
.card p{color:#c6c2bf}
footer .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start}
footer .footer-nav{justify-content:flex-end}
footer small{align-self:end;font-size:12px}
footer .provider{justify-self:end;text-align:right}
footer a:hover,.provider a{text-decoration:underline;text-underline-offset:3px}
footer .provider a{color:#ddd2ca}
@media(max-width:760px){
 .mobile-menu{font-size:1rem;font-weight:650;border:1px solid #514943;border-radius:6px}
 .links.open{gap:4px;border-bottom:1px solid #59483d}
 .btn{min-height:44px}
 footer .wrap{grid-template-columns:1fr}
 footer .footer-nav{justify-content:flex-start}
 footer .provider{width:100%;padding-top:12px;border-top:1px solid #393637}
 body{scroll-padding-bottom:85px}
}

.hero{background:radial-gradient(ellipse at 83% 47%,#302922 0,transparent 52%),#101110}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(24px,4vw,64px)}
.hero-copy{min-width:0}.hero h1{font-size:clamp(3rem,5.7vw,5.1rem);line-height:1.02}
.drawing{position:relative;margin:0;min-width:0;padding:14px 20px 0;background-image:linear-gradient(#e4c8ae0a 1px,transparent 1px),linear-gradient(90deg,#e4c8ae0a 1px,transparent 1px);background-size:24px 24px;border:1px solid #635447;border-radius:3px}
.rotor{display:block;width:100%;height:auto}.drawing figcaption{display:flex;justify-content:space-between;padding:12px 0;border-top:1px solid #695749;font:600 .72rem/1.4 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:#ddc4ae}
.service-icon{width:30px;height:30px;color:#b27650}
.card{background:#f3eee6;border:1px solid #dad2c6;border-radius:6px;color:#221f1d;padding:26px}
.card p{color:#514c46}.card::before{float:right;color:#756858}.card:hover,.card:focus-within{background:#fffaf4;border-color:#ab7551}
.section:has(.menu-grid){background:#ece8e0;color:#231f1c}.section:has(.menu-grid) .lead{color:#554e48}.section:has(.menu-grid) .eyebrow{color:#835335}
.page-hero{background:linear-gradient(110deg,#2b241f,#111211 72%)}.page-hero .service-icon{color:#e2ad88;margin-bottom:12px}
.btn:hover{color:#17120f}.btn.outline:hover{color:#f5ccac}
@media(max-width:760px){.hero-layout{grid-template-columns:1fr}.hero{padding:44px 0 30px}.drawing{display:grid;grid-template-columns:116px 1fr;align-items:center;gap:16px;padding:4px 16px}.drawing figcaption{gap:6px;flex-direction:column;border-top:0}.drawing figcaption span+span{color:#ad9987}.hero h1{font-size:clamp(2.75rem,8.6vw,4rem)}}

button{cursor:pointer}.mobile-fixed button{font:inherit;font-weight:750;color:#19110d;background:var(--copper);border:0;border-radius:7px}.links{gap:5px}.links>a:not(.btn){padding:9px 13px;border-radius:6px}.links>a:hover,.links>[aria-current]{background:#262323}.links .btn{margin-left:8px}.mobile-menu::before{content:'☰';margin-right:8px;color:var(--copper)}
.card a::after{display:none}.card-action,#copy-draft{background:transparent;border:0;color:inherit;padding:10px 0;font:inherit;font-size:.88rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}.card-action{margin-top:10px}
dialog{width:min(540px,calc(100% - 28px));max-height:88dvh;overscroll-behavior:contain;border:1px solid #80654f;border-radius:16px;background:#191919;color:#f6f2ee;padding:clamp(20px,4vw,36px);box-shadow:0 24px 90px #0009}dialog::backdrop{background:#080909cc}body:has(dialog[open]){overflow:hidden}.dialog-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-top button{border:1px solid #65584d;border-radius:50%;width:40px;height:40px;background:transparent;color:white;font-size:22px}dialog h2{font-size:2rem}dialog p{color:#d2c8bf}dialog select,#vin,#customer-name,#customer-email{display:block;background:#272624;color:#fff;border:1px solid #877363;border-radius:6px;padding:10px;font:inherit;width:100%;margin:4px 0 14px}dialog fieldset{border:0;margin:14px 0;padding:0}dialog legend{font-weight:700}dialog fieldset label{display:block;padding:9px 0;cursor:pointer}dialog input{accent-color:#ce9976}dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#292724;border-left:2px solid var(--copper);padding:12px;font:inherit;font-size:.9rem}dialog .fallback{font-size:.85rem;margin-bottom:0}#copy-draft{margin-left:12px}
@media(prefers-reduced-motion:no-preference){.rotor>g>circle,.rotor>g>g{transform-box:view-box}.hero-copy,.page-hero .wrap{animation:arrive .65s ease-out both}.drawing{animation:arrive .9s ease-out both}.rotor{animation:turn-in 1.6s cubic-bezier(.2,.75,.2,1) both}dialog[open]{animation:arrive .2s ease-out}@keyframes arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes turn-in{from{transform:rotate(-36deg);opacity:.3}to{transform:rotate(0);opacity:1}}}
@media(max-width:760px){.links.open{padding:12px 20px 20px;border-radius:0 0 14px 14px}.links.open .btn{margin:6px 0 0}.links.open>a{min-height:44px}.mobile-fixed button{font-size:14px}}

#inquiry [hidden]{display:none}

@media(min-width:761px) and (max-width:1000px){.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.card p,#service-info,.page-hero:has(.service-icon) .lead{white-space:nowrap}

/* Keep scroll controls consistent across pages and inquiry dialogs. */
:root {
  color-scheme: dark;
  --scroll-track: #181716;
  --scroll-thumb: #aa8267;
  --scroll-hover: #d2a07f;
  scrollbar-gutter: stable;
}

@media (forced-colors: none) {
  @supports not selector(::-webkit-scrollbar) {
    * { scrollbar-color: var(--scroll-thumb) var(--scroll-track); }
  }

  ::-webkit-scrollbar { width: 12px; height: 12px; }
  ::-webkit-scrollbar-track, ::-webkit-scrollbar-corner {
    background: var(--scroll-track);
  }
  ::-webkit-scrollbar-thumb {
    background: var(--scroll-thumb);
    border: 3px solid var(--scroll-track);
    border-radius: 12px;
  }
  ::-webkit-scrollbar-thumb:hover { background: var(--scroll-hover); }
  ::-webkit-scrollbar-thumb:active { background: #e1b99b; }
}

#inquiry { scrollbar-gutter: stable; }
@media (max-width: 760px) {
  html { scroll-padding-bottom: calc(78px + env(safe-area-inset-bottom)); }
}
