/* ============================================================
   Exceed Tours & Travels — shared design system
   Palette keyed to the brand logo: desert gold + oasis teal
   over warm desert-sand neutrals. See CLAUDE-DESIGN.md.
   ============================================================ */

:root{
  --bg:        #FBF7F0; /* warm sand white — page background */
  --surface:   #FFFFFF; /* cards, panels */
  --surface-2: #F4ECDF; /* warm tint panels */
  --text:      #2A2420; /* warm near-black — body text */
  --muted:     #7A6F63; /* warm grey — secondary text, captions */
  --primary:   #CE8219; /* logo desert gold — primary CTAs */
  --primary-d: #A9670F; /* darker gold for hover/contrast */
  --secondary: #1A6A6A; /* logo oasis teal — links, headers */
  --secondary-d:#124F4F;/* deep teal — footer, dark sections */
  --accent:    #E9C490; /* warm sand highlight */
  --border:    #E7DDCD; /* sand border */
  --focus:     #0E6E6E; /* teal focus ring */
  --ink-95: #221d19;

  --maxw: 1200px;
  --gut: clamp(20px, 5vw, 64px);
  --radius: 16px;
  --radius-sm: 10px;
  --radius-lg: 26px;

  --shadow-sm: 0 1px 2px rgba(42,36,32,.05), 0 2px 8px rgba(42,36,32,.04);
  --shadow:    0 4px 12px rgba(42,36,32,.07), 0 18px 40px -18px rgba(42,36,32,.18);
  --shadow-lg: 0 30px 70px -28px rgba(42,36,32,.34);

  --ff-head: "Poppins", "Segoe UI", system-ui, sans-serif;
  --ff-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;

  --header-h: 150px;
}

