:root{--ink:#102a43;--navy:#0d2236;--cream:#f5f2ea;--paper:#fbfaf7;--accent:#c2a46a;--muted:#61717d;--line:#d8d6cf;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--display:'Manrope','DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}.shell{width:min(1160px,calc(100% - 56px));margin-inline:auto}.skip-link{position:absolute;left:-999px;top:8px;background:white;padding:10px}.skip-link:focus{left:8px;z-index:10}.topline{background:var(--navy);color:#e1e6e8;font-size:12px;letter-spacing:.02em}.topline-inner{display:flex;justify-content:space-between;align-items:center;min-height:38px}.topline a{color:#fff}.topline strong{margin-left:8px;color:#ddc995;font-weight:600}.header{height:86px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;font:800 15px var(--display);letter-spacing:.08em}.brand-mark{width:38px;height:38px;border:1px solid var(--accent);color:var(--accent);display:grid;place-items:center;font:700 23px var(--serif);letter-spacing:0}.brand-sub{display:block;font:600 8px var(--sans);letter-spacing:.22em;color:#75828a;margin-top:1px}.header nav{display:flex;gap:38px;font-size:13px;color:#445766}.header nav a:hover,.text-link:hover{color:var(--accent)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;background:var(--accent);color:#142b3a;padding:16px 20px;font-size:13px;font-weight:700;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#d6c18e}.button span{font-size:17px}.button-small{padding:12px 16px;gap:18px;font-size:12px}.hero{background:var(--navy);color:#fff;position:relative;overflow:hidden;min-height:610px;display:flex;align-items:center}.hero-art{position:absolute;inset:0 0 0 42%;background:linear-gradient(90deg,var(--navy) 0%,rgba(13,34,54,.82) 15%,rgba(13,34,54,.15) 58%,rgba(13,34,54,.05) 100%),linear-gradient(0deg,rgba(13,34,54,.5),transparent 45%),url('assets/hero-coach-london.png') center 56%/cover no-repeat;opacity:.88}.hero-content{position:relative;z-index:1;padding-top:18px}.eyebrow,.section-label{font-size:10px;letter-spacing:.18em;font-weight:700}.eyebrow{color:#ddc995;display:flex;align-items:center;gap:10px}.eyebrow span{width:23px;height:1px;background:var(--accent)}h1,h2,h3,p{margin-top:0}h1,h2{font:700 clamp(48px,6.6vw,82px)/.99 var(--display);letter-spacing:-.065em;margin-bottom:22px}h1 em,h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.06em;color:#ddc995}.hero-copy{max-width:405px;color:#d5dfe4;font-size:15px;line-height:1.75;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:25px}.text-link{font-size:12px;font-weight:600}.text-link span{margin-left:8px;color:#ddc995;font-size:17px}.hero-note{position:absolute;top:390px;display:flex;align-items:center;gap:12px;color:#c5d1d6;font-size:10px;letter-spacing:.06em}.note-line{width:35px;height:1px;background:var(--accent)}.hero-stamp{position:absolute;right:max(28px,calc((100% - 1160px)/2));bottom:35px;width:125px;height:125px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;transform:rotate(8deg);font-size:8px;letter-spacing:.18em}.hero-stamp b{font:700 16px/.95 var(--display);text-align:center;letter-spacing:.02em}.intro{display:grid;grid-template-columns:1fr 1.55fr .75fr;gap:50px;padding-block:110px 120px}.section-label{color:#697983;display:flex;gap:12px;align-items:center}.section-label span{color:var(--accent)}.intro h2,.quote-copy h2{font-size:clamp(44px,5.4vw,68px)}.intro h2 em,.quote-copy h2 em{color:#927847}.intro-copy p{max-width:490px;color:#536570;font-size:14px;line-height:1.85}.under-link{display:inline-flex;gap:20px;margin-top:13px;border-bottom:1px solid #d6cbaF;padding-bottom:8px;font-size:12px;font-weight:700}.under-link span{color:var(--accent)}.intro-aside{border-left:1px solid var(--line);padding-left:30px;align-self:end}.aside-number{font:800 54px/.9 var(--display);letter-spacing:-.08em;color:#dfe3df}.aside-number span{font-size:13px;letter-spacing:.1em;color:var(--accent);margin-left:6px}.intro-aside p{margin-top:17px;color:#536570;font-size:12px;line-height:1.7}.aside-rule{height:1px;background:var(--line);margin:25px 0 14px}.aside-caption{font-size:8px;line-height:1.9;letter-spacing:.16em;color:#78858a}.services{padding:95px 0 105px;background:var(--navy);color:#fff}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:48px}.section-label.light{color:#b8c6cd}.section-head h2,.contact-inner h2{font-size:clamp(42px,5vw,62px);margin:22px 0 0}.section-head h2 em,.contact-inner h2 em{color:#ddc995}.section-head>p{max-width:300px;color:#bbc7cd;font-size:13px;line-height:1.8;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.2)}.service-card{padding:26px 28px 24px;background:var(--navy);min-height:270px;display:flex;flex-direction:column}.service-no{color:#91a3ad;font-size:9px;letter-spacing:.14em}.service-icon{font-size:22px;color:#ddc995;margin:20px 0 10px}.service-card h3{font:600 20px var(--display);margin-bottom:10px;letter-spacing:-.03em}.service-card p{font-size:12px;color:#b9c7ce;line-height:1.8;max-width:280px}.service-card>a{margin-top:auto;padding-top:18px;font-size:10px;color:#fff;font-weight:600}.service-card>a span{color:#ddc995;margin-left:10px}.quote-section{background:var(--cream);padding:105px 0}.quote-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:100px}.quote-copy h2{margin-top:40px}.quote-copy>p{max-width:310px;font-size:13px;color:#536570;line-height:1.9}.quote-contact{border-top:1px solid var(--line);margin-top:40px;padding-top:18px;display:flex;flex-direction:column;gap:5px}.quote-contact span{font-size:10px;color:#687982;letter-spacing:.12em;text-transform:uppercase}.quote-contact a{font:600 19px var(--display)}.quote-form{background:var(--paper);padding:34px 36px;box-shadow:0 14px 42px rgba(16,42,67,.06)}.form-heading{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:22px;font-size:9px;letter-spacing:.15em;font-weight:700;color:#687982}.quote-form label{display:flex;flex-direction:column;gap:7px;margin-bottom:17px;font-size:10px;color:#475a66;font-weight:700}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.quote-form input,.quote-form textarea{width:100%;border:0;border-bottom:1px solid #cfd3d0;background:transparent;padding:9px 0;font:13px var(--sans);color:var(--ink);outline:none;border-radius:0}.quote-form input:focus,.quote-form textarea:focus{border-color:var(--accent)}.quote-form textarea{resize:vertical}.form-submit{border:0;cursor:pointer;margin-top:6px}.form-note{margin:12px 0 0;color:#75828a;font-size:9px;line-height:1.6}.contact-band{background:#102a43;color:#fff;padding:80px 0}.contact-inner{display:flex;align-items:center;justify-content:space-between}.contact-inner .section-label{color:#e3d8c0}.contact-inner h2{margin-bottom:0}.contact-links{width:40%;display:flex;flex-direction:column}.contact-links>a{border-bottom:1px solid rgba(255,255,255,.35);padding:13px 0;font:500 15px var(--display);display:flex;justify-content:space-between;gap:8px}.contact-links>a small{font:700 8px var(--sans);letter-spacing:.15em;min-width:45px;align-self:center;color:#e3d8c0}.contact-links>a span{color:#ddc995}.contact-links p{font-size:10px;color:#e3d8c0;margin:15px 0 0 53px}footer{background:var(--navy);color:#c2ccd1;padding:25px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;font-size:10px}.brand-footer{color:#fff;font-size:13px}.brand-footer .brand-sub{color:#aab8be}.footer-inner>a:last-child{color:#ddc995}
@media(max-width:800px){.shell{width:min(100% - 36px,600px)}.header{height:auto;min-height:72px;flex-wrap:wrap;padding-block:10px;gap:8px}.header nav{display:flex;order:3;width:100%;overflow-x:auto;gap:18px;padding:2px 0 6px;white-space:nowrap;font-size:11px}.header>.button{margin-left:auto}.hero{min-height:650px;align-items:flex-start;padding-top:92px}.hero-art{inset:0;background-position:60% center;opacity:.58;background-image:linear-gradient(90deg,rgba(13,34,54,.96),rgba(13,34,54,.68) 55%,rgba(13,34,54,.24)),linear-gradient(0deg,rgba(13,34,54,.65),transparent),url('assets/hero-coach-london.png')}.hero-content{padding-top:10px}.hero-note{position:static;margin-top:48px}.hero-stamp{right:20px;bottom:20px;width:95px;height:95px;font-size:7px}.hero-stamp b{font-size:13px}.intro{grid-template-columns:1fr;gap:25px;padding-block:75px}.intro-copy{padding-left:0}.intro-aside{display:none}.section-head{display:block}.section-head>p{margin-top:20px}.services{padding:70px 0}.service-grid{grid-template-columns:1fr}.service-card{min-height:235px}.quote-section{padding:75px 0}.quote-layout{grid-template-columns:1fr;gap:36px}.quote-copy h2{margin-top:25px}.quote-contact{margin-top:25px}.quote-form{padding:25px 20px}.contact-band{padding:65px 0}.contact-inner{display:block}.contact-links{width:100%;margin-top:35px}.footer-inner{flex-wrap:wrap;gap:20px}.footer-inner>span{order:3;width:100%}}
@media(max-width:460px){.shell{width:calc(100% - 32px)}.topline-inner{font-size:10px;gap:8px}.topline-inner>span{max-width:180px}.topline strong{display:block;margin:0}.brand{font-size:13px}.brand-mark{width:34px;height:34px}.header>.button{font-size:0;padding:12px;gap:0}.header>.button span{font-size:17px}.header nav{display:flex}.hero{min-height:620px}.hero h1{font-size:54px}.hero-copy{max-width:330px;font-size:14px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.form-row{grid-template-columns:1fr;gap:0}.contact-links>a{font-size:12px}.contact-links>a small{min-width:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Search landing pages */
.page-hero{background:linear-gradient(105deg,#0d2236 0%,#102a43 72%,#23445b 100%);color:#fff;padding:96px 0 88px}.page-hero h1{font-size:clamp(44px,6vw,76px);max-width:900px;margin:26px 0 20px}.page-hero .hero-copy{max-width:680px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:80px;padding-block:80px 105px}.content-block{padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid var(--line)}.content-block h2{font:700 clamp(25px,3vw,34px)/1.15 var(--display);letter-spacing:-.04em;margin-bottom:15px}.content-block p,.content-block li{font-size:14px;line-height:1.9;color:#536570}.content-block ul{padding-left:20px}.content-block a:not(.under-link){text-decoration:underline;text-decoration-color:#c0aa79;text-underline-offset:3px}.contact-card{align-self:start;background:var(--cream);padding:28px;position:sticky;top:20px}.contact-card>span{color:#927847;font-size:9px;letter-spacing:.15em;font-weight:700}.contact-card h2{font:700 25px/1.15 var(--display);margin:17px 0 12px;letter-spacing:-.04em}.contact-card p{font-size:12px;color:#5c6c74;line-height:1.8}.contact-card>a{display:block;margin-top:15px;font-size:13px;font-weight:700}.faq-block details{border-bottom:1px solid var(--line);padding:14px 0}.faq-block summary{cursor:pointer;font-size:13px;font-weight:700}.faq-block details p{margin:10px 0 0}.page-hero .eyebrow{color:#ddc995}@media(max-width:800px){.content-layout{grid-template-columns:1fr;gap:10px;padding-block:55px 75px}.contact-card{position:static;order:-1}.page-hero{padding:70px 0}.page-hero h1{font-size:48px}.header nav{display:flex}}

.route-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-block:65px}.route-card{padding:23px;background:var(--cream);display:flex;flex-direction:column;min-height:150px;border:1px solid var(--line);transition:transform .2s,border-color .2s}.route-card:hover{transform:translateY(-2px);border-color:var(--accent)}.route-card small{font-size:9px;letter-spacing:.16em;color:#927847;font-weight:700}.route-card strong{font:700 17px var(--display);margin-top:15px}.route-card span{font-size:10px;margin-top:auto;padding-top:15px;font-weight:700}@media(max-width:760px){.route-grid{grid-template-columns:1fr 1fr;gap:9px;padding-block:40px}}@media(max-width:460px){.route-grid{grid-template-columns:1fr}}

.review-strip{background:#e8e5dc;padding:76px 0}.review-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:center}.review-rating{border-right:1px solid #ccc8bc;padding-right:50px}.review-score{font:800 76px/.98 var(--display);letter-spacing:-.08em;margin-top:25px;color:var(--ink)}.review-score span{font:500 22px var(--sans);letter-spacing:0;color:#927847;margin-left:6px}.review-rating p{font-size:12px;font-weight:700;margin:14px 0 0}.review-rating small{font-size:10px;font-weight:400;color:#687982}.review-copy h2{font:700 clamp(39px,4.8vw,58px)/1 var(--display);letter-spacing:-.06em;margin:20px 0}.review-copy h2 em{color:#927847;font-family:var(--serif);font-weight:400}.review-copy>p:not(.review-source){max-width:500px;color:#536570;font-size:13px;line-height:1.8}.review-actions{display:flex;align-items:center;gap:23px;margin-top:22px}.review-source{font-size:9px;color:#75828a;margin:16px 0 0}@media(max-width:800px){.review-layout{grid-template-columns:1fr;gap:30px}.review-rating{border:0;border-bottom:1px solid #ccc8bc;padding:0 0 24px}.review-score{font-size:65px;margin-top:14px}.review-actions{align-items:flex-start;flex-direction:column;gap:10px}}

/* Premium homepage and first-screen enquiry */
.hero{min-height:720px;align-items:stretch;padding-block:55px;background:#0b1d2d}
.hero-art{inset:0 0 0 25%;opacity:.74;background-image:linear-gradient(90deg,#0b1d2d 0%,rgba(11,29,45,.92) 20%,rgba(11,29,45,.28) 70%,rgba(11,29,45,.12) 100%),linear-gradient(0deg,rgba(11,29,45,.64),transparent 55%),url('assets/hero-coach-london.png');background-position:center,center,62% 54%}
.hero-layout{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.83fr);gap:clamp(38px,6vw,88px);align-items:center}
.hero-content{padding:0;max-width:590px}.hero-content h1{font-size:clamp(54px,6vw,78px);line-height:1.02;max-width:630px}.hero-content h1 em{display:inline-block;color:#ddc995}.hero-copy{max-width:455px;font-size:15px}.hero-proof{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:38px;color:#c5d1d6;font-size:8px;letter-spacing:.14em}.hero-proof i{display:block;width:3px;height:3px;border-radius:50%;background:#c2a46a}
.hero-form{width:100%;max-width:500px;justify-self:end;padding:27px 30px 23px;background:rgba(251,250,247,.98);border-top:3px solid var(--accent);box-shadow:0 26px 85px rgba(0,0,0,.28);color:var(--ink)}
.hero-form .form-heading{margin-bottom:9px;padding-bottom:13px;color:#7b878b}.hero-form .form-intro{font:500 14px var(--display);color:#536570;margin:0 0 17px}.hero-form label{margin-bottom:11px;font-size:9px}.hero-form input:not([type=checkbox]),.hero-form textarea{padding:8px 10px;border:1px solid #d9dcd8;background:#fff;font-size:12px}.hero-form input:focus,.hero-form textarea:focus{border-color:var(--accent);box-shadow:0 0 0 2px rgba(194,164,106,.18)}.hero-form .form-row{gap:11px}.hero-form .form-submit{width:100%;justify-content:space-between;padding:13px 16px;margin-top:2px}.hero-form .form-note{margin-top:9px;text-align:center;font-size:9px}.hero-form .form-note strong{color:#405665}.consent-line{display:grid!important;grid-template-columns:14px 1fr;gap:8px!important;align-items:start!important;font-size:9px!important;font-weight:400!important;line-height:1.5}.consent-line input{margin:1px 0 0;accent-color:#927847}.consent-line a{text-decoration:underline;text-underline-offset:2px}.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.quote-assurance{align-self:center;max-width:450px;border-left:1px solid #d8d6cf;padding:14px 0 14px 45px}.assurance-mark{display:grid;place-items:center;width:52px;height:52px;border:1px solid var(--accent);color:var(--accent);font:700 28px var(--serif)}.quote-assurance h3{font:700 35px/1.08 var(--display);letter-spacing:-.05em;margin:22px 0 12px}.quote-assurance p{font-size:13px;line-height:1.8;color:#536570;max-width:330px}.quote-assurance .button{margin-top:8px}
.contact-page-form{max-width:760px}.form-feedback{padding:14px 16px;margin:0 0 20px;background:#f4eee4;color:#334b5b;font-size:13px;line-height:1.65}.privacy-copy{max-width:780px;padding-block:70px 100px}.privacy-copy h1{font-size:clamp(42px,5vw,64px)}.privacy-copy h2{font:700 24px var(--display);letter-spacing:-.03em;margin:34px 0 12px}.privacy-copy p,.privacy-copy li{font-size:14px;color:#536570;line-height:1.85}.privacy-copy a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.hero-layout{grid-template-columns:minmax(0,1fr) minmax(350px,.9fr);gap:30px}.hero-form{padding:24px 22px}.hero-content h1{font-size:clamp(50px,6vw,64px)}}
@media(max-width:800px){.hero{min-height:0;padding-block:55px 50px}.hero-art{inset:0;background-image:linear-gradient(90deg,rgba(11,29,45,.94),rgba(11,29,45,.74)),linear-gradient(0deg,rgba(11,29,45,.4),transparent),url('assets/hero-coach-london.png');background-position:center,center,62% center}.hero-layout{grid-template-columns:1fr;gap:35px;align-items:start}.hero-content{max-width:620px}.hero-content h1{font-size:clamp(48px,9vw,68px)}.hero-proof{margin-top:25px}.hero-form{justify-self:stretch;max-width:620px;padding:25px 22px}.quote-assurance{max-width:none}.quote-section{padding:75px 0}}
@media(max-width:460px){.hero{padding-block:40px}.hero-content h1{font-size:48px}.hero-form{padding:22px 17px}.hero-form .form-row{grid-template-columns:1fr;gap:0}.hero-proof{font-size:7px;gap:8px}.quote-assurance{padding-left:24px}}

/* Mobile first interaction and legibility improvements */
.site-nav{display:contents}
.site-nav>summary{display:none}
.site-nav nav{display:flex}
.mobile-actions{display:none}
@media(max-width:800px){
  .site-nav{display:block;order:3;width:100%;position:relative}
  .site-nav>summary{display:flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 13px;border:1px solid rgba(255,255,255,.28);color:#fff;list-style:none;font-size:12px;font-weight:700;cursor:pointer}
  .site-nav>summary::-webkit-details-marker{display:none}
  .site-nav nav{display:none!important}
  .site-nav[open] nav{display:flex!important;position:absolute;z-index:20;top:calc(100% + 6px);left:0;right:0;width:100%;padding:9px;background:#102a43;border:1px solid rgba(255,255,255,.16);box-shadow:0 16px 36px rgba(0,0,0,.24);flex-direction:column;gap:0;white-space:normal;overflow:visible}
  .site-nav[open] nav a{display:flex;align-items:center;min-height:48px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.11);font-size:14px}
  .header{display:flex;align-items:center;gap:10px}
  .header>.button{margin-left:auto}
  .mobile-actions{position:fixed;z-index:50;left:0;right:0;bottom:0;display:grid;grid-template-columns:.82fr 1.18fr;gap:9px;padding:9px 16px calc(9px + env(safe-area-inset-bottom));background:rgba(16,42,67,.97);box-shadow:0 -8px 26px rgba(16,42,67,.18)}
  .mobile-actions a{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 14px;color:#fff;border:1px solid rgba(255,255,255,.4);font-size:14px;font-weight:700}
  .mobile-actions a:last-child{background:#927847;border-color:#927847}
  body{padding-bottom:76px}
  .topline-inner{min-height:34px}
  .content-layout{gap:28px}
  .contact-card{order:-1}
}
@media(max-width:460px){
  .shell{width:calc(100% - 32px)}
  .header{min-height:64px;padding-block:8px;gap:8px}
  .brand{font-size:12px;letter-spacing:.06em}
  .brand-mark{flex:0 0 34px}
  .header>.button{display:none}
  .site-nav{width:auto;margin-left:auto;order:0}
  .site-nav>summary{min-width:82px}
  .site-nav[open] nav{position:fixed;top:110px;left:16px;right:16px;width:auto}
  .hero{padding-block:34px 38px}
  .hero-content h1{font-size:clamp(40px,11.5vw,48px);line-height:1.05}
  .hero-copy{font-size:16px;line-height:1.7}
  .hero-proof{font-size:8px;line-height:1.6}
  .hero-form{padding:21px 16px}
  .hero-form label{font-size:12px;margin-bottom:13px}
  .hero-form input:not([type=checkbox]),.hero-form textarea{min-height:46px;padding:11px 10px;font-size:16px;border-radius:3px}
  .hero-form textarea{min-height:74px}
  .hero-form .form-row{grid-template-columns:1fr;gap:0}
  .consent-line{grid-template-columns:20px 1fr;font-size:12px!important;gap:9px!important}
  .consent-line input{width:20px;height:20px}
  .hero-form .form-submit{min-height:50px;font-size:15px}
  .hero-form .form-note{font-size:11px;line-height:1.55}
  .form-intro{font-size:15px!important;line-height:1.5}
  .page-hero{padding:54px 0}
  .page-hero h1{font-size:clamp(38px,10vw,48px);line-height:1.08}
  .content-layout{padding-block:38px 56px}
  .content-block p,.content-block li{font-size:16px;line-height:1.75}
  .contact-card{padding:22px}
  .contact-card>a{min-height:44px;display:flex;align-items:center}
  .route-grid{grid-template-columns:1fr;padding-block:28px}
  .route-card{min-height:132px}
  .review-strip,.contact-band{padding:52px 0}
  .review-copy>p:not(.review-source){font-size:15px;line-height:1.75}
  .review-actions .button{min-height:48px}
  .service-card{padding:24px;min-height:0}
  .service-card p{font-size:15px;line-height:1.7}
  .contact-links>a{font-size:14px;min-height:48px}
  .contact-links p{margin-left:0;font-size:12px}
  .footer-inner{padding-bottom:10px;gap:16px}
  .footer-inner>a,.footer-inner>span{font-size:12px}
  .mobile-actions a{min-height:50px}
}
@media(max-width:350px){
  .topline-inner>span{max-width:150px}
  .brand{font-size:11px}
  .brand-mark{width:30px;height:30px;flex-basis:30px}
  .hero-content h1{font-size:40px}
  .mobile-actions{padding-inline:10px}
}






/* Compact WhatsApp contact button floats above content without covering it */
.whatsapp-float{position:fixed!important;z-index:80;right:18px;bottom:24px;width:56px!important;height:56px!important;min-width:56px!important;min-height:56px!important;max-width:56px!important;max-height:56px!important;padding:0!important;margin:0;display:grid;place-items:center;box-sizing:border-box;overflow:hidden;border:0;border-radius:50%;background:#168b58;color:#fff;box-shadow:0 5px 18px rgba(10,50,34,.3);text-decoration:none;line-height:1;transition:transform .18s,background .18s}.whatsapp-float:hover{background:#117447;transform:translateY(-2px)}.whatsapp-float svg{display:block;width:29px;height:29px;max-width:29px;max-height:29px;fill:currentColor;flex:none}.whatsapp-float:focus-visible{outline:3px solid #ddc995;outline-offset:3px}
@media(max-width:800px){.whatsapp-float{right:16px;bottom:calc(86px + env(safe-area-inset-bottom));width:54px;height:54px;min-width:54px;min-height:54px;max-width:54px;max-height:54px}}
@media(max-width:460px){.whatsapp-float{right:14px;bottom:calc(84px + env(safe-area-inset-bottom));width:52px;height:52px;min-width:52px;min-height:52px;max-width:52px;max-height:52px}}

/* Premium Global Coach Company monogram */
.brand-mark{display:block;width:42px;height:42px;flex:0 0 42px;border:0;object-fit:contain}
.brand{gap:11px}
@media(max-width:460px){.brand-mark{width:36px;height:36px;flex-basis:36px}}

/* Enquiry form journey details and address suggestions */
.quote-form select{width:100%;border:1px solid #d9dcd8;background:#fff;padding:9px 10px;font:13px var(--sans);color:var(--ink);min-height:37px;border-radius:0}.quote-form select:focus{outline:2px solid rgba(194,164,106,.35);border-color:var(--accent)}.quote-form [data-return-date][hidden]{display:none!important}.quote-form label:has(>[data-address-autocomplete]){position:relative}.address-suggestions{position:absolute;z-index:30;top:100%;left:0;right:0;max-height:230px;overflow:auto;list-style:none;margin:-8px 0 0;padding:4px;background:#fff;border:1px solid #d9dcd8;box-shadow:0 10px 24px rgba(16,42,67,.16)}.address-suggestions[hidden]{display:none}.address-suggestions li{margin:0;padding:0}.address-suggestions button{width:100%;border:0;background:#fff;text-align:left;padding:10px;font:12px/1.45 var(--sans);color:var(--ink);cursor:pointer}.address-suggestions button:hover,.address-suggestions button:focus{background:var(--cream);outline:none}.address-attribution{margin:-7px 0 14px;color:#78858a;font-size:9px}.address-attribution a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:800px){.quote-form select{font-size:16px;min-height:46px}.address-suggestions button{font-size:14px;padding:12px}}
