/* ICONIC HERO DESIGN SYSTEM — Patch 18
   Scope: primary heroes only. No page redesign, no image replacement, no CTA route changes. */

:root {
  --iconic-hero-height-desktop: clamp(720px, 80vh, 900px);
  --iconic-hero-height-tablet: clamp(650px, 78vh, 820px);
  --iconic-hero-height-mobile: clamp(620px, 74svh, 760px);
  --iconic-hero-gutter: clamp(28px, 5.4vw, 104px);
  --iconic-hero-gutter-mobile: clamp(20px, 5.5vw, 24px);
  --iconic-hero-copy-width: min(680px, 46vw);
  --iconic-hero-title-size: clamp(58px, 5.2vw, 92px);
  --iconic-hero-title-size-ar: clamp(54px, 4.8vw, 86px);
  --iconic-hero-title-size-tablet: clamp(48px, 7vw, 72px);
  --iconic-hero-title-size-tablet-ar: clamp(46px, 6.4vw, 68px);
  --iconic-hero-title-size-mobile: clamp(40px, 10vw, 58px);
  --iconic-hero-title-size-mobile-ar: clamp(38px, 9.3vw, 54px);
  --iconic-hero-body-size: clamp(16px, 1.08vw, 19px);
  --iconic-hero-kicker-size: clamp(11px, .75vw, 13px);
  --iconic-hero-content-gap: 22px;
  --iconic-hero-cta-height: 54px;
  --iconic-hero-cta-padding: 0 26px;
  --iconic-hero-cta-radius: 999px;
}

/* --------------------------------------------------------------------------
   1. GLOBAL HERO HEIGHT
   -------------------------------------------------------------------------- */
html.iconic-hero-system body :where(
  .iconic-premium-slider,
  .iconic-service-page-hero,
  .iconic-faq-hero,
  .iconic-ba-hero,
  .iconic-gender-hero
) {
  box-sizing: border-box !important;
  height: var(--iconic-hero-height-desktop) !important;
  min-height: var(--iconic-hero-height-desktop) !important;
  max-height: var(--iconic-hero-height-desktop) !important;
  overflow: hidden;
}

html.iconic-hero-system body :where(
  .iconic-premium-slider__slide,
  .iconic-premium-slider__media,
  .iconic-service-page-hero__media,
  .iconic-faq-hero__inner,
  .iconic-ba-hero__inner,
  .iconic-gender-hero__inner
) {
  height: 100% !important;
  min-height: 0 !important;
}

/* Keep authored image strategies. We standardize the canvas, not every crop. */
html.iconic-hero-system body :where(
  .iconic-premium-slider__media img,
  .iconic-service-page-hero__media img,
  .iconic-faq-hero__image,
  .iconic-ba-hero__media img,
  .iconic-gender-hero__picture img
) {
  max-height: none;
}

/* --------------------------------------------------------------------------
   2. COPY WIDTH + LANGUAGE-AWARE GUTTERS
   EN = established left safe gutter. AR = naturally mirrored right safe gutter.
   -------------------------------------------------------------------------- */
html.iconic-hero-system body :where(
  .iconic-premium-slider__content,
  .iconic-service-page-hero__content,
  .iconic-faq-hero__copy,
  .iconic-ba-hero__copy,
  .iconic-gender-hero__copy
) {
  box-sizing: border-box !important;
  max-width: var(--iconic-hero-copy-width) !important;
  width: min(var(--iconic-hero-copy-width), calc(100vw - (2 * var(--iconic-hero-gutter)))) !important;
}

html.iconic-hero-system body :where(.iconic-faq-hero__inner,.iconic-ba-hero__inner,.iconic-gender-hero__inner) {
  box-sizing: border-box !important;
  margin-inline: 0 !important;
  max-width: none !important;
  padding-left: var(--iconic-hero-gutter) !important;
  padding-right: var(--iconic-hero-gutter) !important;
  width: 100% !important;
}

