/* ============================================================
   MERCER — Catalog
   Tokens taken 1:1 from the reference build
   ============================================================ */

:root{
  --ink:      #151412;
  --cream:    #f4f0e8;
  --paper:    #faf6ef;
  --line:     #d8d4cc;
  --hairline: #2b29251f;
  --orange:   #ff5b24;
  --white:    #fff;

  /* Vahid vurğu rəngi — nişan, hover və fokus halqası eyni ailədən. */
  --accent:   #ff5b24;

  /* Yumşaq səth sistemi — nav, bölmələr və futer eyni enlikdədir,
     kənarda həmişə --gutter qədər hava qalır, künclər yumşaq kəsilir. */
  --gutter:    16px;
  --r-surface: 36px;
  --r-nav:     24px;
  --surface-max: 1200px;         /* bölmələrin eni — loqo da bu xəttə düzülür */
  --surface-pad: 36px;           /* bölmənin daxili kənar boşluğu */
  --nav-h:       64px;
  --ink-soft:  #201e1a;          /* futer səthi — tam qara deyil */
  --lift: 0 10px 26px -24px rgba(21,20,18,.3);
  --lift-nav: 0 8px 20px -20px rgba(21,20,18,.32);

  --sans: "Poppins", Arial, sans-serif;
  --serif: "Fraunces", Georgia, serif;
  --ease: cubic-bezier(.22, 1, .36, 1);
}

*, *::before, *::after{ box-sizing:border-box; }

html, body{ margin:0; padding:0; }

:root{
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

body{
  background:var(--cream);
  color:var(--ink);
  font-family:var(--sans);
  font-size:12px;
}

h1, h2, h3, p, figure{ margin:0; }

img{ max-width:100%; }

::selection{ background:var(--ink); color:var(--cream); }


/* ============================================================
   NAVIGATION
   ============================================================ */

.nav{
  position:sticky;
  top:0;
  z-index:60;
  width:100%;
  padding:var(--gutter) var(--gutter) 0;
  background:transparent;
}

/* Barda yalnız linklər və nişanlar var; loqo ayrıca dayanır,
   ona görə pill pəncərənin tam ortasında qalır. */
.nav-shell{
  position:relative;
  z-index:2;               /* menyu fonu (1) altda qalsın */
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  max-width:var(--surface-max);
  margin:0 auto;
  padding:0 var(--surface-pad);
}

.nav-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:36px;
  width:fit-content;
  max-width:100%;
  height:var(--nav-h);
  padding:0 14px 0 22px;
  border-radius:var(--r-nav);
  overflow:clip;
  background:transparent;
  box-shadow:0 0 0 0 transparent;
  transition:background .45s var(--ease), box-shadow .45s var(--ease),
             backdrop-filter .45s var(--ease);
}

/* Səhifənin başındaykən bar görünmür; sürüşdürəndə arxası
   bulanıqlaşır və bar səthə çıxır (sinfi app.js qoyur). */
.nav.is-stuck .nav-row{
  background:rgba(250,246,239,.93);
  box-shadow:var(--lift-nav), inset 0 0 0 1px rgba(21,20,18,.04);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
  backdrop-filter:blur(20px) saturate(150%);
}

/* Loqo naviqasiyanın içində deyil — səhifənin yuxarısına
   bağlıdır, ona görə sürüşdürəndə barla birlikdə gəzmir,
   sadəcə yuxarıda qalıb ekrandan çıxır. Sol xətti bölmələrin
   daxili kənarı ilə eynidir. */
.brand{
  position:absolute;
  top:calc(var(--gutter) + var(--nav-h) / 2);
  left:calc(max(var(--gutter), (100% - var(--surface-max)) / 2) + var(--surface-pad));
  z-index:61;                    /* nav-dan (60) yuxarı — üst-üstə düşməsin */
  transform:translateY(-50%);
  display:block;
  max-width:100%;
  overflow:hidden;
  color:var(--ink);
  font-family:var(--sans);
  font-size:17px;
  font-weight:700;
  line-height:1;
  letter-spacing:.14em;
  text-decoration:none;
  text-overflow:ellipsis;
  white-space:nowrap;
  transition:opacity .2s ease, transform .2s var(--ease);
}
.brand:hover{ opacity:.68; }

.nav-links{
  display:flex;
  align-items:center;
  gap:28px;
  width:min-content;
  min-width:312px;              /* ən uzun dil (AZ) qədər — dillər arası sıçrayış olmasın */
  justify-content:center;
}

.nav-links a{
  color:var(--ink);
  font-size:14px;
  font-weight:500;
  line-height:1em;
  text-decoration:none;
  white-space:nowrap;
  transition:color .18s var(--ease);
}
.nav-links a:hover{ color:var(--orange); }

.nav-actions{
  display:flex;
  align-items:center;
  gap:8px;
  width:min-content;
}

.icon-btn{
  position:relative;
  display:grid;
  place-items:center;
  flex:none;
  width:40px;
  height:40px;
  padding:8px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  cursor:pointer;
  text-decoration:none;
  transition:background .2s ease, transform .2s var(--ease);
}
.icon-btn:hover{ background:rgba(21,20,18,.08); transform:translateY(-1px); }
.icon-btn:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }
.icon-btn.is-current{ color:var(--orange); }

.icon-btn svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.cart-count{
  position:absolute;
  right:-2px;
  top:-2px;
  min-width:18px;
  height:18px;
  display:grid;
  place-items:center;
  padding:0 5px;
  border:2px solid var(--paper);
  border-radius:999px;
  background:var(--accent);
  color:var(--paper);
  font-size:10px;
  font-weight:700;
  line-height:1;
}
.cart-count[hidden]{ display:none; }


/* ---- dil seçicisi ---- */

.lang-switch{
  display:flex;
  align-items:center;
  flex:none;
  gap:2px;
  padding:3px;
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(21,20,18,.12);
}

/* Naviqasiyadakı seçici barın enindən asılı olmasın deyə ekranın
   sağ kənarına bərkidilir — loqonun güzgü tayı. Dil dəyişəndə
   sözlərin uzunluğu dəyişsə də seçici yerində qalır.

   DİQQƏT: markupda .nav-row-un İÇİNDƏ olmamalıdır — bar sürüşəndə
   ora backdrop-filter düşür, filtrli valideyn isə position:fixed
   üçün yeni çərçivə yaradır və seçici sıçrayır. */
.lang-switch-top{
  position:fixed;
  top:calc(var(--gutter) + var(--nav-h) / 2);
  right:calc(max(var(--gutter), (100% - var(--surface-max)) / 2) + var(--surface-pad));
  z-index:61;
  transform:translateY(-50%);
  background:transparent;
  transition:background .45s var(--ease), box-shadow .45s var(--ease),
             -webkit-backdrop-filter .45s var(--ease), backdrop-filter .45s var(--ease);
}
/* sürüşdürəndə barla eyni səthi alır ki, məzmunun üstündə oxunaqlı qalsın */
.nav.is-stuck .lang-switch-top{
  background:rgba(250,246,239,.93);
  box-shadow:var(--lift-nav), inset 0 0 0 1px rgba(21,20,18,.08);
  -webkit-backdrop-filter:blur(20px) saturate(150%);
  backdrop-filter:blur(20px) saturate(150%);
}
.lang-opt{
  display:grid;
  place-items:center;
  min-width:29px;
  height:24px;
  padding:0 6px;
  border-radius:999px;
  color:rgba(21,20,18,.5);
  font-size:10.5px;
  font-weight:650;
  letter-spacing:.06em;
  text-decoration:none;
  transition:color .2s var(--ease), background .2s var(--ease);
}
.lang-opt:hover{ color:var(--ink); }
.lang-opt.is-on{ background:var(--ink); color:var(--paper); }
.lang-opt:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }

