/*
Theme Name: Capital Ride
Theme URI: https://capitalride.co.uk
Author: Capital Ride
Description: Custom WordPress theme for a London executive chauffeur service.
Version: 1.3.0
Text Domain: capital-ride
*/

:root{--ink:#141817;--green:#214b3b;--gold:#cba55c;--paper:#f7f5f0;--line:#d9d8d2;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;line-height:1.55}
a{color:inherit}
.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.site-nav{position:absolute;z-index:3;width:100%;border-bottom:1px solid rgba(255,255,255,.25);color:#fff}
.nav-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{color:#fff;text-decoration:none;font-size:22px;font-weight:800;text-transform:uppercase}
.brand span{display:block;color:var(--gold);font-size:11px;font-weight:700}
.nav-links{display:flex;align-items:center;gap:25px}
.nav-links a{color:#fff;text-decoration:none;font-size:14px;font-weight:700}
.nav-links .contact-link{border-left:1px solid rgba(255,255,255,.35);padding-left:25px}
.button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:10px 19px;border:1px solid var(--gold);border-radius:4px;background:var(--gold);color:var(--ink)!important;text-decoration:none;font-weight:800;cursor:pointer}
.button-outline{background:transparent;color:#fff!important}
.hero{min-height:690px;display:grid;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(10,14,12,.86) 0%,rgba(10,14,12,.55) 42%,rgba(10,14,12,.08) 72%),url('assets/hero.png') center/cover no-repeat}
.hero-copy{max-width:650px;padding:150px 0 85px}
.kicker{margin:0 0 14px;color:var(--gold);font-size:13px;font-weight:900;text-transform:uppercase}
.hero h1{margin:0;font-family:Georgia,serif;font-size:clamp(46px,6vw,76px);font-weight:500;line-height:1.03;letter-spacing:0}
.hero p{max-width:590px;margin:22px 0 31px;color:#edf0ee;font-size:19px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.trust{background:var(--ink);color:#fff}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-item{min-height:112px;padding:25px;border-right:1px solid rgba(255,255,255,.13)}
.trust-item:last-child{border:0}
.trust-item strong{display:block;color:var(--gold);font-size:15px}
.trust-item span{color:#cbd1ce;font-size:13px}
.section{padding:84px 0}
.section-soft{background:var(--paper)}
.section-heading{max-width:720px;margin-bottom:38px}
.section-heading h2,.split-copy h2,.book h2{margin:0 0 14px;font-family:Georgia,serif;font-size:clamp(34px,4vw,50px);font-weight:500;line-height:1.1;letter-spacing:0}
.section-heading p{margin:0;color:#606763;font-size:17px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card{min-height:220px;padding:28px;border:1px solid var(--line);border-radius:6px;background:#fff}
.service-number{display:grid;width:38px;height:38px;place-items:center;margin-bottom:20px;border-radius:50%;background:var(--green);color:#fff;font-weight:800}
.service-card h3{margin:0 0 8px;font-size:21px}
.service-card p{margin:0;color:#606763}
.split{display:grid;grid-template-columns:1fr 1fr;min-height:580px}
.split-media{background:url('assets/fleet.png') center/cover no-repeat}
.split-copy{display:flex;flex-direction:column;justify-content:center;padding:70px max(38px,calc((100vw - var(--max))/2));background:var(--green);color:#fff}
.split-copy p{color:#dbe6e1;font-size:17px}
.check-list{display:grid;gap:12px;padding:0;margin:22px 0 30px;list-style:none}
.check-list li{padding-left:28px;position:relative}
.check-list li:before{content:'\2713';position:absolute;left:0;color:var(--gold);font-weight:900}
.fleet{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.fleet-card{overflow:hidden;border:1px solid var(--line);border-radius:6px;background:#fff}
.fleet-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}
.fleet-card-copy{display:flex;min-height:260px;flex-direction:column;padding:22px}
.fleet-class{margin:0 0 8px!important;color:var(--green)!important;font-size:12px;font-weight:900;text-transform:uppercase}
.fleet h3{margin:0 0 7px;font-size:22px}
.fleet p{margin:0;color:#606763}
.vehicle-choice{align-self:flex-start;margin-top:auto;padding:10px 0 2px;border:0;border-bottom:2px solid var(--gold);background:transparent;color:var(--ink);font:inherit;font-weight:800;cursor:pointer}
.vehicle-choice:hover,.vehicle-choice:focus{color:var(--green)}
.fleet-note{margin:24px 0 0;color:#737a76;font-size:13px}
.book{padding:80px 0;background:var(--ink);color:#fff}
.book-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.book p{color:#cbd1ce}
.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.field{display:grid;gap:6px;font-size:13px;font-weight:700}
.field-full{grid-column:1/-1}
.field input,.field select,.field textarea{width:100%;padding:13px;border:1px solid #636b67;border-radius:4px;background:#fff;color:#171b19;font:inherit}
.postcode-row{display:grid;grid-template-columns:1fr auto;gap:8px}
.postcode-search{min-width:62px;border:1px solid var(--gold);border-radius:4px;background:var(--gold);color:var(--ink);font:inherit;font-weight:800;cursor:pointer}
.postcode-search:disabled{cursor:wait;opacity:.65}
.postcode-status{min-height:18px;color:#cbd1ce;font-size:12px;font-weight:400}
.postcode-status.is-error{color:#ffb5a9}
.notice{padding:13px 16px;border-left:4px solid var(--gold);background:#fff;color:var(--ink)}
.notice a{font-weight:700}
.notice-warning{border-left-color:#b56b16;background:#fff8e8}
.notice-error{border-left-color:#b3261e;background:#fff0ef}
.site-footer{padding:32px 0;background:#0b0e0d;color:#bfc6c2;font-size:13px}
.footer-inner{display:flex;justify-content:space-between;gap:20px}
.site-footer a{color:#fff;text-decoration:none}
@media(max-width:900px){.nav-links a:not(.button){display:none}.trust-grid,.service-grid{grid-template-columns:1fr 1fr}.split,.book-grid{grid-template-columns:1fr}.split-media{min-height:460px}.fleet{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.brand{font-size:17px}.site-nav .button{padding:8px 12px;font-size:13px}.hero{min-height:650px;background-position:63% center}.hero-copy{padding-top:130px}.trust-grid,.service-grid,.fleet,.quote-form{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.13)}.section{padding:62px 0}.field-full{grid-column:auto}.footer-inner{flex-direction:column}.split-copy{padding:52px 24px}}