html.iconic-hero-system:not([dir='rtl']) body .iconic-premium-slider__content,
html.iconic-hero-system:not([dir='rtl']) body .iconic-service-page-hero__content {
  left: var(--iconic-hero-gutter) !important;
  right: auto !important;
  text-align: left !important;
}
html.iconic-hero-system:not([dir='rtl']) body :where(.iconic-faq-hero__copy,.iconic-ba-hero__copy,.iconic-gender-hero__copy) {
  direction: ltr !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

html.iconic-hero-system[dir='rtl'] body .iconic-premium-slider__content,
html.iconic-hero-system[dir='rtl'] body .iconic-service-page-hero__content {
  direction: rtl !important;
  left: auto !important;
  right: var(--iconic-hero-gutter) !important;
  text-align: right !important;
}
html.iconic-hero-system[dir='rtl'] body :where(.iconic-faq-hero__copy,.iconic-ba-hero__copy,.iconic-gender-hero__copy) {
  direction: rtl !important;
  margin-left: auto !important;
  margin-right: 0 !important;
  text-align: right !important;
}

/* Mirror only the lighting/wash layers for RTL. Never mirror the photograph itself. */
html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__wash,
  .iconic-service-page-hero__wash,
  .iconic-faq-hero__shade,
  .iconic-faq-hero__ambient,
  .iconic-ba-hero__shade,
  .iconic-ba-hero__ambient,
  .iconic-gender-hero__shade,
  .iconic-gender-hero__glow
) {
  transform: scaleX(-1);
  transform-origin: 50% 50%;
}

/* --------------------------------------------------------------------------
   3. TYPOGRAPHY — ONE HIERARCHY, OPTICAL ARABIC PARITY
   Families remain page-authored; scale/spacing becomes global.
   -------------------------------------------------------------------------- */
html.iconic-hero-system body :where(
  .iconic-premium-slider__title,
  .iconic-service-page-hero__title,
  .iconic-faq-hero__copy h1,
  .iconic-ba-hero__copy h1,
  .iconic-gender-hero__copy h1
) {
  font-size: var(--iconic-hero-title-size) !important;
  letter-spacing: -.055em !important;
  line-height: .94 !important;
  margin: 0 0 var(--iconic-hero-content-gap) !important;
  max-width: 100% !important;
  overflow: visible !important;
  text-wrap: balance;
}

html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__title,
  .iconic-service-page-hero__title,
  .iconic-faq-hero__copy h1,
  .iconic-ba-hero__copy h1,
  .iconic-gender-hero__copy h1
) {
  font-family: Tahoma, Arial, "Segoe UI", sans-serif !important;
  font-size: var(--iconic-hero-title-size-ar) !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  line-height: 1.18 !important;
  padding-block: .06em .08em;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

html.iconic-hero-system body :where(
  .iconic-premium-slider__eyebrow,
  .iconic-service-page-hero__eyebrow,
  .iconic-faq-kicker,
  .iconic-ba-kicker,
  .iconic-gender-kicker
) {
  font-size: var(--iconic-hero-kicker-size) !important;
  line-height: 1.5 !important;
  margin-bottom: 18px !important;
}

html.iconic-hero-system body :where(
  .iconic-premium-slider__description,
  .iconic-service-page-hero__description,
  .iconic-faq-hero__copy > p:not(.iconic-faq-kicker),
  .iconic-ba-hero__copy > p:not(.iconic-ba-kicker),
  .iconic-gender-hero__copy > p:not(.iconic-gender-kicker)
) {
  font-size: var(--iconic-hero-body-size) !important;
  line-height: 1.68 !important;
  margin-top: 0 !important;
  max-width: min(610px, 100%) !important;
}
html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__description,
  .iconic-service-page-hero__description,
  .iconic-faq-hero__copy > p:not(.iconic-faq-kicker),
  .iconic-ba-hero__copy > p:not(.iconic-ba-kicker),
  .iconic-gender-hero__copy > p:not(.iconic-gender-kicker)
) {
  line-height: 1.9 !important;
}

