/* =========================================================
   FIIIIN — Nixon-inspired clean retail.
   Replaces v3/v4/v5. Pure white + pure black, oversized type,
   massive product photography, single gold accent.
   ========================================================= */

:root {
  --nx-white:  #FFFFFF;
  --nx-paper:  #F5F4F0;
  --nx-line:   #E5E3DC;
  --nx-black:  #0A0A0A;
  --nx-ink:    #1A1A1A;
  --nx-soft:   #4A4A4A;
  --nx-mute:   #8A8A8A;
  --nx-gold:   #FF7A00;
  --nx-amber:  #FFC42E;

  --nx-font:   "Inter Tight","Inter",system-ui,-apple-system,sans-serif;
  --nx-font-ar:"Tajawal","Inter",system-ui,sans-serif;

  --nx-pad:    clamp(20px, 4.5vw, 80px);
  --nx-cap:    1600px;
}

/* ---- HARD RESET — kill everything from earlier versions ---- */
body { background: var(--nx-white) !important; color: var(--nx-black) !important; }
body::before, body::after { display: none !important; }

.fiiiin-loader { background: #fff !important; }
.fiiiin-loader__text { color: var(--nx-black) !important; }

/* Remove all old hero/section ornaments */
.fx-hero__veil, .fx-hero__bigtype, .fx-hero__orb, .fx-hero__cue,
.fx4-orbs, .fx4-amb, .fx4-sweep,
.fiiiin-hero__bg, .fiiiin-hero__blob,
.fiiiin-stage__ring, .fiiiin-stage::before,
.fiiiin-cpdp-360__bg, .fiiiin-cpdp-360__blob,
.fiiiin-cpdp-360__ring,
.fiiiin-cpdp-buy::before,
.fiiiin-promo-hero__bg, .fiiiin-promo-hero__blob,
.fiiiin-promotions__visual,
.fiiiin-free-banner { display: none !important; }

/* Reset all section gradient backgrounds — clean white or clean black */
.fx-hero, .fx-promise, .fx-featured, .fx-bento, .fx-spot, .fx-strip, .fx-promo, .fx-quotes, .fx-footer,
.fiiiin-cpdp, .fiiiin-cpdp-360, .fiiiin-cpdp-gallery, .fiiiin-cpdp-desc, .fiiiin-cpdp-reviews, .fiiiin-cpdp-buy,
.fiiiin-promo-hero, .fiiiin-promo-tiers, .fiiiin-collections-page, .fiiiin-contact-hero, .fiiiin-contact-grid, .fiiiin-contact-main,
.fiiiin-page, .fiiiin-single-post, .fiiiin-blog-list, .fiiiin-shop, .fiiiin-cart-v2, .fiiiin-thanks,
.fiiiin-promo-hero, .woocommerce-cart, .woocommerce-checkout {
  background: none !important;
  background-color: transparent !important;
}
.fx-hero, .fx-spot, .fx-promo, .fx-quotes, .fx-bento, .fx-footer { border: 0 !important; }
.fx-hero::before, .fx-hero::after,
.fx-promise::before, .fx-promise::after,
.fx-featured::before, .fx-featured::after,
.fx-bento::before, .fx-bento::after,
.fx-spot::before, .fx-spot::after,
.fx-strip::before, .fx-strip::after,
.fx-promo::before, .fx-promo::after,
.fx-quotes::before, .fx-quotes::after,
.fx-footer::before { display: none !important; content: none !important; }

/* ---- BASE TYPE ---- */
html { background: var(--nx-white); }
body {
  font-family: var(--nx-font);
  font-weight: 400;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}
body[lang^="ar"], body.fiiiin-rtl, [dir="rtl"] body { font-family: var(--nx-font-ar); }
[dir="rtl"] h1, [dir="rtl"] h2, [dir="rtl"] h3, [dir="rtl"] h4 { font-family: var(--nx-font-ar); }

/* ---- MOBILE DRAWER HARD-FIX (was leaking on desktop) ---- */
.fiiiin-mobile-drawer {
  position: fixed !important;
  inset: 0 !important;
  z-index: 9000 !important;
  background: rgba(10,10,10,.55) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity .25s ease, visibility 0s linear .25s !important;
}
.fiiiin-mobile-drawer.is-open {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .25s ease, visibility 0s linear 0s !important;
}
.fiiiin-mobile-drawer__panel { background: var(--nx-white) !important; color: var(--nx-black) !important; }
.fiiiin-mobile-drawer__menu a { color: var(--nx-black) !important; }
.fiiiin-mobile-drawer__menu a:hover { color: var(--nx-gold) !important; }

/* ---- HEADER (clean white sticky, hairline) ---- */
.fiiiin-header,
.fiiiin-navbar {
  background: var(--nx-white) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: 1px solid var(--nx-line) !important;
  box-shadow: none !important;
}
.fiiiin-navbar__inner { padding: 18px var(--nx-pad); max-width: var(--nx-cap); margin: 0 auto; }
.fiiiin-navbar__links a {
  font-family: var(--nx-font);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--nx-black) !important;
}
.fiiiin-navbar__links a:hover { color: var(--nx-gold) !important; }
.fiiiin-navbar__links a::after { background: var(--nx-gold) !important; }
.fiiiin-navbar__icon-link {
  font-family: var(--nx-font);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
  color: var(--nx-black) !important;
  text-transform: uppercase;
}
.fiiiin-navbar__icon-link:hover { color: var(--nx-gold) !important; }
.fiiiin-cart-cnt { background: var(--nx-gold) !important; color: var(--nx-white) !important; }
.fiiiin-burger span { background: var(--nx-black) !important; }
.fiiiin-brand__img { max-height: 36px; filter: none !important; }

/* Lang switcher dark on light */
.fiiiin-lang-switch { border-inline-end: 1px solid var(--nx-line) !important; }
.fiiiin-lang-switch__btn {
  color: var(--nx-soft) !important;
  border: 1px solid transparent !important;
  font-weight: 700 !important;
}
.fiiiin-lang-switch__btn:hover { color: var(--nx-black) !important; border-color: var(--nx-line) !important; background: transparent !important; }
.fiiiin-lang-switch__btn.is-active { background: var(--nx-black) !important; color: var(--nx-white) !important; border-color: var(--nx-black) !important; }

/* ---- BUTTONS — bold black on white, single gold accent ---- */
.fx-btn, .nx-btn, .fiiiin-btn,
.button, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #place_order {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 22px 36px !important;
  background: var(--nx-black) !important;
  color: var(--nx-white) !important;
  border: 1px solid var(--nx-black) !important;
  border-radius: 0 !important;
  font-family: var(--nx-font) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  text-shadow: none !important;
  box-shadow: none !important;
  transition: all .3s ease !important;
  min-height: 56px;
  cursor: pointer;
}
.fx-btn:hover, .nx-btn:hover,
.button:hover, .woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce #place_order:hover { background: var(--nx-gold) !important; border-color: var(--nx-gold) !important; color: var(--nx-white) !important; transform: none !important; }

.fx-btn--ghost, .fx-btn--ghost-dark, .nx-btn--ghost {
  background: transparent !important;
  color: var(--nx-black) !important;
  border-color: var(--nx-black) !important;
}
.fx-btn--ghost:hover, .nx-btn--ghost:hover { background: var(--nx-black) !important; color: var(--nx-white) !important; border-color: var(--nx-black) !important; }
.fx-btn--gold { background: var(--nx-gold) !important; border-color: var(--nx-gold) !important; color: var(--nx-white) !important; }
.fx-btn--gold:hover { background: var(--nx-black) !important; border-color: var(--nx-black) !important; }

.fx-btn i, .fx-btn .arrow { transition: transform .3s ease; }
.fx-btn:hover i, .fx-btn:hover .arrow { transform: translateX(-4px); }
[dir="rtl"] .fx-btn:hover i, [dir="rtl"] .fx-btn:hover .arrow { transform: translateX(4px); }

/* ---- HOMEPAGE STRUCTURE ---- */

