/* bazaar — торговые ряды. namespace .bz* */

:root{
  --bzGround:#2a140f;
  --bzStallBg:#3a1d15;
  --bzStallEdge:#5a3225;
  --bzSaffron:#f4a259;
  --bzIndigo:#3d5a80;
  --bzInk:#f7ece2;
  --bzInkSoft:#d8bfae;
  --bzDeep:#1d0d09;
}

*{box-sizing:border-box;}

html{-webkit-text-size-adjust:100%;}

body{
  margin:0;
  background:var(--bzGround);
  color:var(--bzInk);
  font-family:'Comfortaa','Trebuchet MS',sans-serif;
  font-size:16px;
  line-height:1.72;
  overflow-x:hidden;
}

h1,h2,h3,.bzSignText,.bzFigure{
  font-family:'El Messiri','Segoe UI',sans-serif;
  font-weight:600;
  line-height:1.2;
  margin:0;
}

p{margin:0 0 14px;}
a{color:var(--bzSaffron);}
img{max-width:100%;}

.bzSkip{
  position:absolute;left:-2000px;top:0;
  background:var(--bzSaffron);color:var(--bzDeep);
  padding:10px 16px;border-radius:0 0 12px 0;z-index:40;
}
.bzSkip:focus{left:0;}

/* ---------- ворота рынка (шапка) ---------- */

.bzGate{
  position:sticky;top:0;z-index:30;
  background:linear-gradient(180deg,#361a12 0%,#2a140f 100%);
  border-bottom:2px solid var(--bzStallEdge);
  padding:10px clamp(12px,3vw,28px);
  display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;
}

.bzMark{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--bzInk);}
.bzMark svg{display:block;width:42px;height:42px;flex:0 0 42px;}
.bzMarkText{display:flex;flex-direction:column;font-family:'El Messiri','Segoe UI',sans-serif;font-size:19px;letter-spacing:.04em;}
.bzMarkText small{font-family:'Comfortaa',sans-serif;font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--bzInkSoft);}

.bzAisle{
  display:flex;flex-wrap:wrap;gap:4px 16px;
  font-size:13px;margin-right:auto;
}
.bzAisle a{color:var(--bzInkSoft);text-decoration:none;padding:3px 0;border-bottom:1px dotted transparent;}
.bzAisle a:hover{color:var(--bzSaffron);border-bottom-color:var(--bzSaffron);}

.bzDeal{
  display:inline-block;text-decoration:none;
  background:linear-gradient(140deg,#f4a259,#d97d2c);
  color:#2a140f;font-weight:700;font-size:14px;
  padding:11px 20px;
  clip-path:polygon(9px 0,100% 0,calc(100% - 9px) 100%,0 100%);
  letter-spacing:.02em;
}
.bzDeal:hover{filter:brightness(1.09);}
.bzDealGhost{
  background:#4a2417;color:var(--bzSaffron);
  box-shadow:inset 0 0 0 1px var(--bzSaffron);
}

/* ---------- ряд ---------- */

.bzRow{
  position:relative;
  padding:44px clamp(14px,4vw,34px) 40px;
  border-top:1px solid #4a271c;
}
.bzRow::before{
  content:"";position:absolute;top:0;left:0;right:0;height:14px;
  background:
    repeating-linear-gradient(135deg,var(--bzSaffron) 0 7px,transparent 7px 14px),
    repeating-linear-gradient(45deg,var(--bzIndigo) 0 7px,transparent 7px 14px);
  opacity:.5;
}
.bzRowAlt{background:#31170f;}
.bzRowInner{max-width:1160px;margin:0 auto;}

.bzSign{
  display:inline-block;
  background:var(--bzIndigo);
  padding:9px 30px;
  margin:0 0 8px;
  clip-path:polygon(16px 0,100% 0,calc(100% - 16px) 100%,0 100%);
  max-width:100%;
}
.bzSignText{font-size:clamp(20px,3.1vw,27px);color:var(--bzInk);letter-spacing:.01em;}
.bzLead{color:var(--bzInkSoft);max-width:78ch;margin-bottom:22px;}

/* ---------- витрина (hero) ---------- */

.bzFront{
  padding:clamp(26px,5vw,52px) clamp(14px,4vw,34px) 44px;
  background:
    radial-gradient(circle at 12% 0%,rgba(244,162,89,.16),transparent 58%),
    radial-gradient(circle at 88% 20%,rgba(61,90,128,.28),transparent 55%),
    var(--bzGround);
}
.bzFrontInner{
  max-width:1160px;margin:0 auto;
  display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:clamp(18px,3vw,36px);align-items:start;
}
.bzStrip{
  display:inline-block;font-size:11.5px;letter-spacing:.16em;text-transform:uppercase;
  color:var(--bzSaffron);border:1px dashed #7a4a33;padding:5px 13px;margin-bottom:16px;
}
h1{font-size:clamp(25px,4.6vw,42px);margin-bottom:14px;}
.bzPitch{font-size:clamp(15px,1.7vw,17.5px);color:var(--bzInkSoft);max-width:60ch;}
.bzActions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 18px;}
.bzActions .bzDeal{font-size:15px;padding:14px 24px;}

.bzCount{display:flex;flex-wrap:wrap;gap:10px;}
.bzCount div{
  background:var(--bzStallBg);border:1px solid var(--bzStallEdge);
  padding:9px 15px;min-width:0;
}
.bzCount span{display:block;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--bzInkSoft);}
.bzFigure{font-size:19px;color:var(--bzSaffron);}

