/* Homepage-only companion to the Schedule Repair visual language. */
body.home .groovy-divider-top { display:none; }
.sr-home { --srh-ink:#16263d; --srh-muted:#53647a; --srh-accent:#b43d44; --srh-line:#dce3ec; --srh-soft:#f5f7fb; color:var(--srh-ink); background:#fff; }
.sr-home *, .sr-home *::before, .sr-home *::after { box-sizing:border-box; }
.sr-home .srh-shell { width:100%; max-width:1168px; padding-inline:24px; margin-inline:auto; }
.sr-home section { background:transparent; }
.sr-home h1, .sr-home h2, .sr-home h3 { color:var(--srh-ink); font-weight:750; letter-spacing:-.025em; text-transform:none; margin:0; }
.sr-home h2 { font-size:clamp(1.9rem,3vw,2.7rem); line-height:1.15; }
.sr-home h3 { font-size:1.2rem; line-height:1.3; }
.sr-home p { color:var(--srh-muted); font-size:1rem; line-height:1.7; margin:0 0 18px; }
.sr-home a { color:#8f3038; text-underline-offset:4px; }
.sr-home a:hover { color:#70242b; }
.sr-home a:focus-visible, .sr-home summary:focus-visible { outline:3px solid #376db2; outline-offset:5px; border-radius:5px; }
.sr-home .srh-eyebrow { color:var(--srh-accent); font-size:.76rem; font-weight:750; line-height:1.6; letter-spacing:.1em; text-transform:uppercase; margin:0 0 14px; }
.sr-home .srh-hero { background:var(--srh-soft); padding:64px 0 0; }
.sr-home .srh-hero-grid { display:grid; grid-template-columns:1.12fr .88fr; gap:64px; align-items:center; }
.sr-home h1 { font-size:clamp(2.4rem,4.1vw,3.55rem); line-height:1.08; letter-spacing:-.04em; margin:0 0 22px; }
.sr-home h1 span { display:block; color:var(--srh-accent); margin-top:8px; }
.sr-home .srh-lead { font-size:1.125rem; line-height:1.65; max-width:49ch; }
.sr-home .srh-trust { display:flex; flex-wrap:wrap; list-style:none; gap:8px 18px; padding:0; margin:22px 0; font-size:.86rem; font-weight:650; }
.sr-home .srh-trust li::before { content:'✓'; color:#24785d; margin-right:6px; }
.sr-home .srh-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; }
.sr-home .srh-button { display:inline-flex; align-items:center; justify-content:center; gap:12px; min-height:50px; border:1px solid var(--srh-accent); border-radius:10px; padding:13px 19px; background:var(--srh-accent); color:#fff; text-decoration:none; font-size:.96rem; font-weight:700; line-height:1.4; transition:background-color .15s, border-color .15s; text-align:center; }
.sr-home .srh-button:hover { background:#942f35; border-color:#942f35; color:#fff; }
.sr-home .srh-button-secondary { background:#fff; border-color:#c9d3df; color:var(--srh-ink); }
.sr-home .srh-button-secondary:hover { background:#edf1f7; border-color:#a9b8ca; color:var(--srh-ink); }
.sr-home .srh-call { margin:18px 0 0; font-size:.84rem; }
.sr-home .srh-call a { font-weight:650; white-space:nowrap; }
.sr-home .srh-call span { margin-inline:5px; }
.sr-home .srh-offer { margin-top:26px; border-left:3px solid var(--srh-accent); padding:2px 0 2px 15px; }
.sr-home .srh-offer strong { display:block; font-size:.96rem; line-height:1.5; }
.sr-home .srh-offer p { font-size:.78rem; line-height:1.6; max-width:53ch; margin:4px 0 0; }
.sr-home .srh-hero-card { min-width:0; background:#fff; border:1px solid #e0e6ef; border-radius:20px; overflow:hidden; box-shadow:0 16px 48px #17283d0a; }
.sr-home .srh-repair-image { display:block; width:100%; height:260px; object-fit:cover; }
.sr-home .srh-hero-card-body { padding:28px; }
.sr-home .srh-hero-card h2 { font-size:1.6rem; line-height:1.2; margin-bottom:12px; }
.sr-home .srh-hero-card p:not(.srh-eyebrow) { font-size:.94rem; }
.sr-home .srh-hero-card .srh-eyebrow { font-size:.66rem; margin-bottom:12px; }
.sr-home .srh-text-link { display:inline-flex; align-items:center; gap:10px; min-height:44px; font-weight:650; font-size:.94rem; }
.sr-home .srh-visit-strip { border-top:1px solid var(--srh-line); display:flex; align-items:center; justify-content:space-between; gap:24px; margin-top:48px; padding:24px 0; }
.sr-home .srh-visit-strip p { margin:0; font-size:.86rem; }
.sr-home .srh-visit-strip strong, .sr-home .srh-visit-strip span { display:block; }
.sr-home .srh-visit-strip strong { color:var(--srh-ink); font-size:.93rem; }
.sr-home .srh-section { padding:76px 0; }
.sr-home .srh-soft { background:var(--srh-soft); }
.sr-home .srh-section-head { display:flex; justify-content:space-between; align-items:end; gap:36px; margin-bottom:34px; }
.sr-home .srh-section-head > p { max-width:39ch; margin:0; }
.sr-home .srh-services { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.sr-home .srh-service { display:flex; flex-direction:column; text-decoration:none; padding:28px; border:1px solid var(--srh-line); border-radius:16px; background:#fff; transition:border-color .15s, background-color .15s; }
.sr-home .srh-service:hover { background:#fafbfe; border-color:#9dabbf; }
.sr-home .srh-service > i { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:12px; background:#f9edef; font-size:1.5rem; color:var(--srh-accent); margin-bottom:22px; }
.sr-home .srh-service h3 { margin-bottom:12px; }
.sr-home .srh-service p { font-size:.94rem; margin-bottom:20px; }
.sr-home .srh-service-link { margin-top:auto; font-size:.86rem; font-weight:700; line-height:1.6; }
.sr-home .srh-service-link > span { margin-left:5px; }
.sr-home .srh-specialties { text-align:center; font-size:.88rem; margin:26px 0 0; }
.sr-home .srh-specialties a { display:inline-block; padding-block:8px; }
.sr-home .srh-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px; padding:0; margin:0; list-style:none; }
.sr-home .srh-step-number { display:block; color:#8f3038; font-size:.85rem; font-weight:750; letter-spacing:.08em; margin-bottom:18px; }
.sr-home .srh-steps h3 { margin-bottom:12px; }
.sr-home .srh-steps p { font-size:.94rem; margin:0; }
.sr-home .srh-warranty { display:flex; gap:18px; align-items:center; border-top:1px solid var(--srh-line); margin-top:34px; padding-top:26px; }
.sr-home .srh-warranty > i { flex-shrink:0; color:#24785d; font-size:1.8rem; }
.sr-home .srh-warranty p { font-size:.9rem; margin:0; }
.sr-home .srh-warranty strong { display:block; color:var(--srh-ink); }
.sr-home .srh-reviews { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.sr-home .srh-review { padding:28px; margin:0; background:#fff; border:1px solid var(--srh-line); border-radius:16px; display:flex; flex-direction:column; }
.sr-home .srh-review::before, .sr-home .srh-review::after { content:none; }
.sr-home .srh-stars { color:#95640c; font-size:1rem; letter-spacing:3px; margin-bottom:18px; }
.sr-home .srh-review p { font-size:.97rem; color:var(--srh-ink); }
.sr-home .srh-review footer { margin-top:auto; padding-top:8px; }
.sr-home .srh-review footer a { font-weight:700; font-size:.86rem; }
.sr-home .srh-review footer > span { display:block; color:var(--srh-muted); font-size:.75rem; margin-top:5px; }
.sr-home .srh-location-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:64px; align-items:center; }
.sr-home .srh-store-image { display:block; width:100%; height:430px; object-fit:cover; border-radius:18px; }
.sr-home .srh-location-grid h2 { margin-bottom:22px; }
.sr-home .srh-location-grid p { font-size:.96rem; }
.sr-home .srh-area-links { display:flex; gap:20px; margin-top:18px; flex-wrap:wrap; }
.sr-home .srh-area-links a { padding-block:10px; font-size:.88rem; font-weight:650; }
.sr-home .srh-faq-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:72px; }
.sr-home .srh-faq-grid h2 { margin-bottom:20px; }
.sr-home .srh-faqs details { border-bottom:1px solid var(--srh-line); }
.sr-home .srh-faqs details:first-child { border-top:1px solid var(--srh-line); }
.sr-home .srh-faqs summary { display:flex; align-items:center; justify-content:space-between; gap:20px; list-style:none; padding:23px 0; font-size:1rem; line-height:1.5; font-weight:650; cursor:pointer; }
.sr-home .srh-faqs summary::-webkit-details-marker { display:none; }
.sr-home .srh-faqs summary::after { content:'+'; font-size:1.3rem; font-weight:400; color:var(--srh-accent); flex-shrink:0; }
.sr-home .srh-faqs details[open] summary::after { content:'−'; }
.sr-home .srh-faqs details > div { padding-bottom:22px; }
.sr-home .srh-faqs details p { font-size:.94rem; margin:0; }
.sr-home .srh-shop-strip { background:var(--srh-soft); padding:36px 0; }
.sr-home .srh-shop-strip > div { display:flex; justify-content:space-between; align-items:center; gap:24px; }
.sr-home .srh-shop-strip h2 { font-size:1.55rem; margin-bottom:10px; }
.sr-home .srh-shop-strip p { margin-bottom:0; font-size:.94rem; }
.sr-home .srh-shop-strip .srh-eyebrow { font-size:.7rem; margin-bottom:10px; }
.sr-home .srh-shop-strip .srh-button { flex-shrink:0; }
.sr-home .srh-final { background:var(--srh-ink); padding:64px 0; text-align:center; }
.sr-home .srh-final h2 { color:#fff; margin-bottom:16px; }
.sr-home .srh-final p { color:#d2dcea; }
.sr-home .srh-final .srh-eyebrow { color:#f1b9bc; }
.sr-home .srh-final .srh-actions { justify-content:center; }
.sr-home .srh-final small { color:#b8c6d7; display:block; margin-top:18px; font-size:.8rem; }
.sr-home .srh-button-light { border-color:#8699b1; color:#fff; background:transparent; }
.sr-home .srh-button-light:hover { border-color:#fff; background:#223954; }
@media (max-width:991.98px) {
 .sr-home .srh-hero-grid { gap:28px; grid-template-columns:1.1fr .9fr; }
 .sr-home h1 { font-size:2.65rem; }
 .sr-home .srh-hero-card-body { padding:22px; }
 .sr-home .srh-services { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .sr-home .srh-section-head > p { max-width:30ch; }
 .sr-home .srh-location-grid { gap:32px; }
 .sr-home .srh-review { padding:22px; }
 .sr-home .srh-faq-grid { gap:40px; }
}
@media (max-width:767.98px) {
 body.home header a[href="tel:6016998246"] { display:none !important; }
 .sr-home .srh-shell { padding-inline:20px; }
 .sr-home .srh-hero { padding-top:32px; }
 .sr-home .srh-hero-grid, .sr-home .srh-location-grid, .sr-home .srh-faq-grid { grid-template-columns:1fr; gap:30px; }
 .sr-home h1 { font-size:clamp(2.1rem,7.8vw,3rem); margin-bottom:18px; }
 .sr-home .srh-lead { font-size:1rem; }
 .sr-home .srh-eyebrow { font-size:.68rem; margin-bottom:12px; }
 .sr-home .srh-trust { font-size:.79rem; gap:8px 14px; margin:18px 0; }
 .sr-home .srh-actions { align-items:stretch; }
 .sr-home .srh-hero-copy .srh-button { width:100%; }
 .sr-home .srh-call { line-height:1.9; }
 .sr-home .srh-offer { margin-top:22px; }
 .sr-home .srh-hero-card { border-radius:15px; }
 .sr-home .srh-repair-image { height:200px; }
 .sr-home .srh-hero-card h2 { font-size:1.4rem; }
 .sr-home .srh-visit-strip { margin-top:28px; padding:22px 0; flex-wrap:wrap; gap:16px 30px; }
 .sr-home .srh-section { padding:48px 0; }
 .sr-home .srh-section-head { display:block; margin-bottom:26px; }
 .sr-home .srh-section-head > p { max-width:none; margin-top:16px; }
 .sr-home .srh-section-head > a { margin-top:12px; }
 .sr-home h2 { font-size:1.95rem; }
 .sr-home .srh-services { gap:14px; }
 .sr-home .srh-service { padding:22px; }
 .sr-home .srh-steps, .sr-home .srh-reviews { grid-template-columns:1fr; gap:20px; }
 .sr-home .srh-step-number { margin-bottom:10px; }
 .sr-home .srh-steps li + li { padding-top:20px; border-top:1px solid var(--srh-line); }
 .sr-home .srh-warranty { align-items:start; }
 .sr-home .srh-store-image { height:260px; }
 .sr-home .srh-faq-grid { gap:12px; }
 .sr-home .srh-shop-strip > div { align-items:start; flex-direction:column; }
 .sr-home .srh-final { padding:46px 0; }
 .sr-home .srh-final .srh-button { width:100%; }
}
@media (max-width:479.98px) {
 body.home .footer-socials { display:flex; flex-wrap:wrap; gap:4px; }
 body.home .footer-socials a { display:inline-flex; align-items:center; justify-content:center; min-width:36px; min-height:44px; }
 .sr-home .srh-services { grid-template-columns:1fr; }
 .sr-home .srh-service { position:relative; padding:24px 22px; }
 .sr-home .srh-service > i { margin-bottom:16px; }
 .sr-home .srh-visit-strip { display:block; }
 .sr-home .srh-visit-strip p + p { margin-top:12px; }
 .sr-home .srh-visit-strip > a { margin-top:8px; }
}
@media (prefers-reduced-motion:reduce) { .sr-home a { transition:none; } }