/* HERO — full-bleed product image with strong title overlay */
.fx-hero {
  min-height: clamp(520px, 90vh, 880px) !important;
  position: relative !important;
  display: flex !important;
  align-items: flex-end !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: var(--nx-paper) !important;
}
.fx-hero::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.10) 0%, rgba(0,0,0,.35) 65%, rgba(0,0,0,.65) 100%),
    url('https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=2200&q=85') center/cover no-repeat !important;
  z-index: 0 !important;
  pointer-events: none !important;
}
.fx-hero__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: var(--nx-cap);
  margin: 0 auto;
  padding: 80px var(--nx-pad);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: start !important;
  gap: 0;
}
.fx-hero__eyebrow {
  display: inline-block !important;
  font-family: var(--nx-font) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.32em !important;
  text-transform: uppercase !important;
  color: var(--nx-amber) !important;
  margin: 0 0 20px !important;
  background: rgba(10,10,10,.5);
  padding: 8px 14px;
  border: 1px solid rgba(255,255,255,.2);
  animation: nxFade .8s .1s both;
}
.fx-hero__title {
  font-family: var(--nx-font-ar) !important;
  font-size: clamp(56px, 11vw, 156px) !important;
  font-weight: 900 !important;
  line-height: 0.92 !important;
  letter-spacing: -0.02em !important;
  color: var(--nx-white) !important;
  margin: 0 0 16px !important;
  text-shadow: 0 6px 30px rgba(0,0,0,.4);
  text-align: start !important;
  display: block !important;
}
.fx-hero__title span { display: inline !important; opacity: 1 !important; transform: none !important; animation: none !important; }
.fx-hero__sub {
  font-family: var(--nx-font-ar) !important;
  font-style: normal !important;
  font-size: clamp(18px, 2.4vw, 28px) !important;
  font-weight: 400 !important;
  color: rgba(255,255,255,.85) !important;
  letter-spacing: 0 !important;
  margin: 0 0 36px !important;
  max-width: 640px;
  animation: nxFade .8s .25s both;
}
.fx-hero__sub em { color: var(--nx-amber) !important; font-style: normal; font-weight: 600; }
.fx-hero__ctas {
  display: flex !important;
  gap: 12px !important;
  flex-wrap: wrap;
  animation: nxFade .8s .4s both;
}
.fx-hero__ctas .fx-btn--gold,
.fx-hero__ctas .fx-btn--ghost { background: var(--nx-white) !important; color: var(--nx-black) !important; border-color: var(--nx-white) !important; }
.fx-hero__ctas .fx-btn--gold:hover { background: var(--nx-gold) !important; border-color: var(--nx-gold) !important; color: var(--nx-white) !important; }
.fx-hero__ctas .fx-btn--ghost { background: transparent !important; color: var(--nx-white) !important; border-color: rgba(255,255,255,.6) !important; }
.fx-hero__ctas .fx-btn--ghost:hover { background: var(--nx-white) !important; color: var(--nx-black) !important; border-color: var(--nx-white) !important; }
.fx-hero__mark { display: none !important; }

@keyframes nxFade { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: none; } }

/* PROMISE — clean black band with three columns */
.fx-promise {
  background: var(--nx-black) !important;
  color: var(--nx-white) !important;
  padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important;
}
.fx-promise__inner { max-width: var(--nx-cap); margin: 0 auto; display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: clamp(24px, 4vw, 64px) !important; }
@media (max-width: 900px) { .fx-promise__inner { grid-template-columns: 1fr !important; } }
.fx-promise__row { display: flex !important; flex-direction: column !important; gap: 16px !important; padding: 0 !important; border: 0 !important; align-items: flex-start !important; }
.fx-promise__num { font-family: var(--nx-font) !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.4em !important; color: var(--nx-amber) !important; }
.fx-promise__row h2 { font-family: var(--nx-font-ar) !important; font-size: clamp(24px, 3vw, 38px) !important; font-weight: 900 !important; line-height: 1.05 !important; color: var(--nx-white) !important; margin: 0 !important; letter-spacing: -0.01em !important; }
.fx-promise__row h2 em { color: var(--nx-amber) !important; font-style: normal !important; }
.fx-promise__row p { font-family: var(--nx-font-ar) !important; font-size: 15px !important; line-height: 1.7 !important; color: rgba(255,255,255,.7) !important; margin: 0 !important; font-weight: 400 !important; }

/* FEATURED — 4 product cards on white, clean grid */
.fx-featured { padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; background: var(--nx-white) !important; }
.fx-featured__head { max-width: var(--nx-cap); margin: 0 auto clamp(48px, 7vw, 96px) !important; text-align: center; }
.fx-eyebrow, .fiiiin-eyebrow, .fiiiin-discover__eyebrow {
  font-family: var(--nx-font) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4em !important;
  text-transform: uppercase !important;
  color: var(--nx-gold) !important;
  display: inline-block;
  margin-bottom: 16px;
}
.fx-h2 {
  font-family: var(--nx-font-ar) !important;
  font-size: clamp(36px, 6vw, 80px) !important;
  font-weight: 900 !important;
  line-height: 0.96 !important;
  letter-spacing: -0.02em !important;
  color: var(--nx-black) !important;
  margin: 0 0 16px !important;
  text-align: center;
}
.fx-h2 em { color: var(--nx-gold) !important; font-style: normal !important; }
.fx-featured__head p { font-family: var(--nx-font-ar) !important; font-style: normal !important; font-size: 17px !important; color: var(--nx-soft) !important; max-width: 640px; margin: 0 auto !important; }

.fx-featured__grid {
  list-style: none;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: var(--nx-cap);
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: clamp(20px, 2vw, 40px) !important;
}
@media (max-width: 1024px) { .fx-featured__grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 600px)  { .fx-featured__grid { grid-template-columns: 1fr 1fr !important; gap: 12px !important; } }

.fx-card { transition-delay: 0 !important; }
.fx-card__media {
  background: var(--nx-paper) !important;
  border-radius: 0 !important;
  margin-bottom: 16px !important;
  aspect-ratio: 1/1 !important;
}
.fx-card__media img { filter: none !important; }
.fx-card:hover .fx-card__media img { transform: scale(1.04) !important; }
.fx-card__media::after { display: none !important; }
.fx-card__body { padding: 0 !important; text-align: start; }
.fx-card__body h3 {
  font-family: var(--nx-font-ar) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--nx-black) !important;
  margin: 0 0 4px !important;
  transition: color .2s;
}
.fx-card:hover .fx-card__body h3 { color: var(--nx-gold) !important; }
.fx-card__price, .fx-card__price * {
  font-family: var(--nx-font) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--nx-black) !important;
  letter-spacing: 0 !important;
}
.fx-card__price del { color: var(--nx-mute) !important; font-weight: 400 !important; margin-inline-end: 8px; }
.fx-card__badge {
  background: var(--nx-black) !important;
  color: var(--nx-white) !important;
  border-radius: 0 !important;
  letter-spacing: 0.2em !important;
  padding: 4px 10px !important;
  font-size: 10px !important;
}
.fx-featured__foot { text-align: center; margin-top: clamp(48px, 7vw, 88px); }