/* mobil menyudakı variant böyük menyu linklərinə oxşamamalıdır */
.lang-switch-menu{
  align-self:flex-start;
  margin-top:12px;
}
.mobile-menu .lang-switch a{
  padding:0 6px;
  font-size:10.5px;
  font-weight:650;
}
.mobile-menu .lang-switch a:hover{ color:var(--ink); }
.mobile-menu .lang-switch a.is-on{ color:var(--paper); }

.menu-trigger{ display:none; }

.mobile-menu{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:2px;
  max-width:1200px;
  margin:8px auto 0;
  padding:12px 18px 16px;
  border-radius:var(--r-nav);
  background:rgba(250,246,239,.9);
  box-shadow:var(--lift);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  backdrop-filter:blur(18px) saturate(140%);
}
.mobile-menu a{
  padding:10px 0;
  color:var(--ink);
  font-size:15px;
  font-weight:500;
  text-decoration:none;
}
.mobile-menu a:hover{ color:var(--orange); }
.mobile-menu[hidden]{ display:none; }

/* Menyu açılanda naviqasiyadan başqa hər şey bulanıqlaşır.
   z-index nav-dan (60) aşağı, səhifə məzmunundan yuxarıdır,
   ona görə bar və panel kəskin qalır. */
.menu-backdrop{
  position:fixed;
  inset:0;
  z-index:1;               /* nav-ın öz kontekstində bardan aşağı */
  background:rgba(21,20,18,.16);
  -webkit-backdrop-filter:blur(14px) saturate(120%);
  backdrop-filter:blur(14px) saturate(120%);
  animation:cart-fade .3s var(--ease) both;
}
.menu-backdrop[hidden]{ display:none; }


/* ============================================================
   SOSIAL LENT  —  Instagram / WhatsApp / TikTok

   Dar ekranda naviqasiyanın altında sola sıralanmış sətirdir;
   ≥1000px-də sol kənarda sabit şaquli lentə çevrilir — məhz o
   enlikdən sonra kataloq blokunun yanında lentin sığacağı
   boşluq qalır, ona görə heç vaxt mətnin üstünə düşmür.

   Ölçü və hover .icon-btn ilə eynidir ki, nav nişanları ilə
   bir ailə kimi oxunsun.
   ============================================================ */

.social-rail{
  display:flex;
  align-items:center;
  gap:8px;
  max-width:1200px;
  margin:0 auto;
  /* sol padding = bölmənin paddingi (36) − nişanın öz boşluğu (11) */
  padding:14px 36px 0 25px;
}

.social-rail-list{
  display:flex;
  align-items:center;
  gap:4px;
  margin:0;
  padding:0;
  list-style:none;
}

/* nazik ayırıcı — yalnız sabit lentdə görünür */
.social-rail-line{ display:none; }

.social-dot{
  position:relative;
  display:grid;
  place-items:center;
  width:44px;
  height:44px;
  border-radius:999px;
  color:var(--ink);
  text-decoration:none;
  transition:background .2s ease, color .18s var(--ease), transform .2s var(--ease);
}
.social-dot:hover{
  background:rgba(21,20,18,.08);
  color:var(--orange);
  transform:translateY(-1px);
}
.social-dot:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }

.social-dot svg{
  width:22px;
  height:22px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.social-dot .ig-dot{ fill:currentColor; stroke:none; }

/* ad — .footer-heading ilə eyni tipoqrafiya, nişanın yanında açılır */
.social-tip{
  position:absolute;
  top:50%;
  left:calc(100% + 10px);
  padding:5px 9px;
  border-radius:999px;
  background:var(--ink-soft);
  color:var(--paper);
  font-family:var(--sans);
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transform:translate(-5px, -50%);
  transition:opacity .2s var(--ease), transform .25s var(--ease);
}

@media (max-width:1319.98px){
  .social-tip{ display:none; }
}

/* dar ekranlarda sətir bölmənin sol xətti ilə üst-üstə düşür */
@media (min-width:810px) and (max-width:1199.98px){
  .social-rail{ max-width:810px; padding:14px 28px 0 17px; }
}
@media (max-width:809.98px){
  .social-rail{ max-width:390px; padding:12px 18px 0 7px; }
}

/* Səth 1200px-dən enlidir; lent yalnız kənarda ona toxunmayacaq
   qədər krem boşluq qalanda sabit lentə çevrilir və həmin
   boşluğun ortasına düşür. */
@media (min-width:1320px){
  .social-rail{
    position:fixed;
    top:50%;
    left:calc((100% - 1200px) / 4 - 22px);
    z-index:50;           /* nav-dan (60) və səbətdən (90+) aşağı */
    flex-direction:column;
    gap:14px;
    padding:0;
    transform:translateY(-50%);
  }
  .social-rail-list{ flex-direction:column; gap:6px; }
  .social-rail-line{
    display:block;
    width:1px;
    height:36px;
    background:rgba(21,20,18,.18);
  }
  .social-dot:hover .social-tip,
  .social-dot:focus-visible .social-tip{
    opacity:1;
    transform:translate(0, -50%);
  }
}


/* ============================================================
   CATALOG SECTION
   ============================================================ */

.catalog-section{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:46px;
  width:100%;
  max-width:1200px;
  min-height:760px;
  margin:0 auto;
  padding:104px 36px 124px;
  background:var(--paper);
}

.catalog-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:26px;
  width:100%;
}

.catalog-title{
  width:100%;
  max-width:880px;
  font-family:var(--serif);
  font-size:88px;
  font-weight:450;              /* orta çəki — nə qalın, nə incə */
  font-style:normal;
  font-optical-sizing:auto;     /* opsz böyük ölçüdə display kəsiminə keçir */
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:.98em;
  text-align:center;
  color:var(--ink);
  text-wrap:balance;
}

/* stats — sans, şəffaf tip */
.catalog-stats{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
  font-family:var(--sans);
  color:rgba(21,20,18,.46);
  opacity:0;
  transform:translateY(14px);
}
.catalog-stats li{
  display:flex;
  align-items:baseline;
  gap:7px;
  padding:2px 22px;
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  letter-spacing:.005em;
  white-space:nowrap;
}
.catalog-stats li + li{ border-left:1px solid rgba(21,20,18,.13); }
.catalog-stats strong{
  font-size:15px;
  font-weight:600;
  color:rgba(21,20,18,.7);
  font-variant-numeric:tabular-nums;
}
.catalog-stats.is-in{
  opacity:1;
  transform:none;
  transition:opacity .7s var(--ease), transform .7s var(--ease);
  transition-delay:var(--d, 640ms);
}

/* letter-by-letter reveal */
.catalog-title .ltr{
  display:inline-block;
  opacity:.001;
  filter:blur(10px);
  transform:translateY(42px);
}
.catalog-title.is-in .ltr{
  opacity:1;
  filter:blur(0);
  transform:none;
  transition:opacity .6s var(--ease), filter .6s var(--ease), transform .6s var(--ease);
  transition-delay:var(--d, 0ms);
}

.catalog-block{
  width:900px;
  max-width:900px;
}


/* ============================================================
   CATALOG WIDGET
   ============================================================ */

.mercer-catalog, .mercer-catalog *{ box-sizing:border-box; }

.mercer-catalog{
  position:relative;
  width:100%;
  color:var(--ink);
  font-family:var(--sans);
}

.mercer-catalog-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:20px;
  padding-top:34px;
  border-top:1px solid rgba(21,20,18,.16);
}
.mercer-catalog-grid[hidden]{ display:none; }

.mercer-catalog-card{
  display:flex;
  flex-direction:column;
  gap:11px;
  min-width:0;
  padding:0;
  border:0;
  background:transparent;
  color:var(--ink);
  text-align:left;
  text-decoration:none;
  font-family:inherit;
  animation:mercer-catalog-enter .62s var(--ease) both;
}
.mercer-catalog-card:nth-child(2){ animation-delay:.05s; }
.mercer-catalog-card:nth-child(3){ animation-delay:.1s; }
.mercer-catalog-card:nth-child(4){ animation-delay:.15s; }

