@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#75b820;--darkgreen:#4f8d0d;--line:#e8ece5;color:#1d241c;background:#f8faf6;font-family:Manrope,Arial,sans-serif}body{background:#f8faf6;color:#1c241b;font-family:Manrope,Arial,sans-serif} .wrap{max-width:1350px;padding:0 34px}.delivery{background:#75b820;padding:9px 0;font-size:12px;letter-spacing:.02em}.delivery-inner{display:flex;justify-content:space-between;gap:12px}.top{background:white}.nav{padding:19px 34px;gap:30px}.logo{gap:14px;letter-spacing:0}.brand-logo{width:184px;height:auto;display:block;mix-blend-mode:multiply}.brand-divider{width:1px;height:36px;background:#d9dfd3}.brand-sub{font-size:11px;font-weight:800;line-height:1.35;letter-spacing:1.3px;color:#64842c}.head-contact{font-size:12px;color:#7d8779}.head-contact strong{font-size:14px;color:#202b1b}.head-links .outline,.head-links .solid{padding:13px 20px;font-size:12px;border-radius:9px}.head-links .solid{background:#74b521}.head-links .solid:hover{background:#528e14}.head-links .outline{border-color:#dbe8d0}.subnav{background:#fff}.subnav .wrap{gap:35px;min-height:57px;font-size:12px;color:#687463;letter-spacing:.03em}.subnav a:first-child{color:#4b8c0d}.hero{position:relative;overflow:hidden;margin-top:28px;padding:63px 55px 55px;border-radius:20px;background:linear-gradient(113deg,#edf6e6 0%,#f8fbf5 61%,#e4f0d6 100%);border:1px solid #e1ebd8}.hero:after{content:'';position:absolute;right:-100px;top:-145px;width:490px;height:490px;border:85px solid #78b82c18;border-radius:50%;pointer-events:none}.hero .eyebrow{font-size:11px;letter-spacing:2px;color:#579416;display:flex;align-items:center;gap:9px}.eyebrow-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#75b820}.hero h1{max-width:740px;font-size:clamp(36px,4.5vw,63px);line-height:1.1;letter-spacing:-2.8px;margin:21px 0 17px;font-weight:800}.hero h1 em{font-style:normal;color:#68a919}.hero p{max-width:625px;color:#64735d;font-size:16px;line-height:1.75}.hero-benefits{display:flex;gap:22px;flex-wrap:wrap;margin-top:30px;font-size:12px;font-weight:700;color:#4d6841}.panel{border-radius:14px;border-color:#e4e9df;box-shadow:0 5px 22px #30452208}.filters{margin-top:25px;grid-template-columns:minmax(200px,1fr) 250px auto 125px;padding:17px}.filters input,.filters select{background:#f9faf8;border:1px solid #e5e9e1;min-height:46px}.filters button{min-height:46px}.btn,button{background:#73b621;border-radius:9px}.btn:hover,button:hover{background:#528e14}.results{font-size:13px;margin:23px 0 0;color:#7a8575}.grid{gap:20px;margin-top:18px}.product{border:1px solid #e8ece6;border-radius:15px;box-shadow:0 2px 9px #263b1705;transition:transform .2s,box-shadow .2s}.product:hover{transform:translateY(-4px);box-shadow:0 16px 35px #2a3c1c16}.photo{height:240px;background:#f3f6f0;border-bottom:0;position:relative;color:#a6ba9a}.photo img{padding:15px;mix-blend-mode:multiply}.image-corner{position:absolute;z-index:1;top:14px;left:14px;font-size:9px;font-weight:800;letter-spacing:1px;color:#739365;background:#fff;padding:7px 9px;border-radius:5px}.detail{padding:19px;gap:12px}.detail h3{font-size:15px;min-height:41px;line-height:1.5;color:#1d2918}.detail small{font-size:11px}.tag{font-size:11px}.cost{font-size:24px;letter-spacing:-.8px}.detail a.btn{padding:13px}.footer{background:#182219;color:#c5d1c2}.footer strong{color:#fff}.item-page .photo{height:430px}.item-page .photo img{padding:30px}.notice{font-size:12px}input:focus,select:focus{outline-color:#b1db87}@media(max-width:1000px){.nav{padding:17px 25px}.brand-logo{width:158px}.grid{grid-template-columns:repeat(3,1fr)}.filters{grid-template-columns:1fr 1fr}.hero{padding:50px 34px}}@media(max-width:650px){.wrap{padding:0 16px}.delivery-inner span:last-child{display:none}.nav{padding:14px 16px}.brand-logo{width:132px}.brand-divider,.brand-sub{display:none}.head-links .solid{padding:11px;font-size:11px}.hero{margin-top:16px;padding:35px 22px}.hero h1{letter-spacing:-1.5px;font-size:36px}.hero p{font-size:14px}.hero-benefits{gap:10px;font-size:11px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo{height:165px}.detail{padding:12px}.detail h3{font-size:13px}.cost{font-size:19px}.image-corner{font-size:7px}.filters{grid-template-columns:1fr}.subnav .wrap{gap:22px}.item-page .photo{height:300px}}@media(max-width:390px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.head-links{display:flex}.head-links .outline{display:none}}