/* BENTO — flatter, tighter */
.fx-bento { padding: 0 var(--nx-pad) clamp(80px, 12vw, 160px) !important; background: var(--nx-white) !important; }
.fx-bento__inner { max-width: var(--nx-cap); margin: 0 auto; display: grid !important; grid-template-columns: repeat(4, 1fr) !important; grid-template-rows: 320px !important; gap: 16px !important; }
@media (max-width: 900px) { .fx-bento__inner { grid-template-columns: 1fr 1fr !important; grid-template-rows: repeat(2, 280px) !important; } }
@media (max-width: 480px) { .fx-bento__inner { grid-template-columns: 1fr !important; grid-template-rows: repeat(4, 220px) !important; } }
.fx-bento__cell { background: var(--nx-paper) !important; border: 0 !important; }
.fx-bento__cell--lead { grid-column: span 1 !important; grid-row: span 1 !important; }
.fx-bento__cell:hover { box-shadow: none !important; }
.fx-bento__media { filter: brightness(.78) !important; }
.fx-bento__cell:hover .fx-bento__media { filter: brightness(.92) !important; }
.fx-bento__caption { padding: 24px !important; bottom: 0 !important; left: 0 !important; right: 0 !important; }
.fx-bento__caption h3 { font-family: var(--nx-font-ar) !important; font-weight: 800 !important; font-size: clamp(20px, 2vw, 28px) !important; }
.fx-bento__cell--lead .fx-bento__caption h3 { font-size: clamp(20px, 2vw, 28px) !important; }
.fx-bento__caption h3 em { color: var(--nx-amber) !important; font-style: normal; }
.fx-bento__caption .fx-eyebrow { color: var(--nx-amber) !important; }

/* SPOTLIGHT — split black panel, sharp */
.fx-spot { background: var(--nx-black) !important; color: var(--nx-white) !important; padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; }
.fx-spot__inner { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: clamp(40px, 6vw, 96px) !important; align-items: center !important; max-width: var(--nx-cap); margin: 0 auto; }
@media (max-width: 900px) { .fx-spot__inner { grid-template-columns: 1fr !important; } .fx-spot__copy { min-height: 0 !important; } }
.fx-spot__copy { min-height: 0 !important; }
.fx-spot__sticky { position: static !important; top: auto !important; }
.fx-spot__sticky h2 { color: var(--nx-white) !important; text-align: start !important; }
.fx-spot__sticky h2 em { color: var(--nx-amber) !important; font-style: normal; }
.fx-spot__sticky p { font-family: var(--nx-font-ar) !important; font-style: normal !important; font-size: 17px !important; color: rgba(255,255,255,.75) !important; line-height: 1.7 !important; }
.fx-spot__sticky .fx-eyebrow { color: var(--nx-amber) !important; }
.fx-spot__media { aspect-ratio: 1/1 !important; height: auto !important; }
.fx-spot__media img { position: relative !important; inset: auto !important; width: 100% !important; height: 100% !important; transform: none !important; filter: none !important; }

/* STRIP — disable the heavy sticky horizontal scroll, replace with native scroll */
.fx-strip { background: var(--nx-white) !important; padding: 0 0 clamp(80px, 12vw, 160px) !important; border: 0 !important; }
.fx-strip__head { padding: clamp(80px, 12vw, 160px) var(--nx-pad) clamp(48px, 6vw, 80px) !important; max-width: var(--nx-cap); margin: 0 auto !important; text-align: center; }
.fx-strip__head h2 em { color: var(--nx-gold) !important; }
.fx-strip__rail { height: auto !important; }
.fx-strip__track {
  position: static !important;
  height: auto !important;
  display: flex !important;
  gap: 16px !important;
  padding: 0 var(--nx-pad) 16px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  -webkit-overflow-scrolling: touch !important;
  transform: none !important;
}
.fx-strip__track::-webkit-scrollbar { height: 6px; }
.fx-strip__track::-webkit-scrollbar-thumb { background: var(--nx-line); border-radius: 0; }
.fx-strip__card { flex: 0 0 clamp(280px, 24vw, 380px) !important; scroll-snap-align: start; }
.fx-strip__media { aspect-ratio: 4/5 !important; background: var(--nx-paper) !important; box-shadow: none !important; }
.fx-strip__media img { filter: none !important; }
.fx-strip__card h3 { font-family: var(--nx-font-ar) !important; font-weight: 600 !important; color: var(--nx-black) !important; }
.fx-strip__price, .fx-strip__price * { font-family: var(--nx-font) !important; color: var(--nx-black) !important; font-weight: 600 !important; }

/* PROMO — bold black with huge typography */
.fx-promo { background: var(--nx-black) !important; color: var(--nx-white) !important; padding: clamp(80px, 14vw, 200px) var(--nx-pad) !important; text-align: center !important; }
.fx-promo__inner { max-width: 1100px; margin: 0 auto; }
.fx-promo .fx-eyebrow { color: var(--nx-amber) !important; }
.fx-promo .fx-h2 { color: var(--nx-white) !important; font-size: clamp(48px, 9vw, 140px) !important; line-height: 0.9 !important; margin-bottom: 56px !important; }
.fx-promo .fx-h2 em { color: var(--nx-amber) !important; }
.fx-promo__tiers { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; margin: 0 0 56px !important; }
@media (max-width: 700px) { .fx-promo__tiers { grid-template-columns: 1fr !important; } }
.fx-promo__tier {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  padding: 40px 24px !important;
  border-radius: 0 !important;
  position: relative;
  transition: all .25s;
}
.fx-promo__tier:hover { background: rgba(255,255,255,.08) !important; border-color: var(--nx-amber) !important; transform: none !important; }
.fx-promo__tier.is-best { background: var(--nx-amber) !important; border-color: var(--nx-amber) !important; color: var(--nx-black) !important; }
.fx-promo__qty {
  font-family: var(--nx-font) !important;
  font-size: clamp(72px, 9vw, 120px) !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  color: var(--nx-amber) !important;
  margin-bottom: 8px !important;
}
.fx-promo__tier.is-best .fx-promo__qty { color: var(--nx-black) !important; }
.fx-promo__tier strong { font-family: var(--nx-font-ar) !important; font-size: 22px !important; font-weight: 700 !important; color: var(--nx-white) !important; }
.fx-promo__tier.is-best strong { color: var(--nx-black) !important; }
.fx-promo__tier small { font-family: var(--nx-font) !important; font-size: 12px !important; letter-spacing: 0.2em !important; color: rgba(255,255,255,.6) !important; }
.fx-promo__tier.is-best small { color: var(--nx-black) !important; }
.fx-promo__tier.is-best::before { display: none !important; }

/* QUOTES — clean white, simple */
.fx-quotes { background: var(--nx-white) !important; padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; border: 0 !important; }
.fx-quotes__head { max-width: 700px; margin: 0 auto clamp(48px, 6vw, 80px) !important; text-align: center; }
.fx-quotes__grid { max-width: var(--nx-cap); margin: 0 auto; display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important; }
@media (max-width: 900px) { .fx-quotes__grid { grid-template-columns: 1fr !important; } }
.fx-quote {
  background: var(--nx-paper) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 36px 28px !important;
  backdrop-filter: none !important;
}
.fx-quote p {
  font-family: var(--nx-font-ar) !important;
  font-style: normal !important;
  font-size: 17px !important;
  line-height: 1.65 !important;
  color: var(--nx-black) !important;
  font-weight: 500 !important;
}
.fx-quote footer { color: var(--nx-soft) !important; }
.fx-quote footer strong { color: var(--nx-black) !important; }

