/* self-hosted brand faces — no third-party dependency for body copy */
@font-face{font-family:'Plex Sans';font-style:normal;font-weight:400;font-display:swap;
  src:url('fonts/IBMPlexSans-Regular.ttf') format('truetype')}
@font-face{font-family:'Plex Sans';font-style:normal;font-weight:500;font-display:swap;
  src:url('fonts/IBMPlexSans-Medium.ttf') format('truetype')}
@font-face{font-family:'Plex Sans';font-style:normal;font-weight:600;font-display:swap;
  src:url('fonts/IBMPlexSans-SemiBold.ttf') format('truetype')}
@font-face{font-family:'Plex Arabic';font-style:normal;font-weight:400;font-display:swap;
  src:url('fonts/IBMPlexSansArabic-Regular.ttf') format('truetype')}
@font-face{font-family:'Plex Arabic';font-style:normal;font-weight:500;font-display:swap;
  src:url('fonts/IBMPlexSansArabic-Medium.ttf') format('truetype')}
@font-face{font-family:'Plex Arabic';font-style:normal;font-weight:600;font-display:swap;
  src:url('fonts/IBMPlexSansArabic-SemiBold.ttf') format('truetype')}
@font-face{font-family:'Plex Arabic';font-style:normal;font-weight:700;font-display:swap;
  src:url('fonts/IBMPlexSansArabic-Bold.ttf') format('truetype')}

/* ==========================================================================
   Armada Residence B2B — Design System
   Derived directly from the Travel Agent Fact Sheet 2026.
   Mobile first. Full RTL support. No third-party frameworks.
   ========================================================================== */

:root{
  /* — colour, lifted from the fact sheet — */
  --navy:      #0F2337;
  --navy-2:    #16304A;
  --navy-3:    #1D3C5A;
  --ink:       #0B1926;
  --cream:     #F4EFE5;   /* warm ivory */
  --cream-2:   #EDE5D6;   /* sand */
  --charcoal:  #22262B;
  --paper:     #FFFFFF;
  --bronze:    #B8864E;
  --bronze-lt: #C9A468;
  --bronze-dk: #8E6630;
  --ivory:     #F7F3EA;
  --tx:        #2B3036;
  --tx-mute:   #6E7480;
  --tx-ivory:  rgba(247,243,234,.82);
  --line:      #E4DCCC;
  --line-dk:   rgba(201,164,104,.22);

  /* — type — */
  --display: 'Plex Sans', 'IBM Plex Sans', system-ui, sans-serif;
  --body:    'Plex Sans', 'IBM Plex Sans', system-ui, -apple-system, sans-serif;
  --ar:      'Plex Arabic', 'IBM Plex Sans Arabic', system-ui, sans-serif;
  --f-dsp:   var(--display);
  --f-body:  var(--body);

  /* — rhythm — */
  --gut:     20px;
  --max:     1280px;
  --rad:     10px;
  --shadow:  0 10px 30px -22px rgba(15,35,55,.35);
  --shadow-l:0 30px 70px -40px rgba(15,35,55,.7);
  --t:       .32s cubic-bezier(.4,0,.2,1);
  --hdr:     66px;
}

html[lang="ar"]{
  --f-dsp:  var(--ar);
  --f-body: var(--ar);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}

html,body{max-width:100%}
body{
  font-family:var(--f-body);
  background:var(--cream);
  color:var(--tx);
  font-size:15px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
html[lang="ar"] body{line-height:1.95}

img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--bronze);outline-offset:3px;border-radius:3px}

.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gut)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);
  white-space:nowrap}
.skip{position:absolute;inset-inline-start:-9999px;top:0;z-index:999;
  background:var(--navy);color:var(--ivory);padding:12px 20px}
.skip:focus{inset-inline-start:0}

/* ── logo lockup ──────────────────────────────────────────────────────── */
.lockup{display:flex;align-items:center;gap:12px}
.lockup img{width:auto;height:40px;flex:0 0 auto;object-fit:contain}
.ftr .lockup img{height:54px}
@media (max-width:600px){.lockup img{height:34px}.lockup .wm{display:none}}
.lockup .wm b{display:none}
.lockup .wm{line-height:1.15}
.lockup .wm b{display:block;font-family:var(--f-body);font-size:13.5px;
  font-weight:600;letter-spacing:.005em;color:var(--ivory);white-space:nowrap}
.lockup .wm i{font-style:normal;display:block;font-size:8px;font-weight:500;
  letter-spacing:.24em;color:var(--bronze-lt);margin-top:2px;white-space:nowrap}
html[lang="ar"] .lockup .wm i{letter-spacing:.06em;font-size:9px}
.lockup.dk .wm b{color:var(--navy)}
.lockup.dk .wm i{color:var(--bronze-dk)}

/* ── header ───────────────────────────────────────────────────────────── */
.hdr{position:fixed;inset-inline:0;top:0;z-index:90;height:var(--hdr);
  display:flex;align-items:center;
  background:rgba(11,25,38,0);border-bottom:1px solid transparent;
  transition:background var(--t),border-color var(--t),backdrop-filter var(--t)}
.hdr.on,.hdr.solid{background:rgba(11,25,38,.94);
  -webkit-backdrop-filter:saturate(1.3) blur(14px);
  backdrop-filter:saturate(1.3) blur(14px);
  border-bottom-color:var(--line-dk)}
.hdr .wrap{display:flex;align-items:center;gap:16px}
.hdr .sp{flex:1 1 auto}

.nav{display:none}
.nav a{font-size:12.5px;font-weight:500;letter-spacing:.02em;
  color:rgba(247,243,234,.78);padding:6px 0;position:relative;transition:color var(--t)}
.nav a::after{content:"";position:absolute;inset-inline:0;bottom:0;height:1px;
  background:var(--bronze-lt);transform:scaleX(0);transition:transform var(--t);
  transform-origin:var(--o,left)}