/* --------------------------------------------------------------------------
   4. CTA SYSTEM
   -------------------------------------------------------------------------- */
html.iconic-hero-system body :where(
  .iconic-premium-slider__content > .iconic-button,
  .iconic-service-page-hero__content > .iconic-button,
  .iconic-faq-button,
  .iconic-ba-button,
  .iconic-gender-button
) {
  align-items: center !important;
  border-radius: var(--iconic-hero-cta-radius) !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  justify-content: center !important;
  min-height: var(--iconic-hero-cta-height) !important;
  padding: var(--iconic-hero-cta-padding) !important;
}
html.iconic-hero-system body :where(.iconic-faq-hero__actions,.iconic-ba-hero__actions,.iconic-gender-actions) {
  gap: 12px !important;
  margin-top: 28px !important;
}
html.iconic-hero-system body :where(.iconic-premium-slider__description,.iconic-service-page-hero__description) + .iconic-button {
  margin-top: 28px !important;
}

/* --------------------------------------------------------------------------
   5. IMAGE FOCAL SAFEGUARDS
   Keep existing dedicated mobile assets for BA + gender pages. Do not replace
   artwork. Only preserve known focal positions where page CSS requires them.
   -------------------------------------------------------------------------- */
html.iconic-hero-system body .iconic-about-page-hero .iconic-service-page-hero__media img {
  object-position: 60% center;
}
html.iconic-hero-system body .iconic-ba-hero__media img {
  object-position: center center;
}
html.iconic-hero-system body .iconic-gender-hero__picture img {
  object-position: center center;
}

/* --------------------------------------------------------------------------
   6. TABLET
   -------------------------------------------------------------------------- */
@media (min-width: 768px) and (max-width: 1100px) {
  html.iconic-hero-system body :where(.iconic-premium-slider,.iconic-service-page-hero,.iconic-faq-hero,.iconic-ba-hero,.iconic-gender-hero) {
    height: var(--iconic-hero-height-tablet) !important;
    min-height: var(--iconic-hero-height-tablet) !important;
    max-height: var(--iconic-hero-height-tablet) !important;
  }
  html.iconic-hero-system body :where(.iconic-premium-slider__content,.iconic-service-page-hero__content,.iconic-faq-hero__copy,.iconic-ba-hero__copy,.iconic-gender-hero__copy) {
    max-width: min(620px, 54vw) !important;
    width: min(620px, 54vw) !important;
  }
  html.iconic-hero-system body :where(.iconic-premium-slider__title,.iconic-service-page-hero__title,.iconic-faq-hero__copy h1,.iconic-ba-hero__copy h1,.iconic-gender-hero__copy h1) {
    font-size: var(--iconic-hero-title-size-tablet) !important;
  }
  html.iconic-hero-system[dir='rtl'] body :where(.iconic-premium-slider__title,.iconic-service-page-hero__title,.iconic-faq-hero__copy h1,.iconic-ba-hero__copy h1,.iconic-gender-hero__copy h1) {
    font-size: var(--iconic-hero-title-size-tablet-ar) !important;
    line-height: 1.2 !important;
  }
  html.iconic-hero-system body .iconic-about-page-hero .iconic-service-page-hero__media img { object-position: 64% center; }
}

