/* Агрегатор цен «Где дешевле», новый низ сайта и подвал.
   Пара шрифтов: Playfair Display (заголовки и крупные цифры) + IBM Plex Mono (цены, подписи, данные). */
:root{
  --disp:'Playfair Display','Cormorant Garamond',Georgia,serif;
  --mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;
  --cream-hi:#f8efe4;
}
.disp{font-family:var(--disp)}
.mono{font-family:var(--mono)}
.num{font-family:var(--disp);font-weight:400;font-variant-numeric:lining-nums tabular-nums;letter-spacing:-.02em;line-height:1}
.num small{font-size:.46em;margin-left:.12em;letter-spacing:0;opacity:.7}
.empty-note{padding:28px 0;opacity:.7;grid-column:1/-1}

/* ===================== ГЛАВНЫЙ БЛОК «ГДЕ ДЕШЕВЛЕ» ===================== */
.agg{background:var(--b900);background-image:radial-gradient(70% 90% at 0% 0%,rgba(165,30,27,.38),transparent 60%);margin-top:var(--gap)}
.agg-in{max-width:1600px;margin:0 auto;padding:clamp(40px,6vw,96px) clamp(16px,3vw,48px) clamp(36px,5vw,72px)}
.agg .kicker{font-family:var(--mono);color:var(--gold);font-size:11px;letter-spacing:.24em;text-transform:uppercase}
.agg-head{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:clamp(20px,5vw,90px);align-items:end}
.agg-h{font-weight:400;font-size:clamp(60px,10.5vw,176px);line-height:.86;letter-spacing:-.04em;color:var(--cream)}
.agg-h em{font-style:italic;color:var(--blush)}
.agg-lead{font-size:clamp(15px,1.2vw,18px);line-height:1.6;color:var(--blush);max-width:44ch;padding-bottom:.6em}
.agg-meta{list-style:none;display:flex;flex-wrap:wrap;gap:8px 28px;margin:clamp(24px,3vw,44px) 0 18px;padding:14px 0;border-top:1px solid rgba(242,229,215,.25);border-bottom:1px solid rgba(242,229,215,.25);
  font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--blush)}
.agg-meta b{color:var(--gold);font-weight:500;font-size:1.25em;margin-right:.15em}
.agg-meta .upd{margin-left:auto;opacity:.75}

.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 clamp(16px,2vw,26px)}
.chip{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;padding:10px 18px;border:1px solid rgba(242,229,215,.4);color:var(--cream);transition:background-color .3s,color .3s,border-color .3s}
.chip:hover{border-color:var(--cream)}
.chip.on{background:var(--cream);color:var(--b800);border-color:var(--cream)}

.pc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,350px),1fr));gap:var(--gap);background:rgba(242,229,215,.14)}
.pc[hidden]{display:none}

/* карточка товара */
.pc{position:relative;display:flex;flex-direction:column;gap:18px;padding:clamp(18px,1.8vw,26px);background:var(--cream);color:var(--b800);transition:background-color .4s,transform .5s var(--ease)}
.pc:hover{background:var(--cream-hi)}
.pc-cover{position:absolute;inset:0;z-index:1}
.pc-head{display:grid;grid-template-columns:96px minmax(0,1fr);gap:16px;align-items:center}
.pc-img{display:grid;place-items:center;height:116px;background:#fff;overflow:hidden}
.pc-img img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:6px}
.pc-img svg{width:50%;fill:none;stroke:var(--b700);stroke-width:1;opacity:.5}
.pc-title{display:flex;flex-direction:column;gap:5px;min-width:0}
.pc-brand{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--b500)}
.pc-title h3{font-family:var(--disp);font-weight:400;font-size:clamp(19px,1.6vw,23px);line-height:1.12;letter-spacing:-.01em}
.pc-vol{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}
.pc-best{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;padding-top:16px;border-top:1px solid rgba(83,19,20,.22)}
.lbl{display:block;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.65;margin-bottom:6px}
.pc-best .num{font-size:clamp(38px,3.3vw,52px)}
.pc-best-r{display:flex;flex-direction:column;align-items:flex-end;gap:7px;text-align:right}
.pc-where{font-family:var(--disp);font-style:italic;font-size:17px;line-height:1.1}
.pc-chip{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;padding:4px 8px;background:var(--b800);color:var(--cream);white-space:nowrap}
.pc-chip.same{background:transparent;color:var(--b800);border:1px solid rgba(83,19,20,.4)}

