/* Main buttons: navy on sunshine yellow, easier to read than dark text on orange (2026-10-11).
   Links use the site's original style (the navy/orange link trial was reverted the same day). */
.btn--go{background:var(--sunshine);border-color:var(--sunshine);color:var(--moxie-navy)}
.btn--go:hover{background:#e8b334;border-color:#e8b334;color:var(--moxie-navy)}
/* Schedule buttons stand out (2026-10-11): calendar icon everywhere, yellow in the header and the phone bar,
   and a filled navy button next to Call / Send a text. */
a[href="/schedule/"].btn::before,.sig__book::before{content:"";flex:none;width:1.15em;height:1.15em;margin-right:.45em;background:currentColor;-webkit-mask:var(--cal) center/contain no-repeat;mask:var(--cal) center/contain no-repeat}
:root{--cal:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2.5'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4M8.5 15l2.2 2.2L15.5 13'/%3E%3C/svg%3E")}
.hdr a[href="/schedule/"].btn--primary{background:var(--sunshine);border-color:var(--sunshine);color:var(--moxie-navy)}
.hdr a[href="/schedule/"].btn--primary:hover{background:#e8b334;border-color:#e8b334;color:var(--moxie-navy)}
.sticky__btn--book[data-astro-cid-3ef6ksr2]{background:var(--sunshine);color:var(--moxie-navy)}
.sticky__btn--book[data-astro-cid-3ef6ksr2]:hover{background:#e8b334}
.sig__book[data-astro-cid-sb7sse5a]{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.25rem;border:2px solid var(--moxie-navy);border-radius:var(--radius);background:var(--moxie-navy);color:var(--white);font-family:var(--font-display);font-size:1rem;font-weight:700;line-height:1.1;text-decoration:none}
.sig__book[data-astro-cid-sb7sse5a]:hover{background:#0f2438;border-color:#0f2438;color:var(--white)}
.sig--navy[data-astro-cid-sb7sse5a] .sig__book[data-astro-cid-sb7sse5a]{background:var(--white);border-color:var(--white);color:var(--moxie-navy)}
.sig__book[data-astro-cid-sb7sse5a]{gap:.4em}.sig__book::before{margin-right:0}
/* Schedule buttons in Tekmetric orange #f0572a (2026-10-11), white text. Text is set a little larger and bold
   so white on this orange meets the readability standard for large text (3.4:1). */
.hdr a[href="/schedule/"].btn--primary,.sig__book[data-astro-cid-sb7sse5a],.sig--navy[data-astro-cid-sb7sse5a] .sig__book[data-astro-cid-sb7sse5a],a[href="/schedule/"].ftr__book{background:#f0572a;border-color:#f0572a;color:var(--white);font-size:1.1875rem;font-weight:800}
.hdr a[href="/schedule/"].btn--primary:hover,.sig__book[data-astro-cid-sb7sse5a]:hover,.sig--navy[data-astro-cid-sb7sse5a] .sig__book[data-astro-cid-sb7sse5a]:hover,a[href="/schedule/"].ftr__book:hover{background:#d9461c;border-color:#d9461c;color:var(--white)}
/* Top-of-page Schedule button gets a gentle attention pulse: an orange ring ripples out and the calendar
   icon gives a small hop every few seconds. Stops on hover and for visitors who turn off motion. */
@keyframes mx-ping{0%,62%{box-shadow:0 0 0 0 #f0572a99}80%{box-shadow:0 0 0 12px #f0572a00}100%{box-shadow:0 0 0 0 #f0572a00}}
@keyframes mx-hop{0%,64%,100%{transform:none}70%{transform:translateY(-3px) rotate(-8deg)}76%{transform:translateY(0) rotate(4deg)}82%{transform:none}}
.hdr a[href="/schedule/"].btn--primary,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book{animation:mx-ping 3.2s ease-out infinite}
.hdr a[href="/schedule/"].btn--primary::before,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book::before{animation:mx-hop 3.2s ease-in-out infinite}
.hdr a[href="/schedule/"].btn--primary:hover,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book:hover,.hdr a[href="/schedule/"].btn--primary:hover::before,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book:hover::before{animation:none}
@media (prefers-reduced-motion:reduce){.hdr a[href="/schedule/"].btn--primary,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book,.hdr a[href="/schedule/"].btn--primary::before,:is(.hero__sig,.svc__sig,.hub__sig) .sig__book::before{animation:none}}
/* The phone bar keeps its original navy Schedule tab (orange there looked out of place). */
.sticky__btn--book[data-astro-cid-3ef6ksr2],.sticky__btn--book[data-astro-cid-3ef6ksr2]:hover{background:transparent;color:var(--white)}
/* Footer town links were picking up the default blue link color, which is too dark on navy. */
.ftr__towns[data-astro-cid-sz7xmlte] a{color:var(--white);font-weight:600;text-decoration:underline;text-decoration-color:#ffffff66;text-underline-offset:.2em}
.ftr__towns[data-astro-cid-sz7xmlte] a:hover{text-decoration-color:var(--white)}
a[href="/schedule/"].ftr__book{white-space:nowrap;width:max-content;font-size:1.0625rem;padding-inline:1.1rem}
/* Privacy Policy and SMS Terms pages, and their footer links (2026-10-11). */
.legal{padding:2rem 0 3rem}
.legal__inner{max-width:46rem}
.legal h1{margin:0 0 .5rem}
.legal h2{font-size:1.35rem;margin:2rem 0 .5rem}
.legal p,.legal li{line-height:1.6}
.legal ul{padding-left:1.25rem}
.legal li{margin:.3rem 0}
.legal__date{color:var(--ink-soft);font-size:.95rem}
.ftr__legal{margin:0}
.ftr__legal a{color:var(--on-navy);text-decoration:underline;text-decoration-color:#ffffff55;text-underline-offset:.2em}
.ftr__legal a:hover{color:var(--white);text-decoration-color:var(--white)}
.sms-consent{font-size:.8125rem;line-height:1.45;color:var(--ink-soft);margin:.75rem 0 0;max-width:40rem}
.band--ink .sms-consent,.sig--navy .sms-consent{color:var(--on-navy-soft)}
/* Design pass (2026-10-11). */
/* Fewer button colors: the bright-blue buttons become navy. Call stays yellow and Schedule stays orange. */
.btn--primary{background:var(--moxie-navy);border-color:var(--moxie-navy);color:var(--white)}
.btn--primary:hover{background:#0f2438;border-color:#0f2438;color:var(--white)}
/* The floating "Text us" bubble only works on phones, so it is hidden where there is a mouse. */
@media (hover:hover) and (pointer:fine){.float-text[data-astro-cid-gvdqv5o6]{display:none}}
/* "What's your car doing?": the Read link sits inside its card. */
.ask__item[data-astro-cid-j7pv25f6]{gap:0;padding:0;margin:.4rem 0;background:var(--white);border-radius:14px;box-shadow:0 2px 0 var(--line),0 10px 24px -20px #1b3a5780}
.ask__list[data-astro-cid-j7pv25f6]{row-gap:.6rem}
.pick[data-astro-cid-j7pv25f6]{box-shadow:none;background:transparent}
.ask__read[data-astro-cid-j7pv25f6]{margin:0 0 .5rem calc(1.1rem + 48px + 1rem);padding-block:.25rem .5rem}
.ask__item[data-astro-cid-j7pv25f6]:has(.pick[aria-pressed=true]){outline:2px solid var(--moxie-blue);outline-offset:-2px}
/* Reviews shown on the page until the live Google reviews are switched on. */
.mxrev{display:grid;gap:1rem;margin:0 0 1.25rem}
.mxrev__sum{display:flex;align-items:center;gap:.6rem;margin:0;font-family:var(--font-display);font-weight:700;color:var(--moxie-navy)}
.mxrev__score{font-size:2rem;line-height:1}
.mxrev__stars{color:#f5a623;letter-spacing:.05em;font-size:1.25rem}
.mxrev__count{font-weight:600;color:var(--ink-soft);font-size:.95rem}
.mxrev__list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}
@media(min-width:760px){.mxrev__list{grid-template-columns:1fr 1fr}}
.mxrev__item{background:var(--white);border-radius:14px;padding:1rem 1.15rem;box-shadow:0 2px 0 var(--line)}
.mxrev__item blockquote{margin:.35rem 0 .5rem;font-size:1.05rem;line-height:1.5;color:var(--ink)}
.mxrev__who{margin:0;font-weight:700;color:var(--moxie-navy);font-size:.92rem}
.mxrev__who span{font-weight:500;color:var(--ink-soft)}
.grev:has(.grev__summary:not([hidden])) .mxrev{display:none}
