/* RYDGEWAY public experience */
:root{--copper:var(--rw-navy);--copperlight:#b97089;--navy:#0d1d30;--ink:#152537;--paper:#f5f3ef}
.topbar{background:#0d1d30;border-bottom:1px solid #ffffff20;box-shadow:none}
.topbar nav a{font-weight:700;letter-spacing:.01em}
.topbar nav a:hover{color:#b97089}
.premium-hero{min-height:min(780px,calc(100vh - 78px));background:linear-gradient(90deg,#0b1b2ff2 0%,#0b1b2fd8 27%,#0b1b2f55 54%,#0b1b2f00 80%),url('/hero-gauteng-branded.jpg') center center/cover;color:#fff;position:relative;display:flex;align-items:center;overflow:hidden}
.premium-hero:after{content:'';position:absolute;inset:auto 0 0;height:125px;background:linear-gradient(transparent,#0b1b2f7d);pointer-events:none}
.premium-hero-inner{position:relative;z-index:1;width:min(1400px,100%);margin:auto;padding:95px 32px 115px}
.hero-line{display:flex;gap:11px;align-items:center;color:#edc29b;font-size:.7rem;letter-spacing:.2em;font-weight:800;margin-bottom:28px}
.hero-line-dot{height:7px;width:7px;border-radius:50%;background:#d79c67;box-shadow:0 0 0 5px #d79c6730}
.premium-hero h1{font-size:clamp(3.6rem,7vw,7.8rem);line-height:.99;letter-spacing:-.065em;max-width:850px;margin-bottom:28px;font-weight:800}
.premium-hero h1 em,.section-intro h2 em{font-style:normal;color:#e8b98e}
.premium-hero p{max-width:610px;color:#e4e9e9;font-size:clamp(1rem,1.3vw,1.24rem);line-height:1.7;margin-bottom:30px}
.premium-hero .button-row{gap:13px}
.premium-hero .btn,.closing-cta .btn,.driver-story .btn{min-height:53px;padding:14px 22px}
.hero-outline{border:1px solid #d4dadd8c;background:#ffffff0a;color:#fff;backdrop-filter:blur(10px)}
.hero-outline:hover{background:#ffffff22}
.hero-foot{position:absolute;left:32px;bottom:34px;color:#e5e9e9;font-size:.65rem;letter-spacing:.16em;display:flex;align-items:center;gap:13px}
.hero-foot strong{font-weight:600;letter-spacing:.04em;color:#e8ba8f}
.hero-foot-rule{height:1px;width:38px;background:var(--rw-navy)}
.hero-side-tag{position:absolute;right:30px;bottom:34px;z-index:1;color:#fff;font-size:.62rem;letter-spacing:.2em;font-weight:800;writing-mode:vertical-rl;transform:rotate(180deg)}
.value-ribbon{background:#152a3e;color:#fff;display:grid;grid-template-columns:repeat(3,1fr);padding:0 max(28px,calc((100vw - 1400px)/2));border-top:1px solid #81294070}
.value-ribbon>div{padding:25px 35px;border-right:1px solid #ffffff20;display:flex;gap:12px;align-items:center;justify-content:space-between}
.value-ribbon>div:last-child{border:0}
.value-ribbon span{color:#cf9d72;font-size:.65rem;font-weight:800;letter-spacing:.12em;white-space:nowrap}
.value-ribbon strong{font-size:.82rem;text-align:right}
.premium-section{max-width:1400px;margin:auto;padding:105px 28px 110px}
.section-intro{display:grid;grid-template-columns:1fr .48fr;gap:45px;align-items:end;margin-bottom:40px}
.section-intro h2{font-size:clamp(2.3rem,4.6vw,4.7rem);line-height:1.06;margin:0}
.section-intro p{font-size:1rem;color:#607080;line-height:1.8;margin-bottom:4px}
.section-intro h2 em{color:#be8558}
.service-editorial{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.service-tile{position:relative;min-height:530px;background:#142539;overflow:hidden;border-radius:4px}
.service-tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.service-tile:hover img{transform:scale(1.035)}
.service-tile:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#081a2bef 0%,#0b1a2b55 54%,transparent 80%)}
.service-overlay{position:absolute;z-index:1;left:34px;right:34px;bottom:30px;color:#fff}
.service-overlay>span{font-size:.66rem;color:#ebbc92;letter-spacing:.15em;font-weight:800}
.service-overlay h3{font-size:clamp(2rem,3vw,3.3rem);line-height:1.05;margin:13px 0 12px}
.service-overlay p{max-width:490px;color:#e2e8e8;margin-bottom:22px}
.service-overlay a{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid #deb186;padding-bottom:9px;font-size:.8rem;font-weight:800;color:#f1c8a1}
.platform-section{background:#101f30;color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7vw;padding:100px max(28px,calc((100vw - 1400px)/2));align-items:center}
.platform-copy h2,.driver-story h2{font-size:clamp(2.5rem,4vw,4.5rem);line-height:1.06;margin-bottom:22px}
.platform-copy>p,.driver-story-copy>p{color:#bfcbd0;line-height:1.8;max-width:560px;font-size:1rem}
.platform-links{display:grid;gap:0;margin-top:25px;max-width:525px}
.platform-links a{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #ffffff2a;padding:16px 3px;font-weight:700;font-size:.87rem}
.platform-links a:last-child{border-bottom:1px solid #ffffff2a}
.platform-links span{color:#d8a477;font-size:1.1rem}
.platform-visual{background:#f4f1e9;color:#142638;padding:28px 30px 22px;border-radius:12px;box-shadow:0 25px 80px #020b1677;max-width:600px;width:100%;justify-self:end;transform:rotate(1.5deg)}
.visual-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d3d8d5;padding-bottom:24px;color:#607181;font-size:.62rem;letter-spacing:.15em;font-weight:800}
.visual-mark{background:#132539;color:#fff;letter-spacing:-.08em;font-size:1.25rem;padding:11px;border-radius:5px}.visual-mark span{color:#cb9469}
.visual-route{padding:32px 6px 26px;display:grid;grid-template-columns:1fr 2fr;gap:7px 15px;align-items:center}
.visual-route small{font-size:.62rem;color:#7b8991;letter-spacing:.12em;font-weight:800}.visual-route strong{font-size:1.3rem}
.visual-route>span{height:34px;border-left:2px dashed #bd8b61;margin-left:2px}
.visual-progress{display:flex;justify-content:space-between;gap:5px;border-top:1px solid #d3d8d5;padding-top:25px}
.visual-progress span{position:relative;font-size:.66rem;color:#8a9499;padding-top:20px;text-align:center;flex:1}
.visual-progress span:before{content:'';position:absolute;top:0;left:calc(50% - 5px);height:10px;width:10px;border-radius:50%;background:#d5dcd9}
.visual-progress .complete{color:#247c68}.visual-progress .complete:before{background:#247c68}.visual-progress .current{color:#b27848;font-weight:800}.visual-progress .current:before{background:var(--rw-navy);box-shadow:0 0 0 5px #81294032}
.visual-caption{font-size:.68rem;color:#71808b;text-align:right;margin-top:25px}
.driver-story{display:grid;grid-template-columns:1fr 1fr;min-height:560px}
.driver-story-photo{background:url('/owner-driver-branded.jpg') center 50%/cover}
.driver-story-copy{background:#e7ded3;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:75px clamp(35px,6vw,100px)}
.driver-story-copy h2{color:#182c40}.driver-story-copy>p{color:#536472;margin-bottom:26px}
.closing-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;max-width:1400px;margin:auto;padding:95px 28px}
.closing-cta h2{font-size:clamp(2.7rem,5vw,5rem);margin-bottom:8px}.closing-cta p{color:#5f7080;margin:0}
.local-disclaimer{background:#e9eceb;color:#697987;text-align:center;font-size:.7rem;padding:13px 20px}
.fleet-hero{min-height:440px;background:linear-gradient(90deg,#0c1c30f2,#0c1c30bd 38%,#0c1c3040),url('/fleet-burgundy.webp') center 48%/cover;display:flex;align-items:center;color:#fff}
.fleet-hero>div{width:min(1400px,100%);margin:auto;padding:70px 28px}.fleet-hero h1{font-size:clamp(3rem,5.5vw,5.7rem);line-height:1.04}.fleet-hero p{max-width:620px;color:#e2e7e8;line-height:1.7}.fleet-hero .btn{margin-top:12px}
.fleet-content{padding-top:85px}.fleet-list{border-top:1px solid #c9d2d1}.fleet-item{display:grid;grid-template-columns:70px 1fr 1fr 34px;gap:20px;align-items:center;padding:24px 10px;border-bottom:1px solid #c9d2d1}.fleet-item>span:first-child{color:#bf8a60;font-size:.7rem;font-weight:800}.fleet-item strong{font-size:1.5rem}.fleet-item>span:nth-child(3){color:#617282;font-size:.8rem}.fleet-item a{font-size:1.3rem;color:#ad794f}
@media(max-width:1000px){.premium-hero{min-height:650px}.value-ribbon>div{padding:20px}.value-ribbon{grid-template-columns:1fr 1fr 1fr}.value-ribbon>div{display:block}.value-ribbon strong{display:block;text-align:left;margin-top:5px}.section-intro{grid-template-columns:1fr 1fr}.platform-section{gap:35px}}
@media(max-width:760px){.premium-hero{min-height:660px;background-position:58% center;background-image:linear-gradient(90deg,#0b1b2ff2 0%,#0b1b2fbd 55%,#0b1b2f69 100%),url('/hero-gauteng-branded.jpg')}.premium-hero-inner{padding:75px 24px 100px}.premium-hero h1{font-size:clamp(3.2rem,12vw,5.4rem)}.hero-side-tag{display:none}.hero-foot{left:24px;bottom:25px}.value-ribbon{grid-template-columns:1fr}.value-ribbon>div{padding:15px 24px;display:flex;border-right:0;border-bottom:1px solid #ffffff20}.value-ribbon strong{margin:0;text-align:right}.premium-section{padding:70px 18px}.section-intro{display:block}.section-intro p{margin-top:22px}.service-editorial{grid-template-columns:1fr}.service-tile{min-height:460px}.service-overlay{left:24px;right:24px}.platform-section{grid-template-columns:1fr;padding:75px 24px}.platform-visual{justify-self:center;transform:none}.driver-story{grid-template-columns:1fr}.driver-story-photo{min-height:310px}.driver-story-copy{padding:60px 24px}.closing-cta{display:block;padding:75px 24px}.closing-cta .btn{margin-top:25px}.fleet-item{grid-template-columns:32px 1fr 26px;gap:10px}.fleet-item>span:nth-child(3){grid-column:2;grid-row:2}.fleet-item a{grid-column:3;grid-row:1/3}.fleet-hero{min-height:500px}}
@media(prefers-reduced-motion:reduce){.service-tile img{transition:none}}