/* --------------------------------------------------------------------------
   7. MOBILE — one height/gutter/typography system; preserve page image logic.
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  html.iconic-hero-system body :where(.iconic-premium-slider,.iconic-service-page-hero,.iconic-faq-hero,.iconic-ba-hero,.iconic-gender-hero) {
    height: var(--iconic-hero-height-mobile) !important;
    min-height: var(--iconic-hero-height-mobile) !important;
    max-height: var(--iconic-hero-height-mobile) !important;
  }

  html.iconic-hero-system body :where(.iconic-faq-hero__inner,.iconic-ba-hero__inner,.iconic-gender-hero__inner) {
    min-height: 0 !important;
    padding-left: var(--iconic-hero-gutter-mobile) !important;
    padding-right: var(--iconic-hero-gutter-mobile) !important;
  }

  html.iconic-hero-system body :where(.iconic-premium-slider__content,.iconic-service-page-hero__content) {
    max-width: none !important;
    width: auto !important;
  }
  html.iconic-hero-system:not([dir='rtl']) body :where(.iconic-premium-slider__content,.iconic-service-page-hero__content) {
    left: var(--iconic-hero-gutter-mobile) !important;
    right: var(--iconic-hero-gutter-mobile) !important;
    text-align: left !important;
  }
  html.iconic-hero-system[dir='rtl'] body :where(.iconic-premium-slider__content,.iconic-service-page-hero__content) {
    left: var(--iconic-hero-gutter-mobile) !important;
    right: var(--iconic-hero-gutter-mobile) !important;
    text-align: right !important;
  }
  html.iconic-hero-system body :where(.iconic-faq-hero__copy,.iconic-ba-hero__copy,.iconic-gender-hero__copy) {
    max-width: 100% !important;
    width: 100% !important;
  }

  html.iconic-hero-system body :where(.iconic-premium-slider__title,.iconic-service-page-hero__title,.iconic-faq-hero__copy h1,.iconic-ba-hero__copy h1,.iconic-gender-hero__copy h1) {
    font-size: var(--iconic-hero-title-size-mobile) !important;
    line-height: .98 !important;
  }
  html.iconic-hero-system[dir='rtl'] body :where(.iconic-premium-slider__title,.iconic-service-page-hero__title,.iconic-faq-hero__copy h1,.iconic-ba-hero__copy h1,.iconic-gender-hero__copy h1) {
    font-size: var(--iconic-hero-title-size-mobile-ar) !important;
    line-height: 1.24 !important;
  }
  html.iconic-hero-system body :where(.iconic-premium-slider__description,.iconic-service-page-hero__description,.iconic-faq-hero__copy > p:not(.iconic-faq-kicker),.iconic-ba-hero__copy > p:not(.iconic-ba-kicker),.iconic-gender-hero__copy > p:not(.iconic-gender-kicker)) {
    font-size: 15px !important;
    line-height: 1.62 !important;
  }
  html.iconic-hero-system[dir='rtl'] body :where(.iconic-premium-slider__description,.iconic-service-page-hero__description,.iconic-faq-hero__copy > p:not(.iconic-faq-kicker),.iconic-ba-hero__copy > p:not(.iconic-ba-kicker),.iconic-gender-hero__copy > p:not(.iconic-gender-kicker)) {
    line-height: 1.82 !important;
  }

  html.iconic-hero-system body :where(.iconic-premium-slider__content > .iconic-button,.iconic-service-page-hero__content > .iconic-button,.iconic-faq-button,.iconic-ba-button,.iconic-gender-button) {
    min-height: 52px !important;
    padding-inline: 22px !important;
  }

  /* Preserve the existing responsive focal treatments rather than applying a
     generic center crop that would remove faces/logos. */
  html.iconic-hero-system body .iconic-about-page-hero .iconic-service-page-hero__media img { object-position: 68% center; }
  html.iconic-hero-system body .iconic-ba-hero__media img { object-position: center 28%; }
  html.iconic-hero-system body .iconic-gender-hero__picture img { object-position: center center; }

  /* FAQ intentionally keeps its dark editorial image-above/copy-below strategy.
     `contain` is retained here because the surrounding canvas is the same dark
     hero background and it preserves the logo + people without visible bars. */
  html.iconic-hero-system body .iconic-faq-hero__image {
    height: 46% !important;
    object-fit: contain !important;
    object-position: center top !important;
  }
  html.iconic-hero-system body .iconic-faq-hero__inner { align-items: flex-end !important; padding-bottom: 28px !important; }
  html.iconic-hero-system body .iconic-faq-hero__copy { padding-top: min(42svh, 330px) !important; }

  /* Existing dedicated mobile banners remain in use for BA and Men/Women. */
  html.iconic-hero-system body .iconic-ba-hero__inner { align-items: flex-end !important; }
  html.iconic-hero-system body .iconic-ba-hero__copy { padding: min(42svh, 330px) 0 30px !important; }
  html.iconic-hero-system body .iconic-gender-hero__inner { align-items: flex-start !important; padding-top: 48px !important; }
}

