/* Crystal Clean Valeting — October 2026 brand guidelines. Google Fonts stylesheet linked in every page head. */
:root { --ccv-ink:#111315; --ccv-graphite:#1E2429; --ccv-white:#FFFFFF; --ccv-mist:#F1F5F6; --ccv-aqua:#4CBFCC; --ccv-slate:#617079; --ink:#111315; --muted:#617079; --line:#d8e1e3; --dark:#111315; --off:#F1F5F6; --blue:#1E2429; --blue2:#4CBFCC; --bluep:#F1F5F6; --radius:10px; }
body {font-family:'Inter',Arial,sans-serif; font-size:17px; line-height:1.6; color:var(--ccv-ink);background:#fff}
h1,h2,h3 {font-family:'Roboto Condensed','Arial Narrow',Arial,sans-serif; font-weight:700;letter-spacing:-.015em;}
h1,.hero-copy h1,.page-hero h1 {font-size:clamp(36px,5vw,64px);line-height:1.06;}
h2 {font-size:clamp(28px,3vw,42px);line-height:1.12;}
h3 {font-size:clamp(21px,2vw,27px);line-height:1.2;}
button,.button,.nav-links a,.eyebrow,.text-link,.booking-link,.service-enquiry-link {font-family:'Inter',Arial,sans-serif;font-weight:600;}
.eyebrow,.service-kicker {color:#17616c;font-size:.76rem;letter-spacing:.13em;}
.button,.nav-cta,.cookie-actions .cookie-primary {background:#111315;color:white!important;border-color:#111315;border-radius:5px;transition:background .18s ease,border-color .18s ease;}
.button:hover,.nav-cta:hover,.cookie-actions .cookie-primary:hover {background:#1E2429;color:#fff!important;filter:none;}
.button:focus-visible,.nav-cta:focus-visible,.text-link:focus-visible,.site-header a:focus-visible,.service-enquiry-link:focus-visible,a:focus-visible,button:focus-visible {outline:2px solid #4CBFCC;outline-offset:3px;}
.button-ghost,.button-outline {background:white;color:#111315!important;border-color:#aebabe;}
.button-ghost:hover,.button-outline:hover {color:#111315!important;background:#F1F5F6;}
.nav-links a:hover,.nav-links a[aria-current=page] {color:#17616c;}
.site-header {background:rgba(255,255,255,.97);border-color:#d8e1e3;}
.hero {background:linear-gradient(110deg,#F1F5F6,#fff 60%);}
.hero-media:after {background:linear-gradient(90deg,#fff 0,rgba(255,255,255,.2) 18%,transparent 45%);}
.page-hero {background:linear-gradient(180deg,#F1F5F6,#fff);}
.price-card.featured {background:linear-gradient(180deg,#F1F5F6,#fff);border-color:#4CBFCC;}
.popular {background:#111315;}
.trust-row div {border-color:#4CBFCC;}
.benefit-icon {color:#111315;}
.steps strong {background:#111315;}
.site-footer {background:#111315;color:#F1F5F6;}
.site-footer a:hover {color:#95dce4;}
.site-footer .brand-logo img {width:300px!important;max-height:90px!important;}
.cta-band {background:#F1F5F6;}
.booking-addons,.addon-mini,.addon-notice,.booking-note,.info-callout {background:#F1F5F6;border-color:#d8e1e3;color:#111315;}
.legal-copy.policy-document a,.text-link,.booking-call {color:#17616c;}
.booking-action-card,.price-card,.service-card,.service-detail,.form-card,.enquiry-service-card {border-color:#d8e1e3;}
.enquiry-help {margin:16px 0; padding:20px 24px; background:#F1F5F6; border-left:4px solid #4CBFCC;border-radius:4px;}
.enquiry-help p {margin:6px 0;}
.enquiry-help strong {color:#111315;}
.enquiry-service-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:32px 0;}
.enquiry-service-card {border:1px solid #d8e1e3;border-radius:10px;background:white;padding:26px;display:flex;flex-direction:column;}
.enquiry-service-card h3 {margin-bottom:8px;}
.enquiry-service-card p {color:#617079;}
.enquiry-service-card .button {margin-top:auto;align-self:flex-start;}
.enquiry-service-card .service-meta {font-weight:600;font-size:.92rem;color:#1E2429;margin-bottom:18px;}
.email-address {display:inline-block;font-weight:600;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px;}
.service-enquiry-link {display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px 16px;min-height:46px;background:#111315;color:white!important;border-radius:5px;margin-top:12px;}
.service-enquiry-link:hover {background:#1E2429;}
.service-button-row {display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px;}
.form-card p {overflow-wrap:anywhere;}
@media(max-width:900px){.enquiry-service-grid{grid-template-columns:1fr 1fr}.hero-media:after{background:linear-gradient(180deg,#fff 0,transparent 30%)}}
@media(max-width:600px){body{font-size:16px}.enquiry-service-grid{grid-template-columns:1fr}.site-footer .brand-logo img{width:235px!important}.brand-logo img{max-height:52px!important}.enquiry-service-card{padding:22px}.site-header .nav-cta{text-align:center;}.service-button-row .button{width:100%;}}


/* UX refinement Oct 2026. Original grids, layout and service order preserved. */
:root{--ccv-content:1180px;--ccv-spacing:clamp(20px,3vw,42px)}
/* Inner-page hero text now shares the same left-hand guide as the sections underneath. */
.page-hero {padding:64px 0 56px}
.page-hero > .shell.narrow{max-width:var(--max)}
.page-hero > .shell.narrow > h1{max-width:820px}
.page-hero > .shell.narrow > .lead{max-width:790px;margin-inline:0}
.page-hero > .shell.narrow > .eyebrow{max-width:820px}
.page-hero .breadcrumb{margin-bottom:22px}
.page-hero + .section{padding-top:70px}
.page-hero.compact{padding-bottom:40px}
/* Logo has real alpha; no coloured card or pseudo-background around it. */
.site-footer .brand-logo,.site-footer .brand-logo picture,.site-footer .brand-logo img{background:transparent!important;box-shadow:none!important;border:0!important}
.site-footer .brand-logo{display:inline-flex;max-width:100%;align-items:center}
.site-footer .brand-logo img{display:block;width:min(300px,100%)!important;max-height:none!important;height:auto;object-fit:contain}
/* Text links and CTA groups are not glued together. */
.service-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px}
.service-actions .button,.service-actions .service-enquiry-link{display:inline-flex;min-height:48px;margin:0!important;padding:12px 20px;align-items:center;justify-content:center;text-align:center;white-space:normal}
.service-detail .service-actions .button{background:white;color:#111315!important;border:1px solid #9faeb5}
.service-detail .service-actions .button:hover{background:#f1f5f6}
.service-detail .service-actions .service-enquiry-link{background:#111315;color:#fff!important}
.button-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.button-row .button,.price-card .button,.enquiry-service-card .button,.gallery-cta .button{min-height:48px;padding:12px 20px;text-align:center}
.price-card .service-enquiry-link{padding:12px 18px;text-align:center}
.extra-grid article .service-enquiry-link{margin-top:14px;max-width:100%;text-align:center}
.button,.service-enquiry-link,.nav-cta{line-height:1.35}
.service-detail h2{overflow-wrap:break-word}
/* Visible focus outlines and readable long email addresses on narrow screens. */
.site-footer a,.footer-contact a{overflow-wrap:anywhere}
.service-actions a:focus-visible{outline:3px solid #4cbfcc;outline-offset:3px}
@media(max-width:900px){
 .page-hero{padding:54px 0 48px}
 .page-hero + .section{padding-top:56px}
 .service-detail{gap:28px;padding:30px}
 .service-actions{gap:10px}
}
@media(max-width:600px){
 .page-hero{padding:36px 0 34px}
 .page-hero.compact{padding-bottom:32px}
 .page-hero + .section{padding-top:44px}
 .section{padding-top:60px;padding-bottom:60px}
 .page-hero h1{font-size:clamp(36px,10vw,46px);line-height:1.09}
 .page-hero .lead{font-size:17px;line-height:1.55}
 .service-detail{padding:23px;gap:20px}
 .service-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:18px}
 .service-actions .button,.service-actions .service-enquiry-link{width:100%;min-width:0}
 .button-row .button{min-height:48px;padding:12px 16px}
 .site-footer .brand-logo img{width:min(275px,100%)!important;max-height:none!important}
 .enquiry-service-card{padding:20px}
 .gallery-section{padding-top:42px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* final alignment + F40 hero update */
.page-hero,.page-hero .shell,.page-hero .narrow{text-align:left!important;}
.page-hero .lead,.page-hero h1,.page-hero .eyebrow,.page-hero .breadcrumb{margin-left:0!important;margin-right:0!important;}
.hero-media picture{display:block;width:100%;height:100%;}
.hero-media .gallery-hero{object-position:center center;}

.result-images > *:first-child{grid-column:1/-1}

/* Consistent full-width, left-aligned page hero guides and photo gallery */
.page-hero > .shell.narrow{width:min(var(--max),calc(100% - 40px));max-width:var(--max)!important;text-align:left!important;margin-inline:auto!important}
.page-hero .lead,.page-hero h1,.page-hero .eyebrow,.page-hero .breadcrumb{text-align:left!important;margin-left:0!important;margin-right:0!important}
.remote-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.remote-gallery .portfolio-card img{aspect-ratio:4 / 3;object-fit:cover;object-position:center;background:#f1f5f6}
.result-images > *:first-child{grid-column:1/-1}
.hero-media picture,.hero-media picture img{display:block;width:100%;height:100%;object-fit:cover}
.hero-media picture img{object-position:center center}
@media(max-width:900px){.remote-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media(max-width:600px){.page-hero > .shell.narrow{width:min(var(--max),calc(100% - 28px))}.remote-gallery{grid-template-columns:1fr;gap:18px}.hero-media{min-height:300px}.gallery-section{padding-top:36px}}