/* FOOTER — clean black */
.fx-footer {
  background: var(--nx-black) !important;
  color: var(--nx-white) !important;
  padding: clamp(72px, 10vw, 120px) var(--nx-pad) 32px !important;
}
.fx-footer__inner { max-width: var(--nx-cap); margin: 0 auto; display: grid !important; grid-template-columns: 1.4fr 1fr 1fr 1fr !important; gap: clamp(32px, 4vw, 80px) !important; }
@media (max-width: 900px) { .fx-footer__inner { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 480px) { .fx-footer__inner { grid-template-columns: 1fr !important; } }
.fx-footer__brand p { font-family: var(--nx-font-ar) !important; font-style: normal !important; color: rgba(255,255,255,.6) !important; }
.fx-footer__brand p em { color: var(--nx-amber) !important; }
.fx-footer__col h4 { color: var(--nx-amber) !important; font-family: var(--nx-font) !important; }
.fx-footer__col a { color: rgba(255,255,255,.65) !important; font-family: var(--nx-font-ar) !important; }
.fx-footer__col a:hover { color: var(--nx-amber) !important; }
.fx-footer__bar { color: rgba(255,255,255,.5) !important; }

/* ============================================================
   PDP — Nixon-style: left big gallery, right title/price/buy
   ============================================================ */
.fiiiin-cpdp { background: var(--nx-white) !important; color: var(--nx-black) !important; }
.fiiiin-cpdp-360 { padding: clamp(40px, 6vw, 80px) var(--nx-pad) clamp(60px, 8vw, 100px) !important; background: var(--nx-paper) !important; }
.fiiiin-cpdp-360__inner { max-width: var(--nx-cap); margin: 0 auto; display: grid !important; grid-template-columns: 1.2fr 1fr !important; gap: clamp(40px, 6vw, 80px) !important; align-items: center !important; text-align: start !important; }
@media (max-width: 900px) { .fiiiin-cpdp-360__inner { grid-template-columns: 1fr !important; } }
.fiiiin-cpdp-360__head { order: 2; align-self: center; }
.fiiiin-cpdp-360__head .fiiiin-eyebrow { color: var(--nx-gold) !important; display: inline-block; margin-bottom: 14px; }
.fiiiin-cpdp-360__title { font-family: var(--nx-font-ar) !important; font-weight: 900 !important; font-size: clamp(36px, 5vw, 64px) !important; line-height: 1 !important; color: var(--nx-black) !important; letter-spacing: -0.01em !important; }
.fiiiin-cpdp-360__lead { font-family: var(--nx-font-ar) !important; font-style: normal !important; font-size: 17px !important; color: var(--nx-soft) !important; line-height: 1.6 !important; max-width: 480px; }
.fiiiin-cpdp-360__stage { order: 1; width: 100% !important; max-width: 100% !important; aspect-ratio: 1/1 !important; background: var(--nx-white) !important; margin: 0 !important; cursor: default !important; }
.fiiiin-cpdp-360__viewer { width: 100% !important; height: 100% !important; }
.fiiiin-cpdp-360__spin { width: 100% !important; height: 100% !important; }
.fiiiin-cpdp-360__frame { object-fit: cover !important; filter: none !important; }
.fiiiin-cpdp-360__hint { display: none !important; }
.fiiiin-cpdp-360__scroll { display: none !important; }

/* PDP gallery — clean white grid */
.fiiiin-cpdp-gallery { background: var(--nx-white) !important; padding: clamp(60px, 10vw, 120px) var(--nx-pad) !important; }
.fiiiin-cpdp-gallery__head { text-align: center; margin-bottom: clamp(40px, 5vw, 64px); }
.fiiiin-cpdp-gallery__head h2 { color: var(--nx-black) !important; }
.fiiiin-cpdp-gallery__head h2 em { color: var(--nx-gold) !important; font-style: normal !important; }
.fiiiin-cpdp-gallery__grid { max-width: var(--nx-cap); margin: 0 auto; }
.fiiiin-cpdp-gallery__cell { background: var(--nx-paper) !important; border-radius: 0 !important; }

/* PDP description — black band */
.fiiiin-cpdp-desc { background: var(--nx-black) !important; color: var(--nx-white) !important; padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; border: 0 !important; }
.fiiiin-cpdp-desc__inner { max-width: 900px; margin: 0 auto; text-align: center; }
.fiiiin-cpdp-desc__title { color: var(--nx-white) !important; font-family: var(--nx-font-ar) !important; font-weight: 900 !important; font-size: clamp(36px, 5vw, 64px) !important; }
.fiiiin-cpdp-desc__body { color: rgba(255,255,255,.75) !important; font-family: var(--nx-font-ar) !important; font-size: 17px !important; line-height: 1.75 !important; text-align: start; }
.fiiiin-cpdp-desc__bullets { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; max-width: 800px; margin: 32px auto 0 !important; }
@media (max-width: 600px) { .fiiiin-cpdp-desc__bullets { grid-template-columns: 1fr !important; } }
.fiiiin-cpdp-desc__bullets li { background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.18) !important; color: var(--nx-white) !important; padding: 14px 18px !important; }
.fiiiin-cpdp-desc__bullets span { color: var(--nx-amber) !important; }

/* PDP reviews — clean white */
.fiiiin-cpdp-reviews { background: var(--nx-white) !important; padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; }
.fiiiin-cpdp-reviews__head { text-align: center; }
.fiiiin-cpdp-reviews__head h2 { color: var(--nx-black) !important; }
.fiiiin-cpdp-reviews__head h2 em { color: var(--nx-gold) !important; font-style: normal !important; }
.fiiiin-cpdp-reviews__grid { max-width: var(--nx-cap); margin: 32px auto 0; }
.fiiiin-cpdp-review { background: var(--nx-paper) !important; border: 0 !important; border-radius: 0 !important; }
.fiiiin-cpdp-review p { color: var(--nx-black) !important; font-family: var(--nx-font-ar) !important; }
.fiiiin-cpdp-review footer { color: var(--nx-soft) !important; border-color: var(--nx-line) !important; }
.fiiiin-cpdp-review footer strong { color: var(--nx-black) !important; }
.fiiiin-cpdp-review::before { background: var(--nx-black) !important; color: var(--nx-white) !important; }

/* PDP buy block — clean black with white form */
.fiiiin-cpdp-buy { background: var(--nx-black) !important; color: var(--nx-white) !important; padding: clamp(80px, 12vw, 160px) var(--nx-pad) !important; }
.fiiiin-cpdp-buy__inner { max-width: var(--nx-cap); margin: 0 auto; }
.fiiiin-cpdp-buy__copy h2 { color: var(--nx-white) !important; font-family: var(--nx-font-ar) !important; font-weight: 900 !important; font-size: clamp(32px, 5vw, 56px) !important; }
.fiiiin-cpdp-buy__lead { color: rgba(255,255,255,.7) !important; font-family: var(--nx-font-ar) !important; font-style: normal !important; }
.fiiiin-cpdp-tier { background: rgba(255,255,255,.04) !important; border-color: rgba(255,255,255,.18) !important; border-radius: 0 !important; }
.fiiiin-cpdp-tier:has(input:checked) { background: var(--nx-amber) !important; border-color: var(--nx-amber) !important; box-shadow: none !important; }
.fiiiin-cpdp-tier:has(input:checked) .fiiiin-cpdp-tier__qty,
.fiiiin-cpdp-tier:has(input:checked) .fiiiin-cpdp-tier__price,
.fiiiin-cpdp-tier:has(input:checked) .fiiiin-cpdp-tier__save { color: var(--nx-black) !important; }
.fiiiin-cpdp-tier__qty { color: rgba(255,255,255,.7) !important; }
.fiiiin-cpdp-tier__price { color: var(--nx-white) !important; font-family: var(--nx-font) !important; font-weight: 800 !important; }
.fiiiin-cpdp-tier__save { color: var(--nx-amber) !important; }
.fiiiin-cpdp-tier__ribbon { background: var(--nx-amber) !important; color: var(--nx-black) !important; border-radius: 0 !important; }
.fiiiin-cpdp-buy__cod { background: rgba(255,196,46,.1) !important; border-color: rgba(255,196,46,.3) !important; border-radius: 0 !important; }
.fiiiin-cpdp-buy__form {
  background: var(--nx-white) !important;
  color: var(--nx-black) !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 40px 32px !important;
}
.fiiiin-cpdp-buy__form h3 { color: var(--nx-black) !important; font-family: var(--nx-font-ar) !important; font-weight: 900 !important; }
.fiiiin-cpdp-field span { color: var(--nx-soft) !important; font-family: var(--nx-font) !important; }
.fiiiin-cpdp-field input,
.fiiiin-cpdp-field select,
.fiiiin-cpdp-field textarea {
  background: var(--nx-paper) !important;
  border: 1px solid var(--nx-line) !important;
  color: var(--nx-black) !important;
  border-radius: 0 !important;
  padding: 16px !important;
}
.fiiiin-cpdp-field input:focus,
.fiiiin-cpdp-field select:focus,
.fiiiin-cpdp-field textarea:focus { border-color: var(--nx-black) !important; background: var(--nx-white) !important; outline: 0 !important; }
.fiiiin-cpdp-summary { background: var(--nx-paper) !important; border-radius: 0 !important; }
.fiiiin-cpdp-summary span { color: var(--nx-soft) !important; }
.fiiiin-cpdp-summary strong { color: var(--nx-black) !important; font-family: var(--nx-font) !important; }
.fiiiin-cpdp-form__note { color: var(--nx-soft) !important; }

