/* NoktaShop storefront base bundle | generated from ordered source sections; edit section rules in this file. */

/* ===== Source section: style.css ===== */

:root{
  --ink:#241820;
  --ink-2:#5f263e;
  --paper:#f8f4f5;
  --surface:#f7f3f5;
  --surface-2:#eadbd7;
  --muted:#82747b;
  --line:rgba(83, 46, 61, .14);
  --accent:#b4004e;
  --accent-2:#8e244f;
  --blue:#c23b6f;
  --gold:#e8b98f;
  --success:#21856d;
  --danger:#c34e61;
  --radius-sm:14px;
  --radius:22px;
  --radius-lg:32px;
  --shadow-sm:0 12px 34px rgba(63, 31, 46, .08);
  --shadow:0 28px 75px rgba(63, 31, 46, .12);
  --shell:1290px;
}

*{
  box-sizing:border-box;
}

html{
  scroll-behavior:smooth;
}

body{
  margin:0;
  background:linear-gradient(180deg, #fffdfb 0%, var(--paper) 100%);
  color:var(--ink);
  font-size:14px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

body.filters-open{
  overflow:hidden;
}

a{
  color:inherit;
  text-decoration:none;
}

a:hover{
  text-decoration:none;
}

img{
  max-width:100%;
  height:auto;
  border:0;
}

button, input, select, textarea{
  font:inherit;
}

button{
  cursor:pointer;
}

ul, ol{
  margin:0;
  padding:0;
  list-style:none;
}

h1, h2, h3, h4, p{
  margin-top:0;
}

address{
  font-style:normal;
}

fieldset{
  min-width:0;
}

.sr-only{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0, 0, 0, 0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

.skip-link{
  position:fixed;
  left:18px;
  top:-80px;
  z-index:100000;
  padding:12px 18px;
  border-radius:12px;
  background:#fff;
  color:#111;
  box-shadow:var(--shadow-sm);
}

.skip-link:focus{
  top:18px;
}

.site-shell, .cntr{
  width:min(var(--shell), calc(100% - 40px));
  max-width:var(--shell);
  min-width:0;
  margin-inline:auto;
}

.wrpr{
  width:100%;
  float:none;
}

.site-page{
  min-height:100vh;
  overflow-x:clip;
}

.page{
  clear:both;
  min-height:420px;
  margin:0 auto;
  padding:24px 0 90px;
}

.body-home .page{
  padding-top:0;
}

.lux-eyebrow, .home-kicker{
  display:block;
  color:var(--accent);
  font-size:11px;
  font-weight:800;
  letter-spacing:.18em;
  line-height:1.4;
  text-transform:uppercase;
}

/* Header */

.site-announcement{
  background:var(--ink);
  color:rgba(255,255,255,.76);
  font-size:11px;
}

.site-announcement__inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:28px;
}

.site-announcement__inner span{
  position:relative;
}

.site-announcement__inner span + span::before{
  content:"";
  position:absolute;
  left:-15px;
  top:50%;
  width:3px;
  height:3px;
  border-radius:50%;
  background:rgba(255,255,255,.34);
}

.site-announcement__inner a{
  margin-left:auto;
  color:#fff;
  font-weight:700;
}

.site-header{
  position:relative;
  z-index:200;
  background:#fff;
  border-bottom:1px solid var(--line);
}

.site-header__inner{
  min-height:80px;
  display:grid;
  grid-template-columns:minmax(260px, 1fr) minmax(320px, 620px) minmax(220px, 1fr);
  align-items:center;
  gap:28px;
}

.site-header__logo{
  display:block;
  width:clamp(260px, 24vw, 420px);
  max-width:100%;
  aspect-ratio:2048 / 409;
  height:auto;
  margin:0;
  background:url(../images/logo.png) no-repeat left center / contain;
  background-image:image-set(url(../images/logo.webp) type("image/webp"), url(../images/logo.png) type("image/png"));
}

.site-header__logo.has-managed-logo{
  display:inline-flex;
  align-items:center;
  gap:12px;
  width:auto;
  min-width:0;
  aspect-ratio:auto;
  background:none;
}

.site-header__logo.has-managed-logo img{
  width:64px;
  height:64px;
  object-fit:contain;
  flex:0 0 auto;
}

.site-header__brand-copy{
  display:grid;
  min-width:0;
  line-height:1.05;
}

.site-header__brand-copy strong{
  color:var(--ink);
  font-size:clamp(21px, 2vw, 31px);
  font-weight:850;
  letter-spacing:-.045em;
  white-space:nowrap;
}

.site-header__brand-copy small{
  margin-top:5px;
  color:var(--accent);
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}

.lux-footer__logo{
  gap:10px;
}

.lux-footer__logo span{
  color:#fff;
  font-size:23px;
  font-weight:550;
  letter-spacing:-.04em;
}

.site-header__search{
  margin:0 !important;
  border:1px solid #ded9dc !important;
  border-radius:9px;
  background:#fff;
  overflow:hidden;
}

.site-header__search form{
  display:flex;
  align-items:center;
  min-width:0;
}

.site-header__search .search-input{
  flex:1 1 auto;
  min-width:0;
  height:50px;
  padding:0 20px;
  border:0;
  outline:0;
  background:transparent;
  color:var(--ink);
}

.site-header__search .search-input::placeholder{
  color:#858087;
}

.site-header__search .search-button{
  flex:0 0 auto;
  min-width:112px;
  height:42px;
  margin:4px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border:0;
  border-radius:9px;
  background:var(--ink);
  color:#fff;
  font-weight:800;
  transition:background-color .25s ease, transform .25s ease;
}

.site-header__search .search-button:hover{
  background:var(--managed-button-bg);
  color:var(--managed-button-text);
  filter:brightness(.94) saturate(1.04);
  transform:translateY(-1px);
}

.site-header__search svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

.site-header__cart{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:12px;
  margin:0 !important;
  color:var(--ink);
}

.site-header__cart .bagicon{
  position:relative;
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
}

.site-header__cart .bagicon svg{
  width:23px;
  height:23px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}

.site-header__cart .bagicon i{
  position:absolute;
  right:-4px;
  top:-5px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  display:grid;
  place-items:center;
  border:2px solid #fff;
  border-radius:9px;
  background:var(--accent);
  color:#fff;
  font-size:10px;
  font-style:normal;
  font-weight:800;
}

.site-header__cart > span:last-child{
  display:grid;
  line-height:1.25;
}

.site-header__cart strong{
  font-size:14px;
}

.site-header__cart small {
    margin-top: 4px;
    /* color: var(--muted); */
    font-size: 11px;
}

.site-header__mobile-menu,.site-header__search-trigger,.site-header__search-cancel,.site-header__search-discovery{
  display:none;
}

/* Breadcrumbs */

.breadcrumbs-luxe{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:24px;
  padding:0 18px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:var(--muted);
  font-size:12px;
  overflow:hidden;
}

.breadcrumbs-luxe ol{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  overflow:auto;
  scrollbar-width:none;
}

.breadcrumbs-luxe ol::-webkit-scrollbar{
  display:none;
}

.breadcrumbs-luxe li{
  white-space:nowrap;
}

.breadcrumbs-luxe li + li::before{
  content:"/";
  margin-right:8px;
  color:#b6b0b7;
}

.breadcrumbs-luxe a:hover{
  color:var(--accent);
}

.breadcrumbs-luxe .bread-back{
  flex:0 0 auto;
}

/* Generic editorial pages */

.editorial-page, .article-landing, .article-detail{
  width:100%;
}

.editorial-page__header, .article-landing > header, .article-detail__header{
  padding: clamp(20px, 5vw, 24px);
  border-radius:var(--radius-lg);
  background:radial-gradient(circle at 95% 10%, rgba(185,46,104,.12), transparent 27%), linear-gradient(145deg, #faf8f9 0%, #f0eaed 100%);
  box-shadow:var(--shadow-sm);
}

.editorial-page__header h1, .article-landing h1, .article-detail__header h1{
  max-width:940px;
  margin:12px 0 0;
  color:var(--ink);
  font-size: clamp(25px, 5vw, 30px);
  font-weight:600;
  line-height:.98;
  letter-spacing:-.055em;
}

.editorial-page__header p, .article-landing > header p, .article-detail__header p{
  max-width:760px;
  margin:20px 0 0;
  color:var(--muted);
  font-size:16px;
  line-height:1.8;
}

.editorial-page__body, .article-landing__body, .article-detail__body, .product-prose{
  color:#474049;
  font-size:16px;
  line-height:1.9;
}

.editorial-page__body, .article-landing__body{
  max-width:960px;
  margin:42px auto 0;
}

.editorial-page__body h2, .editorial-page__body h3, .article-landing__body h2, .article-landing__body h3, .article-detail__body h2, .article-detail__body h3, .product-prose h2, .product-prose h3{
  color:var(--ink);
  line-height:1.18;
  letter-spacing:-.03em;
}

.editorial-page__body h2, .article-landing__body h2, .article-detail__body h2, .product-prose h2{
  margin:38px 0 16px;
  font-size:clamp(27px, 3vw, 38px);
}

.editorial-page__body h3, .article-landing__body h3, .article-detail__body h3, .product-prose h3{
  margin:30px 0 12px;
  font-size:23px;
}

.editorial-page__body p, .article-landing__body p, .article-detail__body p, .product-prose p{
  margin:0 0 20px;
}

.editorial-page__body img, .article-landing__body img, .article-detail__body img, .product-prose img{
  border-radius:var(--radius);
}

.editorial-page__body ul, .article-landing__body ul, .article-detail__body ul, .product-prose ul{
  margin:18px 0 24px;
  padding-left:22px;
  list-style:disc;
}

/* Article detail at full 1290px */

.article-detail__cover{
  margin:28px 0 0;
  overflow:hidden;
  border-radius:var(--radius-lg);
  background:var(--surface);
}

.article-detail__cover img{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center top;
}

.article-detail__layout{
  display:grid;
  grid-template-columns:230px minmax(0, 1fr);
  gap:48px;
  margin-top:42px;
}

.article-detail__aside{
  position:sticky;
  top:92px;
  align-self:start;
  display:grid;
  gap:6px;
  padding:18px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
}

.article-detail__aside span{
  margin-bottom:5px;
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.article-detail__aside a{
  padding:9px 10px;
  border-radius:10px;
  font-weight:700;
}

.article-detail__aside a:hover{
  background:var(--surface);
  color:var(--accent);
}

.article-detail__body{
  min-width:0;
}

.article-detail__gallery{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:16px;
  margin-top:44px;
}

.article-detail__gallery img{
  width:100%;
  aspect-ratio:4/5;
  object-fit:contain;
  border-radius:var(--radius);
  background:var(--surface);
}

.article-products{
  margin-top:72px;
  padding:clamp(24px, 3vw, 38px);
  border-radius:var(--radius-lg);
  background:linear-gradient(145deg, #f8f5f6 0%, #efe9ec 100%);
}

.article-products__header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:26px;
}

.article-products__header h2{
  margin:8px 0 0;
  font-size:clamp(30px, 4vw, 48px);
  letter-spacing:-.045em;
  line-height:1;
}

.article-products__header p{
  max-width:430px;
  margin:0;
  color:var(--muted);
  line-height:1.7;
}

/* 404 and statuses */

.nf, .page-message, .order-result{
  min-height:520px;
  display:grid;
  place-items:center;
  text-align:center;
}

.nf__card, .page-message{
  width:min(760px, 100%);
  padding:clamp(32px, 6vw, 72px);
  border-radius:var(--radius-lg);
  background:var(--surface);
}

.nf__code{
  display:block;
  color:var(--accent);
  font-size:13px;
  font-weight:800;
  letter-spacing:.22em;
}

.nf h1, .page-message h1{
  margin:12px 0;
  font-size:clamp(40px, 7vw, 78px);
  line-height:.95;
  letter-spacing:-.06em;
}

.nf p, .page-message h2, .page-message p{
  color:var(--muted);
}

.nf__actions{
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

/* Buttons */

.button, .primary, .secondary, .home-primary-button, .home-outline-button{
  min-height:46px;
  padding:0 20px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:0;
  border-radius:9px;
  font-size:13px;
  font-weight:800;
  transition:transform .25s ease, background-color .25s ease, color .25s ease, box-shadow .25s ease;
}

.button, .primary, .home-primary-button{
  background:var(--managed-button-bg);
  color:var(--managed-button-text);
}

.button:hover, .primary:hover, .home-primary-button:hover{
  background:var(--managed-button-bg);
  color:var(--managed-button-text);
  filter:brightness(.94) saturate(1.04);
  transform:translateY(-2px);
}

.secondary, .home-outline-button{
  border:1px solid var(--line);
  background:#fff;
  color:var(--ink);
}

.secondary:hover, .home-outline-button:hover{
  border-color:var(--ink);
  background:var(--ink);
  color:#fff;
}

/* Pagination */

.pagination-luxe{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:34px;
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
}

.pagination__count{
  color:var(--muted);
  font-size:12px;
}

.pagination__pages{
  display:flex;
  align-items:center;
  gap:6px;
}

.pagination__pages a, .pagination__pages span{
  min-width:38px;
  height:38px;
  padding:0 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:9px;
  font-weight:700;
}

.pagination__pages .is-current{
  background:var(--ink);
  color:#000000;
}

.pagination__pages a:hover{
  background:var(--surface);
}

/* Footer */

.lux-footer{
  margin-top:80px;
  background: linear-gradient(135deg, #f04d98 0%, #86459f 40%, #5ea4de 100%);
  color:#fff;
  overflow:hidden;
}

.lux-footer__inner{
  padding:70px 0 30px;
}

.lux-footer__manifest{
  display:grid;
  grid-template-columns:minmax(0, 1.3fr) minmax(280px, .7fr);
  gap:50px;
  padding-bottom:54px;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.lux-footer .lux-eyebrow{
  color:rgba(255,255,255,.48);
}

.lux-footer__manifest h2{
  max-width:800px;
  margin:12px 0 0;
  color:#fff;
  font-size:clamp(36px, 5vw, 44px);
  font-weight:500;
  line-height:.98;
  letter-spacing:-.055em;
}

.lux-footer__manifest-action{
  align-self:end;
}

.lux-footer__manifest-action p{
  margin:0 0 20px;
  color:rgba(255,255,255,.62);
  line-height:1.8;
}

.lux-footer__manifest-action a{
  display:inline-flex;
  gap:12px;
  color:#fff;
  font-weight:800;
}

.lux-footer__trust{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:0;
  padding:34px 0;
  border-bottom:1px solid rgba(255,255,255,.1);
}

.lux-footer__trust article{
  display:flex;
  gap:14px;
  padding:0 24px;
  border-left:1px solid rgba(255,255,255,.09);
}

.lux-footer__trust article:first-child{
  padding-left:0;
  border-left:0;
}

.lux-footer__trust b{
  color:rgba(255,255,255,.28);
  font-size:11px;
  letter-spacing:.12em;
}

.lux-footer__trust span{
  display:grid;
  gap:4px;
}

.lux-footer__trust strong{
  font-size:13px;
}

.lux-footer__trust small{
  color:rgba(255,255,255,.5);
  font-size:11px;
}

.lux-footer__grid{
  display:grid;
  grid-template-columns:1.4fr .8fr .8fr 1fr;
  gap:45px;
  padding:52px 0;
}

.lux-footer__wordmark{
  color:#fff;
  font-size:clamp(32px, 4vw, 50px);
  font-weight:800;
  letter-spacing:-.055em;
}

.lux-footer__brand-column p{
  max-width:340px;
  margin:18px 0;
  color:rgba(255,255,255,.58);
}

.lux-footer__whatsapp{
  display:inline-flex;
  gap:10px;
  color:#78da94;
  font-weight:800;
}

.lux-footer__column{
  display:grid;
  align-content:start;
  gap:10px;
}

.lux-footer__column h3{
  margin:0 0 10px;
  color:#fff;
  font-size:13px;
}

.lux-footer__column a, .lux-footer__column address{
  color:rgba(255,255,255,.58);
  font-size:12px;
  line-height:1.8;
}

.lux-footer__column a:hover{
  color:#fff;
}

.lux-footer__phone{
  color:#fff !important;
  font-size:14px !important;
  font-weight:600;
}

.lux-footer__legal{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px 18px;
  padding:20px 0;
  border-top:1px solid rgba(255,255,255,.1);
  text-align:center;
}
.lux-footer__legal a{color:rgba(255,255,255,.68);font-size:11px;text-decoration:none;}
.lux-footer__legal a:hover,.lux-footer__legal a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:3px;}

.lux-footer__bottom{
  min-height:62px;
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:20px;
  border-top:1px solid rgba(255,255,255,.1);
  color:rgba(255,255,255,.46);
  font-size:11px;
}

.lux-footer__bottom p{
  margin:0;
}

.lux-footer__bottom > div, .lux-footer__bottom nav{
  display:flex;
  align-items:center;
  gap:10px;
}

.lux-footer__bottom > div span{
  padding:6px 8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:7px;
}

.lux-footer__bottom nav{
  justify-content:flex-end;
}

/* Age gate */

/* Generic checkout/order pages */

.checkout-page, .payment-page{
  width:100%;
}

.checkout-page__header, .payment-page > header{
  margin-bottom:28px;
  padding:clamp(28px, 4vw, 32px);
  border-radius:var(--radius-lg);
  background:linear-gradient(145deg,#f8f5f6,#eee8eb);
}

.checkout-page__header h1, .payment-page > header h1{
  margin:10px 0 0;
  font-size:clamp(30px,5vw,24px);
  line-height:.98;
  letter-spacing:-.055em;
}

.checkout-page__header p, .payment-page > header p{
  max-width:720px;
  margin:16px 0 0;
  color:var(--muted);
}

.cartForm{
  padding:28px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:#fff;
  box-shadow:var(--shadow-sm);
}

.cartForm .field-cnt{
  display:grid;
  grid-template-columns:190px 1fr;
  align-items:center;
  gap:18px;
  margin-bottom:16px;
}

.cartForm input, .cartForm select, .cartForm textarea{
  width:100%;
  min-height:46px;
  padding:0 14px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}

.cartForm textarea{
  min-height:110px;
  padding-top:12px;
  resize:vertical;
}

.checkout-payment{
  display:grid;
  gap:10px;
  margin:22px 0;
  padding:0;
  border:0;
}

.checkout-payment legend{
  margin-bottom:10px;
  font-weight:800;
}

.checkout-payment label{
  display:flex;
  align-items:center;
  gap:14px;
  padding:15px;
  border:1px solid var(--line);
  border-radius:9px;
}

.checkout-payment input{
  width:18px;
  height:18px;
}

.checkout-payment span{
  display:grid;
}

.checkout-payment small{
  color:var(--muted);
}

.checkout-submit{
  width:100%;
  justify-content:space-between;
}

.warn{
  padding:14px;
  border-radius:12px;
  background:#fff6e8;
  color:#7d5a23;
}

@media (max-width: 1100px){
  .site-header__inner{
    grid-template-columns:minmax(210px,250px) minmax(0,1fr) auto;
    gap:18px;
  }

  .site-header__logo{
    width:clamp(220px, 25vw, 280px);
  }

  .site-header__cart > span:last-child{
    display:none;
  }

  .article-detail__layout{
    grid-template-columns:1fr;
  }

  .article-detail__aside{
    position:static;
    display:flex;
    gap:8px;
    overflow-x:auto;
  }

  .lux-footer__manifest{
    grid-template-columns:1fr;
  }

  .lux-footer__trust{
    grid-template-columns:repeat(2,1fr);
    gap:22px 0;
  }

  .lux-footer__trust article:nth-child(3){
    padding-left:0;
    border-left:0;
  }

  .lux-footer__grid{
    grid-template-columns:repeat(2,1fr);
  }

  .lux-footer__bottom{
    grid-template-columns:1fr;
    justify-items:center;
    padding:22px 0;
    text-align:center;
  }

  .lux-footer__bottom nav{
    justify-content:center;
  }
}

@media (max-width: 760px){
  .site-shell, .cntr{
    width:min(var(--shell), calc(100% - 24px));
  }

  .page{
    padding-bottom:65px;
  }

  .site-announcement__inner{
    justify-content:space-between;
    gap:12px;
    overflow:hidden;
  }

  .site-announcement__inner span:nth-child(n/**/+2){
    display:none;
  }

  .site-announcement__inner a{
    margin-left:auto;
  }

  .site-header{
    position:relative;
    z-index:420;
    box-shadow:0 8px 20px rgba(27,39,48,.09);
  }

  .site-header__inner{
    min-height:72px;
    grid-template-columns:44px minmax(0,1fr) 42px 44px;
    gap:7px;
    padding:10px 0;
  }

  .site-header__logo{
    grid-column:2;
    justify-self:center;
    width:min(190px,52vw);
    height:auto;
    background-position:center;
  }

  .site-header__logo.has-managed-logo{
    width:auto;
    gap:7px;
    background:none;
  }

  .site-header__logo.has-managed-logo img{
    width:44px;
    height:44px;
  }

  .site-header__brand-copy strong{
    font-size:18px;
  }

  .site-header__brand-copy small{
    margin-top:3px;
    font-size:6.5px;
    letter-spacing:.08em;
  }

  .site-header__mobile-menu,.site-header__search-trigger{
    display:grid;
    width:42px;
    height:42px;
    padding:0;
    place-items:center;
    border:0;
    background:transparent;
    color:#263b4b;
  }

  .site-header__mobile-menu{
    grid-column:1;
    grid-row:1;
    align-content:center;
    gap:5px;
  }

  .site-header__mobile-menu span{
    display:block;
    width:24px;
    height:2px;
    border-radius:2px;
    background:currentColor;
  }

  .site-header__search-trigger{
    grid-column:3;
    grid-row:1;
  }

  .site-header__search-trigger svg{
    width:27px;
    height:27px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
  }

  .site-header__cart{
    grid-column:4;
    grid-row:1;
  }

  .site-header__cart .bagicon{
    width:42px;
    height:42px;
    background:transparent;
    color:#263b4b;
  }

  .site-header__cart .bagicon i{
    right:-2px;
    top:-2px;
  }

  .site-header__search{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:0;
    min-height:100vh;
    margin:0 !important;
    padding:18px 18px 42px;
    border:0 !important;
    border-radius:0;
    background:#fff;
    overflow:auto;
    box-shadow:0 20px 50px rgba(24,35,44,.16);
  }

  .site-header.is-mobile-search-open .site-header__search{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-content:start;
    gap:12px;
  }

  .site-header__search form{
    min-width:0;
    border:0;
    border-radius:14px;
    background:#eef0f2;
    overflow:hidden;
  }

  .site-header__search .search-input{
    height:46px;
  }

.site-header__search .search-button{
    order:-1;
    min-width:52px;
    width:52px;
    height:46px;
    margin:0;
    padding:0;
    background:transparent;
    color:#14232d;
  }

  .site-header__search .search-button span{
    display:none;
  }

  .site-header__search-cancel{
    display:block;
    padding:0 2px;
    border:0;
    background:transparent;
    color:#1c2024;
    font-size:15px;
    font-weight:700;
  }

  .site-header__search-discovery{
    grid-column:1/-1;
    display:grid;
    gap:30px;
    padding-top:22px;
  }

  .site-header__search-discovery section{
    display:grid;
    gap:14px;
  }

  .site-header__search-discovery h2{
    margin:0;
    color:#263b4b;
    font-size:22px;
    line-height:1.15;
  }

  .site-header__search-discovery section>div{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }

  .site-header__search-discovery a{
    min-height:54px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px;
    padding:10px 14px;
    border:1px solid #e1e5e8;
    border-radius:18px;
    background:#fafbfb;
    color:#1b2328;
    text-decoration:none;
    font-size:13px;
    font-weight:650;
  }

  .site-header__search-discovery a span{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .site-header__search-discovery .is-compact{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .site-header__search-discovery .is-compact a{
    min-height:46px;
    border-radius:16px;
  }

  .site-header.is-mobile-search-open .site-header__mobile-menu,.site-header.is-mobile-search-open .site-header__logo,.site-header.is-mobile-search-open .site-header__search-trigger,.site-header.is-mobile-search-open .site-header__cart{
    display:none;
  }

  body.has-mobile-search-open{
    overflow:hidden;
  }

  .modern-menu{
    display:none;
    margin-top:0;
  }

  .modern-menu.is-mobile-open{
    display:block;
    position:fixed;
    z-index:415;
    left:12px;
    right:12px;
    top:82px;
    background:transparent;
  }

  .modern-menu.is-mobile-open .modern-menu__inner{
    width:100%;
    min-height:0;
    padding:0;
  }

  .modern-menu.is-mobile-open .modern-menu__scroll{
    top:0;
    max-height:calc(100vh - 100px);
  }

  .modern-menu__home{
    display:none;
  }

  .modern-menu__mobile-toggle{
    visibility:hidden;
    position:absolute;
    pointer-events:none;
  }

  .breadcrumbs-luxe{
    border-radius:9px;
  }

  .breadcrumbs-luxe .bread-back{
    display:none;
  }

  .editorial-page__header, .article-landing > header, .article-detail__header{
    padding:28px 22px;
    border-radius:9px;
  }

  .editorial-page__header h1, .article-landing h1, .article-detail__header h1{
    font-size:40px;
  }

  .article-detail__gallery{
    grid-template-columns:1fr;
  }

  .article-products__header{
    align-items:flex-start;
    flex-direction:column;
  }

  .pagination-luxe{
    align-items:flex-start;
    flex-direction:column;
  }

  .pagination__pages{
    max-width:100%;
    overflow-x:auto;
  }

  .lux-footer{
    margin-top:60px;
  }

  .lux-footer__inner{
    padding-top:48px;
  }

  .lux-footer__manifest h2{
    font-size:38px;
  }

  .lux-footer__trust{
    grid-template-columns:1fr;
  }

  .lux-footer__trust article, .lux-footer__trust article:nth-child(3){
    padding:0;
    border-left:0;
  }

  .lux-footer__grid{
    grid-template-columns:1fr;
    gap:28px;
  }

  .cartForm{
    padding:18px;
  }

  .cartForm .field-cnt{
    grid-template-columns:1fr;
    gap:7px;
  }
}

@media (prefers-reduced-motion: reduce){
  *, *::before, *::after{
    scroll-behavior:auto !important;
    animation-duration:.01ms !important;
    transition-duration:.01ms !important;
  }
}

/* ==========================================================================
Makale sayfası yerleşim düzeltmesi
Yazı ve ürün bölümlerinin birbirine girmesini engeller.
========================================================================== */

.article-detail--premium{
  width:100%;
  max-width:1290px;
  margin-inline:auto;
  clear:both;
  isolation:isolate;
}

.article-detail--premium::after, .article-detail__content-shell::after, .article-prose::after{
  content:"";
  display:block;
  clear:both;
}

.article-detail--premium .article-detail__header{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:end;
  gap:36px;
  overflow:hidden;
}

.article-detail__heading{
  min-width:0;
}

.article-detail--premium .article-detail__meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(92px, auto));
  gap:10px;
}

.article-detail--premium .article-detail__meta > span{
  min-height:72px;
  padding:13px 15px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(83,46,61,.10);
  border-radius:9px;
  background:rgba(255,255,255,.70);
  color:var(--ink);
  font-size:12px;
  font-weight:700;
  box-shadow:0 10px 26px rgba(28,18,26,.045);
}

.article-detail--premium .article-detail__meta b{
  display:block;
  margin-bottom:4px;
  color:var(--muted);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.article-detail__content-shell{
  position:relative;
  width:100%;
  margin-top:42px;
  padding:clamp(28px, 4vw, 58px);
  overflow:visible;
  border:1px solid rgba(83,46,61,.10);
  border-radius:9px;
  background:radial-gradient(circle at 96% 0%, rgba(199,133,92,.09), transparent 25%), linear-gradient(145deg, #fffdfb 0%, #fbf3f0 100%);
  box-shadow:0 24px 64px rgba(28,18,26,.065);
}

.article-prose{
  position:relative;
  z-index:1;
  display:flow-root;
  width:min(1100px, 100%);
  max-width:1100px;
  min-width:0;
  margin-inline:auto;
  color:#4b4148;
  font-size:17px;
  line-height:1.95;
  overflow-wrap:anywhere;
  word-break:normal;
}

.article-prose > :first-child{
  margin-top:0 !important;
}

.article-prose > :last-child{
  margin-bottom:0 !important;
}

.article-prose *{
  max-width:100%;
  box-sizing:border-box;
}

.article-prose p, .article-prose div, .article-prose section, .article-prose article, .article-prose header, .article-prose footer, .article-prose aside{
  float:none !important;
  clear:both;
}

.article-prose img, .article-prose img[align], .article-prose .alignleft, .article-prose .alignright, .article-prose .aligncenter{
  float:none !important;
  clear:both;
  display:block;
  width:auto;
  max-width:100% !important;
  height:auto !important;
  margin:30px auto !important;
  border-radius:9px;
}

.article-prose .article-inline-image{
  clear:both;
  width:min(860px,100%);
  margin:34px auto;
}

.article-prose .article-inline-image>img{
  width:100% !important;
  margin:0 !important;
}

.article-prose iframe, .article-prose video, .article-prose embed, .article-prose object{
  display:block;
  width:100% !important;
  max-width:100% !important;
  margin:30px auto;
  border:0;
  border-radius:9px;
}

.article-prose table{
  display:table;
  width:100% !important;
  max-width:100%;
  table-layout:fixed;
  border-collapse:collapse;
}

.article-prose td, .article-prose th{
  padding:11px 12px;
  overflow-wrap:anywhere;
  border:1px solid var(--line);
}

.article-prose h2, .article-prose h3, .article-prose h4{
  clear:both;
  text-wrap:balance;
}

.article-prose ul, .article-prose ol{
  clear:both;
  margin:20px 0 26px;
  padding-left:25px;
}

.article-prose ul{
  list-style:disc;
}

.article-prose ol{
  list-style:decimal;
}

.article-prose blockquote{
  clear:both;
  margin:32px 0;
  padding:22px 26px;
  border-left:4px solid var(--accent);
  border-radius:0 15px 15px 0;
  background:rgba(194,59,111,.06);
  color:var(--ink-2);
}

.article-products--premium{
  position:relative;
  z-index:2;
  display:block;
  width:100%;
  max-width:1290px;
  clear:both !important;
  margin:76px auto 0;
  padding:clamp(24px, 3vw, 40px);
  overflow:hidden;
  border:1px solid rgba(83,46,61,.10);
  border-radius:9px;
  background:radial-gradient(circle at 100% 0%, rgba(199,133,92,.14), transparent 28%), linear-gradient(145deg, #fffaf7 0%, #f6e9e5 100%);
  box-shadow:0 26px 70px rgba(67,31,47,.08);
  isolation:isolate;
}

.article-products--premium::before{
  content:"";
  position:absolute;
  right:-110px;
  top:-120px;
  width:260px;
  height:260px;
  border:1px solid rgba(194,59,111,.12);
  border-radius:50%;
  pointer-events:none;
}

.article-products--premium .article-products__header{
  position:relative;
  z-index:1;
}

.article-products-grid{
  position:relative;
  z-index:1;
  width:100%;
  clear:both;
}

.article-author{
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  align-items:start;
  gap:30px;
  width:100%;
  max-width:1290px;
  margin:42px auto 0;
  padding:30px 34px;
  border:1px solid rgba(83,46,61,.12);
  border-radius:9px;
  background:#fff;
  box-shadow:0 12px 32px rgba(28,18,26,.045);
}

.article-author__photo{
  width:112px;
  height:112px;
  overflow:hidden;
  border:1px solid rgba(83,46,61,.12);
  border-radius:9px;
  background:#f5edf0;
  color:var(--accent);
  display:grid;
  place-items:center;
  font-size:38px;
  font-weight:800;
}

.article-author__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.article-author__copy{min-width:0;}
.article-author__eyebrow{margin:0 0 8px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.13em;}
.article-author h2{margin:0;color:var(--ink);font-size:26px;line-height:1.15;}
.article-author__expertise{margin:7px 0 0;color:var(--accent);font-size:14px;font-weight:800;}
.article-author__signature{margin:16px 0 0;color:var(--ink);font-weight:700;line-height:1.65;}
.article-author__biography{max-width:860px;margin:9px 0 0;color:var(--muted);font-size:14px;line-height:1.7;}
.article-author__contact{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;padding-top:15px;border-top:1px solid rgba(83,46,61,.09);}
.article-author__contact a{color:var(--ink);font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:3px;}
.article-author__contact a:focus-visible{outline:3px solid rgba(194,59,111,.35);outline-offset:3px;}

.article-related{width:100%;max-width:1290px;margin:58px auto 0;padding-top:28px;border-top:1px solid rgba(83,46,61,.12);}
.article-related__header{margin-bottom:20px;}
.article-related__header h2{margin:7px 0 0;color:var(--ink);font-size:clamp(14px,3vw,20px);line-height:1.1;}
.article-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.article-related__card{min-width:0;overflow:hidden;border:1px solid rgba(83,46,61,.11);border-radius:9px;background:#fff;}
.article-related__media{display:block;aspect-ratio:1.6/1;overflow:hidden;background:#f5edf0;}
.article-related__media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease;}
.article-related__card:hover .article-related__media img{transform:scale(1.025);}
.article-related__body{padding:18px 18px 20px;}
.article-related__body h3{margin:0;font-size:18px;line-height:1.25;}
.article-related__body h3 a{color:var(--ink);text-decoration:none;}
.article-related__body h3 a:hover{color:var(--accent);}
.article-related__body p{display:-webkit-box;overflow:hidden;margin:9px 0 0;color:var(--muted);font-size:13px;line-height:1.6;-webkit-box-orient:vertical;-webkit-line-clamp:2;}
.article-related__link{display:inline-flex;align-items:center;gap:7px;margin-top:15px;color:var(--accent);font-size:12px;font-weight:800;text-decoration:none;}
.article-related__link:hover{text-decoration:underline;}
.article-related__link:focus-visible,.article-related__body h3 a:focus-visible{outline:3px solid rgba(194,59,111,.35);outline-offset:3px;}

.article-reviews{
  width:100%;
  max-width:1290px;
  margin:58px auto 0;
  padding:clamp(24px,3vw,40px);
  border:1px solid rgba(83,46,61,.10);
  border-radius:9px;
  background:#fff;
  box-shadow:0 18px 46px rgba(28,18,26,.06);
}

.article-reviews__header{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(83,46,61,.08);
}

.article-reviews__header h2{margin:7px 0 0;color:var(--ink);font-size:clamp(25px,3vw,38px);line-height:1.1;}
.article-reviews__aside{display:flex;align-items:end;justify-content:flex-end;gap:18px;max-width:460px;}
.article-reviews__aside>p{max-width:330px;margin:0;color:var(--muted);font-size:14px;line-height:1.65;text-align:right;}
.article-reviews__controls{display:flex;flex:0 0 auto;gap:9px;}
.article-reviews__controls button{display:grid;width:42px;height:42px;padding:0;place-items:center;border:1px solid rgba(99,56,75,.12);border-radius:50%;background:linear-gradient(145deg,#fff,#f8f3f5);color:#432c37;box-shadow:0 10px 24px rgba(62,34,47,.08),inset 0 1px 0 rgba(255,255,255,.96);cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,color .18s ease,opacity .18s ease;}
.article-reviews__controls button:hover:not(:disabled){transform:translateY(-2px);color:#a52d5b;box-shadow:0 14px 28px rgba(62,34,47,.11),inset 0 1px 0 rgba(255,255,255,.98);}
.article-reviews__controls button:active:not(:disabled){transform:translateY(0);box-shadow:0 5px 13px rgba(62,34,47,.08),inset 0 2px 5px rgba(82,46,63,.07);}
.article-reviews__controls button:disabled{opacity:.34;cursor:default;}
.article-reviews__controls svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.article-reviews__track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(285px,calc((100% - 48px)/4));gap:16px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 8px;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;outline:none;}
.article-reviews__track::-webkit-scrollbar{display:none;width:0;height:0;}
.article-reviews__track:focus-visible{border-radius:9px;box-shadow:0 0 0 3px rgba(165,45,91,.10);}
.article-review-card{position:relative;display:flex;min-width:0;min-height:258px;flex-direction:column;overflow:hidden;padding:25px 24px 22px;scroll-snap-align:start;border:1px solid rgba(83,46,61,.10);border-radius:9px;background:linear-gradient(150deg,#fff 0%,#fff 72%,#fbf6f8 100%);box-shadow:0 16px 38px rgba(51,29,40,.055),inset 0 1px 0 rgba(255,255,255,.96);}
.article-review-card::before{position:absolute;top:0;left:0;width:3px;height:100%;content:"";background:linear-gradient(180deg,#b23568,#e1a036);opacity:.9;}
.article-reviews .home-review-card__identity{position:relative;z-index:1;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.article-reviews .home-review-card__identity>div{display:grid;min-width:0;gap:4px;}
.article-reviews .home-review-card__identity strong{color:#32242b;font-size:20px;font-weight:650;line-height:1.1;letter-spacing:-.025em;}
.article-reviews .home-review-card__identity small{color:#756970;font-size:11px;line-height:1.35;}
.article-reviews .home-review-card__quote{position:absolute;top:-13px;right:0;color:#f1dfe7;font:700 64px/1 Georgia,serif;pointer-events:none;}
.article-review-card__stars{position:relative;z-index:1;display:block;margin-top:12px;color:#f19a00;font-size:16px;letter-spacing:1px;}
.article-review-card>p{position:relative;z-index:1;margin:19px 0 22px;color:#665a61;font-size:12.5px;line-height:1.78;}
.article-review-card footer{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid rgba(83,46,61,.09);}
.article-review-card footer a,.article-review-card footer>span{display:inline-flex;align-items:center;gap:6px;color:#8f3158;font-size:10px;font-weight:740;text-decoration:none;}
.article-review-card footer a:hover{text-decoration:underline;}
.article-review-card footer a:focus-visible{outline:3px solid rgba(194,59,111,.35);outline-offset:3px;}

.article-products--inline{max-width:100%;margin:42px auto;padding:0;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;isolation:auto;}
.article-products--inline::before{display:none;}

@media (max-width: 980px){
  .article-detail--premium .article-detail__header{
    grid-template-columns:1fr;
    align-items:start;
  }

  .article-detail--premium .article-detail__meta{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    width:100%;
  }
}

@media (max-width: 700px){
  .article-reviews{margin-top:42px;padding:20px 16px;}
  .article-reviews__header{display:block;margin-bottom:18px;}
  .article-reviews__aside{align-items:center;justify-content:space-between;width:100%;max-width:none;margin-top:10px;}
  .article-reviews__aside>p{max-width:calc(100% - 106px);font-size:13px;text-align:left;}
  .article-reviews__track{grid-auto-columns:minmax(82vw,1fr);}
  .article-review-card{min-height:235px;padding:21px 19px 18px;border-radius:9px;}
  .article-reviews .home-review-card__identity strong{font-size:19px;}
  .article-review-card__stars{margin-top:10px;}
  .article-review-card>p{margin:16px 0 18px;font-size:12px;line-height:1.68;}
  .article-products--inline{margin:32px auto;}

  .article-author{
    grid-template-columns:76px minmax(0,1fr);
    gap:16px;
    margin-top:24px;
    padding:18px;
  }

  .article-author__photo{
    width:76px;
    height:76px;
    font-size:26px;
  }

  .article-author h2{font-size:20px;}
  .article-author__signature{margin-top:12px;font-size:14px;}
  .article-author__biography{font-size:13px;}
  .article-author__contact{margin-top:13px;padding-top:12px;}

  .article-related{margin-top:42px;padding-top:22px;}
  .article-related__grid{grid-template-columns:1fr;gap:12px;}
  .article-related__card{display:grid;grid-template-columns:112px minmax(0,1fr);}
  .article-related__media{height:100%;min-height:112px;aspect-ratio:auto;}
  .article-related__body{padding:14px;}
  .article-related__body h3{font-size:16px;}
  .article-related__body p{font-size:12px;}
  .article-related__link{margin-top:11px;}

  .article-detail__content-shell{
    margin-top:26px;
    padding:24px 18px;
    border-radius:9px;
  }

  .article-prose{
    font-size:15px;
    line-height:1.85;
  }

  .article-detail--premium .article-detail__meta{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:5px;
  }

  .article-detail--premium .article-detail__meta > span{
    min-width:0;
    min-height:42px;
    padding:7px 8px;
    border-radius:10px;
    font-size:9.5px;
    line-height:1.2;
    box-shadow:none;
    overflow:hidden;
  }

  .article-detail--premium .article-detail__meta b{
    margin-bottom:2px;
    font-size:7px;
    letter-spacing:.08em;
  }

  .article-products--premium{
    margin-top:52px;
    padding:22px 14px;
    border-radius:9px;
  }
}

/* Typography: daha rafine ve okunaklı ağırlıklar */

body{
  font-family:"Montserrat","Segoe UI",Arial,Helvetica,sans-serif;
}

h1,h2,h3,h4,h5,h6{
  font-weight:650;
}

.button,.primary,.secondary,.home-primary-button,.home-outline-button{
  font-weight:700;
  letter-spacing:0;
}

.site-header__search .search-button,.site-announcement__inner a,.lux-eyebrow,.home-kicker{
  font-weight:700;
}

/* Gift concept footer styles */

.lux-footer__logo{
  display:inline-flex;
  align-items:center;
  max-width:100px;
}

.lux-footer__logo img{
  display:block;
  width:min(100px,100%);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 6px 18px rgba(0,0,0,.16));
}

.lux-footer__wordmark{
  display:none;
}

.lux-footer__social{
  display:flex;
  align-items:center;
  gap:8px;
  margin:18px 0;
}

.lux-footer__social a{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:50%;
  color:#fff;
  background:rgba(255,255,255,.045);
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}

.lux-footer__social a:hover{
  transform:translateY(-2px);
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.24);
}

.lux-footer__social svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
}

.lux-footer__social svg .fill,.lux-footer__social path.fill{
  fill:currentColor;
  stroke:none;
}

/* Refined back control + floating WhatsApp support */

.breadcrumbs-luxe .bread-back{
  min-height:36px;
  padding:0 13px 0 10px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  border:1px solid rgba(76,56,67,.10);
  border-radius:9px;
  background:linear-gradient(145deg,#fff,#f7f4f6);
  color:var(--ink);
  box-shadow:0 7px 16px rgba(39,24,33,.08),inset 0 1px 0 rgba(255,255,255,.92);
  font-size:11px;
  font-weight:750;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}

.breadcrumbs-luxe .bread-back::before{
  content:"←";
  width:22px;
  height:22px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#fff;
  box-shadow:0 3px 9px rgba(35,24,31,.08);
  font-size:12px;
}

.breadcrumbs-luxe .bread-back:hover{
  transform:translateY(-1px);
  border-color:rgba(163,49,97,.20);
  box-shadow:0 10px 22px rgba(39,24,33,.11),inset 0 1px 0 #fff;
}

.whatsapp-support-float{
  position:fixed;
  z-index:8500;
  right:max(18px,env(safe-area-inset-right));
  bottom:max(18px,env(safe-area-inset-bottom));
  min-height:58px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:7px 15px 7px 7px;
  border:1px solid rgba(18,140,126,.18);
  border-radius:9px;
  background:rgba(255,255,255,.94);
  color:#173d2d;
  box-shadow:0 16px 42px rgba(17,74,49,.18),0 4px 12px rgba(26,35,31,.08);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  transition:transform .2s ease,box-shadow .2s ease;
}

.whatsapp-support-float:hover{
  transform:translateY(-2px);
  box-shadow:0 21px 48px rgba(17,74,49,.23),0 6px 14px rgba(26,35,31,.09);
}

.whatsapp-support-float__icon{
  width:44px;
  height:44px;
  flex:0 0 44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#25D366,#16aa57);
  color:#fff;
  box-shadow:0 8px 18px rgba(37,211,102,.28),inset 0 1px 0 rgba(255,255,255,.35);
}

.whatsapp-support-float__icon svg{
  width:24px;
  height:24px;
  fill:currentColor;
}

.whatsapp-support-float__copy{
  display:grid;
  gap:2px;
  line-height:1.15;
}

.whatsapp-support-float__copy strong{
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}

.whatsapp-support-float__copy small{
  display:flex;
  align-items:center;
  gap:5px;
  color:#6b7d74;
  font-size:9px;
  font-weight:700;
}

.whatsapp-support-float__copy small i{
  width:6px;
  height:6px;
  border-radius:50%;
  background:#25D366;
  box-shadow:0 0 0 4px rgba(37,211,102,.10);
}

@media (max-width:590px){
  .breadcrumbs-luxe{
    padding-right:8px;
  }

  .breadcrumbs-luxe .bread-back{
    display:inline-flex;
    min-height:34px;
    padding-right:10px;
  }

  .breadcrumbs-luxe .bread-back::before{
    width:20px;
    height:20px;
  }
}

@media (max-width:480px){
  .whatsapp-support-float{
    right:max(12px,env(safe-area-inset-right));
    bottom:max(12px,env(safe-area-inset-bottom));
    min-height:52px;
    padding:6px;
  }

  .whatsapp-support-float__icon{
    width:40px;
    height:40px;
    flex-basis:40px;
  }

  .whatsapp-support-float__copy{
    display:none;
  }
}

/* Compact two-column mobile footer */

@media (max-width:760px){
  .lux-footer__manifest{
    gap:24px;
    padding-bottom:34px;
  }

  .lux-footer__manifest h2{
    font-size:clamp(30px,8.8vw,36px);
    line-height:1.02;
  }

  .lux-footer__manifest-action p{
    margin-bottom:14px;
    font-size:12px;
    line-height:1.65;
  }

  .lux-footer__trust{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px 12px;
    padding:26px 0;
  }

  .lux-footer__trust article,.lux-footer__trust article:nth-child(3){
    min-width:0;
    padding:0;
    border-left:0;
  }

  .lux-footer__trust article{
    gap:9px;
  }

  .lux-footer__trust strong{
    font-size:11px;
    line-height:1.25;
  }

  .lux-footer__trust small{
    font-size:9px;
    line-height:1.45;
  }

  .lux-footer__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:26px 18px;
    padding:36px 0;
  }

  .lux-footer__logo img{
    height:auto;
  }

  .lux-footer__brand-column p{
    font-size:11px;
    line-height:1.65;
  }

  .lux-footer__column{
    min-width:0;
    gap:8px;
  }

  .lux-footer__column h3{
    margin-bottom:7px;
    font-size:12px;
  }

  .lux-footer__column a,.lux-footer__column address{
    font-size:10.5px;
    line-height:1.6;
    overflow-wrap:anywhere;
  }

  .lux-footer__contact{
    grid-column:1/-1;
    grid-template-columns:1fr;
    row-gap:8px;
  }

  .lux-footer__contact h3{
    grid-column:auto;
  }

  .lux-footer__contact address{
    grid-column:auto;
    grid-row:auto;
  }

  .lux-footer__bottom{
    gap:16px;
    padding:20px 0;
    font-size:9.5px;
  }

  .lux-footer__bottom>div{
    flex-wrap:wrap;
    justify-content:center;
    gap:6px;
  }

  .lux-footer__bottom>div span{
    padding:5px 7px;
  }
}

/* Mobile footer brand block lower + centered */

@media (max-width:760px){
  .lux-footer__grid{
    align-items:start;
  }

  .lux-footer__brand-column{
    order:4;
    grid-column:1/-1;
    margin-top:8px;
    padding-top:30px;
    border-top:1px solid rgba(255,255,255,.09);
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
  }

  .lux-footer__brand-column .lux-footer__logo{
    justify-content:center;
    margin-inline:auto;
  }

  .lux-footer__logo img{
    width:min(220px,64vw);
  }

  .lux-footer__brand-column p{
    max-width:330px;
    margin:14px auto 0;
    text-align:center;
  }

  .lux-footer__social{
    justify-content:center;
    margin:18px auto;
  }

  .lux-footer__whatsapp{
    justify-content:center;
    margin-inline:auto;
  }
}

@media (max-width:420px){
  .lux-footer__brand-column{
    padding-top:26px;
  }

  .lux-footer__logo img{
    width:min(225px,64vw);
  }
}

/* Mobile header cleanup */

@media (max-width: 760px){
  /* The announcement strip was removed from markup; keep the mobile header joined
  directly to the category bar with no white seam. */

  .site-header{
    border-bottom:0;
  }

  .site-header + .modern-menu{
    margin-top:0;
    border-top:0;
  }
}

/* ===== Source section: topmenu2.css ===== */

.modern-menu{
  position:sticky;
  top:0;
  z-index:900;
  width:100%;
  color:#fff;
  background:var(--managed-menu-bg);
  box-shadow:0 16px 42px rgba(91, 22, 53, .18);
  font-family:"Montserrat", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif;
  font-synthesis:none;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

.modern-menu__inner{
  position:relative;
  min-height:66px;
  display:flex;
  align-items:center;
  gap:14px;
}

.modern-menu__home{
  flex:0 0 38px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid rgba(255,255,255,.22);
  border-radius:5px;
  background:rgba(255,255,255,.09);
  color:#fff;
  transition:background-color .25s ease, transform .25s ease, border-color .25s ease;
}

.modern-menu__home:hover{
  background:rgba(255,255,255,.17);
  border-color:rgba(255,255,255,.34);
  transform:translateY(-1px);
}

.modern-menu__home svg{
  width:21px;
  height:21px;
  fill:currentColor;
}

.modern-menu__mobile-toggle{
  display:none;
}

.modern-menu__scroll{
  flex:1 1 auto;
  min-width:0;
  overflow:visible;
}

.modern-menu__list{
  width:100%;
  min-width:0;
  display:flex;
  align-items:stretch;
  justify-content:space-between;
}

.modern-menu__item{
  position:static;
  flex:1 1 auto;
  min-width:0;
}

.modern-menu__link-row{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:center;
}

.modern-menu__link {
    min-width: 0;
    min-height: 66px;
    padding: 0 clamp(5px, .68vw, 11px);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: clamp(12px, .74vw, 11px);
    font-weight: 600;
    line-height: 1.3;
    text-align: center;
    text-transform: none;
    white-space: nowrap;
    transition: color .2s ease, background-color .2s ease;
}

.modern-menu__link:hover{
  color:#fff;
  background:rgba(255,255,255,.08);
}

.modern-menu__submenu-toggle{
  flex:0 0 24px;
  width:24px;
  height:38px;
  margin-left:-7px;
  padding:0;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.9);
}

.modern-menu__submenu-toggle svg{
  width:16px;
  height:16px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  transition:transform .25s ease;
}

.modern-menu__item.is-open .modern-menu__submenu-toggle svg{
  transform:rotate(180deg);
}

/* Every desktop dropdown is anchored to the shared 1290px menu shell.
This prevents left/right drift regardless of the hovered category. */

.modern-menu__panel{
  position:absolute;
  left:0;
  right:0;
  top:100%;
  width:100%;
  max-height:min(72vh, 720px);
  padding:28px;
  overflow:auto;
  border:1px solid rgba(83,46,61,.12);
  border-top:0;
  border-radius:0 0 15px 15px;
  background:radial-gradient(circle at 94% 0%, rgba(199,133,92,.13), transparent 28%), linear-gradient(145deg, rgba(255,253,250,.995), rgba(251,242,239,.995));
  color:#2b1c25;
  box-shadow:0 32px 84px rgba(63, 25, 43, .22);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(12px);
  transform-origin:top center;
  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
}

@media (hover: hover) and (pointer: fine){
  .modern-menu__item--has-children:hover .modern-menu__panel{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:translateY(0);
  }
}

.modern-menu__item.is-open .modern-menu__panel{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0);
}

.modern-menu__panel::before{
  display:none;
}

.modern-menu__panel-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  padding-bottom:20px;
  border-bottom:1px solid rgba(83,46,61,.11);
}

.modern-menu__panel-head div{
  display:grid;
  gap:4px;
}

.modern-menu__panel-head span{
  color:#9a7886;
  font-size:10px;
  font-weight:600;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.modern-menu__panel-head strong{
  color:#2b1c25;
  font-size:clamp(16px, 2vw, 18px);
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.025em;
}

.modern-menu__panel-head > a{
  min-height:38px;
  padding:0 15px;
  display:inline-flex;
  align-items:center;
  border-radius:15px;
  background:#2b1c25;
  color:#fff;
  font-size:12px;
  font-weight:600;
}

.modern-menu__mega-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:26px;
  margin-top:24px;
}

.modern-menu__mega-column{
  min-width:0;
}

.modern-menu__group + .modern-menu__group{
  margin-top:12px;
}

.modern-menu__group h3{
  margin:0 0 9px;
  font-size:14px;
  font-weight:600;
  line-height:1.35;
}

.modern-menu__group h3 a{
  color:#2b1c25;
}

.modern-menu__group h3 a:hover{
  color:#c23b6f;
}

.modern-menu__group ul{
  display:grid;
  gap:4px;
}

.modern-menu__group li a{
  display:block;
  padding:5px 0;
  color:#67535d;
  font-size:13px;
  font-weight:400;
  line-height:1.55;
}

.modern-menu__group li a:hover{
  color:#c23b6f;
}

@media (max-width: 1180px){
  .modern-menu{
    position:relative;
  }

  .modern-menu__inner{
    min-height:50px;
  }

  .modern-menu__home{
    width:44px;
    height:44px;
    flex-basis:44px;
    border-radius:14px;
  }

  .modern-menu__mobile-toggle{
    flex:1 1 auto;
    min-height:44px;
    padding:0 12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    border:0;
    background:transparent;
    color:#fff;
    font-weight:600;
  }

  .modern-menu__mobile-toggle > span{
    width:24px;
    display:grid;
    gap:5px;
  }

  .modern-menu__mobile-toggle i{
    display:block;
    height:2px;
    border-radius:15px;
    background:#fff;
  }

  .modern-menu__mobile-toggle b{
    font-size:14px;
    font-weight:600;
    text-transform:none;
    letter-spacing:0;
  }

  .modern-menu__scroll{
    position:absolute;
    left:0;
    right:0;
    max-height:0;
    overflow:auto;
    border:1px solid rgba(83,46,61,.10);
    background:#fffaf7;
    box-shadow:0 28px 75px rgba(63,25,43,.24);
    transition:max-height .3s ease;
  }

  .modern-menu.is-mobile-open .modern-menu__scroll{
    max-height:min(72vh,720px);
  }

  .modern-menu__list{
    display:block;
    padding:10px 14px 16px;
  }

  .modern-menu__item{
    position:relative;
    border-bottom:1px solid rgba(83,46,61,.09);
  }

  .modern-menu__link-row{
    justify-content:space-between;
  }

  .modern-menu__link{
    min-height:52px;
    justify-content:flex-start;
    padding:0 8px;
    color:#2b1c25;
    font-size:14px;
    font-weight:500;
    line-height:1.4;
    text-align:left;
  }

  .modern-menu__link:hover{
    color:#c23b6f;
    background:transparent;
  }

  .modern-menu__submenu-toggle{
    width:46px;
    height:46px;
    margin:0;
    color:#2b1c25;
  }

  .modern-menu__panel{
    position:static;
    width:auto;
    max-height:none;
    padding:0 8px 18px;
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
    display:none;
  }

  .modern-menu__item.is-open .modern-menu__panel{
    display:block;
    transform:none;
  }

  .modern-menu__panel-head{
    display:none;
  }

  .modern-menu__mega-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:4px;
  }

  .modern-menu__group h3{
    font-size:14px;
    font-weight:600;
  }
}

@media (max-width: 560px){
  .modern-menu__mega-grid{
    grid-template-columns:1fr;
  }
}

/* Readable menu typography — 2026 refresh */

.modern-menu__link, .modern-menu__panel, .modern-menu__mobile-toggle, .modern-menu__group a{
  font-family:inherit;
}

.modern-menu__link:focus-visible, .modern-menu__panel a:focus-visible, .modern-menu__submenu-toggle:focus-visible, .modern-menu__mobile-toggle:focus-visible{
  outline:3px solid rgba(255, 236, 226, .72);
  outline-offset:2px;
}

.modern-menu__group h3 a{
  font-weight:500;
}

.modern-menu__panel-head > a{
  letter-spacing:0;
}

@media (min-width: 1181px) and (max-width: 1380px){
  .modern-menu__link{
    font-size:11.5px;
    padding-inline:5px;
  }
}

/* Category hierarchy + uppercase navigation */

.modern-menu__link, .modern-menu__panel-head strong, .modern-menu__group h3 a, .modern-menu__group li a{
  text-transform:uppercase;
}

.modern-menu__link{
  letter-spacing:.035em;
}

.modern-menu__group h3 a{
  letter-spacing:.025em;
}

.modern-menu__group li a{
  letter-spacing:.015em;
}

/* Seamless mobile category drawer */

@media (max-width: 1180px){
  .modern-menu{
    margin:0;
    border:0;
  }

  .modern-menu__scroll{
    top:100%;
    border-top:0;
    border-radius:0 0 15px 15px;
  }

  .modern-menu.is-mobile-open .modern-menu__scroll{
    box-shadow:0 30px 72px rgba(63,25,43,.22);
  }
}

@media (max-width: 560px){
  .modern-menu__scroll{
    left:0;
    right:0;
  }
}

/* ===== Source section: product-grid.css ===== */

/* Category, article and related product grids */

.catalog-hero{
  min-height:142px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding:clamp(24px,3.4vw,42px);
  border-radius:10px;
  background:radial-gradient(circle at 92% 5%, rgba(185,46,104,.16), transparent 28%), linear-gradient(145deg,#faf8f9 0%,#eee8eb 100%);
  box-shadow:var(--shadow-sm);
}

.catalog-hero h1{
  max-width:880px;
  margin:7px 0 0;
  font-size:clamp(32px,4vw,50px);
  line-height:1;
  letter-spacing:-.045em;
}

.catalog-hero p{
  max-width:680px;
  margin:10px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}

.catalog-hero__count{
  flex:0 0 auto;
  min-width:auto;
  min-height:36px;
  display:inline-flex;
  align-items:center;
  padding:0 14px;
  border-radius:10px;
  background:#fff;
  border:1px solid var(--line);
  color:var(--muted);
  font-size:11px;
  font-weight:800;
  text-align:center;
}

.catalog-toolbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:24px 0;
}

.catalog-filter-toggle{
  display:none;
}

.catalog-sort{
  display:flex;
  align-items:center;
  gap:10px;
  margin-left:auto;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}

.catalog-sort select{
  min-width:210px;
  min-height:44px;
  padding:0 42px 0 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
  color:var(--ink);
}

.catalog-layout{
  display:grid;
  grid-template-columns:245px minmax(0,1fr);
  gap:28px;
  align-items:start;
}

.catalog-sidebar{
  position:sticky;
  top:86px;
  display:grid;
  gap:14px;
}

.catalog-sidebar__head{
  display:none;
}

.filter-block{
  padding:18px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}

.filter-block h2{
  margin:0 0 12px;
  font-size:13px;
}

.filter-options, .filter-block--categories ul{
  display:grid;
  gap:6px;
}

.filter-options a, .filter-block--categories li a{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:7px 9px;
  border-radius:9px;
  color:var(--muted);
  font-size:12px;
}

.filter-options a:hover, .filter-options a.is-selected, .filter-block--categories li a:hover{
  background:var(--surface);
  color:var(--accent);
}

.filter-range{
  padding-top:8px;
}

.filter-range__values{
  display:flex;
  justify-content:space-between;
  margin-top:12px;
  color:var(--muted);
  font-size:11px;
}

.catalog-products, .article-products .products-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:22px 18px !important;
  margin:0 !important;
}
.catalog-product-banner{grid-column:span 2;align-self:start;min-width:0;aspect-ratio:1300/1000;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);box-shadow:var(--shadow-sm);list-style:none}.catalog-product-banner__link,.catalog-product-banner__media{display:block;width:100%;height:100%}.catalog-product-banner__link:focus-visible{outline:3px solid rgba(180,0,78,.32);outline-offset:3px}.catalog-product-banner img{display:block;width:100%;height:100%;object-fit:cover}

.related-products-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px 18px !important;
  margin:0 !important;
}

.products-grid > li.item{
  min-width:0;
}

.product-card-luxe{
  position:relative;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  float:none !important;
  border:0 !important;
}

.product-card-luxe .item-cnt{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:6px 6px 16px;
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:5px;
  background:#fff;
  box-shadow:0 14px 38px rgba(28,18,26,.055);
  transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}

.product-card-luxe:hover .item-cnt{
  transform:translateY(-7px);
  border-color:rgba(185,46,104,.2);
  box-shadow:0 28px 65px rgba(28,18,26,.12);
}

.product-card-luxe .product-image{
  position:relative;
  width:100%;
  display:block;
  overflow:hidden;
  border-radius:10px;
}

.product-card-luxe .product-image img{
  display:block;
}

.product-image-placeholder{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  color:var(--muted);
  font-size:12px;
}

.product-card__view{
  position:absolute;
  left:12px;
  right:12px;
  bottom:12px;
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  border-radius:10px;
  background:rgba(22,18,24,.9);
  color:#fff;
  opacity:0;
  transform:translateY(8px);
  backdrop-filter:blur(12px);
  transition:opacity .25s ease, transform .25s ease;
}

.product-card-luxe:hover .product-card__view{
  opacity:1;
  transform:none;
}

.product-card-luxe .label_icon, .product-card-luxe .discount-badge{
  position:absolute;
  z-index:4;
  left:16px;
  top:16px;
  min-height:30px;
  padding:0 11px;
  display:inline-flex;
  align-items:center;
  border-radius:10px;
  background:var(--accent);
  color:#fff;
  font-size:10px;
  font-weight:800;
  box-shadow:0 8px 20px rgba(185,46,104,.18);
}

.product-card-luxe .label_icon.soldout{
  background:#4a454b;
}

.product-card__content{
  display:flex;
  flex:1;
  flex-direction:column;
  padding:15px 6px 0;
}

.product-card__eyebrow{
  color:var(--muted);
  font-size:9px;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.product-card-luxe .product-name{
  min-height:44px;
  margin:7px 0 8px;
  font-size:15px;
  line-height:1.45;
}

.product-card-luxe .product-name a{
  display:-webkit-box;
  overflow:hidden;
  color:var(--ink);
  font-size:15px;
  line-height:1.45;
  text-transform:none;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.product-card-luxe:hover .product-name a {
    /* color: var(--accent); */
}

.product-card-luxe .price-box{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:6px 9px;
  margin:auto 0 0;
  padding:0;
}

.product-card-luxe .old-price{
  width:auto;
  margin:0;
  color:#9b949c;
  font-size:12px;
  text-decoration:line-through;
}

.product-card-luxe .price{
  color:var(--ink);
  font-size:19px;
  letter-spacing:-.03em;
}

.product-card-luxe .button{
  width:100%;
  min-height:43px;
  margin-top:14px;
  padding:0 16px;
  background:linear-gradient(135deg, #4a2033, #6f2948);
  color:#fff;
  box-shadow:none;
}

.product-card-luxe .button:hover{
  background:var(--accent);
}

.empty-state{
  padding:70px 30px;
  border-radius:10px;
  background:var(--surface);
  text-align:center;
}

.empty-state > span{
  color:var(--accent);
  font-weight:800;
}

.empty-state h2{
  margin:10px 0;
  font-size:34px;
}

.empty-state p{
  color:var(--muted);
}

.empty-state a{
  display:inline-flex;
  margin-top:12px;
  font-weight:800;
}

.category-guide{
  margin-top:44px;
}

.category-guide__panel{
  overflow:hidden;
  border:1px solid rgba(50, 37, 44, .10);
  border-radius:10px;
  background:rgba(255, 255, 255, .76);
  box-shadow:0 12px 34px rgba(42, 26, 35, .045);
}

.category-guide__summary{
  position:relative;
  min-height:82px;
  padding:15px 18px;
  display:grid;
  grid-template-columns:minmax(240px, 1fr) auto auto;
  align-items:center;
  gap:18px;
  cursor:pointer;
  list-style:none;
  user-select:none;
  transition:background-color .2s ease, border-color .2s ease;
}

.category-guide__summary::-webkit-details-marker{
  display:none;
}

.category-guide__summary::marker{
  content:"";
}

.category-guide__summary:hover{
  background:#fffafc;
}

.category-guide__summary:focus-visible{
  outline:2px solid rgba(181, 46, 100, .32);
  outline-offset:-2px;
}

.category-guide__identity{
  min-width:0;
}

.category-guide__eyebrow{
  display:block;
  margin-bottom:4px;
  color:#a12e5c;
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;
  line-height:1.2;
  text-transform:uppercase;
}

.category-guide__identity h2{
  margin:0;
  color:#2e2329;
  font-size: clamp(15px, 1.6vw, 18px);
  font-weight:450;
  line-height:1.25;
  letter-spacing:-.025em;
}

.category-guide__facts{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  white-space:nowrap;
}

.category-guide__facts span{
  min-height:28px;
  padding:0 9px;
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(69, 49, 59, .08);
  border-radius:10px;
  background:#f8f4f6;
  color:#75646c;
  font-size:9px;
  font-weight:650;
  letter-spacing:.01em;
}

.category-guide__toggle{
  min-width:114px;
  min-height:36px;
  padding:0 10px 0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid rgba(69, 49, 59, .12);
  border-radius:10px;
  background:#fff;
  color:#4c3942;
  font-size:10px;
  font-weight:700;
}

.category-guide__toggle svg{
  width:15px;
  height:15px;
  flex:0 0 auto;
  transition:transform .22s ease;
}

.category-guide__toggle-close{
  display:none;
}

.category-guide__panel[open] .category-guide__summary{
  border-bottom:1px solid rgba(50, 37, 44, .08);
  background:#fffafc;
}

.category-guide__panel[open] .category-guide__toggle-open{
  display:none;
}

.category-guide__panel[open] .category-guide__toggle-close{
  display:inline;
}

.category-guide__panel[open] .category-guide__toggle svg{
  transform:rotate(180deg);
}

.category-guide__content{
  padding:18px 20px 22px;
}

.category-guide__intro{
  max-width:760px;
  margin:0 0 16px;
  color:#8a7780;
  font-size:12px;
  line-height:1.65;
}

.category-guide__body{
  min-width:0;
  color:#5f5057;
  font-size:13px;
  line-height:1.72;
  overflow-wrap:anywhere;
  column-count:2;
  column-gap:clamp(30px, 4vw, 52px);
  column-rule:1px solid rgba(69, 49, 59, .07);
}

.category-guide__body > :first-child{
  margin-top:0;
}

.category-guide__body > :last-child{
  margin-bottom:0;
}

.category-guide__body p{
  margin:0 0 1em;
  break-inside:avoid;
}

.category-guide__body h2, .category-guide__body h3, .category-guide__body h4{
  margin:1.25em 0 .55em;
  break-after:avoid;
  color:#30242a;
  font-weight:650;
  line-height:1.28;
  letter-spacing:-.018em;
}

.category-guide__body h2{
  font-size:18px;
}

.category-guide__body h3{
  font-size:15px;
}

.category-guide__body h4{
  font-size:14px;
}

.category-guide__body ul, .category-guide__body ol{
  margin:0 0 1em;
  padding-left:1.15em;
  break-inside:avoid;
}

.category-guide__body ul{
  list-style:disc;
}

.category-guide__body ol{
  list-style:decimal;
}

.category-guide__body li + li{
  margin-top:.3em;
}

.category-guide__body a{
  color:#a82f5f;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.category-faq{
  margin-top:32px;
  padding-top:34px;
  border-top:1px solid var(--line);
}

.category-faq__header{
  max-width:760px;
  margin-bottom:22px;
}

.category-faq__header > span{
  display:block;
  margin-bottom:6px;
  color:var(--accent);
  font-size:10px;
  font-weight:800;
  letter-spacing:.14em;
}

.category-faq__header h2{
  margin:0;
  color:var(--ink);
  font-size:clamp(14px, 2.4vw, 22px);
  line-height:1.2;
  letter-spacing:-.03em;
  text-wrap:balance;
}

.category-faq__header p{
  margin:8px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.65;
}

.category-faq__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  align-items:start;
  gap:12px 16px;
}

.category-faq__item{
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(83, 46, 61, .14);
  border-radius:14px;
  background:#fff;
  box-shadow:0 8px 24px rgba(74, 32, 51, .045);
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.category-faq__item[open]{
  border-color:transparent;
  background:linear-gradient(135deg, var(--ink) 0%, var(--accent-2) 100%);
  box-shadow:0 16px 34px rgba(74, 32, 51, .16);
  color:#fff;
}

.category-faq__item summary{
  min-height:68px;
  padding:12px 14px 12px 16px;
  display:grid;
  grid-template-columns:30px minmax(0, 1fr) 38px;
  align-items:center;
  gap:10px;
  cursor:pointer;
  list-style:none;
}

.category-faq__item summary::-webkit-details-marker{
  display:none;
}

.category-faq__item summary::marker{
  content:"";
}

.category-faq__item summary:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:-3px;
}

.category-faq__number{
  color:var(--accent);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
}

.category-faq__question{
  min-width:0;
  color:var(--ink);
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  overflow-wrap:anywhere;
}

.category-faq__icon{
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:var(--ink);
  color:#fff;
}

.category-faq__icon svg{
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
  stroke-linecap:round;
}

.category-faq__icon-vertical{
  transition:opacity .18s ease, transform .18s ease;
  transform-origin:center;
}

.category-faq__item[open] .category-faq__number, .category-faq__item[open] .category-faq__question{
  color:#fff;
}

.category-faq__item[open] .category-faq__icon{
  background:#fff;
  color:var(--accent-2);
}

.category-faq__item[open] .category-faq__icon-vertical{
  opacity:0;
  transform:rotate(90deg);
}

.category-faq__answer{
  padding:0 58px 18px 56px;
  color:rgba(255, 255, 255, .9);
  font-size:13px;
  line-height:1.72;
  overflow-wrap:anywhere;
}

.category-faq__answer p{
  margin:0;
}

@media (max-width: 820px){
  .category-faq__grid{
    grid-template-columns:1fr;
  }
}

@media (max-width: 540px){
  .category-faq{
    margin-top:28px;
    padding-top:28px;
  }

  .category-faq__header{
    margin-bottom:16px;
  }

  .category-faq__item summary{
    min-height:62px;
    padding:10px 10px 10px 12px;
    grid-template-columns:25px minmax(0, 1fr) 36px;
    gap:8px;
  }

  .category-faq__question{
    font-size:13px;
  }

  .category-faq__answer{
    padding:0 46px 16px 45px;
    font-size:12px;
  }
}

@media (prefers-reduced-motion: reduce){
  .category-faq__item, .category-faq__icon-vertical{
    transition:none;
  }
}

.related-products-section > header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:24px;
  margin-bottom:26px;
}

.related-products-section h2{
  margin:8px 0 0;
  font-size:clamp(32px,4vw,50px);
  line-height:1;
  letter-spacing:-.05em;
}

@media (max-width: 1050px){
  .catalog-layout{
    grid-template-columns:1fr;
  }

  .catalog-filter-toggle{
    min-height:44px;
    padding:0 16px;
    display:inline-flex;
    align-items:center;
    gap:12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
    color:var(--ink);
    font-weight:800;
  }

  .catalog-sidebar{
    position:fixed;
    z-index:10000;
    left:0;
    top:0;
    bottom:0;
    width:min(360px,88vw);
    padding:18px;
    overflow-y:auto;
    background:#fff;
    box-shadow:30px 0 70px rgba(20,15,20,.2);
    transform:translateX(-105%);
    transition:transform .3s ease;
  }

  .catalog-sidebar.is-open{
    transform:none;
  }

  .catalog-sidebar__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom:8px;
    padding:8px;
  }

  .catalog-sidebar__head button{
    width:38px;
    height:38px;
    border:1px solid var(--line);
    border-radius:50%;
    background:#fff;
  }

  .catalog-products, .article-products .products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .related-products-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }

  .category-guide__summary{
    grid-template-columns:1fr auto;
    gap:12px;
  }

  .category-guide__facts{
    display:none;
  }

  .category-guide__body{
    column-count:1;
  }
}

@media (max-width: 650px){
  .catalog-hero{
    align-items:flex-start;
    flex-direction:column;
    min-height:0;
    padding:28px 22px;
    border-radius:10px;
  }

  .catalog-hero h1{
    font-size:34px;
  }

  .catalog-hero__count{
    min-width:auto;
    min-height:34px;
  }

  .catalog-toolbar{
    align-items:stretch;
  }

  .catalog-sort{
    flex:1;
  }

  .catalog-sort select{
    min-width:0;
    width:100%;
  }

  .catalog-products, .related-products-grid, .article-products .products-grid{
    gap:14px 10px !important;
  }

  .related-products-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }

  .product-card-luxe .item-cnt{
    padding:4px 4px 12px;
    border-radius:10px;
  }

  .product-card-luxe .product-image{
    border-radius:14px;
  }

  .product-card-luxe .product-image img{
    padding:1px;
    transform:scale(1.08);
  }

  .product-card__content{
    padding:11px 4px 0;
  }

  .product-card__eyebrow{
    display:none;
  }

  .product-card-luxe .product-name{
    min-height:40px;
    margin-top:0;
  }

  .product-card-luxe .product-name a{
    font-size:12px;
    line-height:1.4;
  }

  .product-card-luxe .price{
    font-size:15px;
  }

  .product-card-luxe .old-price{
    font-size:10px;
  }

  .product-card-luxe .button{
    min-height:39px;
    margin-top:10px;
    padding:0 9px;
    font-size:11px;
  }

  .product-card__view{
    display:none;
  }

  .product-card-luxe .label_icon, .product-card-luxe .discount-badge{
    left:9px;
    top:9px;
    min-height:25px;
    padding:0 8px;
    font-size:8px;
  }

  .category-guide{
    margin-top:30px;
  }

  .category-guide__panel{
    border-radius:10px;
  }

  .category-guide__summary{
    min-height:70px;
    padding:12px 13px;
    gap:9px;
  }

  .category-guide__identity h2{
    font-size:15px;
    line-height:1.3;
  }

  .category-guide__eyebrow{
    margin-bottom:3px;
    font-size:8px;
  }

  .category-guide__toggle{
    min-width:38px;
    width:38px;
    height:38px;
    padding:0;
  }

  .category-guide__toggle-open, .category-guide__toggle-close{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }

  .category-guide__content{
    padding:15px 14px 18px;
  }

  .category-guide__intro{
    margin-bottom:12px;
    font-size:11px;
  }

  .category-guide__body{
    font-size:12px;
    line-height:1.68;
  }
}

/* Makale altındaki ürünler: eski float kurallarından tamamen ayrıştırılır. */

.article-products--premium .article-products-grid{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:22px 18px !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  clear:both !important;
  list-style:none !important;
}

.article-products--premium .article-products-grid > li.item, .article-products--premium .article-products-grid > .product-card-luxe{
  position:relative !important;
  display:block !important;
  float:none !important;
  clear:none !important;
  width:auto !important;
  min-width:0 !important;
  height:auto !important;
  margin:0 !important;
  padding:0 !important;
}

.article-products--premium .article-products-grid .item-cnt{
  width:100% !important;
  height:100% !important;
}

@media (max-width: 980px){
  .article-products--premium .article-products-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px){
  .article-products--premium .article-products-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px 10px !important;
  }
}

/* Product cards styles */

.product-card-luxe .product-image img{
  transition:opacity .35s ease,transform .5s ease,filter .5s ease;
}

.product-card-luxe .product-image__primary{
  position:relative;
  z-index:1;
  opacity:1;
}

.product-card-luxe .product-image--blurred img{
  filter:blur(12px);
}

.product-card-luxe .product-image--blurred:hover img,
.product-card-luxe .product-image--blurred:focus-visible img,
.product-card-luxe .product-image--blurred:focus-within img{
  filter:none;
}

.product-card-luxe .product-image__secondary{
  position:absolute;
  z-index:2;
  inset:0;
  opacity:0;
}

.product-card-luxe.has-secondary-loaded:hover .product-image__primary{
  opacity:0;
}

.product-card-luxe.has-secondary-loaded:hover .product-image__secondary{
  opacity:1;
}

.product-card__view{
  z-index:3;
  font-size:12px;
  font-weight:500;
}

.product-card-luxe .product-name a{
  font-weight:600;
}

.product-card-luxe .price{
  font-weight:700;
}

.product-card-luxe .button{
  font-size:13px;
  font-weight:500;
  letter-spacing:0;
  text-transform:none;
}

@media (hover:none){
  .product-card-luxe .product-image__secondary{
    display:none;
  }

  .product-card-luxe .product-image__primary{
    opacity:1 !important;
  }
}

/* 650x813 product image fit */

.product-card-luxe .product-image{
  aspect-ratio:650 / 813;
  background:#fff;
}

.product-card-luxe .product-image img{
  width:100%;
  height:100%;
  padding:0;
  object-fit:cover;
  object-position:center;
  transform:none;
  filter:none;
}

.product-card-luxe:hover .product-image img{
  transform:scale(1.018);
  filter:none;
}

.product-card-luxe .product-image.product-image--blurred img{
  filter:blur(12px);
}

.product-card-luxe:hover .product-image.product-image--blurred img,
.product-card-luxe .product-image.product-image--blurred:focus-visible img,
.product-card-luxe .product-image.product-image--blurred:focus-within img{
  filter:none;
}

.product-card-luxe .product-image__secondary{
  transform:none;
}

.product-card-luxe.has-secondary-loaded:hover .product-image__secondary{
  transform:scale(1.018);
}

@media (max-width:560px){
  .product-card-luxe .product-image img{
    padding:0;
    transform:none;
  }
}

/* Mobile two-column product density */

@media (max-width: 650px){
  .catalog-results{
    width:auto;
    margin-inline:-12px;
  }

  .catalog-products{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:10px 5px !important;
  }

  .catalog-products .product-card-luxe .item-cnt{
    padding:2px 2px 10px;
    border-radius:10px;
  }

  .catalog-products .product-card-luxe .product-image{
    width:100%;
    aspect-ratio:650 / 813;
    border-radius:13px;
    background:#fff;
  }

  .catalog-products .product-card-luxe .product-image img{
    width:100%;
    height:100%;
    padding:0;
    object-fit:contain;
    object-position:center;
    transform:none;
  }

  .catalog-products .product-card__content{
    padding:9px 3px 0;
  }

  .catalog-products .product-card-luxe .product-name{
    min-height:36px;
  }

  .catalog-products .product-card-luxe .product-name a{
    font-size:11px;
    line-height:1.35;
	color: #000;
  }

  .catalog-products .product-card-luxe .price{
    font-size:14px;
  }
}

/* Optional category cover visual */

.catalog-hero.has-cover{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(210px,300px) auto;
  overflow:hidden;
}

.catalog-hero__copy{
  min-width:0;
  position:relative;
  z-index:2;
}

.catalog-hero__cover{
  width:100%;
  height:116px;
  margin:0;
  overflow:hidden;
  border-radius:10px;
  background:#eee8eb;
  box-shadow:0 10px 28px rgba(35,24,31,.08);
}

.catalog-hero__cover img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.catalog-hero.has-cover .catalog-hero__count{
  position:relative;
  z-index:2;
}

@media (max-width:850px){
  .catalog-hero.has-cover{
    grid-template-columns:minmax(0,1fr) minmax(160px,220px);
  }

  .catalog-hero.has-cover .catalog-hero__count{
    grid-column:1/-1;
    justify-self:start;
  }

  .catalog-hero__cover{
    height:106px;
  }
}

@media (max-width:650px){
  .catalog-hero.has-cover{
    grid-template-columns:minmax(0,1fr) 112px;
    gap:14px;
  }

  .catalog-hero__cover{
    height:94px;
    border-radius:10px;
  }

  .catalog-hero.has-cover .catalog-hero__count{
    grid-column:1/-1;
  }
}

/* Product card badges, compact rating and cleaner related section */

.product-card-badge{
  flex-direction:column;
  justify-content:center;
  font-size:7.5px;
  font-weight:900;
  line-height:1.04;
  letter-spacing:.01em;
}

.product-card-badge b{
  font-size:14px;
  line-height:1;
}

.product-card-luxe .discount-badge{
  left:auto;
  right:10px;
  top:10px;
}

.product-card-rating{
  display:flex;
  align-items:center;
  gap:5px;
  margin:0 0 7px;
  color:#342a2f;
  font-size:10px;
  line-height:1;
}

.product-card-rating strong{
  font-size:11px;
}

.product-card-rating span{
  color:#ffb400;
  letter-spacing:-.03em;
  font-size:11px;
}

.product-card-rating small{
  color:#756c71;
  font-size:9px;
}

.related-products-section{
  margin-top:48px;
  padding-top:18px;
  border-top:1px solid rgba(69,49,59,.08);
}

.related-products-head{
  display:flex !important;
  align-items:end !important;
  justify-content:space-between !important;
  gap:20px !important;
  margin-bottom:18px !important;
}

.related-products-head>div>span{
  color:#a52d5b;
  font-size:9px;
  font-weight:800;
  letter-spacing:.14em;
}

.related-products-section .related-products-head h2{
  margin:4px 0 0;
  font-size:clamp(18px,1vw,20px);
  line-height:1.05;
  letter-spacing:-.035em;
}

.related-products-head p{
  max-width:390px;
  margin:0;
  color:#8a7a82;
  font-size:11px;
  line-height:1.55;
  text-align:right;
}

@media (max-width:650px){
  .product-card-badge{
    width:54px;
    font-size:6px;
  }

  .product-card-badge b{
    font-size:11px;
  }

  .product-card-rating{
    gap:3px;
    margin-bottom:5px;
  }

  .product-card-rating span{
    font-size:9px;
  }

  .product-card-rating strong{
    font-size:10px;
  }

  .related-products-head{
    align-items:start !important;
    flex-direction:column;
    gap:6px !important;
  }

  .related-products-head p{
    text-align:left;
  }

  .related-products-section{
    margin-top:34px;
  }
}

.rating-stars-visual{
  position:relative;
  display:inline-block;
  width:5.25em;
  height:1em;
  line-height:1;
  font-family:Arial,sans-serif;
  letter-spacing:.05em;
  color:#d5d2d4;
  white-space:nowrap;
  overflow:hidden;
}

.rating-stars-visual:before{
  content:"★★★★★";
  position:absolute;
  inset:0;
  color:#d5d2d4;
}

.rating-stars-visual:after{
  content:"★★★★★";
  position:absolute;
  left:0;
  top:0;
  width:var(--rating-pct,0%);
  overflow:hidden;
  color:#ffb400;
  white-space:nowrap;
}

.product-card-rating .rating-stars-visual{
  font-size:11px;
}

/* Premium product card collection labels */

.product-card-badge{
  grid-template-columns:31px minmax(0,1fr);
}

.product-card-badge::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.62),transparent);
  pointer-events:none;
}

.product-card-badge__icon{
  width:31px;
  height:31px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:rgba(255,255,255,.15);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.11);
}

.product-card-badge__icon svg{
  width:16px;
  height:16px;
  display:block;
}

.product-card-badge__copy{
  display:grid;
  gap:2px;
  min-width:0;
}

.product-card-badge__copy small{
  overflow:hidden;
  color:rgba(255,255,255,.72);
  font-size:5.8px;
  line-height:1;
  font-weight:750;
  letter-spacing:.09em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.product-card-badge__copy em{
  overflow:hidden;
  max-width:none;
  color:#fff;
  font-style:normal;
  font-size:8.3px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:.015em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.product-card-badge--advantage{
  border-color:rgba(173,226,197,.42);
}

.product-card-badge--advantage .product-card-badge__icon{
  color:#d6f5e4;
}

.product-card-badge--bestseller{
  border-color:rgba(249,218,154,.42);
}

.product-card-badge--bestseller .product-card-badge__icon{
  color:#ffe2a4;
}

.product-card-badge--flash{
  border-color:rgba(222,178,228,.42);
}

.product-card-badge--flash .product-card-badge__icon{
  color:#efd5f2;
}

@media (max-width:650px){
  .product-card-badge{
    grid-template-columns:25px minmax(0,1fr);
  }

  .product-card-badge__icon{
    width:25px;
    height:25px;
    border-radius:8px;
  }

  .product-card-badge__icon svg{
    width:13px;
    height:13px;
  }

  .product-card-badge__copy small{
    font-size:4.8px;
    letter-spacing:.07em;
  }

  .product-card-badge__copy em{
    font-size:6.8px;
  }
}

/* Minimal premium product labels */

.product-card-badge{
  position:absolute;
  z-index:6;
  left:0;
  top:0;
  width:auto;
  max-width:132px;
  height:27px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 10px 0 7px;
  border:0;
  border-right:1px solid rgba(38,29,34,.08);
  border-bottom:1px solid rgba(38,29,34,.08);
  border-radius:0 0 8px 0;
  background:rgba(255,253,252,.94);
  color:#30272c;
  box-shadow:0 5px 14px rgba(25,18,22,.07);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  overflow:hidden;
  text-align:left;
}

.product-card-badge::after{
  display:none;
}

.product-card-badge__mark{
  flex:none;
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
}

.product-card-badge em{
  overflow:hidden;
  max-width:108px;
  color:inherit;
  font-style:normal;
  font-size:8px;
  line-height:1;
  font-weight:820;
  letter-spacing:.055em;
  white-space:nowrap;
  text-overflow:ellipsis;
}

.product-card-badge--advantage{
  color:#176c49;
  background:rgba(248,253,250,.95);
}

.product-card-badge--bestseller{
  color:#9a5b0a;
  background:rgba(255,252,245,.96);
}

.product-card-badge--flash{
  color:#773565;
  background:rgba(253,248,252,.96);
}

@media (max-width:650px){
  .product-card-badge{
    left:0;
    top:0;
    max-width:105px;
    height:23px;
    gap:5px;
    padding:0 7px 0 5px;
    border-radius:0 0 7px 0;
  }

  .product-card-badge__mark{
    width:4px;
    height:4px;
  }

  .product-card-badge em{
    max-width:89px;
    font-size:6.6px;
    letter-spacing:.045em;
  }
}

/* ===== Source section: brand-logos.css ===== */

/* Optional footer brand logo marquee */

.brand-logo-rail{
  position:relative;
  overflow:hidden;
  margin-top:clamp(34px,5vw,72px);
  padding:22px 0 24px;
  border-top:1px solid rgba(73,45,59,.07);
  border-bottom:1px solid rgba(73,45,59,.08);
  background:radial-gradient(circle at 12% 20%,rgba(255,255,255,.95),rgba(255,255,255,0) 32%), linear-gradient(180deg,#faf6f8 0%,#f4edf1 100%);
}

.brand-logo-rail__shell{
  display:grid;
  grid-template-columns:minmax(150px,220px) minmax(0,1fr);
  gap:24px;
  align-items:center;
}

.brand-logo-rail__intro{
  display:grid;
  gap:5px;
}

.brand-logo-rail__intro span{
  color:#a52d5b;
  font-size:9px;
  font-weight:850;
  letter-spacing:.18em;
}

.brand-logo-rail__intro strong{
  color:#2d2027;
  font-size:14px;
  line-height:1.2;
}

.brand-logo-rail__viewport{
  min-width:0;
  overflow:hidden;
  mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);
}

.brand-logo-rail__track{
  display:flex;
  width:max-content;
  animation:brandLogoMarquee var(--brand-marquee-duration,32s) linear infinite;
  will-change:transform;
}

.brand-logo-rail__track.is-static{
  animation:none;
}

.brand-logo-rail__group{
  display:flex;
  align-items:center;
  gap:14px;
  padding-right:14px;
}

.brand-logo-card{
  width:clamp(150px,13vw,205px);
  height:82px;
  flex:0 0 auto;
  display:grid;
  place-items:center;
  padding:14px 20px;
  border:1px solid rgba(70,45,58,.07);
  border-radius:15px;
  background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(250,247,249,.92));
  box-shadow:0 10px 24px rgba(42,27,37,.055),inset 0 1px 0 rgba(255,255,255,.98);
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;
}

.brand-logo-card:hover{
  transform:translateY(-2px);
  border-color:rgba(165,45,91,.18);
  box-shadow:0 14px 30px rgba(42,27,37,.09),inset 0 1px 0 #fff;
}

.brand-logo-card img{
  display:block;
  max-width:100%;
  max-height:50px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter:saturate(.94);
  transition:filter .2s ease,opacity .2s ease;
}

.brand-logo-card:hover img{
  filter:saturate(1.05);
}

.brand-logo-rail__viewport:hover .brand-logo-rail__track{
  animation-play-state:paused;
}

@keyframes brandLogoMarquee{
  from{
    transform:translateX(0);
  }

  to{
    transform:translateX(-50%);
  }
}

@media (max-width:760px){
  .brand-logo-rail{
    margin-top:30px;
    padding:16px 0 18px;
  }

  .brand-logo-rail__shell{
    grid-template-columns:1fr;
    gap:12px;
  }

  .brand-logo-rail__intro{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
  }

  .brand-logo-rail__intro strong{
    font-size:14px;
  }

  .brand-logo-card{
    width:136px;
    height:64px;
    padding:10px 14px;
    border-radius:15px;
  }

  .brand-logo-card img{
    max-height:38px;
  }

  .brand-logo-rail__group{
    gap:9px;
    padding-right:9px;
  }
}

@media (prefers-reduced-motion:reduce){
  .brand-logo-rail__track{
    animation:none;
  }

  .brand-logo-rail__viewport{
    overflow-x:auto;
    mask-image:none;
    -webkit-mask-image:none;
  }
}
