/**
 * Canonical ARK IMPEX stylesheet — visually aligned with enrockimpex.com
 * (Eventu template cues: gradients, theme buttons, typography, shells).
 */

:root {
  --body-font: "Kumbh Sans", system-ui, sans-serif;
  --heading-font: "Kumbh Sans", system-ui, sans-serif;
  --theme-color: #dca617;
  --theme-color2: #8c52ff;
  --theme-bg-light: #fafafa;
  --color-dark: #01054c;
  --color-white: #ffffff;
  --body-text-color: #757f95;
  --header-coral: rgb(254, 60, 45);
  --header-brown: #6c5645;
  --accent-blue: #0a5da9;
  --btn-from: #ff2028;
  --btn-to: #ff8f31;
  --footer-text-muted: #f5faff;
  --footer-bg: #01103b;
  --footer-bg2: #00134c;
  --footer-text-color: #f5faff;
  --hero-overlay: rgb(5, 3, 17);
  --theme-gradient: linear-gradient(to right, #dca617 0%, #8c52ff 100%);
  --box-shadow: 0 0 40px 5px rgb(0 0 0 / 5%);
  --top-bar-text: var(--footer-text-color);
  --heading-h2-color: #000000;
}

/* ---- Base ---- */
body.theme-enrock {
  font-family: var(--body-font);
  overflow-x: hidden;
  background-color: var(--theme-bg-light) !important;
}

body.theme-enrock h1,
body.theme-enrock h2,
body.theme-enrock h3,
body.theme-enrock h4 {
  font-family: var(--heading-font);
}

body.theme-enrock main h2 {
  color: var(--heading-h2-color) !important;
  margin: 0 !important;
  font-weight: 700 !important;
  font-family: var(--heading-font), "Kumbh Sans", system-ui, sans-serif !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

/*
 * Intro copy directly under section h2 (e.g. #products blurbs): kill browser 1em p margins,
 * add 1rem top gap (Bootstrap .mt–3 rhythm), centre with max‑w-* + mx‑auto pairs.
 * Do NOT set global `main p { margin: 0 }` — Tailwind space-y-* and cards rely on margin utilities.
 */
body.theme-enrock main section h2 + p {
  margin-top: 1rem !important;
  margin-bottom: 2rem !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: block;
  text-align: center !important;
}

body.theme-enrock main section#products h2 + p {
  margin-bottom: 3rem !important;
}

body.theme-enrock main section#catalog h2 + p,
body.theme-enrock main section#events h2 + p {
  margin-bottom: 1rem !important;
}

/* Bootstrap-compatible — do not redefine `.mt-3` here; Tailwind’s utility is different (0.75rem). */
body.theme-enrock .mt-bs-3 {
  margin-top: 1rem !important;
}

