/* Homepage design layer. Deliberately independent of the frozen shared stylesheet. */
* {
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
  scroll-padding-top:100px;
}

body {
  margin:0;
}

button,input {
  font:inherit;
}

button,a {
  -webkit-tap-highlight-color:transparent;
}

button {
  cursor:pointer;
}

a {
  color:inherit;
  text-decoration:none;
}

img {
  display:block;
  max-width:100%;
}

svg {
  flex-shrink:0;
}

h1,h2,h3,p {
  margin:0;
}

button {
  color:inherit;
}

button:disabled {
  cursor:not-allowed;
}

[hidden] {
  display:none!important;
}

.home-page {
  --paper:#f6f4ef;
  --surface:#fffefa;
  --soft:#eae7df;
  --ink:#252620;
  --muted:#66685f;
  --line:#d9d8cf;
  --gold:#fedb99;
  --gold-ink:#745123;
  --dark:#292c27;
  --media:#eeece5;
  --shadow:0 24px 50px -24px #39332155;
  --header:#f6f4ef;
  --accent-ink:var(--gold-ink);
  background:var(--paper);
  color:var(--ink);
  font:400 15px/1.8 'Vazirmatn',system-ui,sans-serif;
  direction:rtl;
}

.home-page[data-theme="dark"] {
  --paper:#191c19;
  --surface:#252924;
  --soft:#30362e;
  --ink:#f3f0e7;
  --muted:#afb5a9;
  --line:#3b4237;
  --gold-ink:#fedb99;
  --dark:#111410;
  --media:#30362f;
  --shadow:0 28px 58px -20px #0009;
  --header:#191c19;
  color-scheme:dark;
}

::selection {
  background:#fedb99;
  color:#252620;
}

:focus-visible {
  outline:2px solid var(--gold-ink);
  outline-offset:5px;
}

.skip-link {
  position:fixed;
  inset-block-start:-70px;
  inset-inline-start:20px;
  z-index:100;
  background:var(--gold);
  color:#252620;
  padding:12px 20px;
}

.skip-link:focus {
  inset-block-start:10px;
}

.shell {
  width:min(1248px,calc(100% - 96px));
  margin-inline:auto;
}

.eyebrow {
  display:block;
  color:var(--gold-ink);
  font-size:12px;
  font-weight:500;
  line-height:1.8;
  margin-block-end:10px;
}

h2 {
  font-size:clamp(25px,2.25vw,32px);
  font-weight:600;
  line-height:1.55;
  letter-spacing:-.7px;
}

.section-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:24px;
  margin-block-end:30px;
}

.text-link {
  display:inline-flex;
  align-items:center;
  gap:15px;
  min-height:44px;
  font-size:13px;
  font-weight:500;
}

.text-link:hover {
  color:var(--gold-ink);
}

.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:28px;
  min-height:54px;
  padding:12px 25px;
  border:1px solid transparent;
  border-radius:7px;
  font-size:14px;
  font-weight:500;
  transition:background 180ms,color 180ms;
}

.button-primary {
  background:var(--ink);
  color:var(--paper);
}

.button-primary:hover {
  background:var(--gold);
  color:#252620;
}

.button span {
  font-size:23px;
  line-height:1;
}

.announce {
  padding:8px 24px;
  text-align:center;
  background:var(--gold);
  color:#252620;
  font-size:12px;
}