@keyframes mercer-catalog-enter{
  from{ opacity:0; transform:translateY(22px) scale(.98); }
  to{ opacity:1; transform:none; }
}

.mercer-catalog-media{
  display:block;
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:22px;
  background:#efebe3;
}
.mercer-catalog-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .48s var(--ease);
}
.mercer-catalog-card:hover img{ transform:scale(1.035); }

.mercer-catalog-row{
  display:grid;
  grid-template-columns:1fr auto;
  gap:8px;
  align-items:start;
}

.mercer-catalog-name{
  font-family:var(--serif);
  font-size:22px;
  line-height:1.05;
  letter-spacing:-.025em;
  color:var(--ink);
  text-decoration:none;
  transition:color .2s var(--ease);
}
.mercer-catalog-name:hover{ color:var(--orange); }

.mercer-catalog-price{
  font-size:14px;
  font-weight:650;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.mercer-catalog-note{
  margin-top:-4px;
  color:rgba(21,20,18,.44);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}


/* ---------- say seçici (stepper) ---------- */

.qty{
  display:grid;
  grid-template-columns:36px 1fr 36px;
  align-items:center;
  height:40px;
  border:1px solid rgba(21,20,18,.18);
  border-radius:999px;
  background:var(--paper);
  overflow:hidden;
}
.qty-btn{
  display:grid;
  place-items:center;
  height:100%;
  border:0;
  background:transparent;
  color:var(--ink);
  cursor:pointer;
  font:600 17px/1 var(--sans);
  transition:background .18s ease;
}
.qty-btn:hover:not(:disabled){ background:rgba(21,20,18,.07); }
.qty-btn:disabled{ opacity:.26; cursor:not-allowed; }
.qty-input{
  width:100%;
  min-width:0;
  height:100%;
  border:0;
  background:transparent;
  color:var(--ink);
  outline:none;
  text-align:center;
  font:650 13px/1 var(--sans);
  font-variant-numeric:tabular-nums;
  -moz-appearance:textfield;
  appearance:textfield;
}
.qty-input::-webkit-outer-spin-button,
.qty-input::-webkit-inner-spin-button{ -webkit-appearance:none; margin:0; }
.qty-input:focus-visible{ outline:2px solid var(--accent); outline-offset:-3px; }

.card-add{
  height:44px;
  border:0;
  border-radius:999px;
  background:var(--ink-soft);
  color:var(--paper);
  cursor:pointer;
  font:650 12px/1 var(--sans);
  letter-spacing:.05em;
  transition:background .2s ease, transform .2s ease;
}
.card-add:hover{ background:var(--accent); transform:translateY(-1px); }
.card-add.is-added{ background:var(--orange); }


/* ============================================================
   404 — tapılmayan səhifə
   ============================================================ */

.nf-section{
  display:grid;
  place-items:center;
  gap:18px;
  min-height:56vh;
  max-width:640px;
  margin:0 auto;
  padding:96px 24px 120px;
  text-align:center;
}
.nf-code{
  font-family:var(--serif);
  font-size:96px;
  line-height:.9;
  letter-spacing:-.04em;
  color:var(--ink);
  margin:0;
}
.nf-text{
  color:rgba(21,20,18,.58);
  font-size:15px;
  line-height:1.62;
  margin:0;
}
.nf-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:10px 20px;
  margin:0;
  padding:0;
  list-style:none;
}

@media (max-width:760px){
  .nf-section{ padding:72px 20px 96px; }
  .nf-code{ font-size:72px; }
}


/* ============================================================
   PRODUCT PAGE
   ============================================================ */

.pd-section{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:64px;
  align-items:start;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:72px 36px 112px;
  background:var(--paper);
}

.pd-media{
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:22px;
  background:#efebe3;
}
.pd-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

/* ------------------------------------------------------------
   Şəkil çevirmə — məhsulun bir neçə nümunəsi olanda .pd-media
   düymə olur: basanda kart 180° dönür və növbəti şəkil açılır.
   ------------------------------------------------------------ */