/** Ribbon fills viewport edge-to-edge — gradient lives on `.ark-top-bar`, not `.ark-top-bar__inner` (which is capped at max-w-7xl). */
body.theme-enrock > div.ark-top-bar.bg-slate-900.text-slate-200 {
  background-color: transparent !important;
  background-image: linear-gradient(
    315deg,
    rgb(254 60 45) 0%,
    #6c5645 54%
  ) !important;
  background-repeat: no-repeat !important;
  background-size: 100% 100% !important;
  color: var(--top-bar-text) !important;
  padding-top: 5px !important;
  padding-bottom: 5px !important;
  letter-spacing: 0.015em;
  border-bottom: 1px solid rgb(255 255 255 / 0.08);
  position: relative;
  z-index: 5;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__inner {
  min-height: 28px !important;
  background: none !important;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__body {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__contact {
  column-gap: clamp(1rem, 4vw, 2rem);
  row-gap: 0.5rem;
}

@media (min-width: 640px) {
  body.theme-enrock > div.ark-top-bar .ark-top-bar__contact {
    column-gap: 0;
  }

  body.theme-enrock > div.ark-top-bar .ark-top-bar__contact-item:not(:first-child) {
    border-inline-start: 1px solid rgb(245 250 255 / 0.2);
    padding-inline-start: clamp(1rem, 3.25vw, 1.95rem);
    margin-inline-start: clamp(1rem, 3.25vw, 2.1rem);
  }
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__contact-item {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  font-size: 0.8375rem;
  font-weight: 500;
  color: inherit !important;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__paren {
  font-weight: 400;
  color: rgb(245 250 255 / 0.75) !important;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__ico {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 1.2rem;
  height: 1.2rem;
  opacity: 0.91;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__ico svg {
  width: 100%;
  height: 100%;
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__link {
  display: inline-flex;
  align-items: center;
  gap: 0.52rem;
  color: inherit !important;
  text-decoration: none !important;
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__link:hover {
  color: rgb(255 255 255) !important;
  text-decoration-line: underline !important;
  text-underline-offset: 3px;
  text-decoration-color: rgb(255 255 255 / 0.35);
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__follow-label {
  font-size: 0.6875rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  color: rgb(253 239 207 / 0.98) !important;
  text-transform: uppercase;
  opacity: 1;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__dot {
  opacity: 0.55;
}

body.theme-enrock > div.ark-top-bar .ark-top-bar__social {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 10px !important;
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__social-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center !important;
  width: 2rem;
  height: 2rem;
  border-radius: 9999px !important;
  padding: 0 !important;
  color: inherit !important;
  background: rgb(255 255 255 / 0.07) !important;
  backdrop-filter: blur(4px);
  border: 1px solid rgb(245 250 255 / 0.2) !important;
  transition:
    transform 0.2s ease,
    background 0.2s ease,
    filter 0.2s ease;
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__social-btn:hover {
  background: rgb(255 255 255 / 0.22) !important;
  color: rgb(255 255 255) !important;
  transform: translateY(-1px);
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__social-btn:active {
  transform: translateY(0);
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__social-btn:focus-visible {
  outline: 2px solid rgb(255 255 255 / 0.92);
  outline-offset: 2px;
}

body.theme-enrock > div.ark-top-bar a.ark-top-bar__social-btn--ig:hover {
  color: rgb(255 237 237) !important;
}

/* ---- Navbar ---- */
body.theme-enrock header.sticky {
  background: #fff !important;
  backdrop-filter: none !important;
  border-bottom: none !important;
  box-shadow: 0 0 15px rgb(0 0 0 / 0.09);
}

body.theme-enrock header .font-bold.tracking-tight {
  letter-spacing: 0.06em !important;
  font-weight: 800 !important;
  color: var(--color-dark) !important;
  font-size: 1.15rem !important;
}

@media (min-width: 1024px) {
  body.theme-enrock header nav.hidden.lg\:flex {
    text-transform: uppercase;
    letter-spacing: 0.06em;
  }

  body.theme-enrock header nav.hidden.lg\:flex a {
    font-size: 0.8125rem !important;
    font-weight: 600 !important;
    color: var(--color-dark) !important;
  }

  body.theme-enrock header nav.hidden.lg\:flex a:hover {
    color: var(--accent-blue) !important;
  }
}

/* ---- Hero (product / inner pages: single band) ---- */
body.theme-enrock main > section.bg-gradient-to-b {
  position: relative;
  isolation: isolate;
  background-image: linear-gradient(
      rgba(5, 3, 17, 0.55),
      rgba(5, 3, 17, 0.78)
    ),
    url("https://images.unsplash.com/photo-1615529328331-f8917599271f?q=88&auto=format&fit=crop&w=1920") !important;
  background-size: cover !important;
  background-position: center !important;
  border-bottom: none !important;
  padding-top: clamp(5rem, 12vw, 8.5rem) !important;
  padding-bottom: clamp(5rem, 12vw, 8.5rem) !important;
}

/* Homepage hero carousel */
body.theme-enrock main#home .hero-slider {
  min-height: min(58svh, 520px);
}

body.theme-enrock main#home .hero-slider__slides {
  z-index: 0;
}

body.theme-enrock main#home .hero-slider__slide {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 0.95s ease;
  z-index: 0;
  pointer-events: none;
}

body.theme-enrock main#home .hero-slider__slide.is-active {
  opacity: 1;
  z-index: 1;
}

body.theme-enrock main#home .hero-slider__slide--logistics {
  background-image: url("https://images.unsplash.com/photo-1586528116311-ad8dd3c8310d?auto=format&fit=crop&w=1920&q=82");
}

body.theme-enrock main#home .hero-slider__slide--textiles {
  background-image: url("https://images.unsplash.com/photo-1615529328331-f8917599271f?auto=format&fit=crop&w=1920&q=82");
}

body.theme-enrock main#home .hero-slider__slide--export {
  background-image: url("https://images.unsplash.com/photo-1451187580459-43490279c0fa?auto=format&fit=crop&w=1920&q=82");
}

body.theme-enrock main#home .hero-slider__overlay {
  background: linear-gradient(
    rgb(16 37 71 / 0.58),
    rgb(10 34 71 / 0.87) 72%,
    rgb(22 43 71 / 0.93)
  );
}

body.theme-enrock main#home .hero-slider__tagline {
  font-size: 0.7325rem;
  font-weight: 700;
  letter-spacing: 0.42em;
  text-transform: uppercase;
  color: rgb(255 255 255 / 0.9) !important;
}

@media (min-width: 640px) {
  body.theme-enrock main#home .hero-slider__tagline {
    font-size: 0.8rem;
  }
}

body.theme-enrock main#home .hero-slider__title {
  font-weight: 800;
  letter-spacing: 0.04em;
  line-height: 1.12;
  font-size: clamp(1.5rem, 4.35vw, 3.15rem);
  color: rgb(255 255 255) !important;
  text-wrap: balance;
}

body.theme-enrock main#home .hero-slider__title span {
  color: var(--theme-color, #f1c40f) !important;
}

body.theme-enrock main#home .hero-slider__lede {
  color: rgb(253 251 246 / 0.92) !important;
  font-weight: 400;
  line-height: 1.72;
}

body.theme-enrock main#home a.hero-slider__cta {
  padding-inline: 2.125rem !important;
  padding-block: 1rem !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  letter-spacing: 0.035em !important;
  background: rgb(255 255 255 / 0.94) !important;
  background: linear-gradient(110deg, #fff 0%, #f4f9ff 100%) !important;
  border: none !important;
  color: #1f3b71 !important;
  box-shadow: 0 6px 32px rgb(0 35 103 / 0.18);
}

body.theme-enrock main#home a.hero-slider__cta:hover {
  filter: brightness(1.045);
}

body.theme-enrock main#home a.hero-slider__cta .hero-slider__cta-arr {
  display: inline-flex;
  color: inherit;
}