.bzBoard{
  background:var(--bzStallBg);
  border:1px solid var(--bzStallEdge);
  padding:20px 20px 16px;
  position:relative;
}
.bzBoard::before{
  content:"";position:absolute;inset:0 0 auto 0;height:9px;
  background:repeating-linear-gradient(90deg,var(--bzSaffron) 0 12px,var(--bzIndigo) 12px 24px);
  opacity:.75;
}
.bzBoardTitle{font-family:'El Messiri',sans-serif;font-size:17px;margin:8px 0 12px;}
.bzBoard ul{list-style:none;margin:0;padding:0;font-size:13.5px;}
.bzBoard li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px dotted #5a3225;}
.bzBoard li:last-child{border-bottom:0;}
.bzBoard li em{font-style:normal;color:var(--bzSaffron);text-align:right;}

/* ---------- прилавок каталога ---------- */

.bzCounter{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.bzStall{
  position:relative;
  background:var(--bzStallBg);
  border:1px solid var(--bzStallEdge);
  padding:16px 16px 18px;
  min-width:0;
}
.bzStallWide{grid-column:span 2;}
.bzStallTall{grid-column:span 2;}
.bzStall h3{font-size:17px;margin-bottom:6px;color:var(--bzInk);padding-right:66px;}
.bzStall p{font-size:13.6px;color:var(--bzInkSoft);margin-bottom:0;}
.bzKind{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--bzIndigo);filter:brightness(1.5);display:block;margin-bottom:6px;}

.bzTag{
  position:absolute;top:14px;right:14px;
  background:var(--bzSaffron);color:#2a140f;
  font-family:'El Messiri',sans-serif;font-size:13px;font-weight:700;
  padding:4px 9px 4px 7px;
  clip-path:polygon(0 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%);
  line-height:1.25;
}
.bzTag small{display:block;font-family:'Comfortaa',sans-serif;font-size:8.5px;letter-spacing:.11em;font-weight:400;}

/* ---------- ленты студий ---------- */

.bzWeave{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:20px;}
.bzWeave span{
  border:1px solid var(--bzStallEdge);background:#33180f;
  padding:7px 13px;font-size:13px;color:var(--bzInkSoft);
  clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%);
}
.bzSplit{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px;}
.bzNote{background:var(--bzStallBg);border-left:3px solid var(--bzSaffron);padding:14px 16px;min-width:0;}
.bzNote h3{font-size:16px;margin-bottom:7px;}
.bzNote p{font-size:13.6px;color:var(--bzInkSoft);margin-bottom:0;}

/* ---------- пакет ---------- */

.bzBale{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:13px;margin-bottom:18px;}
.bzBaleItem{
  background:var(--bzStallBg);border:1px solid var(--bzStallEdge);
  padding:15px;position:relative;min-width:0;
}
.bzBaleItem::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:5px;
  background:repeating-linear-gradient(90deg,var(--bzIndigo) 0 9px,transparent 9px 18px);
}
.bzStep{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--bzInkSoft);}
.bzBaleItem strong{font-weight:400;}
.bzAmt{font-family:'El Messiri',sans-serif;font-size:23px;color:var(--bzSaffron);display:block;margin:4px 0 5px;}
.bzBaleItem p{font-size:13.2px;color:var(--bzInkSoft);margin:0;}

/* ---------- лавки VIP ---------- */