.pd-media--flip{
  position:relative;
  display:block;
  width:100%;
  padding:0;
  border:0;
  perspective:1400px;
  cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.pd-media--flip:focus-visible{ outline:2px solid var(--accent); outline-offset:4px; }

.pd-flip{
  position:relative;
  display:block;
  width:100%;
  height:100%;
  transform-style:preserve-3d;
  transition:transform .72s var(--ease);
}
.pd-face{
  position:absolute;
  inset:0;
  display:block;
  border-radius:inherit;
  overflow:hidden;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.pd-face--back{ transform:rotateY(180deg); }

/* şəkilin altındakı nöqtələr — neçə nümunə olduğunu göstərir */
.pd-gallery{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.pd-dots{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
}
.pd-dot{
  width:8px;
  height:8px;
  padding:0;
  border:0;
  border-radius:999px;
  background:rgba(21,20,18,.2);
  cursor:pointer;
  transition:width .4s var(--ease), background .3s var(--ease);
}
.pd-dot:hover{ background:rgba(21,20,18,.42); }
.pd-dot.is-active{
  width:24px;
  background:var(--accent);
}
.pd-dot:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }

@media (prefers-reduced-motion:reduce){
  .pd-flip{ transition-duration:.01ms; }
  .pd-dot{ transition:none; }
}

.pd-info{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:16px;
  padding-top:6px;
}

.pd-back{
  color:rgba(21,20,18,.5);
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  transition:color .2s var(--ease);
}
.pd-back:hover{ color:var(--orange); }

.pd-name{
  font-family:var(--serif);
  font-size:62px;
  font-weight:450;
  font-optical-sizing:auto;
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:1;
}

.pd-tagline{
  margin-top:-6px;
  max-width:40ch;
  color:rgba(21,20,18,.55);
  font-size:15px;
  line-height:1.5;
}

.pd-price{
  display:flex;
  align-items:baseline;
  gap:10px;
  padding-top:4px;
}
.pd-price strong{
  font-size:34px;
  font-weight:650;
  letter-spacing:-.02em;
  font-variant-numeric:tabular-nums;
}
.pd-price span{
  color:rgba(21,20,18,.46);
  font-size:12px;
  letter-spacing:.03em;
}

.pd-buy{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  width:100%;
  max-width:400px;
}
.pd-buy .qty{ flex:0 0 150px; }
.pd-add{ flex:1 1 190px; min-width:0; }

.pd-max{
  color:rgba(21,20,18,.46);
  font-size:11px;
  font-weight:600;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.pd-max strong{ color:var(--ink); font-weight:700; }

.pd-desc{
  max-width:46ch;
  margin-top:8px;
  padding-top:20px;
  border-top:1px solid rgba(21,20,18,.12);
  color:rgba(21,20,18,.68);
  font-size:14px;
  line-height:1.65;
}

/* Qısa göstəricilər — ölçü və s. Cədvəl deyil, iki sütunlu sadə sıra. */
.pd-specs{
  display:flex;
  flex-direction:column;
  gap:9px;
  width:100%;
  max-width:400px;
  margin:0;
  padding-top:18px;
  border-top:1px solid rgba(21,20,18,.12);
}
.pd-spec{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
}
.pd-spec dt{
  flex:none;
  color:rgba(21,20,18,.45);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.pd-spec dd{
  margin:0;
  color:var(--ink);
  font-size:13.5px;
  font-weight:600;
  text-align:right;
}


/* ============================================================
   INSTAGRAM CTA — kataloqun altında

   Səhifənin öz tipoqrafiyası: kiçik seyrək etiket (footer
   başlıqları ilə eyni), iri Fraunces sətri (başlıqlarla eyni
   opsz/SOFT tənzimi) və nazik ayırıcı xətt — kart yox, bənd.
   ============================================================ */

.ig-cta{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:22px 44px;
  width:900px;
  max-width:100%;
  padding:32px 34px;
  border-radius:28px;
  /* Kamuflyajlı şüşə: uzaqdan adi krem səth görünür, yaxından
     yuxarı-sol küncdə çox zəif işıq və nazik kənar sezilir. */
  background:
    linear-gradient(152deg,
      rgba(255,255,255,.34) 0%,
      rgba(255,255,255,.07) 38%,
      rgba(244,240,232,.22) 100%),
    var(--cream);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.45),
    inset 0 0 0 1px rgba(21,20,18,.04),
    0 10px 24px -28px rgba(21,20,18,.28);
  -webkit-backdrop-filter:blur(14px) saturate(130%);
  backdrop-filter:blur(14px) saturate(130%);
  color:var(--ink);
  text-decoration:none;
  transition:background .35s var(--ease), box-shadow .35s var(--ease);
}

/* Altdakı isti ləkə — demək olar görünmür, yalnız səthə canlılıq verir. */
.ig-cta::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-80%;
  left:-14%;
  width:66%;
  height:260%;
  border-radius:50%;
  background:radial-gradient(closest-side, rgba(255,91,36,.055), transparent 78%);
  opacity:.85;
  transition:opacity .35s var(--ease);
}

/* şüşə əsasən toxunanda «oyanır» — sakit vəziyyətdə gözə girmir */
.ig-cta:hover{
  background:
    linear-gradient(152deg,
      rgba(255,255,255,.5) 0%,
      rgba(255,255,255,.14) 38%,
      rgba(244,240,232,.3) 100%),
    var(--cream);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.6),
    inset 0 0 0 1px rgba(21,20,18,.05),
    0 14px 30px -28px rgba(21,20,18,.34);
}
.ig-cta:hover::before{ opacity:1; }
.ig-cta:focus-visible{ outline:2px solid var(--accent); outline-offset:4px; }

.ig-cta-main{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  min-width:0;
}

/* etiket — .footer-heading / .mercer-catalog-note ilə eyni rol */
.ig-cta-eyebrow{
  display:flex;
  align-items:center;
  gap:7px;
  color:var(--orange);
  font-family:var(--sans);
  font-size:10px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ig-cta-glyph{
  width:14px;
  height:14px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.8;
}
.ig-cta-glyph .ig-dot{ fill:currentColor; stroke:none; }

/* .catalog-title ilə eyni kəsim, kartın ölçüsünə uyğun kiçildilib */
.ig-cta-title{
  max-width:20ch;
  font-family:var(--serif);
  font-size:32px;
  font-weight:450;
  font-optical-sizing:auto;
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:1.05;
  text-wrap:balance;
}

.ig-cta-sub{
  color:rgba(21,20,18,.5);
  font-size:13px;
  line-height:1.5;
}

/* sağdakı hissə düymə kimi oxunur — səbət düymələri ilə eyni ailə */
.ig-cta-link{
  position:relative;
  z-index:1;
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-height:48px;
  padding:0 22px;
  border-radius:999px;
  background:var(--ink-soft);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1);
  color:var(--paper);
  font-family:var(--sans);
  font-size:13px;
  font-weight:600;
  letter-spacing:.01em;
  white-space:nowrap;
  transition:background .3s var(--ease);
}
.ig-cta:hover .ig-cta-link{ background:var(--orange); }

.ig-cta-arrow{
  display:inline-block;
  font-size:14px;
  transition:transform .3s var(--ease);
}
.ig-cta:hover .ig-cta-arrow{ transform:translate(3px, -3px); }


/* ============================================================
   CHECKOUT — sifariş pəncərəsi

   Üç addım: nə alınır → kim və nə vaxt → yekun. Hər addımın
   nömrəsi var; həftə içi seçiləndə həftənin günü də soruşulur.
   ============================================================ */

.co{
  position:fixed;
  inset:0;
  z-index:130;
  display:grid;
  place-items:center;
  padding:20px;
  animation:cart-fade .24s var(--ease) both;
}
.co[hidden]{ display:none; }

.co-backdrop{
  position:absolute;
  inset:0;
  background:rgba(21,20,18,.36);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
}

.co-panel{
  position:relative;
  display:flex;
  flex-direction:column;
  width:min(540px, 100%);
  max-height:min(92dvh, 780px);
  border-radius:var(--r-surface);
  background:var(--paper);
  box-shadow:var(--lift);
  overflow:hidden;
  animation:co-rise .3s var(--ease) both;
}
@keyframes co-rise{
  from{ opacity:0; transform:translateY(14px) scale(.985); }
  to{ opacity:1; transform:none; }
}

/* ---- başlıq ---- */

.co-head{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
  padding:16px 18px 15px;
  border-bottom:1px solid var(--hairline);
}
.co-head-text{ min-width:0; }
.co-head h2{
  font-family:var(--serif);
  font-size:22px;
  font-weight:500;
  line-height:1.15;
  letter-spacing:-.03em;
}
.co-head-sub{
  margin-top:3px;
  color:rgba(21,20,18,.45);
  font-size:11px;
  line-height:1.35;
}

.co-back,
.co-close{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  cursor:pointer;
  transition:background .2s ease;
}
.co-back:hover,
.co-close:hover{ background:rgba(21,20,18,.07); }
.co-back:focus-visible,
.co-close:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }
.co-back svg,
.co-close svg{
  width:17px; height:17px;
  fill:none; stroke:currentColor;
  stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round;
}

/* ---- gövdə ---- */

.co-body{
  flex:1;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:20px 18px 24px;
  display:flex;
  flex-direction:column;
  gap:22px;
}
/* Sistemin enli (Windows-da oxlu) zolağı pəncərənin dilini pozur.
   Chrome/Safari aşağıdakı psevdo-elementləri oxuyur; Firefox isə
   yalnız standart xassələri — ona görə ayrıca @supports bloku. */
@supports (scrollbar-width:thin) and (not selector(::-webkit-scrollbar)){
  .co-body{
    scrollbar-width:thin;
    scrollbar-color:rgba(21,20,18,.24) transparent;
  }
}
.co-body::-webkit-scrollbar{ width:10px; }
.co-body::-webkit-scrollbar-track{ background:transparent; }
.co-body::-webkit-scrollbar-thumb{
  border:3px solid transparent;
  border-radius:999px;
  background:rgba(21,20,18,.2);
  background-clip:padding-box;
}
.co-body::-webkit-scrollbar-thumb:hover{ background:rgba(21,20,18,.34); background-clip:padding-box; }

/* ---- nə alınır ---- */