/* v0.7: storefront category navigation */
.catalog-sections{margin:32px 0 6px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:19px}.section-heading h2{margin:6px 0 0;font-size:27px;letter-spacing:-.8px}.section-heading>a{font-size:12px;font-weight:800;color:#579616;padding-bottom:5px}.section-kicker{font-size:10px;font-weight:800;letter-spacing:2px;color:#70a930}.section-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.section-card{min-height:146px;background:white;border:1px solid #e5ebdf;border-radius:14px;padding:17px;position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:7px;transition:transform .2s,box-shadow .2s,border-color .2s}.section-card:hover{transform:translateY(-3px);box-shadow:0 12px 25px #1e3d1012;border-color:#9ccf6c}.section-card.is-active{border-color:#73b621;background:#f0f8e9;box-shadow:inset 0 0 0 1px #73b621}.section-symbol{display:grid;place-items:center;width:40px;height:40px;background:#eef6e7;border-radius:11px;color:#589818;font-size:26px;font-weight:800}.section-name{font-size:13px;font-weight:800;line-height:1.35;max-width:95%}.section-count{font-size:11px;color:#85917f}.section-arrow{position:absolute;right:14px;top:14px;color:#84a06d;font-size:18px}.catalog-sections+.filters{margin-top:24px}@media(max-width:1050px){.section-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.section-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.section-card{min-height:138px;padding:13px}.section-heading h2{font-size:23px}.section-heading>a{font-size:10px}.section-name{font-size:12px}}

/* MFest hero: gentle entrance and continuous ambient motion (v0.10) */
.hero{isolation:isolate}
.hero::after{animation:mfestOrbit 18s ease-in-out infinite alternate;will-change:transform}
.hero .eyebrow,.hero h1,.hero p,.hero-benefits{position:relative;z-index:1}
.hero .eyebrow{animation:mfestRise .7s .08s both cubic-bezier(.2,.8,.2,1)}
.hero h1{animation:mfestRise .85s .18s both cubic-bezier(.2,.8,.2,1)}
.hero h1 em{display:inline-block;animation:mfestAccent .85s .4s both cubic-bezier(.2,.8,.2,1)}
.hero p{animation:mfestRise .8s .38s both cubic-bezier(.2,.8,.2,1)}
.hero-benefits{animation:mfestRise .8s .56s both cubic-bezier(.2,.8,.2,1)}
.hero .eyebrow-dot{animation:mfestDot 3s ease-in-out infinite}
@keyframes mfestRise{from{opacity:0;transform:translateY(19px)}to{opacity:1;transform:translateY(0)}}
@keyframes mfestAccent{from{opacity:.3;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@keyframes mfestOrbit{from{transform:translate(-15px,9px) scale(.98)}to{transform:translate(35px,-18px) scale(1.08)}}
@keyframes mfestDot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(1.2)}}
@media(prefers-reduced-motion:reduce){.hero::after,.hero .eyebrow,.hero h1,.hero h1 em,.hero p,.hero-benefits,.hero .eyebrow-dot{animation:none!important;transform:none!important;opacity:1!important}}

/* v0.11: aligned, accessible availability filter */
.filters{grid-template-columns:minmax(220px,1fr) minmax(220px,280px) max-content 150px;align-items:center;gap:14px}
.filters>input[name="q"],.filters>select,.filters>button{height:54px;min-height:54px;margin:0;box-sizing:border-box}
.filters .stock-toggle{display:inline-flex;align-items:center;justify-content:center;gap:11px;white-space:nowrap;min-height:54px;padding:0 8px;margin:0;cursor:pointer;font-size:15px;font-weight:700;color:#273524;line-height:1.2}
.filters .stock-toggle input[type="checkbox"]{appearance:none;-webkit-appearance:none;display:grid;place-content:center;flex:0 0 25px;width:25px;height:25px;min-height:0;margin:0;padding:0;border:2px solid #a6bc94;border-radius:6px;background:#fff;cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}
.filters .stock-toggle input[type="checkbox"]:checked{background:#73b621;border-color:#73b621}
.filters .stock-toggle input[type="checkbox"]:checked::after{content:"";width:12px;height:7px;border-left:3px solid #fff;border-bottom:3px solid #fff;transform:translateY(-2px) rotate(-45deg)}
.filters .stock-toggle input[type="checkbox"]:focus-visible{outline:3px solid #b5e68a;outline-offset:3px}
.filters .stock-toggle:hover input[type="checkbox"]{box-shadow:0 0 0 4px #73b62118}
.filters>button{font-size:15px;font-weight:800}
@media(max-width:1050px){.filters{grid-template-columns:minmax(0,1fr) minmax(190px,260px)}.filters .stock-toggle{justify-content:flex-start;padding-left:10px}.filters>button{width:100%}}
@media(max-width:650px){.filters{grid-template-columns:1fr;gap:12px}.filters .stock-toggle{justify-content:flex-start;min-height:42px;padding-left:2px}.filters>button{width:100%}}

/* MFest v0.13: inquiry form */
.inquiry-panel{margin-top:24px;padding:24px;border-radius:18px}.inquiry-panel h2{margin:0 0 8px}.inquiry-panel .form{gap:16px}.inquiry-panel .form label{font-size:14px;color:#26332a;gap:7px}.inquiry-panel input,.inquiry-panel select,.inquiry-panel textarea{width:100%;min-height:48px;background:#fff;border:1px solid #dce4d8}.inquiry-panel textarea{min-height:100px;resize:vertical}.inquiry-panel button{min-height:50px}.inquiry-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inquiry-success,.inquiry-error{padding:14px;border-radius:10px;font-weight:600}.inquiry-success{background:#edf8e7;color:#357e1b}.inquiry-error{background:#fff0ed;color:#a52f22}.inquiry-note{font-size:13px;line-height:1.5}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:600px){.inquiry-row{grid-template-columns:1fr}.inquiry-panel{padding:18px}}

/* v0.14: pricing information, quantity thresholds, branding calculation */
.price-explainer{margin:20px 0 22px;padding:24px;border:1px solid #dce9d3;border-radius:18px;background:linear-gradient(155deg,#ffffff 0%,#f7fbf3 100%);box-shadow:0 8px 25px #2c52120a}
.price-explainer__eyebrow{font-size:11px;font-weight:800;letter-spacing:1.7px;color:#788b6d}
.price-explainer__amount{margin:8px 0 14px;font-size:clamp(28px,3vw,36px);letter-spacing:-1px;line-height:1.2}
.price-explainer__no-print{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:750;color:#23361b}
.price-explainer__check{display:grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:#e7f5dc;color:#4d9618;font-weight:900}
.price-explainer__rule{height:1px;background:#e2ebdc;margin:18px 0}
.price-explainer__info{display:flex;gap:13px;align-items:flex-start;margin:16px 0 0}
.price-explainer__info strong{display:block;color:#24321f;font-size:14px;line-height:1.45}
.price-explainer__info small{display:block;color:#70806b;font-size:12px;line-height:1.6;margin-top:4px}
.price-explainer__icon{display:grid;place-items:center;flex:0 0 39px;width:39px;height:39px;background:#edf1e9;border-radius:11px;color:#687d60;font-size:19px}
.price-explainer__icon--green{background:#e8f5df;color:#539d19}
@media(max-width:650px){.price-explainer{padding:19px 17px}.price-explainer__amount{font-size:29px}}

/* v0.15: product specifications */
.specifications{margin:24px 0;background:#fff;border:1px solid #e0e8da;border-radius:16px;padding:18px 22px}
.specifications>summary{font-size:19px;font-weight:800;cursor:pointer;color:#24321f;padding:4px 0 10px}
.specifications__grid{margin:8px 0 0}
.specifications__row{display:grid;grid-template-columns:minmax(145px,43%) minmax(0,1fr);gap:20px;padding:12px 2px;border-top:1px solid #edf0ea;align-items:start;font-size:14px;line-height:1.5}
.specifications__row:nth-child(even){background:#f8fbf5}
.specifications__row dt{color:#6c7965;font-weight:600;padding-left:8px}
.specifications__row dd{margin:0;color:#243021;font-weight:600;padding-right:8px;overflow-wrap:anywhere}
.inquiry-panel .form button{width:100%}
@media(max-width:540px){.specifications{padding:14px}.specifications__row{grid-template-columns:minmax(105px,42%) minmax(0,1fr);gap:10px;font-size:13px}}

/* v0.16: compact, expandable product description */
.product-description{display:flex;flex-direction:column;margin:20px 0 16px;padding:20px 22px;border:1px solid #e0e8da;border-radius:17px;background:#fff;box-shadow:0 8px 24px rgba(41,74,30,.035)}
.product-description::before{content:"ПРО ТОВАР";order:0;color:#6b8c56;font-size:11px;letter-spacing:1.4px;font-weight:850;margin-bottom:11px}
.product-description__text{order:1;color:#364137;font-size:15px;line-height:1.75;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.product-description[open] .product-description__text{display:block;overflow:visible}
.product-description summary{order:2;list-style:none;cursor:pointer;align-self:flex-start;color:#529514;font-size:14px;font-weight:800;padding:11px 0 0;transition:color .2s}
.product-description summary::-webkit-details-marker{display:none}
.product-description summary:hover{color:#316e0d}
.product-description summary:focus-visible{outline:3px solid #b6e38e;outline-offset:4px;border-radius:3px}
.product-description__close,.product-description[open] .product-description__open{display:none}
.product-description[open] .product-description__close{display:inline}
@media(max-width:650px){.product-description{padding:16px}.product-description__text{font-size:14px}}

/* v0.18: centered top announcement and simplified brand header */
.delivery-inner{justify-content:center;text-align:center}
.delivery-inner span{display:block!important;white-space:normal}
.logo{gap:0}
@media(max-width:650px){.delivery-inner{justify-content:center}.delivery-inner span:last-child{display:block!important}.delivery{font-size:11px}}

/* v0.19: grouped colour variations */
.colour-count{font-size:12px;color:#64834a;font-weight:700}
.colour-swatches{display:flex;align-items:center;flex-wrap:wrap;gap:6px;min-height:30px}
.colour-swatches a{display:grid;place-items:center;width:30px;height:30px;border:1px solid #dfe8d7;border-radius:50%;overflow:hidden;background:#f6f7f3;transition:transform .15s}
.colour-swatches a:hover{transform:scale(1.13);border-color:#70b51f}
.colour-swatches img{width:100%;height:100%;object-fit:cover}
.colour-swatches span{font-size:12px;color:#63735a}
.colour-picker{background:white;border:1px solid #e1e8d8;border-radius:18px;padding:18px;margin:18px 0}
.colour-picker h2{font-size:17px;margin:0 0 14px}
.colour-picker__options{display:flex;flex-wrap:wrap;gap:10px}
.colour-picker__options a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:85px;min-height:94px;padding:7px;border:1px solid #e1e8d8;border-radius:11px;background:#fafbf8}
.colour-picker__options a.active{border:2px solid #70b51f;background:#f3f9ed}
.colour-picker__options img{height:60px;width:60px;object-fit:contain}
.colour-picker__options small{font-size:10px;overflow-wrap:anywhere;text-align:center}
.colour-picker .muted{font-size:12px;margin:12px 0 0}

.section-symbol img{display:block;width:34px;height:34px;object-fit:contain}

/* v24 — consistent card text alignment */
.grid .product{display:flex;flex-direction:column;min-width:0}
.grid .product .detail{display:flex;flex:1;flex-direction:column;gap:10px}
.grid .product .catalog-colour-slot{min-height:88px;display:flex;flex-direction:column;justify-content:center;gap:9px}
.grid .product .detail>small.muted{display:block;min-height:18px}
.grid .product .detail h3{margin:0;min-height:48px;line-height:1.45}
.grid .product .detail .tag{margin-top:auto}
.grid .product .detail .cost{min-height:34px;display:flex;align-items:center}
.grid .product .detail>a.btn{display:flex;align-items:center;justify-content:center;text-align:center;min-height:48px}
@media(max-width:650px){.grid .product .catalog-colour-slot{min-height:91px}.grid .product .detail h3{min-height:57px}.grid .product .detail .cost{min-height:30px}}