body.theme-enrock main#home a.hero-slider__cta.ghost {
  background: transparent !important;
  border: solid 2px rgb(255 255 255 / 0.34) !important;
  color: rgb(255 255 255) !important;
  box-shadow: none;
}

body.theme-enrock main#home a.hero-slider__cta.ghost:hover {
  background: rgb(255 255 255 / 0.12) !important;
}

body.theme-enrock main#home .hero-slider__btn {
  position: absolute;
  z-index: 20;
  top: 50%;
  translate: 0 -50%;
  width: 3rem;
  height: 3rem;
  border-radius: 9999px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(59 42 89 / 0.82);
  color: #ffffff;
  box-shadow: 0 8px 28px rgb(0 24 71 / 0.45);
  transition:
    transform 0.22s ease,
    background 0.22s ease;
}

@media (max-width: 639px) {
  body.theme-enrock main#home .hero-slider__btn {
    top: unset;
    bottom: 18%;
    translate: 0;
  }

  body.theme-enrock main#home .hero-slider__btn--prev {
    left: 0.5rem;
    width: 2.625rem;
    height: 2.625rem;
  }

  body.theme-enrock main#home .hero-slider__btn--next {
    right: 0.5rem;
    width: 2.625rem;
    height: 2.625rem;
  }
}

@media (min-width: 640px) {
  body.theme-enrock main#home .hero-slider__btn--prev {
    left: max(12px, 2.5%);
  }

  body.theme-enrock main#home .hero-slider__btn--next {
    right: max(12px, 2.5%);
  }
}

body.theme-enrock main#home .hero-slider__btn:hover {
  background: rgb(59 42 89 / 0.98);
  transform: scale(1.05);
}

body.theme-enrock main#home [data-hero-dots] {
  gap: 0.55rem !important;
}

body.theme-enrock main#home [data-hero-dots] button {
  width: 12px;
  height: 12px;
  border-radius: 9999px;
  border: 2px solid rgb(255 255 255 / 0.92);
  background: rgb(255 255 255 / 0);
  cursor: pointer;
  padding: 0;
  transition:
    transform 0.22s ease,
    background 0.22s ease;
}