/* --------------------------------------------------------------------------
   8. ARABIC SAFETY
   Never animate disconnected Arabic characters. Existing word/line effects are
   preserved. Any stale character wrappers are rendered as normal inline text.
   -------------------------------------------------------------------------- */
html.iconic-hero-system[dir='rtl'] body .iconic-hero-char {
  display: inline !important;
  opacity: 1 !important;
  transform: none !important;
}
html.iconic-hero-system[dir='rtl'] body .iconic-fx-word { letter-spacing: 0 !important; }

/* --------------------------------------------------------------------------
   9. DISTINCT TITLE FX — preserved from the approved page-specific system.
   -------------------------------------------------------------------------- */
/* FAQ — focus pull */
html.iconic-global-hero-fx body.page-id-581 .iconic-faq-hero h1 > span {
  animation: none !important; clip-path: inset(0 9% 0 0); filter: blur(13px); opacity: 0;
  transform: translateX(-24px) scale(.985); will-change: filter, opacity, transform, clip-path;
}
html.iconic-global-hero-fx[dir='rtl'] body.page-id-581 .iconic-faq-hero h1 > span { clip-path: inset(0 0 0 9%); transform: translateX(24px) scale(.985); }
html.iconic-global-hero-fx body.page-id-581 .iconic-faq-hero.is-ready h1 > span:first-child { animation: iconic-fx-focus-pull .95s .16s cubic-bezier(.16,.78,.24,1) forwards !important; }
html.iconic-global-hero-fx body.page-id-581 .iconic-faq-hero.is-ready h1 > span:last-child { animation: iconic-fx-focus-pull 1.02s .33s cubic-bezier(.16,.78,.24,1) forwards !important; }
@keyframes iconic-fx-focus-pull { 0%{clip-path:inset(0 9% 0 0);filter:blur(13px);opacity:0;transform:translateX(-24px) scale(.985)} 55%{filter:blur(2.5px);opacity:.88} 100%{clip-path:inset(0);filter:blur(0);opacity:1;transform:none} }
/* RTL uses a line reveal, not character splitting. */
@keyframes iconic-fx-focus-pull-rtl { 0%{clip-path:inset(0 0 0 9%);filter:blur(13px);opacity:0;transform:translateX(24px) scale(.985)} 55%{filter:blur(2.5px);opacity:.88} 100%{clip-path:inset(0);filter:blur(0);opacity:1;transform:none} }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-581 .iconic-faq-hero.is-ready h1 > span:first-child { animation-name: iconic-fx-focus-pull-rtl !important; }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-581 .iconic-faq-hero.is-ready h1 > span:last-child { animation-name: iconic-fx-focus-pull-rtl !important; }