/* ============================================================
   Cart / Checkout / Other pages — clean white retail
   ============================================================ */
.woocommerce-cart, .woocommerce-checkout, .fiiiin-cart-v2, .fiiiin-thanks, .fiiiin-page, .fiiiin-shop, .fiiiin-blog-list, .fiiiin-single-post,
.fiiiin-collections-page, .fiiiin-promo-hero, .fiiiin-promo-tiers, .fiiiin-contact-hero, .fiiiin-contact-grid, .fiiiin-contact-main {
  background: var(--nx-white) !important;
  color: var(--nx-black) !important;
}
.fiiiin-cart-v2__head h1, .fiiiin-page-article__head h1, .fiiiin-single-post__head h1, .fiiiin-shop__title, .fiiiin-thanks h1, .fiiiin-promo-hero h1, .fiiiin-collections-page__head h1, .fiiiin-contact-hero h1 {
  color: var(--nx-black) !important;
  font-family: var(--nx-font-ar) !important;
  font-weight: 900 !important;
}
.fiiiin-cart-v2__progress { background: var(--nx-paper) !important; border-color: var(--nx-line) !important; color: var(--nx-black) !important; }
.fiiiin-cart-v2__progress strong { color: var(--nx-black) !important; }
.fiiiin-cart-v2__progress small { color: var(--nx-soft) !important; }
.fiiiin-cart-v2__bar { background: var(--nx-line) !important; }
.fiiiin-cart-v2__bar span { background: linear-gradient(90deg, var(--nx-gold), var(--nx-amber)) !important; }
.fiiiin-cart-table th, .fiiiin-cart-table td { border-color: var(--nx-line) !important; color: var(--nx-black) !important; }
.cart_totals, .woocommerce-checkout-review-order { background: var(--nx-paper) !important; backdrop-filter: none !important; border: 0 !important; color: var(--nx-black) !important; }

.woocommerce form .form-row label { color: var(--nx-soft) !important; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
  background: var(--nx-paper) !important;
  border-color: var(--nx-line) !important;
  color: var(--nx-black) !important;
  border-radius: 0 !important;
}

/* Shop archive on Nixon */
.fiiiin-shop { padding: clamp(60px, 10vw, 120px) var(--nx-pad) !important; }
.fiiiin-shop__title { text-align: center; }
.fiiiin-shop-chips { justify-content: center; padding: 16px 0 32px; }
.fiiiin-chip { border: 1px solid var(--nx-black) !important; color: var(--nx-black) !important; border-radius: 0 !important; background: transparent !important; font-family: var(--nx-font) !important; font-weight: 600 !important; }
.fiiiin-chip:hover, .fiiiin-chip.is-active { background: var(--nx-black) !important; color: var(--nx-white) !important; border-color: var(--nx-black) !important; }
.woocommerce ul.products li.product { background: transparent !important; }
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price * { color: var(--nx-black) !important; font-family: var(--nx-font) !important; font-weight: 600 !important; }
.woocommerce ul.products li.product .price del { color: var(--nx-mute) !important; font-weight: 400 !important; }
.fiiiin-product-card__media { background: var(--nx-paper) !important; }
.fiiiin-product-card__title, .woocommerce ul.products li.product .woocommerce-loop-product__title {
  color: var(--nx-black) !important; font-family: var(--nx-font-ar) !important; font-weight: 600 !important; font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important;
}
.fiiiin-product-card__cta { display: none !important; }

/* Promo tiers page */
.fiiiin-promo-tier { background: var(--nx-paper) !important; border: 0 !important; }
.fiiiin-promo-tier h3, .fiiiin-promo-tier__price { color: var(--nx-black) !important; }
.fiiiin-promo-tier p { color: var(--nx-soft) !important; }
.fiiiin-promo-tier.is-best { background: var(--nx-black) !important; color: var(--nx-white) !important; }
.fiiiin-promo-tier.is-best h3, .fiiiin-promo-tier.is-best .fiiiin-promo-tier__price { color: var(--nx-white) !important; }
.fiiiin-promo-tier.is-best p { color: rgba(255,255,255,.7) !important; }

/* Contact cards */
.fiiiin-contact-grid__card { background: var(--nx-paper) !important; border: 0 !important; backdrop-filter: none !important; color: var(--nx-black) !important; }
.fiiiin-contact-grid__card h3, .fiiiin-contact-grid__card p { color: var(--nx-black) !important; }
.fiiiin-contact-grid__card small { color: var(--nx-soft) !important; }
.fiiiin-contact-grid__card--gold { background: var(--nx-amber) !important; color: var(--nx-black) !important; }
.fiiiin-contact-form { background: var(--nx-paper) !important; border: 0 !important; backdrop-filter: none !important; color: var(--nx-black) !important; }
.fiiiin-contact-form h2, .fiiiin-contact-form > p { color: var(--nx-black) !important; }
.fiiiin-contact-side__map, .fiiiin-contact-hours, .fiiiin-contact-social { background: var(--nx-paper) !important; border: 0 !important; }
.fiiiin-contact-hours h3, .fiiiin-contact-social h3 { color: var(--nx-black) !important; }
.fiiiin-contact-hours strong { color: var(--nx-black) !important; }
.fiiiin-contact-hours span { color: var(--nx-soft) !important; }
.fiiiin-contact-hours li { border-color: var(--nx-line) !important; }
.fiiiin-contact-hours li.is-extra { background: var(--nx-white) !important; }

/* Lang switcher inside dark sections (footer) — flip colors */
.fx-footer .fiiiin-lang-switch__btn { color: rgba(255,255,255,.6) !important; }
.fx-footer .fiiiin-lang-switch__btn.is-active { background: var(--nx-amber) !important; color: var(--nx-black) !important; border-color: var(--nx-amber) !important; }

/* Skip link */
.fiiiin-skip-link { background: var(--nx-amber) !important; color: var(--nx-black) !important; }

/* ============================================================
   PDP GALLERY — clean editorial mosaic (ref: client screenshot)
   ============================================================ */
.fiiiin-cpdp-gallery__grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 14px !important;
  max-width: var(--nx-cap);
  margin: 0 auto !important;
}
.fiiiin-cpdp-gallery__cell {
  margin: 0 !important;
  overflow: hidden !important;
  background: var(--nx-paper) !important;
  aspect-ratio: 1 / 1 !important;
}
.fiiiin-cpdp-gallery__cell img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .6s cubic-bezier(.2,.8,.2,1) !important;
}
.fiiiin-cpdp-gallery__cell:hover img { transform: scale(1.04) !important; }
/* First image = full-width hero, second = wide */
.fiiiin-cpdp-gallery__cell:first-child { grid-column: span 3 !important; aspect-ratio: 16 / 10 !important; }
@media (max-width: 768px) {
  .fiiiin-cpdp-gallery__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 8px !important; }
  .fiiiin-cpdp-gallery__cell:first-child { grid-column: span 2 !important; aspect-ratio: 4 / 3 !important; }
}

/* ============================================================
   MOBILE DRAWER — premium right-side sheet (RTL)
   ============================================================ */