.nav a:hover{color:var(--ivory)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.nav a[aria-current="page"]{color:var(--ivory)}

.lang{display:flex;align-items:center;border:1px solid var(--line-dk);
  border-radius:99px;overflow:hidden;flex:0 0 auto}
.lang a{font-size:11px;font-weight:600;letter-spacing:.1em;padding:11px 14px;line-height:1;
  color:rgba(247,243,234,.62);transition:background var(--t),color var(--t)}
.lang a.on{background:var(--bronze);color:#12202E}
.lang a:not(.on):hover{color:var(--ivory)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
  font-family:var(--f-body);font-size:12.5px;font-weight:600;letter-spacing:.06em;
  padding:11px 20px 12px;border:1px solid var(--bronze);border-radius:99px;
  background:var(--bronze);color:#12202E;cursor:pointer;white-space:nowrap;
  transition:background var(--t),color var(--t),border-color var(--t),
    transform var(--t),box-shadow var(--t)}
.btn:hover{background:var(--bronze-lt);border-color:var(--bronze-lt);
  transform:translateY(-1px);box-shadow:0 10px 26px -14px rgba(184,134,78,.8)}
.btn:active{transform:translateY(0)}
.btn.gh{background:transparent;color:var(--ivory);border-color:rgba(201,164,104,.55)}
.btn.gh:hover{background:rgba(201,164,104,.14);color:var(--ivory);
  border-color:var(--bronze-lt);box-shadow:none}
.btn.dk{background:var(--navy);border-color:var(--navy);color:var(--ivory)}
.btn.dk:hover{background:var(--navy-2);border-color:var(--navy-2)}
.btn.ol{background:transparent;color:var(--navy);border-color:rgba(15,35,55,.28)}
.btn.ol:hover{background:rgba(15,35,55,.06);border-color:var(--navy);box-shadow:none}
.btn.sm{font-size:11.5px;padding:9px 16px 10px}
.btn.wide{width:100%}
.btn svg{width:15px;height:15px;flex:0 0 auto}

.hdr .btn{display:none}

.burger{width:40px;height:40px;display:grid;place-items:center;cursor:pointer;
  background:none;border:0;flex:0 0 auto}
.burger span{display:block;width:19px;height:1.5px;background:var(--ivory);
  position:relative;transition:background var(--t)}
.burger span::before,.burger span::after{content:"";position:absolute;left:0;
  width:19px;height:1.5px;background:var(--ivory);transition:transform var(--t)}
.burger span::before{top:-6px}
.burger span::after{top:6px}
.burger[aria-expanded="true"] span{background:transparent}
.burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}

/* mobile drawer nav */
.mnav{position:fixed;inset:var(--hdr) 0 0;z-index:89;background:var(--ink);
  padding:28px var(--gut) 40px;display:flex;flex-direction:column;gap:2px;
  transform:translateY(-8px);opacity:0;pointer-events:none;visibility:hidden;
  transition:opacity var(--t),transform var(--t),visibility var(--t);
  overflow-y:auto}
.mnav.open{opacity:1;transform:none;pointer-events:auto;visibility:visible}
.mnav a{font-family:var(--f-dsp);font-size:23px;font-weight:500;color:var(--ivory);
  padding:13px 0;border-bottom:1px solid rgba(201,164,104,.16)}
html[lang="ar"] .mnav a{font-weight:600;font-size:21px}
.mnav .btn{margin-top:22px}

/* ── hero ─────────────────────────────────────────────────────────────── */
.hero{position:relative;min-height:88vh;min-height:88svh;display:flex;
  flex-direction:column;justify-content:flex-end;background:var(--ink);
  padding-top:calc(var(--hdr) + 40px);overflow:hidden}
.hero .bg{position:absolute;inset:0;z-index:0}
.hero .bg img{width:100%;height:100%;object-fit:cover;
  animation:slowzoom 22s ease-out both}
@keyframes slowzoom{from{transform:scale(1.06)}to{transform:scale(1)}}
.hero .scrim{position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,rgba(11,25,38,.9) 0%,rgba(11,25,38,.5) 26%,
    rgba(11,25,38,.82) 62%,rgba(11,25,38,.97) 100%)}
.hero .scrim::after{content:"";position:absolute;inset:0;background:
  linear-gradient(to right,rgba(11,25,38,.72) 0%,rgba(11,25,38,.3) 42%,
    rgba(11,25,38,0) 72%)}
html[dir="rtl"] .hero .scrim::after{background:
  linear-gradient(to left,rgba(11,25,38,.72) 0%,rgba(11,25,38,.3) 42%,
    rgba(11,25,38,0) 72%)}
.hero .wrap{position:relative;z-index:2;padding-bottom:34px}
.hero .eyebrow{color:var(--bronze-lt)}
.hero h1{font-family:var(--f-dsp);font-size:clamp(34px,8.6vw,72px);font-weight:500;
  line-height:1.1;color:#FBF8F2;letter-spacing:-.015em;margin-top:14px}
html[lang="ar"] .hero h1{font-weight:600;line-height:1.28;letter-spacing:-.01em;
  font-size:clamp(29px,7.4vw,60px)}
.hero h1 em{font-style:normal;color:var(--bronze-lt);display:block}
.hero .rule{width:64px;height:2px;background:var(--bronze);margin-top:22px}
.hero .sub{margin-top:20px;font-size:15px;line-height:1.85;color:var(--tx-ivory);
  max-width:46ch}
.hero .cta{margin-top:28px;display:flex;flex-wrap:wrap;gap:11px}

/* partner strip under hero */
.strip{background:var(--navy);border-top:1px solid var(--line-dk);
  border-bottom:1px solid var(--line-dk)}
.strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:0}
.strip .it{padding:17px 4px 18px;border-bottom:1px solid var(--line-dk)}
.strip .it:nth-child(odd){border-inline-end:1px solid var(--line-dk);
  padding-inline-end:16px}
.strip .it:nth-child(even){padding-inline-start:16px}
.strip .it:nth-last-child(-n+2){border-bottom:0}
.strip b{display:block;font-family:var(--f-dsp);font-size:26px;font-weight:500;
  color:var(--ivory);line-height:1;font-variant-numeric:lining-nums}
html[lang="ar"] .strip b{font-weight:600;font-size:23px}
.strip i{font-style:normal;display:block;margin-top:7px;font-family:var(--body);
  font-size:9px;font-weight:600;letter-spacing:.17em;color:var(--bronze-lt);
  text-transform:uppercase}
.strip u{display:block;margin-top:5px;font-size:11.5px;text-decoration:none;
  color:rgba(247,243,234,.56);line-height:1.5}
html[lang="ar"] .strip i{letter-spacing:.04em;font-size:10.5px;
  font-family:var(--ar);text-transform:none}

/* ── bands & section headers ──────────────────────────────────────────── */
.band{padding:54px 0;background:var(--cream)}
.band.alt{background:var(--cream-2)}
.band.dk{background:var(--navy);color:var(--tx-ivory);
  background-image:radial-gradient(90% 60% at 12% 0%,rgba(29,60,90,.7) 0%,
    rgba(29,60,90,0) 62%)}
.band.ink{background:var(--ink);color:var(--tx-ivory)}
.band.tight{padding:40px 0}

.eyebrow{font-family:var(--body);font-size:9.5px;font-weight:600;letter-spacing:.2em;
  text-transform:uppercase;color:var(--bronze-dk)}
html[lang="ar"] .eyebrow{font-family:var(--ar);letter-spacing:.05em;font-size:11px;
  text-transform:none;font-weight:600}
.dk .eyebrow,.ink .eyebrow,.hero .eyebrow{color:var(--bronze-lt)}

.shead{max-width:56ch}
.shead h2{font-family:var(--f-dsp);font-size:clamp(26px,5.6vw,44px);font-weight:500;
  line-height:1.2;color:var(--navy);letter-spacing:-.012em;margin-top:12px}
html[lang="ar"] .shead h2{font-weight:600;line-height:1.38;
  font-size:clamp(23px,5vw,38px)}
