/* Motorist Ally | Trust & clarity palette | 8 November 2026
   Colours: navy for confidence, blue for actions, teal for helpful advice,
   warm amber for discreet emphasis. Carefully layered on existing site CSS.
   No form scripts, routes, prices, or content changed. */
:root {
  --brand-navy: #15324f;
  --brand-navy-deep: #0e263f;
  --brand-blue: #1766a3;
  --brand-blue-hover: #104e80;
  --brand-teal: #006e67;
  --brand-teal-light: #e8f6f2;
  --brand-sky: #edf5fc;
  --brand-cream: #fff8ed;
  --brand-gold: #e1b56c;
  --brand-border: #d6e5ee;
  --brand-text-muted: #4e6375;
  --ink: #18324b;
  --ink2: #4c6575;
  --deep: #123453;
  --deep2: #1b4568;
  --teal: #006e67;
  --sky: #dcedf8;
  --light: #f6f9fc;
  --soft: #edf5fc;
  --line: #d9e6ee;
  --orange: var(--brand-gold);
  --shadow: 0 22px 60px rgba(17,51,78,.10);
}
body { color: var(--brand-navy); background: #fff; }
::selection { background:#bfe3ed; color:#092d49; }
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 3px solid var(--brand-blue);
  outline-offset: 3px;
}
/* Navigation + brand cues */
.topline { background:var(--brand-navy-deep); color:#edf7fb; }
.topline-dot { background:var(--brand-gold); box-shadow:0 0 0 4px rgba(225,181,108,.14); }
.topline-right { color:#c6deea; }
.site-header { border-bottom-color:var(--brand-border); box-shadow:0 5px 22px rgba(14,38,63,.055); }
.nav>a:not(.button) { color:var(--brand-navy); }
.nav>a:not(.button):hover,
.nav a[aria-current="page"]:not(.button) { color:var(--brand-blue); }
.nav a[aria-current="page"]:not(.button) { text-decoration-color:var(--brand-teal); }
.button-nav, .button-primary { background:var(--brand-blue); color:#fff; box-shadow:0 10px 25px rgba(23,102,163,.18); }
.button-nav:hover, .button-primary:hover { background:var(--brand-blue-hover); }
.button-light { color:var(--brand-navy); }
.text-link { color:var(--brand-blue); border-bottom-color:#9dc7e2; }
.text-link:hover { color:var(--brand-blue-hover); }
.eyebrow { color:var(--brand-teal); }
.eyebrow-line { background:var(--brand-gold); }
/* Hero and surrounding trustworthy light blue + teal */
.hero { background:radial-gradient(ellipse at 85% 34%, #d9eee9 0%, #e8f3f8 42%, #f4f8fd 75%, #ffffff 100%); }
.hero h1 em { color:var(--brand-blue); }
.hero-lead, .hero-notes { color:var(--brand-text-muted); }
.hero-halo.halo-one { background:#cfe9ed; }
.hero-halo.halo-two { background:rgba(151,213,216,.41); }
.estimate-card { border:1px solid #d8e9f1; box-shadow:0 20px 58px rgba(15,54,82,.16); }
.estimate-chip { background:var(--brand-teal-light); color:#09615a; }
.estimate-icon { background:#e5f2f8; }
.floating-note-icon { background:#f9e5c1; color:#67420b; }
.art-caption { color:#285d77; }
/* Proof strip has a bit of rhythm */
.proof-strip { background:#f6faff; border-bottom:1px solid var(--brand-border); }
.proof-number, .step-count { color:var(--brand-blue); }
.proof-number span { color:#ac7224; }
.proof-icon svg { stroke:var(--brand-teal); }
.proof-item p { color:#425d72; }
/* Services with individual but harmonious colour identities */
.services-section { background:#fff; }
.section-intro>p, .service-card p { color:var(--brand-text-muted); }
.muted-heading { color:#547c94; }
.service-card { position:relative; overflow:hidden; background:#f0f7fc; border-color:#d8e8f4; box-shadow:0 8px 25px rgba(25,70,110,.035); }
.service-card::before { content:""; position:absolute; top:0; left:0; right:0; height:5px; background:var(--brand-blue); }
.service-card:nth-child(2) { background:#edf8f4; border-color:#cee8de; }
.service-card:nth-child(2)::before { background:var(--brand-teal); }
.service-card:nth-child(3) { background:var(--brand-cream); border-color:#f1e4cc; }
.service-card:nth-child(3)::before { background:#b58131; }
.service-card:hover { border-color:#91bbd4; }
.service-card>a { color:var(--brand-blue); border-top-color:rgba(30,90,119,.15); }
.service-card:nth-child(2)>a { color:#006e67; }
.card-index { color:#567c93; }
/* Colour bands through homepage */
.repair-teaser { background:linear-gradient(110deg,#f5faff 0%,#eaf5fb 100%); border-top-color:#dcebf4; }
.repair-teaser h2 em { color:var(--brand-blue); }
.repair-teaser-prices { background:#fff; border-color:#cddfec; box-shadow:0 16px 45px rgba(23,72,104,.08); }
.repair-teaser-prices>div:nth-child(2) { background:#edf8f4; }
.repair-teaser-prices>div+div { border-top-color:#d6e5ed; }
.repair-teaser-prices span { color:var(--brand-teal); }
.repair-teaser-prices strong { color:var(--brand-navy); }
.used-car-teaser { background:linear-gradient(110deg,#e7f5f1 0%,#f4f9fc 100%); border-top-color:#d2e9e6; }
.used-car-teaser h2 em { color:var(--brand-teal); }
.used-car-teaser-stats { border:1px solid #cbe3df; box-shadow:0 15px 40px rgba(24,79,84,.08); }
.used-car-teaser-stats strong { color:var(--brand-blue); }
.statement { background:linear-gradient(110deg,#0d2945 0%,#153f60 80%,#15475a 100%); }
.statement h2 span { color:#a7e0df; }
.statement p { color:#d2e5ec; }
.statement:after { border-color:rgba(130,204,219,.09); }
.process-section { background:#edf5fb; }
.step-count { color:var(--brand-blue); }
.step-line { background:#bad1e1; }
.step-line:after { background:var(--brand-gold); }
.process-alert svg { stroke:var(--brand-teal); }
.process-alert strong { color:var(--brand-navy); }
.about-section { background:#fff; }
.about-graphic { background:linear-gradient(145deg,#dcecf9 0%,#d8f0e8 100%); }
.about-graphic:after { border-color:#cae2ec; }
.about-small { color:#186a78; }
.about-big { color:var(--brand-navy); }
.about-big em { color:var(--brand-teal); }
.period { color:#ba843e; }
.about-line { background:var(--brand-gold); }
.faq-section { background:#f5f9fc; }
.faq-list { border-top-color:#d3e1eb; }
.faq-list details { border-bottom-color:#d3e1eb; }
.faq-list summary:hover { color:var(--brand-blue); }
.faq-symbol { color:var(--brand-blue); }
/* Contact form: high-contrast navy makes the white form easy to find */
.contact-section { background:linear-gradient(135deg,#0e263f 0%,#133b5a 72%,#0f4b56 100%); }
.contact-copy h2 em { color:#a6e5e0; }
.contact-copy>p { color:#d0e2eb; }
.contact-bullets { color:#e0f1f2; }
.contact-bullets svg { stroke:#a4e4da; }
.direct-contact { border-top-color:rgba(229,244,247,.2); }
.direct-contact p { color:#c3d9e3; }
.form-card { border:1px solid #d1e6ed; box-shadow:0 24px 65px rgba(4,28,48,.22); }
.form-heading { border-bottom-color:#d9e5ec; }
.form-heading h3 { color:var(--brand-navy); }
.form-card input:focus, .form-card select:focus, .form-card textarea:focus { border-color:var(--brand-blue); box-shadow:0 0 0 3px rgba(23,102,163,.13); }
/* Subpages: hero artwork / package cards / call-to-action areas */
.uc-hero { background:linear-gradient(115deg,#f6faff 0%,#e1f0fb 63%,#dcf3ef 100%); }
.uc-hero h1 em { color:var(--brand-blue); }
.uc-hero-copy>p { color:var(--brand-text-muted); }
.uc-passport-art:before { background:#b9e4e8; }
.uc-passport-card { background:linear-gradient(145deg,#13334e,#0c5260); border-color:#3e7d8c; box-shadow:0 24px 70px rgba(11,48,79,.22); }
.uc-card { position:relative; overflow:hidden; background:#f9fcff; border-color:#d5e5f0; }
.uc-card::before { content:""; position:absolute; left:0; top:0; width:100%; height:5px; background:var(--brand-blue); }
.uc-card:nth-child(2) { background:#f0f9f6; border-color:#cfe6dc; }
.uc-card:nth-child(2)::before { background:var(--brand-teal); }
.uc-card:nth-child(3) { background:#fffaf0; border-color:#eee0c6; }
.uc-card:nth-child(3)::before { background:#bd8740; }
.uc-featured { border:2px solid var(--brand-teal); }
.uc-level { color:var(--brand-teal); }
.uc-status-open { background:#dff4eb; color:#075c50; }
.uc-price { color:var(--brand-navy); border-bottom-color:#d7e6eb; }
.uc-journey { background:linear-gradient(110deg,#0e263f 0%,#16405f 100%); }
.uc-journey h2 em { color:#a4e6df; }
.uc-journey-grid>div { background:#1d4b68; border-color:#48738b; }
.uc-journey-grid span { color:#b5e6e2; }
.uc-journey-grid p { color:#d0e0e9; }
.uc-how { background:#ecf6f7; }
.uc-how .button { background:var(--brand-blue); }
/* Repair page: blue / teal / sand rather than all-grey cards */
.ra-hero { background:linear-gradient(112deg,#f8fbff 0%,#dfedf9 65%,#dcf2ec 100%); }
.ra-intro h1 em { color:var(--brand-blue); }
.ra-lead { color:var(--brand-text-muted); }
.ra-hero-art:before { background:#d1eaf0; }
.ra-estimate { border-color:#c9e2ef; }
.ra-estimate-number { color:var(--brand-navy); }
.ra-estimate-question { background:var(--brand-teal-light); color:#075f56; }
.ra-estimate-question span { background:var(--brand-teal); }
.ra-answer-card { background:var(--brand-navy); }
.ra-answer-card span { color:#b5e5dc; }
.ra-card { position:relative; overflow:hidden; background:#f6fbff; border-color:#d3e4ef; }
.ra-card::before { content:""; position:absolute; left:0; top:0; width:100%; height:5px; background:var(--brand-blue); }
.ra-card:nth-child(2) { background:#edf9f4; border-color:#c5e5d9; }
.ra-card:nth-child(2)::before { background:var(--brand-teal); }
.ra-card:nth-child(3) { background:#fff9ee; border-color:#efdfc5; }
.ra-card:nth-child(3)::before { background:#b78131; }
.ra-card-featured { border:2px solid var(--brand-teal); }
.ra-level { color:var(--brand-teal); }
.ra-pill { background:#e0f1ee; color:#075e56; }
.ra-pill-dark { background:var(--brand-teal); color:#fff; }
.ra-card-desc { color:var(--brand-text-muted); }
.ra-price { color:var(--brand-navy); }
.ra-features li:before { color:var(--brand-teal); }
.ra-liaison { background:linear-gradient(125deg,#143553,#0f4960); }
.ra-liaison-side { background:#205573; border-color:#437b97; }
.ra-process { background:#eaf4f9; }
.ra-steps>div { border-top-color:#a8cada; }
.ra-steps span { color:var(--brand-blue); }
.ra-bottom { background:linear-gradient(115deg,#103352 0%,#16536a 100%); }
.ra-bottom h2 em { color:#b5ebe4; }
/* Footer and legal pages */
.footer { background:#0b1f35; }
.footer-logo-dot { color:var(--brand-gold); }
.footer-brand p,.footer-bottom small { color:#b0c5d1; }
.footer-links span { color:#adc8d7; }
.footer-links a { color:#d5e5ed; }
.footer-bottom { border-top-color:#30516a; }
.legal { background:linear-gradient(180deg,#f2f8fc 0%,#fff 220px); }
.legal h1 { color:var(--brand-navy); }
.legal a:not(.button) { color:var(--brand-blue); text-decoration-color:#83b7da; }
/* Accessibility / tap targets: inherit existing layout, preserve nav logic. */
@media (max-width:820px) {
  .nav.open { background:#fff; border:1px solid #d6e7f0; box-shadow:0 20px 35px rgba(13,39,69,.12); }
  .nav a[aria-current="page"]:not(.button) { background:#e7f2fb; color:var(--brand-blue); }
}
@media (prefers-reduced-motion:reduce) {
  .service-card,.button,.ra-card,.uc-card { transition:none!important; }
}