/* Before & After — editorial shutter */
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero h1 > span { clip-path:inset(0 100% 0 0); opacity:0; transform:translateX(-.16em); will-change:clip-path,transform,opacity; }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-738 .iconic-ba-hero h1 > span { clip-path:inset(0 0 0 100%); transform:translateX(.16em); }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero.is-iconic-text-ready h1 > span:first-child { animation:iconic-fx-shutter .88s .14s cubic-bezier(.22,.78,.22,1) forwards; }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero.is-iconic-text-ready h1 > span:last-child { animation:iconic-fx-shutter .92s .31s cubic-bezier(.22,.78,.22,1) forwards; }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-738 .iconic-ba-hero.is-iconic-text-ready h1 > span:first-child { animation-name:iconic-fx-shutter-rtl; }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-738 .iconic-ba-hero.is-iconic-text-ready h1 > span:last-child { animation-name:iconic-fx-shutter-rtl; }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero .iconic-ba-kicker,
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero__copy > p,
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero__actions { opacity:0; transform:translateY(16px); }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero.is-iconic-text-ready .iconic-ba-kicker { animation:iconic-fx-soft-rise .62s .06s both cubic-bezier(.2,.75,.25,1); }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero.is-iconic-text-ready .iconic-ba-hero__copy > p { animation:iconic-fx-soft-rise .68s .48s both cubic-bezier(.2,.75,.25,1); }
html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero.is-iconic-text-ready .iconic-ba-hero__actions { animation:iconic-fx-soft-rise .68s .60s both cubic-bezier(.2,.75,.25,1); }
@keyframes iconic-fx-shutter { from{clip-path:inset(0 100% 0 0);opacity:0;transform:translateX(-.16em)} to{clip-path:inset(0);opacity:1;transform:none} }
@keyframes iconic-fx-shutter-rtl { from{clip-path:inset(0 0 0 100%);opacity:0;transform:translateX(.16em)} to{clip-path:inset(0);opacity:1;transform:none} }
@keyframes iconic-fx-soft-rise { from{opacity:0;transform:translateY(16px)} to{opacity:1;transform:none} }

/* Men — architectural lift */
html.iconic-global-hero-fx body.page-id-756 .iconic-gender-hero h1 > span { animation:none !important; clip-path:inset(100% 0 0 0); opacity:0; transform:translateY(.36em) skewY(1.4deg); transform-origin:left bottom; will-change:clip-path,transform,opacity; }
html.iconic-global-hero-fx[dir='rtl'] body.page-id-756 .iconic-gender-hero h1 > span { transform-origin:right bottom; }
html.iconic-global-hero-fx body.page-id-756 .iconic-gender-hero.is-ready h1 > span:first-child { animation:iconic-fx-men-lift .86s .17s cubic-bezier(.18,.8,.2,1) forwards !important; }
html.iconic-global-hero-fx body.page-id-756 .iconic-gender-hero.is-ready h1 > span:last-child { animation:iconic-fx-men-lift .92s .35s cubic-bezier(.18,.8,.2,1) forwards !important; }
@keyframes iconic-fx-men-lift { from{clip-path:inset(100% 0 0 0);opacity:0;transform:translateY(.36em) skewY(1.4deg)} to{clip-path:inset(0);opacity:1;transform:none} }

/* Women — word cascade (word groups only; never characters). */
html.iconic-global-hero-fx body.page-id-765 .iconic-gender-hero h1 > span { animation:none !important; opacity:1 !important; transform:none !important; }
html.iconic-global-hero-fx body.page-id-765 .iconic-gender-hero h1 .iconic-fx-word { display:inline-block; filter:blur(6px); opacity:0; transform:translateY(.38em) rotateX(-12deg); transform-origin:50% 100%; will-change:filter,transform,opacity; }
html.iconic-global-hero-fx body.page-id-765 .iconic-gender-hero.is-iconic-text-ready h1 .iconic-fx-word { animation:iconic-fx-women-cascade .72s cubic-bezier(.18,.8,.22,1) forwards; animation-delay:calc(.16s + (var(--iconic-word-index,0) * .075s)); }
@keyframes iconic-fx-women-cascade { 0%{filter:blur(6px);opacity:0;transform:translateY(.38em) rotateX(-12deg)} 70%{filter:blur(1px);opacity:1} 100%{filter:blur(0);opacity:1;transform:none} }