body.theme-enrock main#home [data-hero-dots] button.is-active {
  background: var(--theme-color, #f1c40f);
  border-color: var(--theme-color, #f1c40f);
  transform: scale(1.2);
}

body.theme-enrock main#home [data-hero-dots] button:hover:not(.is-active) {
  background: rgb(255 255 255 / 0.35);
}

body.theme-enrock main#home .hero-slider__mouse {
  width: 1.875rem;
  height: 3.375rem;
  border-radius: 9999px;
  border: 2px solid rgb(255 255 255 / 0.92);
  padding: 0.6rem;
  justify-content: center;
}

body.theme-enrock main#home .hero-slider__mouse-i {
  width: 0.325rem;
  height: 0.65rem;
  border-radius: 9999px;
  background: rgb(255 255 255 / 0.94);
  align-self: flex-start;
  animation: ark-hero-mouse 2.2s ease-in-out infinite;
}

@keyframes ark-hero-mouse {
  0%,
  100% {
    translate: 0 0;
    opacity: 1;
  }

  50% {
    translate: 0 0.625rem;
    opacity: 0.45;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.theme-enrock main#home .hero-slider__slide {
    transition: none;
  }

  body.theme-enrock main#home .hero-slider__mouse-i {
    animation: none;
  }

  body.theme-enrock main#home .hero-slider__btn:hover {
    transform: none;
  }

  body.theme-enrock main#home .hero-slider__btn {
    transition: none;
  }
}

/* Slightly tighter band on standalone product detail pages */
body.theme-enrock main#product > section.bg-gradient-to-b:first-of-type {
  padding-top: clamp(4rem, 10vw, 6.5rem) !important;
  padding-bottom: clamp(4rem, 10vw, 6rem) !important;
}

body.theme-enrock main > section.bg-gradient-to-b * {
  color: #fff !important;
}

body.theme-enrock main > section.bg-gradient-to-b h1 span {
  color: var(--theme-color) !important;
}

body.theme-enrock main > section.bg-gradient-to-b p.text-lg {
  color: rgb(255 255 255 / 0.93) !important;
  font-weight: 400;
}

body.theme-enrock main > section.bg-gradient-to-b p.text-sm {
  opacity: 0.95 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

body.theme-enrock main > section.bg-gradient-to-b a.bg-slate-900 {
  background: linear-gradient(
    90deg,
    var(--btn-from),
    var(--btn-to)
  ) !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  padding-inline: 1.5rem !important;
  padding-block: 0.75rem !important;
  border: none !important;
}

body.theme-enrock main > section.bg-gradient-to-b a.bg-slate-900:hover {
  filter: brightness(1.05);
}

body.theme-enrock main > section.bg-gradient-to-b a.border-slate-300 {
  border-radius: 9999px !important;
  background: rgb(255 255 255 / 0.1) !important;
  backdrop-filter: blur(6px);
  border-color: rgb(255 255 255 / 0.32) !important;
  font-weight: 600 !important;
}

body.theme-enrock main > section.bg-gradient-to-b a.border-slate-300:hover {
  background: rgb(255 255 255 / 0.2) !important;
}

/* --- Section shells --- */
body.theme-enrock #about {
  background: var(--theme-bg-light) !important;
  padding-top: clamp(3.5rem, 8vw, 5rem) !important;
  padding-bottom: clamp(3.5rem, 8vw, 5rem) !important;
}

body.theme-enrock #about ~ #products.bg-white {
  border-color: rgb(226 232 240 / 0.6) !important;
}

/* About showcase — white card + tri-strip collage (Enrock-style) */
body.theme-enrock .about-showcase-card {
  border: none !important;
  border-radius: 1.05rem !important;
  box-shadow:
    0 16px 48px rgb(15 42 107 / 0.1),
    0 4px 16px rgb(0 0 0 / 0.04),
    0 0 0 1px rgb(255 255 255 / 0.95) inset;
}

@media (min-width: 768px) {
  body.theme-enrock .about-showcase-card {
    border-radius: 1.375rem !important;
  }
}

body.theme-enrock .about-showcase-card__kicker {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--body-text-color);
  letter-spacing: 0.02em;
  margin: 0;
}

body.theme-enrock .about-showcase-card__title {
  margin: 0 !important;
  font-size: clamp(1.6rem, 3.9vw, 2.175rem);
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
  color: var(--heading-h2-color) !important;
  text-align: center !important;
}

