:root {
  --bg: #0f1419;
  --bg-alt: #171e26;
  --surface: #1e2732;
  --text: #f3f6f9;
  --muted: #a8b3c0;
  --accent: #e8a317;
  --accent-ink: #1a1200;
  --line: rgba(255,255,255,0.08);
  --ok: #7dcea0;
  --radius: 14px;
  --shadow: 0 18px 50px rgba(0,0,0,0.35);
  --max: 1100px;
  --font: "Segoe UI", system-ui, -apple-system, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: var(--font);
  color: var(--text);
  background: radial-gradient(1200px 600px at 10% -10%, #243041 0%, transparent 55%),
              radial-gradient(900px 500px at 100% 0%, #2a2314 0%, transparent 45%),
              var(--bg);
  line-height: 1.55;
}
img { max-width: 100%; display: block; }
a { color: var(--accent); text-decoration-thickness: 1px; text-underline-offset: 0.18em; }
a:hover { color: #ffc44d; }
.wrap { width: min(var(--max), calc(100% - 2rem)); margin-inline: auto; }
.skip-link {
  position: absolute; left: -999px; top: 0; background: var(--accent); color: var(--accent-ink);
  padding: 0.5rem 0.75rem; z-index: 100;
}
.skip-link:focus { left: 0.75rem; top: 0.75rem; }

.site-header {
  position: sticky; top: 0; z-index: 50;
  backdrop-filter: blur(12px);
  background: rgba(15,20,25,0.85);
  border-bottom: 1px solid var(--line);
}
.header-inner {
  display: flex; align-items: center; justify-content: space-between;
  min-height: 64px; gap: 1rem;
}
.logo {
  display: inline-flex; align-items: center; gap: 0.65rem;
  color: var(--text); text-decoration: none; font-weight: 700; letter-spacing: 0.02em;
}
.logo img {
  width: 48px; height: 48px; object-fit: contain; border-radius: 8px;
  background: #fff; flex-shrink: 0;
}
.nav { display: none; gap: 1rem; align-items: center; }
.nav a { color: var(--muted); text-decoration: none; font-size: 0.95rem; }
.nav a:hover { color: var(--text); }
.nav-cta {
  background: var(--accent); color: var(--accent-ink) !important;
  padding: 0.45rem 0.85rem; border-radius: 999px; font-weight: 600;
}
.menu-btn {
  border: 1px solid var(--line); background: var(--surface); color: var(--text);
  border-radius: 999px; padding: 0.4rem 0.85rem; cursor: pointer;
}
.mobile-nav {
  display: grid; gap: 0.25rem; padding: 0.5rem 1rem 1rem;
  border-bottom: 1px solid var(--line);
  background: rgba(15,20,25,0.95);
}
.mobile-nav a {
  color: var(--text); text-decoration: none; padding: 0.7rem 0.4rem;
  border-bottom: 1px solid var(--line);
}

.hero { padding: 3.5rem 0 3rem; }
.hero-grid {
  display: grid; gap: 1.75rem;
}
.eyebrow {
  text-transform: uppercase; letter-spacing: 0.12em; font-size: 0.75rem;
  color: var(--accent); font-weight: 700; margin: 0 0 0.75rem;
}
h1, h2, h3 { line-height: 1.15; margin: 0 0 0.75rem; }
h1 { font-size: clamp(2rem, 5vw, 3.2rem); max-width: 14ch; }
h2 { font-size: clamp(1.5rem, 3vw, 2.1rem); }
h3 { font-size: 1.1rem; }
.lede { color: var(--muted); font-size: 1.08rem; max-width: 54ch; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin: 1.4rem 0 1.2rem; }
.btn {
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 999px; padding: 0.75rem 1.15rem; font-weight: 700;
  text-decoration: none; border: 1px solid transparent; cursor: pointer;
}
.btn-primary { background: var(--accent); color: var(--accent-ink); }
.btn-primary:hover { filter: brightness(1.05); color: var(--accent-ink); }
.btn-ghost { border-color: var(--line); color: var(--text); background: transparent; }
.btn-ghost:hover { border-color: var(--accent); color: var(--accent); }
.trust-row {
  display: flex; flex-wrap: wrap; gap: 0.6rem; list-style: none; padding: 0; margin: 0;
}
.trust-row li {
  background: rgba(232,163,23,0.12); color: #f0d9a0; border: 1px solid rgba(232,163,23,0.25);
  border-radius: 999px; padding: 0.35rem 0.75rem; font-size: 0.85rem;
}
.hero-card {
  background: linear-gradient(160deg, var(--surface), #151b22);
  border: 1px solid var(--line); border-radius: var(--radius);
  padding: 1.35rem; box-shadow: var(--shadow);
}
.hero-card h2 { font-size: 1.25rem; }
.hero-card p { color: var(--muted); }
.quick-facts { margin: 1rem 0 0; }
.quick-facts > div {
  display: grid; grid-template-columns: 5.5rem 1fr; gap: 0.5rem;
  padding: 0.55rem 0; border-top: 1px solid var(--line);
}
.quick-facts dt { color: var(--muted); font-size: 0.85rem; }
.quick-facts dd { margin: 0; font-weight: 600; }

.section { padding: 3.25rem 0; }
.section-alt { background: rgba(255,255,255,0.02); border-block: 1px solid var(--line); }
.section-intro { color: var(--muted); max-width: 60ch; margin-bottom: 1.5rem; }
.cards {
  display: grid; gap: 1rem;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.card {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: var(--radius); padding: 1.15rem;
}
.card p { color: var(--muted); margin: 0; }
.fineprint { color: var(--muted); font-size: 0.9rem; }

.steps { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: 1rem; }
.steps li {
  display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: start;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
  padding: 1.1rem;
}
.steps p { color: var(--muted); margin: 0; }
.step-num {
  width: 2.2rem; height: 2.2rem; border-radius: 50%;
  display: grid; place-items: center; font-weight: 800;
  background: var(--accent); color: var(--accent-ink);
}

.area-list {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 0.6rem; list-style: none; padding: 0; margin: 0 0 1rem;
}
.area-list li {
  background: var(--surface); border: 1px solid var(--line);
  border-radius: 999px; padding: 0.65rem 0.9rem; text-align: center;
}

.why-grid {
  display: grid; gap: 1.5rem;
}
.why-grid > div p { color: var(--muted); }
.checklist { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.7rem; }
.checklist li {
  padding: 0.85rem 1rem 0.85rem 2.4rem; position: relative;
  background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
}
.checklist li::before {
  content: "✓"; position: absolute; left: 0.9rem; color: var(--ok); font-weight: 800;
}

.contact-grid { display: grid; gap: 1.5rem; }
.contact-list { list-style: none; padding: 0; margin: 1rem 0 0; display: grid; gap: 0.55rem; }
.contact-form {
  display: grid; gap: 0.75rem; background: var(--surface);
  border: 1px solid var(--line); border-radius: var(--radius); padding: 1.2rem;
  box-shadow: var(--shadow);
}
.contact-form label { display: block; color: var(--muted); font-size: 0.92rem; margin-bottom: -0.4rem; }
.contact-form input, .contact-form textarea {
  width: 100%; border-radius: 10px; border: 1px solid var(--line);
  background: #12171d; color: var(--text); padding: 0.7rem 0.8rem; font: inherit;
}
.contact-form input:focus, .contact-form textarea:focus {
  outline: 2px solid rgba(232,163,23,0.45); border-color: var(--accent);
}

.site-footer {
  border-top: 1px solid var(--line); padding: 1.75rem 0 2.25rem; color: var(--muted);
}
.footer-inner { display: grid; gap: 0.35rem; }
.footer-inner a { color: var(--muted); }
.footer-inner strong { color: var(--text); }

@media (min-width: 840px) {
  .nav { display: flex; }
  .menu-btn, .mobile-nav { display: none !important; }
  .hero-grid { grid-template-columns: 1.3fr 0.9fr; align-items: center; }
  .why-grid, .contact-grid { grid-template-columns: 1fr 1fr; align-items: start; }
}

/* ---- multi-page additions ---- */
.nav a[aria-current="page"] { color: var(--text); }
.breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 0.35rem; padding: 0.9rem 0 0; margin: 0; font-size: 0.85rem; color: var(--muted); }
.breadcrumbs li + li::before { content: "›"; margin-right: 0.35rem; color: var(--muted); }
.breadcrumbs a { color: var(--muted); }
.page-hero { padding: 2.25rem 0 1.5rem; }
.page-hero h1 { max-width: 22ch; }
.card h3 a, .card h2 a { color: var(--text); text-decoration: none; }
.card h3 a:hover { color: var(--accent); }
.card h3 a::after { content: " →"; color: var(--accent); }
.area-list a { color: var(--text); text-decoration: none; display: block; }
.area-list a:hover { color: var(--accent); }
.two-col { display: grid; gap: 1.5rem; }
.prose-block h2, .prose h2 { margin-top: 1.25rem; }
.prose { max-width: 75ch; }
.prose p { color: var(--muted); }
.callout { border-left: 4px solid var(--accent); background: var(--surface); padding: 0.9rem 1rem; border-radius: 0 var(--radius) var(--radius) 0; margin: 1.5rem 0; }
.cta-band { background: linear-gradient(120deg, rgba(232,163,23,0.14), transparent 70%); border-top: 1px solid var(--line); }
.cta-inner { display: grid; gap: 1rem; align-items: center; }
.cta-inner p { color: var(--muted); margin: 0; }
.about-grid { display: grid; gap: 1.5rem; align-items: center; }
.about-logo { border-radius: var(--radius); background: #fff; width: 100%; height: auto; }
.faq { background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); padding: 0.2rem 1.1rem; margin-bottom: 0.75rem; }
.faq summary { cursor: pointer; padding: 0.8rem 0; list-style-position: outside; }
.faq-q { display: inline; font-size: 1.05rem; margin: 0; }
.faq p { margin-top: 0; }
.contact-form h2 { font-size: 1.25rem; margin-bottom: 0.25rem; }
.contact-form select { width: 100%; border-radius: 10px; border: 1px solid var(--line); background: #12171d; color: var(--text); padding: 0.7rem 0.8rem; font: inherit; }
.footer-cols { display: grid; gap: 1.25rem; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); }
.footer-cols ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.3rem; }
.footer-cols a { color: var(--muted); }
.footer-cols strong { color: var(--text); }
.footer-h { color: var(--text); font-weight: 700; margin: 0 0 0.5rem; }
.call-bar { position: fixed; left: 0.75rem; right: 0.75rem; bottom: 0.75rem; z-index: 60; text-align: center; background: var(--accent); color: var(--accent-ink); font-weight: 800; padding: 0.9rem; border-radius: 999px; text-decoration: none; box-shadow: var(--shadow); }
.call-bar:hover { color: var(--accent-ink); }
body { padding-bottom: 4.5rem; }
@media (min-width: 840px) {
  .call-bar { display: none; }
  body { padding-bottom: 0; }
  .two-col, .about-grid { grid-template-columns: 1fr 1fr; }
  .cta-inner { grid-template-columns: 1.4fr 1fr; }
}
.mobile-nav[hidden] { display: none; }

/* ===== v2 restyle: black / red-orange, condensed uppercase headings ===== */
:root{--bg:#000;--bg-alt:#0a0a0a;--surface:#121212;--text:#fff;--muted:#a7a7a7;--accent:#e53935;--accent-ink:#fff;--line:rgba(255,255,255,.08);--radius:10px;--font:"Inter",system-ui,sans-serif;--head:"Oswald","Arial Narrow",sans-serif}
body{background:#000;font-family:var(--font)}
h1,h2,h3,.logo span,.nav a,.btn,.eyebrow,.pill-dark,.badges span,.step-num{font-family:var(--head);text-transform:uppercase;letter-spacing:.02em}
h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02;font-weight:700}
h2{font-weight:600}
.site-header{background:#000;border-bottom:1px solid var(--line)}
.nav a[aria-current]{background:var(--accent);color:#fff;padding:.5rem .9rem}
.nav-cta,.btn{border-radius:999px}
.hero{background:linear-gradient(100deg,rgba(0,0,0,.92) 0%,rgba(40,12,8,.85) 45%,rgba(140,40,20,.55) 100%),repeating-linear-gradient(135deg,#1a1210 0 2px,#120c0a 2px 9px);min-height:560px;display:flex;align-items:center;border-bottom:1px solid var(--line)}
.hero-card{background:rgba(18,18,18,.85);border-radius:10px;backdrop-filter:blur(4px)}
.btn-primary{background:var(--accent);color:#fff}
.btn-arrow,.pill-dark{display:inline-flex;align-items:center;gap:.7rem;padding-right:.4rem}
.arw{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff;color:#000}
.badge-strip{background:#0a0a0a;border-bottom:1px solid var(--line);padding:1.4rem 0}
.badges{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}
.badges span{color:#6f6f6f;font-size:1.25rem;font-weight:700}
.card{background:#121212;border:1px solid var(--line);border-radius:10px;padding:1.6rem;display:flex;flex-direction:column;gap:.6rem}
.card-ico{color:var(--accent)}
.card p{color:var(--muted);flex:1}
.pill-dark{align-self:flex-start;background:#262626;color:#fff;border-radius:999px;padding:.45rem .45rem .45rem 1.1rem;font-size:.9rem;text-decoration:none}
.pill-dark:hover{background:var(--accent)}
.section-alt{background:#0a0a0a}
.step-num{background:var(--accent);color:#fff}
.cta-band{background:linear-gradient(90deg,#1a0806,#3a0f0a);border-top:1px solid #5a1a12;border-bottom:1px solid #5a1a12}
a{color:inherit}
.prose a,.quick-facts a{color:#ff6f61}
@media(max-width:700px){.badges{justify-content:center}.badges span{font-size:1rem}.hero{min-height:auto}}
.owners-grid{display:grid;grid-template-columns:minmax(0,420px) 1fr;gap:2.5rem;align-items:center}
.owners-photo{width:100%;height:auto;border-radius:10px;border:1px solid var(--line);display:block}
@media(max-width:800px){.owners-grid{grid-template-columns:1fr}}
.btn-icon{display:inline-flex;align-items:center;gap:.5rem}
.btn-icon .ico{flex:none}
.btn-sm{padding:.5rem 1rem;font-size:.9rem}
.msg-btns{display:flex;flex-wrap:wrap;gap:.6rem;margin:1rem 0}
.call-bar{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;background:none;padding:0;box-shadow:none}
.call-bar a{display:flex;align-items:center;justify-content:center;gap:.45rem;padding:.9rem;border-radius:999px;font-family:var(--head);text-transform:uppercase;font-weight:700;text-decoration:none;box-shadow:var(--shadow)}
.call-bar a:first-child{background:var(--accent);color:#fff}
.call-bar a:last-child{background:#fff;color:#000}
.call-bar a:last-child .ico circle{fill:#fff}
@media (min-width:840px){.call-bar{display:none}}
.import-line{margin-top:1rem;color:#ddd;font-size:.95rem}.import-line strong{color:var(--accent)}
.brand-card h3{font-size:1.6rem;color:#fff;border-left:4px solid var(--accent);padding-left:.6rem}
.brand-cards{margin-bottom:1.2rem}
.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
h1,h2,h3,.import-line{overflow-wrap:break-word}
.card,.cards>*{min-width:0}
.hero-grid>*,.quick-facts>div,.quick-facts dd,.footer-cols>*,.contact-grid>*{min-width:0}
.quick-facts dd,.site-footer a,.contact-list a{overflow-wrap:anywhere}
.kaila-photo{margin:.5rem 0 1rem;max-width:420px}
@media (min-width:760px){.kaila-photo{float:right;width:300px;margin:0 0 1rem 1.5rem}}
.prose .checklist{clear:both}
.howwork-grid{display:grid;gap:1.25rem;align-items:center;clear:both;margin:1.5rem 0}
.shop-photo{margin:0;max-width:420px}
@media (min-width:760px){.howwork-grid{grid-template-columns:1fr 320px}}
@media (min-width:760px){.howwork-grid{grid-template-columns:1fr}}
.hero-video{position:relative;overflow:hidden;isolation:isolate;background:#0b0b0b url(/assets/hero-poster.jpg) center/cover no-repeat}
.hero-video>.wrap,.hero-video>*:not(.hero-media){position:relative;z-index:1}
.hero-media{position:absolute;inset:0;z-index:0}
.hero-media video{width:100%;height:100%;object-fit:cover;display:block}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,0,0,.9) 0%,rgba(10,6,5,.8) 45%,rgba(60,18,10,.55) 100%)}
@media (max-width:759px){.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.82),rgba(0,0,0,.88))}}
@media (prefers-reduced-motion:reduce){.hero-media video{display:none}}
.hero-overlay{background:linear-gradient(100deg,rgba(0,0,0,.82) 0%,rgba(10,6,5,.62) 45%,rgba(60,18,10,.38) 100%)}
@media (max-width:759px){.hero-overlay{background:linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,.78))}}
.hero-video h1,.hero-video .lede,.hero-video p{text-shadow:0 2px 12px rgba(0,0,0,.6)}
.mobilecall-photo{margin:0 0 1.25rem}
.mobilecall-photo figcaption{color:var(--muted);font-size:.85rem;margin-top:.5rem}
.video-section{padding-bottom:0}
.night-video{margin:0 auto;max-width:960px}
.night-video video{width:100%;height:auto;display:block;border-radius:10px;border:1px solid var(--line);background:#000}
.night-video figcaption{color:var(--muted);font-size:.9rem;margin-top:.6rem}
.svc-photo{margin:0 auto;max-width:420px}
.svc-photo figcaption{color:var(--muted);font-size:.9rem;margin-top:.6rem;text-align:center}
.price-list{list-style:none;margin:0 auto;margin-inline:auto;padding:.3rem 1.2rem;max-width:760px;background:#121212;border:1px solid var(--line);border-top:3px solid #E53935;border-radius:12px}
.price-row{display:grid;grid-template-columns:1fr auto;column-gap:1rem;align-items:baseline;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.price-row:last-child{border-bottom:0}
.price-label{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.04em;color:#E53935;font-size:.95rem;margin:0}
.price-amt{font-family:Oswald,sans-serif;font-size:1.45rem;font-weight:700;color:#fff;margin:0;line-height:1.1;text-align:right;white-space:nowrap}
.price-note{grid-column:1/-1;color:var(--muted);margin:.25rem 0 0;font-size:.85rem;line-height:1.4}
@media (max-width:420px){.price-list{padding:.2rem 1rem}.price-amt{font-size:1.4rem}}
.dora-media video{width:100%;height:auto;display:block;border-radius:10px;border:1px solid var(--line);background:#000}
.dora-media .dora-still{display:none}
@media (prefers-reduced-motion:reduce){.dora-media video{display:none}.dora-media .dora-still{display:block}}
.svc-photos{display:grid;gap:1.5rem;justify-content:center;grid-template-columns:minmax(0,420px)}
@media (min-width:760px){.svc-photos{grid-template-columns:repeat(auto-fit,minmax(0,420px))}.svc-photos:has(>:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr));max-width:1100px;margin:0 auto}.svc-photos:has(>:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr));max-width:860px}}
.svc-photos .svc-photo{margin:0;max-width:none}
.dog-grid{display:grid;gap:1.25rem;grid-template-columns:1fr;margin:1rem 0 1.5rem}
@media (min-width:640px){.dog-grid{grid-template-columns:1fr 1fr}}
.dog-card{margin:0}
.dogs-wide{margin:1rem 0 1.25rem}.dogs-wide img{width:100%;height:auto;max-width:none;float:none;aspect-ratio:3/2;object-fit:cover;margin:0}.dogs-wide figcaption{text-align:center;color:#bbb;font-size:.9rem;margin-top:.5rem}
.dog-name{font-family:Oswald,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#E53935;margin-top:.5rem;text-align:center}

.svc-photo-wide{max-width:480px;margin:0 auto}.svc-photo-wide img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.choice-grid{display:grid;gap:1.25rem;grid-template-columns:1fr}
@media (min-width:760px){.choice-grid{grid-template-columns:1fr 1fr}}
.choice{display:flex;flex-direction:column;gap:.6rem;padding:1.75rem;border:1px solid var(--line);border-top:4px solid #E53935;border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none;transition:transform .15s,border-color .15s}
.choice:hover{transform:translateY(-3px);border-color:#E53935}
.choice-t{font-family:Oswald,sans-serif;font-size:2rem;text-transform:uppercase;line-height:1.1}
.choice-d{color:var(--muted)}
.choice .btn{align-self:flex-start;margin-top:auto}
.home-h1{max-width:30ch}@media (max-width:759px){.home-h1{font-size:2.3rem}}
.choice-img{display:block;width:100%;margin:0;aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius) var(--radius) 0 0;height:auto}
.choice{overflow:hidden}
.shop-fig{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);margin-bottom:.9rem}
.shop-grid{align-items:start}
.choice picture{display:block;margin:-1.75rem -1.75rem .4rem}
/* homepage-only phone compaction */
@media (max-width:760px){
.hero-video:has(.home-h1){padding:1.6rem 0 1.4rem;min-height:0}
.hero-video:has(.home-h1) .eyebrow{font-size:.68rem;margin-bottom:.4rem}
.home-h1{font-size:1.9rem;margin-bottom:.5rem}
.hero-video:has(.home-h1) .lede{font-size:.95rem;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.hero-video:has(.home-h1) .hero-actions{margin:.9rem 0 0}
main:has(.home-h1)>.section{padding:1.4rem 0}
#choose-h,#trust-h,#areas-h{font-size:1.3rem;margin-bottom:.7rem}
.choice-grid{gap:.7rem}
.choice{display:grid;grid-template-columns:92px 1fr;column-gap:.85rem;row-gap:.15rem;padding:.75rem;align-items:center}
.choice picture{margin:0;grid-row:1 / span 3;align-self:center}
.choice-img{width:92px;height:92px;aspect-ratio:auto;object-fit:cover;border-radius:10px}
.choice .eyebrow{font-size:.62rem;margin:0}
.choice-t{font-size:1.2rem}
.choice-d{font-size:.84rem;line-height:1.35}
.choice .btn{display:none}
section:has(> .owners-grid #trust-h) picture{display:none}
section:has(> .owners-grid #trust-h) .owners-grid{gap:0}
section:has(> .owners-grid #trust-h) .section-intro{font-size:.9rem;margin-bottom:.6rem}
section:has(> .owners-grid #trust-h) .checklist{gap:.35rem}
section:has(> .owners-grid #trust-h) .checklist li{padding:.45rem .7rem .45rem 2rem;font-size:.85rem}
section:has(> .wrap > #areas-h) .section-intro{font-size:.88rem;margin:0}
main:has(.home-h1) .cta-band{display:none}
}
/* homepage-only compact footer on phones */
@media (max-width:760px){
body:has(.home-h1) .site-footer .footer-cols>div:nth-child(2),body:has(.home-h1) .site-footer .footer-cols>div:nth-child(3){display:none}
.site-footer .footer-cols{gap:.8rem}
body:has(.home-h1) .site-footer .footer-cols>div:nth-child(4) .footer-h{display:none}
body:has(.home-h1) .site-footer .footer-cols>div:nth-child(4) li{display:none}
body:has(.home-h1) .site-footer .footer-cols>div:nth-child(4) li:has(a[href="/mobile-mechanic-spokane/"]),body:has(.home-h1) .site-footer .footer-cols>div:nth-child(4) li:has(a[href="/auto-repair-shop-spokane/"]),body:has(.home-h1) .site-footer .footer-cols>div:nth-child(4) li:has(a[href="/contact/"]){display:inline-block;margin-right:1rem}
.site-footer p{margin:.3rem 0}
body:has(.home-h1) .site-footer{padding-bottom:1.5rem}
}
.social-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.8rem}
.social-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.38rem .8rem;border:1px solid rgba(229,57,53,.55);border-radius:999px;background:rgba(0,0,0,.45);color:#f3f6f9;font-size:.8rem;font-weight:600;text-decoration:none;letter-spacing:.02em}
.social-btn svg{color:#E53935}
.social-btn:hover{border-color:#E53935;background:rgba(229,57,53,.15)}
.hero-areas{display:inline-flex;gap:.35rem;align-items:center;margin:.7rem 0 0;color:#c9d1da;font-size:.8rem;line-height:1.35;text-decoration:none}
.hero-areas svg{color:#E53935;flex:0 0 auto}
.hero-areas:hover span{text-decoration:underline}
@media (max-width:760px){.hero-areas{font-size:.76rem;margin-top:.55rem}}
.hero-areas a{color:#E53935;font-weight:600;text-decoration:underline;text-underline-offset:2px;white-space:nowrap}
.hero-areas a:hover{color:#ff6a5f}
.hero-video p.hero-areas{color:#c9d1da;align-items:flex-start}
.hero-areas svg{margin-top:.12rem}
/* desktop-only homepage service-area board (hidden on phones) */
.area-board,.area-board-cta{display:none}
@media (min-width:761px){
.area-board{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.6rem}
.area-group{background:var(--surface);border:1px solid var(--line);border-top:3px solid #E53935;border-radius:var(--radius);padding:1.25rem 1.4rem 1.4rem}
.area-group-h{font-family:var(--head),Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:.95rem;color:#E53935;margin:0 0 .9rem}
.area-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}
.area-tiles a{display:flex;align-items:center;gap:.55rem;padding:.7rem .85rem;border:1px solid var(--line);border-radius:10px;background:rgba(0,0,0,.35);color:#f3f6f9;text-decoration:none;font-weight:600;font-size:.95rem;transition:border-color .15s,background .15s,transform .15s}
.area-tiles a svg{color:#E53935;flex:0 0 auto}
.area-tiles a span{display:flex;flex-direction:column;line-height:1.2}
.area-tiles a small{color:var(--muted);font-weight:500;font-size:.72rem;letter-spacing:.05em}
.area-tiles a:hover{border-color:#E53935;background:rgba(229,57,53,.12);transform:translateY(-2px)}
.area-board-cta{display:block;margin:1.4rem 0 0}
}
/* desktop-only homepage hero layout */
.hh-card{display:none}
@media (min-width:761px){
.hh-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:3rem;align-items:center}
.hh-main .lede{max-width:56ch}
.hh-main .hero-actions{margin:1.3rem 0 0}
.hh-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;margin-top:1.4rem;padding-top:1.1rem;border-top:1px solid rgba(255,255,255,.12);max-width:640px}
.hh-meta .social-row{margin:0}
.hh-meta .hero-areas{margin:0}
.hh-card{display:block;background:rgba(10,10,10,.72);border:1px solid rgba(255,255,255,.1);border-top:3px solid #E53935;border-radius:var(--radius);padding:1.4rem 1.5rem;backdrop-filter:blur(6px);box-shadow:0 18px 50px rgba(0,0,0,.45)}
.hh-card-h{font-family:var(--head),Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#E53935;font-size:.9rem;margin:0 0 .8rem}
.hh-card ul{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.6rem}
.hh-card li{position:relative;padding-left:1.4rem;color:#c9d1da;font-size:.92rem;line-height:1.35}
.hh-card li::before{content:"✓";position:absolute;left:0;color:#E53935;font-weight:800}
.hh-card li strong{color:#f3f6f9}
.hh-card a{color:#E53935;font-weight:600;font-size:.88rem}
}
@media (min-width:761px){.hh-grid .home-h1{font-size:clamp(2.4rem,4.3vw,3.4rem);max-width:none}.hh-meta{max-width:none}.hh-grid{grid-template-columns:minmax(0,1fr) 300px;gap:2.5rem}}
/* desktop-only homepage service-area map (tile board removed) */
.area-map{display:none}
@media (min-width:761px){
.area-map{display:block;margin-top:1.6rem;border:1px solid var(--line);border-top:3px solid #E53935;border-radius:var(--radius);overflow:hidden;background:#0b0b0c;box-shadow:0 18px 50px rgba(0,0,0,.4)}
.area-map svg{display:block;width:100%;height:auto}
.map-grid line{stroke:rgba(255,255,255,.045);stroke-width:1}
.map-lakes path{fill:rgba(90,130,170,.16);stroke:rgba(120,160,200,.25);stroke-width:1}
.map-roads path{fill:none;stroke:rgba(255,255,255,.13);stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.map-state{stroke:rgba(200,200,200,.35);stroke-width:1.5;stroke-dasharray:6 6}
.map-state-l{fill:rgba(255,255,255,.12);font-family:Oswald,sans-serif;font-size:30px;letter-spacing:.35em}
.map-pin text{fill:#f3f6f9;font-family:Inter,system-ui,sans-serif;font-size:17px;font-weight:600;paint-order:stroke;stroke:#0b0b0c;stroke-width:4px}
.map-pin .pin-glow{fill:url(#pinglow);transition:r .2s}
.map-pin .pin-dot{fill:#E53935;stroke:#fff;stroke-width:2}
.map-pin:hover .pin-glow,.map-pin:focus .pin-glow{r:26}
.map-pin:hover text,.map-pin:focus text{fill:#E53935}
.map-pin:focus{outline:none}
}
/* desktop: area line sits under the H1; phone keeps it under the social row */
.hero-areas-top{display:none}
@media (min-width:761px){.hero-video p.hero-areas-top{display:flex;margin:.1rem 0 .9rem}.hh-meta .hero-areas{display:none}}
/* holiday special */
.special-banner{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;border:1px solid rgba(229,57,53,.55);border-left:4px solid #E53935;background:rgba(229,57,53,.10);border-radius:10px;padding:.6rem .9rem;margin:0 0 1.2rem;color:#f1f3f5;font-size:.92rem;line-height:1.4;max-width:46rem}
.special-tag{background:#E53935;color:#fff;font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;padding:.25rem .55rem;border-radius:999px;white-space:nowrap}
.special-fine{color:#aeb6bf;font-size:.82rem}
.special-sec{padding-bottom:0}
.special-line{display:none}
@media (max-width:760px){.special-desk{display:none}.special-line{display:block;margin:.45rem 0 0;font-size:.74rem;color:#ffb3b0;line-height:1.3}.special-dot{color:#E53935}}
/* desktop service-area heading */
.areas-head{display:none}
@media (min-width:761px){
.areas-h-old,.areas-intro-old{display:none}
.areas-head{display:block;text-align:center;max-width:40rem;margin:0 auto}
.areas-head .eyebrow{margin:0 0 .5rem;letter-spacing:.14em}
.areas-head-h{font-family:var(--head);font-size:2.6rem;line-height:1.05;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:#fff;margin:0}
.areas-head-h::after{content:"";display:block;width:56px;height:3px;background:#E53935;border-radius:2px;margin:.9rem auto 0}
.areas-head-sub{color:#aeb6bf;font-size:1.02rem;margin:.9rem 0 0}
.areas-head + .areas-h-old + .areas-intro-old + .area-map{margin-top:2rem}
}
/* desktop: locations button overlays the map */
@media (min-width:761px){
.area-map-box{position:relative}
.area-map-box .area-board-cta{position:absolute;top:1.1rem;right:1.1rem;margin:0;z-index:2}
.area-map-box .area-board-cta .btn{background:rgba(12,12,14,.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(229,57,53,.6);color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.45);padding:.6rem 1rem;font-size:.85rem}
.area-map-box .area-board-cta .btn:hover{background:#E53935;border-color:#E53935}
}
/* special under homepage pricing box (desktop) */
.special-side{margin:1rem 0 0;max-width:none;flex-direction:column;align-items:flex-start;gap:.45rem;background:rgba(20,8,8,.78);backdrop-filter:blur(6px);font-size:.86rem;box-shadow:0 12px 34px rgba(0,0,0,.4)}
.special-side .special-fine{display:block;margin-top:.3rem;font-size:.76rem}
/* redesigned homepage pricing card (desktop) */
@media (min-width:761px){
.hh-card{padding:1.3rem 1.4rem 1.2rem}
.pc-head{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:.75rem;border-bottom:1px solid rgba(255,255,255,.1)}
.pc-head .hh-card-h{margin:0;font-size:1rem;color:#fff}
.pc-sub{color:#E53935;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.pc-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.pc-l{margin:0;font-family:var(--head),Oswald,sans-serif;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;color:#f3f6f9}
.pc-n{margin:.2rem 0 0;font-size:.74rem;line-height:1.35;color:#9aa3ad}
.pc-p{margin:0;font-family:var(--head),Oswald,sans-serif;font-size:1.9rem;font-weight:700;line-height:1;color:#E53935;white-space:nowrap}
.pc-p small{font-size:.8rem;color:#c9d1da;font-weight:500;margin-left:.1rem}
.hh-card ul.pc-checks{margin:.9rem 0 1rem;gap:.5rem}
.hh-card ul.pc-checks li{font-size:.84rem}
.hh-card a.pc-link{display:inline-block;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;text-decoration:none;font-family:var(--head),Oswald,sans-serif}
.hh-card a.pc-link:hover{color:#ff6a5f}
.special-side{border-radius:var(--radius)}
}
/* owner card (town + service pages) */
.owner-card{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:2.2rem;align-items:center;background:linear-gradient(135deg,#141416,#0b0b0c);border:1px solid rgba(255,255,255,.08);border-top:3px solid #E53935;border-radius:var(--radius);padding:1.8rem;box-shadow:0 18px 50px rgba(0,0,0,.4)}
.owner-pics{position:relative}
.owner-main{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:12px}
.owner-pup{position:absolute;right:-14px;bottom:-14px;width:38%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:12px;border:3px solid #0b0b0c;box-shadow:0 10px 26px rgba(0,0,0,.5)}
.owner-body h2{margin:.2rem 0 .6rem}
.owner-body p{color:#c9d1da;max-width:34rem}
.owner-body .hero-actions{margin-top:1.1rem}
.owner-more{margin:.9rem 0 0;font-size:.9rem}
.owner-more a{color:#E53935;font-weight:600}
@media (max-width:760px){.owner-card{grid-template-columns:1fr;gap:1.4rem;padding:1.2rem}.owner-pics{max-width:260px;margin:0 auto}.owner-body{text-align:center}.owner-body p{margin-left:auto;margin-right:auto}.owner-body .hero-actions{justify-content:center}}
/* footer folds: phone only */
.ffold{display:none}
@media (max-width:760px){
.site-footer .fdesk,.footer-cols .fcol-fold .fdesk{display:none}
.ffold{display:block;border-top:1px solid rgba(255,255,255,.1)}
.fcol-fold:last-of-type .ffold{border-bottom:1px solid rgba(255,255,255,.1)}
.ffold summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;padding:.95rem 0;font-family:var(--head),Oswald,sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#fff;font-size:.95rem;min-height:44px}
.ffold summary::-webkit-details-marker{display:none}
.ffold summary::after{content:"+";color:#E53935;font-size:1.3rem;line-height:1}
.ffold[open] summary::after{content:"\2212"}
.ffold ul{padding-bottom:.8rem}
}

.mk-p{display:none}@media (max-width:760px){.mk-d{display:none}.mk-p{display:inline}}
.special-line{grid-template-columns:auto 1fr;column-gap:.35em}.special-line .special-sub{display:block;font-size:.66rem;color:#bdbdbd;margin-top:.1rem}@media (max-width:760px){.special-line{display:grid}}
.kaila-work{max-width:420px;margin:1rem auto 1.25rem}.kaila-work img{width:100%;height:auto;display:block}.kaila-work figcaption{text-align:center;color:#bbb;font-size:.9rem;margin-top:.5rem}
.truck-fig{margin:.5rem 0 1.25rem}.truck-fig img{width:100%;height:auto;display:block;max-width:none;float:none;margin:0}
.truck-media{display:grid;gap:1rem;margin:.5rem 0 1.25rem;align-items:center}.truck-media .truck-fig{margin:0}.clip-fig{margin:0 auto;max-width:360px;width:100%}.clip-fig video{width:100%;height:auto;display:block;border-radius:12px;background:#111;aspect-ratio:9/16}@media (min-width:761px){.truck-media{grid-template-columns:8fr 3fr}.truck-media .clip-fig{max-width:none}.truck-media>*{min-width:0}}
/* phone footer: always one column (auto-fit minmax(190px) made 2 cols at >=~425px) */
@media (max-width:760px){
.site-footer .footer-cols{grid-template-columns:1fr !important;gap:0}
.site-footer .footer-cols>div:first-child{margin-bottom:1rem}
.site-footer .footer-cols>div:last-child{margin-top:1rem}
.site-footer a[href^="mailto:"]{white-space:nowrap;overflow-wrap:normal;word-break:normal;font-size:clamp(.82rem,4vw,1rem)}
.site-footer .fcol-fold .ffold{margin:0}
.site-footer{padding-bottom:1.25rem}
}
/* About: owner rows */
.op-list{display:grid;gap:1.5rem;margin:1.5rem 0 2rem;clear:both}
.op-row{display:grid;gap:1.1rem;padding:1.4rem;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:linear-gradient(180deg,#121212,#0b0b0b)}
.op-role{margin:0 0 .3rem;color:#E53935;font-family:var(--head),Oswald,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:600}
.op-name{margin:0 0 .8rem;font-size:2rem;line-height:1.05;padding-bottom:.55rem;border-bottom:3px solid #E53935;display:inline-block}
.op-text p:not(.op-role){margin:0;color:#cfcfcf;line-height:1.7}
.op-pics{display:grid;gap:1rem}
.op-fig{margin:0}
.op-fig img{width:100%;height:auto;display:block;border-radius:12px;max-width:none;float:none;margin:0}
@media (min-width:761px){
.op-row{grid-template-columns:minmax(0,1fr) 340px;gap:2rem;align-items:start;padding:2rem}
.op-text{padding-top:.25rem}
}
@media (min-width:761px){.op-text{position:sticky;top:90px}}

/* pricing page centering */
.price-wrap{width:min(760px,calc(100% - 2rem))}
.price-wrap .special-banner{max-width:760px;margin-inline:auto}
.price-hero{text-align:center}
.price-hero h1,.price-hero .lede{margin-inline:auto}
.price-hero .hero-actions{justify-content:center}

.price-sec{border-bottom:0;padding-bottom:1.6rem}
.price-sec2{border-top:0;padding-top:1.6rem}

/* area pages: body matches site .wrap width */
.prose.area-body{max-width:none}
.area-body > p:not(.callout){max-width:100ch}

/* sitewide match (not homepage, not pricing panel): prose bodies use full .wrap width, tighter section rhythm */
main:not(:has(.home-h1)):not(:has(.price-hero)) .wrap.prose{max-width:none}
main:not(:has(.home-h1)):not(:has(.price-hero)) .wrap.prose > p:not(.callout){max-width:100ch}
main:not(:has(.home-h1)) .section{padding:2.25rem 0}
.area-body .area-faq-h{margin-top:2rem}
.wrap.prose .dogs-wide,.wrap.prose .dog-grid{max-width:760px}
/* service-page photo band: tight under hero and above next section */
main:not(:has(.home-h1)) .section.video-section{padding:.4rem 0 0}
main:not(:has(.home-h1)) .section.video-section + .section{padding-top:1.75rem}
