/* InvestHub V7.1 — cinematic investment-portal landing experience.
   Inspired by the motion/color language of leading national investment portals,
   while keeping InvestHub's own content, components and brand assets. */

/* Header: compact official-style utility bar + black primary navigation. */
.site-body { background: #fff; }
.site-header.ih-site-header,
.site-header.ih-site-header.is-scrolled {
    border-bottom: 0;
    background: var(--ih7-black);
    color: #fff;
}
.site-header.ih-site-header.is-scrolled { box-shadow: 0 16px 40px rgba(0,0,0,.18); }
.ih-portal-strip { border-bottom: 1px solid #dde5e8; background: #f3f4f5; }
.ih-portal-strip__inner { min-height: 31px; color: #26383d; font-size: .61rem; }
.ih-portal-strip__inner > span i,
.ih-portal-strip__inner > a { color: var(--ih7-teal); }
.ih-public-nav { min-height: 72px; }
.ih-public-nav .ih-brand { color: #fff; }
.ih-public-nav .ih-brand__mark {
    width: 46px; height: 46px; border-color: rgba(255,255,255,.18);
    background: linear-gradient(145deg,var(--ih7-teal),#006b68); color:#fff;
}
.ih-public-nav .ih-brand__copy strong { color: #fff; }
.ih-public-nav .ih-brand__copy small { color: #aeb9bc; }
.ih-public-nav__links { gap: .18rem; }
.ih-public-nav__links .nav-link { padding: .88rem .7rem !important; color: #f1f5f5; font-size: .75rem; }
.ih-public-nav__links .nav-link:hover,.ih-public-nav__links .nav-link.active { color: #fff; }
.ih-public-nav__links .nav-link::after { inset-block-end: .32rem; height: 3px; background: var(--ih7-teal-bright); }
.ih-language-button { min-height: 40px; border-color: rgba(255,255,255,.22); color: #fff; }
.ih-language-button:hover,.ih-language-button:focus { background: rgba(255,255,255,.08); color:#fff; }
.ih-nav-signin { color:#fff; }
.ih-nav-cta {
    min-height: 43px; padding-inline: 1.05rem; border: 0 !important; border-radius: 999px !important;
    background: var(--ih7-teal) !important; color:#fff !important;
}
.ih-nav-cta:hover { background: var(--ih7-teal-bright) !important; }
.ih-nav-toggle { border-color:rgba(255,255,255,.2); background:transparent; }
.ih-nav-toggle span { background:#fff; }

/* Global landing rhythm: tighter than V7.0. */
.ih-cms-public { padding-block: clamp(3rem,4.3vw,4.7rem); }
.ih-cms-public[data-density="compact"] { padding-block: clamp(2.2rem,3.1vw,3.35rem); }
.ih-cms-public[data-density="spacious"] { padding-block: clamp(3.6rem,5vw,5.35rem); }
.ih-cms-section-head { width:min(920px,100%); margin-bottom: clamp(1.7rem,3vw,2.45rem); }
.ih-cms-section-head h2 { margin:.55rem 0 .75rem; font-size:clamp(2.15rem,3.7vw,4rem); line-height:1.08; }
html[lang="ar"] .ih-cms-section-head h2 { line-height:1.24; }
.ih-cms-section-head p { margin-bottom:0; max-width:760px; font-size:.91rem; line-height:1.72; }
.ih-eyebrow { color:var(--ih7-teal); }
.ih-eyebrow > span { width:34px; }
.ih-cms-public--dark .ih-eyebrow,.ih-cms-public--brand .ih-eyebrow { color:#fff; }

/* Alternating palette mirrors the visual cadence in Invest Saudi references. */
.ih-cms-public--soft {
    background:
        radial-gradient(circle at 88% 22%,rgba(0,183,178,.12),transparent 30%),
        radial-gradient(circle at 12% 76%,rgba(124,63,152,.11),transparent 32%),
        linear-gradient(115deg,#f1edf6 0%,#edf2f7 48%,#e5f6f6 100%);
}
.ih-cms-public--sand {
    background:
        linear-gradient(90deg,rgba(255,255,255,.55),rgba(255,255,255,.15)),
        linear-gradient(120deg,#ece7f2,#e8f3f5 58%,#dff5f3);
}
.ih-cms-public--dark {
    background:
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(135deg,var(--ih7-navy-2),var(--ih7-navy));
    background-size:54px 54px,54px 54px,auto;
}
.ih-cms-public--brand {
    background:
        radial-gradient(circle at 15% 110%,rgba(0,183,178,.22),transparent 34%),
        linear-gradient(125deg,#002c2b 0%,#003f3d 48%,#005b58 100%);
}

/* Hero: full-bleed, faster vertical rhythm, rich motion layer. */
.ih-cms-public--hero {
    min-height: min(650px,80vh); padding-block: clamp(3.2rem,4.8vw,4.9rem);
    background:
        radial-gradient(circle at 82% 24%,rgba(0,183,178,.23),transparent 25%),
        radial-gradient(circle at 12% 82%,rgba(124,63,152,.18),transparent 32%),
        linear-gradient(125deg,#00191c 0%,#002f31 55%,#003f3d 100%);
}
.ih-cms-public--hero::before {
    content:""; position:absolute; inset:-20% -5%; width:auto; aspect-ratio:auto; border:0; border-radius:0; box-shadow:none;
    opacity:.32; background:
        radial-gradient(circle at 12% 12%,rgba(255,255,255,.22) 0 1px,transparent 1.4px),
        radial-gradient(circle at 82% 64%,rgba(255,255,255,.16) 0 1px,transparent 1.4px);
    background-size:46px 46px,62px 62px; transform:translate3d(0,calc(var(--ih-scroll-y,0px) * .06),0);
    pointer-events:none;
}
.ih-cms-public--hero::after {
    content:""; position:absolute; inset:auto -12% -48% auto; width:min(62vw,920px); aspect-ratio:1; border-radius:50%;
    opacity:1; background:radial-gradient(circle,rgba(0,183,178,.18),rgba(0,183,178,.04) 38%,transparent 64%);
    filter:blur(2px); pointer-events:none;
}
.ih-cms-hero__grid { position:relative; z-index:2; grid-template-columns:minmax(0,1.02fr) minmax(390px,.98fr); gap:clamp(2rem,4.6vw,4.8rem); }
.ih-cms-hero__copy h1 { max-width:12ch; margin:.75rem 0 1rem; font-size:clamp(3.2rem,5.8vw,6.2rem); font-weight:720; line-height:.96; }
html[lang="ar"] .ih-cms-hero__copy h1 { max-width:13.5ch; font-size:clamp(3rem,5.3vw,5.7rem); line-height:1.08; }
.ih-cms-hero__copy p { max-width:680px; color:#c2d0d2; font-size:clamp(.94rem,1.15vw,1.08rem); line-height:1.78; }
.ih-cms-actions { margin-top:1.35rem; gap:.8rem; }
.ih-cms-actions .btn { border-radius:999px; }
.ih-cms-public--hero .btn-light { background:var(--ih7-teal); border-color:var(--ih7-teal); color:#fff; }
.ih-cms-public--hero .btn-light:hover { background:var(--ih7-teal-bright); border-color:var(--ih7-teal-bright); }
.ih-cms-search {
    width:min(100%,700px); margin-top:1.5rem; padding:.34rem; border:1px solid rgba(255,255,255,.22); border-radius:14px;
    background:rgba(3,19,21,.66); box-shadow:none; backdrop-filter:blur(14px);
}
.ih-cms-search > i { color:#fff; }
.ih-cms-search input { color:#fff; }
.ih-cms-search input::placeholder { color:#aab9bb; }
.ih-cms-search button { min-height:44px; border-radius:10px; background:var(--ih7-teal); color:#fff; }
.ih-cms-hero__media { min-height:390px; border:1px solid rgba(255,255,255,.18); border-radius:22px; box-shadow:0 34px 78px rgba(0,0,0,.27); transform:translateZ(0); }
.ih-cms-hero__media img,.ih-cms-hero__media video { min-height:390px; }
.ih-cms-public--hero.is-background-media { min-height:min(680px,82vh); }
.ih-cms-public--hero.is-background-media .ih-cms-hero__copy { padding-block:2rem; }
.ih-cms-public--hero.is-background-media .ih-cms-hero__media { opacity:.58; }
.ih-cms-public--hero.is-background-media .ih-cms-hero__media::after {
    background:linear-gradient(90deg,rgba(0,15,18,.96) 0%,rgba(0,31,34,.76) 48%,rgba(0,64,63,.24) 100%);
}
[dir="rtl"] .ih-cms-public--hero.is-background-media .ih-cms-hero__media::after {
    background:linear-gradient(270deg,rgba(0,15,18,.96) 0%,rgba(0,31,34,.76) 48%,rgba(0,64,63,.24) 100%);
}
.ih-cms-hero-rail { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:1.55rem; max-width:700px; }
.ih-cms-hero-rail span { height:3px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.24); }
.ih-cms-hero-rail span::after { content:""; display:block; width:45%; height:100%; border-radius:inherit; background:#fff; animation:ih-rail 4.8s ease-in-out infinite; }
.ih-cms-hero-rail span:nth-child(2)::after { animation-delay:.65s; }
.ih-cms-hero-rail span:nth-child(3)::after { animation-delay:1.3s; }
@keyframes ih-rail { 0%,100%{transform:translateX(-5%);opacity:.55} 50%{transform:translateX(125%);opacity:1} }

/* Statistics: compact floating cards on a pastel investment-services field. */
.ih-cms-public--stats { background:
    radial-gradient(circle at 88% 30%,rgba(0,183,178,.14),transparent 28%),
    radial-gradient(circle at 14% 65%,rgba(177,28,105,.08),transparent 30%),
    linear-gradient(110deg,#f0eaf5,#eef1f7 48%,#e2f4f4); }
.ih-cms-stats { gap:1.05rem; border:0; overflow:visible; background:transparent; }
.ih-cms-stats article {
    min-height:145px; justify-content:center; gap:.25rem; padding:1.2rem 1.35rem; border:0 !important; border-radius:18px;
    background:rgba(255,255,255,.92); box-shadow:0 18px 48px rgba(0,40,55,.07); transition:transform .28s var(--ih7-ease),box-shadow .28s ease;
}
.ih-cms-stats article:hover { transform:translateY(-6px); box-shadow:0 24px 60px rgba(0,40,55,.12); }
.ih-cms-stats i { margin:0 0 .35rem; color:var(--ih7-teal); font-size:1.3rem; }
.ih-cms-stats strong { font-size:clamp(2rem,3vw,3.15rem); color:var(--ih7-teal); font-weight:800; line-height:1; }
.ih-cms-stats span { color:#52646a; font-size:.75rem; }

/* Feature cards: color fan similar to investment-pillar cards. */
.ih-cms-card-grid { gap:1rem; border:0; overflow:visible; background:transparent; }
.ih-cms-card-grid article {
    min-height:220px; overflow:hidden; padding:1.35rem; border:0 !important; border-radius:18px;
    background:#fff; box-shadow:0 16px 44px rgba(0,38,50,.07); transition:transform .32s var(--ih7-ease),box-shadow .32s ease;
}
.ih-cms-card-grid article:hover { transform:translateY(-7px); box-shadow:0 24px 58px rgba(0,38,50,.13); }
.ih-cms-card-grid article:nth-child(5n+1) { --ih-card-accent:#009d99; }
.ih-cms-card-grid article:nth-child(5n+2) { --ih-card-accent:#006a87; }
.ih-cms-card-grid article:nth-child(5n+3) { --ih-card-accent:#004f66; }
.ih-cms-card-grid article:nth-child(5n+4) { --ih-card-accent:#6e438f; }
.ih-cms-card-grid article:nth-child(5n+5) { --ih-card-accent:#a41e68; }
.ih-cms-card-icon { margin-bottom:1.25rem; background:color-mix(in srgb,var(--ih-card-accent) 12%,white); color:var(--ih-card-accent); }
.ih-cms-card-grid small { color:var(--ih-card-accent); }
.ih-cms-card-grid h3 { margin:.65rem 0 .5rem; font-size:1.17rem; }
.ih-cms-card-grid p { font-size:.76rem; line-height:1.65; }
.ih-cms-card-media { margin:-1.35rem -1.35rem 1rem; }
.ih-cms-public--cards:not(.ih-cms-public--steps) .ih-cms-card-grid article {
    color:#fff;
    background:linear-gradient(145deg,color-mix(in srgb,var(--ih-card-accent) 68%,#002735),color-mix(in srgb,var(--ih-card-accent) 24%,#001b2a));
    box-shadow:0 18px 48px rgba(0,34,48,.14);
}
.ih-cms-public--cards:not(.ih-cms-public--steps) .ih-cms-card-grid h3 { color:#fff; }
.ih-cms-public--cards:not(.ih-cms-public--steps) .ih-cms-card-grid p { color:#d2dfe1; }
.ih-cms-public--cards:not(.ih-cms-public--steps) .ih-cms-card-icon { background:rgba(255,255,255,.12); color:#fff; }
.ih-cms-public--cards:not(.ih-cms-public--steps) .ih-cms-card-grid small { color:#fff; opacity:.82; }
.ih-cms-public--brand.ih-cms-public--cards .ih-cms-card-grid,
.ih-cms-public--dark.ih-cms-public--cards .ih-cms-card-grid { gap:1rem; }
.ih-cms-public--brand.ih-cms-public--cards .ih-cms-card-grid article,
.ih-cms-public--dark.ih-cms-public--cards .ih-cms-card-grid article {
    min-height:235px; color:#fff; background:
       linear-gradient(145deg,color-mix(in srgb,var(--ih-card-accent) 72%,#001d28),#001c2d 90%);
    box-shadow:none;
}
.ih-cms-public--brand.ih-cms-public--cards .ih-cms-card-grid h3,
.ih-cms-public--dark.ih-cms-public--cards .ih-cms-card-grid h3 { color:#fff; }
.ih-cms-public--brand.ih-cms-public--cards .ih-cms-card-grid p,
.ih-cms-public--dark.ih-cms-public--cards .ih-cms-card-grid p { color:#c7d5d8; }

/* Steps become dense 2x2/4-up program cards instead of giant empty blocks. */
.ih-cms-public--steps { background:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(135deg,#002d2d,#004d4b); background-size:48px 48px,48px 48px,auto; color:#fff; }
.ih-cms-public--steps .ih-cms-section-head h2,.ih-cms-public--steps .ih-cms-section-head p { color:#fff; }
.ih-cms-public--steps .ih-cms-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:1rem; }
.ih-cms-public--steps .ih-cms-card-grid article {
    min-height:215px; display:grid; grid-template-columns:minmax(0,1fr) auto; align-content:start; column-gap:1rem;
    background:linear-gradient(120deg,rgba(0,15,19,.62),rgba(0,96,91,.24)); border:1px solid rgba(255,255,255,.08) !important; box-shadow:none;
}
.ih-cms-public--steps .ih-cms-step-number { grid-column:2; grid-row:1/4; align-self:center; color:transparent; font-size:clamp(3.8rem,7vw,7rem); font-weight:800; line-height:1; -webkit-text-stroke:1px rgba(255,255,255,.30); }
.ih-cms-public--steps .ih-cms-card-grid h3 { grid-column:1; margin:.4rem 0 .5rem; color:#fff; font-size:clamp(1.45rem,2vw,2rem); }
.ih-cms-public--steps .ih-cms-card-grid p { grid-column:1; margin:0; color:#bfd0d1; }

/* Split sections: no more large blank media panel when admin has not uploaded media. */
.ih-cms-split { grid-template-columns:minmax(0,.92fr) minmax(380px,1.08fr); gap:clamp(2rem,4vw,4rem); }
.ih-cms-split__copy h2 { margin:.6rem 0 .8rem; font-size:clamp(2.3rem,4vw,4.25rem); line-height:1.08; }
html[lang="ar"] .ih-cms-split__copy h2 { line-height:1.25; }
.ih-cms-mini-list { margin-top:1.3rem; }
.ih-cms-mini-list article { padding:.75rem 0; }
.ih-cms-split__media { min-height:390px; border-radius:20px; }
.ih-cms-split__media img,.ih-cms-split__media video { min-height:390px; }
.ih-cms-split.is-media-empty { align-items:start; }
.ih-cms-split.is-media-empty .ih-cms-split__media { min-height:0; overflow:visible; background:transparent; }
.ih-cms-journey-visual { position:relative; min-height:360px; padding:1rem 0; }
.ih-cms-journey-visual::before { content:""; position:absolute; inset:9% 10%; border-radius:36px; background:linear-gradient(135deg,#00283f,#004e55 58%,#00a09b); transform:rotate(-3deg); opacity:.9; box-shadow:0 28px 70px rgba(0,40,55,.18); }
.ih-cms-journey-visual__card {
    position:absolute; width:min(76%,430px); min-height:92px; display:grid; grid-template-columns:42px minmax(0,1fr); gap:.8rem; align-items:center;
    padding:1rem 1.1rem; border:1px solid rgba(255,255,255,.16); border-radius:17px; background:rgba(0,38,55,.92); color:#fff; box-shadow:0 18px 42px rgba(0,23,34,.20); backdrop-filter:blur(10px);
}
.ih-cms-journey-visual__card:nth-child(1){ inset-inline-start:2%; inset-block-start:3%; transform:rotate(-2deg); }
.ih-cms-journey-visual__card:nth-child(2){ inset-inline-end:1%; inset-block-start:27%; transform:rotate(2deg); background:rgba(0,129,126,.94); }
.ih-cms-journey-visual__card:nth-child(3){ inset-inline-start:5%; inset-block-start:52%; transform:rotate(-1deg); background:rgba(96,54,128,.94); }
.ih-cms-journey-visual__card:nth-child(4){ inset-inline-end:4%; inset-block-start:76%; transform:rotate(1.5deg); background:rgba(0,72,90,.96); }
.ih-cms-journey-visual__card > span { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.14); font-size:.72rem; font-weight:850; }
.ih-cms-journey-visual__card strong { color:#fff; font-size:.9rem; }
.ih-cms-journey-visual__card small { display:block; margin-top:.16rem; color:#c8d7da; font-size:.66rem; }

/* Showcase / trust: layered cards instead of an empty green rectangle. */
.ih-cms-showcase { grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr); gap:1rem; }
.ih-cms-showcase__media { min-height:430px; border-radius:22px; background:linear-gradient(135deg,var(--ih7-navy),#004846); }
.ih-cms-showcase__media img,.ih-cms-showcase__media video { min-height:430px; }
.ih-cms-showcase.is-media-empty .ih-cms-showcase__media { min-height:430px; overflow:visible; background:transparent; }
.ih-cms-story-stack { position:relative; height:430px; perspective:1200px; }
.ih-cms-story-stack__card {
    position:absolute; inset-block:5% 8%; width:72%; padding:1.4rem; border-radius:22px; color:#fff;
    background:linear-gradient(145deg,#00a09b,#006b72); box-shadow:0 24px 70px rgba(0,34,48,.18); transform-origin:center; transition:transform .35s var(--ih7-ease),filter .35s ease;
}
.ih-cms-story-stack__card:nth-child(1){ inset-inline-start:0; z-index:4; transform:translateX(0) rotate(-1deg); }
.ih-cms-story-stack__card:nth-child(2){ inset-inline-start:12%; z-index:3; transform:translateX(8%) scale(.96); background:linear-gradient(145deg,#007f85,#005b74); }
.ih-cms-story-stack__card:nth-child(3){ inset-inline-start:24%; z-index:2; transform:translateX(16%) scale(.92); background:linear-gradient(145deg,#71438e,#313b73); }
.ih-cms-story-stack__card:nth-child(4){ inset-inline-start:36%; z-index:1; transform:translateX(24%) scale(.88); background:linear-gradient(145deg,#a41e68,#5e315f); }
[dir="rtl"] .ih-cms-story-stack__card:nth-child(2){ transform:translateX(-8%) scale(.96); }
[dir="rtl"] .ih-cms-story-stack__card:nth-child(3){ transform:translateX(-16%) scale(.92); }
[dir="rtl"] .ih-cms-story-stack__card:nth-child(4){ transform:translateX(-24%) scale(.88); }
.ih-cms-story-stack__card strong { display:block; color:#fff; font-size:clamp(2.2rem,4vw,4.2rem); }
.ih-cms-story-stack__card span { color:#d7e7e8; font-size:.75rem; }
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(2){ transform:translateX(18%) scale(.97); }
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(3){ transform:translateX(36%) scale(.94); }
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(4){ transform:translateX(54%) scale(.91); }
[dir="rtl"] .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(2){ transform:translateX(-18%) scale(.97); }
[dir="rtl"] .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(3){ transform:translateX(-36%) scale(.94); }
[dir="rtl"] .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(4){ transform:translateX(-54%) scale(.91); }
.ih-cms-showcase__aside { min-height:430px; padding:1.55rem; border-radius:22px; background:linear-gradient(145deg,#002d2d,#00514f); }
.ih-cms-showcase__aside h2 { margin:.6rem 0 .75rem; font-size:clamp(1.9rem,3vw,3rem); }
.ih-cms-showcase__metrics article { padding:.78rem 0; }

/* Opportunities: tighter section, compact zero-state. */
.ih-section.ih-section--deals.ih-cms-public { padding-block:clamp(3rem,4.2vw,4.5rem); background:#fff; }
.ih-section.ih-section--deals .ih-section-head { margin-bottom:1.8rem; gap:2.5rem; }
.ih-section.ih-section--deals .ih-section-head h2 { font-size:clamp(2.25rem,3.8vw,4rem); }
.ih-section.ih-section--deals .ih-empty { min-height:145px; padding:1.3rem; }
.ih-deal-card { border-radius:18px; }
.ih-deal-card__media-wrap { height:240px; }

/* FAQ: compact, clearer active state. */
.ih-cms-public--accordion { background:#f5f8f8; }
.ih-cms-accordion { border-top:0; }
.ih-cms-accordion details { margin-bottom:.55rem; padding-inline:1rem; border:1px solid #dce6e8; border-radius:13px; background:#fff; }
.ih-cms-accordion summary { padding:1rem 0; }
.ih-cms-accordion details[open] { border-color:rgba(0,169,165,.4); box-shadow:0 14px 34px rgba(0,62,72,.06); }
.ih-cms-accordion__body { padding-bottom:1rem; }

/* CTA: high-impact but no oversized dead space. */
.ih-cms-public--cta { padding-block:clamp(2.8rem,4vw,4.3rem); background:#fff; }
.ih-cms-cta { padding:clamp(2rem,4vw,3.5rem); border-radius:26px; background:
    radial-gradient(circle at 16% 110%,rgba(124,63,152,.30),transparent 35%),
    linear-gradient(120deg,#001c2d,#003d3b 56%,#006c68); }
.ih-cms-cta h2 { margin:.55rem 0 .75rem; font-size:clamp(2.2rem,4vw,4.1rem); line-height:1.08; }
html[lang="ar"] .ih-cms-cta h2 { line-height:1.28; }

/* Media gallery: slightly dynamic editorial grid. */
.ih-cms-media-grid { gap:.8rem; }
.ih-cms-media-grid figure { border:0; border-radius:18px; box-shadow:0 14px 34px rgba(0,35,46,.07); transition:transform .28s var(--ih7-ease); }
.ih-cms-media-grid figure:hover { transform:translateY(-5px); }

/* Scroll reveal + pointer motion, progressively enhanced by landing-experience.js. */
.js-ih-motion [data-ih-reveal] { opacity:0; transform:translate3d(0,24px,0); transition:opacity .7s var(--ih7-ease),transform .7s var(--ih7-ease); transition-delay:var(--ih-reveal-delay,0ms); }
.js-ih-motion [data-ih-reveal="left"] { transform:translate3d(-28px,0,0); }
html[dir="rtl"].js-ih-motion [data-ih-reveal="left"] { transform:translate3d(28px,0,0); }
.js-ih-motion [data-ih-reveal="right"] { transform:translate3d(28px,0,0); }
html[dir="rtl"].js-ih-motion [data-ih-reveal="right"] { transform:translate3d(-28px,0,0); }
.js-ih-motion [data-ih-reveal].is-visible { opacity:1; transform:translate3d(0,0,0); }
[data-ih-tilt] { transform-style:preserve-3d; will-change:transform; }

@media (max-width:1199.98px) {
    .ih-cms-hero__grid { grid-template-columns:minmax(0,1fr) minmax(350px,.84fr); gap:2.4rem; }
    .ih-cms-public--steps .ih-cms-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:991.98px) {
    .site-header.ih-site-header,.site-header.ih-site-header.is-scrolled { background:var(--ih7-black); }
    .ih-public-nav__collapse { margin-top:.55rem; padding:.8rem 0 1rem; border-top:1px solid rgba(255,255,255,.12); background:var(--ih7-black); }
    .ih-public-nav__links .nav-link { color:#fff; }
    .ih-public-nav__actions { border-top-color:rgba(255,255,255,.12); }
    .ih-cms-hero__grid,.ih-cms-split,.ih-cms-showcase { grid-template-columns:1fr; }
    .ih-cms-hero__media { min-height:340px; }
    .ih-cms-hero__media img,.ih-cms-hero__media video { min-height:340px; }
    .ih-cms-journey-visual { min-height:330px; }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__media,.ih-cms-story-stack { min-height:360px; height:360px; }
    .ih-cms-showcase__aside { min-height:0; }
}
@media (max-width:767.98px) {
    .ih-portal-strip { display:none; }
    .ih-public-nav { min-height:66px; }
    .ih-cms-public,.ih-cms-public[data-density="spacious"] { padding-block:3.4rem; }
    .ih-cms-public[data-density="compact"] { padding-block:2.7rem; }
    .ih-cms-section-head { margin-bottom:1.55rem; }
    .ih-cms-public--hero { min-height:0; padding-block:3.2rem 3.7rem; }
    .ih-cms-hero__copy h1 { font-size:clamp(2.7rem,12.5vw,4.2rem); }
    .ih-cms-hero-rail { gap:7px; }
    .ih-cms-stats { gap:.65rem; }
    .ih-cms-stats article { min-height:118px; padding:1rem; }
    .ih-cms-card-grid { gap:.7rem; }
    .ih-cms-card-grid article { min-height:190px; }
    .ih-cms-public--steps .ih-cms-card-grid { grid-template-columns:1fr !important; }
    .ih-cms-public--steps .ih-cms-card-grid article { min-height:175px; }
    .ih-cms-public--steps .ih-cms-step-number { font-size:4.5rem; }
    .ih-cms-journey-visual { min-height:390px; }
    .ih-cms-journey-visual__card { width:88%; }
    .ih-cms-journey-visual__card:nth-child(1){ inset-block-start:0; }
    .ih-cms-journey-visual__card:nth-child(2){ inset-block-start:24%; }
    .ih-cms-journey-visual__card:nth-child(3){ inset-block-start:48%; }
    .ih-cms-journey-visual__card:nth-child(4){ inset-block-start:72%; }
    .ih-cms-story-stack__card { width:78%; }
    .ih-section.ih-section--deals .ih-section-head { gap:1rem; }
}
@media (max-width:479.98px) {
    .ih-cms-search { grid-template-columns:38px minmax(0,1fr); }
    .ih-cms-search button { grid-column:1/-1; width:100%; margin-top:.25rem; }
    .ih-cms-stats { grid-template-columns:1fr !important; }
    .ih-cms-story-stack__card { width:83%; padding:1rem; }
    .ih-cms-cta { padding:1.6rem 1.15rem; }
}

@media (prefers-reduced-motion:reduce) {
    .ih-cms-hero-rail span::after { animation:none; width:65%; }
    .js-ih-motion [data-ih-reveal] { opacity:1; transform:none; transition:none; }
    [data-ih-tilt] { transform:none !important; }
}

/* Fallback home keeps the same V7.1 identity when the CMS has no active sections. */
.ih-home-hero {
    min-height:650px; padding:3.4rem 0 0;
    background:
        radial-gradient(circle at 82% 24%,rgba(0,183,178,.23),transparent 25%),
        radial-gradient(circle at 12% 82%,rgba(124,63,152,.18),transparent 30%),
        linear-gradient(125deg,#00191c,#002f31 55%,#003f3d);
}
.ih-home-hero__grid { gap:clamp(2rem,4.5vw,4.5rem); }
.ih-home-hero__copy { padding-block:1rem 2.4rem; }
.ih-home-hero__copy h1 { font-size:clamp(3.2rem,5.8vw,6.2rem); font-weight:720; }
html[lang="ar"] .ih-home-hero__copy h1 { font-size:clamp(3rem,5.3vw,5.7rem); }
.ih-hero-search { margin-top:1.45rem; border:1px solid rgba(255,255,255,.22); border-radius:14px; background:rgba(3,19,21,.66); box-shadow:none; backdrop-filter:blur(14px); }
.ih-hero-search input { color:#fff; }
.ih-hero-search button { border-radius:10px; background:var(--ih7-teal); color:#fff; }
.ih-home-hero__visual { min-height:430px; }
.ih-featured-deal { border-radius:22px; }
.ih-featured-deal__media { height:245px; }
.ih-market-proof { margin-top:2.5rem; }
.ih-market-proof > div { min-height:96px; }
.ih-section,.ih-gateway-section { padding-block:clamp(3rem,4.5vw,4.9rem); }
.ih-section-head { gap:2.5rem; margin-bottom:2rem; }
.ih-section-head h2,.ih-gateway-intro h2 { font-size:clamp(2.25rem,3.8vw,4.05rem); }
.ih-gateway-intro { margin-bottom:1.8rem; }
.ih-gateway-grid { gap:.8rem; border:0; }
.ih-gateway-grid > a { min-height:205px; border:0 !important; border-radius:18px; color:#fff; box-shadow:0 16px 42px rgba(0,34,48,.10); }
.ih-gateway-grid > a:nth-child(4n+1) { background:linear-gradient(145deg,#008f8b,#005862); }
.ih-gateway-grid > a:nth-child(4n+2) { background:linear-gradient(145deg,#00627d,#003f5d); }
.ih-gateway-grid > a:nth-child(4n+3) { background:linear-gradient(145deg,#73438f,#3f366e); }
.ih-gateway-grid > a:nth-child(4n+4) { background:linear-gradient(145deg,#aa206c,#64345f); }
.ih-gateway-grid > a h3,.ih-gateway-grid > a p,.ih-gateway-grid > a > span { color:#fff; }
.ih-home-reasons { background:linear-gradient(110deg,#f0eaf5,#edf2f7 48%,#e2f4f4); }
.ih-home-reason-grid { gap:.75rem; border:0; }
.ih-home-reason-grid article { min-height:200px; border:0 !important; border-radius:16px; background:#fff; }
.ih-home-reason-grid i { margin-bottom:1.5rem; }
.ih-intelligence-section { background:linear-gradient(135deg,#002d2d,#004d4b); }
.ih-footer { background:#050505; }

/* V7.1.1 — Showcase fallback containment hotfix.
   The CMS-generated trust/story visual must never overlap copy in RTL/LTR. */
.ih-cms-showcase {
    grid-template-columns:minmax(0,1fr) minmax(320px,.88fr);
    gap:clamp(1rem,2vw,1.75rem);
    align-items:stretch;
}

.ih-cms-showcase.is-media-empty .ih-cms-showcase__media {
    min-width:0;
    min-height:0;
    overflow:hidden;
    padding:clamp(.9rem,1.6vw,1.25rem);
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    background:
        radial-gradient(circle at 14% 12%,rgba(0,183,178,.22),transparent 34%),
        radial-gradient(circle at 86% 88%,rgba(124,63,152,.18),transparent 34%),
        linear-gradient(145deg,#002d35,#003f43 58%,#004e50);
}

.ih-cms-story-stack {
    position:relative;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.8rem;
    width:100%;
    height:auto;
    min-height:0;
    perspective:none;
}

.ih-cms-story-stack .ih-cms-story-stack__card {
    position:relative;
    inset:auto;
    width:100%;
    min-width:0;
    min-height:150px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:1rem;
    padding:1.15rem;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.11);
    border-radius:18px;
    box-shadow:0 16px 36px rgba(0,24,35,.16);
    transform:none !important;
    transition:transform .28s var(--ih7-ease),box-shadow .28s ease,border-color .28s ease;
}

.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(1) {
    background:linear-gradient(145deg,#00a5a2,#007f87);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(2) {
    background:linear-gradient(145deg,#008a90,#005c76);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(3) {
    background:linear-gradient(145deg,#744596,#394278);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(4) {
    background:linear-gradient(145deg,#a72570,#66335f);
}

.ih-cms-story-stack .ih-cms-story-stack__card::after {
    content:"";
    position:absolute;
    inline-size:120px;
    block-size:120px;
    inset-inline-end:-48px;
    inset-block-end:-58px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
    pointer-events:none;
}

.ih-cms-story-stack .ih-cms-story-stack__card strong {
    position:relative;
    z-index:1;
    display:block;
    color:#fff;
    font-size:clamp(1.8rem,2.6vw,2.8rem);
    font-weight:760;
    line-height:1;
}

.ih-cms-story-stack .ih-cms-story-stack__card span {
    position:relative;
    z-index:1;
    max-width:20ch;
    color:rgba(255,255,255,.88);
    font-size:.82rem;
    font-weight:620;
    line-height:1.55;
    overflow-wrap:anywhere;
}

.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(1),
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(2),
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(3),
.ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(4) {
    transform:none !important;
}

@media (hover:hover) and (pointer:fine) {
    .ih-cms-story-stack .ih-cms-story-stack__card:hover {
        transform:translateY(-4px) !important;
        border-color:rgba(255,255,255,.22);
        box-shadow:0 22px 46px rgba(0,24,35,.22);
    }
}

.ih-cms-showcase__aside {
    min-width:0;
    min-height:0;
    padding:clamp(1.35rem,2.2vw,2rem);
    overflow:hidden;
}

.ih-cms-showcase__aside h2 {
    max-width:18ch;
    margin:.55rem 0 .7rem;
    font-size:clamp(1.85rem,2.7vw,2.85rem);
    line-height:1.12;
    overflow-wrap:anywhere;
}
html[lang="ar"] .ih-cms-showcase__aside h2 { line-height:1.32; }

.ih-cms-showcase__aside p {
    max-width:58ch;
    line-height:1.8;
}

.ih-cms-showcase__metrics {
    gap:0;
}
.ih-cms-showcase__metrics article {
    min-width:0;
    padding:.72rem 0;
}
.ih-cms-showcase__metrics strong,
.ih-cms-showcase__metrics span {
    overflow-wrap:anywhere;
}

@media (max-width:991.98px) {
    .ih-cms-showcase {
        grid-template-columns:1fr;
    }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__media,
    .ih-cms-story-stack {
        height:auto;
        min-height:0;
    }
    .ih-cms-showcase__aside h2 {
        max-width:22ch;
    }
}

@media (max-width:575.98px) {
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__media {
        padding:.72rem;
        border-radius:18px;
    }
    .ih-cms-story-stack {
        grid-template-columns:1fr;
        gap:.65rem;
    }
    .ih-cms-story-stack .ih-cms-story-stack__card {
        min-height:112px;
        padding:1rem;
        border-radius:15px;
    }
    .ih-cms-story-stack .ih-cms-story-stack__card strong {
        font-size:1.75rem;
    }
    .ih-cms-showcase__aside {
        padding:1.15rem;
        border-radius:18px;
    }
    .ih-cms-showcase__aside h2 {
        font-size:clamp(1.75rem,9vw,2.35rem);
    }
}

@media (prefers-reduced-motion:reduce) {
    .ih-cms-story-stack .ih-cms-story-stack__card {
        transition:none;
        transform:none !important;
    }
}

/* V7.1.2 — Refined layered showcase.
   Restores the original animated editorial stack while keeping every card
   contained inside the media column in both RTL and LTR. */
.ih-cms-showcase.is-media-empty {
    grid-template-columns:minmax(0,1.04fr) minmax(330px,.82fr);
    gap:clamp(1rem,2.1vw,1.9rem);
    align-items:stretch;
}

.ih-cms-showcase.is-media-empty .ih-cms-showcase__media {
    position:relative;
    min-width:0;
    min-height:390px;
    padding:0;
    overflow:hidden;
    isolation:isolate;
    border:1px solid rgba(255,255,255,.085);
    border-radius:28px;
    background:
        radial-gradient(circle at 14% 10%,rgba(0,190,187,.24),transparent 34%),
        radial-gradient(circle at 86% 90%,rgba(123,67,155,.22),transparent 38%),
        linear-gradient(145deg,#002d36 0%,#003f43 52%,#004c4c 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 24px 55px rgba(0,23,31,.11);
}

.ih-cms-showcase.is-media-empty .ih-cms-showcase__media::before,
.ih-cms-showcase.is-media-empty .ih-cms-showcase__media::after {
    content:"";
    position:absolute;
    pointer-events:none;
    border-radius:999px;
    filter:blur(1px);
    z-index:0;
}
.ih-cms-showcase.is-media-empty .ih-cms-showcase__media::before {
    inline-size:210px;
    block-size:210px;
    inset-inline-start:-92px;
    inset-block-start:-108px;
    border:1px solid rgba(255,255,255,.07);
}
.ih-cms-showcase.is-media-empty .ih-cms-showcase__media::after {
    inline-size:280px;
    block-size:280px;
    inset-inline-end:-160px;
    inset-block-end:-180px;
    border:1px solid rgba(0,214,209,.14);
}

.ih-cms-story-stack {
    position:relative;
    z-index:1;
    display:block;
    width:100%;
    height:390px;
    min-height:390px;
    padding:0;
    overflow:hidden;
    perspective:1400px;
}

.ih-cms-story-stack .ih-cms-story-stack__card {
    --ih-card-start:0%;
    position:absolute;
    inset-block:34px 34px;
    inset-inline-start:var(--ih-card-start);
    width:74%;
    min-width:0;
    min-height:0;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    gap:1rem;
    padding:clamp(1.25rem,2vw,1.7rem);
    overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    border-radius:27px;
    color:#fff;
    box-shadow:0 22px 54px rgba(0,22,31,.22);
    transform-origin:center;
    will-change:inset-inline-start,transform;
    transition:
        inset-inline-start .5s cubic-bezier(.2,.8,.2,1),
        transform .5s cubic-bezier(.2,.8,.2,1),
        filter .35s ease,
        box-shadow .35s ease;
}

.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(1) {
    --ih-card-start:0%;
    z-index:4;
    background:linear-gradient(145deg,#05aaa6 0%,#078c96 58%,#057080 100%);
    transform:rotate(-.7deg) translateZ(34px);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(2) {
    --ih-card-start:6%;
    z-index:3;
    background:linear-gradient(145deg,#008c93 0%,#00657a 62%,#064e70 100%);
    transform:scale(.97) rotate(.45deg) translateZ(18px);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(3) {
    --ih-card-start:12%;
    z-index:2;
    background:linear-gradient(145deg,#75509b 0%,#59437f 56%,#3c4274 100%);
    transform:scale(.94) rotate(-.35deg);
}
.ih-cms-story-stack .ih-cms-story-stack__card:nth-child(4) {
    --ih-card-start:18%;
    z-index:1;
    background:linear-gradient(145deg,#aa2b73 0%,#7b3b70 56%,#5e3763 100%);
    transform:scale(.91) rotate(.5deg);
}

.ih-cms-story-stack .ih-cms-story-stack__card::before {
    content:"";
    position:absolute;
    inline-size:190px;
    block-size:190px;
    inset-inline-end:-85px;
    inset-block-end:-105px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:50%;
    box-shadow:0 0 0 30px rgba(255,255,255,.018),0 0 0 64px rgba(255,255,255,.012);
    pointer-events:none;
}
.ih-cms-story-stack .ih-cms-story-stack__card::after {
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(115deg,rgba(255,255,255,.07),transparent 35%,transparent 72%,rgba(255,255,255,.035));
    pointer-events:none;
}

.ih-cms-story-stack .ih-cms-story-stack__card strong,
.ih-cms-story-stack .ih-cms-story-stack__card span {
    position:relative;
    z-index:1;
}
.ih-cms-story-stack .ih-cms-story-stack__card strong {
    align-self:flex-start;
    font-size:clamp(2.6rem,4vw,4.4rem);
    font-weight:790;
    line-height:.9;
    letter-spacing:-.045em;
}
.ih-cms-story-stack .ih-cms-story-stack__card span {
    align-self:flex-end;
    max-width:22ch;
    color:rgba(255,255,255,.92);
    font-size:clamp(.78rem,1vw,.9rem);
    font-weight:650;
    line-height:1.55;
    text-align:end;
    overflow-wrap:anywhere;
}

/* The original fan motion, now bounded by the 74% card width. */
@media (hover:hover) and (pointer:fine) {
    .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(1) {
        --ih-card-start:0%;
        transform:rotate(-1deg) translateY(-3px) translateZ(38px);
    }
    .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(2) {
        --ih-card-start:8%;
        transform:scale(.975) rotate(.65deg) translateY(1px) translateZ(20px);
    }
    .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(3) {
        --ih-card-start:17%;
        transform:scale(.95) rotate(-.5deg) translateY(4px);
    }
    .ih-cms-story-stack:hover .ih-cms-story-stack__card:nth-child(4) {
        --ih-card-start:26%;
        transform:scale(.925) rotate(.7deg) translateY(7px);
    }
    .ih-cms-story-stack .ih-cms-story-stack__card:hover {
        filter:saturate(1.07) brightness(1.035);
        box-shadow:0 30px 70px rgba(0,20,29,.29);
    }
}

/* No duplicated metrics when the stack itself is generated from the same CMS items. */
.ih-cms-showcase.is-media-empty .ih-cms-showcase__aside {
    min-height:390px;
    padding:clamp(1.45rem,2.3vw,2.15rem);
    display:flex;
    flex-direction:column;
    justify-content:center;
    background:
        radial-gradient(circle at 90% 5%,rgba(0,190,187,.12),transparent 34%),
        linear-gradient(145deg,#003533,#004d49);
}
.ih-cms-showcase.is-media-empty .ih-cms-showcase__aside > div:last-child:empty { display:none; }
.ih-cms-showcase.is-media-empty .ih-cms-showcase__aside h2 {
    max-width:15ch;
    font-size:clamp(2rem,3.1vw,3.3rem);
    line-height:1.14;
}
html[lang="ar"] .ih-cms-showcase.is-media-empty .ih-cms-showcase__aside h2 {
    line-height:1.3;
}
.ih-cms-showcase.is-media-empty .ih-cms-showcase__aside p {
    max-width:54ch;
    margin-bottom:0;
}

@media (max-width:991.98px) {
    .ih-cms-showcase.is-media-empty {
        grid-template-columns:1fr;
    }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__media,
    .ih-cms-story-stack {
        min-height:340px;
        height:340px;
    }
    .ih-cms-story-stack .ih-cms-story-stack__card {
        inset-block:28px;
        width:76%;
    }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__aside {
        min-height:0;
    }
}

@media (max-width:575.98px) {
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__media {
        min-height:300px;
        border-radius:20px;
    }
    .ih-cms-story-stack {
        min-height:300px;
        height:300px;
    }
    .ih-cms-story-stack .ih-cms-story-stack__card {
        inset-block:24px;
        width:80%;
        padding:1.05rem;
        border-radius:20px;
    }
    .ih-cms-story-stack .ih-cms-story-stack__card:nth-child(1) { --ih-card-start:0%; }
    .ih-cms-story-stack .ih-cms-story-stack__card:nth-child(2) { --ih-card-start:5%; }
    .ih-cms-story-stack .ih-cms-story-stack__card:nth-child(3) { --ih-card-start:10%; }
    .ih-cms-story-stack .ih-cms-story-stack__card:nth-child(4) { --ih-card-start:15%; }
    .ih-cms-story-stack .ih-cms-story-stack__card strong { font-size:2.35rem; }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__aside { padding:1.25rem; border-radius:20px; }
    .ih-cms-showcase.is-media-empty .ih-cms-showcase__aside h2 { font-size:clamp(1.8rem,9vw,2.45rem); }
}

@media (prefers-reduced-motion:reduce) {
    .ih-cms-story-stack .ih-cms-story-stack__card {
        transition:none;
        will-change:auto;
    }
}

/* V7.1.3 — Interactive layered showcase carousel.
   Keeps the layered editorial look while allowing direct card selection,
   previous/next navigation, keyboard control and touch swipe. */
.ih-cms-story-stack.is-interactive {
    outline:none;
}

.ih-cms-story-stack__viewport {
    position:relative;
    width:100%;
    height:100%;
    min-height:inherit;
    overflow:hidden;
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card {
    appearance:none;
    -webkit-appearance:none;
    font:inherit;
    text-align:inherit;
    cursor:pointer;
    touch-action:pan-y;
    --ih-card-start:0%;
    transition:
        inset-inline-start .48s cubic-bezier(.2,.8,.2,1),
        transform .48s cubic-bezier(.2,.8,.2,1),
        filter .28s ease,
        box-shadow .28s ease,
        opacity .28s ease;
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="0"] {
    --ih-card-start:0%;
    z-index:8;
    opacity:1;
    transform:rotate(-.55deg) translateZ(38px) scale(1);
    box-shadow:0 28px 70px rgba(0,20,29,.31);
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="1"] {
    --ih-card-start:7%;
    z-index:7;
    opacity:.98;
    transform:scale(.972) rotate(.45deg) translateZ(20px);
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="2"] {
    --ih-card-start:14%;
    z-index:6;
    opacity:.96;
    transform:scale(.944) rotate(-.35deg) translateZ(8px);
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="3"] {
    --ih-card-start:21%;
    z-index:5;
    opacity:.92;
    transform:scale(.916) rotate(.45deg);
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card.is-active {
    filter:saturate(1.04) brightness(1.015);
}

.ih-cms-story-stack.is-interactive .ih-cms-story-stack__card:focus-visible,
.ih-cms-story-stack__nav:focus-visible,
.ih-cms-story-stack__dot:focus-visible {
    outline:3px solid rgba(255,255,255,.94);
    outline-offset:3px;
}

.ih-cms-story-stack__controls {
    position:absolute;
    z-index:20;
    inset-inline-start:18px;
    inset-block-end:12px;
    display:flex;
    align-items:center;
    gap:.38rem;
    min-height:40px;
    padding:.28rem;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    background:rgba(0,25,31,.56);
    box-shadow:0 10px 28px rgba(0,17,24,.18);
    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);
}

.ih-cms-story-stack__nav {
    appearance:none;
    -webkit-appearance:none;
    width:34px;
    height:34px;
    display:inline-grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.09);
    color:#fff;
    cursor:pointer;
    transition:background .2s ease,transform .2s ease;
}

.ih-cms-story-stack__nav:hover {
    background:rgba(255,255,255,.18);
    transform:translateY(-1px);
}

.ih-cms-story-stack__counter {
    min-width:62px;
    padding-inline:.35rem;
    color:rgba(255,255,255,.94);
    font-size:.72rem;
    font-weight:760;
    letter-spacing:.08em;
    text-align:center;
    font-variant-numeric:tabular-nums;
}

.ih-cms-story-stack__dots {
    position:absolute;
    z-index:20;
    inset-inline-end:20px;
    inset-block-start:18px;
    display:flex;
    align-items:center;
    gap:.4rem;
    padding:.42rem .5rem;
    border-radius:999px;
    background:rgba(0,25,31,.28);
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
}

.ih-cms-story-stack__dot {
    appearance:none;
    -webkit-appearance:none;
    width:7px;
    height:7px;
    padding:0;
    border:0;
    border-radius:50%;
    background:rgba(255,255,255,.38);
    cursor:pointer;
    transition:width .22s ease,background .22s ease,transform .22s ease;
}

.ih-cms-story-stack__dot.is-active {
    width:22px;
    border-radius:999px;
    background:#fff;
}

@media (hover:hover) and (pointer:fine) {
    .ih-cms-story-stack.is-interactive:hover .ih-cms-story-stack__card[data-stack-order="0"] {
        --ih-card-start:0%;
        transform:rotate(-.8deg) translateY(-2px) translateZ(42px) scale(1);
    }
    .ih-cms-story-stack.is-interactive:hover .ih-cms-story-stack__card[data-stack-order="1"] {
        --ih-card-start:10%;
        transform:scale(.976) rotate(.55deg) translateY(1px) translateZ(22px);
    }
    .ih-cms-story-stack.is-interactive:hover .ih-cms-story-stack__card[data-stack-order="2"] {
        --ih-card-start:20%;
        transform:scale(.948) rotate(-.45deg) translateY(3px) translateZ(8px);
    }
    .ih-cms-story-stack.is-interactive:hover .ih-cms-story-stack__card[data-stack-order="3"] {
        --ih-card-start:29%;
        transform:scale(.92) rotate(.55deg) translateY(5px);
    }
    .ih-cms-story-stack.is-interactive .ih-cms-story-stack__card:not(.is-active):hover {
        filter:saturate(1.08) brightness(1.04);
    }
}

/* In RTL the arrow icons follow the logical previous/next direction. */
[dir="rtl"] .ih-cms-story-stack__nav i {
    transform:scaleX(-1);
}

@media (max-width:575.98px) {
    .ih-cms-story-stack__controls {
        inset-inline-start:12px;
        inset-block-end:9px;
        min-height:38px;
    }
    .ih-cms-story-stack__nav {
        width:32px;
        height:32px;
    }
    .ih-cms-story-stack__counter {
        min-width:54px;
        font-size:.68rem;
    }
    .ih-cms-story-stack__dots {
        inset-inline-end:12px;
        inset-block-start:12px;
    }
    .ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="1"] { --ih-card-start:6%; }
    .ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="2"] { --ih-card-start:12%; }
    .ih-cms-story-stack.is-interactive .ih-cms-story-stack__card[data-stack-order="3"] { --ih-card-start:18%; }
}

@media (prefers-reduced-motion:reduce) {
    .ih-cms-story-stack.is-interactive .ih-cms-story-stack__card,
    .ih-cms-story-stack__nav,
    .ih-cms-story-stack__dot {
        transition:none;
    }
}