.pc-rows{list-style:none;position:relative;z-index:2}
.pc-rows li{border-top:1px dashed rgba(83,19,20,.25)}
.pc-rows a{display:grid;grid-template-columns:minmax(5.6em,7.6em) minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 0;transition:color .25s}
.pc-rows a:hover .sn{text-decoration:underline;text-underline-offset:3px}
.pc-rows .sn{font-size:12px;letter-spacing:.04em}
.pc-rows .bar{display:block;height:4px;background:rgba(83,19,20,.14)}
.pc-rows .bar i{display:block;height:100%;background:var(--b700);transform-origin:left;animation:fill .9s var(--ease) both}
.pc-rows .pv{font-size:13px;font-weight:500;text-align:right;white-space:nowrap}
.pc-rows .best .pv{color:var(--b500);font-weight:500}
.pc-rows .best .bar i{background:var(--b500)}
.pc-rows .best .sn::before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--b500);margin-right:.55em;vertical-align:.1em}
.pc-rows .off{opacity:.45}
.pc-rows .off .bar i{background:repeating-linear-gradient(90deg,var(--b700) 0 4px,transparent 4px 7px)}
.pc-rows .off .pv{font-weight:400;font-size:11px}
.pc-more{display:inline-flex;align-items:center;gap:10px;margin-top:auto;font-size:11px;letter-spacing:.18em;text-transform:uppercase;opacity:.75;transition:gap .4s var(--ease),opacity .3s}
.pc-more svg{width:22px;height:11px;fill:none;stroke:currentColor;stroke-width:1}
.pc:hover .pc-more{gap:16px;opacity:1}

.agg-foot{display:flex;flex-wrap:wrap;gap:12px 32px;justify-content:space-between;align-items:center;margin-top:clamp(20px,2.4vw,34px);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--blush)}
.agg-foot a{display:inline-flex;align-items:center;gap:12px;color:var(--cream);border-bottom:1px solid var(--gold);padding-bottom:4px}
.agg-foot svg{width:22px;height:11px;fill:none;stroke:currentColor;stroke-width:1}
.agg-foot span{opacity:.7;text-transform:none;letter-spacing:.04em;font-size:12px}