.bzStalls{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;
}
.bzShop{background:var(--bzStallBg);border:1px solid var(--bzStallEdge);padding:0 12px 14px;min-width:0;}
.bzAwning{
  margin:0 -12px 12px;
  background:repeating-linear-gradient(90deg,var(--bzSaffron) 0 10px,#b9532c 10px 20px);
  border-bottom:2px solid #2a140f;
}
.bzShop:nth-child(1) .bzAwning{height:18px;}
.bzShop:nth-child(2) .bzAwning{height:26px;}
.bzShop:nth-child(3) .bzAwning{height:34px;}
.bzShop:nth-child(4) .bzAwning{height:42px;}
.bzShop:nth-child(5) .bzAwning{height:50px;}
.bzShop:nth-child(6) .bzAwning{height:58px;}
.bzShop h3{font-size:15.5px;margin-bottom:4px;}
.bzBack{font-family:'El Messiri',sans-serif;font-size:21px;color:var(--bzSaffron);display:block;margin-bottom:5px;}
.bzShop p{font-size:12.4px;color:var(--bzInkSoft);margin:0;}

/* ---------- касса: строки с пунктиром ---------- */

.bzLedger{list-style:none;margin:0 0 18px;padding:0;max-width:820px;}
.bzLedger li{display:flex;align-items:baseline;gap:6px;padding:9px 0;border-bottom:1px solid #43231a;font-size:14.4px;}
.bzLedgerName{color:var(--bzInk);white-space:normal;}
.bzDots{flex:1 1 auto;border-bottom:1px dotted #7a4a33;transform:translateY(-4px);min-width:16px;}
.bzLedgerVal{color:var(--bzSaffron);text-align:right;font-family:'El Messiri',sans-serif;font-size:15px;}

/* ---------- турнир ---------- */

.bzPrize{
  background:linear-gradient(135deg,#3d5a80 0%,#2c3f5c 100%);
  border:1px solid #567099;padding:20px;margin-bottom:18px;
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
}
.bzPrizeSum{font-family:'El Messiri',sans-serif;font-size:clamp(26px,5vw,40px);color:#ffd9a8;line-height:1.1;}
.bzPrize p{margin:0;font-size:13.6px;color:#e3e9f2;max-width:52ch;}

/* ---------- отзывы ---------- */

.bzVoices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:14px;}
.bzVoice{background:var(--bzStallBg);border:1px solid var(--bzStallEdge);padding:16px;min-width:0;position:relative;}
.bzVoice::before{
  content:"";position:absolute;top:0;left:0;width:100%;height:4px;
  background:repeating-linear-gradient(90deg,var(--bzIndigo) 0 8px,var(--bzSaffron) 8px 16px);opacity:.7;
}
.bzWho{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--bzInkSoft);margin-bottom:8px;flex-wrap:wrap;}
.bzWhen{font-weight:400;}
.bzVoice p{font-size:13.6px;margin:0;color:var(--bzInk);}
.bzName{font-family:'El Messiri',sans-serif;font-size:15px;color:var(--bzSaffron);}

/* ---------- FAQ ---------- */

.bzAsk{
  background:var(--bzStallBg);border:1px solid var(--bzStallEdge);
  margin-bottom:9px;padding:0 16px;
}
.bzAsk summary{
  cursor:pointer;padding:13px 0;font-family:'El Messiri',sans-serif;font-size:16px;
  list-style:none;display:flex;gap:10px;align-items:flex-start;
}
.bzAsk summary::-webkit-details-marker{display:none;}
.bzAsk summary::before{content:"◆";color:var(--bzSaffron);font-size:11px;line-height:1.7;flex:0 0 auto;}
.bzAsk[open] summary{border-bottom:1px dotted #5a3225;}
.bzAsk p{font-size:13.8px;color:var(--bzInkSoft);padding:12px 0 4px;margin:0;}

/* ---------- автор + подвал ---------- */

.bzScribe{
  max-width:1160px;margin:0 auto;
  background:#31170f;border:1px dashed #6a3b29;padding:20px;
}
.bzScribe h2{font-size:19px;margin-bottom:10px;}
.bzScribe p{font-size:13.4px;color:var(--bzInkSoft);}
.bzAge{
  display:inline-block;background:var(--bzSaffron);color:#2a140f;
  font-size:12px;padding:3px 10px;margin-right:8px;font-weight:700;
}

.bzOut{
  background:#1d0d09;border-top:2px solid var(--bzStallEdge);
  padding:30px clamp(14px,4vw,34px);
}
.bzOutInner{max-width:1160px;margin:0 auto;font-size:12.8px;color:var(--bzInkSoft);}
.bzOutInner p{margin-bottom:10px;}
.bzOutLinks{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:14px;}
.bzOutLinks a{color:var(--bzInkSoft);text-decoration:none;border-bottom:1px dotted #6a3b29;}

/* ---------- адаптив ---------- */

@media (max-width:980px){
  .bzFrontInner{grid-template-columns:minmax(0,1fr);}
  .bzCounter{grid-template-columns:repeat(2,minmax(0,1fr));}
  .bzStallWide,.bzStallTall{grid-column:span 2;}
  .bzStalls{grid-template-columns:repeat(3,minmax(0,1fr));}
}

@media (max-width:620px){
  body{font-size:15.4px;}
  .bzGate{gap:9px 12px;padding:9px 13px;}
  .bzAisle{order:3;width:100%;font-size:12.2px;gap:3px 12px;}
  .bzDeal{font-size:13px;padding:10px 15px;}
  .bzCounter{grid-template-columns:minmax(0,1fr);}
  .bzStallWide,.bzStallTall{grid-column:span 1;}
  .bzStalls{grid-template-columns:repeat(2,minmax(0,1fr));}
  .bzShop:nth-child(n) .bzAwning{height:20px;}
  .bzShop:nth-child(4) .bzAwning,.bzShop:nth-child(5) .bzAwning,.bzShop:nth-child(6) .bzAwning{height:30px;}
  .bzRow{padding:32px 13px 30px;}
  .bzFront{padding:22px 13px 32px;}
  .bzSign{padding:8px 20px;clip-path:polygon(11px 0,100% 0,calc(100% - 11px) 100%,0 100%);}
  .bzLedger li{flex-wrap:wrap;}
  .bzLedgerVal{text-align:left;}
  .bzActions .bzDeal{font-size:14px;padding:12px 16px;}
}