body.theme-enrock .about-showcase-card__body {
  font-size: clamp(0.9375rem, 1.5vw, 1.0625rem);
  line-height: 1.85 !important;
  margin: 0 !important;
}

body.theme-enrock .about-showcase-card__cta {
  background: linear-gradient(90deg, #fe3c2d, #ff914d);
  border: none;
  cursor: pointer;
  box-shadow:
    0 10px 28px rgb(254 76 61 / 0.35),
    0 0 0 1px rgb(255 255 255 / 0.35) inset;
  transition:
    transform 0.2s ease,
    filter 0.2s ease,
    box-shadow 0.2s ease;
}

body.theme-enrock .about-showcase-card__cta:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
  box-shadow:
    0 14px 34px rgb(254 76 61 / 0.4),
    0 0 0 1px rgb(255 255 255 / 0.4) inset;
}

body.theme-enrock .about-showcase-card__cta:focus-visible {
  outline: 2px solid var(--theme-color);
  outline-offset: 3px;
}

body.theme-enrock .about-showcase-collage {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: clamp(0.45rem, 2.5vw, 0.875rem);
  min-height: clamp(228px, 52vw, 308px);
  max-width: 26rem;
  margin-inline: auto;
}

@media (min-width: 768px) {
  body.theme-enrock .about-showcase-collage {
    max-width: none;
    margin-inline: 0;
    gap: clamp(0.375rem, 1.2vw, 0.6875rem);
  }
}

body.theme-enrock .about-showcase-collage__strip {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  align-items: flex-end;
}

body.theme-enrock .about-showcase-collage__strip--1 {
  height: clamp(154px, 38vw, 204px);
  z-index: 1;
}

body.theme-enrock .about-showcase-collage__strip--2 {
  height: clamp(194px, 46vw, 252px);
  z-index: 2;
}

body.theme-enrock .about-showcase-collage__strip--3 {
  height: clamp(226px, 54vw, 296px);
  z-index: 3;
}

body.theme-enrock .about-showcase-collage__pane {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  clip-path: polygon(22% 0%, 96% 0%, 74% 100%, 4% 100%);
  filter: saturate(1.05) contrast(1.03);
  box-shadow: 0 10px 28px rgb(0 0 0 / 0.14);
  border-radius: 1px;
}

body.theme-enrock .about-showcase-collage__strip--1 .about-showcase-collage__pane {
  clip-path: polygon(26% 0%, 94% 0%, 72% 100%, 6% 100%);
}

body.theme-enrock .about-showcase-collage__strip--3 .about-showcase-collage__pane {
  clip-path: polygon(16% 0%, 98% 0%, 76% 100%, 2% 100%);
}

@media (prefers-reduced-motion: reduce) {
  body.theme-enrock .about-showcase-card__cta:hover {
    transform: none;
  }
}

/* Vision & Mission — textured band + lifted cards */
body.theme-enrock .about-vm-band--bleed {
  position: relative;
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  overflow: hidden;
}

body.theme-enrock .about-vm-band__media {
  position: absolute;
  inset: 0;
  z-index: 0;
  background:
    linear-gradient(rgb(248 246 251 / 0.25), rgb(248 246 251 / 0.25)),
    url("https://images.unsplash.com/photo-1441984904996-e0b6ba687e04?auto=format&fit=crop&w=2200&q=82")
      center 42% / cover no-repeat;
  transform: scale(1.02);
}

body.theme-enrock .about-vm-band__shade {
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(
    126deg,
    rgb(18 41 71 / 0.58) 0%,
    rgb(58 71 113 / 0.48) 44%,
    rgb(112 118 154 / 0.44) 100%
  );
  mix-blend-mode: multiply;
  pointer-events: none;
}

@supports not (mix-blend-mode: multiply) {
  body.theme-enrock .about-vm-band__shade {
    background: linear-gradient(
      126deg,
      rgb(30 54 93 / 0.72),
      rgb(55 71 118 / 0.74)
    );
    mix-blend-mode: unset;
  }
}

body.theme-enrock .about-vm-card {
  display: flex;
  align-items: flex-start;
  gap: clamp(1rem, 2.8vw, 1.375rem);
  border-radius: 18px !important;
  background: rgb(255 255 255) !important;
  padding: clamp(1.375rem, 4vw, 2.375rem);
  border: none !important;
  box-shadow:
    0 8px 32px rgb(15 42 107 / 0.1),
    0 0 0 1px rgb(255 255 255 / 0.94) inset;
}