/* Compact common.js shell, styled only in this homepage asset. */
/* Match the mounted header while its deferred script is being fetched. */
.home-page #siteHeader:empty { min-height:89px; }
@media(max-width:1000px) { .home-page #siteHeader:empty { min-height:77px; } }
@media(max-width:760px) { .home-page #siteHeader:empty { min-height:75px; } }
.hdr {
  position:relative;
  z-index:20;
  border-block-end:1px solid var(--line);
  background:var(--header);
}

.hdr-inner {
  width:min(1344px,calc(100% - 64px));
  min-height:88px;
  margin:auto;
  display:flex;
  align-items:center;
  gap:34px;
}

.logo {
  display:flex;
  align-items:center;
  gap:10px;
  flex-shrink:0;
}

.logo-mark {
  width:39px;
  height:39px;
  border-radius:10px;
  background:var(--gold);
  display:grid;
  place-items:center;
}

.logo-txt {
  display:flex;
  flex-direction:column;
}

.logo-name {
  font-size:18px;
  font-weight:700;
  line-height:1.5;
}

.logo-tag {
  font-size:10px;
  color:var(--muted);
}

.nav {
  display:flex;
  gap:24px;
  align-items:center;
  flex:1;
  min-width:0;
}

.nav a {
  display:flex;
  align-items:center;
  min-height:44px;
  font-size:13px;
  white-space:nowrap;
}

/* The row keeps the destinations that fit and hands the rest to this page's menu panel, which
   carries the same canonical list, so a configured item is never silently dropped. */
#publicNav>a.is-nav-overflow {
  display:none;
}

.nav a:hover {
  color:var(--gold-ink);
}

.hdr-actions {
  display:flex;
  gap:10px;
  align-items:center;
  margin-inline-start:auto;
}

.theme-btn,.home-search-trigger,.home-menu-trigger {
  border:0;
  background:transparent;
  min-width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:6px;
}

.theme-btn:hover,.home-search-trigger:hover,.home-menu-trigger:hover {
  background:var(--soft);
}

.hdr-actions>.btn {
  font-size:13px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 16px;
}

.hdr-actions>.btn-outline {
  border-inline-start:1px solid var(--line);
}

.hdr-account,.mobile-menu-btn,.mobile-menu {
  display:none!important;
}

.hdr-search {
  position:absolute;
  inset-inline-end:32px;
  inset-block-start:calc(100% + 12px);
  width:min(480px,calc(100% - 40px));
  padding:22px;
  background:var(--surface);
  border:1px solid #b8b6a8;
  border-radius:10px;
  box-shadow:0 12px 26px -12px #292c273d,0 2px 5px #292c2710;
}

[data-theme="dark"] .hdr-search {
  border-color:#626b59;
  box-shadow:0 12px 26px -12px #0009,0 2px 5px #0003;
}

@media(min-width:1001px) {
  .hdr-inner { gap:32px; }
  .logo { gap:12px; }
  .logo-name { font-size:19px; font-weight:800; }
  .nav { gap:26px; }
  .nav a { font-size:14px; font-weight:500; }
  .hdr-actions { gap:8px; }
  .hdr-actions>.btn { font-weight:500; }
  .home-search-trigger span { font-weight:500; color:var(--ink); }
  /* A menu larger than the row: the panel trigger joins the row so every destination stays reachable. */
  .hdr.nav-overflow .home-menu-trigger { display:flex; }
}

.hdr-search label {
  display:block;
  font-weight:500;
  font-size:15px;
  margin-block-end:12px;
}

.search-field {
  display:flex;
  gap:8px;
}

.hdr-search input {
  width:100%;
  min-width:0;
  background:var(--paper);
  border:1px solid var(--line);
  border-radius:5px;
  padding:11px;
  color:var(--ink);
  font-size:14px;
}

.search-field button {
  background:var(--ink);
  color:var(--paper);
  border:0;
  border-radius:5px;
  width:46px;
  flex-shrink:0;
}

.search-hint {
  font-size:12px;
  color:var(--muted);
  margin-block-start:12px;
}

.home-search-trigger {
  gap:8px;
  width:auto;
  padding-inline:10px;
}

.home-search-trigger span {
  font-size:12px;
  color:var(--muted);
}

.home-menu-trigger {
  display:none;
}

.home-nav-panel {
  position:absolute;
  inset-block-start:calc(100% + 10px);
  inset-inline:20px;
  background:var(--surface);
  padding:16px 24px;
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:var(--shadow);
}

.home-nav-panel nav {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 16px;
}

.home-nav-panel nav a {
  padding:8px;
  min-height:44px;
  display:flex;
  align-items:center;
  border-block-end:1px solid var(--line);
  font-size:14px;
  font-weight:500;
}

.home-nav-panel nav [data-home-shop] {
  grid-column:1/-1;
  background:var(--soft);
  border:0;
  border-radius:5px;
  font-weight:600;
}

.home-nav-panel a:hover { color:var(--gold-ink); }
.home-nav-panel nav a:nth-last-child(-n+2) { border-block-end:0; }

.home-nav-bottom {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 16px;
  align-items:center;
  margin-block-start:12px;
  padding-block-start:12px;
  border-block-start:1px solid var(--line);
  font-size:13px;
  color:var(--muted);
}

.home-nav-bottom a {
  min-height:44px;
  display:flex;
  align-items:center;
  padding-inline:8px;
}

.home-nav-bottom a:first-child { color:var(--ink); font-weight:600; }

/* The hero is one spatial composition: editorial copy, an orbit and a product collection. */
.hero-overline {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-block-end:1px solid var(--line);
  padding-block:23px 18px;
  font-size:11px;
  color:var(--muted);
}

.hero-overline>span:first-child {
  display:flex;
  align-items:center;
  gap:8px;
}

.hero-overline i {
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--gold-ink);
}

.hero-overline [lang] {
  letter-spacing:1.6px;
  font-size:9px;
}

.hero-composition {
  display:grid;
  grid-template-columns:1fr 1.08fr;
  align-items:center;
  min-height:545px;
  gap:20px;
}

.hero-copy {
  position:relative;
  z-index:3;
  padding-block:38px;
}

.hero-copy>.eyebrow {
  font-size:12px;
  margin-block-end:18px;
}

.hero-copy h1 {
  font-size:clamp(46px,4.25vw,61px);
  font-weight:600;
  line-height:1.52;
  letter-spacing:-2.1px;
}

.hero-plus {
  position:relative;
  z-index:0;
  white-space:nowrap;
}

.hero-plus:after {
  content:'';
  position:absolute;
  inset-inline:-3px;
  inset-block-end:8px;
  height:17px;
  background:var(--gold);
  z-index:-1;
  transform:rotate(-3deg);
}

[data-theme="dark"] .hero-plus {
  color:var(--gold);
}

[data-theme="dark"] .hero-plus:after {
  background:#645236;
  height:2px;
  inset-block-end:3px;
}

.hero-description {
  font-size:15px;
  color:var(--muted);
  max-width:395px;
  line-height:2.1;
  margin-block:20px 26px;
}

.hero-actions {
  display:flex;
  align-items:center;
  gap:26px;
}

.hero-note {
  display:flex;
  gap:10px;
  align-items:center;
  margin-block-start:29px;
  max-width:375px;
  color:var(--muted);
  font-size:11px;
}

.note-symbol {
  font-size:25px;
  font-weight:300;
}

.hero-scene {
  position:relative;
  height:510px;
  min-width:0;
  isolation:isolate;
}

.scene-orbit {
  position:absolute;
  width:420px;
  height:420px;
  border:1px solid var(--line);
  border-radius:50%;
  top:20px;
  left:calc(50% - 210px);
  transform:rotate(-20deg) scaleX(.86);
  z-index:-2;
}

.scene-orbit:before {
  content:'';
  position:absolute;
  inset:29px;
  border:1px solid var(--line);
  border-radius:50%;
}

.scene-orbit:after {
  content:'＋';
  position:absolute;
  right:35px;
  top:0;
  font-size:47px;
  font-weight:300;
  background:var(--paper);
  line-height:1;
  color:var(--gold-ink);
}