*{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
body{
  margin:0;
  font-family:var(--ff-body);
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
  font-size:17px;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:var(--secondary); text-decoration:none; }
a:hover{ color:var(--secondary-d); }
h1,h2,h3,h4{ font-family:var(--ff-head); color:var(--text); line-height:1.12; margin:0; font-weight:600; letter-spacing:-.01em; }
p{ margin:0; }
ul{ margin:0; padding:0; list-style:none; }
:focus-visible{ outline:3px solid var(--focus); outline-offset:2px; border-radius:6px; }

/* ---------- layout helpers ---------- */
.wrap{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:var(--gut); }
.section{ padding-block:clamp(56px, 8vw, 112px); }
.section--tint{ background:var(--surface-2); }
.center{ text-align:center; }
.stack-sm > * + *{ margin-top:10px; }

/* eyebrow / section heads */
.eyebrow{
  display:inline-flex; align-items:center; gap:10px;
  font-family:var(--ff-head); font-weight:600; font-size:13px;
  letter-spacing:.18em; text-transform:uppercase; color:var(--secondary);
  margin:0 0 16px;
}
.eyebrow::before{ content:""; width:26px; height:2px; background:var(--primary); border-radius:2px; }
.eyebrow.center{ justify-content:center; }

.section-title{ font-size:clamp(28px, 4.4vw, 44px); max-width:18ch; }
.center .section-title, .section-head.center .section-title{ margin-inline:auto; }
.lead{ color:var(--muted); font-size:clamp(16px,2vw,19px); max-width:60ch; margin-top:14px; }
.center .lead{ margin-inline:auto; }
.section-head{ margin-bottom:clamp(34px,5vw,56px); }

/* ---------- buttons ---------- */
.btn{
  --bg:var(--primary); --fg:#fff;
  display:inline-flex; align-items:center; justify-content:center; gap:9px;
  min-height:52px; padding:0 26px;
  font-family:var(--ff-head); font-weight:600; font-size:16px; letter-spacing:.01em;
  background:var(--bg); color:var(--fg);
  border:1px solid transparent; border-radius:999px; cursor:pointer;
  transition:transform .18s ease, box-shadow .22s ease, background .2s ease, color .2s ease;
  box-shadow:var(--shadow-sm);
}
.btn:hover{ transform:translateY(-2px); box-shadow:var(--shadow); color:var(--fg); }
.btn:active{ transform:translateY(0); }
.btn--primary{ --bg:var(--primary); --fg:#fff; }
.btn--primary:hover{ --bg:var(--primary-d); }
.btn--teal{ --bg:var(--secondary); --fg:#fff; }
.btn--teal:hover{ --bg:var(--secondary-d); }
.btn--ghost{ --bg:transparent; --fg:var(--text); border-color:var(--border); box-shadow:none; }
.btn--ghost:hover{ --bg:var(--surface); --fg:var(--text); border-color:var(--primary); }
.btn--light{ --bg:#fff; --fg:var(--text); }
.btn--outline-light{ --bg:transparent; --fg:#fff; border-color:rgba(255,255,255,.5); box-shadow:none; }
.btn--outline-light:hover{ --bg:rgba(255,255,255,.12); --fg:#fff; border-color:#fff; }
.btn--sm{ min-height:44px; padding:0 18px; font-size:15px; }
.btn--block{ width:100%; }
.btn svg{ width:19px; height:19px; flex:none; }

.btn-row{ display:flex; flex-wrap:wrap; gap:14px; }
.center .btn-row, .btn-row.center{ justify-content:center; }

/* whatsapp glyph color when inside primary */
.wa-glyph{ width:20px; height:20px; }

/* ---------- header ---------- */
.site-header{
  position:sticky; top:0; z-index:60;
  background:rgba(251,247,240,.82);
  backdrop-filter:saturate(140%) blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .3s ease, background .3s ease, box-shadow .3s ease;
}
.site-header.is-scrolled{ border-bottom-color:var(--border); box-shadow:0 6px 26px -22px rgba(42,36,32,.5); }
.header-inner{
  height:var(--header-h);
  display:flex; align-items:center; justify-content:space-between; gap:20px;
}
.brand{ display:flex; align-items:center; flex:none; }
.brand img{ height:120px; width:auto; }
.nav{ display:flex; align-items:center; gap:6px; }
.nav a{
  font-family:var(--ff-head); font-weight:500; font-size:15.5px;
  color:var(--text); padding:9px 14px; border-radius:999px;
  position:relative; transition:color .18s ease, background .18s ease;
}
.nav a:hover{ color:var(--secondary-d); background:rgba(26,106,106,.07); }
.nav a.active{ color:var(--secondary-d); }
.nav a.active::after{
  content:""; position:absolute; left:14px; right:14px; bottom:1px; height:2px;
  background:var(--primary); border-radius:2px;
}
.header-cta{ display:flex; align-items:center; gap:10px; flex:none; }
.header-cta .btn{ min-height:46px; }

.hamburger{
  display:none; width:48px; height:48px; flex:none;
  align-items:center; justify-content:center;
  background:var(--surface); border:1px solid var(--border); border-radius:12px;
  cursor:pointer; color:var(--text);
}
.hamburger svg{ width:24px; height:24px; }

/* mobile drawer */
.drawer-scrim{
  position:fixed; inset:0; z-index:70; background:rgba(34,29,25,.5);
  backdrop-filter:blur(2px); opacity:0; visibility:hidden; transition:opacity .25s ease, visibility .25s;
}
.drawer-scrim.open{ opacity:1; visibility:visible; }
.drawer{
  position:fixed; top:0; right:0; bottom:0; z-index:71; width:min(86vw,360px);
  background:var(--bg); transform:translateX(100%); transition:transform .3s cubic-bezier(.4,0,.2,1);
  display:flex; flex-direction:column; padding:18px; box-shadow:var(--shadow-lg);
}
.drawer.open{ transform:translateX(0); }
.drawer-top{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.drawer-top img{ height:46px; }
.drawer-close{ width:46px;height:46px; border:1px solid var(--border); background:var(--surface); border-radius:12px; cursor:pointer; color:var(--text); display:flex;align-items:center;justify-content:center; }
.drawer-close svg{ width:22px;height:22px; }
.drawer nav{ display:flex; flex-direction:column; margin-top:10px; }
.drawer nav a{
  font-family:var(--ff-head); font-weight:500; font-size:18px; color:var(--text);
  padding:15px 12px; border-bottom:1px solid var(--border); border-radius:8px;
}
.drawer nav a.active{ color:var(--secondary-d); }
.drawer-cta{ margin-top:auto; display:grid; gap:10px; padding-top:18px; }

/* ---------- footer ---------- */
.site-footer{ background:var(--secondary-d); color:#E8EFEC; }
.footer-top{ padding-block:clamp(48px,7vw,80px); display:grid; gap:46px; grid-template-columns:1.4fr 1fr 1fr 1.2fr; }
.footer-brand .logo-chip{
  display:inline-block; background:#fff; border-radius:16px; padding:14px 18px; box-shadow:var(--shadow);
}
.footer-brand .logo-chip img{ height:74px; width:auto; }
.footer-brand p{ color:#BFD0CC; margin-top:18px; max-width:34ch; font-size:15px; }
.footer-col h4{ color:#fff; font-size:14px; letter-spacing:.12em; text-transform:uppercase; margin-bottom:18px; }
.footer-col li{ margin-bottom:11px; }
.footer-col a, .footer-col span{ color:#C8D6D2; font-size:15px; }
.footer-col a:hover{ color:#fff; }
.footer-contact li{ display:flex; gap:11px; align-items:flex-start; color:#C8D6D2; font-size:15px; }
.footer-contact svg{ width:18px;height:18px; flex:none; margin-top:3px; color:var(--accent); }
.social-row{ display:flex; gap:10px; margin-top:18px; }
.social-row a{
  width:42px; height:42px; border-radius:11px; display:flex; align-items:center; justify-content:center;
  background:rgba(255,255,255,.08); color:#E8EFEC; transition:background .2s ease, transform .2s ease;
}
.social-row a:hover{ background:var(--primary); color:#fff; transform:translateY(-2px); }
.social-row svg{ width:19px;height:19px; }
.footer-bottom{ border-top:1px solid rgba(255,255,255,.12); padding-block:22px; display:flex; flex-wrap:wrap; gap:8px 22px; justify-content:space-between; align-items:center; }
.footer-bottom p, .footer-bottom a{ color:#A9BDB8; font-size:13.5px; }
.footer-disclaimer{ font-size:12.5px; color:#88A19C; max-width:70ch; }

/* ---------- mobile action bar (sticky) ---------- */
.action-bar{
  position:fixed; left:0; right:0; bottom:0; z-index:55;
  display:none; grid-template-columns:1fr 1fr;
  background:var(--surface); border-top:1px solid var(--border);
  box-shadow:0 -8px 30px -18px rgba(42,36,32,.4);
  padding:9px 12px calc(9px + env(safe-area-inset-bottom)); gap:10px;
}
.action-bar a{
  display:flex; align-items:center; justify-content:center; gap:8px;
  min-height:50px; border-radius:12px; font-family:var(--ff-head); font-weight:600; font-size:15.5px;
}
.action-bar .ab-call{ background:var(--surface-2); color:var(--secondary-d); border:1px solid var(--border); }
.action-bar .ab-wa{ background:var(--primary); color:#fff; }
.action-bar svg{ width:20px;height:20px; }

/* ---------- cards ---------- */
.grid{ display:grid; gap:24px; }
.grid-2{ grid-template-columns:repeat(2,1fr); }
.grid-3{ grid-template-columns:repeat(3,1fr); }
.grid-4{ grid-template-columns:repeat(4,1fr); }

.card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  overflow:hidden; box-shadow:var(--shadow-sm);
  transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  display:flex; flex-direction:column;
}
.card:hover{ transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--accent); }
.card-media{ position:relative; aspect-ratio:4/3; overflow:hidden; background:var(--surface-2); }
.card-media img{ width:100%; height:100%; object-fit:cover; transition:transform .55s cubic-bezier(.2,.6,.2,1); }
.card:hover .card-media img{ transform:scale(1.06); }
.card-body{ padding:22px 22px 24px; display:flex; flex-direction:column; gap:9px; flex:1; }
.card-body h3{ font-size:21px; }
.card-body p{ color:var(--muted); font-size:15.5px; }
.card-foot{ margin-top:auto; padding-top:6px; }
.card-link{
  display:inline-flex; align-items:center; gap:7px; font-family:var(--ff-head); font-weight:600;
  font-size:15px; color:var(--secondary-d);
}
.card-link svg{ width:16px; height:16px; transition:transform .2s ease; }
.card:hover .card-link svg, .card-link:hover svg{ transform:translateX(4px); }

.tag{
  position:absolute; top:14px; left:14px; z-index:2;
  background:rgba(255,255,255,.92); color:var(--secondary-d);
  font-family:var(--ff-head); font-weight:600; font-size:12.5px; letter-spacing:.04em;
  padding:6px 13px; border-radius:999px; box-shadow:var(--shadow-sm);
}
.tag--gold{ background:var(--primary); color:#fff; }

/* scrim helper for media w/ text */
.scrim{ position:absolute; inset:0; background:linear-gradient(to top, rgba(20,16,12,.82) 0%, rgba(20,16,12,.34) 42%, rgba(20,16,12,0) 75%); }

/* ---------- pill list / chips ---------- */
.chips{ display:flex; flex-wrap:wrap; gap:10px; }
.chip{
  display:inline-flex; align-items:center; gap:8px;
  background:var(--surface); border:1px solid var(--border); border-radius:999px;
  padding:9px 16px; font-size:14.5px; font-weight:500; color:var(--text);
}
.chip svg{ width:15px;height:15px; color:var(--primary); }
.section--tint .chip{ background:#fff; }

/* ---------- page hero (interior) ---------- */
.page-hero{ position:relative; background:var(--secondary-d); color:#fff; overflow:hidden; }
.page-hero .ph-bg{ position:absolute; inset:0; }
.page-hero .ph-bg img{ width:100%; height:100%; object-fit:cover; opacity:.42; }
.page-hero .ph-scrim{ position:absolute; inset:0; background:linear-gradient(120deg, rgba(18,79,79,.94), rgba(18,79,79,.55) 60%, rgba(42,36,32,.5)); }
.page-hero-inner{ position:relative; padding-block:clamp(64px,10vw,128px); }
.page-hero .eyebrow{ color:var(--accent); }
.page-hero .eyebrow::before{ background:var(--accent); }
.page-hero h1{ color:#fff; font-size:clamp(34px,6vw,60px); max-width:16ch; }
.page-hero p{ color:#D9E6E2; font-size:clamp(16px,2.2vw,20px); max-width:54ch; margin-top:18px; }
.crumbs{ display:flex; gap:8px; align-items:center; font-size:14px; color:#BFD0CC; margin-bottom:22px; }
.crumbs a{ color:#BFD0CC; }
.crumbs a:hover{ color:#fff; }
.crumbs span{ opacity:.6; }

/* ---------- trust strip ---------- */
.trust{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.trust-item{ display:flex; gap:14px; align-items:flex-start; }
.trust-item .ti-ico{
  width:46px;height:46px;flex:none;border-radius:12px;display:flex;align-items:center;justify-content:center;
  background:var(--surface-2); color:var(--secondary-d); border:1px solid var(--border);
}
.trust-item svg{ width:23px;height:23px; }
.trust-item h4{ font-size:16.5px; font-family:var(--ff-head); }
.trust-item p{ color:var(--muted); font-size:14px; line-height:1.5; margin-top:3px; }

/* ---------- enquiry form ---------- */
.form-card{ background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-lg); padding:clamp(24px,4vw,42px); box-shadow:var(--shadow); }
.field{ display:flex; flex-direction:column; gap:7px; margin-bottom:18px; }
.field label{ font-family:var(--ff-head); font-weight:500; font-size:14.5px; }
.field .req{ color:var(--primary-d); }
.field input, .field select, .field textarea{
  font-family:var(--ff-body); font-size:16px; color:var(--text);
  background:var(--bg); border:1px solid var(--border); border-radius:12px;
  padding:14px 15px; width:100%; transition:border-color .18s ease, box-shadow .18s ease;
}
.field input:focus, .field select:focus, .field textarea:focus{
  outline:none; border-color:var(--focus); box-shadow:0 0 0 3px rgba(14,110,110,.16);
}
.field textarea{ min-height:120px; resize:vertical; }
.field .err{ color:#B4341F; font-size:13px; display:none; }
.field.invalid input, .field.invalid select, .field.invalid textarea{ border-color:#B4341F; }
.field.invalid .err{ display:block; }
.form-note{ font-size:13px; color:var(--muted); margin-top:6px; }
.form-grid{ display:grid; grid-template-columns:1fr 1fr; gap:0 18px; }

/* ---------- CTA band ---------- */
.cta-band{ position:relative; overflow:hidden; background:linear-gradient(135deg,var(--primary),var(--primary-d)); color:#fff; border-radius:var(--radius-lg); padding:clamp(36px,6vw,68px); box-shadow:var(--shadow); }
.cta-band::after{ content:""; position:absolute; right:-60px; top:-60px; width:280px; height:280px; border-radius:50%; background:rgba(255,255,255,.1); }
.cta-band::before{ content:""; position:absolute; left:-40px; bottom:-80px; width:220px; height:220px; border-radius:50%; background:rgba(255,255,255,.08); }
.cta-band .cta-inner{ position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; }
.cta-band h2{ color:#fff; font-size:clamp(26px,3.6vw,40px); max-width:20ch; }
.cta-band p{ color:rgba(255,255,255,.9); margin-top:10px; max-width:50ch; }

/* ---------- map placeholder ---------- */
.map-ph{
  position:relative; aspect-ratio:16/10; border-radius:var(--radius); overflow:hidden;
  background:
    repeating-linear-gradient(45deg, #EFE6D6 0 14px, #F4ECDF 14px 28px);
  border:1px solid var(--border); display:flex; align-items:center; justify-content:center; text-align:center;
}
.map-ph .map-inner{ background:rgba(255,255,255,.86); border:1px solid var(--border); border-radius:14px; padding:22px 26px; max-width:80%; box-shadow:var(--shadow-sm); }
.map-ph .map-inner h4{ font-size:18px; }
.map-ph .map-inner p{ color:var(--muted); font-size:14px; margin-top:6px; }
.map-ph .pin{ width:40px;height:40px;margin:0 auto 10px;color:var(--primary); }

/* generic image placeholder (gaps) */
.img-ph{
  position:relative; border-radius:var(--radius); overflow:hidden; border:1px dashed var(--border);
  background:repeating-linear-gradient(45deg,#F0E7D8 0 12px,#F6EFE3 12px 24px);
  display:flex; align-items:center; justify-content:center; min-height:200px;
}
.img-ph span{ font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:12.5px; color:var(--muted); background:rgba(255,255,255,.8); padding:6px 12px; border-radius:8px; }

/* reveal on scroll */
.reveal{ opacity:0; transform:translateY(22px); transition:opacity .6s ease, transform .6s cubic-bezier(.2,.6,.2,1); }
.reveal.in{ opacity:1; transform:none; }
@media (prefers-reduced-motion: reduce){
  .reveal{ opacity:1; transform:none; transition:none; }
  *{ scroll-behavior:auto; }
}

/* ---------- responsive ---------- */
@media (max-width:1000px){
  .footer-top{ grid-template-columns:1fr 1fr; gap:36px; }
  .footer-brand{ grid-column:1 / -1; }
}
@media (max-width:900px){
  .nav, .header-cta .btn-desktop{ display:none; }
  .hamburger{ display:flex; }
  :root{ --header-h:120px; }
  .brand img{ height:96px; }
  .grid-4{ grid-template-columns:repeat(2,1fr); }
  .trust{ grid-template-columns:repeat(2,1fr); gap:26px; }
  .action-bar{ display:grid; }
  body{ padding-bottom:74px; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }
}
@media (max-width:640px){
  body{ font-size:16px; }
  .grid-2, .grid-3{ grid-template-columns:1fr; }
  .form-grid{ grid-template-columns:1fr; }
  .cta-band .cta-inner{ flex-direction:column; align-items:flex-start; }
  .footer-top{ grid-template-columns:1fr; gap:30px; }
  .btn{ width:100%; }
  .btn-row{ width:100%; }
  .btn-row .btn{ flex:1 1 auto; }
}
@media (max-width:420px){
  .trust{ grid-template-columns:1fr; }
}

/* ============================================================
   HOME PAGE
   ============================================================ */
/* hero */
.hero{ position:relative; padding-block:clamp(36px,6vw,72px) clamp(48px,7vw,90px); }
.hero-grid{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(30px,5vw,64px); align-items:center; }
.hero-copy h1{ font-size:clamp(36px,5.4vw,62px); font-weight:700; margin:4px 0 0; max-width:16ch; }
.hero-sub{ color:var(--muted); font-size:clamp(16px,2.1vw,20px); max-width:50ch; margin:20px 0 28px; }
.hero-mini{ display:flex; gap:14px 30px; flex-wrap:wrap; margin-top:34px; padding-top:26px; border-top:1px solid var(--border); }
.hero-mini li{ display:flex; flex-direction:column; }
.hero-mini strong{ font-family:var(--ff-head); font-weight:600; font-size:18px; color:var(--secondary-d); }
.hero-mini span{ color:var(--muted); font-size:14px; }

.hero-media{ position:relative; }
.hero-photo{ position:relative; aspect-ratio:4/4.4; border-radius:var(--radius-lg); overflow:hidden; box-shadow:var(--shadow-lg); }
.hero-photo img{ width:100%; height:100%; object-fit:cover; }
.hero-photo-scrim{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(20,16,12,0) 45%, rgba(20,16,12,.5) 100%); }
.hero-photo-tag{ position:absolute; left:18px; bottom:18px; color:#fff; font-family:var(--ff-head); font-weight:600; font-size:15px; letter-spacing:.02em; background:rgba(18,79,79,.6); backdrop-filter:blur(6px); padding:8px 15px; border-radius:999px; }
.hero-float{ position:absolute; background:var(--surface); border:1px solid var(--border); border-radius:16px; box-shadow:var(--shadow); display:flex; align-items:center; gap:12px; padding:13px 16px; }
.hero-float strong{ display:block; font-family:var(--ff-head); font-size:15px; }
.hero-float small{ color:var(--muted); font-size:12.5px; }
.card-float-visa{ top:24px; left:-26px; }
.card-float-visa .cf-ico{ width:40px;height:40px;border-radius:11px;background:var(--surface-2);color:var(--secondary-d);display:flex;align-items:center;justify-content:center; }
.card-float-visa .cf-ico svg{ width:21px;height:21px; }
.card-float-fleet{ bottom:26px; right:-26px; padding:11px; }
.card-float-fleet img{ width:64px;height:48px;object-fit:cover;border-radius:10px; }

/* trust */
.trust-section{ padding-block:clamp(40px,5vw,64px); }
.trust-item .ti-ico svg{ width:23px; height:23px; }
.trust-foot{ text-align:center; color:var(--muted); font-size:13px; margin-top:30px; }

/* service clusters */
.svc-card{
  background:var(--surface); border:1px solid var(--border); border-radius:var(--radius);
  padding:28px 26px 26px; display:flex; flex-direction:column; gap:12px;
  box-shadow:var(--shadow-sm); transition:transform .25s ease, box-shadow .25s ease, border-color .25s ease;
  color:var(--text);
}
.svc-card:hover{ transform:translateY(-5px); box-shadow:var(--shadow); border-color:var(--accent); color:var(--text); }
.svc-ico{ width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(140deg, rgba(206,130,25,.14), rgba(26,106,106,.12)); color:var(--secondary-d); margin-bottom:4px; }
.svc-ico svg{ width:27px;height:27px; }
.svc-card h3{ font-size:20px; }
.svc-card p{ color:var(--muted); font-size:15px; flex:1; }
.svc-card .card-link{ margin-top:4px; }

/* section head split */
.section-head.split{ display:flex; align-items:flex-end; justify-content:space-between; gap:24px; }
.section-head.split .section-title{ max-width:20ch; }
@media (max-width:760px){ .btn-desktop-inline{ display:none; } .section-head.split{ display:block; } }

/* dubai experiences */
.exp-grid{ display:grid; grid-template-columns:1.1fr 1fr; gap:24px; }
.exp-feature .card-media{ aspect-ratio:auto; height:100%; min-height:440px; }
.exp-feature-cap{ position:absolute; left:24px; right:24px; bottom:22px; color:#fff; z-index:2; }
.exp-feature-cap h3{ color:#fff; font-size:27px; }
.exp-feature-cap p{ color:rgba(255,255,255,.9); font-size:15.5px; margin-top:6px; max-width:38ch; }
.exp-side{ display:grid; grid-template-rows:1fr 1fr; gap:24px; }
.exp-small .card-media{ aspect-ratio:auto; height:100%; min-height:206px; }
.exp-small-cap{ position:absolute; left:20px; right:20px; bottom:18px; color:#fff; z-index:2; }
.exp-small-cap h3{ color:#fff; font-size:21px; }
.exp-small-cap p{ color:rgba(255,255,255,.88); font-size:14px; margin-top:3px; }
.attraction-chips{ margin-top:26px; }
.chip[data-tick] svg{ color:var(--primary); }
@media (max-width:760px){
  .exp-grid{ grid-template-columns:1fr; }
  .exp-feature .card-media{ min-height:340px; }
}

/* destinations more-card */
.dest-more{ background:linear-gradient(150deg, var(--secondary), var(--secondary-d)); border:none; }
.dest-more-inner{ padding:30px 26px; display:flex; flex-direction:column; gap:12px; height:100%; justify-content:center; color:#fff; }
.dest-more-inner h3{ color:#fff; font-size:26px; }
.dest-more-inner p{ color:rgba(255,255,255,.88); font-size:15px; }
.dest-more .card-link{ color:#fff; margin-top:4px; }
.dest-more:hover .card-link svg{ transform:translateX(4px); }

/* fleet teaser */
.fleet-teaser{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(28px,5vw,60px); align-items:center; }
.fleet-imgs{ display:grid; grid-template-columns:1fr 1fr; grid-template-rows:auto auto; gap:18px; }
.fleet-img{ border-radius:var(--radius); overflow:hidden; box-shadow:var(--shadow); }
.fleet-img img{ width:100%; height:100%; object-fit:cover; }
.fleet-img-a{ grid-column:1 / -1; aspect-ratio:16/8.5; }
.fleet-img-b{ aspect-ratio:4/3; }
.fleet-imgs::after{ content:""; border-radius:var(--radius); background:linear-gradient(140deg,var(--accent),var(--primary)); display:grid; place-items:center; aspect-ratio:4/3; }
@media (max-width:760px){ .fleet-teaser{ grid-template-columns:1fr; } }

/* contact */
.contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,60px); align-items:start; }
.contact-list{ display:grid; gap:18px; margin:26px 0; }
.contact-list li{ display:flex; gap:15px; align-items:flex-start; }
.cl-ico{ width:46px;height:46px;flex:none;border-radius:12px;background:var(--surface);border:1px solid var(--border);color:var(--secondary-d);display:flex;align-items:center;justify-content:center; }
.section--tint .cl-ico{ background:#fff; }
.cl-ico svg{ width:22px;height:22px; }
.contact-list strong{ font-family:var(--ff-head); font-weight:600; font-size:16px; display:block; margin-bottom:2px; }
.contact-list p{ color:var(--muted); font-size:15px; }
.contact-list a{ color:var(--secondary-d); }
.muted-note{ color:var(--muted); font-style:normal; font-size:13px; }
.form-done{ display:none; align-items:center; gap:10px; margin-top:16px; background:rgba(26,106,106,.1); border:1px solid rgba(26,106,106,.3); color:var(--secondary-d); padding:14px 16px; border-radius:12px; font-size:14.5px; }
@media (max-width:760px){ .contact-grid{ grid-template-columns:1fr; } }

@media (max-width:860px){
  .hero-grid{ grid-template-columns:1fr; }
  .hero-media{ max-width:520px; margin-inline:auto; width:100%; }
  .card-float-visa{ left:6px; }
  .card-float-fleet{ right:6px; }
}
@media (max-width:480px){
  .hero-photo{ aspect-ratio:4/3.6; }
  .card-float-visa{ top:14px; left:10px; padding:10px 12px; }
  .card-float-fleet{ bottom:14px; right:10px; }
  .card-float-fleet img{ width:50px;height:38px; }
  .hero-float strong{ font-size:13.5px; }
  .hero-float small{ font-size:11.5px; }
}
