
body{margin:0;font-family:'Plus Jakarta Sans','IBM Plex Sans Arabic',system-ui,-apple-system,'Segoe UI',Tahoma,sans-serif;color:#0E0E12;background:#FAF6EF;-webkit-font-smoothing:antialiased}
a{color:#6B12E8;text-decoration:none}a:hover{color:#5209BF}
.btn{transition:background .2s ease,border-color .2s ease,color .2s ease}
.bp:hover{background:#5209BF !important;color:#FFFFFF !important}
.bs:hover{border-color:#0E0E12 !important;color:#0E0E12 !important}
.bw:hover{background:#EDE9F5 !important;color:#0E0E12 !important}
.nl:hover{color:#6B12E8 !important}
.tab{transition:background .2s ease,color .2s ease;cursor:pointer}
.tab:hover{color:#0E0E12 !important;background:#ECEBF1 !important}
.tile{transition:transform .35s ease}
.tile:hover .tc{transform:translateY(-6px)}
.tc{transition:transform .35s ease}
.hdr{transition:background .35s ease,box-shadow .35s ease;background:rgba(250,246,239,0)}
.hdr .hdr-in{transition:height .35s ease}
.hdr .logo{transition:transform .35s ease;transform-origin:left center}
.hdr.scrolled{background:rgba(250,246,239,.84);-webkit-backdrop-filter:saturate(1.5) blur(16px);backdrop-filter:saturate(1.5) blur(16px);box-shadow:0 1px 0 #E6DDCC,0 14px 30px -22px rgba(60,40,20,.45)}
.hdr.scrolled .hdr-in{height:68px !important}
.hdr.scrolled .logo{transform:scale(.9)}
.hdr.scrolled .navpill{background:#FFFFFF !important;box-shadow:0 1px 2px rgba(60,40,20,.08)}
.hdr.m.scrolled .hdr-in{height:56px !important}
.ni{transition:background .2s ease,color .2s ease}
.ni:hover{background:#F2EBDF !important;color:#0E0E12 !important}
.sbar{transition:width .1s linear}
@media (prefers-reduced-motion:reduce){.hdr,.hdr .hdr-in,.hdr .logo{transition:none}}
.p3d{perspective:1000px}
.sway{transform-style:preserve-3d;animation:sway var(--sw,9s) ease-in-out var(--swd,0s) infinite}
@keyframes sway{0%,100%{transform:rotateY(-10deg) rotateX(5deg)}50%{transform:rotateY(10deg) rotateX(-4deg) translateZ(14px)}}
.sh2{position:relative;overflow:hidden;box-shadow:0 1px 2px rgba(14,14,18,.18),0 28px 50px -24px rgba(14,14,18,.45)}
.sh2::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(115deg,transparent 30%,rgba(252,4,153,.16) 40%,rgba(255,255,255,.32) 47%,rgba(107,18,232,.14) 52%,rgba(91,123,240,.18) 57%,transparent 66%);mix-blend-mode:screen;background-size:260% 100%;animation:sheen2 7s ease-in-out var(--swd,0s) infinite}
@keyframes sheen2{0%{background-position:160% 0}45%,100%{background-position:-70% 0}}
.p3d:hover .sway{animation-play-state:paused;transform:rotateY(0) rotateX(0)}
@media (prefers-reduced-motion:reduce){.sway,.sh2::after{animation:none !important}}

.c3d .sway{animation-duration:11s}
.scene{transform-style:preserve-3d;transition:transform .25s ease-out;will-change:transform}
.c3d{position:absolute;transform-style:preserve-3d}
.fl{transform-style:preserve-3d;animation:fanIn 1.1s cubic-bezier(.2,.8,.2,1) both,floaty var(--d,6s) ease-in-out var(--dl,1.1s) infinite}
@keyframes fanIn{from{opacity:0;transform:translate3d(0,90px,-160px) rotateX(24deg)}to{opacity:1;transform:translate3d(0,0,0) rotateX(0)}}
@keyframes floaty{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-16px,24px)}}
.sh{position:relative;border-radius:16px;overflow:hidden}
.sh::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.28) 48%,rgba(255,255,255,.05) 55%,transparent 62%);background-size:260% 100%;animation:sheen 6s ease-in-out infinite;animation-delay:var(--sd,0s)}
@keyframes sheen{0%{background-position:160% 0}45%,100%{background-position:-70% 0}}
.stampPop{animation:stampPop 6s ease-in-out infinite}
.stampPop svg{animation:stampIcon 6s ease-in-out infinite}
@keyframes stampPop{0%,38%{background:transparent;transform:scale(1)}46%{background:#E8C9A0;transform:scale(1.28)}54%,92%{background:#E8C9A0;transform:scale(1)}100%{background:transparent}}
@keyframes stampIcon{0%,38%{opacity:0}46%,92%{opacity:1}100%{opacity:0}}
.nIn{animation:nIn 6s ease-in-out infinite}
@keyframes nIn{0%,40%{opacity:0;transform:translate3d(0,-14px,0) scale(.96)}48%,88%{opacity:1;transform:translate3d(0,0,0) scale(1)}96%,100%{opacity:0;transform:translate3d(0,-8px,0) scale(.98)}}
.glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.55;animation:drift 12s ease-in-out infinite alternate}
@keyframes drift{from{transform:translate(0,0)}to{transform:translate(60px,-30px)}}
@media (prefers-reduced-motion:reduce){.fl,.sh::after,.stampPop,.stampPop svg,.nIn,.glow{animation:none !important}.scene{transition:none}}
/* ===== Fonts (self-hosted) — English: Plus Jakarta Sans · Arabic: IBM Plex Sans Arabic ===== */
@font-face{font-family:'Plus Jakarta Sans';src:url(fonts/jakarta.woff2) format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/plex-arabic-regular.woff2) format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/plex-arabic-medium.woff2) format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/plex-arabic-semibold.woff2) format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:'IBM Plex Sans Arabic';src:url(fonts/plex-arabic-bold.woff2) format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'Josefin Sans';src:url(fonts/josefin.woff2) format('woff2');font-weight:100 700;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url(fonts/cormorant-italic.woff2) format('woff2');font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:'Oswald';src:url(fonts/oswald.woff2) format('woff2');font-weight:200 700;font-display:swap}
@font-face{font-family:'Playfair Display';src:url(fonts/playfair.woff2) format('woff2');font-weight:400 900;font-display:swap}
@font-face{font-family:'DM Serif Display';src:url(fonts/dmserif.woff2) format('woff2');font-weight:400;font-display:swap}

/* ===== Production layout — The Loyalty Jar ===== */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px;-webkit-text-size-adjust:100%}
body{overflow-x:hidden;line-height:1.5}
img,svg{max-width:none}
:focus-visible{outline:2px solid #6B12E8;outline-offset:3px;border-radius:6px}
.wrap{width:100%;max-width:1248px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:16px;top:8px;transform:translateY(-200%);z-index:100;background:#0E0E12;color:#fff;padding:10px 16px;border-radius:8px}
.skip:focus{transform:none;color:#fff}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hp{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);opacity:0;pointer-events:none}
h1,h2,h3{font-weight:600;margin:0;color:#0E0E12}
p{margin:0}
.ar h1,.ar h2,.ar h3{letter-spacing:0 !important}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:12px;font:500 16px/1 'Plus Jakarta Sans','IBM Plex Sans Arabic',system-ui,sans-serif;height:48px;padding:0 22px;border:1px solid transparent;cursor:pointer;white-space:nowrap}
.bp{background:#6B12E8;color:#fff}
.bs{background:#fff;color:#0E0E12;border-color:#D6D5DE}
.btn-sm{height:44px;padding:0 22px;font-size:15px;border-radius:999px;box-shadow:0 6px 16px -8px rgba(107,18,232,.7)}
.btn-lg{height:56px;padding:0 28px;font-size:17px}
.btn-full{width:100%}
.btn[disabled]{opacity:.7;cursor:wait}
.ar .ar-flip{transform:scaleX(-1)}
.tlink{display:inline-flex;align-items:center;gap:8px;font-size:16px;font-weight:500;color:#6B12E8}

/* header */
.hdr{position:sticky;top:0;z-index:50}
.hdr-in{height:84px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px}
.brand{display:flex;justify-self:start}
.logo{width:188px;height:34px;display:block}
.ar .hdr .logo{transform-origin:right center}
.navpill{display:flex;gap:2px;padding:5px;border-radius:999px;background:rgba(255,255,255,.6);border:1px solid #E6DDCC}
.ni{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;font-size:15px;font-weight:500;color:#1D1D24}
.hdr-act{justify-self:end;display:flex;align-items:center;gap:18px}
.lang{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:500;color:#1D1D24}
.lang:hover{color:#6B12E8}
.menu-btn{display:none;height:40px;padding:0 14px 0 12px;border-radius:999px;border:1px solid #E6DDCC;background:#fff;align-items:center;gap:8px;font:500 14px 'Plus Jakarta Sans','IBM Plex Sans Arabic',system-ui,sans-serif;color:#1D1D24;cursor:pointer}
.mnav{padding:8px 20px 20px;display:flex;flex-direction:column;background:rgba(250,246,239,.97);border-bottom:1px solid #E6DDCC}
.mnav[hidden]{display:none}
.mnav a:not(.btn){padding:14px 4px;border-bottom:1px solid #E6DDCC;font-size:17px;font-weight:500;color:#0E0E12}
.mnav .btn{margin-top:16px}
.sbar{position:absolute;left:0;bottom:0;height:2px;width:0;background:#6B12E8}
.ar .sbar{left:auto;right:0}

/* hero */
.hero{padding:56px 0 0}
.hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center}
.eyebrow{font-size:15px;font-weight:500;color:#6B12E8}
.hero h1{margin-top:20px;font-size:clamp(44px,6.6vw,80px);line-height:1.02;letter-spacing:-.045em;max-width:960px}
.ar .hero h1{line-height:1.25}
.lead{margin-top:24px;font-size:clamp(17px,1.6vw,20px);line-height:1.6;color:#57555F;max-width:640px}
.ctas{margin-top:36px;display:flex;gap:12px;flex-wrap:wrap;justify-content:center}
.meta{margin-top:28px;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 20px;font-size:14px;color:#57555F}
.meta .sep{width:1px;height:16px;background:#E6DDCC}
.stage{margin-top:64px;height:500px;border-radius:28px;background:#F0E6D6;position:relative;overflow:hidden;perspective:1400px;perspective-origin:50% 30%}
.stage-in{position:absolute;top:0;left:50%;width:1200px;height:500px;transform:translateX(-50%) scale(var(--k,1));transform-origin:top center;transform-style:preserve-3d}
.stage-in .scene{position:absolute;inset:0}

/* sections */
.sec{padding:128px 0}
.sec-tight{padding:0 0 128px}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:48px}
.sec h2{font-size:clamp(34px,4vw,48px);line-height:1.08;letter-spacing:-.03em;max-width:640px}
.ar .sec h2{line-height:1.3}
.lead-s{max-width:420px;font-size:18px;line-height:1.6;color:#57555F}
.lab{font-size:14px;font-weight:500}
.cp{font-size:16px;line-height:1.6;color:#57555F}
.note{font-size:13px;color:#6A6873}

/* bento */
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cell{border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:12px;overflow:hidden;min-width:0}
.cell h3{font-size:26px;line-height:1.15;letter-spacing:-.02em}
.cell.wide{grid-column:span 2;flex-direction:row;align-items:center;gap:48px;padding:48px}
.cell.wide h3{font-size:34px}
.cell-copy{flex:1;display:flex;flex-direction:column;gap:14px;min-width:0}
.cell-vis{flex-shrink:0}
.ticks{list-style:none;margin:12px 0 0;padding:0}
.ticks li{display:flex;align-items:center;gap:10px;padding:14px 0;border-top:1px solid var(--tl,#E6DDCC);font-size:15px}
.ticks li svg{color:var(--tc,#6B12E8);flex-shrink:0}
.cell.bleed{padding-bottom:0}
.vis-b{margin-top:auto;padding-top:24px;margin-bottom:-24px;display:flex;justify-content:center}
.vis-t{margin-top:auto;padding-top:20px}
.vis-n{margin-top:auto;padding-top:20px;display:flex;flex-direction:column;gap:10px}
.cell.full{grid-column:1/-1}
.cell.dark{background:#0E0E12;color:#fff;flex-direction:row;align-items:center;gap:56px;padding:48px}
.cell.dark h3{color:#fff}
.h3l{font-size:34px !important}
.ins-copy{width:360px;flex-shrink:0;display:flex;flex-direction:column;gap:14px}
.ins-vis{flex:1;display:flex;gap:16px;align-items:stretch;min-width:0}
.kpis{width:200px;flex-shrink:0;display:flex;flex-direction:column;gap:12px}
.kpi{padding:20px;border-radius:16px;background:#1B1B22}
.kl{font-size:13px;color:#A3A2AE}.kv{font-size:32px;font-weight:500;letter-spacing:-.02em;margin-top:6px}.kd{font-size:12px;color:#C9B5FA;margin-top:4px}
.chart{flex:1;padding:22px;border-radius:16px;background:#1B1B22;display:flex;flex-direction:column;gap:16px;min-width:0}
.ch-h{display:flex;justify-content:space-between;gap:12px;font-size:13px;color:#A3A2AE}
.bars{flex:1;min-height:150px;display:flex;align-items:flex-end;gap:8px}
.bars i{flex:1;border-radius:4px;background:#3A2F55}
.bars i.hi{background:#6B12E8}

/* why */
#why{padding-top:0}
.why{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px}
.why-intro{grid-column:span 4;display:flex;flex-direction:column;gap:18px;padding-inline-end:32px}
.why-grid{grid-column:6/span 7;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}
.why-i{padding-top:24px;border-top:1px solid #0E0E12;display:flex;flex-direction:column;gap:10px}
.why-i svg{color:#6B12E8}
.why-i h3{margin-top:8px;font-size:20px;font-weight:500;letter-spacing:-.01em}
.why-i p{font-size:15px;line-height:1.6;color:#57555F}

/* results */
.results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-top:56px;border-top:1px solid #E6DDCC}
.h2s{font-size:28px !important;line-height:1.2 !important;letter-spacing:-.02em}
.res-intro .note{margin-top:14px;font-size:14px}
.stat{padding-inline-start:32px;border-inline-start:1px solid #E6DDCC}
.sv{font-size:clamp(48px,5.4vw,72px);font-weight:500;letter-spacing:-.04em;line-height:1}
.ar .sv{text-align:right}
.sl{font-size:16px;color:#57555F;margin-top:12px}

/* industries */
#industries{padding-top:0}
.tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.tile h3{margin-top:16px;font-size:17px;font-weight:500}
.tile p{font-size:14px;color:#57555F;margin-top:4px}
.tbox{height:300px;border-radius:20px;overflow:hidden;padding:36px 20px 0;display:flex;justify-content:center}
.tc{transition:transform .35s ease}
.tile:hover .tc{transform:translateY(-6px)}
.tc.z30{zoom:.62}.tc.z26{zoom:.715}

/* stories */
#stories{padding-top:0}
.wrap.stories,.wrap.results{max-width:1200px;padding-inline:0;width:calc(100% - 48px)}
.stories{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:24px;padding-top:64px;border-top:1px solid #E6DDCC}
.st-main{grid-column:span 7;margin:0;padding-inline-end:56px;display:flex;flex-direction:column;gap:36px}
.st-main blockquote{margin:0;font-size:clamp(24px,2.6vw,36px);line-height:1.3;letter-spacing:-.02em;font-weight:400}
.ar .st-main blockquote{line-height:1.6;letter-spacing:0}
.st-side{grid-column:span 5;display:flex;flex-direction:column}
.st-side figure{margin:0;padding:0 0 32px;display:flex;flex-direction:column;gap:20px}
.st-side figure+figure{padding:32px 0 0;border-top:1px solid #E6DDCC}
.st-side blockquote{margin:0;font-size:18px;line-height:1.6}
.person{display:flex;align-items:center;gap:14px}
.av{width:44px;height:44px;border-radius:22px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:500;flex-shrink:0}
.person b{display:block;font-size:15px;font-weight:500}
.person small{display:block;font-size:14px;color:#57555F;margin-top:2px}
.st-note{margin-top:32px}

/* contact */
#contact{padding-top:0}
.contact{background:#0E0E12;border-radius:28px;padding:64px;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:56px;align-items:start}
.c-copy{display:flex;flex-direction:column;gap:20px;padding-top:8px}
.c-copy h2{color:#fff;font-size:clamp(34px,3.8vw,48px);line-height:1.08;letter-spacing:-.035em}
.ar .c-copy h2{line-height:1.3}
.c-copy .cp{color:#B9B8C4;font-size:17px}
.ticks.light{--tc:#C9B5FA;--tl:#26262F}
.ticks.light li{color:#E6E4EC}
.c-mail{font-size:15px;color:#B9B8C4;margin-top:8px}
.c-mail a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.form{position:relative;background:#FAF6EF;border-radius:20px;padding:32px;display:flex;flex-direction:column;gap:16px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fld{display:flex;flex-direction:column;gap:7px;font-size:14px;font-weight:500;color:#1D1D24}
.fld em{font-style:normal;font-weight:400;color:#6A6873}
.fld input,.fld select,.fld textarea{font:400 16px 'Plus Jakarta Sans','IBM Plex Sans Arabic',system-ui,sans-serif;color:#0E0E12;background:#fff;border:1px solid #D9CFBE;border-radius:12px;padding:0 14px;height:50px;width:100%;transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
.ar .fld input[dir=ltr]{text-align:right}
.fld textarea{height:auto;padding:12px 14px;resize:vertical;min-height:96px;line-height:1.5}
.fld select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%2357555F' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-inline-end:36px}
.ar .fld select{background-position:left 14px center}
.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:#6B12E8;box-shadow:0 0 0 3px rgba(107,18,232,.15)}
.fld .bad{border-color:#C0262D}
.f-note{font-size:13px;color:#6A6873;text-align:center}
.f-msg{font-size:14px;color:#C0262D;text-align:center}
.f-msg:empty{display:none}
.f-msg a{color:inherit;text-decoration:underline}
.f-ok{position:absolute;inset:0;background:#FAF6EF;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px;padding:32px}
.f-ok[hidden]{display:none}
.ok-ic{width:64px;height:64px;border-radius:32px;background:#6B12E8;color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.f-ok h3{font-size:24px}
.f-ok p{color:#57555F;max-width:320px}

/* footer */
.ftr{padding:0 0 40px}
.ftop{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,5fr) minmax(0,3fr);gap:48px;padding-top:72px;border-top:1px solid #E6DDCC}
.fbrand{display:flex;flex-direction:column;gap:18px}
.fbrand img{width:188px;height:34px}
.fbrand p,.fstay p{font-size:15px;line-height:1.6;color:#57555F;max-width:320px}
.fmail{display:inline-flex;align-items:center;gap:10px;font-size:15px;color:#1D1D24;font-weight:500}
.fmail:hover{color:#6B12E8}
.socs{display:flex;gap:8px}
.soc{width:44px;height:44px;border-radius:12px;border:1px solid #E6DDCC;display:flex;align-items:center;justify-content:center;color:#33333D;background:#fff;transition:color .2s,border-color .2s}
.soc:hover{color:#6B12E8;border-color:#6B12E8}
.fcols{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fcol{display:flex;flex-direction:column;gap:12px}
.fcol h3,.fstay h3{font-size:15px;font-weight:500;margin-bottom:6px}
.fcol a{font-size:15px;color:#57555F}
.fcol a:hover{color:#6B12E8}
.fstay{display:flex;flex-direction:column;gap:12px}
.stay{display:flex;gap:8px;margin-top:6px}
.stay input{flex:1;min-width:0;height:48px;border:1px solid #D9CFBE;border-radius:12px;padding:0 14px;font:400 15px 'Plus Jakarta Sans','IBM Plex Sans Arabic',system-ui,sans-serif;background:#fff}
.ar .stay input{text-align:right}
.stay input:focus{outline:none;border-color:#6B12E8;box-shadow:0 0 0 3px rgba(107,18,232,.15)}
.fstay .f-msg{text-align:start}
.fstay .f-msg.ok{color:#2E7D4F}
.fbot{margin-top:64px;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:14px;color:#6A6873;flex-wrap:wrap}

/* ===== responsive ===== */
@media (max-width:1180px){
  .navpill .ni{padding:0 12px}
  .tiles-scroll{overflow-x:auto;scroll-padding-inline:24px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .tiles-scroll::-webkit-scrollbar{display:none}
  .tiles{display:flex;width:max-content;max-width:none}
  .tile{width:240px;flex-shrink:0;scroll-snap-align:start}
  .tc.z30{zoom:.66}.tc.z26{zoom:.76}
}
@media (max-width:1060px){
  .navpill{display:none}
  .hdr-in{grid-template-columns:auto 1fr}
  .menu-btn{display:inline-flex}
  .bento{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cell.wide{grid-column:1/-1}
  .cell.dark{flex-direction:column;align-items:stretch}
  .ins-copy{width:auto}
  .why-intro{grid-column:1/-1;padding:0}
  .why-grid{grid-column:1/-1}
  .results{grid-template-columns:repeat(3,minmax(0,1fr))}
  .res-intro{grid-column:1/-1}
  .stat:first-of-type{padding-inline-start:0;border:0}
  .stories{grid-template-columns:1fr}
  .st-main,.st-side{grid-column:auto;padding:0}
  .st-side{padding-top:32px;border-top:1px solid #E6DDCC}
  .contact{grid-template-columns:1fr;padding:48px}
  .ftop{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .fcols{grid-column:1/-1;order:3}
}
@media (max-width:760px){
  .hide-sm{display:none}
  .hdr-in{height:64px}
  .logo{width:155px;height:28px}
  .hdr.scrolled .hdr-in{height:56px !important}
  html{scroll-padding-top:64px}
  .hero{padding:32px 0 0}
  .hero-copy{align-items:flex-start;text-align:start}
  .ctas{justify-content:flex-start;width:100%}
  .ctas .btn{flex:1 1 100%}
  .meta{justify-content:flex-start;gap:6px 16px}
  .meta .sep{display:none}
  .stage{margin-top:40px;height:470px;border-radius:24px}
  .stage .side{display:none}
  .stage .nt{left:435px !important;top:auto !important;bottom:50px;width:330px !important}
  .sec{padding:80px 0}
  .sec-head{flex-direction:column;align-items:flex-start;gap:16px;margin-bottom:32px}
  .bento{grid-template-columns:1fr;gap:14px}
  .cell,.cell.wide,.cell.dark{padding:24px}
  .cell.wide{flex-direction:column;align-items:stretch;gap:24px}
  .cell-vis{display:flex;justify-content:center}
  .cell h3,.cell.wide h3,.h3l{font-size:24px !important}
  .kpis{width:auto;flex-direction:row}
  .kpi{flex:1}
  .ins-vis{flex-direction:column}
  .why-grid{grid-template-columns:1fr;gap:28px}
  .results{grid-template-columns:1fr;gap:0}
  .stat{padding:20px 0;border:0;border-bottom:1px solid #E6DDCC;display:flex;align-items:baseline;gap:16px}
  .stat:first-of-type{padding:20px 0}
  .sv{width:130px;flex-shrink:0}
  .sl{margin:0}
  .contact{padding:32px 20px;border-radius:24px}
  .form{padding:20px}
  .row2{grid-template-columns:1fr}
  .ftop{grid-template-columns:minmax(0,1fr);gap:40px;padding-top:48px}
  .fcols{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
}
@media (max-width:400px){
  .wrap{padding:0 16px}
  .wrap.stories,.wrap.results{width:calc(100% - 32px)}
  .tiles-scroll{scroll-padding-inline:16px}
  .cell-vis .p3d,.vis-b .p3d{zoom:.9}
  .fcols{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tc{transition:none}}

/* IBM Plex: slightly looser tracking than the previous display font */
.hero h1{letter-spacing:-.035em}
.ar body,body.ar{font-feature-settings:normal}
body.ar{line-height:1.7}

.ar body,body.ar{font-size:16.5px}