.scene-plinth {
  position:absolute;
  inset-inline:3%;
  height:98px;
  bottom:42px;
  background:linear-gradient(180deg,#ddd6c7,#efebe1 38%,#ccc4b3);
  border-radius:50%;
  box-shadow:0 30px 40px -24px #4c453f6b;
  z-index:-1;
  transform:rotate(-6deg);
}

.scene-plinth:before {
  content:'';
  position:absolute;
  inset:0 0 15px;
  border-radius:50%;
  background:linear-gradient(150deg,#fffdf6,#e5ded0);
  border:1px solid #e4decf;
}

[data-theme="dark"] .scene-plinth {
  background:linear-gradient(#464a3c,#252b21);
  box-shadow:0 30px 40px -20px #000;
}

[data-theme="dark"] .scene-plinth:before {
  background:linear-gradient(130deg,#525547,#31372b);
  border-color:#535b44;
}

.hero-collection {
  position:absolute;
  inset:0;
}

.hero-product {
  position:absolute;
  display:block;
  border-radius:12px;
  box-shadow:var(--shadow);
  background:var(--surface);
  border:1px solid var(--line);
  overflow:hidden;
  isolation:isolate;
}

.hero-product--main {
  width:276px;
  top:88px;
  left:calc(50% - 154px);
  z-index:3;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}

.hero-product--main .t-tilt-card {
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:0 28px 45px -18px #191d2055;
  padding:18px;
  border-radius:12px;
}

.hero-media {
  height:161px;
  display:grid;
  place-items:center;
  border-radius:6px;
  overflow:hidden;
  background:var(--media);
  position:relative;
}

.hero-media img {
  position:absolute;
  inset:0;
  height:100%;
  width:100%;
  object-fit:contain;
  padding:20px;
}

.hero-product .product-category {
  font-size:10px;
  display:block;
  margin-block:14px 4px;
  color:var(--muted);
}

.hero-product h2 {
  font-size:19px;
  letter-spacing:0;
  line-height:1.6;
  font-weight:500;
  overflow-wrap:anywhere;
}

.hero-product .hero-price-row {
  display:flex;
  justify-content:space-between;
  align-items:center;
  border-block-start:1px solid var(--line);
  padding-block-start:12px;
  margin-block-start:12px;
  gap:8px;
}

.price {
  font-size:20px;
  font-weight:600;
  white-space:nowrap;
}

.price small {
  font-size:11px;
  font-weight:400;
  color:var(--muted);
}

.price-unavailable {
  font-size:12px;
  color:var(--muted);
  font-weight:400;
}

.hero-product .arrow {
  display:grid;
  place-items:center;
  background:var(--gold);
  color:#252620;
  border-radius:50%;
  width:34px;
  height:34px;
  font-size:20px;
  flex-shrink:0;
}

.hero-product--back {
  width:179px;
  height:222px;
  padding:15px;
  top:35px;
  left:calc(50% + 35px);
  transform:rotate(12deg);
  z-index:1;
  background:var(--dark);
  color:#f4f0e5;
}

.hero-product--back .hero-media {
  height:128px;
  background:#ffffff0c;
}

.hero-product--back h2,.hero-product--side h2 {
  font-size:13px;
  font-weight:500;
  line-height:1.8;
  margin-block-start:10px;
}

.hero-product--back .product-category {
  color:#c6c9bc;
}

.hero-product--side {
  width:154px;
  padding:14px;
  top:200px;
  left:calc(50% - 270px);
  transform:rotate(-12deg);
  z-index:4;
  background:#e4c99b;
  color:#302a21;
  border-color:#d9bb87;
}

.hero-product--side .hero-media {
  height:96px;
  background:#f4e0bc;
}

.hero-product--side .hero-media img {
  padding:14px;
}

.hero-product--side .product-category {
  color:#605441;
}

.scene-caption {
  position:absolute;
  bottom:4px;
  left:50%;
  transform:translateX(-50%);
  font-size:8px;
  letter-spacing:2.1px;
  white-space:nowrap;
  color:var(--muted);
}

.hero-bottom {
  border-block:1px solid var(--line);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding-block:18px;
  font-size:11px;
  color:var(--muted);
}

.hero-bottom a {
  display:flex;
  gap:20px;
  align-items:center;
  min-height:44px;
  color:var(--ink);
}

.hero-bottom a span {
  font-size:19px;
}

.t-tilt {
  touch-action:auto;
}

.hero-editorial {
  position:absolute;
  inset:95px 18% 90px;
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  padding:25px;
  text-align:center;
  display:flex;
  flex-direction:column;
  justify-content:center;
  transform:rotate(-5deg);
  border-radius:10px;
}

.hero-editorial>span {
  font-size:110px;
  color:var(--gold-ink);
  line-height:1;
}

.hero-editorial h2 {
  font-size:25px;
  margin-block:15px;
}

.hero-editorial p {
  font-size:12px;
  color:var(--muted);
}

/* Discovery as numbered navigation, not another product grid. */
.home-discovery {
  padding-block:55px 0;
}

.category-list {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  border-block:1px solid var(--line);
}

.category-item {
  min-width:0;
  display:flex;
  gap:15px;
  align-items:center;
  padding:21px 20px;
  border-block-end:1px solid var(--line);
  transition:background 180ms;
}

.category-item:nth-last-child(-n+3) {
  border-block-end:0;
}

.category-item:not(:nth-child(3n)) {
  border-inline-end:1px solid var(--line);
}

.category-item:hover {
  background:var(--soft);
}

.category-icon {
  width:43px;
  height:43px;
  flex-shrink:0;
  display:grid;
  place-items:center;
  background:var(--soft);
  border-radius:10px;
}

.category-icon img {
  width:30px;
  height:30px;
  object-fit:contain;
}

.category-item h3 {
  font-size:15px;
  font-weight:500;
}

.category-item p {
  font-size:11px;
  color:var(--muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  max-width:230px;
}

.category-item>div {
  min-width:0;
}

.category-item>.category-arrow {
  margin-inline-start:auto;
  font-size:20px;
  color:var(--muted);
}

.home-products,.home-offers,.home-banners,.home-trust,.home-reviews,.home-featured {
  padding-block-start:76px;
}

.product-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:25px;
}

.product-card {
  min-width:0;
  display:flex;
  flex-direction:column;
  padding:16px;
  border:1px solid var(--line);
  border-radius:17px;
  background:var(--surface);
}

.product-content {
  flex:1;
  min-width:0;
  padding-block-end:16px;
}

.product-media {
  display:grid;
  place-items:center;
  position:relative;
  width:100%;
  aspect-ratio:1 / 1;
  background:var(--media);
  border-radius:10px;
  overflow:hidden;
  margin-block-end:18px;
  flex-shrink:0;
}

.product-media img {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  padding:30px;
  transition:opacity 180ms;
}

@media (hover:hover) and (pointer:fine) {
  .product-media:hover img { opacity:.8; }
}

.product-fallback {
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:9px;
  width:100%;
  height:100%;
  background:var(--media);
  color:var(--muted);
  text-align:center;
}

.product-fallback strong {
  font:500 52px/1.2 'Vazirmatn',sans-serif;
  color:var(--ink);
  opacity:.65;
  letter-spacing:-2px;
}

.product-fallback>span {
  font-size:13px;
  max-width:90%;
  overflow:hidden;
}

.product-card:nth-child(4n+2) .product-media,.product-card:nth-child(4n+2) .product-fallback {
  background:#e6e9e0;
}

.product-card:nth-child(4n+3) .product-media,.product-card:nth-child(4n+3) .product-fallback {
  background:#ede3d3;
}

.product-card:nth-child(4n+4) .product-media,.product-card:nth-child(4n+4) .product-fallback {
  background:#e4e6e8;
}

[data-theme="dark"] .product-card:nth-child(4n+2) .product-media,[data-theme="dark"] .product-card:nth-child(4n+2) .product-fallback {
  background:#303a2c;
}

[data-theme="dark"] .product-card:nth-child(4n+3) .product-media,[data-theme="dark"] .product-card:nth-child(4n+3) .product-fallback {
  background:#3e382c;
}

[data-theme="dark"] .product-card:nth-child(4n+4) .product-media,[data-theme="dark"] .product-card:nth-child(4n+4) .product-fallback {
  background:#2e353b;
}

.product-category {
  font-size:11px;
  color:var(--muted);
  margin-block-end:5px;
}

.product-title {
  font-weight:500;
  font-size:17px;
  line-height:1.65;
  min-height:56px;
  overflow-wrap:anywhere;
  margin-block-end:6px;
}

.product-title a:hover {
  color:var(--gold-ink);
}

.product-card .product-category { font-size:13px; }

#prodGrid .product-title { font-weight:600; }

.product-subtitle {
  font-size:13px;
  color:var(--muted);
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  margin-block:5px 0;
}

.product-footer {
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-end;
  margin-block-start:auto;
  padding-block-start:15px;
  border-block-start:1px solid var(--line);
}

.product-footer>div {
  min-height:48px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:2px;
}

.product-footer .price {
  display:inline-flex;
  align-items:baseline;
  gap:4px;
  line-height:1.4;
}

.product-footer .price small { font-size:12px; }

.product-footer .product-buy { flex-shrink:0; }

.product-buy {
  min-height:44px;
  min-width:44px;
  background:transparent;
  border:1px solid var(--line);
  border-radius:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-size:14px;
  padding:8px 12px;
}

.product-buy:hover {
  background:var(--ink);
  color:var(--paper);
  border-color:var(--ink);
}

.product-buy:disabled {
  background:var(--soft);
  color:var(--muted);
  border-color:transparent;
}

.product-stock {
  font-size:12px;
  color:var(--muted);
  margin-block-start:10px;
}

.old-price {
  font-size:13px;
  color:var(--muted);
  display:block;
  white-space:nowrap;
  line-height:1.4;
}

.product-rail {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:calc((100% - 75px)/4);
  gap:25px;
  overflow:auto;
  scroll-snap-type:x proximity;
  padding-block-end:4px;
  scrollbar-width:none;
}

.product-rail::-webkit-scrollbar,.product-grid::-webkit-scrollbar { display:none; }

.product-rail>.product-card {
  scroll-snap-align:start;
}

/* One compact collection layout, independent of category position. */
.home-featured-layout { display:block; }

.home-featured-intro {
  padding:0;
  margin-block-end:28px;
  background:transparent;
  border-radius:7px;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:start;
}

.home-featured-intro h2 {
  font-size:28px;
}

.home-featured-intro p {
  font-size:13px;
  color:var(--muted);
  margin-block:16px;
}

.home-featured-intro .text-link {
  margin-block-start:18px;
}

.home-featured-intro .eyebrow,
.home-featured-intro h2,
.home-featured-intro p { grid-column:1; }
.home-featured-intro p { max-width:650px; margin-block:10px 0; }
.home-featured-intro .text-link { grid-column:2; grid-row:2; }

@media(min-width:761px) and (max-width:1150px) {
  .product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .product-grid .product-card:nth-child(4) { display:none; }
  .product-rail { grid-auto-columns:calc((100% - 50px)/3); }
}

.brand-section {
  margin-block:65px;
  text-align:center;
  padding-block:30px;
  border-block:1px solid var(--line);
}

.brand-list {
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
  gap:15px 40px;
}

.brand-list a {
  min-height:44px;
  display:flex;
  align-items:center;
  font-size:19px;
  font-weight:600;
  color:var(--muted);
}

.brand-list a:hover {
  color:var(--ink);
}

.purchase-section {
  margin-block-start:80px;
  background:var(--dark);
  color:#f4f1e9;
  padding-block:68px;
}

.purchase-layout {
  display:grid;
  grid-template-columns:1fr 1.1fr;
  gap:100px;
}

.purchase-intro .eyebrow {
  color:var(--gold);
}

.purchase-intro h2 {
  font-size:36px;
  line-height:1.7;
}

.purchase-intro p {
  color:#b5bcad;
  font-size:14px;
  margin-block:15px 24px;
}

.purchase-intro .text-link {
  color:var(--gold);
  font-size:12px;
}

.purchase-steps {
  list-style:none;
  margin:0;
  padding:0;
}

.purchase-steps li {
  display:flex;
  gap:24px;
  padding-block:23px;
  border-block-end:1px solid #ffffff21;
}

.purchase-steps li:first-child {
  padding-block-start:8px;
}

.purchase-steps li:last-child {
  border:0;
}

.step-number {
  color:var(--gold);
  font-size:30px;
  line-height:1.6;
  font-weight:300;
}

.purchase-steps h3 {
  font-size:17px;
  font-weight:500;
  margin-block-end:8px;
}

.purchase-steps p {
  font-size:13px;
  color:#b5bcad;
  line-height:2;
}

.review-grid,.trust-grid,.banner-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px;
}

.content-card {
  border-block-start:1px solid var(--line);
  padding-block:24px;
}

.content-card img {
  max-height:160px;
  object-fit:contain;
  margin-block-end:16px;
}

.content-card h3 {
  font-size:19px;
  font-weight:500;
}

.content-card p {
  font-size:13px;
  color:var(--muted);
  margin-block:12px;
}

.review-card {
  padding:24px;
  background:var(--surface);
  border-radius:8px;
  display:flex;
  flex-direction:column;
  gap:18px;
}

.review-card blockquote {
  margin:0;
  font-size:14px;
  line-height:2.1;
  flex:1;
}

.review-rating {
  font-size:12px;
  color:var(--gold-ink);
  letter-spacing:2px;
}

.review-card footer {
  border-block-start:1px solid var(--line);
  padding-block-start:15px;
  font-size:12px;
}

.review-card footer p {
  color:var(--muted);
  margin-block-start:8px;
}

.home-faq {
  display:grid;
  grid-template-columns:1fr 1.45fr;
  gap:60px;
  padding-block-start:80px;
}

.faq-intro .text-link {
  margin-block-start:20px;
}

.t-acc {
  border-block-end:1px solid var(--line);
}

.t-acc-head {
  background:none;
  border:0;
  width:100%;
  min-height:76px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  text-align:start;
  padding:17px 0;
  font-size:15px;
  font-weight:500;
}

.t-acc-chevron {
  width:20px;
  flex-shrink:0;
}

.t-acc-chevron svg {
  width:20px;
  height:20px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
}

.t-acc-panel-inner p {
  font-size:13px;
  color:var(--muted);
  line-height:2.1;
  padding-block-end:22px;
}

.home-closing {
  padding-block:80px;
}

.closing-inner {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:35px;
  background:var(--gold);
  color:#292a23;
  padding:47px 48px;
  border-radius:9px;
  border:1px solid #c39b5555;
  box-shadow:0 3px 0 #9f7b3e26;
}

.closing-inner .eyebrow {
  color:#69552f;
  margin-block-end:12px;
}

.closing-inner h2 {
  font-size:36px;
  font-weight:700;
  line-height:1.45;
}

.closing-inner p {
  font-size:14px;
  margin-block-start:8px;
  color:#62563f;
}

.closing-inner .button-primary {
  background:#292c27;
  color:#f8f5ed;
  flex-shrink:0;
  font-weight:600;
}

.closing-inner .button-primary:hover {
  background:#464c3f;
}

.closing-plus {
  position:absolute;
  inset-inline-end:27%;
  font-size:300px;
  line-height:1;
  opacity:.09;
  z-index:-1;
  transform:rotate(12deg);
  font-weight:300;
}

.ftr {
  border-block-start:1px solid var(--line);
  background:var(--surface);
}

/* Keep transparent trust embeds from receiving a forced dark iframe canvas. */
.home-page[data-theme="dark"] #siteFooter iframe {
  color-scheme:normal;
}

.ftr-top {
  width:min(1248px,calc(100% - 96px));
  margin:auto;
  display:grid;
  grid-template-columns: 2fr 1fr 1fr 1fr 1fr 1fr;
  gap:70px;
  padding-block:42px;
}

.ftr-logo {
  display:flex;
  gap:12px;
  align-items:center;
}

.ftr-logo b {
  font-size:19px;
}

.ftr-about p {
  font-size:12px;
  color:var(--muted);
  max-width:300px;
  margin-block-start:18px;
}

.ftr-col>b {
  font-size:13px;
  font-weight:500;
}

.ftr-col .links {
  display:flex;
  flex-direction:column;
  margin-block-start:10px;
  align-items:start;
}

.ftr-col a {
  font-size:12px;
  color:var(--muted);
  min-height:36px;
  display:flex;
  align-items:center;
}

.ftr-col a:hover {
  color:var(--ink);
}

.ftr-bot {
  border-block-start:1px solid var(--line);
}

.ftr-bot-inner {
  width:min(1248px,calc(100% - 96px));
  margin:auto;
  padding-block:19px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:10px;
  color:var(--muted);
}

.ftr-badges {
  display:flex;
  gap:24px;
}

.ftr-badge {
  display:flex;
  gap:8px;
  align-items:center;
}

.home-empty {
  grid-column:1/-1;
  min-height:130px;
  background:var(--soft);
  border-radius:7px;
  padding:24px;
  display:flex;
  gap:24px;
  justify-content:space-between;
  align-items:center;
}

.home-empty h3 {
  font-size:17px;
  font-weight:500;
}

.home-empty p {
  font-size:13px;
  color:var(--muted);
  margin-block-start:5px;
}

.home-empty .text-link {
  white-space:nowrap;
}

.hero-skeleton {
  position:absolute;
  top:90px;
  left:calc(50% - 145px);
  width:270px;
  height:340px;
  background:var(--surface);
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  border-radius:12px;
  padding:24px;
}

.hero-skeleton>span {
  display:grid;
  place-items:center;
  height:190px;
  background:var(--soft);
  font-size:70px;
  color:var(--line);
  border-radius:7px;
}

.hero-skeleton i {
  display:block;
  width:90%;
  height:15px;
  background:var(--soft);
  margin-block-start:22px;
  border-radius:3px;
}

.hero-skeleton i:last-child {
  width:60%;
  height:12px;
  margin-block-start:12px;
}

.loading-card {
  height:330px;
  background:var(--soft);
  border-radius:7px;
  opacity:.65;
}

.loading-label {
  grid-column:1/-1;
  font-size:13px;
  color:var(--muted);
}

.t-skel-skeleton {
  pointer-events:none;
}

.t-skel-content:empty {
  pointer-events:none;
}

@media(min-width:1450px) {
  .hero-composition {
    min-height:585px;
  }
  .hero-scene {
    height:540px;
  }
  .hero-product--main {
    top:100px;
  }
}

@media(max-width:1150px) {
  .hdr-inner {
    gap:22px;
  }
  .nav {
    gap:18px;
  }
  .nav a {
    font-size:12px;
  }
  .home-search-trigger span {
    display:none;
  }
  .shell {
    width:calc(100% - 64px);
  }
  .hero-composition {
    grid-template-columns:1fr 1fr;
    gap:0;
    min-height:520px;
  }
  .hero-copy h1 {
    font-size:49px;
  }
  .hero-scene {
    transform:scale(.88);
    transform-origin:center;
    width:100%;
  }
  .hero-description {
    font-size:14px;
    max-width:340px;
  }
  .hero-actions {
    gap:18px;
  }
  .hero-actions .text-link {
    font-size:12px;
  }
  .hero-note {
    max-width:310px;
  }
  .category-item {
    padding-inline:15px;
    gap:10px;
  }
  .product-grid {
    gap:18px;
  }
  .product-title {
    font-size:15px;
  }
  .product-footer {
    flex-wrap:wrap;
  }
  .price {
    font-size:19px;
  }
  .purchase-layout {
    gap:60px;
  }
}

@media(max-width:1000px) {
  .nav {
    display:none;
  }
  .home-menu-trigger {
    display:flex;
  }
  /* RTL mobile header: the menu trigger moves beside the logo on the right, and the search and
     theme controls stay grouped at the opposite end. Only order and the auto margin change, so the
     existing trigger wiring, panel behaviour and keyboard order are untouched. */
  .hdr-actions {
    flex:1;
    margin-inline-start:0;
  }
  .hdr-actions>.home-menu-trigger {
    order:-1;
  }
  .hdr-actions>.home-search-trigger {
    margin-inline-start:auto;
  }
  .hdr-inner {
    min-height:76px;
  }
  .hero-overline {
    padding-block-start:19px;
  }
  .hero-copy h1 {
    font-size:46px;
  }
  /* The tilted side card is positioned to bleed past the scene on purpose, so the tablet scale has
     to absorb that bleed as well: at .78 the scene still pushed the page 3px wider than the 761px
     to 800px viewports, which produced a horizontal scrollbar. .75 keeps every card fully visible
     with a small margin and no clipping. */
  .hero-scene {
    transform:scale(.75);
    width:100%;
  }
  .hero-actions {
    gap:15px;
  }
  .hero-actions .button {
    padding-inline:18px;
    gap:15px;
  }
  .product-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .product-rail {
    grid-auto-columns:calc((100% - 50px)/3);
  }
  .review-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Tablet footer: between 761px and 1000px the six-column footer can no longer hold the three real
   trust providers at their natural size. They move into their own centred cells using exactly the
   containment the footer already applies below 761px, so the provider markup, embed URLs and
   loading behaviour are unchanged and every embed keeps its natural aspect ratio. */
@media(min-width:761px) and (max-width:1000px) {
  .ftr-top {
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-items:center;
    gap:25px;
    padding-block:32px;
  }
  .ftr-about {
    grid-column:1/-1;
    justify-self:stretch;
  }
  .ftr-col:not(:has(> iframe)):not(:has(> a)) {
    grid-column:1/-1;
    justify-self:stretch;
  }
  .ftr-top>.ftr-col:last-child {
    grid-column:1/-1;
  }
  .ftr-top>.ftr-col:has(> iframe),.ftr-top>.ftr-col:has(> a) {
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
  }
  .ftr-top .ftr-col>iframe {
    max-width:100%;
    flex:none;
  }
  .ftr-top .ftr-col>a {
    display:flex;
    justify-content:center;
    max-width:100%;
  }
  .ftr-top .ftr-col>a>img {
    max-width:100%;
    max-height:130px;
    height:auto;
    object-fit:contain;
  }
}

@media(max-width:760px) {
  .shell {
    width:calc(100% - 40px);
  }
  .hdr-inner {
    width:calc(100% - 32px);
    gap:12px;
    min-height:74px;
  }
  .logo-name {
    font-size:16px;
  }
  .logo-mark {
    width:35px;
    height:35px;
  }
  .logo-tag {
    font-size:9px;
  }
  .hdr-actions {
    gap:2px;
  }
  .hdr-actions>.btn {
    padding-inline:10px;
    font-size:12px;
  }
  .home-search-trigger {
    padding:0;
    min-width:44px;
  }
  .theme-btn,.home-menu-trigger {
    min-width:44px;
  }
  .hero-overline {
    padding-block:18px 15px;
    font-size:10px;
  }
  .hero-overline [lang] {
    font-size:7px;
    letter-spacing:1px;
  }
  .hero-composition {
    display:flex;
    flex-direction:column;
    min-height:0;
    gap:0;
  }
  .hero-copy {
    width:100%;
    padding-block:27px 0;
  }
  .hero-copy>.eyebrow {
    font-size:11px;
    margin-block-end:12px;
  }
  .hero-copy h1 {
    font-size:44px;
    line-height:1.48;
    letter-spacing:-1.6px;
  }
  .hero-copy h1 br {
    display:block;
  }
  .hero-description {
    font-size:13px;
    max-width:340px;
    margin-block:15px 20px;
    line-height:2;
  }
  .hero-description br {
    display:none;
  }
  .hero-actions {
    gap:23px;
  }
  .hero-actions .button {
    min-height:51px;
    padding-inline:20px;
    font-size:13px;
    gap:22px;
  }
  .hero-actions .text-link {
    font-size:12px;
  }
  .hero-note {
    display:none;
  }
  .hero-scene {
    height:362px;
    width:100%;
    transform:none;
    margin-block-start:10px;
  }
  .scene-orbit {
    width:290px;
    height:290px;
    left:calc(50% - 145px);
    top:12px;
  }
  .scene-orbit:before {
    inset:20px;
  }
  .scene-orbit:after {
    font-size:34px;
  }
  .scene-plinth {
    bottom:35px;
    height:68px;
    inset-inline:0;
  }
  .hero-product--main {
    width:209px;
    left:calc(50% - 112px);
    top:55px;
  }
  .hero-product--main .t-tilt-card {
    padding:13px;
  }
  .hero-media {
    height:117px;
  }
  .hero-product .product-category {
    font-size:9px;
    margin-block:10px 2px;
  }
  .hero-product h2 {
    font-size:14px;
  }
  .hero-product .hero-price-row {
    padding-block-start:10px;
    margin-block-start:10px;
  }
  .hero-price-row .price {
    font-size:17px;
  }
  .hero-price-row .price small {
    font-size:9px;
  }
  .hero-product .arrow {
    width:29px;
    height:29px;
    font-size:17px;
  }
  .hero-product--back {
    width:132px;
    height:170px;
    padding:11px;
    top:17px;
    left:calc(50% + 28px);
  }
  .hero-product--back .hero-media {
    height:92px;
  }
  .hero-product--side {
    width:114px;
    padding:10px;
    top:151px;
    left:calc(50% - 173px);
  }
  .hero-product--side .hero-media {
    height:67px;
  }
  .hero-product--side h2,.hero-product--back h2 {
    font-size:10px;
    line-height:1.7;
  }
  .hero-product--side .product-category,.hero-product--back .product-category {
    display:none;
  }
  .hero-product--side .hero-media img {
    padding:10px;
  }
  .scene-caption {
    font-size:7px;
    letter-spacing:1.5px;
    bottom:5px;
  }
  .hero-bottom {
    padding-block:13px;
    font-size:10px;
    gap:12px;
  }
  .hero-bottom>span {
    max-width:190px;
  }
  .hero-bottom a {
    white-space:nowrap;
    gap:9px;
  }
  .hero-editorial {
    inset:40px 14% 65px;
  }
  .hero-editorial>span {
    font-size:78px;
  }
  .hero-skeleton {
    width:209px;
    height:258px;
    left:calc(50% - 112px);
    top:45px;
    padding:18px;
  }
  .hero-skeleton>span {
    height:142px;
  }
  .home-discovery {
    padding-block-start:36px;
  }
  .section-heading {
    gap:14px;
    margin-block-end:22px;
  }
  .section-heading h2 {
    font-size:23px;
  }
  .section-heading>.text-link {
    font-size:11px;
    gap:7px;
    white-space:nowrap;
  }
  .eyebrow {
    font-size:10px;
    margin-block-end:6px;
  }
  .category-list {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .category-item {
    padding:17px 10px;
    gap:10px;
  }
  .category-item:not(:nth-child(3n)) {
    border-inline-end:0;
  }
  .category-item:nth-child(odd) {
    border-inline-end:1px solid var(--line);
  }
  .category-item:nth-last-child(-n+3) {
    border-block-end:1px solid var(--line);
  }
  .category-item:nth-last-child(-n+2) {
    border-block-end:0;
  }
  .category-icon {
    width:33px;
    height:33px;
    border-radius:7px;
  }
  .category-icon svg {
    width:19px;
    height:19px;
  }
  .category-item h3 {
    font-size:12px;
  }
  .category-item p {
    display:none;
  }
  .category-item>.category-arrow {
    font-size:15px;
  }
  .home-products,.home-featured,.home-offers,.home-banners,.home-trust,.home-reviews {
    padding-block-start:47px;
  }
  .product-grid {
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    overscroll-behavior-inline:contain;
    gap:16px;
    padding-block-end:4px;
    scrollbar-width:none;
  }
  .product-grid .product-card,.product-grid .product-card:nth-child(4) {
    display:flex;
    flex:0 0 77%;
    scroll-snap-align:start;
    scroll-snap-stop:always;
  }
  .product-media {
    margin-block-end:14px;
  }
  .product-title {
    font-size:17px;
    min-height:0;
  }
  .product-subtitle {
    font-size:12px;
  }
  .product-footer {
    flex-wrap:nowrap;
    margin-block-start:14px;
  }
  .product-buy {
    padding-inline:14px;
    font-size:12px;
  }
  .product-footer .price {
    font-size:21px;
  }
  .product-stock {
    font-size:10px;
  }
  .product-rail {
    grid-auto-columns:78%;
    gap:16px;
    scroll-snap-type:x mandatory;
    overscroll-behavior-inline:contain;
  }
  .product-rail>.product-card { scroll-snap-stop:always; }
  .home-featured-layout {
    display:block;
  }
  .home-featured-intro {
    background:transparent;
    padding:0;
    margin-block-end:22px;
    display:block;
  }
  .home-featured-intro h2 {
    font-size:25px;
  }
  .home-featured-intro p {
    margin-block:8px;
    font-size:12px;
  }
  .home-featured-intro .text-link {
    margin-block-start:3px;
  }
  .home-featured .product-rail {
    grid-auto-columns:78%;
  }
  .product-card .price { font-size:20px; }
  .product-card .product-buy { font-size:14px; }
  .product-card .product-category,.product-card .product-subtitle,.product-card .product-stock { font-size:13px; }
  .brand-section {
    margin-block:42px 0;
    padding-block:24px;
  }
  .brand-list {
    gap:8px 25px;
  }
  .brand-list a {
    font-size:16px;
    min-height:37px;
  }
  .purchase-section {
    margin-block-start:44px;
    padding-block:37px;
  }
  .purchase-layout {
    display:block;
  }
  .purchase-intro h2 {
    font-size:30px;
  }
  .purchase-intro p {
    font-size:13px;
    margin-block:10px;
  }
  .purchase-intro .text-link {
    margin-block-end:22px;
  }
  .purchase-steps li {
    gap:18px;
    padding-block:20px;
  }
  .purchase-steps h3 {
    font-size:15px;
  }
  .purchase-steps p {
    font-size:12px;
  }
  .step-number {
    font-size:27px;
  }
  .review-grid,.trust-grid,.banner-grid {
    grid-template-columns:1fr;
    gap:16px;
  }
  .home-faq {
    display:block;
    padding-block-start:45px;
  }
  .faq-intro .text-link {
    margin-block:10px;
  }
  .t-acc-head {
    font-size:13px;
    min-height:67px;
    gap:15px;
  }
  .t-acc-panel-inner p {
    font-size:12px;
  }
  .home-closing {
    padding-block:43px;
  }
  .closing-inner {
    padding:28px 24px;
    display:block;
  }
  .closing-inner h2 {
    font-size:27px;
  }
  .closing-inner p {
    font-size:12px;
  }
  .closing-inner .button {
    margin-block-start:24px;
    font-size:13px;
  }
  .closing-plus {
    font-size:230px;
    inset-inline-end:-45px;
    inset-block-start:20px;
  }
  .ftr-top {
    width:calc(100% - 40px);
    grid-template-columns:repeat(2,minmax(0,1fr));
    justify-items:center;
    gap:25px;
    padding-block:32px;
  }
  .ftr-about {
    grid-column:1/-1;
    justify-self:stretch;
  }
  /* Trust providers: each embed keeps its natural aspect ratio inside its own centred cell and can
     never overflow the row. The provider markup and loading behaviour are unchanged. */
  .ftr-col:not(:has(> iframe)):not(:has(> a)) {
    grid-column:1/-1;
    justify-self:stretch;
  }
  .ftr-top>.ftr-col:last-child {
    grid-column:1/-1;
  }
  .ftr-top>.ftr-col:has(> iframe),.ftr-top>.ftr-col:has(> a) {
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
  }
  .ftr-top .ftr-col>iframe {
    max-width:100%;
    flex:none;
  }
  .ftr-top .ftr-col>a {
    display:flex;
    justify-content:center;
    max-width:100%;
  }
  .ftr-top .ftr-col>a>img {
    max-width:100%;
    max-height:130px;
    height:auto;
    object-fit:contain;
  }
  .ftr-badges {
    flex-wrap:wrap;
    justify-content:center;
  }
  .ftr-badge {
    max-width:100%;
    min-width:0;
    white-space:normal;
    text-align:center;
  }
  .ftr-about p {
    max-width:none;
    margin-block-start:12px;
  }
  .ftr-col a {
    min-height:44px;
  }
  .ftr-bot-inner {
    width:calc(100% - 40px);
    flex-direction:column;
    gap:12px;
    align-items:start;
  }
  .ftr-badges {
    gap:18px;
  }
  .home-empty {
    min-width:100%;
    display:block;
    padding:22px;
  }
  .home-empty h3 {
    font-size:15px;
  }
  .home-empty p {
    font-size:12px;
  }
  .home-empty .text-link {
    margin-block-start:12px;
  }
  .loading-card {
    min-width:78%;
    height:300px;
  }
  .hdr-search {
    inset-inline-end:20px;
  }
  .home-nav-panel nav a {
    font-size:13px;
  }
}

@media(max-width:400px) {
  .hdr-actions>.btn {
    padding-inline:7px;
  }
  .logo {
    gap:7px;
  }
  .logo-name {
    font-size:14px;
  }
  .hdr-inner {
    gap:5px;
  }
  .hero-copy h1 {
    font-size:39px;
  }
  .hero-actions {
    gap:17px;
  }
  .hero-scene {
    height:347px;
  }
  .hero-product--side {
    left:calc(50% - 160px);
  }
  .hero-product--back {
    left:calc(50% + 20px);
  }
  .hero-overline [lang] {
    font-size:6.5px;
    letter-spacing:.7px;
  }
  .section-heading h2 {
    font-size:21px;
  }
  .category-item {
    padding-inline:8px;
    gap:7px;
  }
  .category-item h3 {
    font-size:11px;
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto;
  }
  *,*:before,*:after {
    scroll-behavior:auto!important;
  }
  .button,.text-link,.category-item,.product-media img {
    transition:none;
  }
  .hero-product--back,.hero-product--side {
    transform:none;
  }
}

@media(hover:none),(pointer:coarse),(max-width:760px) {
  .t-tilt-card {
    transform:none!important;
  }
  .t-tilt-glare {
    display:none;
  }
}

.hero-product h2 {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}

.hero-product--main h2 {
  min-height:61px;
}

@media(max-width:760px) {
  .hero-product--main h2 {
    min-height:45px;
  }
  .hero-product--main .t-tilt-card {
    padding-block-end:10px;
  }
  .ftr-badge {
    min-height:44px;
  }
  .hero-bottom {
    padding-block:7px;
  }
}

/* A healthy catalog without products uses real category destinations in the spatial hero. */
.hero-category-media {
  isolation:isolate;
  background:linear-gradient(135deg,#f7ebd1,#e5cfaa);
  color:#443923;
}
.hero-category-media::before {
  content:'';
  position:absolute;
  width:128px;
  height:128px;
  border:1px solid #a2875855;
  border-radius:50%;
  z-index:-1;
}
.hero-category-media::after {
  content:'';
  position:absolute;
  width:160px;
  height:160px;
  border:1px solid #a2875833;
  border-radius:50%;
  z-index:-1;
}
.hero-category-media > svg {
  width:65px;
  height:65px;
}
.hero-category-media svg * { vector-effect:non-scaling-stroke; }
.hero-category.hero-product--side { top:180px; }
.hero-category.hero-product--main h2 { min-height:36px; font-size:23px; }
.hero-category-action { font-size:12px; font-weight:500; }
.hero-category.hero-product--back .hero-category-media { background:#ffffff06; color:#fedb99; }
.hero-category.hero-product--back .hero-category-media > svg { width:54px; height:54px; }
.hero-category.hero-product--side .hero-category-media > svg { width:45px; height:45px; }
.hero-category.hero-product--back .hero-category-media::before,
.hero-category.hero-product--back .hero-category-media::after { border-color:#fedb9926; }
.hero-category.hero-product--side .hero-category-media::before { width:72px; height:72px; }
.hero-category.hero-product--side .hero-category-media::after { width:99px; height:99px; }
[data-theme="dark"] .hero-category.hero-product--main .hero-category-media {
  background:linear-gradient(135deg,#4b4837,#343a2c);
  color:#fedb99;
}
[data-theme="dark"] .hero-category.hero-product--main .hero-category-media::before,
[data-theme="dark"] .hero-category.hero-product--main .hero-category-media::after { border-color:#fedb9933; }
@media(max-width:760px) {
  .hero-category.hero-product--side { top:137px; }
  .hero-category.hero-product--main h2 { min-height:29px; font-size:19px; }
  .hero-category-media > svg { width:53px; height:53px; }
  .hero-category-media::before { width:89px; height:89px; }
  .hero-category-media::after { width:115px; height:115px; }
  .hero-category.hero-product--back .hero-category-media > svg { width:42px; height:42px; }
  .hero-category.hero-product--side .hero-category-media > svg { width:36px; height:36px; }
  .hero-category-action { font-size:11px; }
}