/* Generic service heroes keep the existing mask. About keeps its own editorial sweep. */
html.iconic-global-hero-fx .iconic-service-page-hero:not(.iconic-about-page-hero) .iconic-service-page-hero__title { clip-path:inset(0 0 100% 0); opacity:0; transform:translateY(.24em); }
html.iconic-global-hero-fx .iconic-service-page-hero:not(.iconic-about-page-hero).is-visible .iconic-service-page-hero__title { animation:iconic-fx-service-mask .86s .10s cubic-bezier(.2,.78,.22,1) forwards !important; }
@keyframes iconic-fx-service-mask { from{clip-path:inset(0 0 100% 0);opacity:0;transform:translateY(.24em)} to{clip-path:inset(0);opacity:1;transform:none} }

@media (prefers-reduced-motion: reduce) {
  html.iconic-global-hero-fx body.page-id-581 .iconic-faq-hero h1 > span,
  html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero h1 > span,
  html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero .iconic-ba-kicker,
  html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero__copy > p,
  html.iconic-global-hero-fx body.page-id-738 .iconic-ba-hero__actions,
  html.iconic-global-hero-fx body.page-id-756 .iconic-gender-hero h1 > span,
  html.iconic-global-hero-fx body.page-id-765 .iconic-gender-hero h1 .iconic-fx-word,
  html.iconic-global-hero-fx .iconic-service-page-hero:not(.iconic-about-page-hero) .iconic-service-page-hero__title {
    animation:none !important; clip-path:none !important; filter:none !important; opacity:1 !important; transform:none !important;
  }
}
\n\n/* Patch 18C — animation visibility correctness.\n   Animated elements may start at opacity:0, but the base hidden state must NOT\n   use !important because !important declarations outrank CSS animations. */\nhtml.iconic-global-hero-fx body.page-id-756 .iconic-gender-hero.is-ready h1 > span,\nhtml.iconic-global-hero-fx body.page-id-581 .iconic-faq-hero.is-ready h1 > span,\nhtml.iconic-global-hero-fx .iconic-service-page-hero:not(.iconic-about-page-hero).is-visible .iconic-service-page-hero__title {\n  visibility: visible !important;\n}\n
/* --------------------------------------------------------------------------
   PATCH 18D — FINAL LANGUAGE POSITION AUTHORITY
   Requirement: BOTH EN and AR hero COPY BLOCKS stay on the authored LEFT
   text-safe side. Arabic remains RTL/right-aligned INSIDE that left block.
   Never move the Arabic block to the right edge.
   -------------------------------------------------------------------------- */

/* Absolute-positioned hero systems: Homepage slider + service/content heroes. */
html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__content,
  .iconic-service-page-hero__content
) {
  direction: rtl !important;
  left: var(--iconic-hero-gutter) !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: right !important;
}

/* Flex/grid hero systems: FAQ + Before/After + Men + Women. Keep the stage LTR
   so the copy occupies the left text-safe column; only the copy itself is RTL. */
html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-faq-hero__inner,
  .iconic-ba-hero__inner,
  .iconic-gender-hero__inner
) {
  direction: ltr !important;
  justify-content: flex-start !important;
}

html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-faq-hero__copy,
  .iconic-ba-hero__copy,
  .iconic-gender-hero__copy
) {
  direction: rtl !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: right !important;
}

html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__content,
  .iconic-service-page-hero__content,
  .iconic-faq-hero__copy,
  .iconic-ba-hero__copy,
  .iconic-gender-hero__copy
) :where(
  h1,h2,h3,h4,h5,h6,p,
  .iconic-premium-slider__eyebrow,
  .iconic-premium-slider__title,
  .iconic-premium-slider__description,
  .iconic-service-page-hero__eyebrow,
  .iconic-service-page-hero__title,
  .iconic-service-page-hero__description,
  .iconic-faq-kicker,.iconic-ba-kicker,.iconic-gender-kicker
) {
  direction: rtl !important;
  text-align: right !important;
}