/* ===================== СТРАНИЦА СРАВНЕНИЯ ===================== */
.inner.wide{max-width:1600px}
.cmp-page .inner .sh,.product-page .inner .sh{font-family:var(--disp);font-weight:400;letter-spacing:-.03em}
.cmp-page .inner .sh em{color:var(--blush)}
.cmp-page .kicker,.product-page .kicker{font-family:var(--mono)}
.cmp-page .agg-meta{margin-top:0}
.toolbar{display:flex;flex-wrap:wrap;gap:16px 32px;margin:8px 0 22px}
.toolbar label{display:flex;flex-direction:column;gap:6px;min-width:220px;flex:1 1 220px;max-width:420px}
.toolbar label span{font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.toolbar input,.toolbar select{font:inherit;font-family:var(--mono);font-size:15px;color:var(--cream);background:transparent;border:0;border-bottom:1px solid rgba(242,229,215,.5);padding:8px 0;border-radius:0;-webkit-appearance:none;appearance:none}
.toolbar select option{color:#2c0809}
.toolbar input:focus,.toolbar select:focus{outline:0;border-bottom-color:var(--gold)}
.nothing{padding:36px 0;font-family:var(--mono);opacity:.75}

/* ===================== СТРАНИЦА ТОВАРА ===================== */
.pd-head{display:grid;grid-template-columns:minmax(220px,340px) minmax(0,1fr);gap:clamp(20px,4vw,64px);align-items:start;margin-bottom:clamp(20px,3vw,40px)}
.pd-img{display:grid;place-items:center;aspect-ratio:1;background:#fff;overflow:hidden}
.pd-img img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;padding:18px}
.pd-img svg{width:40%;fill:none;stroke:var(--b700);stroke-width:1;opacity:.5}
.pd-h{font-weight:400;font-size:clamp(34px,5vw,76px);line-height:1;letter-spacing:-.03em;color:var(--cream)}
.pd-h .br{display:block;font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold);margin-bottom:12px;font-weight:400}
.pd-sum{display:flex;flex-wrap:wrap;gap:18px clamp(24px,4vw,64px);margin-top:clamp(20px,3vw,36px);padding-top:clamp(18px,2.4vw,30px);border-top:1px solid rgba(242,229,215,.25)}
.pd-sum .lbl{color:var(--blush);opacity:.8}
.pd-sum .num.big{display:block;font-size:clamp(52px,6.4vw,100px)}
.pd-sum .num.mid{display:block;font-size:clamp(34px,3.6vw,54px)}
.pd-sum .pc-where{display:block;margin-top:8px;color:var(--cream)}
.pd-sum .pct{display:block;margin-top:8px;font-size:12px;color:var(--gold)}

.ot{list-style:none;border-top:1px solid rgba(242,229,215,.3)}
.ot li{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 15em 9.5em 10em;gap:10px clamp(14px,2vw,32px);align-items:center;padding:clamp(16px,1.8vw,24px) 0;border-bottom:1px solid rgba(242,229,215,.18)}
.ot li.best{background:linear-gradient(90deg,rgba(200,164,106,.14),transparent 70%);box-shadow:inset 3px 0 0 var(--gold);padding-left:16px}
.ot li.off{opacity:.55}
.ot .sn{display:block;font-size:clamp(22px,2.2vw,32px);line-height:1.05}
.ot .ttl{display:block;margin-top:6px;font-size:11px;line-height:1.4;opacity:.6;max-width:44ch}
.ot-bar{height:5px;background:rgba(242,229,215,.16)}
.ot-bar i{display:block;height:100%;background:var(--blush);transform-origin:left;animation:fill .9s var(--ease) both}
.ot li.best .ot-bar i{background:var(--gold)}
.ot-price{display:flex;align-items:baseline;gap:10px;white-space:nowrap}
.ot-price .num{font-size:clamp(30px,3vw,44px)}
.ot-price s{font-size:12px;opacity:.5}
.ot-price em{font-style:normal;font-size:12px;color:var(--gold)}
.ot-delta{font-size:13px;min-width:9.5em;text-align:right}
.ot-delta small{opacity:.65}
.best-tag{color:var(--gold)}
.same-tag,.off-tag{opacity:.7}
.ot-go{display:inline-flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;padding:12px 16px;border:1px solid rgba(242,229,215,.45);transition:background-color .3s,color .3s,gap .4s var(--ease)}
.ot-go svg{width:20px;height:10px;fill:none;stroke:currentColor;stroke-width:1}
.ot-go:hover{background:var(--cream);color:var(--b800);gap:14px}
.ot-note{grid-column:1/-1;font-size:11px;opacity:.65}
.note.mono{font-size:12px;line-height:1.6;max-width:80ch}

.hist{margin:0;background:var(--b900);padding:clamp(14px,2vw,26px)}
.hist svg{display:block;width:100%;height:auto;overflow:visible}
.hist .axis{stroke:rgba(242,229,215,.25);stroke-width:1}
.hist .ln{fill:none;stroke-width:2;stroke-linejoin:round;stroke-linecap:round}
.hist .dt{stroke:none}
.hist .ln0{stroke:var(--gold);fill:var(--gold)}.hist .ln1{stroke:var(--cream);fill:var(--cream)}
.hist .ln2{stroke:#d0734a;fill:#d0734a}.hist .ln3{stroke:var(--blush);fill:var(--blush)}
.hist .dt.ln0,.hist .dt.ln1,.hist .dt.ln2,.hist .dt.ln3{stroke:none}
.hist polyline.ln{fill:none}
.hist figcaption{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:14px;font-size:12px;color:var(--blush)}
.hist .lg{display:inline-flex;align-items:center;gap:8px}
.hist .lg i{display:inline-block;width:14px;height:3px;background:currentColor}
.hist .lg.ln0{color:var(--gold)}.hist .lg.ln1{color:var(--cream)}.hist .lg.ln2{color:#d0734a}.hist .lg.ln3{color:var(--blush)}
.hist .rg{margin-left:auto;opacity:.7}

/* ===================== НОВЫЙ НИЗ ГЛАВНОЙ ===================== */
/* общие правки шрифтов для нижних блоков */
.sec .kicker,.follow-wrap .kicker,.how .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.22em}
.sec .sh,.follow-wrap .sh{font-family:var(--disp);font-weight:400;letter-spacing:-.03em;line-height:.98;font-size:clamp(40px,6.4vw,104px)}
.sec .sh em,.sec .sh2 em,.follow-wrap .sh em{font-style:italic}
.sh2{font-family:var(--disp);font-weight:400;letter-spacing:-.03em;line-height:.98;font-size:clamp(40px,6.4vw,104px)}
.sec .lead{font-size:clamp(15px,1.2vw,18px)}

/* рейтинг переплат */
.lo-spreads .sh2 em{color:var(--b500)}
.spreads{list-style:none;margin-top:clamp(26px,4vw,56px);border-top:1px solid rgba(83,19,20,.5)}
.spreads a{display:grid;grid-template-columns:clamp(46px,6vw,92px) minmax(0,1.25fr) minmax(0,1.5fr) auto;gap:clamp(12px,2.4vw,40px);align-items:center;padding:clamp(18px,2.2vw,30px) 0;border-bottom:1px solid rgba(83,19,20,.25);transition:padding-left .6s var(--ease),background-color .4s}
.spreads a:hover{padding-left:clamp(8px,1.2vw,18px);background:linear-gradient(90deg,rgba(165,30,27,.07),transparent 60%)}
.spreads .rk{font-style:italic;font-weight:400;font-size:clamp(44px,5.6vw,92px);line-height:.9;color:var(--b500);opacity:.9}
.spreads .nm{font-family:var(--disp);font-size:clamp(18px,1.8vw,27px);line-height:1.15}
.spreads .nm b{font-weight:600}
.spreads .nm small{display:block;margin-top:6px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.6}
.rng{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px;font-size:12px}
.rng-track{grid-column:1/-1;position:relative;height:6px;background:rgba(83,19,20,.14)}
.rng-track i{position:absolute;top:0;bottom:0;right:0;background:var(--b500)}
.rng-l,.rng-r{display:flex;flex-direction:column;gap:2px}
.rng-r{text-align:right;align-items:flex-end}
.rng span:not(.rng-track){opacity:.65;font-size:11px;letter-spacing:.06em}
.rng b{font-weight:500;font-size:13px}
.df{display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}
.df .num{font-size:clamp(30px,3.4vw,56px);color:var(--b500)}
.df em{font-style:normal;font-size:12px;letter-spacing:.08em;opacity:.75}

/* магазины и методика цен */
.how-price{background-image:radial-gradient(70% 110% at 100% 0%,rgba(165,30,27,.45),transparent 60%)}
.how-price .sh2{color:var(--cream)}
.how-price .sh2 em{color:var(--blush)}
.shops{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,3vw,48px);margin-top:clamp(28px,4vw,56px)}
.shops li{display:flex;flex-direction:column;gap:18px;padding-top:18px;border-top:1px solid rgba(242,229,215,.4)}
.shops .sn{font-size:clamp(26px,2.8vw,42px);line-height:1;font-weight:400}
.shops dl{display:grid;gap:8px;font-size:12px}
.shops dl div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed rgba(242,229,215,.25);padding-bottom:6px}
.shops dt{opacity:.7;letter-spacing:.06em}
.shops dd{color:var(--gold);font-weight:500}
.shops a{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--blush);border-bottom:1px solid rgba(242,229,215,.35);align-self:flex-start;padding-bottom:3px;transition:color .3s}
.shops a:hover{color:var(--cream)}
.how-price .steps{margin-top:clamp(36px,5vw,72px)}
.how .steps .n{font-style:italic;font-weight:400}
.how .steps h3{font-family:var(--disp);font-weight:400;font-size:clamp(22px,2vw,31px);letter-spacing:-.01em}
.how .vlegend h4{font-family:var(--disp);font-weight:400}
.caveat{margin-top:clamp(28px,3.6vw,52px);font-size:12px;line-height:1.6;letter-spacing:.04em;color:var(--blush);opacity:.8;max-width:70ch}