.co-recap{
  padding:14px 16px 12px;
  border-radius:20px;
  background:var(--cream);
  box-shadow:inset 0 0 0 1px rgba(21,20,18,.05);
}
.co-recap-head{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:9px;
  padding-bottom:9px;
  border-bottom:1px solid var(--hairline);
  color:rgba(21,20,18,.5);
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.co-recap-head span{ letter-spacing:.06em; }
.co-recap-row{
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:baseline;
  gap:12px;
  padding:3px 0;
  font-size:13.5px;
}
.co-recap-name{ font-weight:500; }
.co-recap-qty{
  color:rgba(21,20,18,.45);
  font-size:11.5px;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}
.co-recap-price{
  font-weight:600;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
}

/* ---- sahələr ---- */

.co-field{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0;
  padding:0;
  border:0;
}
.co-label{
  display:flex;
  align-items:center;
  color:rgba(21,20,18,.5);
  font-size:10px;
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.co-step{
  display:grid;
  place-items:center;
  flex:none;
  width:18px;
  height:18px;
  margin-right:9px;
  border-radius:999px;
  background:var(--ink);
  color:var(--paper);
  font-size:9.5px;
  font-style:normal;
  font-weight:700;
  letter-spacing:0;
}
.co-label em{ margin-left:4px; color:rgba(21,20,18,.3); font-style:normal; }
.co-label .co-opt{
  margin-left:6px;
  color:rgba(21,20,18,.38);
  font-weight:600;
  letter-spacing:.04em;
  text-transform:none;
}

.co-input{
  width:100%;
  padding:10px 2px;
  border:0;
  border-bottom:1px solid rgba(21,20,18,.2);
  border-radius:0;
  background:transparent;
  color:var(--ink);
  outline:none;
  font:500 15px/1.5 var(--sans);
  transition:border-color .2s var(--ease);
}
.co-input::placeholder{ color:rgba(21,20,18,.32); }
.co-input:focus{ border-bottom-color:var(--ink); }
.co-textarea{ resize:vertical; min-height:44px; }

/* ---- çatdırılma saatları ---- */

.co-slots{ gap:12px; }

/* Panelin fonu da --paper-dir; blok bir ton açıq fon, qalın halqa
   və yumşaq kölgə ilə qabardılır. */
.co-group{
  border-radius:20px;
  background:#fffdfa;
  box-shadow:inset 0 0 0 1.5px rgba(21,20,18,.14), 0 8px 20px rgba(21,20,18,.06);
  overflow:hidden;
}
.co-group + .co-group{ margin-top:14px; }

/* Gün başlığı — solunda narıncı nişan, blokun harada başladığı
   bir baxışda görünsün. */
.co-day{
  display:flex;
  align-items:center;
  gap:9px;
  padding:12px 16px 11px;
  border-bottom:1px solid var(--hairline);
  background:var(--cream);
  color:var(--ink);
  font-size:11px;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.co-day::before{
  content:"";
  flex:0 0 auto;
  width:3px;
  height:13px;
  border-radius:999px;
  background:var(--accent);
}

.co-slot-list{ padding:5px; }

.co-slot{
  position:relative;
  display:grid;
  grid-template-columns:auto 1fr auto auto;
  align-items:center;
  gap:12px;
  padding:12px 11px;
  border:0;
  border-radius:14px;
  background:transparent;
  cursor:pointer;
  transition:background .2s ease;
}
.co-slot + .co-slot{ border-top:1px solid var(--hairline); }
.co-slot:hover{ background:rgba(255,91,36,.07); }
.co-slot input{
  position:absolute;
  width:1px; height:1px;
  opacity:0;
  pointer-events:none;
}

.co-slot-dot{
  width:15px;
  height:15px;
  border:1.25px solid rgba(21,20,18,.28);
  border-radius:999px;
  transition:border-color .2s ease, box-shadow .2s ease;
}
/* Seçilmiş saat — narıncı fon və halqa. Rəngdən başqa nişan da
   dəyişir (nöqtə dolur, ad qalınlaşır), ona görə rəngi ayırd
   etməyən istifadəçi üçün də aydındır. */
.co-slot:has(input:checked){
  background:rgba(255,91,36,.12);
  box-shadow:inset 0 0 0 1.5px rgba(255,91,36,.55);
  border-top-color:transparent;
}
.co-slot:has(input:checked) + .co-slot{ border-top-color:transparent; }
.co-slot:has(input:checked) .co-slot-dot{
  border-color:var(--accent);
  box-shadow:inset 0 0 0 3.5px var(--accent);
}
.co-slot:has(input:checked) .co-slot-name{ font-weight:700; }
.co-slot:has(input:focus-visible){ outline:2px solid var(--ink); outline-offset:2px; }

.co-slot-name{
  min-width:0;
  font-size:14px;
  font-weight:500;
  line-height:1.25;
}
.co-slot-time{
  padding:3px 8px;
  border-radius:9px;
  background:rgba(21,20,18,.06);
  color:var(--ink);
  font-size:13.5px;
  font-weight:700;
  font-variant-numeric:tabular-nums;
  white-space:nowrap;
  transition:background .2s ease, color .2s ease;
}
.co-slot:has(input:checked) .co-slot-time{
  background:rgba(255,91,36,.2);
}
.co-slot-price{
  padding:3px 9px;
  border-radius:999px;
  background:transparent;
  box-shadow:inset 0 0 0 1px rgba(21,20,18,.18);
  color:rgba(21,20,18,.62);
  font-size:11.5px;
  font-weight:700;
  white-space:nowrap;
}
.co-slot:has(input:checked) .co-slot-price{
  background:var(--accent);
  box-shadow:none;
  color:#fff;
}

/* ---- həftənin günü ---- */

.co-days{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px 12px;
  padding:12px 14px;
  border-top:1px solid var(--hairline);
  background:rgba(21,20,18,.022);
  opacity:.5;
  transition:opacity .25s var(--ease), background .25s var(--ease);
}
.co-days.is-live{ opacity:1; }
/* Saat seçilib, gün hələ seçilməyib — burada gözə dəyməlidir. */
.co-days.is-asking{
  background:rgba(255,91,36,.09);
  box-shadow:inset 0 2px 0 var(--accent);
}

.co-days-label{
  color:rgba(21,20,18,.62);
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.co-days.is-asking .co-days-label{ color:var(--accent); }
.co-days-label em{ margin-left:3px; color:rgba(21,20,18,.3); font-style:normal; }

.co-days-row{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

.co-chip{ position:relative; cursor:pointer; }
.co-chip input{
  position:absolute;
  width:1px; height:1px;
  opacity:0;
  pointer-events:none;
}
.co-chip-face{
  display:grid;
  place-items:center;
  min-width:42px;
  height:32px;
  padding:0 11px;
  border-radius:999px;
  background:var(--paper);
  box-shadow:inset 0 0 0 1px rgba(21,20,18,.14);
  color:rgba(21,20,18,.72);
  font-size:12px;
  font-weight:600;
  transition:background .2s ease, color .2s ease, box-shadow .2s ease;
}
.co-chip:hover .co-chip-face{ box-shadow:inset 0 0 0 1px rgba(21,20,18,.32); }
.co-chip input:checked + .co-chip-face{
  background:var(--accent);
  box-shadow:none;
  color:#fff;
}
.co-chip input:focus-visible + .co-chip-face{ outline:2px solid var(--accent); outline-offset:2px; }

/* Metro şərti — qaçırılmamalı şərtdir, ona görə narıncı zolaqlı qeyd. */
.co-note-line{
  margin-top:12px;
  padding:9px 12px;
  border-left:2.5px solid var(--accent);
  border-radius:0 10px 10px 0;
  background:rgba(255,91,36,.07);
  color:rgba(21,20,18,.72);
  font-size:12.5px;
  font-weight:500;
  line-height:1.5;
}

/* Saat seçimi olmayan üsullar — sakit qeyd, seçim deyil. */
.co-other{
  margin-top:10px;
  padding:11px 13px;
  border-radius:14px;
  background:rgba(21,20,18,.05);
  color:rgba(21,20,18,.66);
  font-size:12px;
  line-height:1.5;
}
.co-other-list{
  display:block;
  margin-top:5px;
  color:rgba(21,20,18,.5);
  font-size:11.5px;
  font-weight:600;
  font-variant-numeric:tabular-nums;
}

/* ---- yekun ---- */

.co-foot{
  padding:16px 18px 20px;
  border-top:1px solid var(--hairline);
  background:var(--cream);
}

.co-sum{
  display:flex;
  flex-direction:column;
  gap:7px;
  margin-bottom:14px;
}
.co-sum-row{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
  color:rgba(21,20,18,.6);
  font-size:13px;
}
.co-sum-row strong{
  color:var(--ink);
  font-weight:600;
  font-variant-numeric:tabular-nums;
}
.co-sum-note{
  margin-top:-3px;
  color:rgba(21,20,18,.45);
  font-size:11.5px;
  line-height:1.4;
}
.co-sum-note[hidden]{ display:none; }
.co-sum-total{
  padding-top:9px;
  border-top:1px solid rgba(21,20,18,.14);
  color:var(--ink);
  font-size:14px;
}
.co-sum-total strong{ font-size:19px; font-weight:650; letter-spacing:-.01em; }

.co-hint{
  padding:4px 0 2px;
  color:rgba(21,20,18,.42);
  font-size:12px;
  text-align:center;
}
.co-hint[hidden]{ display:none; }

.co-send{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  width:100%;
  min-height:52px;
  border:0;
  border-radius:999px;
  background:var(--ink-soft);
  color:var(--paper);
  cursor:pointer;
  font:650 13.5px/1 var(--sans);
  letter-spacing:.01em;
  transition:background .2s ease, transform .2s ease;
  animation:co-rise .32s var(--ease) both;
}
.co-send[hidden]{ display:none; }
.co-send:hover{ background:var(--accent); transform:translateY(-1px); }
.co-send:focus-visible{ outline:2px solid var(--ink); outline-offset:3px; }
.co-send svg{
  width:21px;
  height:21px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.5;
  stroke-linejoin:round;
}
.co-send .co-send-glyph{ fill:currentColor; stroke:none; }


/* ============================================================
   GALLERY
   ============================================================ */

.gal-section{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:52px;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:88px 36px 118px;
  background:var(--paper);
}

.gal-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  text-align:center;
}
.gal-title{
  font-family:var(--serif);
  font-size:68px;
  font-weight:450;
  font-optical-sizing:auto;
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:1;
}
.gal-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:28px;
  width:100%;
}

.gal-item{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
  margin:0;
  animation:mercer-catalog-enter .62s var(--ease) both;
}
.gal-item:nth-child(2){ animation-delay:.06s; }
.gal-item:nth-child(3){ animation-delay:.12s; }
.gal-item:nth-child(4){ animation-delay:.18s; }

.gal-shot{
  display:block;
  width:100%;
  padding:0;
  border:0;
  aspect-ratio:4/5;
  overflow:hidden;
  border-radius:20px;
  background:#efebe3;
  cursor:zoom-in;
}
.gal-shot img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .5s var(--ease);
}
.gal-shot:hover img{ transform:scale(1.04); }
.gal-shot:focus-visible{ outline:2px solid var(--accent); outline-offset:4px; }

.gal-cap{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.gal-name{
  font-family:var(--serif);
  font-size:22px;
  letter-spacing:-.025em;
  color:var(--ink);
  text-decoration:none;
  transition:color .2s var(--ease);
}
.gal-name:hover{ color:var(--orange); }
.gal-tag{
  color:rgba(21,20,18,.46);
  font-size:12px;
  line-height:1.45;
}


/* ---------- böyük görünüş ---------- */

.gal-box{
  position:fixed;
  inset:0;
  z-index:120;
  display:grid;
  place-items:center;
  animation:cart-fade .24s var(--ease) both;
}
.gal-box[hidden]{ display:none; }

.gal-box-backdrop{
  position:absolute;
  inset:0;
  background:rgba(21,20,18,.82);
  backdrop-filter:blur(3px);
  cursor:zoom-out;
}

.gal-box-inner{
  position:relative;
  display:flex;
  align-items:center;
  gap:14px;
  max-width:min(1000px, 92vw);
  padding:0 8px;
}

.gal-box-fig{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin:0;
  min-width:0;
}
.gal-box-fig img{
  display:block;
  max-width:100%;
  max-height:72dvh;
  object-fit:contain;
  border-radius:14px;
  background:#efebe3;
}
.gal-box-fig figcaption{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
  color:var(--cream);
  font-family:var(--serif);
  font-size:20px;
  letter-spacing:-.02em;
}
.gal-box-link{
  color:rgba(244,240,232,.6);
  font-family:var(--sans);
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
  white-space:nowrap;
  transition:color .2s var(--ease);
}
.gal-box-link:hover{ color:var(--cream); }

.gal-nav,
.gal-box-close{
  display:grid;
  place-items:center;
  flex:none;
  border:0;
  border-radius:999px;
  background:rgba(244,240,232,.12);
  color:var(--cream);
  cursor:pointer;
  font-family:var(--sans);
  transition:background .2s ease;
}
.gal-nav:hover,
.gal-box-close:hover{ background:rgba(244,240,232,.24); }
.gal-nav{
  width:44px;
  height:44px;
  font-size:26px;
  line-height:1;
}
.gal-nav[hidden]{ display:none; }
.gal-box-close{
  position:absolute;
  top:-52px;
  right:8px;
  width:38px;
  height:38px;
  font-size:14px;
}


/* ============================================================
   FAQ
   ============================================================ */

.faq-section{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:52px;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:88px 36px 118px;
  background:var(--paper);
}

.faq-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:14px;
  text-align:center;
}
.faq-title{
  font-family:var(--serif);
  font-size:68px;
  font-weight:450;
  font-optical-sizing:auto;
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:1;
}
.faq-sub{
  color:rgba(21,20,18,.46);
  font-size:13px;
  letter-spacing:.02em;
}

.faq-body{
  display:flex;
  flex-direction:column;
  gap:44px;
  width:100%;
  max-width:760px;
}

.faq-group-title{
  margin-bottom:6px;
  color:rgba(21,20,18,.42);
  font-family:var(--sans);
  font-size:10px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}

.faq-item{
  border-bottom:1px solid rgba(21,20,18,.12);
}
.faq-item summary{
  display:flex;
  align-items:center;
  gap:12px;
  padding:20px 0;
  cursor:pointer;
  list-style:none;
}
.faq-item summary::-webkit-details-marker{ display:none; }
.faq-item summary:hover .faq-q{ color:var(--orange); }
.faq-item summary:focus-visible{ outline:2px solid var(--accent); outline-offset:3px; }

.faq-q{
  flex:1;
  min-width:0;
  font-family:var(--serif);
  font-size:21px;
  letter-spacing:-.02em;
  line-height:1.25;
  transition:color .2s var(--ease);
}

/* açılış nişanı — + / − */
.faq-mark{
  position:relative;
  flex:none;
  width:16px;
  height:16px;
}
.faq-mark::before,
.faq-mark::after{
  content:"";
  position:absolute;
  inset:50% 0 auto 0;
  height:1.5px;
  background:var(--ink);
  transition:transform .28s var(--ease);
}
.faq-mark::after{ transform:rotate(90deg); }
.faq-item[open] .faq-mark::after{ transform:rotate(0deg); }

.faq-todo{
  flex:none;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,91,36,.13);
  color:var(--orange);
  font-size:9px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.faq-a{
  padding:0 0 24px;
  max-width:62ch;
  color:rgba(21,20,18,.68);
  font-size:14px;
  line-height:1.7;
  animation:faq-open .38s var(--ease) both;
}
.faq-a p + p{ margin-top:12px; }
.faq-a strong{ color:var(--ink); font-weight:650; }
.faq-a a{
  color:var(--ink);
  font-weight:600;
  text-decoration:underline;
  text-decoration-color:rgba(21,20,18,.28);
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color .2s var(--ease), text-decoration-color .2s var(--ease);
}
.faq-a a:hover{ color:var(--orange); text-decoration-color:currentColor; }


@keyframes faq-open{
  from{ opacity:0; transform:translateY(-6px); }
  to{ opacity:1; transform:none; }
}

.faq-list{
  margin:12px 0;
  padding-left:18px;
}
.faq-list li{ padding:3px 0; }

.faq-tables{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  margin:16px 0;
}
.faq-table{
  width:100%;
  border-collapse:collapse;
  font-size:12px;
  font-variant-numeric:tabular-nums;
}
.faq-table caption{
  padding-bottom:7px;
  color:var(--ink);
  font-size:10px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-align:left;
}
.faq-table td{
  padding:5px 0;
  border-top:1px solid rgba(21,20,18,.09);
}
.faq-table td:last-child{ text-align:right; font-weight:650; color:var(--ink); }

.faq-fine{
  color:rgba(21,20,18,.5);
  font-size:12.5px;
}


/* ============================================================
   PRIVACY
   ============================================================ */

.pr-section{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:48px;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:88px 36px 118px;
  background:var(--paper);
}

.pr-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  max-width:640px;
  text-align:center;
}
.pr-title{
  font-family:var(--serif);
  font-size:60px;
  font-weight:450;
  font-optical-sizing:auto;
  font-variation-settings:"SOFT" 30, "WONK" 0;
  letter-spacing:-.025em;
  line-height:1.02;
  text-wrap:balance;
}
.pr-lead{
  color:rgba(21,20,18,.58);
  font-size:15px;
  line-height:1.65;
  text-wrap:pretty;
}

.pr-list{
  display:flex;
  flex-direction:column;
  gap:0;
  width:100%;
  max-width:760px;
  margin:0;
  padding:0;
  list-style:none;
  counter-reset:pr;
}

.pr-item{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:22px;
  padding:28px 0;
  border-top:1px solid rgba(21,20,18,.12);
}
.pr-item:last-child{ border-bottom:1px solid rgba(21,20,18,.12); }

.pr-num{
  padding-top:3px;
  color:var(--orange);
  font-size:12px;
  font-weight:700;
  letter-spacing:.1em;
  font-variant-numeric:tabular-nums;
}

.pr-body{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.pr-heading{
  font-family:var(--serif);
  font-size:23px;
  font-weight:450;
  letter-spacing:-.02em;
  line-height:1.2;
}
.pr-text{
  max-width:58ch;
  color:rgba(21,20,18,.68);
  font-size:14px;
  line-height:1.7;
}

.pr-foot{
  color:rgba(21,20,18,.5);
  font-size:13px;
  text-align:center;
}
.pr-foot a{
  color:var(--ink);
  font-weight:600;
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}
.pr-foot a:hover{ color:var(--orange); }


/* ============================================================
   FOOTER
   ============================================================ */

.footer{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:56px;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:88px 44px 36px;
  background:var(--ink-soft);
  overflow:clip;
}

.footer-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(50px,1fr));
  gap:36px;
  width:100%;
}

