/* ZYRATH cinematic homepage hero — isolated preview override */
.site-header {
  height: 92px;
  padding-inline: clamp(24px, 4.7vw, 76px);
  background: linear-gradient(to bottom, rgba(5, 5, 5, 0.58), transparent);
}

.site-header.is-scrolled {
  background: rgba(8, 8, 8, 0.9);
  border-color: rgba(239, 229, 211, 0.12);
}

.brand-mark {
  color: #e7d8b8;
  text-shadow: none;
}

.brand-mark::before {
  border-color: rgba(221, 196, 145, 0.42);
}

.nav-cart {
  color: var(--cream);
  background: rgba(10, 10, 10, 0.22);
  border-color: rgba(238, 229, 211, 0.38);
  transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease;
}

.nav-cart:hover,
.nav-cart:focus-visible {
  color: #111;
  background: var(--cream);
  border-color: var(--cream);
}

.hero.hero-cinematic {
  min-height: 100svh;
  height: max(720px, 100svh);
  display: grid;
  place-items: center;
  overflow: clip;
  padding: 126px clamp(22px, 5vw, 80px) 84px;
  background: #0a0a0a;
  border-color: rgba(238, 229, 211, 0.12);
}

.hero.hero-cinematic::before {
  z-index: 1;
  inset: 0;
  background:
    linear-gradient(90deg, rgba(7, 7, 7, 0.98) 0%, rgba(7, 7, 7, 0.52) 25%, rgba(7, 7, 7, 0.12) 49%, rgba(7, 7, 7, 0.54) 76%, rgba(7, 7, 7, 0.98) 100%),
    linear-gradient(180deg, rgba(7, 7, 7, 0.72) 0%, transparent 25%, transparent 68%, rgba(7, 7, 7, 0.86) 100%);
  mask-image: none;
  pointer-events: none;
}

.hero.hero-cinematic::after {
  z-index: 2;
  inset: 0;
  width: auto;
  height: auto;
  border: 0;
  border-radius: 0;
  box-shadow: inset 0 0 190px rgba(0, 0, 0, 0.88);
  background: radial-gradient(circle at 50% 46%, transparent 0 28%, rgba(5, 5, 5, 0.25) 58%, rgba(5, 5, 5, 0.74) 100%);
  pointer-events: none;
}

.hero-gallery {
  position: absolute;
  z-index: 0;
  inset: -5% -2%;
  opacity: 0;
  transform: scale(1.035);
  animation: galleryIn 1.5s 0.08s cubic-bezier(.22,.8,.28,1) forwards;
  will-change: transform;
}

.hero-poster {
  position: absolute;
  margin: 0;
  overflow: hidden;
  background: #0d0d0d;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.72);
  filter: saturate(0.6) contrast(1.08) brightness(0.58);
}

.hero-poster::after {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(229, 215, 184, 0.13);
  background: linear-gradient(150deg, rgba(233, 211, 163, 0.08), transparent 42%, rgba(0, 0, 0, 0.28));
}

.hero-poster img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.hero-poster--football { left: 3%; top: 8%; width: 22%; height: 58%; transform: rotate(-5deg); }
.hero-poster--morocco { left: 20%; bottom: -12%; width: 20%; height: 53%; transform: rotate(3deg); }
.hero-poster--automotive { left: 36%; top: -18%; width: 29%; height: 72%; transform: rotate(-1deg); }
.hero-poster--motorsport { right: 18%; bottom: -13%; width: 22%; height: 57%; transform: rotate(-3deg); }
.hero-poster--dikra { right: 2%; top: 5%; width: 21%; height: 54%; transform: rotate(5deg); }
.hero-poster--supercar { right: 35%; bottom: -37%; width: 26%; height: 61%; transform: rotate(1deg); }

.hero-vignette {
  position: absolute;
  z-index: 3;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(232, 218, 188, 0.07) 50%, transparent calc(50% + 1px)),
    radial-gradient(ellipse at 50% 47%, rgba(206, 177, 119, 0.10), transparent 34%);
}

.hero-rule {
  position: absolute;
  z-index: 4;
  top: 50%;
  width: clamp(50px, 10vw, 160px);
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(231, 216, 184, 0.42));
}

.hero-rule--left { left: 0; }
.hero-rule--right { right: 0; transform: rotate(180deg); }