/* свежие разборы, вопросы, подписка: новые шрифты */
.row .t{font-family:var(--disp);font-weight:400;font-size:clamp(19px,2.1vw,31px);letter-spacing:-.015em;line-height:1.12}
.rows-head,.row .no,.row .rub,.row .dt,.demo-note{font-family:var(--mono)}
.row .pr{font-family:var(--mono);font-size:clamp(13px,1.1vw,15px)}
.row .pr b{font-weight:500}
.row .vd{font-family:var(--disp);font-size:clamp(15px,1.3vw,19px)}
.faq-r summary{font-family:var(--disp);font-weight:400;font-size:clamp(19px,1.9vw,28px);letter-spacing:-.01em}
.follow .ttl{font-family:var(--disp);font-weight:400;letter-spacing:-.02em}
.follow .idx{font-family:var(--mono)}

/* ===================== ПОДВАЛ ===================== */
.site-foot{background:var(--b950);border-top:1px solid rgba(242,229,215,.14)}
.site-foot .foot{padding-top:clamp(36px,5vw,80px)}
.foot-big{font-weight:400;font-size:clamp(40px,15.2vw,250px);line-height:.9;padding-bottom:.14em;letter-spacing:-.03em;color:var(--cream);white-space:nowrap;overflow:hidden;margin:0 0 clamp(10px,2vw,32px) -.04em;user-select:none}
.foot-big span{font-style:italic;font-weight:400}
.site-foot .foot-top{grid-template-columns:minmax(0,1.4fr) repeat(4,minmax(0,1fr))}
.foot-lead{max-width:36ch;font-size:15px;line-height:1.6;color:var(--blush)}
.foot-live{display:flex;align-items:center;gap:10px;margin-top:18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.foot-live i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 0 rgba(200,164,106,.6);animation:pulse 2.4s infinite}
.site-foot .fc h4{font-family:var(--mono);font-weight:400;font-size:11px;letter-spacing:.22em}
.site-foot .fc a{font-family:var(--disp);font-size:17px;line-height:1.25}
.site-foot .foot-row{font-size:11px;letter-spacing:.14em}
.foot-shops{opacity:.8;text-transform:none;letter-spacing:.04em;font-size:12px}
.site-foot .fine{font-family:var(--mono);font-size:11px}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(200,164,106,.55)}70%{box-shadow:0 0 0 10px rgba(200,164,106,0)}100%{box-shadow:0 0 0 0 rgba(200,164,106,0)}}

