/*
Theme Name: EDC Executive Black & Gold
Theme URI: https://edc-executive.co.uk
Author: EDC Executive
Description: Premium responsive Black & Gold WordPress theme for London executive chauffeur services. Requires EDC Executive Core for booking and membership features.
Version: 1.1.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: edc-executive
*/
:root{--black:#090a0b;--charcoal:#121416;--surface:#1b1d1f;--gold:#c6a466;--gold2:#e2c58c;--white:#f8f7f4;--muted:#b4b4b2;--line:#38332a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--black);color:var(--white);font:16px/1.65 'Inter',Arial,sans-serif;margin:0;overflow-x:hidden}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.strip{background:#1a1814;color:#dfd0af;text-align:center;font-size:11px;letter-spacing:.17em;text-transform:uppercase;padding:9px 12px}.site-head{background:rgba(10,11,12,.96);position:sticky;top:0;z-index:40;border-bottom:1px solid #2d2a25}.admin-bar .site-head{top:32px}.head-inner{min-height:83px;display:flex;justify-content:space-between;align-items:center;gap:25px}.logo{display:inline-flex;flex-direction:column;line-height:1;min-width:178px}.logo strong{font:600 30px/.9 Georgia,serif;letter-spacing:.12em;color:var(--gold)}.logo em{font-style:normal;letter-spacing:.47em;font-size:10px;padding-top:9px}.nav{display:flex;align-items:center;gap:24px}.nav a{font-size:12px;letter-spacing:.05em;color:#e6e2d9;transition:color .2s}.nav a:hover,.nav a:focus-visible{color:var(--gold)}.edc-btn,.nav .nav-cta{display:inline-flex;justify-content:center;align-items:center;gap:12px;background:linear-gradient(120deg,#b58d4b,#e1c282);border:1px solid #d4b577;color:#16120a!important;border-radius:3px;padding:14px 22px;font-size:12px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;transition:transform .2s,box-shadow .2s}.edc-btn:hover,.nav .nav-cta:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0008}.edc-btn-outline{background:transparent;border:1px solid #92805e;color:#fff!important}.menu-toggle{display:none;background:none;color:var(--gold);border:1px solid var(--line);padding:7px 12px;font-size:22px}.hero{position:relative;min-height:610px;display:flex;align-items:center;overflow:hidden;background:linear-gradient(90deg,#090a0b 1%,#0b0d0eea 38%,#06070818 85%),url('assets/hero.jpg') 75% 50%/cover no-repeat}.hero:after{content:'';background:linear-gradient(0deg,#090a0b 0%,transparent 35%);position:absolute;inset:0;pointer-events:none}.hero-inner{position:relative;z-index:2;padding:80px 0 100px}.hero-copy{max-width:570px}.eyebrow,.edc-eyebrow{color:var(--gold);font-size:11px;letter-spacing:.25em;font-weight:700;text-transform:uppercase}.eyebrow:before{content:'';display:inline-block;width:28px;border-top:1px solid var(--gold);vertical-align:middle;margin-right:14px}h1,h2,h3,.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(48px,6vw,81px);line-height:1.09;margin:22px 0}h2{font-size:clamp(32px,4vw,51px);line-height:1.18;margin:14px 0 20px}h3{font-size:25px;margin:12px 0}.gold{color:var(--gold2)}.hero p{color:#ddd9d1;font-size:16px;max-width:515px}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:31px}.trust{border-top:1px solid #343029;border-bottom:1px solid #343029;background:#111213}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px}.trust-item{padding:26px 16px;display:flex;align-items:center;gap:14px}.trust-icon{font-size:27px;color:var(--gold)}.trust-item strong{display:block;font-size:13px}.trust-item span{display:block;color:var(--muted);font-size:12px}.section{padding:96px 0}.section.dark{background:#101112}.section-title{text-align:center;max-width:760px;margin:0 auto 43px}.section-title>p{color:var(--muted);margin:0 auto;max-width:660px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.service-card{min-height:242px;border:1px solid #3c362d;background:radial-gradient(circle at 95% 0%,#594b31 0%,transparent 39%),linear-gradient(143deg,#22262a,#111213 70%);padding:25px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;transition:border-color .2s,transform .2s}.service-card:before{content:'✈';position:absolute;right:-15px;top:5px;font-size:130px;color:#ffffff08;transform:rotate(-17deg)}.service-card:hover{transform:translateY(-3px);border-color:var(--gold)}.service-card .index{font-size:11px;letter-spacing:.17em;color:var(--gold)}.service-card h3{font-size:25px;position:relative}.service-card p{position:relative;color:#bdb8ae;font-size:13px;margin:0}.service-card .arrow{font-size:24px;color:var(--gold);position:absolute;right:22px;bottom:16px}.fleet-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.fleet-art{min-height:430px;background:linear-gradient(0deg,#0009,#0000),url('assets/hero.jpg') center /cover;border:1px solid #42392b;position:relative}.fleet-art:after{content:'S-CLASS 2026';letter-spacing:.25em;font-size:12px;background:#090a0be8;color:var(--gold2);position:absolute;bottom:20px;left:20px;padding:13px 18px}.fleet-copy p{color:var(--muted)}.feature-list{list-style:none;padding:0;columns:2;column-gap:20px;margin:26px 0}.feature-list li{padding:8px 0;break-inside:avoid;font-size:13px}.feature-list li:before{content:'✓';color:var(--gold);padding-right:9px}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.why-card{border:1px solid var(--line);padding:31px 21px;background:#18191a}.why-card b{display:block;color:var(--gold);font-size:32px;font-weight:400}.why-card h3{font-size:22px}.why-card p{color:var(--muted);font-size:13px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;text-align:center}.step-number{width:76px;height:76px;border-radius:50%;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:34px Georgia,serif;margin:0 auto 22px}.steps p{color:var(--muted);font-size:14px}.booking-section{background:radial-gradient(ellipse at 50% 0,#29251c,transparent 65%),#111213}.edc-booking-wrap{max-width:970px;margin:auto}.edc-booking-intro{text-align:center;max-width:730px;margin:0 auto 34px}.edc-booking-intro p{color:var(--muted)}.edc-booking-form{padding:32px;background:#1a1b1b;border:1px solid #48402f;box-shadow:0 20px 65px #0005}.edc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.edc-booking-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;color:#e4d7c1;letter-spacing:.015em}.edc-booking-form input:not([type=checkbox]),.edc-booking-form select,.edc-booking-form textarea{background:#101112;border:1px solid #4a453d;color:#fff;padding:13px 12px;border-radius:2px;width:100%;min-width:0;outline-offset:2px}.edc-booking-form input:focus,.edc-booking-form select:focus,.edc-booking-form textarea:focus{border-color:var(--gold)}.edc-booking-form .edc-span{grid-column:1/-1}.edc-booking-form .edc-consent{display:block;margin:20px 0;color:var(--muted);font-size:12px}.edc-consent a{color:var(--gold2);text-decoration:underline}.edc-consent input{vertical-align:middle}.edc-smallprint{font-size:12px;color:var(--muted)}.edc-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.edc-notice{border:1px solid var(--gold);padding:15px 18px;margin-bottom:18px;color:#efe1bc}.edc-error{border-color:#c67070}.edc-tier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:28px 0}.edc-tier{padding:26px 18px;border:1px solid #806b49;background:#1b1b1b;text-align:center}.edc-tier h3{color:#e0c28d}.edc-tier p{color:var(--muted)}.edc-tier strong{color:var(--gold)}.edc-crown{font-size:32px;color:var(--gold)}.edc-membership{text-align:center}.edc-membership>p{color:var(--muted)}.airport-tags{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.airport-tags span{padding:14px 23px;background:#1a1b1b;border:1px solid #4a4031;font-size:13px}.cta{background:linear-gradient(110deg,#201d17,#100f0e 70%);text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cta p{color:var(--muted);max-width:620px;margin:0 auto 25px}.footer{padding:65px 0 20px;background:#090a0b}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr;gap:35px}.foot-grid h4{font-size:12px;color:var(--gold);text-transform:uppercase;letter-spacing:.13em}.foot-grid p,.foot-grid a{font-size:13px;color:#b5b0a6}.foot-grid a:hover{color:var(--gold)}.foot-grid ul{list-style:none;padding:0}.foot-grid li{margin:8px 0}.copyright{border-top:1px solid #2e2921;margin-top:40px;padding-top:18px;color:#8b8984;font-size:12px;display:flex;justify-content:space-between;gap:15px}.content-page{min-height:55vh;padding:75px 0}.content-page .entry{max-width:820px;margin:auto}.content-page p{color:#d0ceca}.wp-block-group{max-width:100%}.contact-details{font-size:15px;color:var(--muted)}.skip-link{position:absolute;left:-999em}.skip-link:focus{left:12px;top:12px;z-index:9999;background:white;color:black;padding:15px}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);height:1px;width:1px;overflow:hidden}.screen-reader-text:focus{clip:auto;height:auto;width:auto}.edc-member-off{text-align:center;color:var(--muted);padding:24px}.wp-caption{max-width:100%}.aligncenter{display:block;margin:auto}.alignright{float:right;margin-left:15px}.alignleft{float:left;margin-right:15px}
@media(max-width:1000px){.nav{gap:13px}.nav a{font-size:11px}.logo{min-width:140px}.logo strong{font-size:26px}.fleet-layout{gap:25px}.why-grid{grid-template-columns:repeat(2,1fr)}.foot-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.admin-bar .site-head{top:46px}.head-inner{min-height:72px}.menu-toggle{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:#111213;flex-direction:column;align-items:stretch;gap:0;border-bottom:1px solid var(--gold);padding:15px 20px 25px}.nav.open{display:flex}.nav a{padding:12px 5px;font-size:14px}.nav .nav-cta{text-align:center;margin-top:9px}.hero{min-height:640px;background:linear-gradient(90deg,#090a0be8,#090a0b80),url('assets/hero.jpg') 60% center/cover}.hero-inner{padding:65px 0 120px}.hero-copy{max-width:510px}.trust-grid{grid-template-columns:repeat(2,1fr)}.service-grid,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.fleet-layout{grid-template-columns:1fr}.fleet-art{min-height:360px}.edc-tier-grid{grid-template-columns:repeat(2,1fr)}.section{padding:66px 0}}
@media(max-width:520px){.container{width:min(100% - 28px,1180px)}.hero{min-height:580px}.hero p{font-size:14px}.hero-actions{flex-direction:column;max-width:270px}.trust-grid,.service-grid,.steps,.why-grid,.edc-form-grid,.foot-grid{grid-template-columns:1fr}.trust-item{padding:17px 14px}.service-card{min-height:205px}.feature-list{columns:1}.edc-booking-form{padding:20px 14px}.edc-tier-grid{grid-template-columns:1fr 1fr;gap:9px}.edc-tier{padding:18px 8px}.edc-tier h3{font-size:21px}.copyright{flex-direction:column}.section-title{margin-bottom:32px}.nav{top:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* EDC 1.0.1: WordPress menu structure, mobile and desktop layout stability. */
html { overflow-x: clip; scroll-padding-top: 110px; }
body { min-width: 0; }
.container, main, section, .head-inner, .fleet-copy, .hero-copy { min-width: 0; }
.site-head .head-inner { position: relative; }
.nav { min-width: 0; }
.nav ul, .nav .menu { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 16px; list-style: none; margin: 0; padding: 0; }
.nav li { position: relative; list-style: none; margin: 0; padding: 0; }
.nav li a { display: inline-flex; align-items: center; min-height: 40px; }
.nav .current-menu-item > a { color: var(--gold); }
.nav .sub-menu { display: none; position: absolute; top: 100%; left: 0; min-width: 180px; flex-direction: column; align-items: stretch; background: #151515; border: 1px solid var(--line); padding: 8px 12px; z-index: 60; }
.nav li:hover > .sub-menu, .nav li:focus-within > .sub-menu { display: flex; }
.nav .sub-menu li a { display: block; padding: 8px 0; }
.menu-toggle { flex-shrink: 0; }
.edc-btn, .nav a, h1, h2, h3, .logo { overflow-wrap: break-word; }
.edc-booking-form, .edc-form-grid, .service-grid, .fleet-layout, .foot-grid { min-width: 0; }
.edc-booking-form input, .edc-booking-form textarea, .edc-booking-form select { max-width: 100%; }
@media (min-width: 761px) and (max-width: 1150px) {
 .head-inner { flex-wrap: wrap; justify-content: center; gap: 8px 25px; padding-block: 12px; }
 .nav { justify-content: center; flex-wrap: wrap; }
 .nav ul { justify-content: center; gap: 6px 15px; }
 .nav a { white-space: nowrap; }
}
@media (max-width: 760px) {
 html { scroll-padding-top: 85px; }
 .strip { letter-spacing: .07em; line-height: 1.45; padding: 8px 14px; }
 .head-inner { min-height: 72px; flex-wrap: nowrap; justify-content: space-between; }
 .logo { min-width: 0; flex-shrink: 0; }
 .logo strong { font-size: 26px; }
 .nav { position: absolute; top: 100%; left: -20px; right: -20px; width: auto; max-height: calc(100dvh - 112px); overflow-y: auto; overflow-x: hidden; padding: 12px 20px 22px; box-shadow: 0 20px 35px #0009; }
 .nav:not(.open) { display: none !important; }
 .nav.open { display: flex; }
 .nav ul, .nav .menu { display: flex; flex-direction: column; flex-wrap: nowrap; align-items: stretch; justify-content: flex-start; gap: 0; width: 100%; }
 .nav li { display: block; width: 100%; }
 .nav a, .nav li a { display: flex; width: 100%; padding: 12px 8px; min-height: 44px; font-size: 14px; }
 .nav .nav-cta { display: flex; justify-content: center; }
 .nav .sub-menu { display: flex; position: static; flex-direction: column; width: 100%; min-width: 0; border: 0; border-left: 1px solid var(--gold); background: transparent; padding: 0 0 0 15px; box-shadow: none; }
 .hero { min-height: 0; background-position: 62% center; }
 .hero-inner { padding-block: 76px 88px; }
 .hero h1 { font-size: clamp(37px, 8vw, 58px); line-height: 1.12; }
 .section { padding-block: 62px; }
 .edc-btn { max-width: 100%; text-align: center; }
 .edc-tier-grid { gap: 12px; }
 .admin-bar .site-head { top: 46px; }
}
@media (max-width: 520px) {
 .container { width: calc(100% - 30px); }
 .nav { left: -15px; right: -15px; }
 .strip { font-size: 10px; }
 .hero-inner { padding-block: 64px 78px; }
 .hero h1 { font-size: clamp(34px, 10vw, 48px); }
 .hero-actions { max-width: none; width: 100%; }
 .hero-actions .edc-btn { width: 100%; }
 .trust-item { overflow-wrap: anywhere; }
 .service-card { overflow-wrap: anywhere; }
 .fleet-art { min-height: 260px; }
 .section-title h2, .fleet-copy h2 { font-size: clamp(29px, 8vw, 38px); }
 .edc-form-grid > *, .foot-grid > * { min-width: 0; }
 .edc-tier h3 { font-size: clamp(17px, 5vw, 21px); }
 .copyright { overflow-wrap: anywhere; }
 .edc-booking-form input, .edc-booking-form select, .edc-booking-form textarea { font-size: 16px; }
}

/* EDC 1.1.0: dedicated pages */
.nav .current-link:not(.nav-cta){color:var(--gold2)}
.page-hero{position:relative;overflow:hidden;padding:100px 0 90px;background:linear-gradient(90deg,#090a0bf7,#090a0be8 54%,#090a0b9c),url('assets/hero.jpg') center 43%/cover;border-bottom:1px solid var(--line)}
.page-hero .container{position:relative;z-index:1}.page-hero h1{font-size:clamp(38px,5.2vw,70px);max-width:880px;margin:22px 0}.page-hero p{font-size:16px;max-width:690px;color:#e0dcd4}
.edc-center-action{text-align:center;margin-top:36px}.edc-contact-panel{max-width:740px;margin:auto;padding:36px;border:1px solid var(--line);background:#1b1d1f}.edc-contact-panel p{color:var(--muted)}.edc-contact-panel p a:not(.edc-btn){color:var(--gold2);text-decoration:underline}.edc-custom-content{max-width:900px;margin:auto}.edc-custom-content a{color:var(--gold2);text-decoration:underline}
@media(max-width:760px){.page-hero{padding:65px 0}.page-hero h1{font-size:clamp(36px,8vw,54px)}.page-hero p{font-size:14px}.edc-contact-panel{padding:22px}}
@media(max-width:520px){.page-hero{padding:56px 0}.page-hero h1{font-size:clamp(33px,9vw,43px)}}
