/* ==========================================================================
   MisterFare — HOMEPAGE ONLY (loaded by index.php alone).
   Reproduces the approved homepage reference composition. Measurements are
   taken from the reference at a 1366px viewport:
     header ≈ 80px · content edge ≈ 40px · hero ≈ 577px
     headline ≈ 56px at ≈ 96px from hero top · four chips in one row
     Mister figure ≈ x 756–1163, bottom-aligned, ≈ 480px tall
     Ask Mister card at the right edge
     search card inside the hero bottom, ≈ x 30–1014, ≈ 185px tall
     7 service cards ≈ 168px wide (image ≈ 140px) · 4 tour cards ≈ 300px wide
   ========================================================================== */
body.mf .mf-header-row.mf-wrap{max-width:1440px;padding-inline:32px;min-height:80px}
body.mf .mf-header .mf-logo-tag{display:block}
body.mf .mf-nav a,body.mf .mf-more-btn{font-size:13.5px;padding:10px 10px}

.r2{--r2-navy:#1B2A5E;--r2-blue:#2A3F9D;--r2-orange:#F15A24;--r2-fill:#CF4416;--r2-ink:#16204A;--r2-muted:#5B6478;--r2-line:#E4E7EF;
  --r2-card-sh:0 4px 16px rgba(20,27,52,.09);--r2-panel-sh:0 18px 48px rgba(20,27,52,.20)}
.r2 .mf-wrap,.r2-wrap{max-width:1440px;margin-inline:auto;padding-inline:40px;box-sizing:border-box;width:100%}

/* ---------------- HERO ---------------- */
.r2-hero{position:relative;isolation:isolate;height:577px;overflow:hidden;background:#101836}
.r2-hero-bg{position:absolute;inset:0;z-index:-2}
.r2-hero-bg img{width:100%;height:100%;object-fit:cover;object-position:50% 52%}
.r2-hero::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(90deg,rgba(16,24,54,.86) 0%,rgba(16,24,54,.60) 30%,rgba(16,24,54,.16) 55%,rgba(16,24,54,.10) 78%,rgba(16,24,54,.28) 100%),
             linear-gradient(0deg,rgba(16,24,54,.55) 0%,rgba(16,24,54,0) 38%)}
