/* Тема «Базовый» — надстройка над оригинальными css/main.css + dopstyles.css (белорусские-подарки.бел).
   Все новые блоки/страницы; оригинал не правим. Шрифты: Rotonda (заголовки), PTSans-Caption (текст). */
:root{--choco:#7d4b30;--choco-d:#5c3420;--ink:#2b1a12;--cream:#fff9e6;--cream2:#ffe9c9;--gold:#f9cc87;--gold2:#f0c076;--green:#1b9950;--red:#e0332f;--muted:#666766;--line:#e8dcc6}
html{-webkit-text-size-adjust:100%}body{font-family:"PTSans-Caption",sans-serif;color:var(--ink);margin:0}
.container.maincontainer{overflow:visible}
a{color:var(--choco)}a:hover{color:var(--green)}
img{max-width:100%;height:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:.4rem;z-index:999}
.hp{position:absolute;left:-9999px}
/* меню: доп.пункты + подсветка активного + мобильный бургер */
.header_menu ul{flex-wrap:wrap;justify-content:center}.header_menu li a{transition:color .2s,transform .2s;display:inline-block}.header_menu li a:hover{transform:translateY(-2px)}.header_menu li.cur a{color:var(--red)}
.header .cart-link,.tel .cart-link{display:inline-block;margin-top:4px;background:var(--gold);color:var(--ink);border-radius:14px;padding:2px 10px;font-size:12px;font-weight:700;text-decoration:none}.cart-link.has{background:var(--green);color:#fff}
.burger{display:none;background:none;border:0;font-size:26px;color:#fff;cursor:pointer;margin-left:10px}
@media(max-width:991px){.header_menu ul{display:none;flex-direction:column}.header_menu.open ul{display:flex}.burger{display:inline-block}}
/* hero (banner) */
.banner{overflow:hidden;align-items:flex-start}
.banner .banner-text-wrap{position:relative;max-width:640px;z-index:1}
.banner .firm-present{margin-bottom:10px}
.hero-packs{position:relative;height:250px;margin-top:6px}
.hero-packs .hp1,.hero-packs .hp2,.hero-packs .hp3{position:absolute;bottom:0;left:auto;filter:drop-shadow(0 14px 18px rgba(0,0,0,.55));transition:transform .35s ease}
.hero-packs .hp1{left:0;width:230px;z-index:2}.hero-packs .hp2{left:150px;bottom:-4px;width:190px;z-index:3}.hero-packs .hp3{left:330px;bottom:70px;width:135px;transform:rotate(8deg);z-index:1}
.hero-packs .hp1:hover,.hero-packs .hp2:hover{transform:translateY(-10px) scale(1.04);z-index:5}.hero-packs .hp3:hover{transform:rotate(0) translateY(-10px) scale(1.04)}
.hero-packs .hc{position:absolute;filter:drop-shadow(0 8px 10px rgba(0,0,0,.45));animation:floaty 7s ease-in-out infinite;pointer-events:none;z-index:4}
.hero-packs .hs{position:absolute;width:38px;height:38px;fill:none;stroke:var(--gold);stroke-width:1.4;stroke-linecap:round;opacity:.85;animation:spin 18s linear infinite;pointer-events:none}
@keyframes floaty{0%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-12px) rotate(4deg)}100%{transform:translateY(0) rotate(-6deg)}}
@keyframes spin{to{transform:rotate(360deg)}}
.snow{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:0}.snow i{position:absolute;top:-30px;color:#fff;opacity:.85;font-style:normal;animation:snowfall linear infinite;text-shadow:0 0 6px rgba(255,255,255,.6)}
@keyframes snowfall{0%{transform:translateY(-30px) translateX(0) rotate(0)}50%{transform:translateY(300px) translateX(18px) rotate(180deg)}100%{transform:translateY(640px) translateX(-10px) rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.snow i,.hero-packs .hc,.hero-packs .hs{animation:none}}
.banner .form{width:320px;padding:22px 24px;margin-left:auto;border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.35);position:relative;z-index:2;align-self:center}
.banner .form h2{font-size:15px;padding-bottom:10px;font-family:"PTSans-Caption",sans-serif;color:var(--choco)}.banner .form .form-text{font-size:14px;padding-bottom:12px}.banner .form .form-text span{color:var(--red)}
.banner .form .input{margin-bottom:10px}.banner .form .btn-group{margin-bottom:12px}.banner .form .text-wrap p{font-size:11px;color:#989898}.banner .form .form-msg{font-size:12px;color:var(--green);min-height:1em;margin-top:6px}
@media(max-width:991px){.hero-packs{height:200px}.hero-packs .hp1{width:170px}.hero-packs .hp2{left:110px;width:140px}.hero-packs .hp3{left:240px;width:100px}.banner .form{margin:24px auto 30px}}
/* продажный блок */
.usp{margin:0 -20px;padding:34px 40px 30px;background:var(--choco-d) url(/static/base/img/tot-banner.png) center/cover no-repeat;position:relative;color:var(--ink)}
.usp:before{content:"";position:absolute;inset:0;background:rgba(74,40,22,.88)}.usp>*{position:relative}
.usp-head{text-align:center;color:#fff;margin-bottom:20px}.usp-head h2{font-family:"Rotonda",sans-serif;font-size:32px;margin:0 0 6px;color:var(--gold)}.usp-head p{margin:0;font-size:15px;color:#f3e3d1}
.usp-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.usp-item{background:var(--cream);border-radius:12px;padding:18px 18px 16px;display:flex;flex-direction:column;gap:6px;min-height:150px;transition:transform .25s ease,box-shadow .25s ease}.usp-item:hover{transform:translateY(-4px);box-shadow:0 14px 28px rgba(0,0,0,.25)}
.usp-item h3{margin:0;font-size:17px;color:var(--ink)}.usp-item p{margin:0;font-size:13px;line-height:1.45;color:#5a4234}
.usp-item svg{width:34px;height:34px;fill:none;stroke:var(--green);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.usp-big{font-family:"Rotonda",sans-serif;font-size:44px;line-height:1;font-weight:700;color:var(--red)}
.usp-item.hot{background:var(--gold)}.usp-item.hot2{background:var(--cream2)}
.usp-cta{text-align:center;margin-top:20px;color:#f3e3d1;font-size:13px;display:flex;gap:16px;align-items:center;justify-content:center;flex-wrap:wrap}
.usp-btn,.btn-main{display:inline-block;background:var(--green);color:#fff;font-weight:700;font-size:16px;padding:13px 28px;border-radius:8px;text-decoration:none;border:0;cursor:pointer;font-family:"PTSans-Caption",sans-serif;transition:transform .2s,filter .2s}.usp-btn:hover,.btn-main:hover{transform:scale(1.04);filter:brightness(1.08);color:#fff}
.btn-out{display:inline-block;border:2px solid var(--choco);color:var(--choco);font-weight:700;font-size:15px;padding:11px 24px;border-radius:8px;text-decoration:none;background:#fff;cursor:pointer;font-family:"PTSans-Caption",sans-serif;transition:transform .2s}.btn-out:hover{transform:scale(1.04);color:var(--choco)}
@media(max-width:900px){.usp-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.usp-grid{grid-template-columns:1fr}.usp{margin:0;padding:24px 16px}}
/* плитки: две цены */
.product.teaser{position:relative;transition:transform .25s ease,box-shadow .25s ease}.product.teaser:hover{transform:translateY(-6px);box-shadow:0 18px 34px rgba(60,32,18,.28)}
.product.teaser .product__img img{transition:transform .35s ease}.product.teaser:hover .product__img img{transform:scale(1.07) rotate(-2deg)}
.product.teaser .disc{position:absolute;z-index:3;left:8px;top:8px;background:var(--red);color:#fff;font-weight:700;font-size:12px;padding:2px 8px;border-radius:12px}
.product.teaser .mat{position:absolute;z-index:3;right:8px;top:8px;background:var(--cream);color:var(--choco);font-size:11px;padding:2px 8px;border-radius:12px;border:1px solid var(--gold2)}
.product.teaser .tiers{display:flex;flex-direction:column;gap:4px;width:100%;margin:6px 0 8px;font-size:12px;line-height:1.15}
.product.teaser .tier{display:flex;justify-content:space-between;align-items:center;gap:6px;text-align:left;background:var(--cream);border-radius:6px;padding:5px 8px;color:var(--ink)}.product.teaser .tier.el{background:var(--cream2)}.product.teaser .tier.el>span:first-child{color:var(--choco)}
.product.teaser .tier>span:last-child{white-space:nowrap}.product.teaser .tier b{color:var(--green);font-size:15px}.product.teaser .tier s{color:#989898;font-size:11px;margin-left:3px}.product.teaser .tier small{color:var(--muted)}
.product.teaser .product__prices{display:none}
.product.teaser .product__btn,.product.full .product__btn{transition:transform .2s ease,filter .2s ease}.product.teaser:hover .product__btn{transform:scale(1.04);filter:brightness(1.08)}
.tile-add{display:block;text-align:center;font-size:12px;color:var(--choco);margin-top:6px;cursor:pointer;background:none;border:0;font-family:inherit;text-decoration:underline}
/* секции общие */
.sec{padding:34px 20px 24px}.sec h2,.sec h1{font-family:"Rotonda",sans-serif;color:var(--choco);text-align:center;margin:0 0 6px}.sec h1{font-size:34px}.sec h2{font-size:30px}.sec .sub{text-align:center;color:var(--muted);margin:0 0 18px}
.sec.cream{background:var(--cream)}.sec.white{background:#fff}
.narrow{max-width:900px;margin:0 auto}
.crumbs{font-size:12px;color:var(--muted);padding:12px 20px 0}.crumbs a{color:var(--muted)}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media(max-width:900px){.grid3,.grid4{grid-template-columns:1fr 1fr}}@media(max-width:600px){.grid3,.grid2,.grid4{grid-template-columns:1fr}}
.card{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 6px 16px rgba(60,32,18,.08);transition:transform .25s}.card:hover{transform:translateY(-3px)}.card h3{margin:0 0 6px;font-size:17px}.card p{margin:0;font-size:13px;line-height:1.5}
.card.link{text-decoration:none;color:var(--ink);display:block}
/* отзывы */
.rev{background:#fff;border-radius:12px;padding:16px 18px;box-shadow:0 6px 16px rgba(60,32,18,.08);display:flex;flex-direction:column;gap:6px;transition:transform .25s}.rev:hover{transform:translateY(-4px)}
.rev-top{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.rev-top b{font-size:14px}.rev-top small{display:block;color:var(--muted);font-size:11px;font-weight:400}.stars{color:#f0a500;letter-spacing:1px;white-space:nowrap}.rev p{margin:0;font-size:13px;line-height:1.5}.rev small.d{color:#989898;font-size:11px}
.rev-more{text-align:center;margin-top:16px}.rev-more a{color:var(--choco);font-weight:700}
/* faq */
.faq{background:#fff;border-radius:10px;padding:10px 16px;margin:8px 0;box-shadow:0 4px 12px rgba(60,32,18,.06)}.faq summary{cursor:pointer;font-weight:700;font-size:15px}.faq[open] summary{color:var(--choco)}.faq p{margin:8px 0 0;font-size:14px;line-height:1.5}
/* фильтры каталога */
.filters{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:center;justify-content:center;padding:14px 20px;background:var(--cream);border-radius:12px;margin:14px 20px}
.filters fieldset{border:0;padding:0;margin:0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.filters legend{float:left;font-weight:700;margin-right:6px;font-size:13px;color:var(--choco)}
.chip{display:inline-block;padding:5px 12px;border:1px solid var(--gold2);border-radius:14px;font-size:13px;font-weight:700;cursor:pointer;background:#fff;color:var(--ink);transition:transform .15s}.chip:hover{transform:translateY(-1px)}.chip input{position:absolute;opacity:0;width:0;height:0;margin:0}.chip.on{background:var(--green);color:#fff;border-color:var(--green)}
.filters select{padding:5px 8px;border:1px solid var(--gold2);border-radius:8px;font-family:inherit}
.count{text-align:center;color:var(--muted);font-size:13px;margin:0 0 4px}
/* карточка товара */
.product.full .tabs{display:flex;gap:10px;margin:14px 0}.tab{flex:1;border:2px solid #d1d5dc;border-radius:8px;padding:10px 12px;cursor:pointer;background:#fff;text-align:left;font-family:inherit;color:var(--ink);transition:transform .2s,border-color .2s}.tab:hover{transform:translateY(-2px);border-color:var(--green)}.tab.on{border-color:var(--green);background:#eef8f1}.tab b{display:block}.tab .p{color:var(--green);font-size:22px;font-weight:700}.tab s{color:#989898;font-size:13px}.tab small{color:var(--muted);font-size:12px}
.buy-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0}.qty{display:flex;align-items:center;gap:6px;font-size:13px}.qty input{width:64px;padding:8px;border:1px solid #d1d5dc;border-radius:6px;font-family:inherit}
.perks{list-style:none;padding:0;margin:8px 0 0;font-size:13px;color:var(--muted);display:grid;gap:3px}
.panel{display:none;padding:0 20px}.panel.on{display:block}.panel h2{margin:16px 0 8px;font-family:"Rotonda",sans-serif;color:var(--choco);font-size:26px}.panel .meta{color:var(--muted);font-size:13px;margin:0 0 10px}
.candies{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin:10px 0 30px}.candy{background:#fff;border:1px solid #eee;border-radius:8px;padding:8px;text-align:center;font-size:12px;position:relative;transition:transform .2s;color:var(--ink)}.candy:hover{transform:scale(1.06)}.candy img{width:100%;aspect-ratio:1;object-fit:contain}.candy .q{position:absolute;right:6px;top:6px;background:var(--green);color:#fff;border-radius:10px;padding:1px 6px;font-size:11px}.candy .noimg{aspect-ratio:1;display:flex;align-items:center;justify-content:center;background:var(--cream);border-radius:6px;font-size:22px}.candy .b{color:var(--muted)}
@media(max-width:900px){.candies{grid-template-columns:repeat(4,1fr)}}@media(max-width:600px){.candies{grid-template-columns:repeat(2,1fr)}.product.full .tabs{flex-direction:column}}
.logo-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center;margin:8px 0}.logo-cell{background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px 12px;height:56px;display:flex;align-items:center;justify-content:center;min-width:100px;transition:transform .2s}.logo-cell:hover{transform:scale(1.05)}.logo-cell img{max-height:40px;max-width:140px;object-fit:contain}
/* фабрики */
.factory{display:flex;gap:16px;align-items:flex-start;background:#fff;border-radius:12px;padding:18px;box-shadow:0 6px 16px rgba(60,32,18,.08)}.factory img{width:120px;height:70px;object-fit:contain;flex:0 0 auto;border:1px solid var(--line);border-radius:8px;padding:4px;background:#fff}.factory h3{margin:0 0 4px;font-size:18px}.factory p{margin:4px 0;font-size:13px;line-height:1.5}.factory .m{color:var(--muted);font-size:12px}
@media(max-width:600px){.factory{flex-direction:column}}
/* формы, модалка, тосты */
.frm label{display:block;font-size:13px;font-weight:700;margin:8px 0}.frm input,.frm textarea,.frm select{width:100%;padding:9px 10px;border:1px solid #d1d5dc;border-radius:8px;font-family:inherit;margin-top:4px;background:#fff;box-sizing:border-box}.frm input:focus,.frm textarea:focus{outline:2px solid var(--green);border-color:var(--green)}
.form-msg{min-height:1.2em;font-weight:700;color:var(--green);font-size:13px;margin-top:6px}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal[hidden]{display:none}.modal-box{background:#fff;border-radius:12px;padding:22px 24px;max-width:440px;width:100%;position:relative;max-height:90vh;overflow:auto}.modal-x{position:absolute;right:8px;top:4px;background:none;border:0;font-size:26px;cursor:pointer}body.modal-open{overflow:hidden}
.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--ink);color:#fff;padding:10px 18px;border-radius:20px;opacity:0;transition:.25s;z-index:300;font-weight:700}.toast.show{opacity:1;transform:translate(-50%,0)}
/* корзина */
.cart-table{width:100%;border-collapse:collapse;font-size:14px}.cart-table th,.cart-table td{padding:8px 6px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}.cart-table img{width:56px;height:56px;object-fit:contain;vertical-align:middle;margin-right:6px}.cart-table input{width:64px;padding:6px;border:1px solid #d1d5dc;border-radius:6px}.cart-table s{color:#989898;font-size:.85em}
.link-x{background:none;border:0;font-size:20px;cursor:pointer;color:var(--muted)}.cart-total{font-size:22px;text-align:right;margin-top:12px;font-weight:700}.empty{text-align:center;padding:30px;color:var(--muted)}
/* футер */
footer .legal{text-align:center;font-size:12px;color:#fff;opacity:.85;margin-top:12px}footer .fnav{text-align:center;margin-top:10px;font-size:13px}footer .fnav a{color:#fff;margin:0 8px}
/* статьи */
.article{max-width:820px;margin:0 auto;font-size:15px;line-height:1.6}.article h1{font-family:"Rotonda",sans-serif;color:var(--choco);font-size:32px;text-align:left}.article h2{font-family:"Rotonda",sans-serif;color:var(--choco);font-size:22px;margin-top:20px}.article .lead{color:var(--muted);font-size:16px}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:14px 0}.stat{background:#fff;border-radius:12px;padding:14px;text-align:center;box-shadow:0 6px 16px rgba(60,32,18,.08)}.stat b{display:block;font-family:"Rotonda",sans-serif;font-size:34px;color:var(--red)}.stat span{font-size:12px;color:var(--muted)}
@media(max-width:600px){.stats{grid-template-columns:1fr 1fr}}
@media print{.header_menu,.banner .form,.usp,footer,.modal,.buy-row{display:none!important}}
/* фиксы переполнения (кроссбраузер-прогон 2026-08-18) */
header .nav .text a{min-width:0;max-width:100%}header .text-nav{min-width:0}
@media(max-width:991px){header .text-present{white-space:normal;font-size:12px;line-height:1.2}header .nav{flex-wrap:wrap}header .contacts{max-width:100%}}
.factory,.factory>div,.card,.rev,.usp-item{min-width:0}.factory p,.factory h3{overflow-wrap:anywhere}
@media(max-width:900px){.grid2{grid-template-columns:1fr}}

footer .fnav{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;white-space:normal;padding:0 10px}footer .fnav a{margin:0}
header .nav .text a,header .nav .text a .text-present,header .nav .text a .text-wrap{color:#fff}
.header_menu ul{gap:0 6px}.header_menu li a{font-size:19px;padding:0 10px}
.header_menu ul{padding:0 2%}.header_menu ul a{padding:10px 12px;font-size:18px}
