@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root { --navy:#07111f; --blue:#154b9b; --blue-soft:#eaf1fb; --ink:#152235; --muted:#6d7782; --line:#dce2e5; --paper:#f7f8f6; --red:#d71920; --white:#fff; --max:1240px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:'DM Sans',Arial,sans-serif; font-size:16px; line-height:1.6; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; }
.container { width:min(var(--max),calc(100% - 64px)); margin:0 auto; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:fixed; left:16px; top:-60px; z-index:100; padding:10px 14px; color:#fff; background:var(--red); }
.skip-link:focus { top:16px; }
.utility-bar { color:rgba(255,255,255,.74); background:var(--navy); border-bottom:1px solid rgba(255,255,255,.12); font-size:.69rem; letter-spacing:.03em; }
.utility-inner { display:flex; justify-content:space-between; align-items:center; min-height:34px; }
.utility-links { display:flex; gap:22px; }
.utility-links a:hover,.footer-links a:hover { color:var(--red); }
.site-header { position:sticky; top:0; z-index:10; color:var(--ink); background:#fff; box-shadow:0 1px 0 rgba(15,30,45,.06); }
.navbar { display:flex; align-items:center; justify-content:space-between; min-height:78px; }
.brand { display:block; width:180px; }
.brand img { width:100%; height:auto; }
.nav-menu { display:flex; align-items:center; gap:25px; font-size:.82rem; font-weight:600; letter-spacing:.02em; }
.nav-menu a { position:relative; color:var(--ink); transition:color .2s ease; }
.nav-menu a:hover,.nav-menu a.active { color:var(--red); }
.nav-menu a.active::after { position:absolute; right:0; bottom:-12px; left:0; height:2px; background:var(--red); content:''; }
.nav-menu .nav-cta { display:inline-flex; gap:10px; align-items:center; padding:12px 18px; color:#fff; background:var(--red); }
.nav-menu .nav-cta:hover { color:#fff; background:#b9151b; }
.menu-toggle { display:none; border:0; background:transparent; }
.eyebrow { margin:0 0 18px; color:var(--red); font-size:.67rem; font-weight:700; letter-spacing:.17em; line-height:1.4; text-transform:uppercase; }
.eyebrow span { color:#929aa0; margin:0 5px; }
.eyebrow.light { color:rgba(255,255,255,.7); }
h1,h2,h3,p { margin-top:0; }
h1,h2 { font-family:'Playfair Display',Georgia,serif; font-weight:500; letter-spacing:-.04em; line-height:1.03; }
h1 { margin-bottom:18px; font-size:clamp(3.2rem,6.5vw,5.7rem); }
h2 { margin-bottom:22px; font-size:clamp(2.7rem,5vw,5rem); }
h1 em,h2 em { font-weight:500; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:16px; min-height:46px; padding:12px 18px; border:1px solid transparent; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; transition:background .2s ease,color .2s ease,border-color .2s ease; }
.button-primary { color:#fff; background:var(--blue); }
.button-primary:hover { color:#fff; background:#0f3979; }
.text-link { display:inline-flex; align-items:center; gap:14px; padding-bottom:4px; border-bottom:1px solid currentColor; color:var(--ink); font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.text-link:hover { color:var(--red); }
.hero .text-link { color:#fff; border-color:rgba(255,255,255,.68); }

.hero { display:grid; position:relative; grid-template-columns:1fr; min-height:500px; overflow:hidden; background:#0e294e; }
.hero-copy-panel { position:relative; z-index:2; display:flex; align-items:center; background:transparent; }
.hero-copy-inner { width:min(var(--max),calc(100% - 64px)); margin:0 auto; padding:58px 0 48px; }
.hero-copy-inner > .eyebrow { color:#fff; }
.hero-copy-inner > .eyebrow span { color:rgba(255,255,255,.72); }
.hero-copy-inner h1 { max-width:580px; color:#fff; text-shadow:0 2px 22px rgba(7,17,31,.22); }
.hero-copy-inner h1 em { color:#dce9f8; }
.hero-description { max-width:365px; margin-bottom:22px; color:rgba(255,255,255,.84); font-size:1rem; }
.hero-actions { display:flex; gap:26px; align-items:center; }
.trust-row { display:flex; flex-wrap:wrap; gap:19px; margin-top:24px; color:rgba(255,255,255,.82); font-size:.7rem; }
.trust-row b { margin-right:6px; color:var(--red); font-size:.85rem; }
.hero-image-panel { position:absolute; inset:0; z-index:0; min-height:500px; overflow:hidden; }
.hero-image-panel::before { position:absolute; inset:0; z-index:1; width:100%; background:linear-gradient(90deg,rgba(7,17,31,.78) 0%,rgba(7,17,31,.55) 30%,rgba(21,71,132,.23) 55%,rgba(7,17,31,.08) 100%),linear-gradient(180deg,rgba(21,71,132,.25),transparent 68%); content:''; pointer-events:none; }
.hero-image-panel img { width:100%; height:100%; object-fit:cover; object-position:63% center; }

.section { padding:112px 0; }
.services { position:relative; padding-top:88px; padding-bottom:102px; background:linear-gradient(180deg,#edf3fa 0%,#fff 38%,#fff 100%); }
.services::before { position:absolute; top:0; right:0; left:0; height:4px; background:linear-gradient(90deg,var(--blue),#2c69b9,var(--blue)); content:''; }
.section-intro { display:grid; grid-template-columns:1.05fr .95fr; gap:90px; align-items:end; }
.section-intro h2 { color:var(--navy); }
.section-intro h2 em { color:#3e4b5d; }
.section-intro-side { max-width:470px; padding:22px 0 18px 28px; color:#50627a; border-left:2px solid var(--blue); }
.section-intro-side p { max-width:430px; margin-bottom:27px; text-align:justify; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:46px; border-top:1px solid var(--line); }
.service-item { padding:0 26px 30px 0; border-top:3px solid var(--blue); border-right:1px solid rgba(21,75,155,.22); background:#fff; box-shadow:0 15px 35px rgba(7,17,31,.07); }
.service-item + .service-item { padding-left:26px; }
.service-item:last-child { padding-right:0; border-right:0; }
.service-image-link { position:relative; display:block; margin:0 0 20px; overflow:hidden; }
.service-image-link::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 56%,rgba(21,75,155,.18)); content:''; pointer-events:none; }
.service-image-link img { width:100%; height:220px; object-fit:cover; transition:transform .6s ease; }
.service-image-link:hover img { transform:scale(1.035); }
.service-number { margin:0 0 5px; padding-left:26px; color:var(--red); font-size:.65rem; font-weight:700; letter-spacing:.1em; }
.service-item h3 { margin-bottom:7px; padding-left:26px; font-size:1.08rem; }
.service-item h3 a:hover { color:var(--red); }
.service-item > p:last-child { max-width:260px; margin-bottom:0; padding-left:26px; color:var(--muted); font-size:.86rem; line-height:1.5; }

.foundation { position:relative; overflow:hidden; color:#fff; background:radial-gradient(circle at 88% 18%,rgba(43,105,185,.55),transparent 28%),linear-gradient(135deg,#07111f 0%,#0b2340 52%,#154b9b 100%); }
.foundation::before { position:absolute; top:-190px; right:-110px; width:520px; height:520px; border:1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.018); content:''; }
.foundation-grid { position:relative; z-index:1; display:grid; grid-template-columns:.78fr 1.22fr; gap:82px; align-items:center; }
.foundation-intro { max-width:475px; }
.foundation-intro h2 { margin-bottom:24px; color:#fff; }
.foundation-intro h2 em { color:#c7dbf3; }
.foundation-intro > p:not(.eyebrow) { margin-bottom:30px; color:rgba(255,255,255,.72); line-height:1.6; }
.foundation-intro .button-primary { background:var(--red); box-shadow:0 12px 24px rgba(0,0,0,.2); }
.foundation-intro .button-primary:hover { background:#ef3439; }
.foundation-cards { display:grid; gap:14px; }
.foundation-card { display:grid; grid-template-columns:52px 1fr; gap:20px; padding:24px 28px 25px; border:1px solid rgba(255,255,255,.18); background:linear-gradient(105deg,rgba(255,255,255,.12),rgba(255,255,255,.045)); box-shadow:0 14px 30px rgba(0,0,0,.14); transition:transform .25s ease,border-color .25s ease,background .25s ease; }
.foundation-card:hover { border-color:rgba(255,255,255,.42); background:linear-gradient(105deg,rgba(255,255,255,.17),rgba(255,255,255,.07)); transform:translateX(8px); }
.foundation-number { color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.13em; }
.foundation-label { margin:0 0 8px; color:#c7dbf3; font-size:.66rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.foundation-card h3 { max-width:620px; margin:0; color:rgba(255,255,255,.9); font-family:'DM Sans',Arial,sans-serif; font-size:clamp(1rem,1.35vw,1.2rem); font-weight:400; line-height:1.5; }
.value-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); margin-top:8px; border-top:1px solid rgba(255,255,255,.2); }
.value-list span { padding:12px 18px 12px 0; color:rgba(255,255,255,.9); font-family:'DM Sans',Arial,sans-serif; font-size:1rem; font-weight:400; line-height:1.5; border-bottom:1px solid rgba(255,255,255,.2); }
.value-list span:nth-child(even) { padding-left:18px; border-left:1px solid rgba(255,255,255,.2); }

.difference { position:relative; overflow:hidden; background:radial-gradient(circle at 8% 85%,rgba(21,75,155,.11),transparent 30%),linear-gradient(135deg,#f6f9fc 0%,#eaf1fb 100%); }
.difference::before { position:absolute; top:0; right:0; left:0; height:5px; background:linear-gradient(90deg,var(--navy),var(--blue),#5d8dca); content:''; }
.difference::after { position:absolute; right:-160px; bottom:-260px; width:520px; height:520px; border:1px solid rgba(21,75,155,.12); border-radius:50%; box-shadow:0 0 0 34px rgba(21,75,155,.035),0 0 0 70px rgba(21,75,155,.025); content:''; }
.difference-grid { position:relative; z-index:1; display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:center; }
.difference h2 { color:var(--navy); }
.difference h2 em { color:#3e4b5d; }
.benefit-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.benefit { min-height:182px; padding:22px 20px 20px; border:1px solid rgba(21,75,155,.16); border-top:3px solid var(--blue); background:rgba(255,255,255,.88); box-shadow:0 14px 28px rgba(7,17,31,.08); transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.benefit:nth-child(2) { border-top-color:#2c69b9; }
.benefit:nth-child(3) { border-top-color:#3e78bf; }
.benefit:nth-child(4) { border-top-color:var(--red); }
.benefit:hover { border-color:rgba(21,75,155,.35); box-shadow:0 20px 35px rgba(7,17,31,.14); transform:translateY(-8px); }
.benefit-number { display:inline-grid; width:32px; height:32px; margin-bottom:26px; place-items:center; color:#fff; background:var(--blue); border-radius:50%; font-size:.62rem; font-weight:700; letter-spacing:.08em; }
.benefit:nth-child(4) .benefit-number { background:var(--red); }
.benefit p { margin:0; color:#3f5874; font-size:.86rem; line-height:1.5; }

.trusted { color:#fff; background:var(--navy); }
.trusted-inner { display:flex; justify-content:space-between; align-items:center; gap:50px; min-height:128px; }
.trusted-inner .eyebrow { margin:0; white-space:nowrap; }
.trusted-list { display:flex; align-items:center; justify-content:flex-end; gap:22px; color:rgba(255,255,255,.72); font-family:'Playfair Display',Georgia,serif; font-size:1.04rem; }
.trusted-list i { width:1px; height:28px; background:rgba(255,255,255,.25); }

.final-cta { position:relative; min-height:570px; overflow:hidden; color:var(--navy); background:#e7ecec; }
.final-cta > img,.final-cta-shade { position:absolute; inset:0; width:100%; height:100%; }
.final-cta > img { object-fit:cover; object-position:center; }
.final-cta-shade { background:linear-gradient(90deg,rgba(248,249,247,.97) 0%,rgba(248,249,247,.91) 33%,rgba(248,249,247,.2) 64%,rgba(248,249,247,.05) 100%); }
.final-cta-content { position:relative; z-index:1; display:flex; flex-direction:column; justify-content:center; min-height:570px; }
.final-cta-content h2 { margin-bottom:21px; }
.final-cta-content h2 em { color:#3e4b5d; }
.final-cta-content > p:not(.eyebrow) { max-width:350px; margin-bottom:28px; color:#596573; }

.site-footer { color:rgba(255,255,255,.68); background:var(--navy); }
.footer-grid { display:grid; grid-template-columns:1.4fr .8fr 1fr; gap:70px; padding:74px 0 64px; }
.brand-footer { margin-bottom:22px; filter:brightness(0) invert(1); }
.footer-brand > p { max-width:280px; color:rgba(255,255,255,.5); font-size:.86rem; }
.footer-label { margin-bottom:16px; color:#fff; font-size:.67rem; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.footer-links { display:grid; gap:8px; color:rgba(255,255,255,.56); font-size:.84rem; }
.footer-bottom { display:flex; justify-content:space-between; gap:24px; padding:20px 0 25px; border-top:1px solid rgba(255,255,255,.14); color:rgba(255,255,255,.4); font-size:.68rem; }
.footer-credit { color:rgba(255,255,255,.55); }
.footer-bottom div { display:flex; gap:8px; }
.footer-bottom a:hover { color:#fff; }

@media (max-width:1100px) {
  .nav-menu { gap:16px; }
  .nav-menu a { font-size:.74rem; }
  .hero-copy-inner { padding-right:35px; }
  .trusted-list { gap:14px; font-size:.92rem; }
}
@media (max-width:820px) {
  .container { width:min(var(--max),calc(100% - 40px)); }
  .utility-inner > span { display:none; }
  .utility-inner { justify-content:flex-end; min-height:32px; }
  .utility-links { gap:12px; font-size:.61rem; }
  .navbar { min-height:72px; }
  .brand { width:164px; }
  .menu-toggle { display:grid; gap:5px; width:40px; padding:8px 0; cursor:pointer; }
  .menu-toggle span:not(.sr-only) { display:block; width:27px; height:2px; margin-left:auto; background:var(--navy); }
  .nav-menu { position:absolute; top:104px; right:20px; left:20px; display:none; align-items:stretch; flex-direction:column; gap:0; padding:14px; background:#fff; box-shadow:0 20px 40px rgba(0,0,0,.16); }
  .nav-menu.is-open { display:flex; }
  .nav-menu a { padding:11px 10px; font-size:.84rem; }
  .nav-menu a.active::after { right:auto; bottom:5px; left:10px; width:22px; }
  .nav-menu .nav-cta { margin-top:5px; justify-content:space-between; }
  .hero { display:grid; min-height:560px; }
  .hero-copy-inner { width:min(var(--max),calc(100% - 40px)); margin:0 auto; padding:68px 0 54px; }
  .hero-image-panel { min-height:560px; }
  .hero-image-panel img { min-height:560px; object-position:63% center; }
  h1 { font-size:clamp(3.35rem,14vw,5.7rem); }
  .section { padding:80px 0; }
  .section-intro,.story-grid,.foundation-grid,.difference-grid { grid-template-columns:1fr; gap:26px; }
  .section-intro-side { padding:0; }
  .service-grid { grid-template-columns:1fr; margin-top:46px; }
  .service-item,.service-item + .service-item { padding:0 0 30px; margin-bottom:30px; border-right:0; border-bottom:1px solid var(--line); }
  .service-item:last-child { padding-bottom:0; margin-bottom:0; border-bottom:0; }
  .service-image-link img { height:190px; }
  .difference-grid { gap:44px; }
  .benefit-grid { grid-template-columns:repeat(2,1fr); gap:20px 0; }
  .benefit { min-height:125px; }
  .trusted-inner { align-items:flex-start; flex-direction:column; justify-content:center; gap:20px; min-height:200px; }
  .trusted-list { flex-wrap:wrap; justify-content:flex-start; gap:10px 14px; font-size:.92rem; }
  .final-cta,.final-cta-content { min-height:580px; }
  .final-cta > img { object-position:58% center; }
  .final-cta-shade { background:linear-gradient(90deg,rgba(248,249,247,.97) 0%,rgba(248,249,247,.83) 63%,rgba(248,249,247,.18) 100%); }
  .footer-grid { grid-template-columns:1fr 1fr; gap:42px 24px; }
  .footer-brand { grid-column:1/-1; }
}
@media (max-width:520px) {
  .container { width:min(var(--max),calc(100% - 32px)); }
  .utility-links span { display:none; }
  .hero-copy-inner { width:min(var(--max),calc(100% - 32px)); }
  .hero-actions { align-items:flex-start; flex-direction:column; gap:20px; }
  .trust-row { gap:10px 15px; font-size:.65rem; }
  .story-stats { grid-template-columns:1fr; }
  .story-stats div,.story-stats div + div { padding:14px 0; border-right:0; border-bottom:1px solid var(--line); }
  .story-stats div:last-child { border-bottom:0; }
  .benefit-grid { grid-template-columns:1fr 1fr; }
  .benefit { padding:0 10px; }
  .trusted-list i { display:none; }
  .final-cta > img { object-position:63% center; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-brand { grid-column:auto; }
  .footer-bottom { align-items:flex-start; flex-direction:column; }
  .footer-bottom div { flex-wrap:wrap; }
}

/* Refined About Us principles layout */
.about-principles { position:relative; overflow:hidden; padding:110px 0; color:var(--ink); background:linear-gradient(135deg,#f7f8f6 0%,#eaf1fb 100%); }
.about-principles::after { position:absolute; right:-170px; bottom:-250px; width:520px; height:520px; border:1px solid rgba(21,75,155,.14); border-radius:50%; box-shadow:0 0 0 34px rgba(21,75,155,.035),0 0 0 70px rgba(21,75,155,.025); content:''; }
.about-principles-shell { position:relative; z-index:1; display:grid; grid-template-columns:.78fr 1.22fr; gap:88px; align-items:start; }
.about-principles-lead { position:sticky; top:130px; }
.about-principles-lead h2 { margin:0 0 24px; color:var(--navy); }
.about-principles-lead h2 em { color:#3e4b5d; }
.about-principles-lead > p:not(.eyebrow) { max-width:330px; margin-bottom:44px; color:#607085; line-height:1.6; }
.principle-signature { display:flex; align-items:baseline; gap:12px; padding-top:18px; border-top:1px solid rgba(21,75,155,.22); }
.principle-signature span { color:var(--blue); font-size:.76rem; font-weight:700; letter-spacing:.18em; }
.principle-signature small { color:#7c8996; font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; }
.about-principles-list { border-top:1px solid rgba(21,75,155,.26); }
.principle-row { display:grid; grid-template-columns:48px 1fr 30px; gap:18px; align-items:start; padding:28px 0 30px; border-bottom:1px solid rgba(21,75,155,.22); transition:padding .25s ease,background .25s ease; }
.principle-row:hover { padding-right:16px; padding-left:16px; background:rgba(255,255,255,.58); }
.principle-index { color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.13em; }
.principle-kicker { margin:0 0 8px; color:var(--blue); font-size:.66rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.principle-copy h3 { margin:0 0 10px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.55rem; font-weight:500; }
.principle-copy > p:last-child { max-width:620px; margin:0; color:#607085; font-size:.92rem; line-height:1.6; }
.principle-arrow { color:var(--blue); font-size:1.1rem; transition:transform .25s ease,color .25s ease; }
.principle-row:hover .principle-arrow { color:var(--red); transform:translate(3px,-3px); }
.about-principles .about-values-list { max-width:540px; margin-top:14px; border-top:1px solid rgba(21,75,155,.2); }
.about-principles .about-values-list span { padding:10px 14px 10px 0; color:#526274; font-size:.88rem; border-bottom:1px solid rgba(21,75,155,.2); }
.about-principles .about-values-list span:nth-child(even) { padding-left:14px; border-left:1px solid rgba(21,75,155,.2); }

@media (max-width:820px) {
  .about-principles { padding:80px 0; }
  .about-principles-shell { grid-template-columns:1fr; gap:44px; }
  .about-principles-lead { position:static; }
  .about-principles-lead > p:not(.eyebrow) { max-width:520px; margin-bottom:30px; }
}

/* About page */
.about-hero { position:relative; min-height:300px; overflow:hidden; color:#fff; background:#07111f; }
.about-hero > img,.about-hero-shade { position:absolute; inset:0; width:100%; height:100%; }
.about-hero > img { object-fit:cover; object-position:center; }
.about-hero-shade { background:linear-gradient(90deg,rgba(7,17,31,.88) 0%,rgba(7,17,31,.62) 35%,rgba(7,17,31,.18) 69%,rgba(7,17,31,.05) 100%),linear-gradient(180deg,rgba(21,75,155,.2),transparent 70%); }
.about-hero-content { position:relative; z-index:1; display:flex; align-items:flex-start; flex-direction:column; justify-content:center; min-height:300px; }
.about-hero-content h1 { margin:0; color:#fff; font-size:clamp(3rem,6vw,5.4rem); text-shadow:0 2px 20px rgba(0,0,0,.18); }
.about-intro { background:var(--paper); }
.about-intro-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:74px; align-items:stretch; }
.about-story-visual { position:relative; min-height:0; height:100%; overflow:hidden; background:#07111f; }
.about-story-visual > img,.about-story-visual-shade { position:absolute; inset:0; width:100%; height:100%; }
.about-story-visual > img { object-fit:cover; object-position:center; }
.about-story-visual-shade { background:linear-gradient(180deg,rgba(7,17,31,.82) 0%,rgba(7,17,31,.18) 42%,rgba(7,17,31,.5) 100%),linear-gradient(90deg,rgba(7,17,31,.6),rgba(7,17,31,.08) 78%); }
.about-story-visual-copy { position:absolute; top:34px; right:28px; left:28px; z-index:1; }
.about-story-visual-copy .eyebrow { margin-bottom:18px; }
.about-story-visual-copy h2 { margin:0; color:#fff; }
.about-story-visual-copy h2 em { color:#c7dbf3; }
.about-intro-copy { max-width:560px; padding-left:32px; border-left:2px solid var(--blue); color:#526274; }
.about-intro-copy p { margin-bottom:22px; line-height:1.7; }
.about-intro-copy p:last-child { margin-bottom:0; }
.about-story-facts { display:grid; grid-template-columns:repeat(3,1fr); margin-top:32px; border-top:1px solid rgba(21,75,155,.22); }
.about-story-facts span { padding:14px 14px 0 0; color:var(--blue); font-size:.7rem; font-weight:700; letter-spacing:.08em; line-height:1.4; text-transform:uppercase; border-right:1px solid rgba(21,75,155,.18); }
.about-story-facts span + span { padding-left:14px; }
.about-story-facts span:last-child { border-right:0; }
.about-ceo { padding:76px 0; color:#fff; background:var(--navy); }
.about-ceo-grid { display:grid; grid-template-columns:.35fr 1.65fr; gap:70px; align-items:center; }
.about-ceo-mark { display:flex; flex-direction:column; padding-left:25px; border-left:3px solid var(--red); }
.about-ceo-mark span { color:#c7dbf3; font-family:'Playfair Display',Georgia,serif; font-size:3.8rem; line-height:1; }
.about-ceo-mark small { max-width:120px; margin-top:12px; color:rgba(255,255,255,.56); font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; }
.about-ceo blockquote { max-width:850px; margin:0 0 22px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.55rem,2.6vw,2.6rem); font-style:italic; font-weight:500; line-height:1.16; }
.about-ceo-name { margin:0; color:#c7dbf3; font-size:.78rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.about-ceo-name span { color:rgba(255,255,255,.55); font-size:.66rem; font-weight:400; }
.about-principles { position:relative; overflow:hidden; padding:112px 0; color:#fff; background:linear-gradient(135deg,#07111f,#0d2b50 60%,#154b9b); }
.about-principles::after { position:absolute; right:-180px; bottom:-280px; width:560px; height:560px; border:1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow:0 0 0 36px rgba(255,255,255,.025),0 0 0 74px rgba(255,255,255,.018); content:''; }
.about-principles-heading { position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.1fr; gap:80px; align-items:end; margin-bottom:52px; }
.about-principles-heading .eyebrow { grid-column:1/-1; margin-bottom:-50px; }
.about-principles-heading h2 { margin:0; color:#fff; }
.about-principles-heading h2 em { color:#c7dbf3; }
.about-principles-heading > p:last-child { max-width:390px; margin:0; color:rgba(255,255,255,.72); line-height:1.6; }
.principle-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.principle-grid article { min-height:220px; padding:26px 26px 28px; border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(255,255,255,.13),rgba(255,255,255,.045)); box-shadow:0 16px 32px rgba(0,0,0,.14); transition:transform .25s ease,border-color .25s ease; }
.principle-grid article:hover { border-color:rgba(255,255,255,.48); transform:translateY(-8px); }
.principle-grid article > span { display:block; margin-bottom:44px; color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.12em; }
.principle-grid h3 { margin-bottom:12px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:1.55rem; font-weight:500; }
.principle-grid p { margin:0; color:rgba(255,255,255,.7); font-size:.9rem; line-height:1.6; }
.about-values-list { display:grid; grid-template-columns:repeat(2,1fr); margin-top:6px; border-top:1px solid rgba(255,255,255,.2); }
.about-values-list span { padding:8px 12px 8px 0; color:rgba(255,255,255,.78); font-size:.82rem; border-bottom:1px solid rgba(255,255,255,.2); }
.about-values-list span:nth-child(even) { padding-left:12px; border-left:1px solid rgba(255,255,255,.2); }
.about-stats { background:linear-gradient(180deg,#f7f8f6,#eaf1fb); }
.about-stats-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:90px; align-items:center; }
.about-stats h2 { margin:0; color:var(--navy); }
.about-stats h2 em { color:#3e4b5d; }
.stat-list { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid rgba(21,75,155,.25); border-bottom:1px solid rgba(21,75,155,.25); }
.stat-list div { min-height:128px; padding:20px 18px 18px 0; border-right:1px solid rgba(21,75,155,.2); }
.stat-list div + div { padding-left:18px; }
.stat-list div:last-child { border-right:0; }
.stat-list strong { display:block; margin-bottom:8px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.55rem; font-weight:500; }
.stat-list span { color:#607085; font-size:.78rem; line-height:1.45; }
.about-cta { position:relative; overflow:hidden; color:#fff; background:linear-gradient(105deg,#07111f,#154b9b); }
.about-cta::after { position:absolute; top:-220px; right:-100px; width:500px; height:500px; border:1px solid rgba(255,255,255,.12); border-radius:50%; content:''; }
.about-cta-inner { position:relative; z-index:1; display:flex; align-items:flex-end; justify-content:space-between; gap:50px; min-height:360px; padding-top:80px; padding-bottom:80px; }
.about-cta-inner h2 { margin:0; color:#fff; }
.about-cta-inner h2 em { color:#c7dbf3; }
.about-cta-inner .button-primary { flex:none; background:var(--red); }
.about-cta-inner .button-primary:hover { background:#ef3439; }

@media (max-width:820px) {
  .about-hero,.about-hero-content { min-height:260px; }
  .about-hero > img { object-position:64% center; }
  .about-intro-grid,.about-stats-grid { grid-template-columns:1fr; gap:34px; }
  .about-story-visual { min-height:430px; }
  .about-intro-copy { padding-left:0; padding-top:24px; border-top:2px solid var(--blue); border-left:0; }
  .about-story-facts { grid-template-columns:1fr; }
  .about-story-facts span,.about-story-facts span + span { padding:12px 0; border-right:0; border-bottom:1px solid rgba(21,75,155,.18); }
  .about-story-facts span:last-child { border-bottom:0; }
  .about-ceo-grid { grid-template-columns:1fr; gap:28px; }
  .about-ceo-mark { padding-left:18px; }
  .about-principles-heading { grid-template-columns:1fr; gap:26px; margin-bottom:34px; }
  .about-principles-heading .eyebrow { grid-column:auto; margin-bottom:0; }
  .principle-grid { grid-template-columns:1fr; }
  .principle-grid article { min-height:180px; }
  .principle-grid article > span { margin-bottom:24px; }
  .about-cta-inner { align-items:flex-start; flex-direction:column; justify-content:center; min-height:420px; }
  .stat-list { width:100%; }
}
@media (max-width:520px) {
  .about-hero-content { padding-top:0; }
  .about-hero-content > p:not(.eyebrow) { font-size:1rem; }
  .stat-list { grid-template-columns:1fr; }
  .stat-list div,.stat-list div + div { min-height:auto; padding:16px 0; border-right:0; border-bottom:1px solid rgba(21,75,155,.2); }
  .stat-list div:last-child { border-bottom:0; }
}

/* Final light treatment for the redesigned principles section */
.about-principles { color:var(--ink); background:linear-gradient(135deg,#f7f8f6 0%,#eaf1fb 100%); }
.about-principles::after { border-color:rgba(21,75,155,.14); box-shadow:0 0 0 34px rgba(21,75,155,.035),0 0 0 70px rgba(21,75,155,.025); }
.about-principles .about-values-list { border-top-color:rgba(21,75,155,.2); }
.about-principles .about-values-list span { color:#526274; border-bottom-color:rgba(21,75,155,.2); }
.about-principles .about-values-list span:nth-child(even) { border-left-color:rgba(21,75,155,.2); }

/* Services page */
.services-page-intro { background:var(--paper); }
.services-page-intro-grid { display:grid; grid-template-columns:.92fr 1.08fr; gap:100px; align-items:end; }
.services-page-intro h2 { margin:0; color:var(--navy); }
.services-page-intro h2 em { color:#3e4b5d; }
.services-page-lede { max-width:520px; padding-left:32px; color:#526274; border-left:2px solid var(--blue); }
.services-page-lede p { margin-bottom:28px; line-height:1.7; }
.service-catalogue { padding:76px 0 120px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 36%,#f7f8f6 100%); }
.catalogue-heading { display:block; margin-bottom:46px; }
.catalogue-kicker { max-width:290px; }
.catalogue-kicker > p:not(.eyebrow) { margin:0 0 24px; color:#607085; font-size:.9rem; line-height:1.6; }
.catalogue-kicker > span { color:var(--blue); font-size:.62rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.catalogue-heading h2 { max-width:900px; margin:12px 0 0; color:var(--navy); }
.catalogue-heading h2 em { color:#3e4b5d; }
.catalogue-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.catalogue-card { min-height:390px; overflow:hidden; background:#07111f; box-shadow:0 18px 38px rgba(7,17,31,.1); }
.catalogue-card-wide { grid-column:span 2; min-height:440px; }
.catalogue-card a { position:relative; display:block; height:100%; min-height:inherit; color:#fff; }
.catalogue-card img,.catalogue-card-shade { position:absolute; inset:0; width:100%; height:100%; }
.catalogue-card img { object-fit:cover; transition:transform .7s ease; }
.catalogue-card:hover img { transform:scale(1.04); }
.catalogue-card-shade { background:linear-gradient(180deg,rgba(7,17,31,.04) 18%,rgba(7,17,31,.82) 100%); }
.catalogue-card-wide .catalogue-card-shade { background:linear-gradient(90deg,rgba(7,17,31,.78) 0%,rgba(7,17,31,.3) 55%,rgba(7,17,31,.12) 100%); }
.catalogue-card > a > div { position:absolute; right:28px; bottom:28px; left:28px; z-index:1; }
.catalogue-card-wide > a > div { right:auto; max-width:560px; }
.catalogue-number { display:block; margin-bottom:14px; color:#ff4a4f; font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.catalogue-card h3 { margin:0 0 10px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.55rem,2.5vw,2.2rem); font-weight:500; }
.catalogue-card p { max-width:500px; margin:0 0 18px; color:rgba(255,255,255,.76); font-size:.88rem; line-height:1.55; }
.catalogue-link { color:#c7dbf3; font-size:.66rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.service-protocol { position:relative; overflow:hidden; padding:112px 0; color:#fff; background:linear-gradient(135deg,#07111f,#0d2b50 62%,#154b9b); }
.service-protocol::after { position:absolute; right:-160px; bottom:-260px; width:520px; height:520px; border:1px solid rgba(255,255,255,.13); border-radius:50%; box-shadow:0 0 0 34px rgba(255,255,255,.025),0 0 0 70px rgba(255,255,255,.018); content:''; }
.protocol-heading { position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.05fr .45fr; gap:48px; align-items:end; margin-bottom:38px; }
.protocol-title .eyebrow { margin-bottom:18px; }
.protocol-heading h2 { margin:0; color:#fff; }
.protocol-heading h2 em { color:#c7dbf3; }
.protocol-heading > p { max-width:420px; margin:0; color:rgba(255,255,255,.7); line-height:1.6; }
.protocol-stat { padding-left:24px; border-left:1px solid rgba(255,255,255,.28); }
.protocol-stat strong { display:block; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:2.1rem; font-weight:500; line-height:1; }
.protocol-stat span { display:block; margin-top:8px; color:#c7dbf3; font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.protocol-stat i { display:block; width:32px; height:2px; margin:18px 0 12px; background:var(--red); }
.protocol-stat small { display:block; color:rgba(255,255,255,.56); font-size:.72rem; line-height:1.45; }
.protocol-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.protocol-grid article { min-height:245px; padding:25px 26px; border:1px solid rgba(255,255,255,.19); background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.045)); }
.protocol-grid article > span { display:block; margin-bottom:46px; color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.protocol-grid h3 { margin:0 0 12px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:1.42rem; font-weight:500; }
.protocol-grid p { margin:0; color:rgba(255,255,255,.68); font-size:.86rem; line-height:1.6; }
.services-cta { position:relative; overflow:hidden; color:#fff; background:linear-gradient(105deg,#07111f,#154b9b); }
.services-cta::after { position:absolute; top:-240px; right:-100px; width:540px; height:540px; border:1px solid rgba(255,255,255,.13); border-radius:50%; content:''; }
.services-cta-inner { position:relative; z-index:1; display:flex; align-items:flex-end; justify-content:space-between; gap:50px; min-height:330px; padding-top:70px; padding-bottom:70px; }
.services-cta h2 { margin:0; color:#fff; }
.services-cta h2 em { color:#c7dbf3; }
.services-cta .button-primary { flex:none; background:var(--red); }
.services-cta .button-primary:hover { background:#ef3439; }

@media (max-width:820px) {
  .services-page-intro-grid { grid-template-columns:1fr; gap:34px; }
  .services-page-lede { padding-left:0; padding-top:24px; border-top:2px solid var(--blue); border-left:0; }
  .catalogue-heading { display:block; }
  .catalogue-kicker { max-width:520px; margin-bottom:28px; }
  .catalogue-heading h2 { margin-top:18px; }
  .catalogue-grid { grid-template-columns:1fr; }
  .catalogue-card-wide { grid-column:auto; }
  .protocol-heading { grid-template-columns:1fr; gap:26px; }
  .protocol-stat { padding-top:20px; padding-left:0; border-top:1px solid rgba(255,255,255,.25); border-left:0; }
  .protocol-grid { grid-template-columns:1fr; }
  .protocol-grid article { min-height:190px; }
  .protocol-grid article > span { margin-bottom:24px; }
  .services-cta-inner { align-items:flex-start; flex-direction:column; justify-content:center; min-height:400px; }
}

/* Reimagined About Us footprint section */
.about-stats { position:relative; overflow:hidden; color:#fff; background:radial-gradient(circle at 92% 15%,rgba(43,105,185,.58),transparent 28%),linear-gradient(120deg,#07111f 0%,#0c294b 58%,#154b9b 100%); }
.about-stats::after { position:absolute; right:-180px; bottom:-280px; width:560px; height:560px; border:1px solid rgba(255,255,255,.14); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:''; }
.about-stats-grid { position:relative; z-index:1; grid-template-columns:.78fr 1.22fr; gap:78px; }
.about-stats h2 { color:#fff; }
.about-stats h2 em { color:#c7dbf3; }
.about-stats .eyebrow { color:#ff4a4f; }
.stat-list { gap:14px; border:0; }
.stat-list div,.stat-list div + div { min-height:174px; padding:24px 22px; border:1px solid rgba(255,255,255,.18); background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); transition:transform .25s ease,border-color .25s ease; }
.stat-list div:hover { border-color:rgba(255,255,255,.44); transform:translateY(-7px); }
.stat-list div:last-child { border-right:1px solid rgba(255,255,255,.18); }
.stat-list strong { margin-bottom:18px; color:#fff; font-size:2rem; }
.stat-list span { color:rgba(255,255,255,.68); font-size:.78rem; line-height:1.55; }

@media (max-width:820px) {
  .about-stats-grid { grid-template-columns:1fr; gap:38px; }
  .stat-list div,.stat-list div + div { min-height:150px; }
}

/* Our Fleet page */
.fleet-banner > img { object-position:center center; }
.fleet-intro { background:var(--paper); }
.fleet-intro-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:end; }
.fleet-intro h2 { margin:0; color:var(--navy); }
.fleet-intro h2 em { color:#3e4b5d; }
.fleet-intro-copy { max-width:590px; padding-left:32px; color:#526274; border-left:2px solid var(--blue); }
.fleet-intro-copy p { margin:0 0 18px; line-height:1.7; }
.fleet-intro-copy .text-link { display:inline-block; margin-top:10px; color:var(--navy); }
.fleet-showcase { padding:84px 0 112px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 30%,#f7f8f6 100%); }
.fleet-showcase-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; margin-bottom:42px; }
.fleet-showcase-heading .eyebrow { margin-bottom:0; color:var(--red); font-size:1.15rem; letter-spacing:.14em; }
.fleet-showcase-heading h2 { max-width:780px; margin:0; color:var(--navy); font-size:clamp(2.7rem,4.7vw,5.1rem); line-height:.96; text-align:right; }
.fleet-showcase-heading h2 em { color:#3e4b5d; }
.fleet-category { display:grid; grid-template-columns:.9fr 1.1fr; min-height:430px; margin-bottom:18px; overflow:hidden; background:#fff; box-shadow:0 18px 42px rgba(7,17,31,.08); }
.fleet-category:nth-of-type(odd) { grid-template-columns:1.1fr .9fr; }
.fleet-category:nth-of-type(odd) .fleet-category-copy { order:2; }
.fleet-category:nth-of-type(odd) .fleet-category-image { order:1; }
.fleet-category-copy { display:flex; flex-direction:column; justify-content:center; padding:50px 58px; }
.fleet-category-copy .eyebrow { margin-bottom:18px; color:var(--red); }
.fleet-category-copy h3 { margin:0 0 16px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:clamp(2rem,3.2vw,3rem); font-weight:500; }
.fleet-category-copy > p:not(.eyebrow) { max-width:520px; margin:0; color:#607085; line-height:1.65; }
.fleet-category-image { min-height:430px; overflow:hidden; background:#152337; }
.fleet-category-image img { width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .7s ease; }
.fleet-category:hover .fleet-category-image img { transform:scale(1.025); }
.fleet-list { display:grid; grid-template-columns:repeat(2,1fr); margin:28px 0 0; padding:0; border-top:1px solid rgba(21,75,155,.2); list-style:none; }
.fleet-list li { padding:13px 12px 13px 0; border-bottom:1px solid rgba(21,75,155,.16); color:var(--navy); font-size:.86rem; }
.fleet-list li:nth-child(even) { padding-left:14px; border-left:1px solid rgba(21,75,155,.16); }
.fleet-care { position:relative; overflow:hidden; padding:112px 0; color:#fff; background:radial-gradient(circle at 92% 12%,rgba(43,105,185,.52),transparent 28%),linear-gradient(125deg,#07111f 0%,#0c294b 58%,#154b9b 100%); }
.fleet-care::after { position:absolute; right:-180px; bottom:-310px; width:600px; height:600px; border:1px solid rgba(255,255,255,.15); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:''; }
.fleet-care-grid { position:relative; z-index:1; display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:end; }
.fleet-care h2 { margin:0; color:#fff; }
.fleet-care h2 em { color:#c7dbf3; }
.fleet-care-copy > p { max-width:570px; margin:0 0 36px; color:rgba(255,255,255,.72); line-height:1.7; }
.fleet-care-points { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.fleet-care-points > div { min-height:145px; padding:20px; border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); }
.fleet-care-points span { display:block; margin-bottom:26px; color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.fleet-care-points h3 { margin:0 0 8px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:1.3rem; font-weight:500; }
.fleet-care-points p { margin:0; color:rgba(255,255,255,.62); font-size:.78rem; line-height:1.5; }
.fleet-cta { background:linear-gradient(105deg,#07111f,#154b9b); }

@media (max-width:820px) {
  .fleet-intro-grid { grid-template-columns:1fr; gap:34px; }
  .fleet-intro-copy { padding-top:24px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .fleet-showcase-heading { display:block; }
  .fleet-showcase-heading h2 { margin-top:18px; text-align:left; }
  .fleet-category,.fleet-category:nth-of-type(odd) { grid-template-columns:1fr; }
  .fleet-category:nth-of-type(odd) .fleet-category-copy,.fleet-category:nth-of-type(odd) .fleet-category-image { order:initial; }
  .fleet-category-copy { padding:38px 28px; }
  .fleet-category-image { min-height:300px; }
  .fleet-care-grid { grid-template-columns:1fr; gap:38px; }
  .fleet-care-points { grid-template-columns:1fr; }
  .fleet-care-points > div { min-height:auto; }
}

/* Corporate Services page */
.corporate-banner > img { object-position:center center; }
.corporate-intro { background:var(--paper); }
.corporate-intro-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:end; }
.corporate-intro h2 { margin:0; color:var(--navy); }
.corporate-intro h2 em { color:#3e4b5d; }
.corporate-intro-copy { max-width:590px; padding-left:32px; color:#526274; border-left:2px solid var(--blue); }
.corporate-intro-copy p { margin:0 0 18px; line-height:1.7; }
.corporate-intro-copy .text-link { display:inline-block; margin-top:10px; color:var(--navy); }
.corporate-solutions { padding:86px 0 112px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 28%,#f7f8f6 100%); }
.corporate-solutions-heading { display:grid; grid-template-columns:1.1fr .9fr; gap:70px; align-items:center; margin-bottom:46px; }
.corporate-solutions-heading h2 { margin:0; color:var(--navy); }
.corporate-solutions-heading h2 em { color:#3e4b5d; }
.corporate-solutions-heading > p { max-width:430px; margin:0 0 4px; color:#607085; line-height:1.7; }
.corporate-solution-grid { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid rgba(21,75,155,.24); border-left:1px solid rgba(21,75,155,.24); }
.corporate-solution-grid article { min-height:320px; padding:26px 24px 28px; border-right:1px solid rgba(21,75,155,.24); border-bottom:1px solid rgba(21,75,155,.24); background:rgba(255,255,255,.32); transition:transform .25s ease,background .25s ease; }
.corporate-solution-grid article:hover { background:#fff; transform:translateY(-6px); }
.corporate-solution-grid article > span { display:block; margin-bottom:62px; color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.corporate-solution-grid h3 { margin:0 0 12px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.55rem; font-weight:500; }
.corporate-solution-grid p { min-height:92px; margin:0 0 22px; color:#607085; font-size:.86rem; line-height:1.6; }
.corporate-solution-grid a { color:var(--navy); font-size:.65rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.corporate-solution-grid a span { margin-left:5px; color:var(--red); font-size:.9rem; }
.corporate-standard { position:relative; overflow:hidden; padding:112px 0; color:#fff; background:radial-gradient(circle at 90% 15%,rgba(43,105,185,.55),transparent 28%),linear-gradient(125deg,#07111f 0%,#0c294b 58%,#154b9b 100%); }
.corporate-standard::after { position:absolute; right:-180px; bottom:-300px; width:580px; height:580px; border:1px solid rgba(255,255,255,.15); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:''; }
.corporate-standard-grid { position:relative; z-index:1; display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:end; }
.corporate-standard h2 { margin:0; color:#fff; }
.corporate-standard h2 em { color:#c7dbf3; }
.corporate-standard-copy > p { max-width:540px; margin:0 0 34px; color:rgba(255,255,255,.72); line-height:1.7; }
.corporate-protocol { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.corporate-protocol > div { min-height:170px; padding:20px; border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(255,255,255,.12),rgba(255,255,255,.04)); }
.corporate-protocol span { display:block; margin-bottom:26px; color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.corporate-protocol h3 { margin:0 0 8px; color:#fff; font-family:'Playfair Display',Georgia,serif; font-size:1.3rem; font-weight:500; }
.corporate-protocol p { margin:0; color:rgba(255,255,255,.64); font-size:.78rem; line-height:1.5; }
.corporate-cta { background:linear-gradient(105deg,#07111f,#154b9b); }

@media (max-width:820px) {
  .corporate-intro-grid { grid-template-columns:1fr; gap:34px; }
  .corporate-intro-copy { padding-top:24px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .corporate-solutions-heading { grid-template-columns:1fr; gap:26px; }
  .corporate-solution-grid { grid-template-columns:repeat(2,1fr); }
  .corporate-solution-grid article { min-height:290px; }
  .corporate-solution-grid article > span { margin-bottom:34px; }
  .corporate-standard-grid { grid-template-columns:1fr; gap:38px; }
  .corporate-protocol { grid-template-columns:1fr; }
  .corporate-protocol > div { min-height:auto; }
}

@media (max-width:520px) {
  .corporate-solution-grid { grid-template-columns:1fr; }
}

/* Individual vehicle catalogue */
.fleet-filter { position:relative; z-index:2; color:var(--ink); background:#fff; border-bottom:1px solid rgba(21,75,155,.16); box-shadow:0 10px 24px rgba(7,17,31,.04); }
.fleet-filter-inner { display:flex; align-items:center; justify-content:space-between; gap:28px; min-height:76px; }
.fleet-filter-label { color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; white-space:nowrap; }
.fleet-filter-links { display:flex; align-items:center; gap:4px; }
.fleet-filter-button { position:relative; padding:13px 15px 12px; border:0; color:#526274; background:transparent; cursor:pointer; font:600 .74rem 'DM Sans',Arial,sans-serif; letter-spacing:.02em; transition:color .2s ease,background .2s ease; }
.fleet-filter-button::after { position:absolute; right:15px; bottom:5px; left:15px; height:2px; background:var(--red); content:''; opacity:0; transform:scaleX(.4); transition:opacity .2s ease,transform .2s ease; }
.fleet-filter-button:hover,.fleet-filter-button.is-active { color:var(--navy); background:var(--blue-soft); }
.fleet-filter-button.is-active::after { opacity:1; transform:scaleX(1); }
.fleet-showcase { padding:86px 0 118px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 25%,#f7f8f6 100%); }
.fleet-showcase-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:90px; align-items:end; margin-bottom:62px; }
.fleet-showcase-heading h2 { max-width:720px; margin:0; color:var(--navy); font-size:clamp(2.7rem,4.7vw,5.1rem); line-height:.96; text-align:left; }
.fleet-showcase-heading h2 em { color:#3e4b5d; }
.fleet-showcase-heading > p { max-width:520px; margin:0 0 5px; padding-left:28px; color:#607085; border-left:2px solid var(--blue); line-height:1.7; }
.fleet-catalogue-group { margin-bottom:66px; scroll-margin-top:110px; }
.fleet-catalogue-group:last-child { margin-bottom:0; }
.fleet-group-heading { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:17px; padding-bottom:12px; border-bottom:1px solid rgba(21,75,155,.26); }
.fleet-group-heading .eyebrow { margin:0 0 4px; }
.fleet-group-heading h3 { margin:0; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:clamp(1.45rem,2.1vw,2.1rem); font-weight:500; line-height:1.05; }
.fleet-group-heading > span { color:#607085; font-size:.76rem; }
.vehicle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.vehicle-card { display:flex; min-width:0; flex-direction:column; background:#fff; box-shadow:0 14px 30px rgba(7,17,31,.07); transition:transform .25s ease,box-shadow .25s ease; }
.vehicle-card:hover { box-shadow:0 22px 40px rgba(7,17,31,.13); transform:translateY(-5px); }
.vehicle-card > img { width:100%; height:184px; object-fit:cover; object-position:center; }
.vehicle-card-body { display:flex; flex:1; flex-direction:column; padding:20px 21px 22px; }
.vehicle-kicker { margin:0 0 7px; color:var(--red); font-size:.58rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; }
.vehicle-card h4 { margin:0 0 7px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.3rem; font-weight:500; line-height:1.15; }
.vehicle-card-body > p:not(.vehicle-kicker) { min-height:45px; margin:0 0 14px; color:#607085; font-size:.82rem; line-height:1.45; }
.vehicle-card ul { display:grid; gap:7px; margin:0 0 20px; padding:0; list-style:none; }
.vehicle-card li { position:relative; padding-left:17px; color:#3f5874; font-size:.75rem; line-height:1.35; }
.vehicle-card li::before { position:absolute; top:.52em; left:0; width:6px; height:6px; border:1px solid var(--blue); border-radius:50%; content:''; }
.vehicle-card a { align-self:flex-start; margin-top:auto; padding-bottom:3px; color:var(--navy); border-bottom:1px solid currentColor; font-size:.65rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.vehicle-card a span { margin-left:7px; color:var(--red); font-size:.9rem; }

@media (max-width:1100px) {
  .fleet-filter-inner { align-items:flex-start; flex-direction:column; gap:10px; padding-top:16px; padding-bottom:14px; }
  .fleet-filter-links { width:100%; overflow-x:auto; padding-bottom:2px; }
  .fleet-filter-button { flex:0 0 auto; }
  .fleet-showcase-heading { gap:50px; }
}

@media (max-width:820px) {
  .fleet-showcase { padding:76px 0 92px; }
  .fleet-showcase-heading { grid-template-columns:1fr; gap:28px; margin-bottom:48px; }
  .fleet-showcase-heading > p { max-width:600px; padding-top:22px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .fleet-group-heading { align-items:flex-start; flex-direction:column; gap:10px; }
  .vehicle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:520px) {
  .fleet-filter-label { font-size:.6rem; }
  .fleet-filter-button { padding-right:11px; padding-left:11px; font-size:.68rem; }
  .fleet-filter-button::after { right:11px; left:11px; }
  .vehicle-grid { grid-template-columns:1fr; }
  .vehicle-card > img { height:210px; }
  .fleet-catalogue-group { margin-bottom:52px; }
}

/* Our Clients page */
.clients-banner > img { object-position:center center; }
.clients-intro { background:var(--paper); }
.clients-intro-grid { display:grid; grid-template-columns:.9fr 1.1fr; gap:100px; align-items:end; }
.clients-intro h2 { margin:0; color:var(--navy); }
.clients-intro h2 em { color:#3e4b5d; }
.clients-intro-copy { max-width:590px; padding-left:32px; color:#526274; border-left:2px solid var(--blue); }
.clients-intro-copy p { margin:0 0 18px; line-height:1.7; }
.clients-intro-copy .text-link { display:inline-block; margin-top:10px; color:var(--navy); }
.client-groups { position:relative; overflow:hidden; padding:98px 0 112px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 32%,#f7f8f6 100%); }
.client-groups::before { position:absolute; left:-270px; bottom:-430px; width:780px; height:780px; border:1px solid rgba(21,75,155,.12); border-radius:50%; box-shadow:0 0 0 30px rgba(21,75,155,.025),0 0 0 76px rgba(21,75,155,.018),0 0 0 132px rgba(21,75,155,.014); content:''; }
.client-groups::after { position:absolute; left:35px; bottom:-210px; width:590px; height:410px; border-top:1px solid rgba(21,75,155,.06); border-radius:50%; transform:rotate(-19deg); content:''; }
.client-groups-heading { position:relative; z-index:1; display:grid; grid-template-columns:minmax(240px,.78fr) 1px minmax(0,1.22fr); gap:46px; align-items:center; margin-bottom:62px; }
.client-groups-support { max-width:330px; }
.client-groups-support .eyebrow { margin-bottom:18px; }
.client-groups-rule { display:block; width:48px; height:2px; margin-bottom:23px; background:var(--red); }
.client-groups-description { max-width:315px; margin:0; color:#526274; font-size:.98rem; line-height:1.7; }
.client-groups-divider { display:block; width:1px; height:164px; background:rgba(21,75,155,.28); }
.client-groups-heading h2 { max-width:820px; margin:0; color:var(--navy); font-size:clamp(3.2rem,5vw,5rem); line-height:.98; text-align:left; }
.client-groups-heading h2 em { color:#3e4b5d; }
.client-group-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.client-group { padding:30px; border:1px solid rgba(21,75,155,.18); background:rgba(255,255,255,.62); box-shadow:0 14px 32px rgba(7,17,31,.05); }
.client-group-wide { grid-column:span 2; }
.client-group-label { display:flex; align-items:baseline; gap:18px; padding-bottom:20px; border-bottom:1px solid rgba(21,75,155,.18); }
.client-group-label > span { color:var(--red); font-size:.66rem; font-weight:700; letter-spacing:.14em; }
.client-group-label h3 { margin:0; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.55rem; font-weight:500; }
.client-logo-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:16px; border-top:1px solid rgba(21,75,155,.12); border-left:1px solid rgba(21,75,155,.12); }
.client-group-wide .client-logo-grid { grid-template-columns:repeat(4,1fr); }
 .client-group[aria-labelledby="regional-heading"] .client-logo-grid { grid-template-columns:repeat(2,1fr); }
 .client-group[aria-labelledby="regional-heading"] .client-logo-card { padding:14px; }
 .client-group[aria-labelledby="regional-heading"] .client-logo-image { max-width:260px; height:108px; }
 .client-group[aria-labelledby="regional-heading"] .client-logo-card:nth-child(3),
 .client-group[aria-labelledby="regional-heading"] .client-logo-card:nth-child(4) { overflow:visible; }
 .client-group[aria-labelledby="regional-heading"] .client-logo-image.regional-logo-full { width:100%; max-width:100%; height:108px; max-height:108px; object-fit:contain; object-position:center; }
 .client-group[aria-labelledby="diplomatic-heading"] .client-logo-card { min-height:224px; padding:20px 18px; overflow:visible; justify-content:flex-start; }
 .client-group[aria-labelledby="diplomatic-heading"] .client-logo-image.diplomatic-logo { width:auto; max-width:84%; height:150px; max-height:150px; margin-bottom:14px; object-fit:contain; object-position:center; }
 .client-group[aria-labelledby="diplomatic-heading"] .client-logo-card > span:last-child { display:block; max-width:100%; color:#526274; font-size:.78rem; line-height:1.3; text-align:center; }
.client-logo-card { display:flex; min-height:148px; flex-direction:column; align-items:center; justify-content:center; padding:18px; border-right:1px solid rgba(21,75,155,.12); border-bottom:1px solid rgba(21,75,155,.12); background:#fff; overflow:hidden; }
.client-logo-image { display:block; width:100%; max-width:210px; height:92px; object-fit:contain; object-position:center; }
.client-logo-card > span:last-child { display:none; }
.client-logo-grid-eight .client-logo-card > span:last-child { display:block; max-width:100%; color:#526274; font-size:.72rem; line-height:1.25; text-align:center; }
.client-logo-grid-eight .client-logo-image { height:72px; }
.client-mark { display:block; color:#1686a5; font-family:Arial,sans-serif; font-size:1.4rem; font-weight:800; letter-spacing:-.04em; }
.client-mark-serif { color:#263a57; font-family:Georgia,serif; font-size:1.7rem; letter-spacing:.08em; }
.client-mark-blue { color:#1550a0; }
.client-mark-red { color:#d71926; }
.client-mark-green { color:#267a58; }
.client-mark-seal { color:#243e67; font-family:Georgia,serif; font-size:1.08rem; letter-spacing:.08em; }
.client-mark-flag { display:block; width:auto; height:auto; color:var(--navy); background:none; font-size:1.15rem; font-weight:700; letter-spacing:.08em; }
.clients-cta { background:linear-gradient(105deg,#07111f,#154b9b); }

/* Contact and quote pages */
.contact-hero > img,.quote-hero > img { object-position:center 58%; }
.contact-intro { padding:94px 0 102px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 34%,#f7f8f6 100%); }
.contact-intro-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:90px; align-items:start; }
.contact-intro h2 { margin:0 0 24px; color:var(--navy); }
.contact-intro h2 em { color:#3e4b5d; }
.contact-lead { max-width:400px; margin:0; color:#526274; line-height:1.75; }
.contact-details { display:grid; grid-template-columns:repeat(2,1fr); gap:0; margin-top:32px; border-top:1px solid rgba(21,75,155,.22); }
.contact-detail { padding:22px 22px 0 0; border-bottom:1px solid rgba(21,75,155,.22); }
.contact-detail:nth-child(even) { padding-left:22px; border-left:1px solid rgba(21,75,155,.22); }
.contact-detail:nth-last-child(-n+2) { padding-bottom:22px; }
.contact-detail-label { margin:0 0 8px; color:var(--red); font-size:.64rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.contact-detail a,.contact-detail span { color:var(--navy); font-size:.92rem; }
.contact-form-shell { padding-left:36px; border-left:2px solid var(--blue); }
.contact-form-shell h3 { margin:0 0 9px; color:var(--navy); font-family:'Playfair Display',Georgia,serif; font-size:1.75rem; font-weight:500; }
.contact-form-shell > p { margin:0 0 27px; color:#607085; font-size:.9rem; }
.contact-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 20px; }
.form-field { display:grid; gap:7px; }
.form-field-wide { grid-column:1/-1; }
.form-field label { color:var(--navy); font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.form-field input,.form-field select,.form-field textarea { width:100%; padding:13px 14px; border:1px solid #cbd6e2; border-radius:0; color:var(--ink); background:rgba(255,255,255,.78); font:inherit; font-size:.88rem; outline:none; transition:border-color .2s ease,box-shadow .2s ease,background .2s ease; }
.form-field textarea { min-height:128px; resize:vertical; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--blue); background:#fff; box-shadow:0 0 0 3px rgba(21,75,155,.1); }
.form-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; grid-column:1/-1; margin-top:3px; }
.form-note { margin:0; color:#7a8794; font-size:.72rem; line-height:1.45; }
.form-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.form-status { margin:0; color:var(--red); font-size:.72rem; line-height:1.45; }
.contact-experience { position:relative; overflow:hidden; padding:96px 0; color:#fff; background:radial-gradient(circle at 90% 10%,rgba(43,105,185,.54),transparent 30%),linear-gradient(125deg,#07111f 0%,#0c294b 58%,#154b9b 100%); }
.contact-experience::after { position:absolute; right:-180px; bottom:-310px; width:600px; height:600px; border:1px solid rgba(255,255,255,.14); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.025),0 0 0 78px rgba(255,255,255,.018); content:''; }
.contact-experience-grid { position:relative; z-index:1; display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:end; }
.contact-experience h2 { margin:0; color:#fff; }
.contact-experience h2 em { color:#c7dbf3; }
.contact-experience-copy { max-width:580px; margin:0; color:rgba(255,255,255,.72); line-height:1.75; }
.quote-section { padding:96px 0 112px; background:linear-gradient(180deg,#eaf1fb 0%,#f7f8f6 33%,#f7f8f6 100%); }
.quote-intro { display:grid; grid-template-columns:1.1fr .9fr; gap:76px; align-items:end; margin-bottom:52px; }
.quote-intro h2 { margin:0; color:var(--navy); font-size:clamp(2.7rem,4.4vw,4.7rem); }
.quote-intro h2 span { display:block; white-space:nowrap; }
.quote-intro h2 em { color:#3e4b5d; }
.quote-intro-copy { max-width:540px; margin:0; padding-left:32px; color:#526274; border-left:2px solid var(--blue); line-height:1.75; }
.quote-form-card { padding:38px; border:1px solid rgba(21,75,155,.18); background:rgba(255,255,255,.75); box-shadow:0 18px 42px rgba(7,17,31,.07); }
.quote-form-card .contact-form { gap:20px 24px; }

@media (max-width:820px) {
  .contact-intro-grid,.contact-experience-grid,.quote-intro { grid-template-columns:1fr; gap:38px; }
  .contact-form-shell { padding-top:28px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .quote-intro { margin-bottom:38px; }
  .quote-intro-copy { padding-top:24px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .contact-experience { padding:80px 0; }
  .quote-form-card { padding:24px; }
}

@media (max-width:520px) {
  .contact-intro { padding:76px 0 82px; }
  .contact-details { grid-template-columns:1fr; }
  .contact-detail:nth-child(even) { padding-left:0; border-left:0; }
  .contact-detail:nth-last-child(-n+2) { padding-bottom:0; }
  .contact-detail:last-child { padding-bottom:22px; }
  .contact-form { grid-template-columns:1fr; }
  .form-field-wide,.form-actions { grid-column:auto; }
  .quote-section { padding:78px 0 88px; }
  .quote-form-card { padding:20px 16px; }
}

@media (max-width:820px) {
  .clients-intro-grid { grid-template-columns:1fr; gap:34px; }
  .clients-intro-copy { padding-top:24px; padding-left:0; border-top:2px solid var(--blue); border-left:0; }
  .client-groups { padding-top:76px; }
  .client-groups-heading { grid-template-columns:1fr; gap:24px; margin-bottom:48px; }
  .client-groups-support { max-width:100%; }
  .client-groups-description { max-width:430px; }
  .client-groups-divider { width:100%; height:1px; }
  .client-groups-heading h2 { max-width:650px; text-align:left; }
  .client-group-grid { grid-template-columns:1fr; }
  .client-group-wide { grid-column:auto; }
  .client-group-wide .client-logo-grid,.client-logo-grid { grid-template-columns:repeat(2,1fr); }
}

@media (max-width:520px) {
  .client-group { padding:22px 16px; }
  .client-group-label { display:block; }
  .client-group-label > span { display:block; margin-bottom:10px; }
  .client-logo-card { min-height:128px; padding:14px; }
}