/* ===================== ТЕЛЕФОН ===================== */
@media (max-width:900px){
  .agg-head{grid-template-columns:1fr;align-items:start}
  .agg-lead{padding-bottom:0}
  .shops{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pd-head{grid-template-columns:1fr}
  .pd-img{max-width:300px}
  .ot li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"shop price" "bar bar" "delta go"}
  .ot li.best{padding-left:14px}
  .ot-shop{grid-area:shop}.ot-price{grid-area:price;justify-self:end}.ot-bar{grid-area:bar}.ot-delta{grid-area:delta;text-align:left}.ot-go{grid-area:go;justify-self:end}
}
@media (max-width:720px){
  .agg-in{padding-top:36px}
  .agg-meta{gap:6px 18px;font-size:11px}
  .agg-meta .upd{margin-left:0;width:100%}
  .chip{padding:9px 14px;font-size:11px}
  .pc-head{grid-template-columns:84px minmax(0,1fr)}
  .pc-img{height:104px}
  .spreads a{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"rk nm df" "rng rng rng";row-gap:14px}
  .spreads .rk{grid-area:rk}.spreads .nm{grid-area:nm}.spreads .df{grid-area:df}.spreads .rng{grid-area:rng}
  .site-foot .foot-top{grid-template-columns:1fr 1fr}
  .site-foot .foot-brand{grid-column:1/-1}
  .foot-row{flex-direction:column}
  .toolbar label{max-width:none}
}
@media (max-width:420px){
  .shops{grid-template-columns:1fr}
}