.fiiiin-mobile-drawer__panel {
  position: absolute !important;
  inset-block: 0 !important;
  inset-inline-end: 0 !important;
  width: min(86vw, 380px) !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 22px 22px calc(28px + env(safe-area-inset-bottom)) !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch !important;
  background: var(--nx-white) !important;
  box-shadow: -20px 0 60px rgba(0,0,0,.25) !important;
  transform: translateX(-110%) !important;
  transition: transform .32s cubic-bezier(.2,.8,.2,1) !important;
}
.fiiiin-mobile-drawer.is-open .fiiiin-mobile-drawer__panel { transform: translateX(0) !important; }
.fiiiin-mobile-drawer__top { display: flex !important; align-items: center !important; justify-content: space-between !important; padding-bottom: 18px !important; border-bottom: 1px solid var(--nx-line) !important; margin-bottom: 18px !important; }
.fiiiin-mobile-drawer__top .fiiiin-brand__img { max-height: 38px !important; }
.fiiiin-drawer-close { width: 42px !important; height: 42px !important; border: 1px solid var(--nx-line) !important; background: var(--nx-white) !important; color: var(--nx-black) !important; font-size: 22px !important; line-height: 1 !important; cursor: pointer !important; border-radius: 0 !important; }
.fiiiin-mobile-drawer__lang { margin-bottom: 18px !important; }
.fiiiin-mobile-drawer__lang .fiiiin-lang-switch { display: flex !important; gap: 8px !important; border: 0 !important; padding: 0 !important; }
.fiiiin-mobile-drawer__lang .fiiiin-lang-switch__btn {
  flex: 1 !important; text-align: center !important; min-height: 44px !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  border: 1px solid var(--nx-line) !important; color: var(--nx-black) !important;
  font-family: var(--nx-font) !important; font-weight: 800 !important; font-size: 13px !important; letter-spacing: .14em !important;
}
.fiiiin-mobile-drawer__lang .fiiiin-lang-switch__btn.is-active { background: var(--nx-black) !important; color: var(--nx-white) !important; border-color: var(--nx-black) !important; }
.fiiiin-mobile-drawer__menu { list-style: none !important; margin: 0 !important; padding: 0 !important; flex: 1 !important; }
.fiiiin-mobile-drawer__menu li { border-bottom: 1px solid var(--nx-line) !important; }
.fiiiin-mobile-drawer__menu a {
  display: flex !important; align-items: center !important; gap: 12px !important;
  padding: 17px 4px !important; font-family: var(--nx-font-ar) !important; font-weight: 700 !important;
  font-size: 18px !important; color: var(--nx-black) !important; text-decoration: none !important;
}
.fiiiin-mobile-drawer__menu a:active { color: var(--nx-gold) !important; }
.fiiiin-mobile-drawer__cta { display: flex !important; flex-direction: column !important; gap: 10px !important; margin-top: 22px !important; }
.fiiiin-mobile-drawer__cta .fiiiin-btn { width: 100% !important; }

/* ============================================================
   STICKY MOBILE BUY BAR (ref: client screenshot)
   ============================================================ */
.fiiiin-stickybuy { display: none; }
@media (max-width: 900px) {
  .fiiiin-stickybuy {
    display: flex !important;
    position: fixed !important;
    inset-inline: 0 !important;
    inset-block-end: 0 !important;
    z-index: 8500 !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 12px 14px calc(12px + env(safe-area-inset-bottom)) !important;
    background: rgba(255,255,255,.96) !important;
    -webkit-backdrop-filter: saturate(180%) blur(14px) !important;
    backdrop-filter: saturate(180%) blur(14px) !important;
    border-top: 1px solid var(--nx-line) !important;
    box-shadow: 0 -10px 40px rgba(0,0,0,.10) !important;
    transform: translateY(0);
    transition: transform .32s cubic-bezier(.2,.8,.2,1);
  }
  .fiiiin-stickybuy.is-hidden { transform: translateY(130%) !important; pointer-events: none !important; }
  .fiiiin-stickybuy__wish {
    flex: 0 0 auto !important; width: 46px !important; height: 46px !important;
    display: flex !important; align-items: center !important; justify-content: center !important;
    border: 1px solid var(--nx-line) !important; background: var(--nx-white) !important;
    color: var(--nx-black) !important; cursor: pointer !important; border-radius: 0 !important; padding: 0 !important;
  }
  .fiiiin-stickybuy__wish.is-on { color: #E0245E !important; border-color: #E0245E !important; }
  .fiiiin-stickybuy__wish.is-on svg path { fill: #E0245E !important; }
  .fiiiin-stickybuy__info { flex: 1 1 auto !important; min-width: 0 !important; display: flex !important; flex-direction: column !important; gap: 2px !important; }
  .fiiiin-stickybuy__name {
    font-family: var(--nx-font-ar) !important; font-weight: 700 !important; font-size: 13px !important;
    color: var(--nx-black) !important; line-height: 1.2 !important;
    white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important;
  }
  .fiiiin-stickybuy__price { display: flex !important; align-items: baseline !important; gap: 8px !important; }
  .fiiiin-stickybuy__was { font-family: var(--nx-font) !important; font-size: 12px !important; color: var(--nx-mute) !important; text-decoration: line-through !important; }
  .fiiiin-stickybuy__now { font-family: var(--nx-font) !important; font-weight: 800 !important; font-size: 16px !important; color: var(--nx-gold) !important; }
  .fiiiin-stickybuy__cta {
    flex: 0 0 auto !important;
    background: var(--nx-black) !important; color: var(--nx-white) !important;
    border: 0 !important; border-radius: 999px !important;
    padding: 0 22px !important; min-height: 52px !important;
    font-family: var(--nx-font-ar) !important; font-weight: 800 !important; font-size: 15px !important;
    cursor: pointer !important; white-space: nowrap !important;
  }
  .fiiiin-stickybuy__cta:active { background: var(--nx-gold) !important; }

  /* Keep page content clear of the sticky bar */
  .single-product .fiiiin-cpdp-buy { padding-bottom: 110px !important; }
}
@media (max-width: 360px) {
  .fiiiin-stickybuy__cta { font-size: 13px !important; padding: 0 16px !important; }
  .fiiiin-stickybuy__wish { display: none !important; }
}

/* ============================================================
   MOBILE POLISH — comfortable tap targets, no iOS zoom, spacing
   ============================================================ */
@media (max-width: 900px) {
  /* iOS: 16px inputs prevent auto-zoom on focus */
  .fiiiin-cpdp-field input,
  .fiiiin-cpdp-field select,
  .fiiiin-cpdp-field textarea,
  .woocommerce form .form-row input.input-text,
  .woocommerce form .form-row select,
  .woocommerce form .form-row textarea { font-size: 16px !important; }

  .fiiiin-cpdp-buy__form { padding: 26px 18px !important; }
  .fiiiin-cpdp-360__title { font-size: clamp(28px, 8vw, 40px) !important; }
  .fiiiin-cpdp-360 { padding: 28px 16px 56px !important; }
  .fiiiin-cpdp-360__inner { gap: 24px !important; }
  .fiiiin-cpdp-buy__tiers { gap: 10px !important; }
  .fiiiin-cpdp-tier { padding: 16px 14px !important; min-height: 56px !important; }

  /* Bigger product grid cards on phones */
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 14px !important; }
  .fiiiin-navbar__inner { padding: 12px 14px !important; }
  .fiiiin-brand__img { max-height: 34px !important; }

  /* Comfortable section rhythm */
  .fiiiin-cpdp-gallery { padding: 48px 14px !important; }
  .fiiiin-cpdp-desc, .fiiiin-cpdp-reviews { padding: 56px 18px !important; }
}

/* ============================================================
   NO HORIZONTAL OVERFLOW / NO WHOLE-PAGE ZOOM-OUT
   overflow-x:clip on <html> (NOT hidden — hidden breaks the
   sticky navbar by creating a scroll container; clip does not).
   ============================================================ */
html {
  overflow-x: clip !important;
  max-width: 100% !important;
}
body {
  overflow-x: clip !important;
  max-width: 100% !important;
  position: relative !important;
}
.fiiiin-main { overflow-x: clip !important; max-width: 100% !important; }

/* Grid/flex blowout guard — children default to min-width:auto and
   can push the track wider than the screen (images, nowrap prices). */
.fx-featured__grid > *,
.fx-bento__inner > *,
.fx-promise__inner > *,
.fx-quotes__grid > *,
.fx-promo__tiers > *,
.fx-strip__track > *,
.fx-footer__inner > *,
.fiiiin-cpdp-gallery__grid > *,
.fiiiin-cpdp-buy__tiers > * { min-width: 0 !important; }

/* Never let media or embeds exceed the viewport */
img, video, iframe, model-viewer, table { max-width: 100% !important; }

/* Section wrappers stay within the screen on mobile */
@media (max-width: 900px) {
  .fx-hero, .fx-promise, .fx-featured, .fx-bento, .fx-spot, .fx-strip,
  .fx-promo, .fx-quotes, .fx-footer,
  .fiiiin-cpdp-360, .fiiiin-cpdp-gallery, .fiiiin-cpdp-desc,
  .fiiiin-cpdp-reviews, .fiiiin-cpdp-buy {
    max-width: 100% !important;
    overflow-x: clip !important;
  }
  .fx-promo__inner { max-width: 100% !important; }
}

/* ============================================================
   MOBILE NAVBAR — guaranteed visible: burger | logo | cart
   ============================================================ */
@media (max-width: 900px) {
  .fiiiin-navbar { position: sticky !important; top: 0 !important; z-index: 1000 !important; background: var(--nx-white) !important; }
  .fiiiin-navbar__inner {
    display: grid !important;
    grid-template-columns: 1fr auto 1fr !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    max-width: 100% !important;
  }
  .fiiiin-navbar__links { display: none !important; }
  .fiiiin-brand { grid-column: 2 !important; justify-self: center !important; margin: 0 !important; }
  .fiiiin-brand__img { max-height: 38px !important; width: auto !important; display: block !important; }
  .fiiiin-navbar__icons { grid-column: 3 !important; justify-self: end !important; display: flex !important; align-items: center !important; gap: 8px !important; }
  .fiiiin-burger {
    display: inline-flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 5px !important;
    width: 42px !important; height: 42px !important;
    padding: 9px !important;
    background: transparent !important;
    border: 1px solid var(--nx-line) !important;
    order: 2 !important;
  }
  .fiiiin-burger span { display: block !important; width: 100% !important; height: 2px !important; background: var(--nx-black) !important; }
}

/* ============================================================
   LOADER FAILSAFE — never trap the page behind a black screen
   (CSS auto-dismisses even if JS fails to add .is-hidden)
   ============================================================ */
.fiiiin-loader { animation: fiiiinLoaderAutoHide 0s linear 3.5s forwards !important; }
.fiiiin-loader.is-hidden { opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; }
@keyframes fiiiinLoaderAutoHide {
  to { opacity: 0; visibility: hidden; pointer-events: none; }
}

/* ============================================================
   RTL-SAFE PRICE NUMBERS — keep digits LTR inside Arabic text
   ============================================================ */
.fiiiin-amt {
  unicode-bidi: isolate !important;
  direction: ltr !important;
  font-variant-numeric: tabular-nums !important;
  font-feature-settings: "tnum" 1 !important;
}
.fiiiin-cpdp-tier__price,
.fiiiin-cpdp-tier__save,
.fiiiin-cpdp-summary strong,
.fiiiin-stickybuy__now,
.fiiiin-stickybuy__was { unicode-bidi: isolate !important; }

/* ============================================================
   SHOP / CATEGORY PRODUCT CARD — clean retail, one square image
   ============================================================ */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: clamp(16px, 2vw, 32px) !important;
  list-style: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: var(--nx-cap);
}
.woocommerce ul.products li.product,
.fiiiin-product-card {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: start !important;
  background: transparent !important;
}
.fiiiin-product-card__link { display: block !important; text-decoration: none !important; color: inherit !important; }