/* The wash/lighting must stay on the same side as the copy. Patch 18 mirrored
   these layers for Arabic because the old rule moved copy right; undo that. */
html.iconic-hero-system[dir='rtl'] body :where(
  .iconic-premium-slider__wash,
  .iconic-service-page-hero__wash,
  .iconic-faq-hero__shade,
  .iconic-faq-hero__ambient,
  .iconic-ba-hero__shade,
  .iconic-ba-hero__ambient,
  .iconic-gender-hero__shade,
  .iconic-gender-hero__glow
) {
  transform: none !important;
}

/* Tablet keeps the same left-side system. */
@media (min-width: 768px) and (max-width: 1100px) {
  html.iconic-hero-system[dir='rtl'] body :where(
    .iconic-premium-slider__content,
    .iconic-service-page-hero__content
  ) {
    left: var(--iconic-hero-gutter) !important;
    right: auto !important;
  }
}

/* Mobile uses equal safe gutters because the copy becomes fluid-width, while
   preserving RTL text. This is not a right-side placement. */
@media (max-width: 767px) {
  html.iconic-hero-system[dir='rtl'] body :where(
    .iconic-premium-slider__content,
    .iconic-service-page-hero__content
  ) {
    left: var(--iconic-hero-gutter-mobile) !important;
    right: var(--iconic-hero-gutter-mobile) !important;
    margin-inline: 0 !important;
    text-align: right !important;
  }
  html.iconic-hero-system[dir='rtl'] body :where(
    .iconic-faq-hero__copy,
    .iconic-ba-hero__copy,
    .iconic-gender-hero__copy
  ) {
    margin-inline: 0 !important;
    width: 100% !important;
    text-align: right !important;
  }
}

/* --------------------------------------------------------------------------
   PATCH 18E — HOMEPAGE ARABIC PHYSICAL LEFT LOCK
   The homepage slider has its own positioning context. Do not rely only on
   html[dir=rtl]: target the Arabic-home body state directly and neutralize
   logical inset/grid/flex placement while preserving RTL text INSIDE the box.
   -------------------------------------------------------------------------- */
body.iconic-home-arabic-mode .iconic-premium-slider .iconic-premium-slider__slide .iconic-premium-slider__content {
  direction: rtl !important;
  inset-inline-start: auto !important;
  inset-inline-end: auto !important;
  left: var(--iconic-hero-gutter) !important;
  right: auto !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  justify-self: start !important;
  text-align: right !important;
}

body.iconic-home-arabic-mode .iconic-premium-slider .iconic-premium-slider__slide .iconic-premium-slider__content :where(
  h1,h2,h3,h4,h5,h6,p,
  .iconic-premium-slider__eyebrow,
  .iconic-premium-slider__title,
  .iconic-premium-slider__description
) {
  direction: rtl !important;
  text-align: right !important;
}

/* Keep homepage lighting on the authored left text-safe side. */
body.iconic-home-arabic-mode .iconic-premium-slider .iconic-premium-slider__wash {
  transform: none !important;
}

@media (min-width: 768px) and (max-width: 1100px) {
  body.iconic-home-arabic-mode .iconic-premium-slider .iconic-premium-slider__slide .iconic-premium-slider__content {
    left: var(--iconic-hero-gutter) !important;
    right: auto !important;
  }
}

@media (max-width: 767px) {
  body.iconic-home-arabic-mode .iconic-premium-slider .iconic-premium-slider__slide .iconic-premium-slider__content {
    inset-inline-start: auto !important;
    inset-inline-end: auto !important;
    left: var(--iconic-hero-gutter-mobile) !important;
    right: var(--iconic-hero-gutter-mobile) !important;
    margin-inline: 0 !important;
    justify-self: stretch !important;
    width: auto !important;
  }
}