.footer-brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  align-self:start;
}

.footer-logo{
  color:var(--cream);
  font-family:var(--sans);
  font-size:17px;
  font-weight:700;
  line-height:1;
  letter-spacing:.14em;
  text-decoration:none;
  white-space:nowrap;
  transition:opacity .2s ease;
}
.footer-logo:hover{ opacity:.7; }

.footer-tagline{
  color:rgba(244,240,232,.62);
  font-size:14px;
  line-height:1.5em;
}

.footer-col{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  align-self:start;
}

.footer-heading{
  color:rgba(244,240,232,.48);
  font-size:11px;
  font-weight:600;
  letter-spacing:.1em;
  line-height:1em;
}

.footer-col p{
  color:var(--cream);
  font-size:14px;
  line-height:1.3em;
}

.footer-col a{
  color:var(--cream);
  text-decoration:none;
  transition:color .2s var(--ease);
}
.footer-col a:hover{
  color:var(--white);
  text-decoration:underline;
  text-underline-offset:3px;
}

.footer-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  width:100%;
  padding-top:24px;
  border-top:1px solid #f4f0e829;
}
.footer-bottom p{
  color:rgba(244,240,232,.48);
  font-size:11px;
  font-weight:500;
  letter-spacing:.08em;
  line-height:1em;
}