body.theme-enrock .about-vm-card__visual {
  position: relative;
  flex-shrink: 0;
  width: 4.375rem;
  height: 4.375rem;
  display: grid;
  place-items: center;
}

body.theme-enrock .about-vm-card__ring {
  position: absolute;
  inset: -12px;
  border-radius: 9999px;
  border: 2px dashed rgb(251 157 93 / 0.95);
  pointer-events: none;
}

body.theme-enrock .about-vm-card__bubble {
  display: grid;
  place-items: center;
  width: 100%;
  height: 100%;
  border-radius: 9999px;
  background: linear-gradient(
    152deg,
    var(--btn-from) 8%,
    #ff7f32 54%,
    var(--btn-to) 112%
  );
  color: #fff;
  box-shadow:
    0 14px 32px rgb(254 71 53 / 0.35),
    0 0 0 1px rgb(255 255 255 / 0.42) inset;
}

body.theme-enrock .about-vm-card__bubble svg {
  stroke: currentcolor;
}

body.theme-enrock .about-vm-card__heading {
  margin: 0 0 0.625rem !important;
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  color: var(--color-dark) !important;
  letter-spacing: -0.02em !important;
  line-height: 1.28 !important;
}

body.theme-enrock .about-vm-card__text {
  margin: 0 !important;
  font-size: 0.9rem !important;
  line-height: 1.72 !important;
  color: var(--body-text-color) !important;
}

body.theme-enrock #catalog,
body.theme-enrock #events {
  background: var(--theme-bg-light) !important;
}

body.theme-enrock main h3.text-xl {
  color: var(--color-dark) !important;
}

body.theme-enrock main .rounded-lg.border.border-slate-200 {
  border-radius: 15px !important;
  border: none !important;
  box-shadow: var(--box-shadow);
}

/* --- Product cards — Enrock schedule tinted wrap (#ff2f291f equivalent) --- */
body.theme-enrock main #products article {
  border: none !important;
  border-radius: 15px !important;
  background: rgb(255 47 41 / 0.12);
  padding: 1.25rem !important;
  box-shadow: 0 0 38px rgb(0 0 0 / 0.05);
  overflow: hidden !important;
  transition:
    transform 0.35s ease,
    box-shadow 0.35s ease;
}

body.theme-enrock main #products article .product-card-thumb {
  margin: -1.25rem -1.25rem 1rem;
  aspect-ratio: 16 / 10;
  border-radius: 0;
  background: rgb(241 243 246);
}

body.theme-enrock main #products article .product-card-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.45s ease;
}

body.theme-enrock main #products article:hover .product-card-thumb img {
  transform: scale(1.04);
}

body.theme-enrock main #products article:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 50px rgb(0 0 0 / 0.07);
}

body.theme-enrock main #products a.text-teal-700 {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background: linear-gradient(
    90deg,
    var(--btn-from),
    var(--btn-to)
  ) !important;
  color: #fff !important;
  font-weight: 500 !important;
  font-size: 0.8125rem !important;
  border-radius: 9999px !important;
  padding: 6px 16px !important;
  margin-top: 0.75rem !important;
  text-decoration: none !important;
}

body.theme-enrock main #products a.text-teal-700:hover {
  filter: brightness(1.05);
}

body.theme-enrock main #products a.text-teal-700::after {
  content: "→";
  font-size: 0.92em;
  transform: rotate(-35deg);
  transition: transform 0.22s ease;
}

body.theme-enrock main #products a.text-teal-700:hover::after {
  transform: rotate(0deg);
}

/* Detail page enquiry CTA (same pill as product grid links) */
body.theme-enrock main#product article a.text-teal-700 {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background: linear-gradient(
    90deg,
    var(--btn-from),
    var(--btn-to)
  ) !important;
  color: #fff !important;
  font-weight: 500 !important;
  font-size: 0.8125rem !important;
  border-radius: 9999px !important;
  padding: 8px 18px !important;
  margin-top: 0.25rem !important;
  text-decoration: none !important;
}

body.theme-enrock main#product article a.text-teal-700:hover {
  filter: brightness(1.05);
}

body.theme-enrock main#product article a.text-teal-700::after {
  content: "→";
  font-size: 0.92em;
  margin-left: 4px;
  transform: rotate(-35deg);
  transition: transform 0.22s ease;
}