/* Image frame: ONE fixed 4:5 portrait, cover-cropped, consistent for all */
.fiiiin-product-card__media {
  position: relative !important;
  aspect-ratio: 4 / 5 !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  overflow: hidden !important;
  background: var(--nx-paper) !important;
  border-radius: 0 !important;
}
.fiiiin-product-card__media img,
.fiiiin-product-card__img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  margin: 0 !important;
  aspect-ratio: auto !important;
  transition: transform .7s cubic-bezier(.2,.8,.2,1) !important;
}
/* Kill any duplicate/extra image the loop might still inject */
.fiiiin-product-card__media img ~ img,
.fiiiin-product-card__media .fiiiin-product-card__img ~ img,
.fiiiin-product-card__media a + img { display: none !important; }
.fiiiin-product-card:hover .fiiiin-product-card__media img,
.fiiiin-product-card:hover .fiiiin-product-card__img { transform: scale(1.05) !important; }

/* Sale / save badge */
.woocommerce ul.products li.product .onsale,
.fiiiin-loop-save {
  position: absolute !important; top: 10px !important; inset-inline-start: 10px !important;
  margin: 0 !important; min-height: 0 !important; min-width: 0 !important;
  background: var(--nx-black) !important; color: var(--nx-white) !important;
  font-family: var(--nx-font-ar) !important; font-weight: 700 !important;
  font-size: 11px !important; letter-spacing: .04em !important;
  padding: 6px 12px !important; border-radius: 0 !important; line-height: 1 !important;
  display: inline-flex !important; align-items: center !important; z-index: 3 !important;
}

/* Text block */
.fiiiin-product-card__body { padding: 0 2px !important; text-align: start !important; }
.fiiiin-product-card__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--nx-font-ar) !important; font-weight: 700 !important;
  font-size: 15px !important; line-height: 1.35 !important; color: var(--nx-black) !important;
  margin: 0 0 6px !important; text-transform: none !important; letter-spacing: 0 !important;
  display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important;
  overflow: hidden !important; min-height: 2.7em !important;
}
.fiiiin-product-card__price,
.woocommerce ul.products li.product .price {
  font-family: var(--nx-font) !important; font-size: 16px !important; font-weight: 800 !important;
  color: var(--nx-black) !important; unicode-bidi: isolate !important;
}
.woocommerce ul.products li.product .price del,
.fiiiin-product-card__price del { color: var(--nx-mute) !important; font-weight: 500 !important; font-size: 13px !important; margin-inline-end: 8px !important; }
.woocommerce ul.products li.product .price ins { text-decoration: none !important; color: var(--nx-gold) !important; }

/* No oversized add-to-cart block under cards (whole card is the link) */
.fiiiin-product-card__cta,
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart { display: none !important; }
.fiiiin-product-card__oos {
  position: absolute !important; inset: auto 0 0 0 !important; background: rgba(10,10,10,.8) !important;
  color: #fff !important; font-family: var(--nx-font-ar) !important; font-size: 12px !important;
  text-align: center !important; padding: 8px !important; z-index: 3 !important;
}

/* Shop header / chips */
.fiiiin-shop { padding: clamp(28px, 6vw, 80px) var(--nx-pad) clamp(60px, 10vw, 120px) !important; }
.fiiiin-shop__toolbar { border-block: 1px solid var(--nx-line) !important; padding: 14px 0 !important; margin: 0 0 28px !important; }
.fiiiin-shop-chips { padding: 8px 0 22px !important; }
.fiiiin-shop-chips__rail {
  display: flex !important;
  gap: 8px !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: none !important;
  padding: 6px 4px !important;
}
.fiiiin-shop-chips__rail::-webkit-scrollbar { display: none !important; }
.fiiiin-chip {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  scroll-snap-align: start !important;
  white-space: nowrap !important;
  padding: 10px 16px !important;
  min-height: 40px !important;
  font-size: 13px !important;
}
.fiiiin-chip__label { font-weight: 700 !important; }
.fiiiin-chip__count {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 22px !important;
  height: 22px !important;
  padding: 0 6px !important;
  font-family: var(--nx-font) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  background: var(--nx-paper) !important;
  color: var(--nx-soft) !important;
  border-radius: 999px !important;
  unicode-bidi: isolate !important;
}
.fiiiin-chip.is-active .fiiiin-chip__count {
  background: rgba(255,255,255,.18) !important;
  color: var(--nx-white) !important;
}
@media (min-width: 901px) {
  .fiiiin-shop-chips__rail { justify-content: center !important; flex-wrap: wrap !important; overflow: visible !important; padding: 6px 0 !important; }
}