/* ============================================================
   CART DRAWER
   ============================================================ */

.cart-backdrop{
  position:fixed;
  inset:0;
  z-index:90;
  background:rgba(21,20,18,.36);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  animation:cart-fade .28s var(--ease) both;
}
.cart-backdrop[hidden]{ display:none; }

@keyframes cart-fade{ from{opacity:0} to{opacity:1} }

.cart-panel{
  position:fixed;
  top:var(--gutter);
  right:var(--gutter);
  bottom:var(--gutter);
  z-index:100;
  display:flex;
  flex-direction:column;
  width:min(400px, calc(100vw - 2 * var(--gutter)));
  border-radius:var(--r-surface);
  overflow:hidden;
  background:var(--paper);
  box-shadow:var(--lift);
  animation:cart-slide .34s var(--ease) both;
}
.cart-panel[hidden]{ display:none; }

@keyframes cart-slide{
  from{ transform:translateX(24px); opacity:0 }
  to{ transform:none; opacity:1 }
}

.cart-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:22px 24px;
  border-bottom:1px solid var(--hairline);
}
.cart-head h2{
  font-family:var(--serif);
  font-size:24px;
  font-weight:500;
  letter-spacing:-.03em;
}
.cart-close{
  display:grid;
  place-items:center;
  width:36px;
  height:36px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--ink);
  cursor:pointer;
  transition:background .2s ease;
}
.cart-close:hover{ background:rgba(21,20,18,.08); }
.cart-close svg{
  width:18px; height:18px;
  fill:none; stroke:currentColor;
  stroke-width:1.7; stroke-linecap:round;
}

.cart-body{
  flex:1;
  overflow-y:auto;
  padding:20px 24px;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.cart-empty{
  margin:auto;
  color:rgba(21,20,18,.55);
  font-size:14px;
  line-height:1.6;
  text-align:center;
}

.cart-item{
  display:grid;
  grid-template-columns:64px 1fr auto;
  gap:14px;
  align-items:center;
}
.cart-item-media{ display:block; width:64px; }
.cart-item img{
  width:64px;
  height:80px;
  object-fit:cover;
  border-radius:10px;
  background:#efebe3;
}
.cart-item-name{
  font-family:var(--serif);
  font-size:17px;
  line-height:1.1;
  letter-spacing:-.02em;
  color:var(--ink);
  text-decoration:none;
  transition:color .2s var(--ease);
}
.cart-item-name:hover{ color:var(--orange); }
.cart-item-main{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:9px;
  min-width:0;
}
.cart-item-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:7px;
}
.cart-item-price{
  font-size:14px;
  font-weight:650;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}

