/* 308 Auto Detailing. Brand colors in variables: swap --purple to change the accent. */
:root{--purple:#4A00A0;--deep:#3C0084;--glow:#7A1488;--white:#fff;--black:#000;--ink:#14101c;--muted:#4b4458;--soft:#f5f0fc;--line:#ddd2ee;--r:18px;--sh:0 6px 24px rgba(60,0,132,.12)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--white);padding-bottom:76px}
img{max-width:100%;height:auto;display:block}
a{color:var(--purple);text-underline-offset:3px}a:hover{color:var(--glow)}
:focus-visible{outline:3px solid var(--glow);outline-offset:3px;border-radius:6px}
.top :focus-visible,.hero :focus-visible,.foot :focus-visible{outline-color:#fff}
.skip{position:absolute;left:-999px;top:8px;background:#fff;color:var(--purple);padding:10px 14px;border-radius:10px;z-index:99}.skip:focus{left:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:1140px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
h1,h2,h3{line-height:1.2;color:var(--black)}h1{font-size:clamp(2rem,5vw,3rem);margin:.2em 0 .4em}h2{font-size:clamp(1.5rem,3.2vw,2rem);margin:0 0 .5em}
.lead{font-size:1.15rem;color:var(--muted)}
.top{background:var(--black);border-bottom:3px solid var(--purple);position:sticky;top:0;z-index:20}
.bar{display:flex;align-items:center;gap:16px;min-height:64px;flex-wrap:wrap}
.brand{display:flex;min-height:44px;align-items:center;margin-right:auto}.brand img{filter:drop-shadow(0 0 6px rgba(122,20,136,.9))}
.menu-btn{min-height:44px;min-width:44px;padding:0 16px;border-radius:999px;border:2px solid #fff;background:transparent;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.menu{display:none;list-style:none;margin:0;padding:8px 0 14px;width:100%}.menu.open{display:block}
nav[aria-label=Main]{display:contents}
.menu a{display:flex;align-items:center;min-height:44px;padding:0 12px;color:#fff;text-decoration:none;border-radius:12px;font-weight:600}
.menu a:hover,.menu a[aria-current=page]{background:var(--deep);color:#fff}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:999px;font-weight:700;text-decoration:none;border:2px solid transparent;font:inherit;font-weight:700;cursor:pointer;transition:transform .15s,background .15s}
.btn:hover{transform:translateY(-1px)}
.btn-main{background:var(--purple);color:#fff;box-shadow:0 4px 18px rgba(122,20,136,.45)}.btn-main:hover{background:var(--deep);color:#fff}
.btn-call{background:#fff;color:var(--purple);border-color:var(--purple)}.btn-call:hover{color:var(--deep)}
.btn-ghost{background:var(--soft);color:var(--purple);border-color:var(--line)}
.btn[disabled]{opacity:.7;cursor:wait}
.hide-sm{display:none}.row{display:flex;flex-wrap:wrap;gap:12px}
.hero{background:radial-gradient(ellipse at 70% 40%,#2a0050 0,var(--black) 65%);color:#fff;padding:36px 0 44px}
.hero h1{color:#fff}.hero .lead{color:#e9e2f5}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.85rem;color:#e2c8f0;margin:0}
.hero .btn-call{background:transparent;color:#fff;border-color:#fff}
.hero-grid{display:grid;gap:28px;align-items:center}
.brand-art img{border-radius:var(--r);box-shadow:0 0 40px rgba(122,20,136,.55);width:100%;max-width:505px;margin:0 auto}
.facts{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:18px 0 8px}.facts li{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);padding:4px 12px;border-radius:999px;font-size:.95rem}
.rating a{color:#fff;display:inline-flex;min-height:44px;align-items:center}
.sec{padding:52px 0}.alt{background:var(--soft)}
.cards{list-style:none;padding:0;margin:20px 0;display:grid;gap:16px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--sh)}.card h3{margin:0 0 4px}
.price{font-weight:800;color:var(--purple);font-size:1.2rem;margin:0 0 6px}
.two{display:grid;gap:28px;align-items:start}.two img{border-radius:var(--r);box-shadow:var(--sh)}
.tbl{overflow-x:auto;margin:0 0 28px;border-radius:var(--r);border:1px solid var(--line)}
table{border-collapse:collapse;width:100%;min-width:300px}caption{text-align:left;font-weight:700;padding:12px 14px;background:var(--soft)}
th,td{padding:12px 14px;text-align:left;border-top:1px solid var(--line);vertical-align:top}thead th{background:var(--purple);color:#fff}tbody th{font-weight:700}
td:nth-child(2){font-weight:700;color:var(--purple);white-space:nowrap}
.map{position:relative;aspect-ratio:3/2;width:100%;max-width:840px;border-radius:var(--r);overflow:hidden;background:var(--soft);border:1px solid var(--line);margin:12px 0 16px}
.map iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.cta{background:var(--purple);color:#fff}.cta h2{color:#fff}.cta .btn-main{background:#fff;color:var(--purple)}.cta .btn-call{background:transparent;color:#fff;border-color:#fff}.cta :focus-visible{outline-color:#fff}
details{border:1px solid var(--line);border-radius:14px;margin:0 0 10px;background:#fff}summary{cursor:pointer;min-height:48px;padding:12px 16px;font-weight:700}details p{padding:0 16px 8px;margin:0 0 8px}
.facts-list{padding-left:1.1em}
.form{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:20px;box-shadow:var(--sh)}
.f{margin:0 0 14px}label{display:block;font-weight:700;margin-bottom:4px}
input,select,textarea{width:100%;font:inherit;font-size:16px;min-height:48px;padding:10px 12px;border:2px solid #8a7fa0;border-radius:12px;background:#fff;color:var(--ink)}
input[type=file]{padding:8px}
input[aria-invalid=true],select[aria-invalid=true]{border-color:#b00020}
.err{color:#b00020;margin:4px 0 0;font-weight:600;min-height:0}.err:empty{display:none}.hint{margin:4px 0 0;color:var(--muted);font-size:.95rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.req-note{color:var(--muted)}.fail{margin-top:14px;padding:14px;border-radius:14px;background:#fff4f6;border:2px solid #b00020}
#form-status{margin-top:10px;font-weight:600}
.foot{background:var(--black);color:#e9e2f5;padding:40px 0}.foot a{color:#fff;display:inline-flex;min-height:44px;align-items:center}
.f-name{font-weight:800;color:#fff;font-size:1.15rem}.flist{list-style:none;padding:0;margin:0}.grid3{display:grid;gap:20px}
.sticky{position:fixed;left:0;right:0;bottom:0;display:flex;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(0,0,0,.92);z-index:30}
.sticky .btn{flex:1}
@media(min-width:900px){body{padding-bottom:0}.sticky{display:none}.hide-sm{display:inline-flex}.menu-btn{display:none}
 .menu{display:flex!important;width:auto;padding:0;gap:2px;order:0}.bar{flex-wrap:nowrap}.brand{margin-right:12px}nav[aria-label=Main]{display:block;margin-right:auto}
 .hero-grid,.two{grid-template-columns:1.1fr .9fr}.cards{grid-template-columns:repeat(3,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.hero{padding:64px 0 72px}}
@media(min-width:600px) and (max-width:899px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}.btn:hover{transform:none}}