.hero.hero-cinematic .hero-content {
  position: relative;
  z-index: 5;
  width: min(100%, 1120px);
  text-shadow: 0 8px 36px rgba(0, 0, 0, 0.9);
}

.hero-kicker,
.hero.hero-cinematic h1,
.hero.hero-cinematic .slogan,
.hero.hero-cinematic .hero-description,
.hero.hero-cinematic .hero-actions {
  opacity: 0;
  transform: translateY(22px);
  animation: titleIn 900ms cubic-bezier(.22,.8,.28,1) forwards;
}

.hero-kicker {
  display: flex;
  justify-content: center;
  gap: 22px;
  margin-bottom: clamp(20px, 3vh, 34px);
  color: rgba(238, 229, 211, 0.7);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.36em;
  text-transform: uppercase;
  animation-delay: 420ms;
}

.hero-kicker span {
  color: #cdb986;
}

.hero.hero-cinematic h1 {
  color: #f0eadf;
  background: none;
  padding-left: 0.055em;
  font-size: clamp(86px, 15.2vw, 238px);
  font-weight: 500;
  line-height: 0.77;
  letter-spacing: 0.055em;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.06);
  text-shadow: 0 12px 56px rgba(0, 0, 0, 0.88);
  animation-delay: 620ms;
}

.hero.hero-cinematic .slogan {
  margin-top: clamp(30px, 5vh, 54px);
  color: #eee5d3;
  font-family: var(--font-body);
  font-size: clamp(12px, 1.25vw, 18px);
  font-weight: 500;
  letter-spacing: clamp(0.32em, 0.75vw, 0.58em);
  animation-delay: 820ms;
}

.hero.hero-cinematic .hero-description {
  margin-top: clamp(19px, 2.5vh, 29px);
  color: rgba(238, 229, 211, 0.65);
  font-size: clamp(13px, 1.05vw, 16px);
  font-style: italic;
  letter-spacing: 0.13em;
  line-height: 1.5;
  animation-delay: 980ms;
}

.hero.hero-cinematic .hero-actions {
  margin-top: clamp(28px, 4vh, 44px);
  animation-delay: 1140ms;
}

.hero-cta {
  min-width: min(100%, 288px);
  min-height: 56px;
  color: #f2ebdf;
  background: rgba(8, 8, 8, 0.34);
  border: 1px solid rgba(242, 235, 223, 0.72);
  backdrop-filter: blur(12px);
}

.hero-cta:hover,
.hero-cta:focus-visible {
  color: #111;
  background: #eee5d3;
  border-color: #eee5d3;
}

/* Ready-to-deliver inventory */
.ready-stock {
  position: relative;
  padding-top: clamp(88px, 11vw, 150px);
  padding-bottom: clamp(90px, 12vw, 170px);
  background:
    radial-gradient(circle at 88% 5%, rgba(201, 155, 71, 0.14), transparent 28%),
    linear-gradient(180deg, #0b0907, #080706 72%, #0a0907);
  border-bottom: 1px solid rgba(232, 202, 142, 0.14);
}

.ready-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(280px, 0.8fr);
  align-items: end;
  gap: clamp(30px, 7vw, 110px);
  margin-bottom: clamp(42px, 6vw, 78px);
  padding-bottom: clamp(28px, 4vw, 46px);
  border-bottom: 1px solid rgba(232, 202, 142, 0.2);
}

.ready-heading h2 {
  max-width: 11ch;
  margin-top: 18px;
  color: #f3eadb;
  font: 500 clamp(42px, 6.5vw, 94px)/0.98 var(--font-display);
}

.ready-heading > p {
  max-width: 34ch;
  padding-left: 24px;
  color: rgba(239, 229, 211, 0.72);
  border-left: 1px solid rgba(239, 206, 124, 0.58);
  font-size: clamp(15px, 1.4vw, 19px);
  line-height: 1.75;
}

.ready-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 30px);
}

.ready-card {
  grid-column: span 6;
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid rgba(232, 202, 142, 0.22);
  background: rgba(14, 12, 9, 0.9);
  box-shadow: 0 26px 70px rgba(0, 0, 0, 0.28);
}