body.theme-enrock main#product article a.text-teal-700:hover::after {
  transform: rotate(0deg);
}

/* --- Home: Our Quality Policy (collage + pillars, Enrock layout) --- */
body.theme-enrock .quality-policy-section {
  background: linear-gradient(
    180deg,
    rgb(255 255 255) 0%,
    rgb(252 251 249) 100%
  ) !important;
}

body.theme-enrock .quality-policy-collage {
  position: relative;
  width: min(100%, 440px);
  height: clamp(340px, 52vw, 420px);
  margin-inline: auto;
}

@media (min-width: 1024px) {
  body.theme-enrock .quality-policy-collage {
    width: 100%;
    max-width: 480px;
    height: 460px;
    margin-inline: 0;
  }
}

body.theme-enrock .quality-policy-badge {
  position: absolute;
  left: 0;
  top: 50%;
  translate: 0 -50%;
  z-index: 4;
}

body.theme-enrock .quality-policy-badge-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  padding: 1.5rem 0.72rem;
  border-radius: 12px;
  background: linear-gradient(
    180deg,
    var(--btn-from) 0%,
    #ff7424 52%,
    var(--btn-to) 100%
  );
  color: #fff;
  font-weight: 800;
  font-size: 0.6875rem;
  line-height: 1.15;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  box-shadow:
    0 18px 40px rgb(254 60 45 / 0.32),
    0 0 0 1px rgb(255 255 255 / 0.35) inset;
}

body.theme-enrock .quality-policy-badge-line {
  display: block;
  max-width: 5ch;
  text-align: center;
}

body.theme-enrock .quality-policy-badge-year {
  display: block;
  font-size: 1.5rem;
  letter-spacing: 0.03em;
  line-height: 1;
  padding-top: 2px;
}

body.theme-enrock .quality-policy-ring {
  position: absolute;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  border: solid 6px rgb(255 255 255);
  box-shadow: 0 22px 55px rgb(15 23 42 / 0.11);
}

body.theme-enrock .quality-policy-ring--main {
  width: min(78%, 360px);
  aspect-ratio: 1;
  left: clamp(52px, 14%, 68px);
  top: clamp(28px, 7%, 40px);
  z-index: 1;
}

body.theme-enrock .quality-policy-ring--a {
  width: clamp(136px, 34%, 170px);
  aspect-ratio: 1;
  right: -2%;
  top: clamp(12px, 4%, 20px);
  z-index: 3;
}

body.theme-enrock .quality-policy-ring--b {
  width: clamp(150px, 38%, 186px);
  aspect-ratio: 1;
  right: clamp(-6px, -1%, -4px);
  bottom: clamp(24px, 8%, 40px);
  z-index: 2;
}

body.theme-enrock .quality-policy-pillars {
  margin: 0;
}

body.theme-enrock .quality-policy-pillar {
  background: rgb(248 247 246);
  border-radius: 14px;
  padding: 1.125rem 1.25rem;
  border: 1px solid rgb(226 229 236 / 0.85);
  box-shadow: 0 12px 32px rgb(15 23 42 / 0.04);
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  text-align: left;
}

body.theme-enrock .quality-policy-pillar-title {
  display: block;
  font-weight: 800;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  color: var(--color-dark);
}

body.theme-enrock .quality-policy-pillar-desc {
  display: block;
  font-size: 0.8125rem;
  line-height: 1.55;
  color: var(--body-text-color);
}

body.theme-enrock a.quality-policy-cta {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.85rem 1.65rem;
  border-radius: 9999px;
  font-weight: 600;
  font-size: 0.9375rem;
  color: #fff !important;
  text-decoration: none !important;
  background: linear-gradient(
    90deg,
    var(--btn-from),
    var(--btn-to)
  ) !important;
  box-shadow: 0 12px 32px rgb(254 60 45 / 0.28);
  transition:
    transform 0.2s ease,
    filter 0.2s ease;
}

body.theme-enrock a.quality-policy-cta:hover {
  filter: brightness(1.06);
  transform: translateY(-1px);
}