.qty-sm{
  height:32px;
  grid-template-columns:30px 1fr 30px;
}
.qty-sm .qty-btn{ font-size:15px; }
.qty-sm .qty-input{ font-size:12px; }
/* Sil — mətn deyil, zibil qabı nişanı; ad yalnız ekran oxuyucusuna. */
.cart-item-remove{
  display:grid;
  place-items:center;
  width:30px;
  height:30px;
  padding:0;
  border:0;
  border-radius:999px;
  background:transparent;
  color:rgba(21,20,18,.42);
  cursor:pointer;
  transition:color .2s ease, background .2s ease;
}
.cart-item-remove:hover{ color:var(--orange); background:rgba(255,91,36,.1); }
.cart-item-remove:focus-visible{ outline:2px solid var(--accent); outline-offset:2px; }
.cart-item-remove svg{
  width:17px;
  height:17px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.cart-foot{
  padding:20px 24px 24px;
  border-top:1px solid var(--hairline);
}

.cart-total{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin-bottom:14px;
  font-size:13px;
}
.cart-total strong{ font-size:15px; font-weight:650; }

.cart-checkout{
  width:100%;
  min-height:54px;
  border:0;
  border-radius:999px;
  background:var(--ink-soft);
  color:var(--paper);
  cursor:pointer;
  font:650 13px/1 var(--sans);
  transition:transform .2s ease, background .2s ease;
}
.cart-checkout:hover{ transform:translateY(-2px); background:var(--accent); }

.cart-note{
  margin-top:12px;
  color:rgba(21,20,18,.45);
  font-size:11px;
  text-align:center;
}


/* ============================================================
   SƏTHLƏR

   Nav, bölmələr və futer eyni enlikdədir və hər birinin
   ətrafında --gutter qədər boşluq qalır — beləliklə krem fon
   çərçivə kimi görünür, bloklar isə kəskin düzbucaq yox,
   yumşaq künclü səth kimi oxunur.

   width:auto vacibdir: bloklarda width:100% var, kənar boşluq
   onunla birlikdə üfüqi daşmaya səbəb olardı.
   ============================================================ */

.catalog-section,
.pd-section,
.gal-section,
.faq-section,
.pr-section,
.footer{
  width:auto;
  margin:var(--gutter) auto;
  border-radius:var(--r-surface);
  box-shadow:var(--lift);
}


/* ============================================================
   TABLET  —  810px … 1199.98px
   ============================================================ */

@media (min-width:810px) and (max-width:1199.98px){
  :root{
    --gutter:12px; --r-surface:30px; --r-nav:22px;
    --surface-max:810px; --surface-pad:28px;
  }

  .catalog-section{
    max-width:810px;
    padding:82px 28px 96px;
  }
  .catalog-title{ font-size:64px; }
  .catalog-block{ width:754px; max-width:754px; }
  .catalog-head{ gap:22px; }
  .ig-cta{ width:754px; padding:28px 30px; gap:18px 32px; }
  .ig-cta-title{ font-size:28px; }

  .mercer-catalog-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:14px;
  }
  .mercer-catalog-name{ font-size:18px; }

  .pd-section{
    max-width:810px;
    gap:40px;
    padding:56px 28px 88px;
  }
  .pd-name{ font-size:46px; }

  .gal-section{
    max-width:810px;
    gap:40px;
    padding:64px 28px 92px;
  }
  .gal-title{ font-size:52px; }
  .gal-grid{ gap:18px; }

  .faq-section{
    max-width:810px;
    gap:40px;
    padding:64px 28px 92px;
  }
  .faq-title{ font-size:52px; }

  .pr-section{ max-width:810px; gap:38px; padding:64px 28px 92px; }
  .pr-title{ font-size:46px; }
  .faq-tables{ grid-template-columns:repeat(2, minmax(0,1fr)); gap:16px 20px; }

  .footer{ padding:72px 28px 24px; }
  .footer-grid{ grid-template-columns:repeat(2, minmax(50px,1fr)); }
}


/* ============================================================
   MOBILE  —  ≤ 809.98px
   ============================================================ */

@media (max-width:809.98px){
  :root{
    --gutter:10px; --r-surface:24px; --r-nav:20px;
    --surface-max:390px; --surface-pad:18px; --nav-h:58px;
  }

  /* telefonda nişanlar sağ kənarda, loqo isə solda öz yerində */
  .nav-shell{ justify-content:flex-end; padding:0 6px; }
  .nav-row{ gap:6px; padding:0 4px; }
  .nav-links{ display:none; }
  .menu-trigger{ display:grid; }
  .lang-switch-top{ display:none; }            /* menyunun içindədir */

  .catalog-section{
    gap:34px;
    max-width:390px;
    padding:64px 18px 80px;
    min-height:0;
  }
  .catalog-title{ font-size:44px; }
  .catalog-block{ width:354px; max-width:100%; }

  .catalog-head{ gap:18px; }

  .ig-cta{
    width:354px;
    grid-template-columns:1fr;
    align-items:start;
    gap:20px;
    padding:24px 22px;
    border-radius:22px;
  }
  .ig-cta-title{ font-size:25px; max-width:none; }
  .ig-cta-main{ gap:9px; }
  .ig-cta-link{ width:100%; justify-content:center; }
  .catalog-stats{
    flex-direction:column;
    gap:8px;
  }
  .catalog-stats li{ padding:0; font-size:12px; }
  .catalog-stats li + li{ border-left:0; }
  .catalog-stats strong{ font-size:13px; }

  .mercer-catalog-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:10px;
    padding-top:24px;
  }
  .mercer-catalog-media{ border-radius:16px; }
  .mercer-catalog-name{ font-size:16px; }
  .mercer-catalog-price{ font-size:12px; }

  .qty{ height:36px; grid-template-columns:30px 1fr 30px; }
  .card-add{ height:38px; font-size:11px; letter-spacing:.03em; }

  /* ----------------------------------------------------------
     Məhsul səhifəsi telefonda tək sütundur — iki sütunda
     say seçici ilə düymə sığmır və səhifə üfüqi daşırdı.
     ---------------------------------------------------------- */
  .pd-section{
    grid-template-columns:minmax(0,1fr);
    gap:26px;
    max-width:390px;
    padding:34px 18px 76px;
  }
  .pd-media{ border-radius:18px; }
  .pd-name{ font-size:40px; }
  .pd-price strong{ font-size:30px; }
  .pd-buy{ max-width:none; }
  .pd-buy .qty{ flex:0 0 130px; }
  .pd-add{ flex:1 1 150px; }

  /* Qalereya, Suallar və Məxfilik — kataloqla eyni ölçü sistemi */
  .gal-section,
  .faq-section,
  .pr-section{
    max-width:390px;
    gap:30px;
    padding:56px 18px 78px;
  }
  .gal-title, .faq-title{ font-size:40px; }
  .pr-title{ font-size:36px; }
  .gal-grid{ grid-template-columns:minmax(0,1fr); gap:14px; }
  .faq-tables{ grid-template-columns:minmax(0,1fr); gap:12px; }
  .faq-q{ font-size:18px; }

  .footer{
    gap:40px;
    padding:64px 20px 30px;
  }
  .footer-grid{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
  }
  .footer-col{ align-self:unset; }
  .footer-bottom{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
  }

  /* sifariş pəncərəsi — dar ekranda daha sıx yığılır */
  .co{ padding:12px; }
  .co-panel{ max-height:94dvh; border-radius:28px; }
  .co-head{ padding:14px 14px 13px; }
  .co-head h2{ font-size:20px; }
  .co-body{ padding:18px 14px 20px; gap:20px; }
  .co-recap{ padding:13px 14px 11px; border-radius:18px; }
  .co-group{ border-radius:18px; }
  .co-day{ padding:10px 13px 9px; }
  .co-slot{ gap:9px; padding:11px 9px; }
  .co-slot-name{ font-size:13.5px; }
  .co-days{ padding:11px 12px; gap:8px 10px; }
  .co-chip-face{ min-width:40px; height:31px; padding:0 9px; }
  .co-foot{ padding:14px 14px 18px; }
}


/* ============================================================
   REDUCED MOTION
   ============================================================ */

@media (prefers-reduced-motion:reduce){
  .mercer-catalog-card{ animation:none !important; }
  .mercer-catalog-media img{ transition:none !important; }
  .mercer-catalog-card:hover img{ transform:none !important; }
  .card-add{ transition:none !important; }
  .card-add:hover{ transform:none !important; }
  .ig-cta, .ig-cta-link, .ig-cta-arrow{ transition:none !important; }
  .ig-cta:hover .ig-cta-arrow{ transform:none !important; }
  .gal-item{ animation:none !important; }
  .gal-shot img{ transition:none !important; }
  .gal-shot:hover img{ transform:none !important; }
  .gal-box{ animation:none !important; }
  .co, .co-panel, .co-send{ animation:none !important; }
  .co-send:hover{ transform:none !important; }
  .faq-a{ animation:none !important; }
  .faq-mark::before, .faq-mark::after{ transition:none !important; }
  .catalog-title .ltr{ opacity:1; filter:none; transform:none; transition:none !important; }
  .catalog-stats{ opacity:1; transform:none; transition:none !important; }
  .cart-panel, .cart-backdrop{ animation:none !important; }
  .nav-row{ transition:none !important; }
  .social-dot, .social-tip{ transition:none !important; }
  .social-dot:hover{ transform:none !important; }
}
