/* Inner pages of v2: catalog root, catalog section, delivery, contacts, about, text info pages.
   Builds on tokens and components from concept.css (.v2-shell, .v2-button, .v2-category, .v2-circle...). */

.page__main { overflow-x:clip; }
.v2-nav a.is-active { color:#ad3e28; }
.v2-nav a:first-child.is-active { color:inherit; }
.v2-button--sm { padding:11px 18px; font-size:13px; gap:14px; }
.v2-button--ghost { background:#fff; color:#a94932; border-color:#ecd3c6; box-shadow:none; }
.v2-button--ghost:hover { background:#fbeee6; color:#8f3a26; }
.v2-button svg { width:18px; height:18px; }
.v2-eyebrow { text-transform:uppercase; font-weight:500; }

/* Breadcrumbs */
.v2-crumbs { display:flex; flex-wrap:wrap; align-items:center; gap:6px 9px; margin-bottom:18px; font-size:12px; color:#8a766b; }
.v2-crumbs a { color:#c0583f; }
.v2-crumbs a:hover { color:#8f3a26; }
.v2-crumbs>span[aria-hidden] { color:#c8b5a9; }

/* Page hero */
.v2-page-hero { position:relative; min-height:300px; background:#fcf0e4; border-radius:0 0 0 50px; overflow:hidden; isolation:isolate; }
.v2-page-hero-photo { position:absolute; right:0; top:0; width:62%; height:100%; object-fit:cover; z-index:-2; -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%); mask-image:linear-gradient(90deg,transparent 0,#000 38%); }
.v2-page-hero::after { content:""; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#fcf0e4 0%,rgba(252,240,228,.97) 36%,rgba(252,240,228,.7) 50%,rgba(252,240,228,0) 70%); }
.v2-page-hero-inner { position:relative; display:flex; align-items:center; min-height:300px; }
.v2-page-hero-copy { width:min(560px,55%); padding-block:30px 34px; }
.v2-page-hero h1 { margin:0; font-size:clamp(36px,4.4vw,58px); line-height:1.02; letter-spacing:-1px; color:#2f170f; font-weight:400; }
.v2-page-hero-script { margin:6px 0 0; font-family:Cambria,Georgia,serif; font-style:italic; font-size:clamp(22px,2.4vw,32px); color:#cd664a; line-height:1.15; }
.v2-page-hero-lead { max-width:470px; margin:14px 0 0; font-size:15px; line-height:1.55; color:#6f5a50; }
.v2-page-hero-lead small { display:block; margin-top:6px; font-size:13px; color:#8a766b; }
.v2-page-hero-copy>.v2-button { margin-top:22px; }
.v2-page-hero-note { position:absolute; right:-10px; top:22px; margin:0; padding:18px 24px; isolation:isolate; font-size:22px; color:#713f2d; text-align:center; transform:rotate(-8deg); }
.v2-page-hero-note::before { content:""; position:absolute; inset:-14px -20px; z-index:-1; border-radius:48%; background:radial-gradient(ellipse,#fff5e9 38%,rgba(255,245,233,.94) 58%,rgba(255,245,233,.55) 70%,transparent 78%); filter:blur(6px); }
.v2-benefits--hero { margin-top:22px; }
.v2-page-hero--about, .v2-page-hero--about .v2-page-hero-inner { min-height:440px; }
.v2-page-hero--section .v2-page-hero-photo { width:55%; }
.v2-page-hero--contacts { padding-bottom:70px; }

/* Chips */
.v2-chips { display:flex; gap:10px; margin-top:22px; padding:6px; overflow-x:auto; scrollbar-width:none; background:#fbf3ec; border-radius:40px; }
.v2-chips::-webkit-scrollbar { display:none; }
.v2-chips a { display:inline-flex; align-items:center; gap:8px; flex-shrink:0; padding:11px 22px; border-radius:30px; font-size:13px; font-weight:500; color:#4b3228; white-space:nowrap; transition:background .2s,color .2s; }
.v2-chips a svg { width:18px; height:18px; color:#a94932; }
.v2-chips a:hover { background:#fff; color:#a94932; }
.v2-chips a.is-active { background:linear-gradient(110deg,#df795b,#ce5d42); color:#fff; box-shadow:0 6px 14px rgba(206,93,66,.22); }

/* Catalog root: category grid */
.v2-cat-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.v2-category--wide { aspect-ratio:auto; min-height:210px; }
.v2-category--wide>img { object-position:70% 65%; }
.v2-category--wide h3 { font-size:32px; }
.v2-category--offer { background:linear-gradient(120deg,#f6c3ab,#fde9da); }
.v2-category--offer h3 { color:#8f3a26; }
.v2-category-big { position:absolute; right:26px; bottom:-18px; font-family:Cambria,Georgia,serif; font-size:170px; line-height:1; color:#fff; opacity:.75; }
.v2-category--b2b>img { object-position:center 40%; }
.v2-category--b2b::after { background:linear-gradient(100deg,rgba(255,244,233,.95) 0%,rgba(255,244,233,.8) 42%,transparent 75%); }
.v2-category--b2b p { max-width:180px; }

/* Catalog layout: filter + products */
.v2-catalog-page .v2-section { padding-block:30px 10px; }
.v2-catalog-layout { display:grid; grid-template-columns:270px minmax(0,1fr); gap:26px; align-items:start; margin-top:26px; }
.v2-catalog-layout--full { grid-template-columns:minmax(0,1fr); }
.v2-catalog-page .v2-section .v2-catalog-layout { margin-top:0; }
.v2-catalog-aside { position:sticky; top:16px; }
.sfv2 .catalog-filter-card { padding:20px; border:1px solid #efe4db; border-radius:18px; box-shadow:0 6px 22px rgba(84,48,29,.05); }
.sfv2 .smart-filter { margin:0!important; }
.sfv2 .smart-filter-title { margin:0 0 10px; font-family:Cambria,Georgia,serif; font-size:24px; color:#2f170f; font-weight:400; }
.sfv2 .smart-filter-parameters-box { padding:14px 0; border-bottom:1px solid #f1e7df; margin:0!important; }
.sfv2 .smart-filter-parameters-box-title { display:flex; align-items:center; justify-content:space-between; cursor:pointer; font-size:14px; font-weight:600; color:#3a2018; }
.sfv2 .smart-filter-angle { position:relative; width:14px; height:14px; }
.sfv2 .smart-filter-angle::after { content:""; position:absolute; inset:2px; border:solid #9c7b6c; border-width:0 1.5px 1.5px 0; transform:rotate(45deg) translate(-2px,-2px); transition:transform .25s; }
.sfv2 .smart-filter-angle-up::after { transform:rotate(-135deg) translate(-2px,-2px); }
.sfv2 .smart-filter-angles { display:none; }
.sfv2 .smart-filter-block { padding-top:10px; }
.sfv2 .smart-filter-input-container input { width:100%; height:40px; padding:0 12px; border:1px solid #eaded5; border-radius:12px; background:#fff; font:inherit; font-size:13px; color:#3a2018; }
.sfv2 .smart-filter-input-container input:focus { outline:none; border-color:#d56549; box-shadow:0 0 0 3px rgba(213,101,73,.15); }
.sfv2 .smart-filter .form-group { margin:0; }
.sfv2 .smart-filter .form-check { display:flex; align-items:center; gap:10px; min-height:30px; padding:0; }
.sfv2 .smart-filter .form-check-input { position:static; width:18px; height:18px; margin:0; accent-color:#c95b41; cursor:pointer; }
.sfv2 .smart-filter .form-check-label { display:flex; align-items:center; gap:6px; width:100%; font-size:13px; color:#5a463c; cursor:pointer; }
.sfv2 .smart-filter .disabled .form-check-label { opacity:.45; }
.sfv2 .smart-filter-button-box { border-bottom:0; padding-bottom:0; }
.sfv2 .smart-filter-button-box .smart-filter-parameters-box-container { flex-direction:column; }
.sfv2 .smart-filter-button-box input.btn { width:100%; padding:13px 16px; border-radius:22px; font-size:13px; font-weight:500; }
.sfv2 .smart-filter-button-box input.btn-primary { background:linear-gradient(110deg,#df795b,#ce5d42)!important; border-color:#e38f74!important; border-radius:22px!important; }
.sfv2 .smart-filter-button-box input.btn-primary:hover { background:#b74f37!important; }
.sfv2 .smart-filter-container-modef { display:none; }
.sfv2 .smart-filter-parameters-box-title-text { flex:1; text-align:left; }
.sfv2 .smart-filter-button-box input.btn-link { border-color:#ecd8cc; color:#8f3a26; background:#fff; }
.sfv2 .smart-filter-popup-result { display:none!important; }

.v2-catalog-toolbar { display:flex; align-items:center; gap:14px 20px; flex-wrap:wrap; margin-bottom:16px; }
.v2-catalog-count { margin:0 auto 0 0; font-size:14px; color:#6f5a50; }
.v2-catalog-count strong { color:#2f170f; }
.v2-sort { position:relative; display:flex; align-items:center; gap:10px; font-size:13px; color:#8a766b; }
.v2-sort select { appearance:none; height:40px; padding:0 38px 0 14px; border:1px solid #eaded5; border-radius:12px; background:#fff; font:inherit; font-size:13px; color:#3a2018; cursor:pointer; }
.v2-sort svg { position:absolute; right:12px; width:16px; height:16px; pointer-events:none; color:#8a766b; }
.v2-filter-toggle { display:none; align-items:center; gap:8px; padding:9px 16px; border:1px solid #eaded5; border-radius:20px; background:#fff; font-size:13px; font-weight:500; cursor:pointer; }
.v2-filter-toggle svg { width:18px; height:18px; }

.v2-product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; }
.v2-catalog-layout--full .v2-product-grid { grid-template-columns:repeat(5,minmax(0,1fr)); }
.v2-pcard { position:relative; display:flex; flex-direction:column; min-width:0; padding:10px 12px 13px; background:#fff; border:1px solid #eee4dc; border-radius:17px; box-shadow:0 3px 10px rgba(84,48,29,.02); transition:box-shadow .3s,transform .3s; }
.v2-pcard:hover { box-shadow:0 14px 30px rgba(84,48,29,.09); transform:translateY(-2px); }
.v2-pcard-media { position:relative; display:block; aspect-ratio:1; margin:-2px -4px 12px; overflow:hidden; border-radius:12px; background:#fff; }
.v2-pcard-media img { width:100%; height:100%; object-fit:contain; transform:translateZ(0); transition:transform .5s cubic-bezier(.22,.61,.36,1); }
.v2-pcard:hover .v2-pcard-media img { transform:scale(1.04) translateZ(0); }
.v2-pcard-weight { font-size:12px; color:#9b8e86; }
.v2-pcard-name { margin-top:4px; font-size:13px; line-height:1.4; color:#382820; min-height:54px; }
.v2-pcard-name:hover { color:#a94932; }
.v2-pcard-bottom { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:auto; padding-top:12px; }
.v2-pcard-price { font-family:Cambria,Georgia,serif; font-size:21px; color:#872f1d; white-space:nowrap; }
.v2-badge { position:absolute; top:8px; left:8px; z-index:1; padding:4px 10px; border-radius:20px; font-size:11px; font-weight:500; line-height:1.3; }
.v2-badge--ok { background:#e5efd9; color:#4f6c32; }
.v2-badge--warm { background:#fbe3d6; color:#a94932; }
.v2-badge--muted { position:static; background:#f3ece6; color:#8a766b; }
.v2-empty { padding:40px; text-align:center; background:#fff; border:1px dashed #eaded5; border-radius:18px; }
.v2-empty p { margin:0 0 12px; color:#6f5a50; }
.sfv2 .catalog-pager a, .sfv2 .catalog-pager span { border-radius:12px; }

/* Promo banner under the catalog */
.v2-promo { position:relative; display:flex; align-items:center; min-height:200px; margin-top:34px; padding:30px 44px; overflow:hidden; border-radius:40px 30px 40px 30px; background:linear-gradient(110deg,#fad0b9,#fff5e9); isolation:isolate; }
.v2-promo-copy { position:relative; z-index:1; max-width:430px; }
.v2-promo h2 { margin:0 0 10px; font-size:34px; line-height:1.05; color:#a94932; }
.v2-promo h2 span { font-size:26px; color:#3a2018; font-weight:400; }
.v2-promo p { margin:0 0 18px; font-size:13px; line-height:1.5; color:#6f5a50; }
.v2-promo>img { position:absolute; right:12%; top:0; width:46%; height:100%; object-fit:cover; object-position:65% 55%; z-index:-1; mask-image:linear-gradient(90deg,transparent,#000 30%,#000 75%,transparent); }
.v2-promo>.v2-script { position:relative; z-index:1; margin:0 0 0 auto; font-size:23px; color:#77432f; text-align:center; transform:rotate(-7deg); text-shadow:0 0 14px #fff3e7,0 0 6px #fff3e7; }

/* Service strip */
.v2-service-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-block:34px 30px; padding:20px 26px; background:#f8f1ea; border-radius:22px; }
.v2-service-strip>div { display:flex; align-items:center; gap:14px; padding:4px 10px; }
.v2-service-strip>div+div { border-left:1px solid #eadbd0; }
.v2-service-strip i { display:flex; flex-shrink:0; color:#a94932; }
.v2-service-strip i svg { width:32px; height:32px; stroke-width:1.2; }
.v2-service-strip span { font-size:12px; line-height:1.4; color:#7a675d; }
.v2-service-strip strong { display:block; font-size:13px; color:#2f170f; font-weight:600; }

/* Info layout: side nav + content */
.v2-info-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:40px; align-items:start; margin-top:34px; }
.v2-info-aside { position:sticky; top:16px; display:grid; gap:18px; }
.v2-info-nav { display:grid; gap:4px; }
.v2-info-nav a { display:flex; align-items:center; gap:12px; padding:11px 14px; border-radius:14px; font-size:14px; color:#4b3228; transition:background .2s,color .2s; }
.v2-info-nav a svg { width:20px; height:20px; color:#8e6a5b; }
.v2-info-nav a:hover { background:#fbf1ea; }
.v2-info-nav a.is-active { background:#fbe6db; color:#a94932; font-weight:600; }
.v2-info-nav a.is-active svg { color:#c95b41; }
.v2-help-card { padding:18px; border-radius:18px; background:#f8efe6; }
.v2-help-card i { display:flex; color:#6e8c4d; margin-bottom:6px; }
.v2-help-card p { margin:0 0 14px; font-size:13px; line-height:1.45; color:#5a463c; }
.v2-info-main { min-width:0; }

.v2-block { margin-bottom:40px; }
.v2-block-head { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:8px 30px; margin-bottom:18px; }
.v2-block-head h2 { margin:0; font-size:32px; line-height:1.1; color:#2f170f; }
.v2-block-head p { flex:1 1 320px; max-width:460px; margin:0; font-size:13px; line-height:1.5; color:#7a675d; }
.v2-block-head--row { align-items:center; }

.v2-cards { display:grid; gap:16px; }
.v2-cards--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.v2-cards--3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.v2-cards--4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.v2-card { display:block; min-width:0; padding:20px; background:#fff; border:1px solid #efe4db; border-radius:18px; box-shadow:0 4px 16px rgba(84,48,29,.03); color:inherit; transition:box-shadow .3s,transform .3s; }
a.v2-card:hover { box-shadow:0 12px 26px rgba(84,48,29,.08); transform:translateY(-2px); color:inherit; }
.v2-card h3 { margin:12px 0 8px; font-size:19px; line-height:1.2; color:#2f170f; }
.v2-card p { margin:0; font-size:13px; line-height:1.5; color:#7a675d; }
.v2-card-icon { display:flex; align-items:center; justify-content:center; width:50px; height:50px; flex-shrink:0; border-radius:50%; background:#fbe6db; color:#b8543c; }
.v2-card-icon svg { width:24px; height:24px; }
.v2-card--row { display:flex; gap:16px; align-items:flex-start; }
.v2-card--row h3 { margin-top:2px; }
.v2-discounts .v2-card { text-align:center; }
.v2-discounts strong { display:block; font-family:Cambria,Georgia,serif; font-size:46px; line-height:1; color:#a94932; margin-bottom:6px; }
.v2-card--accent { background:linear-gradient(120deg,#f8cdb6,#fdeee3); border-color:#f3cdb9; }

.v2-steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin:0; padding:0; list-style:none; counter-reset:none; }
.v2-steps li { position:relative; display:flex; gap:12px; }
.v2-steps li>span { display:flex; align-items:center; justify-content:center; flex-shrink:0; width:40px; height:40px; border-radius:50%; background:#fbe6db; color:#a94932; font-family:Cambria,Georgia,serif; font-size:20px; }
.v2-steps h3 { margin:6px 0 6px; font-size:15px; line-height:1.25; color:#2f170f; font-family:inherit; font-weight:600; }
.v2-steps p { margin:0; font-size:12px; line-height:1.5; color:#7a675d; }

.v2-note { display:flex; align-items:center; gap:10px; margin:14px 0 0; padding:12px 16px; border-radius:14px; background:#f8f1ea; font-size:13px; color:#6f5a50; }
.v2-note svg { width:20px; height:20px; flex-shrink:0; color:#a94932; }
.v2-note a { color:#a94932; }

.v2-faq { display:grid; gap:10px; }
.v2-faq details, .v2-prose .faq-item { background:#fff; border:1px solid #efe4db; border-radius:14px; }
.v2-faq summary, .v2-prose .faq-item summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:15px 18px; font-size:14px; font-weight:500; color:#2f170f; cursor:pointer; list-style:none; }
.v2-faq summary::-webkit-details-marker, .v2-prose .faq-item summary::-webkit-details-marker { display:none; }
.v2-faq summary svg { width:18px; height:18px; color:#a94932; transition:transform .25s; }
.v2-prose .faq-item summary::after { content:""; flex-shrink:0; width:8px; height:8px; margin-right:4px; border:solid #a94932; border-width:0 1.5px 1.5px 0; transform:rotate(45deg); transition:transform .25s; }
.v2-faq details[open] summary svg { transform:rotate(180deg); }
.v2-prose .faq-item[open] summary::after { transform:rotate(-135deg); }
.v2-faq details p, .v2-prose .faq-item p { margin:0!important; padding:0 18px 16px; font-size:13px; line-height:1.6; color:#6f5a50; }
.v2-faq a, .v2-prose a { color:#a94932; text-decoration:underline; text-decoration-color:#ecc9b8; text-underline-offset:3px; }

/* Text pages content */
.v2-prose { max-width:780px; padding:30px 34px; background:#fff; border:1px solid #efe4db; border-radius:22px; font-size:15px; line-height:1.65; color:#4b3228; }
.v2-prose>:first-child { margin-top:0; }
.v2-prose h2 { margin:30px 0 10px; font-size:24px; line-height:1.2; color:#2f170f; }
.v2-prose p, .v2-prose ul { margin:0 0 14px; }
.v2-prose .lead { font-size:17px; color:#6f5a50; }
.v2-prose .note { padding:14px 16px; border-radius:14px; background:#f8f1ea; font-size:13px; color:#6f5a50; }
.v2-prose .faq-item { margin-bottom:10px; }
.v2-prose .btn { display:inline-flex; padding:13px 22px; border-radius:24px; background:linear-gradient(110deg,#df795b,#ce5d42); color:#fff; text-decoration:none; }

/* Contacts */
.v2-contact-cards { position:relative; z-index:2; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-top:-56px; }
.v2-contact-cards .v2-card h3 { margin:2px 0 4px; font-family:inherit; font-size:13px; font-weight:600; color:#8a766b; }
.v2-contact-cards .v2-card strong { display:block; font-size:15px; line-height:1.3; color:#2f170f; margin-bottom:4px; }
.v2-contact-cards .v2-card p { font-size:12px; }
.v2-contact-map { display:grid; grid-template-columns:1.5fr 1fr; gap:18px; margin-top:26px; }
.v2-map { min-height:380px; overflow:hidden; border-radius:22px; border:1px solid #efe4db; background:#f3ece6; }
.v2-map iframe { display:block; width:100%; height:100%; min-height:380px; border:0; }
.v2-panel { padding:28px 30px; border-radius:22px; background:#fbf3ec; }
.v2-panel h2 { margin:0 0 10px; font-size:32px; line-height:1.1; color:#2f170f; }
.v2-panel p { margin:0 0 18px; font-size:14px; line-height:1.55; color:#6f5a50; }
.v2-panel--green { background:linear-gradient(120deg,#314b35,#43603f); color:#f6efe4; }
.v2-panel--green h2 { color:#fff; }
.v2-panel--green p { color:#dfe6d6; }
.v2-panel--green .v2-eyebrow { color:#f2c4ad; }
.v2-icon-list { display:grid; gap:14px; margin:0 0 22px; padding:0; list-style:none; }
.v2-icon-list li { display:flex; gap:12px; font-size:13px; color:#7a675d; }
.v2-icon-list svg { width:22px; height:22px; color:#b8543c; flex-shrink:0; }
.v2-icon-list strong { display:block; color:#2f170f; font-size:14px; }
.v2-contact-bottom { display:grid; grid-template-columns:1.2fr 1fr; gap:18px; margin-top:18px; }
.v2-actions-row { display:flex; flex-wrap:wrap; gap:12px; }
.v2-seller-note { margin-top:18px; font-size:12px; color:#8a766b; }
.v2-seller-note a { color:#a94932; }

/* About */
.v2-about-story { display:grid; grid-template-columns:1fr 1.2fr .85fr; gap:30px; align-items:center; margin-block:40px; }
.v2-about-story-photo img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:22px; }
.v2-about-story-text h2 { margin:0 0 14px; font-size:34px; line-height:1.1; color:#2f170f; }
.v2-about-story-text p { margin:0 0 12px; font-size:14px; line-height:1.6; color:#6f5a50; }
.v2-quote { margin:0; padding:30px 26px; border-radius:22px; background:#fbf3ec; }
.v2-quote p { margin:0 0 12px; font-family:Cambria,Georgia,serif; font-style:italic; font-size:24px; line-height:1.3; color:#5a2c1f; }
.v2-quote p::before { content:"“"; display:block; font-size:70px; line-height:.6; color:#ecc9b8; font-style:normal; }
.v2-quote footer { font-size:12px; color:#8a766b; }
.v2-page-hero ~ .v2-block .v2-card-icon, .v2-about-story ~ .v2-block .v2-card-icon { margin-bottom:4px; }
.v2-b2b { margin-top:10px; padding:38px 0; background:linear-gradient(110deg,#2f4a33,#3f5b3c); color:#f6efe4; border-radius:40px 0 0 0; }
.v2-b2b-inner { display:grid; grid-template-columns:1.2fr 1.4fr auto; gap:30px; align-items:center; }
.v2-b2b .v2-eyebrow { color:#f2c4ad; }
.v2-b2b h2 { margin:0 0 10px; font-size:32px; color:#fff; }
.v2-b2b p { margin:0; font-size:13px; line-height:1.55; color:#dfe6d6; }
.v2-b2b ul { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin:0; padding:0; list-style:none; }
.v2-b2b li { display:flex; flex-direction:column; align-items:center; gap:8px; font-size:12px; line-height:1.35; text-align:center; color:#eef1e6; }
.v2-b2b li svg { width:30px; height:30px; stroke-width:1.2; color:#f2c4ad; }
.v2-element-page { padding-top:24px; }

@media (max-width:1100px) {
 .v2-catalog-layout { grid-template-columns:240px minmax(0,1fr); gap:20px; }
 .v2-product-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .v2-info-layout { grid-template-columns:200px minmax(0,1fr); gap:26px; }
 .v2-cards--4, .v2-contact-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .v2-steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
 .v2-service-strip { grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:16px; }
 .v2-service-strip>div:nth-child(3) { border-left:0; }
 .v2-about-story { grid-template-columns:1fr 1.2fr; }
 .v2-quote { grid-column:1 / -1; }
 .v2-b2b-inner { grid-template-columns:1fr; }
 .v2-contact-cards { margin-top:-40px; }
 .v2-nav { gap:22px; }
}
@media (max-width:900px) {
 .v2-cat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .v2-info-layout { grid-template-columns:1fr; }
 .v2-info-aside { position:static; }
 .v2-info-nav { display:flex; overflow-x:auto; scrollbar-width:none; }
 .v2-info-nav a { flex-shrink:0; background:#fbf3ec; }
 .v2-help-card { display:none; }
 .v2-cards--3 { grid-template-columns:1fr; }
 .v2-contact-map, .v2-contact-bottom { grid-template-columns:1fr; }
 .v2-promo>img { right:-10%; width:60%; opacity:.6; }
 .v2-promo>.v2-script { display:none; }
}
@media (max-width:767px) {
 .v2-page-hero { min-height:0; border-radius:0 0 0 30px; }
 .v2-page-hero-photo { position:relative; display:block; width:100%; height:210px; order:2; -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 35%); mask-image:linear-gradient(180deg,transparent 0,#000 35%); }
 .v2-page-hero { display:flex; flex-direction:column; }
 .v2-page-hero::after { background:linear-gradient(180deg,#fcf0e4 0%,#fcf0e4 55%,rgba(252,240,228,0) 75%); }
 .v2-page-hero-inner, .v2-page-hero--about .v2-page-hero-inner { min-height:0; }
 .v2-page-hero--about { min-height:0; }
 .v2-page-hero-copy { width:100%; padding-block:18px 8px; }
 .v2-page-hero-note { display:none; }
 .v2-page-hero--section .v2-page-hero-photo { width:100%; }
 .v2-page-hero--contacts { padding-bottom:0; }
 .v2-contact-cards { margin-top:16px; grid-template-columns:1fr; }
 .v2-catalog-layout { grid-template-columns:1fr; }
 .v2-catalog-aside { position:static; }
 .sf-filter-toggle-checkbox:checked ~ .v2-catalog-layout .catalog-filter-col { display:block; }
 .v2-filter-toggle { display:inline-flex; }
 .v2-catalog-count { order:3; width:100%; }
 .v2-sort span { display:none; }
 .v2-product-grid, .v2-catalog-layout--full .v2-product-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
 .v2-pcard { padding:8px 9px 11px; border-radius:13px; }
 .v2-pcard-name { font-size:12px; }
 .v2-pcard-price { font-size:18px; }
 .v2-pcard .v2-buy { width:36px; height:35px; border-radius:12px; }
 .v2-cat-grid { gap:12px; }
 .v2-category--wide { min-height:170px; }
 .v2-category--wide h3 { font-size:22px; }
 .v2-category-big { font-size:110px; right:10px; }
 .v2-block-head h2, .v2-panel h2, .v2-b2b h2, .v2-about-story-text h2 { font-size:26px; }
 .v2-cards--2, .v2-cards--4, .v2-steps { grid-template-columns:1fr; }
 .v2-service-strip { grid-template-columns:1fr; padding:14px 16px; }
 .v2-service-strip>div+div { border-left:0; border-top:1px solid #eadbd0; padding-top:12px; }
 .v2-about-story { grid-template-columns:1fr; margin-block:26px; }
 .v2-b2b ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .v2-prose { padding:20px 18px; }
 .v2-panel { padding:22px 20px; }
 .v2-promo { padding:24px 22px; border-radius:26px; }
 .v2-promo h2 { font-size:28px; }
 .v2-promo>img { display:none; }
 .v2-chips a { padding:10px 16px; }
}

/* FAQ page: questions are cards themselves — no outer card */
.v2-prose:has(> .faq-item) { padding:0; background:none; border:0; }
.v2-prose .faq-item { padding:0; }
.v2-prose .faq-item summary { margin:0; }
.v2-prose { max-width:none; }

/* Ozon / VK / Telegram links */
.v2-socials { display:flex; gap:10px; }
.v2-socials a { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:50%; background:#fbf1ea; color:#8f3a26; transition:background .2s,color .2s; }
.v2-socials a:hover { background:#d56549; color:#fff; }
.v2-socials svg { width:20px; height:20px; }
.v2-contact-socials { margin-top:18px; }
.v2-socials--lg a { width:50px; height:50px; background:#fff; }
.v2-footer-socials { margin-block:6px; }
.v2-icon-list a { color:#a94932; text-decoration:underline; text-decoration-color:#ecc9b8; text-underline-offset:3px; }

/* Client editorial content: listing and article pages. */
.v2-useful{padding-block:45px 65px}.v2-useful h1{max-width:1000px;font-size:clamp(30px,4vw,52px);line-height:1.15;font-weight:400;margin:12px 0 24px;color:#2f170f}.v2-useful-label{color:#a35436;font-size:13px;letter-spacing:.05em}.v2-useful-lead{max-width:680px;font-size:18px;line-height:1.6;color:#6f5a50;margin-bottom:32px}.v2-useful-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.v2-useful-card{border-radius:22px;overflow:hidden;background:#fff8f0;border:1px solid #f0dfcc;display:flex;flex-direction:column}.v2-useful-card-image{display:block;position:relative;flex:none;aspect-ratio:1;background:#fcf0e4}.v2-useful-card-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.v2-useful-card>div{padding:24px;display:flex;flex-direction:column;flex:1}.v2-useful-card h2{font-size:23px;line-height:1.3;font-weight:400;margin:0 0 14px}.v2-useful-card p{font-size:14px;line-height:1.6;color:#6f5a50;margin:0 0 20px}.v2-useful-read{display:flex;align-items:center;gap:10px;color:#a35436;margin-top:auto;font-size:14px}.v2-useful-read svg{width:18px;height:18px}.v2-useful-back{color:#a35436;font-size:14px}.v2-article-cover{width:100%;height:360px;object-fit:contain;background:#f0dfcc;border-radius:24px;margin-bottom:32px}.v2-article-layout{display:grid;grid-template-columns:240px minmax(0,780px);gap:44px;justify-content:center}.v2-article-toc{position:sticky;top:24px;align-self:start}.v2-article-toc nav{display:grid;gap:12px;font-size:13px;line-height:1.45;border-left:2px solid #e8cdb1;padding-left:18px}.v2-article-toc strong{font-size:15px}.v2-article-toc a{color:#80654f}.v2-article-body{font-size:17px;line-height:1.8;min-width:0;overflow-wrap:anywhere}.v2-article-body h2{font-size:29px;line-height:1.3;font-weight:400;margin:38px 0 16px;scroll-margin-top:24px}.v2-article-body h3{font-size:21px;line-height:1.4;margin:26px 0 10px;font-weight:500}.v2-article-body p{margin:0 0 18px}.v2-article-body ul{padding-left:25px;margin:0 0 22px}.v2-article-body li{margin:7px 0}.v2-article-cta{padding:28px;background:#fcf0e4;border-radius:22px;margin-top:35px}.v2-article-cta h2{margin-top:0}.v2-useful-related-title{margin:52px 0 24px;font-size:30px;font-weight:400}@media(max-width:1000px){.v2-useful-grid{gap:16px}.v2-useful-card>div{padding:18px}.v2-useful-card h2{font-size:20px}.v2-article-layout{grid-template-columns:200px minmax(0,1fr);gap:28px}}@media(max-width:700px){.v2-useful{padding-block:28px 45px}.v2-useful-grid{grid-template-columns:1fr}.v2-article-layout{grid-template-columns:1fr;gap:24px}.v2-article-toc{position:static}.v2-article-cover{height:240px;border-radius:18px;margin-bottom:24px}.v2-article-body{font-size:16px}.v2-article-body h2{font-size:25px}.v2-article-cta{padding:22px}.v2-useful-card h2{font-size:23px}}

.v2-socials svg.v2-ozon-mark { width:30px; height:20px; }