.dk .shead h2,.ink .shead h2{color:#FBF8F2}
.shead .rule{width:56px;height:2px;background:var(--bronze);margin-top:16px}
.shead p{margin-top:17px;font-size:14.5px;line-height:1.85;color:var(--tx-mute)}
.dk .shead p,.ink .shead p{color:var(--tx-ivory)}
.shead.ctr{margin-inline:auto;text-align:center}
.shead.ctr .rule{margin-inline:auto}

.lede{font-size:15.5px;line-height:1.88;color:var(--tx)}
.dk .lede,.ink .lede{color:var(--tx-ivory)}
.lede b{font-weight:600;color:var(--navy)}
.dk .lede b,.ink .lede b{color:var(--ivory)}

/* ── grids ────────────────────────────────────────────────────────────── */
.grid{display:grid;gap:16px}
.g2,.g3,.g4,.g5{display:grid;gap:16px;grid-template-columns:1fr}
/* grid items default to min-width:auto, which lets a wide table push the page
   sideways — this is the single most important line for mobile safety */
.grid>*,.g2>*,.g3>*,.g4>*,.g5>*,.steps>*,.gal>*,.feats>*,.promise>*{min-width:0}
.tw,table.tb{max-width:100%}
.mt-s{margin-top:20px}
.mt-m{margin-top:30px}
.mt-l{margin-top:42px}

/* ── cards ────────────────────────────────────────────────────────────── */
.card{position:relative;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--rad);padding:20px 20px 22px;box-shadow:var(--shadow);
  display:flex;flex-direction:column;overflow:hidden}
.card::before{content:"";position:absolute;top:0;bottom:0;inset-inline-start:0;
  width:3px;background:linear-gradient(180deg,var(--bronze) 0%,
    rgba(184,134,78,.08) 100%)}
.card.flat::before{display:none}
.dk .card,.ink .card{background:rgba(247,243,234,.055);
  border-color:var(--line-dk);box-shadow:none;color:var(--tx-ivory)}
.dk .card::before,.ink .card::before{background:linear-gradient(180deg,
  var(--bronze-lt) 0%,rgba(201,164,104,.06) 100%)}
.card .no{font-family:var(--f-dsp);font-size:21px;font-weight:500;color:var(--bronze);
  line-height:1;font-variant-numeric:lining-nums}
.dk .card .no,.ink .card .no{color:var(--bronze-lt)}
.card h3{font-family:var(--f-dsp);font-size:19px;font-weight:500;color:var(--navy);
  line-height:1.32;margin-top:9px;letter-spacing:-.005em}
html[lang="ar"] .card h3{font-weight:600;font-size:17.5px;line-height:1.5}
.dk .card h3,.ink .card h3{color:#FBF8F2}
.card .kk{font-family:var(--body);font-size:9px;font-weight:600;letter-spacing:.17em;
  text-transform:uppercase;color:var(--tx-mute);margin-top:6px}
html[lang="ar"] .card .kk{font-family:var(--ar);letter-spacing:.04em;font-size:10.5px;
  text-transform:none}
.dk .card .kk,.ink .card .kk{color:rgba(247,243,234,.55)}
.card p{margin-top:11px;font-size:13.8px;line-height:1.8;color:var(--tx-mute)}
.dk .card p,.ink .card p{color:var(--tx-ivory)}
.card p b,.card li b{font-weight:600;color:var(--navy)}
.dk .card p b,.ink .card p b{color:var(--ivory)}
.card .mt{margin-top:auto}
.card .foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);
  font-size:12.5px;font-weight:600;color:var(--bronze-dk);line-height:1.6}
.dk .card .foot,.ink .card .foot{border-top-color:var(--line-dk);
  color:var(--bronze-lt)}

/* stat tile */
.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--rad);
  padding:18px 18px 19px;box-shadow:var(--shadow)}
.dk .stat,.ink .stat{background:rgba(247,243,234,.055);border-color:var(--line-dk);
  box-shadow:none}
.stat b{display:block;font-family:var(--f-dsp);font-size:34px;font-weight:500;
  color:var(--navy);line-height:1;font-variant-numeric:lining-nums;
  letter-spacing:-.015em}