.ready-card--wide { grid-column: span 7; }
.ready-card--wide + .ready-card { grid-column: span 5; }
.ready-card--feature {
  grid-column: span 12;
  grid-template-columns: minmax(0, 1.5fr) minmax(340px, 0.75fr);
  grid-template-rows: 1fr;
}

.ready-visual {
  position: relative;
  min-height: 310px;
  overflow: hidden;
  background: #15110d;
}

.ready-visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 58%, rgba(7, 6, 5, 0.72));
  pointer-events: none;
}

.ready-visual img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 800ms cubic-bezier(.2,.7,.2,1), filter 500ms ease;
}

.ready-card:hover .ready-visual img { transform: scale(1.025); filter: brightness(1.05); }

.ready-visual > span {
  position: absolute;
  z-index: 1;
  top: 20px;
  left: 20px;
  padding: 10px 13px;
  color: #111;
  background: #efce7c;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.ready-content { display: flex; flex-direction: column; padding: clamp(25px, 3.2vw, 42px); }
.ready-index { color: #cba85e; font-size: 10px; letter-spacing: 0.26em; text-transform: uppercase; }
.ready-content h3 { margin-top: 14px; color: #f3eadb; font: 500 clamp(25px, 3vw, 42px)/1.08 var(--font-display); }
.ready-copy { margin: 16px 0 25px; color: rgba(239, 229, 211, 0.62); font-size: 14px; line-height: 1.7; }

.ready-content label {
  display: grid;
  gap: 9px;
  margin-top: auto;
  color: rgba(239, 229, 211, 0.58);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}

.ready-content select {
  width: 100%;
  min-height: 48px;
  padding: 0 40px 0 14px;
  color: #efe5d3;
  border: 1px solid rgba(232, 202, 142, 0.25);
  border-radius: 0;
  background: #0a0907;
  font: 400 13px var(--font-body);
  text-transform: none;
}

.ready-unit { display: flex; align-items: end; justify-content: space-between; gap: 20px; margin: 22px 0 13px; }
.ready-unit span { color: rgba(239, 229, 211, 0.55); font-size: 10px; letter-spacing: 0.18em; text-transform: uppercase; }
.ready-unit strong { color: #f0d48e; font: 600 24px/1 var(--font-display); }

.ready-add,
.ready-bundle {
  width: 100%;
  min-height: 52px;
  border: 1px solid #dfb85d;
  cursor: pointer;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0.17em;
  text-transform: uppercase;
}

.ready-add { color: #111; background: linear-gradient(110deg, #f1d17a, #c99d42); font-size: 10px; }
.ready-bundle { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: 10px; padding: 12px 15px; color: #eadbb9; background: transparent; font-size: 9px; }
.ready-bundle strong { color: #f0d48e; font-size: 13px; white-space: nowrap; }
.ready-bundle del { margin-left: 6px; color: rgba(239, 229, 211, 0.38); font-weight: 400; }
.ready-add:hover { filter: brightness(1.08); }
.ready-bundle:hover { background: rgba(223, 184, 93, 0.08); }

@media (max-width: 900px) {
  .ready-heading { grid-template-columns: 1fr; align-items: start; }
  .ready-card,
  .ready-card--wide,
  .ready-card--wide + .ready-card,
  .ready-card--feature { grid-column: span 12; }
  .ready-card--feature { grid-template-columns: 1fr; grid-template-rows: auto 1fr; }
}

@media (max-width: 600px) {
  .ready-stock { padding-inline: 18px; }
  .ready-heading h2 { font-size: clamp(38px, 13vw, 57px); }
  .ready-heading > p { padding-left: 17px; }
  .ready-grid { display: block; }
  .ready-card + .ready-card { margin-top: 22px; }
  .ready-visual { min-height: 235px; }
  .ready-content { padding: 25px 20px 23px; }
  .ready-bundle { align-items: flex-start; flex-direction: column; }
}

.hero-values {
  position: absolute;
  z-index: 5;
  left: clamp(24px, 4.7vw, 76px);
  bottom: 38px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: rgba(238, 229, 211, 0.5);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.31em;
  text-transform: uppercase;
}

.hero-values i {
  width: 24px;
  height: 1px;
  background: rgba(205, 185, 134, 0.45);
}

.hero.hero-cinematic .scroll-cue {
  z-index: 5;
  bottom: 31px;
  color: rgba(238, 229, 211, 0.48);
}

@keyframes galleryIn {
  to { opacity: 1; transform: scale(1); }
}

@keyframes titleIn {
  to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 920px) {
  .hero.hero-cinematic h1 { font-size: clamp(76px, 17vw, 154px); }
  .hero-poster--football { left: -7%; width: 32%; }
  .hero-poster--morocco { left: 13%; width: 27%; }
  .hero-poster--automotive { left: 34%; width: 34%; }
  .hero-poster--motorsport { right: 10%; width: 29%; }
  .hero-poster--dikra { right: -7%; width: 30%; }
  .hero-poster--supercar { width: 32%; }
  .hero-values { display: none; }
}

@media (max-width: 680px) {
  .site-header { height: 76px; padding-inline: 20px; }
  .brand-name { font-size: 14px; }
  .hero.hero-cinematic { height: 100svh; min-height: 650px; padding: 108px 20px 86px; }
  .hero.hero-cinematic::before {
    background:
      linear-gradient(90deg, rgba(6,6,6,.9), rgba(6,6,6,.34) 50%, rgba(6,6,6,.9)),
      linear-gradient(180deg, rgba(6,6,6,.7), transparent 27%, rgba(6,6,6,.15) 58%, rgba(6,6,6,.93));
  }
  .hero-gallery { inset: -2% -15%; }
  .hero-poster { filter: saturate(.54) contrast(1.08) brightness(.5); }
  .hero-poster--football { left: -2%; top: 8%; width: 36%; height: 47%; }
  .hero-poster--morocco { left: 7%; bottom: -1%; width: 34%; height: 44%; }
  .hero-poster--automotive { left: 34%; top: -4%; width: 40%; height: 52%; }
  .hero-poster--motorsport { right: 8%; bottom: -2%; width: 35%; height: 43%; }
  .hero-poster--dikra { right: -1%; top: 8%; width: 34%; height: 46%; }
  .hero-poster--supercar { right: 31%; bottom: -18%; width: 38%; height: 46%; }
  .hero-rule { display: none; }
  .hero-kicker { gap: 10px; margin-bottom: 26px; font-size: 8px; letter-spacing: .25em; }
  .hero.hero-cinematic h1 { font-size: clamp(58px, 21vw, 98px); letter-spacing: .025em; padding-left: .025em; }
  .hero.hero-cinematic .slogan { margin-top: 31px; font-size: 11px; letter-spacing: .38em; }
  .hero.hero-cinematic .hero-description { margin-top: 18px; font-size: 12px; letter-spacing: .08em; }
  .hero.hero-cinematic .hero-actions { margin-top: 32px; }
  .hero-cta { min-height: 52px; min-width: 252px; padding-inline: 20px; font-size: 10px; }
  .hero.hero-cinematic .scroll-cue { bottom: 24px; }
}

@media (prefers-reduced-motion: reduce) {
  .hero-gallery,
  .hero-kicker,
  .hero.hero-cinematic h1,
  .hero.hero-cinematic .slogan,
  .hero.hero-cinematic .hero-description,
  .hero.hero-cinematic .hero-actions {
    opacity: 1;
    transform: none;
    animation: none;
  }
}

/* Keep the preview header treatment authoritative after legacy responsive rules. */
.site-header {
  height: 92px;
  padding-inline: clamp(24px, 4.7vw, 76px);
  background: linear-gradient(to bottom, rgba(5, 5, 5, 0.58), transparent);
}

.site-header.is-scrolled {
  background: rgba(8, 8, 8, 0.9);
  border-color: rgba(239, 229, 211, 0.12);
}

.site-header .brand-mark {
  color: #e7d8b8;
  text-shadow: none;
}

.site-header .brand-mark::before {
  border-color: rgba(221, 196, 145, 0.42);
}

.site-header .nav-cart {
  color: var(--cream);
  background: rgba(10, 10, 10, 0.22);
  border-color: rgba(238, 229, 211, 0.38);
}

.site-header .nav-cart:hover,
.site-header .nav-cart:focus-visible {
  color: #111;
  background: var(--cream);
  border-color: var(--cream);
}

@media (max-width: 760px) {
  .site-header { height: 76px; padding-inline: 20px; }
}

/* Color-forward art direction: preserve the authentic poster palettes. */
.hero.hero-cinematic::before {
  background:
    linear-gradient(90deg, rgba(5, 7, 12, 0.83) 0%, rgba(5, 7, 12, 0.2) 27%, rgba(5, 7, 12, 0.05) 50%, rgba(5, 7, 12, 0.22) 74%, rgba(5, 7, 12, 0.84) 100%),
    linear-gradient(180deg, rgba(4, 5, 8, 0.54) 0%, transparent 28%, transparent 70%, rgba(4, 5, 8, 0.78) 100%);
}

.hero.hero-cinematic::after {
  box-shadow: inset 0 0 120px rgba(0, 0, 0, 0.58);
  background:
    radial-gradient(circle at 50% 43%, transparent 0 32%, rgba(4, 5, 8, 0.08) 62%, rgba(4, 5, 8, 0.5) 100%),
    linear-gradient(115deg, rgba(17, 50, 86, 0.16), transparent 38%, rgba(103, 22, 13, 0.12));
}

.hero-cinematic .hero-poster {
  filter: saturate(1.08) contrast(1.06) brightness(0.78);
}

.hero-cinematic .hero-poster::after {
  border-color: rgba(238, 224, 194, 0.22);
  background: linear-gradient(150deg, rgba(255, 218, 142, 0.08), transparent 38%, rgba(3, 5, 10, 0.12));
}

.hero-cinematic .hero-poster--football {
  box-shadow: 0 30px 90px rgba(16, 45, 86, 0.42), 0 0 54px rgba(17, 69, 128, 0.22);
}

.hero-cinematic .hero-poster--automotive {
  box-shadow: 0 30px 90px rgba(92, 8, 5, 0.42), 0 0 64px rgba(205, 31, 17, 0.2);
}

.hero-cinematic .hero-poster--morocco,
.hero-cinematic .hero-poster--dikra {
  box-shadow: 0 30px 90px rgba(92, 52, 12, 0.38), 0 0 58px rgba(211, 142, 47, 0.16);
}

.hero-cinematic .hero-poster--motorsport,
.hero-cinematic .hero-poster--supercar {
  box-shadow: 0 30px 90px rgba(82, 10, 8, 0.4), 0 0 60px rgba(184, 27, 18, 0.18);
}

.hero-cinematic .hero-vignette {
  background:
    linear-gradient(90deg, transparent calc(50% - 1px), rgba(255, 231, 181, 0.11) 50%, transparent calc(50% + 1px)),
    radial-gradient(ellipse at 50% 45%, rgba(225, 177, 83, 0.16), transparent 38%),
    linear-gradient(125deg, rgba(12, 48, 84, 0.1), transparent 44%, rgba(124, 25, 12, 0.1));
  mix-blend-mode: screen;
}

.hero.hero-cinematic h1 {
  color: #f7f0e5;
  text-shadow: 0 12px 58px rgba(0, 0, 0, 0.76), 0 0 28px rgba(230, 187, 105, 0.12);
}

.hero-cinematic .hero-cta {
  background: rgba(8, 9, 12, 0.5);
  border-color: rgba(247, 240, 229, 0.86);
}

@media (max-width: 680px) {
  .hero.hero-cinematic::before {
    background:
      linear-gradient(90deg, rgba(4, 6, 10, 0.76), rgba(4, 6, 10, 0.1) 50%, rgba(4, 6, 10, 0.76)),
      linear-gradient(180deg, rgba(4, 6, 10, 0.46), transparent 30%, rgba(4, 6, 10, 0.07) 61%, rgba(4, 6, 10, 0.76));
  }

  .hero-cinematic .hero-poster {
    filter: saturate(1.12) contrast(1.05) brightness(0.74);
  }
}

/* Final legibility and small-screen refinements. */
.hero.hero-cinematic .hero-description {
  width: max-content;
  max-width: calc(100vw - 40px);
  padding: 7px 13px;
  color: rgba(255, 249, 239, 0.92);
  background: linear-gradient(90deg, transparent, rgba(5, 6, 9, 0.6) 18%, rgba(5, 6, 9, 0.6) 82%, transparent);
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.95);
  backdrop-filter: blur(3px);
}

@media (max-width: 480px) {
  .hero.hero-cinematic {
    min-height: 660px;
    padding-inline: 16px;
  }

  .hero.hero-cinematic h1 {
    font-size: clamp(56px, 19.5vw, 78px);
    letter-spacing: 0.015em;
    padding-left: 0.015em;
  }

  .hero.hero-cinematic .slogan {
    font-size: 10px;
    letter-spacing: 0.32em;
  }

  .hero.hero-cinematic .hero-description {
    max-width: calc(100vw - 32px);
    padding-inline: 10px;
    font-size: 11px;
    letter-spacing: 0.055em;
  }

  .hero-gallery {
    inset-inline: -9%;
  }

  .hero-poster--football { left: -7%; width: 34%; }
  .hero-poster--automotive { left: 33%; width: 38%; }
  .hero-poster--dikra { right: -7%; width: 32%; }
  .hero-poster--morocco { left: 3%; width: 32%; }
  .hero-poster--motorsport { right: 4%; width: 33%; }
  .hero-poster--supercar { right: 32%; width: 36%; }

  .hero-cta {
    min-width: min(100%, 252px);
  }
}

/* Premium editorial collections gallery. */
.collections {
  position: relative;
  padding-top: clamp(100px, 11vw, 160px);
  padding-bottom: clamp(110px, 12vw, 170px);
  border-top-color: rgba(239, 229, 211, 0.12);
  background:
    radial-gradient(circle at 18% 12%, rgba(164, 114, 47, 0.1), transparent 25%),
    linear-gradient(180deg, #090909, #070707);
}

.collections-heading {
  width: min(100%, 1120px);
  display: grid;
  grid-template-columns: minmax(180px, 0.35fr) minmax(0, 1.4fr);
  align-items: end;
  gap: clamp(28px, 7vw, 110px);
  margin-bottom: clamp(46px, 7vw, 86px);
  padding-bottom: clamp(28px, 4vw, 45px);
  border-bottom: 1px solid rgba(239, 229, 211, 0.14);
}

.collections-heading .eyebrow {
  margin: 0;
}

.collections-heading h2 {
  max-width: 20ch;
  font-size: clamp(32px, 3.8vw, 52px);
  line-height: 1.1;
}

.collections .collection-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  grid-auto-flow: dense;
  gap: clamp(14px, 1.8vw, 26px);
}

.collections .collection-card {
  isolation: isolate;
  min-height: 470px;
  padding: clamp(24px, 3vw, 38px);
  border-color: rgba(239, 229, 211, 0.17);
  background: #111;
  transform: translateZ(0);
  transition: transform 600ms cubic-bezier(.2,.7,.2,1), border-color 350ms ease, box-shadow 600ms ease;
}

.collections .collection-card:nth-child(1) { grid-column: span 7; min-height: 630px; }
.collections .collection-card:nth-child(2) { grid-column: span 5; min-height: 630px; }
.collections .collection-card:nth-child(3),
.collections .collection-card:nth-child(4),
.collections .collection-card:nth-child(5) { grid-column: span 4; min-height: 500px; }
.collections .collection-card:nth-child(6) { grid-column: span 5; min-height: 590px; }
.collections .collection-card:nth-child(7) { grid-column: span 7; min-height: 590px; }
.collections .collection-card:nth-child(8),
.collections .collection-card:nth-child(9) { grid-column: span 6; min-height: 570px; }

.collections .collection-card::before {
  z-index: 1;
  inset: 0;
  background: linear-gradient(180deg, rgba(5, 5, 5, 0.12) 0%, rgba(5, 5, 5, 0.08) 35%, rgba(5, 5, 5, 0.92) 100%);
  transition: background 450ms ease;
}

.collections .collection-card::after {
  display: none;
}

.collection-art {
  position: absolute;
  z-index: 0;
  inset: -1%;
  width: 102%;
  height: 102%;
  object-fit: cover;
  filter: saturate(0.82) contrast(1.05) brightness(0.78);
  transform: scale(1.015);
  transition: transform 900ms cubic-bezier(.18,.76,.22,1), filter 600ms ease;
}

.collection-shade {
  position: absolute !important;
  z-index: 1 !important;
  inset: 0;
  background:
    linear-gradient(115deg, rgba(3, 4, 6, 0.44), transparent 55%),
    radial-gradient(circle at 85% 12%, rgba(222, 188, 119, 0.1), transparent 28%);
  pointer-events: none;
}

.collections .collection-number,
.collections .collection-copy {
  position: relative;
  z-index: 2;
}

.collections .collection-number {
  display: flex;
  align-items: center;
  gap: 13px;
  color: rgba(255, 239, 205, 0.94);
  font: 500 11px/1 var(--font-display);
  letter-spacing: 0.34em;
}

.collections .collection-number::after {
  content: "";
  width: 42px;
  height: 1px;
  background: rgba(232, 202, 142, 0.58);
}

.collection-copy {
  width: min(100%, 600px);
  transform: translateY(9px);
  transition: transform 500ms cubic-bezier(.2,.7,.2,1);
}

.collections .collection-card h3 {
  max-width: 12ch;
  margin-bottom: 14px;
  color: #f5eee2;
  font-size: clamp(27px, 3.4vw, 52px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: 0.01em;
  text-shadow: 0 4px 28px rgba(0, 0, 0, 0.76);
}

.collections .collection-description {
  max-width: 44ch;
  margin-bottom: 24px;
  color: rgba(245, 238, 226, 0.73);
  font: 300 clamp(13px, 1.15vw, 16px)/1.55 var(--font-body);
  letter-spacing: 0.035em;
}

.collections .collection-cta {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: #f0dfbc;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  opacity: 0.72;
  transition: opacity 300ms ease, gap 300ms ease;
}

.collection-cta i {
  font-style: normal;
  font-size: 15px;
  letter-spacing: 0;
}

.collections .collection-card:hover {
  z-index: 2;
  border-color: rgba(232, 202, 142, 0.58);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.54);
  transform: translateY(-7px);
}

.collections .collection-card:hover::before {
  background: linear-gradient(180deg, rgba(5, 5, 5, 0.05) 0%, rgba(5, 5, 5, 0.04) 32%, rgba(5, 5, 5, 0.84) 100%);
}

.collections .collection-card:hover .collection-art {
  filter: saturate(1) contrast(1.04) brightness(0.9);
  transform: scale(1.065);
}

.collections .collection-card:hover .collection-copy {
  transform: translateY(0);
}

.collections .collection-card:hover .collection-cta {
  gap: 17px;
  opacity: 1;
}

.collection-seven-families .collection-art { object-position: center 45%; }
.collection-moroccan .collection-art { object-position: center 52%; }
.collection-dikra .collection-art { object-position: center 42%; }
.collection-brands .collection-art { object-position: center 44%; }
.collection-speed .collection-art { object-position: center 56%; }
.collection-football .collection-art { object-position: center 38%; }
.collection-motorsport .collection-art { object-position: center 35%; }
.collection-combat .collection-art { object-position: center 30%; }
.collection-urban .collection-art { object-position: center 24%; }

@media (max-width: 980px) {
  .collections .collection-card:nth-child(n) {
    grid-column: span 6;
    min-height: 520px;
  }

  .collections .collection-card:nth-child(1) {
    grid-column: span 12;
  }
}

@media (max-width: 680px) {
  .collections {
    padding-top: 86px;
    padding-bottom: 138px;
  }

  .collections-heading {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-bottom: 38px;
    padding-bottom: 28px;
  }

  .collections-heading h2 {
    font-size: clamp(31px, 10vw, 44px);
    line-height: 1.12;
  }

  .collections .collection-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .collections .collection-card:nth-child(n) {
    grid-column: 1;
    min-height: min(136vw, 540px);
    padding: 25px 23px 31px;
  }

  .collections .collection-card h3 {
    max-width: 11ch;
    font-size: clamp(29px, 9.2vw, 40px);
  }

  .collections .collection-description {
    max-width: calc(100% - 36px);
    margin-bottom: 20px;
    font-size: 13px;
  }

  .collections .collection-cta {
    min-height: 36px;
    opacity: 1;
  }

  .collection-copy {
    transform: none;
  }

  .cart-fab {
    right: 12px;
    bottom: 12px;
    min-height: 46px;
    gap: 8px;
    padding-inline: 13px;
    font-size: 10px;
    box-shadow: 0 12px 34px rgba(0, 0, 0, 0.5);
  }
}