@media (max-width: 1024px) { .woocommerce ul.products { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 760px)  {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 14px !important; }
  .fiiiin-product-card__title,
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 13.5px !important; min-height: 2.6em !important; }
  .fiiiin-product-card__price, .woocommerce ul.products li.product .price { font-size: 15px !important; }
  .fiiiin-shop__title { font-size: clamp(26px, 8vw, 38px) !important; text-align: center !important; }
}

/* ============================================================
   PDP — Related Products
   ============================================================ */
.fiiiin-cpdp-related {
  background: var(--nx-paper) !important;
  padding: clamp(60px, 10vw, 120px) var(--nx-pad) !important;
}
.fiiiin-cpdp-related__head {
  max-width: var(--nx-cap);
  margin: 0 auto clamp(28px, 4vw, 48px);
  text-align: center;
}
.fiiiin-cpdp-related__head .fiiiin-eyebrow { color: var(--nx-gold) !important; }
.fiiiin-cpdp-related__head h2 {
  font-family: var(--nx-font-ar) !important;
  font-weight: 900 !important;
  font-size: clamp(28px, 4vw, 44px) !important;
  color: var(--nx-black) !important;
  margin: 8px 0 0 !important;
}
.fiiiin-cpdp-related__grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: clamp(14px, 2vw, 28px) !important;
  max-width: var(--nx-cap);
  margin: 0 auto !important;
}
.fiiiin-cpdp-related__card {
  display: block !important;
  text-decoration: none !important;
  color: inherit !important;
  background: transparent !important;
}
.fiiiin-cpdp-related__media {
  position: relative !important;
  aspect-ratio: 4 / 5 !important;
  overflow: hidden !important;
  background: var(--nx-white) !important;
  margin-bottom: 14px !important;
}
.fiiiin-cpdp-related__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform .7s cubic-bezier(.2,.8,.2,1) !important;
}
.fiiiin-cpdp-related__card:hover .fiiiin-cpdp-related__media img { transform: scale(1.05) !important; }
.fiiiin-cpdp-related__badge {
  position: absolute !important; top: 10px !important; inset-inline-start: 10px !important;
  background: var(--nx-black) !important; color: var(--nx-white) !important;
  font-family: var(--nx-font-ar) !important; font-weight: 700 !important;
  font-size: 11px !important; padding: 5px 11px !important; letter-spacing: .03em !important;
  z-index: 2 !important;
}
.fiiiin-cpdp-related__name {
  font-family: var(--nx-font-ar) !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  color: var(--nx-black) !important;
  margin: 0 0 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 2.7em !important;
}
.fiiiin-cpdp-related__price,
.fiiiin-cpdp-related__price .woocommerce-Price-amount {
  font-family: var(--nx-font) !important;
  font-weight: 800 !important;
  font-size: 15px !important;
  color: var(--nx-black) !important;
  unicode-bidi: isolate !important;
}
.fiiiin-cpdp-related__price del,
.fiiiin-cpdp-related__price del .woocommerce-Price-amount {
  color: var(--nx-mute) !important; font-weight: 500 !important; font-size: 13px !important; margin-inline-end: 8px !important;
}
@media (max-width: 900px) {
  .fiiiin-cpdp-related { padding: 60px 16px !important; }
  .fiiiin-cpdp-related__grid { grid-template-columns: repeat(2, 1fr) !important; gap: 14px !important; }
  .fiiiin-cpdp-related__name { font-size: 13.5px !important; }
}

/* Simplified COD form (no notes, compact total) */
.fiiiin-cpdp-buy__form--simple .fiiiin-cpdp-field { margin-bottom: 14px !important; }
.fiiiin-cpdp-summary--compact {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 14px 18px !important;
  background: var(--nx-paper) !important;
  margin: 18px 0 14px !important;
  border-radius: 0 !important;
}
.fiiiin-cpdp-summary--compact span { color: var(--nx-soft) !important; font-family: var(--nx-font) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .04em !important; text-transform: uppercase !important; }
.fiiiin-cpdp-summary--compact strong { color: var(--nx-black) !important; font-family: var(--nx-font) !important; font-weight: 800 !important; font-size: 20px !important; unicode-bidi: isolate !important; }

/* ============================================================
   THANK-YOU PAGE — readable on white background
   Original styles assumed dark bg + ivory text. Nixon flipped
   to white bg without flipping the text colors → invisible.
   ============================================================ */
.fiiiin-thanks { background: var(--nx-white) !important; color: var(--nx-black) !important; }
.fiiiin-thanks__eyebrow { color: var(--nx-gold) !important; }
.fiiiin-thanks h1 { color: var(--nx-black) !important; font-family: var(--nx-font-ar) !important; font-weight: 900 !important; }
.fiiiin-thanks__lead { color: var(--nx-soft) !important; font-family: var(--nx-font-ar) !important; font-style: normal !important; }
.fiiiin-thanks__lead strong { color: var(--nx-black) !important; }
.fiiiin-thanks__order {
  background: var(--nx-paper) !important;
  border: 1px solid var(--nx-line) !important;
  border-radius: 0 !important;
}
.fiiiin-thanks__order-row { border-color: var(--nx-line) !important; }
.fiiiin-thanks__order-row span { color: var(--nx-soft) !important; }
.fiiiin-thanks__order-row strong {
  color: var(--nx-black) !important;
  font-family: var(--nx-font) !important;
  font-weight: 700 !important;
  unicode-bidi: isolate !important;
}
.fiiiin-thanks__order-row strong .woocommerce-Price-amount,
.fiiiin-thanks__order-row strong .woocommerce-Price-amount * { color: var(--nx-black) !important; }
.fiiiin-thanks__steps h3 { color: var(--nx-black) !important; font-family: var(--nx-font-ar) !important; font-weight: 900 !important; }
.fiiiin-thanks__steps ol { color: var(--nx-soft) !important; }
.fiiiin-thanks__steps li { color: var(--nx-soft) !important; font-family: var(--nx-font-ar) !important; }
.fiiiin-thanks__steps li::before { color: var(--nx-gold) !important; }
.fiiiin-thanks__steps li strong { color: var(--nx-black) !important; font-weight: 700 !important; }
.fiiiin-thanks__details { color: var(--nx-black) !important; }
.fiiiin-thanks__details summary { color: var(--nx-black) !important; }
.fiiiin-thanks__details summary::after { color: var(--nx-gold) !important; }
.fiiiin-thanks__items li {
  color: var(--nx-black) !important;
  border-color: var(--nx-line) !important;
}
.fiiiin-thanks__items li span { color: var(--nx-black) !important; }
.fiiiin-thanks__items li strong { color: var(--nx-black) !important; unicode-bidi: isolate !important; }

/* Phone field helper text */
.fiiiin-cpdp-field__help {
  display: block !important;
  margin-top: 6px !important;
  font-family: var(--nx-font) !important;
  font-size: 12px !important;
  color: var(--nx-soft) !important;
  unicode-bidi: isolate !important;
}
.fiiiin-cpdp-field input[type="tel"] {
  font-family: var(--nx-font) !important;
  letter-spacing: 0.04em !important;
  font-variant-numeric: tabular-nums !important;
}

/* ============================================================
   Kill the COD-toolkit plugin's duplicate sticky bar.
   Our own .fiiiin-stickybuy (note: no hyphen) is the single
   working bar — it scrolls to the inline COD form.
   ============================================================ */
.fiiiin-sticky-buy,
.fiiiin-sticky-cta,
.fiiiin-sticky-info,
.fiiiin-sticky-price,
.fiiiin-sticky-title { display: none !important; }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .fx-card, .fx-card__media img, .fx-bento__media, .fx-strip__media img { transition: none !important; transform: none !important; }
  .fiiiin-stickybuy, .fiiiin-mobile-drawer__panel { transition: none !important; }
  .fiiiin-product-card__media img { transition: none !important; }
}