html[lang="ar"] .stat b{font-weight:600;font-size:30px}
.dk .stat b,.ink .stat b{color:#FBF8F2}
.stat i{font-style:normal;display:block;margin-top:9px;font-family:var(--body);
  font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase;
  color:var(--navy)}
html[lang="ar"] .stat i{font-family:var(--ar);letter-spacing:.04em;font-size:10.5px;
  text-transform:none}
.dk .stat i,.ink .stat i{color:var(--bronze-lt)}
.stat span{display:block;margin-top:4px;font-size:11.5px;color:var(--tx-mute);
  line-height:1.5}
.dk .stat span,.ink .stat span{color:rgba(247,243,234,.6)}

/* chips */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{display:inline-flex;align-items:center;font-family:var(--body);font-size:10px;
  font-weight:600;letter-spacing:.13em;text-transform:uppercase;padding:6px 13px 7px;
  border:1px solid rgba(184,134,78,.42);border-radius:99px;color:var(--bronze-dk);
  background:rgba(184,134,78,.06);white-space:normal;max-width:100%;
  line-height:1.5;text-align:center}
@media (min-width:600px){.chip{white-space:nowrap}}
html[lang="ar"] .chip{font-family:var(--ar);letter-spacing:.03em;font-size:11.5px;
  text-transform:none}
.dk .chip,.ink .chip{border-color:rgba(201,164,104,.42);color:var(--bronze-lt);
  background:rgba(201,164,104,.08)}
.chip.sol{background:var(--bronze);border-color:var(--bronze);color:#12202E}

/* feature list */
.feats{display:grid;gap:10px;margin-top:18px}
.feat{background:var(--paper);border:1px solid var(--line);border-radius:8px;
  padding:13px 15px 14px}
.dk .feat,.ink .feat{background:rgba(247,243,234,.05);border-color:var(--line-dk)}
.feat b{display:block;font-size:13.5px;font-weight:600;color:var(--navy);
  line-height:1.45}
.dk .feat b,.ink .feat b{color:#FBF8F2}
.feat span{display:block;margin-top:4px;font-size:12.5px;color:var(--tx-mute);
  line-height:1.65}
.dk .feat span,.ink .feat span{color:rgba(247,243,234,.66)}

/* bullet list */
ul.bl{list-style:none;display:grid;gap:9px;margin-top:16px}
ul.bl li{position:relative;padding-inline-start:20px;font-size:14px;line-height:1.8;
  color:var(--tx)}
.dk ul.bl li,.ink ul.bl li{color:var(--tx-ivory)}
ul.bl li::before{content:"";position:absolute;inset-inline-start:0;top:9px;width:6px;
  height:6px;border-radius:50%;background:var(--bronze)}
.dk ul.bl li::before,.ink ul.bl li::before{background:var(--bronze-lt)}
ul.bl li b{font-weight:600;color:var(--navy)}
.dk ul.bl li b,.ink ul.bl li b{color:var(--ivory)}

/* ── figures ──────────────────────────────────────────────────────────── */
figure.ph{position:relative;overflow:hidden;border-radius:var(--rad);
  background:#E9E2D5;box-shadow:var(--shadow)}
figure.ph img{width:100%;height:100%;object-fit:cover;transition:transform .7s
  cubic-bezier(.2,0,.2,1)}
figure.ph.zoom:hover img{transform:scale(1.035)}
figure.ph figcaption{position:absolute;inset-inline:0;bottom:0;z-index:2;
  padding:34px 15px 13px;font-family:var(--body);font-size:9.5px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;color:var(--ivory);
  background:linear-gradient(180deg,rgba(11,25,38,0),rgba(11,25,38,.88))}
html[lang="ar"] figure.ph figcaption{font-family:var(--ar);letter-spacing:.03em;
  font-size:11.5px;text-transform:none}
figure.ph.r43{aspect-ratio:4/3}
figure.ph.r169{aspect-ratio:16/9}
figure.ph.r11{aspect-ratio:1/1}
figure.ph.r34{aspect-ratio:3/4}

.gal{display:grid;gap:12px;grid-template-columns:1fr 1fr}
.gal figure.ph{aspect-ratio:4/3}

/* ── callout ──────────────────────────────────────────────────────────── */
.note{background:var(--navy);color:var(--tx-ivory);border-radius:var(--rad);
  border-inline-start:3px solid var(--bronze);padding:19px 21px 21px;
  font-size:14px;line-height:1.85}
.note b{color:var(--bronze-lt);font-weight:600}
.note.lt{background:#FDF7EA;color:var(--tx);border-inline-start-color:var(--bronze)}
.note.lt b{color:var(--bronze-dk)}
.dk .note,.ink .note{background:rgba(247,243,234,.06);border:1px solid var(--line-dk);
  border-inline-start:3px solid var(--bronze-lt)}

/* ── tables ───────────────────────────────────────────────────────────── */
.tw{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-top:22px;
  border-radius:var(--rad);border:1px solid var(--line);background:var(--paper);
  box-shadow:var(--shadow)}
.dk .tw,.ink .tw{border-color:var(--line-dk);background:rgba(247,243,234,.04);
  box-shadow:none}
table.tb{width:100%;border-collapse:collapse;min-width:640px}
table.tb thead th{background:var(--navy);color:#F4EFE4;font-family:var(--body);
  font-size:10.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  padding:13px 15px;text-align:start;white-space:nowrap}
html[lang="ar"] table.tb thead th{font-family:var(--ar);letter-spacing:.02em;
  font-size:12px;text-transform:none}
table.tb td{padding:13px 15px;font-size:13.4px;line-height:1.7;color:var(--tx);
  border-bottom:1px solid var(--line);vertical-align:top}
.dk table.tb td,.ink table.tb td{color:var(--tx-ivory);
  border-bottom-color:var(--line-dk)}
table.tb tbody tr:last-child td{border-bottom:0}
table.tb tbody tr:nth-child(even) td{background:rgba(247,242,233,.5)}
.dk table.tb tbody tr:nth-child(even) td,
.ink table.tb tbody tr:nth-child(even) td{background:rgba(247,243,234,.025)}
table.tb td.k{font-weight:600;color:var(--navy);white-space:nowrap}
.dk table.tb td.k,.ink table.tb td.k{color:#FBF8F2}
table.tb td .pr{color:var(--bronze-dk);font-weight:600;white-space:nowrap}
.dk table.tb td .pr,.ink table.tb td .pr{color:var(--bronze-lt)}
.scroll-hint{font-size:11.5px;color:var(--tx-mute);margin-top:9px;
  display:flex;align-items:center;gap:6px}
/* every inline icon is sized explicitly — an unsized SVG fills its container */
.scroll-hint svg,.note svg,.sla svg,.seg .go svg,.feat svg{
  width:15px;height:15px;flex:0 0 auto}
.note svg{vertical-align:-3px;margin-inline-end:6px;color:var(--bronze-lt)}
.note.lt svg{color:var(--bronze-dk)}
.dk .scroll-hint,.ink .scroll-hint{color:rgba(247,243,234,.55)}

/* ── property block ───────────────────────────────────────────────────── */
.prop{display:grid;gap:20px}
.prop .media figure.ph{aspect-ratio:4/3}
.prop h3{font-family:var(--f-dsp);font-size:clamp(25px,6vw,38px);font-weight:500;
  color:var(--navy);line-height:1.18;letter-spacing:-.012em}
html[lang="ar"] .prop h3{font-weight:600;line-height:1.4;font-size:clamp(23px,5.4vw,33px)}
.dk .prop h3,.ink .prop h3{color:#FBF8F2}
.prop .cnt{font-family:var(--f-dsp);font-size:38px;font-weight:500;
  color:var(--bronze);line-height:1;font-variant-numeric:lining-nums}
.prop .rule{width:52px;height:2px;background:var(--bronze);margin:14px 0 16px}
.prop .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}

/* ── steps ────────────────────────────────────────────────────────────── */
.steps{display:grid;gap:12px;margin-top:26px}
.step{background:var(--paper);border:1px solid var(--line);border-radius:var(--rad);
  padding:18px 19px 20px;box-shadow:var(--shadow)}
.dk .step,.ink .step{background:rgba(247,243,234,.055);border-color:var(--line-dk);
  box-shadow:none}
.step .no{font-family:var(--f-dsp);font-size:24px;font-weight:500;color:var(--bronze);
  line-height:1;font-variant-numeric:lining-nums}
.dk .step .no,.ink .step .no{color:var(--bronze-lt)}
.step h4{font-family:var(--f-dsp);font-size:17.5px;font-weight:500;color:var(--navy);
  margin-top:9px;line-height:1.35}
html[lang="ar"] .step h4{font-weight:600;font-size:16.5px;line-height:1.5}
.dk .step h4,.ink .step h4{color:#FBF8F2}
.step p{margin-top:8px;font-size:13.2px;line-height:1.78;color:var(--tx-mute)}
.dk .step p,.ink .step p{color:var(--tx-ivory)}

/* promise tiles */
.promise{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}
.promise .p{background:var(--paper);border:1px solid var(--line);border-radius:8px;
  padding:15px 12px 16px;text-align:center}
.dk .promise .p,.ink .promise .p{background:rgba(247,243,234,.055);
  border-color:var(--line-dk)}
.promise b{display:block;font-family:var(--f-dsp);font-size:32px;font-weight:500;
  color:var(--bronze);line-height:1;font-variant-numeric:lining-nums}
.dk .promise b,.ink .promise b{color:var(--bronze-lt)}
.promise span{display:block;margin-top:8px;font-family:var(--body);font-size:8.6px;
  font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--navy);
  line-height:1.5}
html[lang="ar"] .promise span{font-family:var(--ar);letter-spacing:.02em;
  font-size:10.5px;text-transform:none}
.dk .promise span,.ink .promise span{color:var(--tx-ivory)}

/* ── segment cards (who we host) ──────────────────────────────────────── */
.seg{position:relative;display:block;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--rad);overflow:hidden;box-shadow:var(--shadow);
  transition:transform var(--t),box-shadow var(--t),border-color var(--t)}
.seg:hover{transform:translateY(-3px);box-shadow:var(--shadow-l);
  border-color:rgba(184,134,78,.45)}
.dk .seg,.ink .seg{background:rgba(247,243,234,.055);border-color:var(--line-dk)}
.seg{height:100%}
.seg .in{padding:20px 20px 22px;display:flex;flex-direction:column;height:100%}
.seg .no{font-family:var(--f-dsp);font-size:20px;font-weight:500;color:var(--bronze);
  line-height:1;font-variant-numeric:lining-nums}
.dk .seg .no,.ink .seg .no{color:var(--bronze-lt)}
.seg h3{font-family:var(--f-dsp);font-size:20px;font-weight:500;color:var(--navy);
  margin-top:8px;line-height:1.3}
html[lang="ar"] .seg h3{font-weight:600;font-size:18.5px;line-height:1.45}
.dk .seg h3,.ink .seg h3{color:#FBF8F2}
.seg ul{list-style:none;margin-top:13px;display:grid;gap:7px}
.seg ul li{font-size:13px;line-height:1.7;color:var(--tx-mute);
  padding-inline-start:13px;border-inline-start:2px solid rgba(184,134,78,.4)}
.dk .seg ul li,.ink .seg ul li{color:var(--tx-ivory);
  border-inline-start-color:rgba(201,164,104,.4)}
.seg .go{margin-top:auto;padding-top:16px;display:inline-flex;align-items:center;gap:7px;
  font-size:11.5px;font-weight:600;letter-spacing:.09em;color:var(--bronze-dk);
  text-transform:uppercase}
html[lang="ar"] .seg .go{letter-spacing:.02em;font-size:12.5px;text-transform:none}
.dk .seg .go,.ink .seg .go{color:var(--bronze-lt)}
.seg .go svg{width:13px;height:13px;transition:transform var(--t)}
html[dir="rtl"] .seg .go svg{transform:scaleX(-1)}
.seg:hover .go svg{transform:translateX(3px)}
html[dir="rtl"] .seg:hover .go svg{transform:scaleX(-1) translateX(3px)}

/* ── rooming calculator ───────────────────────────────────────────────── */
.calc{background:var(--paper);border:1px solid var(--line);border-radius:var(--rad);
  padding:22px 20px 24px;box-shadow:var(--shadow-l);margin-top:26px}
.dk .calc,.ink .calc{background:rgba(247,243,234,.06);border-color:var(--line-dk)}
.calc .row{display:grid;gap:14px}
.calc .fld label{display:block;font-family:var(--body);font-size:9.5px;
  font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--navy);
  margin-bottom:7px}
html[lang="ar"] .calc .fld label{font-family:var(--ar);letter-spacing:.03em;
  font-size:11.5px;text-transform:none}
.dk .calc .fld label,.ink .calc .fld label{color:var(--bronze-lt)}
.calc .out{margin-top:20px;padding-top:18px;border-top:1px solid var(--line);
  display:none}
.dk .calc .out,.ink .calc .out{border-top-color:var(--line-dk)}
.calc .out.on{display:block}
.calc .opt{background:var(--cream-2);border:1px solid var(--line);border-radius:8px;
  padding:14px 15px 15px;margin-bottom:10px}
.dk .calc .opt,.ink .calc .opt{background:rgba(247,243,234,.05);
  border-color:var(--line-dk)}
.calc .opt .t{display:flex;align-items:baseline;justify-content:space-between;
  gap:12px;flex-wrap:wrap}
.calc .opt b{font-size:14px;font-weight:600;color:var(--navy)}
.dk .calc .opt b,.ink .calc .opt b{color:#FBF8F2}
.calc .opt .m{font-family:var(--body);font-size:10px;font-weight:600;
  letter-spacing:.11em;text-transform:uppercase;color:var(--bronze-dk)}
html[lang="ar"] .calc .opt .m{font-family:var(--ar);letter-spacing:.02em;
  font-size:11.5px;text-transform:none}
.dk .calc .opt .m,.ink .calc .opt .m{color:var(--bronze-lt)}
.calc .opt p{margin-top:7px;font-size:12.8px;line-height:1.7;color:var(--tx-mute)}
.dk .calc .opt p,.ink .calc .opt p{color:var(--tx-ivory)}

/* ── forms ────────────────────────────────────────────────────────────── */
.fld{position:relative}
.fld label{display:block;font-family:var(--body);font-size:9.5px;font-weight:600;
  letter-spacing:.15em;text-transform:uppercase;color:var(--navy);margin-bottom:7px}
html[lang="ar"] .fld label{font-family:var(--ar);letter-spacing:.03em;font-size:11.5px;
  text-transform:none}
.dk .fld label,.ink .fld label{color:var(--bronze-lt)}
.fld label .req{color:var(--bronze);margin-inline-start:3px}
.fld input,.fld select,.fld textarea{width:100%;background:var(--paper);
  border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-size:14.5px;
  color:var(--tx);transition:border-color var(--t),box-shadow var(--t);
  -webkit-appearance:none;appearance:none}
.fld textarea{min-height:92px;resize:vertical;line-height:1.7}
.fld select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236E7480' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;
  background-size:11px;padding-inline-end:36px}
html[dir="rtl"] .fld select{background-position:left 14px center}
.dk .fld input,.dk .fld select,.dk .fld textarea,
.ink .fld input,.ink .fld select,.ink .fld textarea{
  background:rgba(11,25,38,.4);border-color:var(--line-dk);color:var(--ivory)}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;
  border-color:var(--bronze);box-shadow:0 0 0 3px rgba(184,134,78,.16)}
.fld input::placeholder,.fld textarea::placeholder{color:#A8ADB6}
.fld .err{display:none;margin-top:6px;font-size:11.5px;color:#B4472F;font-weight:500}
.fld.bad input,.fld.bad select{border-color:#C4553B}
.fld.bad .err{display:block}

.frm{background:var(--paper);border:1px solid var(--line);border-radius:var(--rad);
  padding:24px 20px 26px;box-shadow:var(--shadow-l)}
.dk .frm,.ink .frm{background:rgba(247,243,234,.06);border-color:var(--line-dk)}
.frm .row{display:grid;gap:15px}
.frm .row + .row{margin-top:15px}

/* step indicator */
.psteps{display:flex;gap:6px;margin-bottom:22px}
.pstep{flex:1 1 0;text-align:center}
.pstep .bar{height:3px;border-radius:99px;background:var(--line);
  transition:background var(--t)}
.dk .pstep .bar,.ink .pstep .bar{background:rgba(201,164,104,.2)}
.pstep.on .bar,.pstep.done .bar{background:var(--bronze)}
.pstep span{display:block;margin-top:8px;font-family:var(--body);font-size:8.6px;
  font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--tx-mute)}
html[lang="ar"] .pstep span{font-family:var(--ar);letter-spacing:.02em;font-size:10.5px;
  text-transform:none}
.pstep.on span{color:var(--bronze-dk)}
.dk .pstep.on span,.ink .pstep.on span{color:var(--bronze-lt)}
.fstep{display:none}
.fstep.on{display:block;animation:fadein .3s ease both}
@keyframes fadein{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.fnav{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.fnav .btn{flex:1 1 auto}
.sla{margin-top:14px;font-size:12.3px;color:var(--tx-mute);display:flex;
  align-items:flex-start;gap:8px;line-height:1.65}
.dk .sla,.ink .sla{color:rgba(247,243,234,.7)}
.sla svg{width:15px;height:15px;flex:0 0 auto;margin-top:2px;color:var(--bronze)}

/* ── sticky mobile action bar ─────────────────────────────────────────── */
.sticky{position:fixed;inset-inline:0;bottom:0;z-index:80;display:flex;gap:9px;
  padding:10px var(--gut) calc(10px + env(safe-area-inset-bottom));
  background:rgba(11,25,38,.96);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-top:1px solid var(--line-dk);
  transform:translateY(110%);transition:transform var(--t)}
.sticky.on{transform:none}
.sticky .btn{flex:1 1 0;font-size:12px;padding:12px 10px 13px}

/* ── footer ───────────────────────────────────────────────────────────── */
.ftr{background:var(--ink);color:var(--tx-ivory);padding:46px 0 34px}
.ftr .top{display:grid;gap:30px}
.ftr .lockup{margin-bottom:16px}
.ftr .blurb{font-size:13.5px;line-height:1.85;color:rgba(247,243,234,.66);
  max-width:40ch}
.ftr h4{font-family:var(--body);font-size:9.5px;font-weight:600;letter-spacing:.18em;
  text-transform:uppercase;color:var(--bronze-lt);margin-bottom:13px}
html[lang="ar"] .ftr h4{font-family:var(--ar);letter-spacing:.03em;font-size:11.5px;
  text-transform:none}
.ftr ul{list-style:none;display:grid;gap:9px}
.ftr ul a,.ftr .cl{font-size:13.2px;color:rgba(247,243,234,.72);line-height:1.6;
  transition:color var(--t)}
.ftr ul a:hover{color:var(--bronze-lt)}
.ftr .cl b{display:block;font-size:9px;font-weight:600;letter-spacing:.15em;
  text-transform:uppercase;color:rgba(247,243,234,.44);margin-bottom:3px}
html[lang="ar"] .ftr .cl b{font-family:var(--ar);letter-spacing:.03em;font-size:10.5px;
  text-transform:none}
.ftr .addr{font-size:12.6px;line-height:1.8;color:rgba(247,243,234,.62)}
.ftr .btm{margin-top:34px;padding-top:22px;border-top:1px solid var(--line-dk);
  display:grid;gap:14px;font-size:11.5px;color:rgba(247,243,234,.48);line-height:1.8}
.ftr .btm a{color:rgba(247,243,234,.62)}
.ftr .btm a:hover{color:var(--bronze-lt)}
.disc{font-size:11.2px;line-height:1.85;color:rgba(247,243,234,.4)}

/* ── breadcrumb / page hero ───────────────────────────────────────────── */
.phero{position:relative;background:var(--ink);padding:calc(var(--hdr) + 46px) 0 44px;
  overflow:hidden}
.phero .bg{position:absolute;inset:0;z-index:0;opacity:.34}
.phero .bg img{width:100%;height:100%;object-fit:cover}
.phero::after{content:"";position:absolute;inset:0;z-index:1;background:
  linear-gradient(180deg,rgba(11,25,38,.92) 0%,rgba(11,25,38,.7) 52%,
    rgba(11,25,38,.96) 100%)}
.phero .wrap{position:relative;z-index:2}
.phero h1{font-family:var(--f-dsp);font-size:clamp(30px,7.4vw,56px);font-weight:500;
  color:#FBF8F2;line-height:1.14;letter-spacing:-.014em;margin-top:13px}
html[lang="ar"] .phero h1{font-weight:600;line-height:1.34;
  font-size:clamp(26px,6.4vw,46px)}
.phero .rule{width:58px;height:2px;background:var(--bronze);margin-top:18px}
.phero p{margin-top:18px;font-size:14.8px;line-height:1.85;color:var(--tx-ivory);
  max-width:56ch}
.crumb{font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;
  color:rgba(247,243,234,.5)}
html[lang="ar"] .crumb{letter-spacing:.02em;font-size:12px;text-transform:none}
.crumb a:hover{color:var(--bronze-lt)}

/* ── CTA band ─────────────────────────────────────────────────────────── */
.ctaband{background:var(--navy);background-image:
  radial-gradient(80% 60% at 88% 0%,rgba(29,60,90,.8) 0%,rgba(29,60,90,0) 60%);
  padding:48px 0;text-align:center}
.ctaband h2{font-family:var(--f-dsp);font-size:clamp(24px,5.4vw,40px);font-weight:500;
  color:#FBF8F2;line-height:1.24;letter-spacing:-.012em;max-width:22ch;
  margin-inline:auto}
html[lang="ar"] .ctaband h2{font-weight:600;line-height:1.42;
  font-size:clamp(22px,5vw,35px)}
.ctaband p{margin-top:16px;font-size:14.5px;line-height:1.82;color:var(--tx-ivory);
  max-width:52ch;margin-inline:auto}
.ctaband .acts{margin-top:26px;display:flex;flex-wrap:wrap;gap:11px;
  justify-content:center}

/* reveal on scroll */
.rv{opacity:0;transform:translateY(16px);
  transition:opacity .6s ease,transform .6s cubic-bezier(.2,0,.2,1)}
.rv.in{opacity:1;transform:none}

/* ══════════════════════════════════════════════════════════════════════
   BREAKPOINTS
   ══════════════════════════════════════════════════════════════════════ */
@media (min-width:600px){
  :root{--gut:28px}
  .g2{grid-template-columns:1fr 1fr}
  .strip .wrap{grid-template-columns:repeat(4,1fr)}
  .strip .it{border-bottom:0;padding-inline:0}
  .strip .it:nth-child(odd){border-inline-end:0;padding-inline-end:0}
  .strip .it:nth-child(even){padding-inline-start:0}
  .strip .it + .it{border-inline-start:1px solid var(--line-dk);
    padding-inline-start:20px}
  .gal{grid-template-columns:repeat(2,1fr)}
  .ftr .top{grid-template-columns:1fr 1fr}
  .promise{gap:12px}
}

@media (min-width:860px){
  :root{--gut:34px;--hdr:74px}
  body{font-size:15.5px}
  .band{padding:76px 0}
  .band.tight{padding:56px 0}
  .nav{display:flex;align-items:center;gap:26px}
  .burger{display:none}
  .mnav{display:none}
  .hdr .btn{display:inline-flex}
  .sticky{display:none}
  .g3{grid-template-columns:repeat(3,1fr)}
  .g4{grid-template-columns:repeat(2,1fr)}
  .grid.cols2{grid-template-columns:1fr 1fr;gap:34px}
  .grid.cols64{grid-template-columns:1.25fr .75fr;gap:38px;align-items:start}
  .grid.cols46{grid-template-columns:.8fr 1.2fr;gap:38px;align-items:start}
  .prop{grid-template-columns:1fr 1fr;gap:34px;align-items:center}
  .prop.rev .media{order:2}
  .steps{grid-template-columns:repeat(3,1fr);gap:14px}
  .feats{grid-template-columns:1fr 1fr}
  .gal{grid-template-columns:repeat(4,1fr)}
  .calc .row{grid-template-columns:repeat(3,1fr);gap:16px}
  .frm .row.c2{grid-template-columns:1fr 1fr}
  .frm .row.c3{grid-template-columns:repeat(3,1fr)}
  .frm{padding:32px 30px 34px}
  .scroll-hint{display:none}
  .ftr .top{grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:34px}
  .hero .wrap{padding-bottom:46px}
  .note{padding:22px 26px 24px;font-size:14.5px}
}

@media (min-width:1080px){
  :root{--gut:40px}
  .g4{grid-template-columns:repeat(4,1fr)}
  .g5{grid-template-columns:repeat(5,1fr)}
  .steps{grid-template-columns:repeat(6,1fr)}
  .steps.s3{grid-template-columns:repeat(3,1fr)}
  .band{padding:92px 0}
  .card{padding:24px 24px 26px}
  .feats{grid-template-columns:repeat(3,1fr)}
  /* inside a narrow grid column, two up reads better and balances the row */
  .grid.cols64 .feats,.grid.cols46 .feats{grid-template-columns:1fr 1fr}
}

/* print */
@media print{
  .hdr,.sticky,.mnav,.ctaband,.btn{display:none!important}
  body{background:#fff;color:#000}
  .band,.band.dk,.band.ink{background:#fff!important;color:#000!important;
    padding:20px 0}
}



/* ══════════════════════════════════════════════════════════════════════
   V3 — editorial B2B layout (homepage)
   ══════════════════════════════════════════════════════════════════════ */
html[lang="ar"]{--f-dsp:var(--ar);--f-body:var(--ar)}
html[lang="ar"] body{line-height:1.9;letter-spacing:0}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3{letter-spacing:0;word-spacing:.04em}
html[lang="ar"] .btn{letter-spacing:0;font-size:13.5px;font-weight:600}
html[lang="ar"] .eyebrow{letter-spacing:.02em;font-size:12px;text-transform:none}

/* hero: full-screen, minimal, quiet */
.hero-v3{min-height:100vh;min-height:100svh;justify-content:flex-end;padding-top:var(--hdr)}
.hero-v3 .bg img{animation:none;transform:scale(1.06);will-change:transform;transition:transform .2s linear}
.hero-v3 .scrim{background:linear-gradient(180deg,rgba(11,25,38,.55) 0%,rgba(11,25,38,.25) 35%,
  rgba(11,25,38,.72) 70%,rgba(11,25,38,.96) 100%)}
.hero-v3 .scrim::after{display:none}
.hero-v3 .wrap{padding-bottom:64px}
.hero-v3 .hero-brand{font-family:var(--body);font-size:11.5px;font-weight:600;letter-spacing:.28em;
  text-transform:uppercase;color:var(--bronze-lt)}
html[lang="ar"] .hero-v3 .hero-brand{font-family:var(--ar);letter-spacing:.02em;text-transform:none;
  font-size:15px;font-weight:600}
.hero-v3 h1{font-family:var(--f-dsp);font-size:clamp(40px,7.4vw,92px);font-weight:400;
  line-height:1.02;letter-spacing:-.02em;color:#FBF8F2;margin-top:18px;max-width:14ch}
html[lang="ar"] .hero-v3 h1{font-weight:600;line-height:1.3;letter-spacing:0;
  font-size:clamp(34px,6.4vw,76px);max-width:18ch}
.hero-v3 .sub{margin-top:22px;font-size:16px;line-height:1.8;color:var(--tx-ivory);max-width:52ch}
html[lang="ar"] .hero-v3 .sub{font-size:17px;line-height:1.95;max-width:46ch}
.hero-v3 .cta{margin-top:30px}
.hero-v3 .btn{padding:14px 26px 15px;font-size:12.5px}
.hero-v3 .hero-meta{margin-top:36px;padding-top:18px;border-top:1px solid rgba(201,164,104,.3);
  font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(247,243,234,.6);
  font-family:var(--body)}
html[lang="ar"] .hero-v3 .hero-meta{font-family:var(--ar);letter-spacing:0;text-transform:none;font-size:14px}
.hero-v3 .hero-copy>*{opacity:0;transform:translateY(18px);animation:hero-in 1s cubic-bezier(.2,0,.15,1) forwards}
.hero-v3 .hero-copy>*:nth-child(2){animation-delay:.15s}
.hero-v3 .hero-copy>*:nth-child(3){animation-delay:.3s}
.hero-v3 .hero-copy>*:nth-child(4){animation-delay:.42s}
.hero-v3 .hero-copy>*:nth-child(5){animation-delay:.55s}
@keyframes hero-in{to{opacity:1;transform:none}}

/* portfolio — editorial split, alternating */
.portfolio{padding-bottom:20px}
.pf{display:grid;gap:26px;margin-top:44px;align-items:center}
.pf-img{position:relative;overflow:hidden;border-radius:var(--rad);aspect-ratio:5/4;background:#E5DCCB}
.pf-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.02);
  transition:transform 1.2s cubic-bezier(.2,0,.15,1)}
.pf:hover .pf-img img{transform:scale(1.06)}
.pf-label{font-family:var(--body);font-size:10.5px;font-weight:600;letter-spacing:.22em;
  text-transform:uppercase;color:var(--bronze-dk)}
html[lang="ar"] .pf-label{font-family:var(--ar);letter-spacing:.02em;text-transform:none;font-size:13px}
.pf h3{font-family:var(--f-dsp);font-size:clamp(28px,4.4vw,48px);font-weight:400;line-height:1.1;
  letter-spacing:-.015em;color:var(--navy);margin-top:12px}
html[lang="ar"] .pf h3{font-weight:600;line-height:1.35;letter-spacing:0;font-size:clamp(26px,4vw,42px)}
.pf-facts{list-style:none;margin-top:22px;border-top:1px solid var(--line)}
.pf-facts li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px;color:var(--tx);
  display:flex;gap:14px;align-items:baseline}
.pf-facts li::before{content:"";width:18px;height:1px;background:var(--bronze);flex:0 0 auto;
  position:relative;top:-4px}
.pf .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
@media (min-width:900px){
  .pf{grid-template-columns:7fr 5fr;gap:56px;margin-top:64px}
  .pf.rev{grid-template-columns:5fr 7fr}
  .pf.rev .pf-img{order:2}
  .pf.rev .pf-body{padding-inline-end:24px}
  .pf:not(.rev) .pf-body{padding-inline-start:24px}
  .pf-img{aspect-ratio:4/3}
  .pf.rev .pf-img{aspect-ratio:1/1}
}

/* bento */
.bento{display:grid;gap:14px}
.bt{padding:26px 24px 28px;background:var(--paper);border:1px solid var(--line);
  border-radius:var(--rad);transition:border-color var(--t),transform var(--t)}
.bt:hover{border-color:rgba(184,134,78,.6);transform:translateY(-2px)}
.bt h3{font-family:var(--f-dsp);font-size:22px;font-weight:500;color:var(--navy);line-height:1.25}
html[lang="ar"] .bt h3{font-weight:600;font-size:20px;line-height:1.5}
.bt p{margin-top:12px;font-size:14.5px;line-height:1.8;color:var(--tx-mute);max-width:44ch}
.bt.wide{background:var(--navy);border-color:var(--navy);color:var(--tx-ivory)}
.bt.wide h3{color:#FBF8F2;font-size:26px}
.bt.wide p{color:var(--tx-ivory)}
@media (min-width:860px){
  .bento{grid-template-columns:repeat(6,1fr)}
  .bt{grid-column:span 2;padding:34px 30px 36px}
  .bt:nth-child(1),.bt:nth-child(2){grid-column:span 3}
}

/* flow — timeline */
.flow-wrap{display:grid;gap:36px}
.flow{list-style:none;margin:0;position:relative;counter-reset:none}
.flow li{display:grid;grid-template-columns:64px 1fr;gap:18px;padding:22px 0 26px;
  border-top:1px solid var(--line)}
.flow li:last-child{border-bottom:1px solid var(--line)}
.flow .fn{font-family:var(--display);font-size:34px;font-weight:400;color:var(--bronze);line-height:1;
  font-variant-numeric:lining-nums}
.flow h3{font-family:var(--f-dsp);font-size:21px;font-weight:500;color:var(--navy);line-height:1.3}
html[lang="ar"] .flow h3{font-weight:600;font-size:19px}
.flow p{margin-top:8px;font-size:14px;line-height:1.75;color:var(--tx-mute);max-width:52ch}
@media (min-width:960px){
  .flow-wrap{grid-template-columns:5fr 7fr;gap:64px;align-items:start}
  .flow li{grid-template-columns:84px 1fr}
  .flow .fn{font-size:42px}
}

/* feature sections — image-led */
.feat-sec{display:grid;background:var(--cream)}
.feat-sec.dkbg{background:var(--navy);color:var(--tx-ivory)}
.feat-img{position:relative;aspect-ratio:16/10;overflow:hidden}
.feat-img img{width:100%;height:100%;object-fit:cover;transform:scale(1.03);
  transition:transform 1.4s cubic-bezier(.2,0,.15,1)}
.feat-sec:hover .feat-img img{transform:scale(1.07)}
.feat-body{padding:44px var(--gut) 52px}
.feat-body h2{font-family:var(--f-dsp);font-size:clamp(28px,4.2vw,46px);font-weight:400;line-height:1.1;
  letter-spacing:-.015em;color:var(--navy);margin-top:12px;max-width:16ch}
html[lang="ar"] .feat-body h2{font-weight:600;line-height:1.38;letter-spacing:0;max-width:20ch}
.dkbg .feat-body h2{color:#FBF8F2}
.dkbg .eyebrow{color:var(--bronze-lt)}
.feat-body .lede{margin-top:18px;font-size:15.5px;line-height:1.85;color:var(--tx-mute);max-width:50ch}
.dkbg .feat-body .lede{color:var(--tx-ivory)}
.dash{list-style:none;margin-top:22px;display:grid;gap:9px;max-width:44ch}
.dash li{font-size:14px;color:var(--tx);display:flex;gap:12px;align-items:baseline}
.dash li::before{content:"";width:14px;height:1px;background:var(--bronze);flex:0 0 auto;position:relative;top:-4px}
.dkbg .dash li{color:var(--tx-ivory)}
.feat-body .acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.feat-sec:not(.dkbg) .btn.gh{color:var(--navy);border-color:rgba(15,35,55,.3)}
.feat-sec:not(.dkbg) .btn.gh:hover{background:rgba(15,35,55,.06);color:var(--navy)}
@media (min-width:900px){
  .feat-sec{grid-template-columns:1fr 1fr;min-height:620px}
  .feat-img{aspect-ratio:auto;height:100%}
  .feat-sec.rev .feat-img{order:2}
  .feat-body{padding:72px clamp(32px,6vw,96px);display:flex;flex-direction:column;justify-content:center}
}

/* built for partners — typography section */
.built{padding:84px 0;background:var(--cream-2);text-align:center}
.built h2{font-family:var(--f-dsp);font-size:clamp(34px,6vw,64px);font-weight:400;letter-spacing:-.02em;
  color:var(--navy);line-height:1.05}
html[lang="ar"] .built h2{font-weight:600;letter-spacing:0;line-height:1.3}
.built p{margin:22px auto 0;font-size:16px;line-height:1.85;color:var(--tx-mute);max-width:62ch}
.built-nums{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:44px;border-top:1px solid var(--line)}
.built-nums div{padding:22px 8px;border-bottom:1px solid var(--line)}
.built-nums div:nth-child(odd){border-inline-end:1px solid var(--line)}
.built-nums b{display:block;font-family:var(--display);font-size:44px;font-weight:400;color:var(--navy);
  font-variant-numeric:lining-nums;line-height:1}
.built-nums span{display:block;margin-top:8px;font-size:12.5px;color:var(--tx-mute);letter-spacing:.06em}
@media (min-width:760px){
  .built-nums{grid-template-columns:repeat(4,1fr)}
  .built-nums div{border-bottom:0;border-inline-end:1px solid var(--line)}
  .built-nums div:last-child{border-inline-end:0}
}

/* final CTA — image-backed */
.final{position:relative;padding:110px 0;background:var(--ink);color:var(--tx-ivory);text-align:center;overflow:hidden}
.final .bg{position:absolute;inset:0}
.final .bg img{width:100%;height:100%;object-fit:cover}
.final .scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,25,38,.88),rgba(11,25,38,.94))}
.final .wrap{position:relative}
.final h2{font-family:var(--f-dsp);font-size:clamp(32px,5.6vw,60px);font-weight:400;letter-spacing:-.02em;
  color:#FBF8F2;line-height:1.08}
html[lang="ar"] .final h2{font-weight:600;letter-spacing:0;line-height:1.35}
.final p{margin:20px auto 0;font-size:15.5px;line-height:1.85;max-width:52ch;color:var(--tx-ivory)}
.final .acts{margin-top:34px;display:flex;flex-wrap:wrap;gap:11px;justify-content:center}

/* restrained reveal */
.rv{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform 1s cubic-bezier(.2,0,.15,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .hero-v3 .hero-copy>*{animation:none;opacity:1;transform:none}
  .rv{transform:none}
  .pf-img img,.feat-img img{transition:none}
}
html[dir="rtl"] .ic-arrow{transform:scaleX(-1)}

/* EN display type — brand face, weight 600, tighter tracking */
html[lang="en"] h1,html[lang="en"] h2,html[lang="en"] h3,html[lang="en"] .pf h3,
html[lang="en"] .hero-v3 h1,html[lang="en"] .feat-body h2,html[lang="en"] .built h2,
html[lang="en"] .final h2,html[lang="en"] .shead h2,html[lang="en"] .bt h3,html[lang="en"] .flow h3{
  font-family:var(--display);font-weight:600;letter-spacing:-.025em}
html[lang="en"] .hero-v3 h1{font-size:clamp(38px,6.6vw,84px);line-height:1.04}
html[lang="en"] .flow .fn,html[lang="en"] .built-nums b,html[lang="en"] .strip b{font-weight:500}
/* hero glow follows the pointer */
.hero-v3 .hero-glow{position:absolute;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(560px 420px at var(--gx,72%) var(--gy,42%),
    rgba(201,164,104,.20),rgba(201,164,104,0) 70%);transition:opacity .4s ease}
@media (hover:none){.hero-v3 .hero-glow{opacity:.6}}