/* --- Contact / quote pane --- */
body.theme-enrock #contact {
  padding-top: clamp(3rem, 7vw, 4.75rem) !important;
  padding-bottom: clamp(3rem, 7vw, 4.75rem) !important;
  background: linear-gradient(rgba(1, 5, 76, 0.62), rgba(1, 5, 76, 0.66)),
    url("https://images.unsplash.com/photo-1522771739844-6a9f6d5f14af?q=80&auto=format&fit=crop&w=1800") !important;
  background-size: cover !important;
  background-position: center !important;
  width: 100vw;
  max-width: none !important;
  margin-inline: calc(50% - 50vw) !important;
  padding-inline: 0 !important;
}

body.theme-enrock #contact .max-w-6xl {
  padding-inline: 1rem;
}

body.theme-enrock #contact > .max-w-6xl > h2.text-3xl {
  color: var(--heading-h2-color) !important;
  text-shadow: none !important;
  background: rgb(255 255 255 / 0.96);
  border-radius: 0.875rem;
  padding: 0.55rem 1.15rem !important;
  margin: 0 auto 1.75rem !important;
  display: inline-block;
  box-shadow:
    0 6px 24px rgb(0 0 0 / 0.16),
    0 0 0 1px rgb(255 255 255 / 0.55) inset;
}

body.theme-enrock #contact form {
  background: #e3e3e3 !important;
  border-radius: 20px !important;
  padding: clamp(1.65rem, 4vw, 2.25rem) !important;
  box-shadow: 0 0 40px rgb(0 0 0 / 0.12) !important;
  border: none !important;
}

@media (min-width: 1024px) {
  body.theme-enrock #contact form {
    margin-top: -2rem;
  }
}

body.theme-enrock #contact form label {
  color: var(--color-dark) !important;
  font-weight: 600 !important;
}

body.theme-enrock #contact input,
body.theme-enrock #contact textarea {
  border: none !important;
  border-radius: 9999px !important;
  background: var(--theme-bg-light) !important;
  padding: 14px 20px !important;
  color: var(--color-dark) !important;
  box-shadow: none !important;
}

body.theme-enrock #contact textarea {
  border-radius: 26px !important;
  padding-top: 16px !important;
}

body.theme-enrock #contact button.bg-slate-900 {
  background: linear-gradient(
    90deg,
    var(--btn-from),
    var(--btn-to)
  ) !important;
  border-radius: 9999px !important;
  font-weight: 600 !important;
  border: none !important;
}

body.theme-enrock #contact form p.text-xs.text-slate-500 {
  color: var(--body-text-color) !important;
}

body.theme-enrock #contact .space-y-8 h3.text-slate-900,
body.theme-enrock #contact .space-y-8 p.text-slate-600,
body.theme-enrock #contact ul.text-slate-600 {
  color: #fff !important;
}

body.theme-enrock #contact ul a:hover {
  color: var(--theme-color) !important;
}

/* --- Certificates / testimonials --- */
body.theme-enrock main section.bg-white.border-y {
  background: rgb(255 255 255 / 0.985) !important;
}

body.theme-enrock main section.bg-white.border-y ul .bg-slate-200 {
  background: rgb(247 246 246) !important;
  border-radius: 12px !important;
}

/* --- Footer --- */
body.theme-enrock footer.bg-slate-950 {
  background: rgb(17 24 39 / 0.96) linear-gradient(
      rgb(17 24 39 / 0.96),
      rgb(17 24 39 / 0.96)
    ),
    url("https://images.unsplash.com/photo-1558618666-fcd25c85cd64?q=80&auto=format&fit=crop&w=1800") !important;
  background-size: cover !important;
  background-position: center !important;
  color: var(--footer-text-muted) !important;
}

body.theme-enrock footer.bg-slate-950 h3 {
  position: relative;
  padding-bottom: 14px;
  margin-bottom: 14px !important;
  font-size: 1.045rem !important;
}

body.theme-enrock footer.bg-slate-950 h3::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 90px;
  height: 2px;
  background: rgb(255 255 255 / 0.2);
}

body.theme-enrock footer.bg-slate-950 h3::after {
  content: "";
  position: absolute;
  left: 14px;
  bottom: 0;
  width: 32px;
  height: 2px;
  background: var(--theme-color);
}

body.theme-enrock footer.bg-slate-950 a.hover\:text-white:hover {
  padding-left: 6px !important;
  color: rgb(226 71 113) !important;
}

body.theme-enrock footer .border-t.border-slate-800 {
  border-color: rgb(148 163 184 / 0.15) !important;
}