.r2-hero-in{position:relative;height:100%;max-width:1440px;margin:0 auto;padding:0 40px;box-sizing:border-box}
.r2-copy{position:absolute;left:40px;top:96px;width:620px;z-index:3}
.r2-copy h1{font:700 56px/1.04 var(--mf-serif);color:#fff;margin:0 0 20px;letter-spacing:-.015em;text-shadow:0 2px 24px rgba(10,16,40,.35)}
.r2-copy h1 span{display:block;color:var(--r2-orange)}
.r2-copy p{font:500 18px/1.55 var(--mf-font);color:#fff;margin:0 0 22px;max-width:560px;text-shadow:0 1px 12px rgba(10,16,40,.7)}
.r2-chips{list-style:none;margin:0;padding:0;display:flex;gap:10px;flex-wrap:nowrap}
.r2-chips li{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font:600 13px/1 var(--mf-font);color:#fff;
  background:rgba(14,20,44,.62);border:1px solid rgba(255,255,255,.18);padding:10px 14px;border-radius:8px;backdrop-filter:blur(6px)}

/* Mister artwork slot — exact position from the reference. The approved
   transparent character (assets/mf/mister-hero.webp|png) drops in here. */
.r2-mister{position:absolute;left:calc(50% + 29px);top:22px;width:363px;height:550px;z-index:2;pointer-events:none}
.r2-mister img{width:100%;height:100%;object-fit:contain;object-position:top center;display:block;filter:drop-shadow(0 18px 30px rgba(8,12,30,.35))}

/* Ask Mister card — right edge */
.r2-ask{position:absolute;right:40px;top:44px;width:282px;z-index:4;background:#fff;border-radius:16px;box-shadow:var(--r2-panel-sh);padding:14px 14px 0;overflow:hidden}
.r2-ask-h{display:flex;align-items:center;gap:10px;padding:2px 2px 12px;border-bottom:1px solid #EEF0F5;margin-bottom:10px}
.r2-ask-h .mf-mister{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--r2-orange)}
.r2-ask-h strong{display:block;font:700 15px/1.2 var(--mf-font);color:var(--r2-ink)}
.r2-ask-h span{display:block;font-size:12.5px;color:var(--r2-muted)}
.r2-ask-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.r2-ask-list a{display:flex;align-items:center;gap:11px;min-height:44px;padding:0 12px;border-radius:10px;background:#fff;box-shadow:0 2px 8px rgba(20,27,52,.08);border:1px solid #EEF0F5;
  font:600 13.5px var(--mf-font);color:var(--r2-blue);text-decoration:none}
.r2-ask-list a:hover{border-color:#CFD5E8}
.r2-ask-list i{width:26px;height:26px;border-radius:50%;background:var(--r2-blue);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-style:normal}
.r2-ask-cta{margin:12px -14px 0;padding:12px 14px 14px;background:#fff;border-top:1px solid #EEF0F5}
.r2-ask-btn{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:10px;background:var(--r2-fill);color:#fff;font:700 15px var(--mf-font);cursor:pointer;box-shadow:0 8px 18px rgba(207,68,22,.28)}
.r2-ask-btn:hover{background:#B63A10}

/* Search card — inside the hero bottom */
.r2-search{position:absolute;left:30px;bottom:21px;width:984px;z-index:5;background:#fff;border-radius:14px;box-shadow:var(--r2-panel-sh);padding:14px 20px 20px;box-sizing:border-box}
.r2-tabs{display:flex;gap:8px;padding-bottom:14px;border-bottom:1px solid #EEF0F5;margin-bottom:12px}
.r2-tab{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 14px;border-radius:8px;font:600 13.5px/1 var(--mf-font);color:var(--r2-ink);text-decoration:none;white-space:nowrap;border:1px solid transparent}
.r2-tab .mf-ic{color:var(--r2-blue)}
.r2-tab:hover{background:#F3F5FA}
.r2-tab.is-on{background:var(--r2-fill);color:#fff;box-shadow:0 6px 14px rgba(207,68,22,.28)}
.r2-tab.is-on .mf-ic{color:#fff}
.r2-form{display:grid;grid-template-columns:205px 195px 156px 125px 1fr;gap:15px;align-items:end}
.r2-f{display:flex;flex-direction:column;gap:7px;min-width:0}
.r2-f label{font:600 13px var(--mf-font);color:var(--r2-muted)}
.r2-in{position:relative;display:block}
.r2-in .mf-ic{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--r2-blue);pointer-events:none}
.r2-in select,.r2-in input{width:100%;height:50px;box-sizing:border-box;border:1px solid #DCE0EA;border-radius:8px;background:#fff;padding:0 10px 0 34px;
  font:500 14px var(--mf-font);color:var(--r2-ink);appearance:none;-webkit-appearance:none}
.r2-in--plain select,.r2-in--plain input{padding-left:12px}
.r2-in select{background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%232A3F9D' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center;padding-right:28px}
.r2-in select:invalid,.r2-in select option[value=""]{color:#8A92A6}
.r2-in select:focus,.r2-in input:focus{outline:none;border-color:var(--r2-navy);box-shadow:0 0 0 3px #E7EAF4}
.r2-go{height:50px;display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:8px;background:var(--r2-fill);color:#fff;font:700 15.5px var(--mf-font);cursor:pointer;box-shadow:0 8px 18px rgba(207,68,22,.30);white-space:nowrap}
.r2-go:hover{background:#B63A10}
.r2-err{grid-column:1/-1}
.r2-credit{position:absolute;right:16px;bottom:8px;z-index:3;text-shadow:0 1px 2px rgba(0,0,0,.6)}

/* ---------------- SERVICE CARDS ---------------- */
.r2-svcsec{padding:34px 0 30px}
.r2-svc{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:17px}
.r2-svc-card{position:relative;display:flex;flex-direction:column;background:#fff;border-radius:10px;overflow:hidden;box-shadow:var(--r2-card-sh);text-decoration:none;transition:transform .18s,box-shadow .18s}
.r2-svc-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(20,27,52,.14)}
.r2-svc-img{display:block;height:140px;background:#E7EAF4;overflow:hidden}
.r2-svc-img img{width:100%;height:100%;object-fit:cover;display:block}
.r2-svc-body{position:relative;display:flex;flex-direction:column;gap:5px;padding:13px 14px 16px;min-height:76px}
.r2-svc-body strong{font:700 15px/1.25 var(--mf-font);color:var(--r2-navy)}
.r2-svc-body small{font-size:12.5px;line-height:1.4;color:var(--r2-muted);padding-right:22px}
.r2-svc-go{position:absolute;right:12px;bottom:14px;color:var(--r2-blue)}

/* ---------------- POPULAR UK TOURS ---------------- */
.r2-tourssec{padding:8px 0 44px}
.r2-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}
.r2-head h2{font:700 30px/1.2 var(--mf-serif);color:var(--r2-navy);margin:0}
.r2-more{display:inline-flex;align-items:center;gap:6px;font:700 14px var(--mf-font);color:var(--r2-blue);text-decoration:none}
.r2-tours{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:23px}
.r2-tour{display:flex;flex-direction:column;background:#fff;border-radius:10px;overflow:hidden;box-shadow:var(--r2-card-sh);text-decoration:none;transition:transform .18s,box-shadow .18s}
.r2-tour:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(20,27,52,.14)}
.r2-tour-img{display:block;height:150px;background:#E7EAF4;overflow:hidden}
.r2-tour-img img{width:100%;height:100%;object-fit:cover;display:block}
.r2-tour-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px}
.r2-tour-body strong{font:700 16px/1.25 var(--mf-font);color:var(--r2-navy)}
.r2-tour-rv .rv-badge{font-size:12px;padding:2px 9px}
.r2-tour-foot{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.r2-tour-price{font:700 16px var(--mf-font);color:var(--r2-navy)}
.r2-tour-price small{font:500 13px var(--mf-font);color:var(--r2-muted)}
.r2-round{width:36px;height:36px;border-radius:50%;border:2px solid var(--r2-blue);color:var(--r2-blue);display:inline-flex;align-items:center;justify-content:center;transition:.15s}
.r2-tour:hover .r2-round{background:var(--r2-blue);color:#fff}

/* section titles in the reference's navy */
.r2 .r1-head h2,.r2 .r1-feature-body h2,.r2 .r1-reviews h2{color:var(--r2-navy)}

/* ---------------- BELOW THE FOLD (Student Arrival feature, Heathrow routes,
   weekend/universities, Why MisterFare, reviews + Ask Mister, final CTA) ---------------- */
.r1{--r1-orange:#F15A24;--r1-orange-fill:#CF4416;--r1-navy:#1B2A5E;--r1-ink:#141B34;--r1-text:#2B3247;--r1-muted:#5B6478;
  --r1-line:#E4E7EF;--r1-soft:#F6F7FB;--r1-r:14px;--r1-sh:0 10px 30px rgba(20,27,52,.10);--r1-sh2:0 24px 60px rgba(20,27,52,.18)}
.r1-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:0 20px;border-radius:10px;font:700 14.5px/1 var(--mf-font);
  border:1.5px solid transparent;cursor:pointer;white-space:nowrap;transition:background .15s,transform .15s,border-color .15s}
.r1-btn--primary{background:var(--r1-orange-fill);color:#fff;box-shadow:0 8px 20px rgba(207,68,22,.25)}
.r1-btn--primary:hover{background:#B63A10;transform:translateY(-1px)}
.r1-btn--ghost{background:#fff;color:var(--r1-navy);border-color:#CFD5E8}
.r1-btn--ghost:hover{border-color:var(--r1-navy)}
.r1-btn--light{background:#fff;color:var(--r1-navy)}
.r1-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.r1-more{display:inline-flex;align-items:center;gap:6px;font:700 14px var(--mf-font);color:#B63A10}
.r1-more:hover{text-decoration:underline}
.r1-round{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--r1-orange);color:var(--r1-orange-fill);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:.15s}
a:hover .r1-round{background:var(--r1-orange-fill);border-color:var(--r1-orange-fill);color:#fff}
.r1-kicker{font:700 12px/1 var(--mf-font);letter-spacing:.12em;text-transform:uppercase;color:#B63A10;margin-bottom:10px}
.r1-credit{margin:0;font:500 11px/1.4 var(--mf-font);color:rgba(255,255,255,.75)}
.r1-credit a{color:inherit;text-decoration:underline}
.r1-credit--img{position:absolute;right:10px;bottom:8px;z-index:2;text-shadow:0 1px 2px rgba(0,0,0,.6)}
.r1-credit--dark{color:var(--r1-muted);margin-top:8px}
.r1-sec{padding:44px 0}
.r1-sec--first{padding-top:28px}
.r1-sec--tight{padding:20px 0 44px}
.r1-sec--soft{background:var(--r1-soft)}
.r1-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}
.r1-head h2{font:700 28px/1.2 var(--mf-serif);color:var(--r1-ink);margin:0}
.r1-head p{margin:6px 0 0;color:var(--r1-muted);font-size:15px;max-width:640px}
.r1-serr{grid-column:1/-1;margin:2px 0 0;font-size:13px;color:#B42318}
.r1-feature{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:40px;align-items:center}
.r1-feature-img{position:relative;border-radius:22px;overflow:hidden;aspect-ratio:4/3;box-shadow:var(--r1-sh)}
.r1-feature-img img{width:100%;height:100%;object-fit:cover;display:block}
.r1-feature-img::after{content:"";position:absolute;inset:auto 0 0 0;height:30%;background:linear-gradient(0deg,rgba(15,23,51,.55),transparent)}
.r1-feature-tag{position:absolute;left:16px;top:16px;z-index:2;display:inline-flex;align-items:center;gap:7px;background:#fff;color:var(--r1-navy);font:700 13px var(--mf-font);padding:8px 12px;border-radius:999px;box-shadow:var(--r1-sh)}
.r1-feature-tag .mf-ic{color:var(--r1-orange-fill)}
.r1-feature-body h2{font:700 32px/1.15 var(--mf-serif);color:var(--r1-ink);margin:0 0 12px}
.r1-feature-body>p{font-size:16px;line-height:1.65;color:var(--r1-text);margin:0 0 20px}
.r1-steps{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.r1-steps li{background:#fff;border:1px solid var(--r1-line);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:4px}
.r1-steps li span{width:36px;height:36px;border-radius:10px;background:#FEEDE6;color:var(--r1-orange-fill);display:inline-flex;align-items:center;justify-content:center;margin-bottom:6px}
.r1-steps li strong{font:700 14px var(--mf-font);color:var(--r1-ink)}
.r1-steps li small{font-size:12.5px;color:var(--r1-muted);line-height:1.4}
.r1-routes{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}
.r1-routes-hero{position:relative;border-radius:18px;overflow:hidden;min-height:340px;display:block;color:#fff}
.r1-routes-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.r1-routes-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,23,51,.85) 0%,rgba(15,23,51,.1) 60%)}
.r1-routes-hero span{position:absolute;left:20px;right:20px;bottom:20px;z-index:2;display:flex;flex-direction:column;gap:6px}
.r1-routes-hero strong{font:700 22px/1.25 var(--mf-serif)}
.r1-routes-hero small{font-size:13.5px;color:rgba(255,255,255,.85)}
.r1-routes-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;align-content:start}
.r1-routes-list a{display:grid;grid-template-columns:auto 1fr auto auto;gap:14px;align-items:center;padding:12px 14px;background:#fff;border:1px solid var(--r1-line);border-radius:12px;transition:.15s}
.r1-routes-list a:hover{border-color:#CFD5E8;box-shadow:var(--r1-sh)}
.r1-rt-ic{width:40px;height:40px;border-radius:10px;background:#E7EAF4;color:var(--r1-navy);display:inline-flex;align-items:center;justify-content:center}
.r1-rt-name strong{display:block;font:700 15px/1.3 var(--mf-font);color:var(--r1-ink)}
.r1-rt-name small{display:block;font-size:12.5px;color:var(--r1-muted)}
.r1-rt-price{font:800 17px var(--mf-font);color:var(--r1-navy);white-space:nowrap}
.r1-rt-price.is-req{font:600 13px var(--mf-font);color:var(--r1-muted)}
.r1-rt-go{color:var(--r1-muted)}
.r1-duo{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.r1-duo-card{position:relative;display:block;min-height:250px;border-radius:18px;overflow:hidden;color:#fff}
.r1-duo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s}
.r1-duo-card:hover img{transform:scale(1.04)}
.r1-duo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,23,51,.82) 0%,rgba(15,23,51,.35) 60%,rgba(15,23,51,.1) 100%)}
.r1-duo-card span{position:absolute;left:24px;top:50%;transform:translateY(-50%);z-index:2;max-width:340px;display:flex;flex-direction:column;gap:8px}
.r1-duo-card strong{font:700 24px/1.2 var(--mf-serif)}
.r1-duo-card small{font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.9)}
.r1-duo-card em{font-style:normal;display:inline-flex;align-items:center;gap:6px;font:700 14px var(--mf-font);color:#FF9A6E}
.r1-why{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.r1-why-card{background:#fff;border:1px solid var(--r1-line);border-radius:var(--r1-r);padding:20px;display:flex;flex-direction:column;gap:6px}
.r1-why-card span{width:44px;height:44px;border-radius:12px;background:#E7EAF4;color:var(--r1-navy);display:inline-flex;align-items:center;justify-content:center;margin-bottom:8px}
.r1-why-card strong{font:700 15.5px var(--mf-font);color:var(--r1-ink)}
.r1-why-card small{font-size:14px;line-height:1.55;color:var(--r1-muted)}
.r1-split2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px}
.r1-reviews{border:1px solid var(--r1-line);border-radius:18px;padding:24px;background:#fff}
.r1-reviews h2{font:700 24px/1.2 var(--mf-serif);color:var(--r1-ink);margin:0 0 14px}
.r1-rv0 strong{display:inline-block;font:700 14px var(--mf-font);color:var(--r1-navy);background:var(--r1-soft);border:1px solid var(--r1-line);padding:7px 12px;border-radius:999px}
.r1-rv0 p{color:var(--r1-muted);font-size:14.5px;margin:12px 0}
.r1-askband{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--r1-navy);color:#fff;border-radius:18px;padding:24px 26px;position:relative;overflow:hidden}
.r1-askband::after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(241,90,36,.3),transparent 70%)}
.r1-askband .mf-mister{box-shadow:0 0 0 3px var(--r1-navy),0 0 0 5px var(--r1-orange)}
.r1-askband h2{font:700 24px/1.2 var(--mf-serif);color:#fff;margin:0 0 6px}
.r1-askband p{margin:0 0 16px;color:rgba(255,255,255,.82);font-size:14.5px}
.r1-final{position:relative;overflow:hidden;border-radius:20px;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:40px 44px;min-height:180px}
.r1-final>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 55%;z-index:-2}
.r1-final::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(15,23,51,.94) 0%,rgba(15,23,51,.75) 60%,rgba(15,23,51,.5) 100%)}
.r1-final{isolation:isolate}
.r1-final h2{font:700 30px/1.15 var(--mf-serif);color:#fff;margin:0 0 6px}
.r1-final p{margin:0;color:rgba(255,255,255,.85)}
.r1-feature,.r1-routes,.r1-split2{grid-template-columns:1fr}
.r1-why{grid-template-columns:repeat(2,minmax(0,1fr))}
.r1-sec{padding:32px 0}
.r1-head h2{font-size:24px}
.r1-feature{gap:20px}
.r1-feature-body h2{font-size:26px}
.r1-steps{grid-template-columns:1fr;gap:8px}
.r1-steps li{flex-direction:row;align-items:center;gap:12px;flex-wrap:wrap}
.r1-steps li span{margin:0}
.r1-steps li small{flex-basis:100%;padding-left:48px;margin-top:-6px}
.r1-routes-hero{min-height:220px}
.r1-routes-list a{grid-template-columns:auto 1fr auto;gap:10px}
.r1-rt-go{display:none}
.r1-duo{grid-template-columns:1fr}
.r1-why{grid-template-columns:1fr 1fr;gap:10px}
.r1-why-card{padding:14px}
.r1-final{padding:28px 22px}
.r1-final h2{font-size:24px}

/* ---------------- RESPONSIVE ---------------- */
@media (max-width:1300px){
  .r2-mister{left:auto;right:250px;top:40px;width:320px;height:485px}
  .r2-search{width:calc(100% - 60px - 300px)}
  .r2-form{grid-template-columns:1.2fr 1.1fr .9fr .7fr auto}
  .r2-tab{padding:0 10px;font-size:13px}
}
@media (max-width:1100px){
  .r2-svc{grid-template-columns:repeat(4,minmax(0,1fr))}
  .r2-search{width:calc(100% - 60px)}
  .r2-ask{top:30px}
  .r2-mister{display:none}
  .r2-hero{height:auto;min-height:640px;padding-bottom:0}
}
@media (max-width:1023px){
  .r2-hero{height:auto;min-height:0}
  .r2-hero-in{display:flex;flex-direction:column;gap:18px;padding:40px 24px 24px}
  .r2-copy,.r2-ask,.r2-search{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto}
  .r2-copy{width:auto}
  .r2-tours{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:767px){
  body.mf .mf-header-row.mf-wrap{min-height:60px;padding-inline:16px}
  body.mf .mf-header .mf-logo-tag{display:none}
  .r2 .mf-wrap,.r2-wrap{padding-inline:16px}
  /* mobile reference: headline · subtitle · stacked Ask list · Chat button, then search */
  .r2-hero::before{background:linear-gradient(180deg,rgba(16,24,54,.62) 0%,rgba(16,24,54,.78) 45%,rgba(16,24,54,.90) 100%)}
  .r2-hero-bg img{object-position:46% 40%}
  .r2-hero-in{padding:22px 16px 18px;gap:14px}
  .r2-copy h1{font-size:34px;margin-bottom:10px}
  .r2-copy p{font-size:14.5px;line-height:1.5;margin:0}
  .r2-chips{display:none}
  .r2-ask{padding:8px 8px 0;border-radius:14px}
  .r2-ask-h{padding:2px 4px 8px;margin-bottom:6px;gap:8px}
  .r2-ask-h .mf-mister{width:28px;height:28px}
  .r2-ask-h strong{font-size:13.5px}
  .r2-ask-h span{font-size:11.5px}
  .r2-ask-list{gap:4px}
  .r2-ask-list a{min-height:36px;font-size:13px;padding:0 10px;box-shadow:none;gap:9px}
  .r2-ask-list i{width:22px;height:22px}
  .r2-ask-list i .mf-ic{width:13px;height:13px}
  .r2-ask-cta{margin:6px -8px 0;padding:6px 8px 8px}
  .r2-ask-btn{min-height:42px;font-size:14.5px}
  .r2-search{padding:12px 12px 14px;border-radius:14px}
  .r2-tabs{overflow-x:auto;scrollbar-width:none;margin-inline:-12px;padding-inline:12px}
  .r2-tabs::-webkit-scrollbar{display:none}
  .r2-form{grid-template-columns:1fr 1fr;gap:10px}
  .r2-f:nth-child(1),.r2-f:nth-child(2),.r2-go{grid-column:1/-1}
  .r2-credit{bottom:auto;top:6px;font-size:10px}
  .r2-svcsec{padding:24px 0 18px}
  .r2-svc{display:flex;overflow-x:auto;scrollbar-width:none;gap:12px;margin:0 -16px;padding:2px 16px 10px;scroll-snap-type:x mandatory}
  .r2-svc::-webkit-scrollbar{display:none}
  .r2-svc-card{flex:0 0 150px;scroll-snap-align:start}
  .r2-svc-img{height:110px}
  .r2-head h2{font-size:24px}
  .r2-tours{display:flex;overflow-x:auto;scrollbar-width:none;gap:14px;margin:0 -16px;padding:2px 16px 10px;scroll-snap-type:x mandatory}
  .r2-tours::-webkit-scrollbar{display:none}
  .r2-tour{flex:0 0 260px;scroll-snap-align:start}
}
/* the reference desktop carries Ask Mister in the hero itself, not as a floating button */
@media (min-width:768px){body.mf .mf-ask-fab{display:none}}
@media (max-width:767px){.r2-hero::before{background:linear-gradient(180deg,rgba(16,24,54,.42) 0%,rgba(16,24,54,.62) 40%,rgba(16,24,54,.88) 100%)}}

/* ==========================================================================
   FINAL POLISH
   ========================================================================== */
/* Desktop — Mister integrated into the scene: warm back-light from the hero's
   lamps, contact shadow, and the figure fading into the lower hero so it sits
   behind the search panel instead of being cut off by it. Same artwork,
   same pose — only scale, position and edge treatment. */
@media (min-width:1024px){
  .r2-mister{top:34px;width:350px;height:530px;left:calc(50% + 36px)}
  .r2-mister::before{content:"";position:absolute;left:8%;right:4%;top:6%;height:62%;z-index:-1;border-radius:50%;
    background:radial-gradient(ellipse at 55% 40%,rgba(241,140,80,.30) 0%,rgba(241,120,60,.12) 38%,rgba(241,90,36,0) 70%);filter:blur(6px)}
  .r2-mister img{
    filter:drop-shadow(0 0 1px rgba(10,16,40,.55)) drop-shadow(-14px 22px 28px rgba(6,10,28,.45)) saturate(.96) brightness(.97);
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 66%,rgba(0,0,0,.55) 82%,rgba(0,0,0,0) 97%);
            mask-image:linear-gradient(180deg,#000 0%,#000 66%,rgba(0,0,0,.55) 82%,rgba(0,0,0,0) 97%)}
  /* soft navy wash over the figure's lower body so it shares the hero grade */
  .r2-mister::after{content:"";position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(0deg,rgba(16,24,54,.45),rgba(16,24,54,0));pointer-events:none}
  .r2-ask{box-shadow:0 22px 50px rgba(8,12,30,.38),0 0 0 1px rgba(255,255,255,.6)}
}
@media (min-width:1024px) and (max-width:1300px){
  .r2-mister{left:auto;right:262px;top:48px;width:312px;height:472px}
}

/* Mobile — compact Ask Mister block (reference: headline → short text →
   compact recommendations → Chat with Mister → search) */
@media (max-width:767px){
  .r2-hero-in{padding:18px 16px 16px;gap:12px}
  .r2-copy h1{font-size:33px;line-height:1.05;margin-bottom:8px}
  .r2-copy p{font-size:14.5px;line-height:1.45}
  .r2-ask{padding:6px 6px 0;border-radius:14px}
  .r2-ask-h{padding:2px 4px 6px;margin-bottom:4px;gap:8px;border-bottom:0}
  .r2-ask-h .mf-mister{width:26px;height:26px;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--r2-orange)}
  .r2-ask-h div{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
  .r2-ask-h strong{font-size:14px}
  .r2-ask-h span{font-size:12.5px}
  .r2-ask-list{grid-template-columns:1fr 1fr;gap:5px}
  .r2-ask-list a{min-height:40px;padding:0 8px;gap:7px;font-size:13px;line-height:1.15;border-radius:9px}
  .r2-ask-list i{width:22px;height:22px}
  .r2-ask-list i .mf-ic{width:12px;height:12px}
  .r2-ask-cta{margin:6px -6px 0;padding:0 6px 6px;border-top:0}
  .r2-ask-btn{min-height:42px;font-size:15px;border-radius:9px;box-shadow:none}
  .r2-search{padding:10px 12px 14px}
  .r2-tabs{padding-bottom:10px;margin-bottom:8px}
  .r2-tab{height:36px;font-size:13px}
}

/* Mobile — stacked, compact recommendation rows exactly as the reference
   (one column, tight rows, Chat with Mister directly below). */
@media (max-width:767px){
  .r2-ask{padding:6px 8px 0}
  .r2-ask-h{padding:2px 2px 4px;margin-bottom:2px}
  .r2-ask-list{grid-template-columns:1fr;gap:4px}
  .r2-ask-list a{min-height:34px;padding:0 10px;font-size:13.5px;line-height:1.2;border-radius:8px}
  .r2-ask-list i{width:22px;height:22px}
  .r2-ask-cta{margin:6px -8px 0;padding:0 8px 8px}
  .r2-ask-btn{min-height:42px}
  .r2-copy p{font-size:14px}
}

/* Homepage Student Arrival: Popular UK Tours card component (.r2-tour) with a
   short description in place of the review badge, and one Ask Mister card. */
.r2-sasec{padding-top:12px}
.r2-tour-desc{font-size:13.5px;line-height:1.45;color:var(--r2-muted)}
.r2-tour-cta{font-size:14.5px}
.r2-sasec .r2-tour-body{flex:1}
.r2-sasec .r2-tour-foot{margin-top:auto;padding-top:6px}
button.r2-tour{border:0;padding:0;margin:0;font:inherit;text-align:left;cursor:pointer;width:100%}
.r2-tour-img--ask{display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#22336F 0%,#16204A 100%)}
.r2-tour-img--ask .mf-mister{width:88px;height:88px;box-shadow:0 0 0 3px #fff,0 0 0 6px var(--r2-orange)}
