@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/d8ea5640.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/ecf8c5e1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/7e25b530.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/0bc404dc.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/3ae2622b.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/6a51c12a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/assets/6e6432ec.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/d8ea5640.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/ecf8c5e1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/7e25b530.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/0bc404dc.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/3ae2622b.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/6a51c12a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("/assets/6e6432ec.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/d8ea5640.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/ecf8c5e1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/7e25b530.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/0bc404dc.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/3ae2622b.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/6a51c12a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("/assets/6e6432ec.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/d8ea5640.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/ecf8c5e1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/7e25b530.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/0bc404dc.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/3ae2622b.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/6a51c12a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("/assets/6e6432ec.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/d8ea5640.woff2") format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/ecf8c5e1.woff2") format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/7e25b530.woff2") format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/0bc404dc.woff2") format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/3ae2622b.woff2") format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/6a51c12a.woff2") format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("/assets/6e6432ec.woff2") format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* ==== durchdacht new-web, внутренние страницы. Палитра из утверждённого макета ==== */
:root {
  --brand:#A9633A; --brand-dark:#8A4E28; --ink:#101828; --mut:#667085;
  --line:#E4E7EC; --bg:#F4F6F8; --cream:#FBF4EC; --tan:#E2B48C; --green:#12805C;
}
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:Inter, -apple-system, sans-serif; background:var(--bg); color:var(--ink);
  -webkit-font-smoothing:antialiased; font-size:16px; line-height:1.6; }
a { color:var(--brand); text-decoration:none; }
a:hover { text-decoration:underline; }
img { max-width:100%; height:auto; }
.nw-wrap { max-width:none; margin:0; padding:0; } /* ширина = хедеру: гаттеры даёт .dd-page > .nw-main */

/* promo */
.nw-promo { background:var(--ink); color:#E4E7EC; font-size:13px; }
.nw-promo-in { display:flex; gap:12px; align-items:center; padding-top:8px; padding-bottom:8px; flex-wrap:wrap; }
.nw-promo a { color:#fff; font-weight:600; }
.nw-dot { color:var(--tan); }
.nw-promo-right { margin-left:auto; display:flex; gap:18px; }

/* header */
.nw-head { background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:40; }
.nw-head-in { display:flex; align-items:center; gap:28px; padding-top:14px; padding-bottom:14px; }
.nw-logo img { display:block; }
.nw-nav { display:flex; gap:20px; flex-wrap:wrap; font-weight:600; font-size:14.5px; }
.nw-nav a { color:var(--ink); }
.nw-nav a:hover { color:var(--brand); text-decoration:none; }
.nw-cta { background:var(--brand); color:#fff !important; font-weight:700; padding:10px 18px;
  border-radius:10px; margin-left:auto; white-space:nowrap; display:inline-block; border:0; cursor:pointer; font-size:15px; }
.nw-cta:hover { background:var(--brand-dark); text-decoration:none; }
.nw-cta-big { padding:14px 28px; font-size:16px; margin-left:0; }
.nw-cta-ghost { display:inline-block; margin-left:12px; font-weight:600; padding:14px 10px; }

/* main */
.nw-main { padding:36px 0 64px; min-height:50vh; }
.nw-crumbs { font-size:13px; color:var(--mut); margin-bottom:18px; }
.nw-crumbs a { color:var(--mut); }
h1 { font-size:34px; line-height:1.2; font-weight:800; letter-spacing:-0.5px; margin-bottom:14px; }
h2 { font-size:24px; font-weight:700; margin:26px 0 12px; }
.nw-lead { color:var(--mut); font-size:17px; margin-bottom:26px; }
.nw-prose-wrap { max-width:none; }
.nw-center { text-align:center; padding-top:40px; }

/* prose (контент из БД) */
.nw-prose p { margin:0 0 16px; }
.nw-prose h2, .nw-prose h3, .nw-prose h4 { margin:28px 0 12px; }
.nw-prose ul, .nw-prose ol { margin:0 0 16px 22px; }
.nw-prose img { border-radius:12px; margin:10px 0; }
.nw-prose table { border-collapse:collapse; width:100%; margin:0 0 16px; font-size:14.5px; }
.nw-prose td, .nw-prose th { border:1px solid var(--line); padding:8px 10px; text-align:left; }
.nw-prose iframe { max-width:100%; }
.nw-postmeta { color:var(--mut); font-size:14px; margin-bottom:18px; }
.nw-postimg { border-radius:14px; margin-bottom:22px; }

/* product */
.nw-product { display:grid; grid-template-columns:1.1fr 1fr; gap:40px; margin-bottom:36px; }
.nw-product-media img { border-radius:14px; background:#fff; }
.nw-product-gal { display:flex; gap:8px; margin-top:10px; flex-wrap:wrap; }
.nw-product-gal img { width:84px; height:64px; object-fit:cover; border-radius:8px; border:1px solid var(--line); }
.nw-product-info h1 { font-size:28px; }
.nw-product-cats { color:var(--mut); font-size:14px; margin-bottom:12px; }
.nw-price { font-size:28px; font-weight:800; margin:10px 0 6px; }
.nw-price s { color:var(--mut); font-weight:400; font-size:18px; margin-left:8px; }
.nw-sku { color:var(--mut); font-size:13px; margin-bottom:6px; }
.nw-stock { font-weight:600; font-size:14px; margin-bottom:14px; }
.nw-stock.is-in { color:var(--green); }
.nw-stock.is-out { color:var(--mut); }
/* срок доставки: подтверждённое значение категории + оговорка об ориентировочности */
.nw-deliv { font-size:14px; margin:-6px 0 14px; color:#344054; }
/* простая таблица параметров внутри .nw-prose (záruka, materiály) */
.nw-tbl { width:100%; max-width:100%; border-collapse:collapse; margin:14px 0 20px; font-size:14.5px;
  table-layout:fixed; } /* fixed: длинные описания переносятся, а не растягивают таблицу за экран */
.nw-tbl th, .nw-tbl td { text-align:left; padding:10px 12px; border-bottom:1px solid #EAECF0; vertical-align:top;
  overflow-wrap:anywhere; }
.nw-tbl th { font-weight:500; color:#475467; width:34%; }
/* nowrap тут был ошибкой: в таблице cookies описания длинные и выдавливали
   горизонтальную прокрутку (видно было в модалке с текстом Zásad cookies) */
@media (max-width:560px) {
  .nw-tbl, .nw-tbl tbody, .nw-tbl tr, .nw-tbl th, .nw-tbl td { display:block; width:auto; }
  .nw-tbl tr { padding:10px 0; border-bottom:1px solid #EAECF0; }
  .nw-tbl th, .nw-tbl td { border:0; padding:2px 0; }
  .nw-tbl th { font-weight:700; color:#101828; }
}
.nw-deliv-note { display:block; font-size:12.5px; line-height:1.5; color:var(--mut); margin-top:3px; }
/* Оговорка про атипичные размеры AirCube: срок 5–7 недель против складских 2–3 (бриф T-06). */
.nw-deliv-alt { font-size:12.5px; line-height:1.5; color:var(--mut); margin:-6px 0 10px; }
.nw-shortdesc { margin-bottom:22px; }
.nw-product-desc { margin-top:8px; }

/* grid + cards */
.nw-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(240px, 1fr)); gap:18px; }
.nw-card { background:#fff; border:1px solid var(--line); border-radius:14px; padding:14px; display:flex;
  flex-direction:column; gap:8px; color:var(--ink); transition:box-shadow .15s; }
.nw-card:hover { box-shadow:0 6px 24px rgba(16,24,40,.08); text-decoration:none; }
.nw-card-img { display:block; height:170px; border-radius:10px; overflow:hidden; background:var(--cream); }
.nw-card-img img { width:100%; height:100%; object-fit:cover; }
.nw-card-title { font-weight:600; font-size:15px; line-height:1.35; }
.nw-card-price { color:var(--brand); font-weight:800; }
.nw-card-date { color:var(--mut); font-size:13px; }
.nw-cat-block { margin-bottom:34px; }
.nw-count { color:var(--mut); font-weight:400; font-size:16px; }

/* forms */
/* Вид полей = карточка входа/регистрации (.nwauth-*), чтобы формы на сайте
   выглядели одинаково: 48px, рамка 1.5px, терракотовое фокус-кольцо, иконка слева. */
.nw-form { display:flex; flex-direction:column; gap:14px; max-width:560px; background:#fff;
  border:1px solid var(--line); border-radius:14px; padding:22px; }
/* :not(.nw-agree) — строка согласия остаётся горизонтальной (галочка рядом с текстом) */
.nw-form label:not(.nw-agree) { display:flex; flex-direction:column; gap:6px;
  font:700 12.5px Inter,sans-serif; color:#344054; }
.nw-form .nw-agree { flex-direction:row; align-items:flex-start; gap:10px; }
.nw-form input[type=text], .nw-form input[type=email], .nw-form input[type=tel], .nw-form textarea {
  border:1.5px solid #E4E7EC; border-radius:11px; background:#fff; outline:none;
  font:500 14.5px Inter,sans-serif; color:#101828;
  transition:border-color .15s ease, box-shadow .15s ease;
}
.nw-form input[type=text], .nw-form input[type=email], .nw-form input[type=tel] {
  height:48px; padding:0 14px 0 42px;
  background-repeat:no-repeat; background-position:14px center; background-size:17px 17px;
}
.nw-form textarea { padding:12px 14px; min-height:120px; line-height:1.55; resize:vertical; }
.nw-form input:focus, .nw-form textarea:focus { border-color:#A9633A; box-shadow:0 0 0 3px rgba(169,99,58,.13); }
.nw-form input::placeholder, .nw-form textarea::placeholder { color:#98A2B3; }
/* иконки полей — те же, что в карточке входа (человек, конверт, телефон) */
.nw-form input[name=name] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2398A2B3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.6'/%3E%3Cpath d='M4.8 20c1.2-3.5 3.9-5.3 7.2-5.3s6 1.8 7.2 5.3'/%3E%3C/svg%3E"); }
.nw-form input[name=email] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2398A2B3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3.5 6.5 8.5 6 8.5-6'/%3E%3C/svg%3E"); }
.nw-form input[name=phone] { background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2398A2B3' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6.5 3.5h3l1.5 4-2 1.4a12 12 0 0 0 5.6 5.6l1.4-2 4 1.5v3a2 2 0 0 1-2.2 2A16.5 16.5 0 0 1 4.5 5.7a2 2 0 0 1 2-2.2z'/%3E%3C/svg%3E"); }

/* согласие: чекбокс как в .nwauth-agree, но без доп. разметки */
.nw-consent { flex-direction:row !important; align-items:flex-start; gap:10px !important;
  font:400 12.5px/1.55 Inter,sans-serif !important; color:#667085; cursor:pointer; }
.nw-consent a { color:#A9633A; font-weight:600; text-decoration:underline; }
.nw-consent input[type=checkbox] {
  appearance:none; -webkit-appearance:none; flex:none; width:20px; height:20px; margin:1px 0 0;
  border:1.5px solid #D0D5DD; border-radius:6px; background:#fff; cursor:pointer;
  background-repeat:no-repeat; background-position:center; background-size:12px 12px;
  transition:border-color .15s ease, background-color .15s ease;
}
.nw-consent input[type=checkbox]:checked {
  background-color:#A9633A; border-color:#A9633A;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 5 5 9-11'/%3E%3C/svg%3E");
}
.nw-consent input[type=checkbox]:focus-visible { box-shadow:0 0 0 3px rgba(169,99,58,.18); }

/* кнопка отправки = .nwauth-submit */
.nw-form button[type=submit], .nw-form .nw-cta[type=submit] {
  width:100%; height:50px; margin-top:4px; padding:0 18px; border:0; border-radius:11px;
  background:#A9633A; color:#fff; font:700 14.5px Inter,sans-serif; cursor:pointer;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  transition:background .15s ease, transform .15s ease;
}
.nw-form button[type=submit]:hover { background:#8A4E28; transform:translateY(-1px); }
.nw-hp { position:absolute; left:-9999px; height:0; width:0; overflow:hidden; }

/* contact */
.nw-contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.nw-contact-line { margin-bottom:8px; }
.nw-contact-note { color:var(--mut); font-size:14px; margin-top:10px; }

/* footer */
.nw-foot { background:var(--ink); color:#CDD5DF; font-size:14px; padding:44px 0 20px; }
.nw-foot a { color:#E4E7EC; display:block; margin-bottom:8px; }
.nw-foot h3 { color:#fff; font-size:14px; text-transform:uppercase; letter-spacing:.4px; margin-bottom:12px; }
.nw-foot-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr 1.2fr; gap:28px; padding-bottom:26px; }
.nw-foot-logo { filter:brightness(0) invert(1); margin-bottom:12px; }
.nw-foot-co { margin-top:10px; color:#98A2B3; }
.nw-foot-legal { border-top:1px solid rgba(255,255,255,.14); padding-top:16px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; color:#98A2B3; font-size:13px; }
.nw-foot-legal a { display:inline; margin:0 0 0 14px; color:#CDD5DF; }

.nw-stub { background:var(--cream); border:1px solid var(--tan); border-radius:14px; padding:22px; }
.nw-404-links a { display:inline-block; margin:6px 10px; font-weight:600; }

@media (max-width: 860px) {
  .nw-head-in { flex-wrap:wrap; gap:12px; }
  .nw-nav { order:3; width:100%; gap:14px; font-size:13.5px; overflow-x:auto; padding-bottom:2px; }
  .nw-cta { margin-left:auto; padding:9px 14px; font-size:14px; }
  .nw-product, .nw-contact-grid { grid-template-columns:1fr; gap:24px; }
  .nw-foot-grid { grid-template-columns:1fr 1fr; }
  h1 { font-size:26px; }
  .nw-promo-right { display:none; }
}

.nw-grid-gallery { grid-template-columns:repeat(auto-fill, minmax(280px, 1fr)); }
.nw-card-photo { padding:0; overflow:hidden; }
.nw-card-photo .nw-card-img { height:220px; border-radius:14px; }

html { background:#101828; }

/* cart / checkout / admin / configurator */
.nw-cart-table { border-collapse:collapse; width:100%; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.nw-cart-table th, .nw-cart-table td { padding:12px 14px; border-bottom:1px solid var(--line); text-align:left; vertical-align:middle; }
.nw-cart-table th { font-size:13px; text-transform:uppercase; letter-spacing:.3px; color:var(--mut); }
.nw-cart-img img { width:72px; height:54px; object-fit:cover; border-radius:8px; }
.nw-cart-attrs { color:var(--mut); font-size:13px; margin-top:3px; }
.nw-qty { width:74px; border:1px solid var(--line); border-radius:8px; padding:8px; font:inherit; }
.nw-cart-foot { display:flex; justify-content:space-between; align-items:center; margin:16px 0; flex-wrap:wrap; gap:12px; }
.nw-cart-total { font-size:20px; }
.nw-cart-note { color:var(--mut); font-size:13px; }
.nw-cart-actions { display:flex; gap:14px; align-items:center; flex-wrap:wrap; }
.nw-checkout-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:36px; align-items:start; }
.nw-summary { background:#fff; border:1px solid var(--line); border-radius:14px; padding:20px; }
.nw-summary-row { display:flex; justify-content:space-between; gap:14px; padding:9px 0; border-bottom:1px solid var(--line); font-size:14.5px; }
.nw-summary-total { font-weight:800; font-size:16px; border-bottom:0; }
.nw-payment { border:1px solid var(--line); border-radius:10px; padding:12px 14px; }
.nw-payment legend { font-weight:600; font-size:14px; padding:0 6px; }
.nw-config { background:var(--cream); border:1px solid var(--tan); border-radius:14px; padding:16px 18px; margin:14px 0; }
.nw-config-title { margin:0 0 10px; font-size:17px; }
.nw-config-row { display:flex; flex-direction:column; gap:5px; font-weight:600; font-size:14px; margin-bottom:10px; }
.nw-config-select { border:1px solid var(--line); border-radius:10px; padding:10px 12px; font:inherit; background:#fff; }
.nw-config-price { font-size:18px; margin-top:6px; }
.nw-buy-row { display:flex; gap:12px; align-items:center; flex-wrap:wrap; margin-top:12px; }
.nw-admin-tabs { display:flex; gap:16px; margin:14px 0 22px; }
.nw-admin-tabs a { font-weight:600; padding:8px 14px; border-radius:10px; border:1px solid var(--line); background:#fff; }
.nw-admin-tabs a.is-on { background:var(--brand); color:#fff; }
.nw-admin-card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:14px 16px; margin-bottom:12px; font-size:14.5px; }
.nw-admin-item { color:var(--mut); font-size:13.5px; margin-top:4px; }
.nw-admin-pick select { border:1px solid var(--line); border-radius:10px; padding:10px 12px; font:inherit; background:#fff; min-width:340px; }
.nw-price-input { width:110px; }
@media (max-width:860px){ .nw-checkout-grid { grid-template-columns:1fr; } }

/* admin polish */
.nw-status { display:inline-block; font-size:12px; font-weight:700; padding:3px 10px; border-radius:99px; margin-right:8px; background:#EEF1F4; color:#475467; }
.nw-status-new { background:#FDEAD7; color:#8A4E28; }
.nw-status-confirmed { background:#DCE7EC; color:#1D4E63; }
.nw-status-done { background:#DEEAE6; color:#12805C; }
.nw-status-cancelled { background:#FEE4E2; color:#D92D20; }
.nw-status-form { display:inline-block; margin-left:10px; }
.nw-status-form select { border:1px solid var(--line); border-radius:8px; padding:5px 8px; font:inherit; font-size:13px; background:#fff; }
.nw-admin-card { line-height:1.7; }

/* search */
.nw-search-form { display:flex; gap:10px; max-width:560px; margin-bottom:24px; }
.nw-search-form input { flex:1; border:2px solid var(--brand); border-radius:10px; padding:11px 14px; font:inherit; }
.nw-search-list { list-style:none; margin:0; padding:0; }
.nw-search-list li { padding:10px 0; border-bottom:1px solid var(--line); }
.nw-search-list a { font-weight:600; }
.nw-search-type { color:var(--mut); font-size:13px; margin-left:8px; }
.nw-cat-intro { margin-bottom:26px; }

/* live: сортировка, галерея, лайтбокс */
.nw-sortbar { display:flex; gap:8px; margin:0 0 18px; flex-wrap:wrap; }
.nw-sortbar a { padding:9px 14px; border-radius:8px; font-weight:600; font-size:12.5px; border:1px solid var(--line); background:#fff; color:var(--ink); }
.nw-sortbar a.is-on { background:var(--ink); color:#fff; border-color:var(--ink); }
.nw-sortbar a:hover { text-decoration:none; border-color:var(--brand); }
.nw-product-gal img, .nw-card-photo .nw-card-img img, #nw-main-img { cursor:pointer; }
.nw-product-gal img.is-active { outline:2px solid var(--brand); }
.nw-lightbox { position:fixed; inset:0; background:rgba(16,24,40,.92); z-index:200; display:flex; align-items:center; justify-content:center; padding:30px; }
.nw-lightbox img { max-width:94vw; max-height:90vh; border-radius:10px; box-shadow:0 20px 60px rgba(0,0,0,.5); }
.nw-lightbox-close { position:absolute; top:18px; right:26px; color:#fff; font:300 40px/1 Inter,sans-serif; cursor:pointer; background:none; border:0; }

.nw-ddcfg { margin-bottom:18px; }
.nw-cfg-help { display:block; font-weight:400; font-size:12.5px; color:var(--mut); line-height:1.5; margin-top:2px; }
.nw-cfg-contact { border-top:1px solid var(--tan); margin-top:14px; padding-top:14px; display:flex; flex-direction:column; gap:10px; }
.nw-cfg-contact h3 { font-size:16px; margin:0 0 4px; }
.nw-cfg-contact label { font-weight:600; font-size:13.5px; display:flex; flex-direction:column; gap:4px; }
.nw-cfg-contact input { border:1px solid var(--line); border-radius:10px; padding:10px 12px; font:inherit; background:#fff; }

/* suggest / favorites / account */
.nw-suggest { position:absolute; z-index:120; background:#fff; border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 40px rgba(16,24,40,.14); overflow:hidden; }
.nw-suggest-item { display:flex; align-items:center; gap:10px; padding:9px 12px; color:var(--ink); border-bottom:1px solid var(--line); font-size:14px; }
.nw-suggest-item:hover { background:var(--cream); text-decoration:none; }
.nw-suggest-item img, .nw-suggest-noimg { width:42px; height:32px; object-fit:cover; border-radius:6px; background:var(--cream); flex:none; }
.nw-suggest-item b { margin-left:auto; color:var(--brand); white-space:nowrap; }
.nw-suggest-page span { color:var(--mut); }
.nw-suggest-all { display:block; padding:10px 12px; font-weight:700; font-size:13.5px; text-align:center; }
.nw-fav-btn { background:none; border:0; cursor:pointer; font-size:26px; color:var(--brand); vertical-align:middle; margin-left:8px; line-height:1; }
.nw-fav-btn.is-on { color:#D92D20; }
.nw-card-wrap { position:relative; }
.nw-card-wrap .nw-fav-btn { position:absolute; top:10px; right:10px; background:#fff; border-radius:99px; width:38px; height:38px; box-shadow:0 2px 8px rgba(16,24,40,.12); }
.nw-favcount { position:absolute; top:-6px; right:-10px; background:#D92D20; color:#fff; font:700 9px Inter,sans-serif; min-width:16px; height:16px; padding:0 4px; border-radius:99px; display:flex; align-items:center; justify-content:center; }
.nw-account-grid { display:grid; grid-template-columns:1fr 1fr; gap:26px; align-items:start; }
.nw-err { background:#FEE4E2; color:#D92D20; border-radius:10px; padding:10px 14px; font-weight:600; }
@media (max-width:860px){ .nw-account-grid { grid-template-columns:1fr; } }

/* Rychla konfigurace widget (стиль главной) */
.nw-kfg { display:grid; grid-template-columns:1.25fr 1fr; gap:0; border-radius:18px; overflow:hidden; margin:34px 0; box-shadow:0 10px 44px rgba(16,24,40,.10); background:#fff; }
.nw-kfg-viz { position:sticky; top:90px; align-self:start; background:#101828; height:560px; border-radius:0; }
.nw-kfg-viz { position:sticky; overflow:hidden; }
.nw-kfg-viz img { width:100%; height:100%; object-fit:cover; display:block; transition:opacity .3s; }
.nw-kfg-tag { position:absolute; z-index:2; top:18px; left:18px; background:rgba(16,24,40,.75); color:#fff; font:700 11px Inter,sans-serif; letter-spacing:.08em; padding:8px 14px; border-radius:8px; }
.nw-kfg-caption { position:absolute; z-index:2; bottom:16px; right:16px; background:rgba(16,24,40,.75); color:#fff; font:600 12.5px Inter,sans-serif; padding:8px 12px; border-radius:8px; }
.nw-kfg-caption:empty { display:none; }
.nw-kfg-panel { padding:24px 26px; display:flex; flex-direction:column; gap:15px; }
.nw-kfg-head { font:800 20px Inter,sans-serif; letter-spacing:-0.02em; }
.nw-kfg-head span { display:block; font:400 12.5px Inter,sans-serif; color:var(--mut); margin-top:2px; }
.nw-kfg-label { font:700 11px Inter,sans-serif; letter-spacing:.08em; color:var(--mut); margin-bottom:7px; display:flex; justify-content:space-between; }
.nw-kfg-cur { color:var(--ink); font-weight:600; letter-spacing:0; text-transform:none; }
.nw-kfg-row { display:flex; gap:8px; flex-wrap:wrap; }
.nw-kfg-btn { border:1.5px solid var(--line); background:#fff; border-radius:9px; padding:9px 13px; font:600 13.5px Inter,sans-serif; cursor:pointer; min-width:52px; }
.nw-kfg-btn.is-on { background:var(--ink); color:#fff; border-color:var(--ink); }
.nw-kfg-sw { display:flex; align-items:center; gap:9px; border:1.5px solid var(--line); background:#fff; border-radius:11px; padding:10px 14px; font:600 13.5px Inter,sans-serif; cursor:pointer; text-align:left; }
.nw-kfg-sw small { display:block; font-weight:400; color:var(--mut); }
.nw-kfg-sw.is-on { border-color:var(--brand); background:var(--cream); }
.nw-kfg-chip { width:22px; height:22px; border-radius:6px; border:1px solid rgba(16,24,40,.18); flex:none; }
.nw-kfg-card { border:1.5px solid var(--line); background:#fff; border-radius:11px; padding:10px 13px; text-align:left; cursor:pointer; display:flex; flex-direction:column; gap:2px; width:100%; }
.nw-kfg-card.is-set { border-color:var(--brand); background:var(--cream); }
.nw-kfg-card-t { font:700 10.5px Inter,sans-serif; letter-spacing:.07em; color:var(--mut); }
.nw-kfg-card-v { font:700 13.5px Inter,sans-serif; }
.nw-kfg-card-n { font:400 11px Inter,sans-serif; color:var(--mut); }
.nw-kfg-sel { border:1.5px solid var(--line); border-radius:10px; padding:10px 12px; font:inherit; background:#fff; width:100%; }
.nw-kfg-incl { display:flex; flex-wrap:wrap; gap:7px; }
.nw-kfg-incl span { background:var(--cream); border:1px solid var(--tan); color:var(--ink); font:600 12px Inter,sans-serif; border-radius:99px; padding:6px 11px; }
.nw-kfg-pricebox { background:#F4F6F8; border-radius:13px; padding:16px; }
.nw-kfg-price { font:800 26px Inter,sans-serif; }
.nw-kfg-price s { color:var(--mut); font-weight:400; font-size:16px; margin-left:8px; }
/* стороны 2х2 */

@media (max-width:1000px){ .nw-kfg { grid-template-columns:1fr; } .nw-kfg-viz { min-height:300px; } .nw-kfg-viz img { position:static; height:300px; } }

.nw-kfg-panel { display:block; }
.nw-kfg-group { margin-bottom:15px; }
.nw-kfg-group[data-kfg*="strana"] { display:inline-block; width:calc(50% - 8px); vertical-align:top; }
.nw-kfg-group[data-kfg*="strana"] .nw-kfg-label span.nw-kfg-cur { display:none; }
.nw-kfg-incl { margin-bottom:15px; }
.nw-kfg-head { margin-bottom:15px; }

.nw-kfg-prodhead { margin-bottom:4px; }
.nw-kfg-prodhead h1 { margin-bottom:6px; }
.nw-kfg { margin:14px 0 34px; }

/* === cart/checkout AJAX 2026-08-13 === */
.nw-visually-hidden { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }

/* toast «Přidáno do košíku» */
.nw-toast { position:fixed; top:86px; right:18px; z-index:300; width:min(370px, calc(100vw - 28px));
  background:#fff; border:1px solid var(--line); border-left:4px solid #12805C; border-radius:14px;
  box-shadow:0 18px 50px rgba(16,24,40,.18); padding:14px 16px;
  opacity:0; transform:translateY(-10px); transition:opacity .25s, transform .25s; }
.nw-toast.is-in { opacity:1; transform:none; }
.nw-toast.is-out { opacity:0; transform:translateY(-10px); }
.nw-toast-head { display:flex; align-items:center; gap:9px; font:700 14px Inter,sans-serif; color:#12805C; }
.nw-toast-check { width:20px; height:20px; border-radius:99px; background:#12805C; color:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:12px; flex:none; }
.nw-toast-x { margin-left:auto; background:none; border:0; cursor:pointer; font:300 22px/1 Inter,sans-serif; color:var(--mut); padding:0 2px; }
.nw-toast-x:hover { color:var(--ink); }
.nw-toast-title { font-weight:700; font-size:14.5px; color:var(--ink); margin-top:9px; line-height:1.4; }
.nw-toast-attrs { color:var(--mut); font-size:12.5px; line-height:1.5; margin-top:3px; }
.nw-toast-price { font:800 15px Inter,sans-serif; color:var(--brand); margin-top:7px; }
.nw-toast-actions { display:flex; gap:10px; margin-top:12px; flex-wrap:wrap; }
.nw-toast-actions .nw-cta, .nw-toast-actions .nw-cta-ghost { padding:9px 14px; font-size:13.5px; }
.nw-toast-actions .nw-cta-ghost { cursor:pointer; }
@media (max-width:640px){ .nw-toast { top:auto; bottom:14px; right:14px; left:14px; width:auto; } }

/* stepper množství */
.nw-stepper { display:inline-flex; align-items:stretch; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; }
.nw-step-btn { width:36px; border:0; background:#F4F6F8; cursor:pointer; font:600 17px/1 Inter,sans-serif; color:var(--ink); padding:0; }
.nw-step-btn:hover { background:var(--cream); color:var(--brand-dark); }
.nw-step-input { width:50px; border:0; text-align:center; font:600 14.5px Inter,sans-serif; padding:9px 2px; -moz-appearance:textfield; appearance:textfield; }
.nw-step-input:focus { outline:2px solid var(--brand); outline-offset:-2px; border-radius:6px; }
.nw-step-input::-webkit-outer-spin-button, .nw-step-input::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }

/* stránka košíku */
#nw-cart-full { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:28px; align-items:start; }
.nw-cartx { background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; }
.nw-cartx-head, .nw-cartx-line { display:grid; grid-template-columns:minmax(0,1fr) 108px 128px 118px 38px; gap:12px; align-items:center; }
.nw-cartx-head { padding:11px 16px; background:#F9FAFB; border-bottom:1px solid var(--line); font:700 11.5px Inter,sans-serif; letter-spacing:.06em; text-transform:uppercase; color:var(--mut); }
.nw-cartx-line { padding:14px 16px; border-bottom:1px solid var(--line); }
.nw-cartx-line:last-child { border-bottom:0; }
.nw-cartx-prod { display:flex; gap:12px; align-items:center; min-width:0; }
.nw-cartx-img { flex:none; }
.nw-cartx-img img, .nw-cartx-noimg { width:76px; height:58px; object-fit:cover; border-radius:10px; background:var(--cream); display:block; }
.nw-cartx-meta { min-width:0; }
.nw-cartx-title { font-weight:700; font-size:14.5px; color:var(--ink); }
.nw-cartx-title:hover { color:var(--brand); }
.nw-cartx-attrs { color:var(--mut); font-size:12.5px; line-height:1.55; margin-top:3px; }
.nw-cartx-unit { font-size:14px; }
.nw-cartx-total { font-weight:800; font-size:15px; white-space:nowrap; }
/* старый вид «×» 34×34 — только если строка НЕ использует новую кнопку с подписью,
   иначе фон обрезал текст «Odebrat» (кнопка 34px, содержимое 69px) */
.nw-cartx-remove:not(.nwcart-removelink) { background:none; border:0; cursor:pointer; font:300 24px/1 Inter,sans-serif; color:var(--mut); width:34px; height:34px; border-radius:8px; padding:0; }
.nw-cartx-remove:not(.nwcart-removelink):hover { color:#D92D20; background:#FEE4E2; }
.nw-nojs-recalc { margin-top:12px; }

/* итоговый блок */
.nw-cartx-summary { background:#fff; border:1px solid var(--line); border-radius:14px; padding:20px; position:sticky; top:96px; display:flex; flex-direction:column; gap:11px; }
.nw-cartx-sumline { display:flex; justify-content:space-between; align-items:baseline; font-size:15.5px; font-weight:600; }
#nw-cart-grand { font:800 24px Inter,sans-serif; color:var(--ink); letter-spacing:-0.02em; }
.nw-cartx-summary .nw-cta, .nw-cartx-summary .nw-cta-ghost { text-align:center; }
.nw-cartx-summary .nw-cart-note { margin-top:-6px; }
#nw-cart-clear-form { text-align:center; margin-top:2px; }
.nw-cartx-clear { background:none; border:0; cursor:pointer; color:#D92D20; font:600 13px Inter,sans-serif; padding:6px 0; text-decoration:underline; text-underline-offset:3px; }
.nw-cartx-clear:hover { text-decoration:none; }

/* prázdný košík */
.nw-cart-empty { text-align:center; padding:46px 20px; background:#fff; border:1px dashed var(--line); border-radius:14px; }
.nw-cart-empty svg { color:var(--mut); margin-bottom:6px; }
.nw-cart-empty .nw-lead { margin:6px 0 14px; }

@media (max-width:860px){
  #nw-cart-full { grid-template-columns:1fr; }
  .nw-cartx-head { display:none; }
  .nw-cartx-line { display:block; position:relative; padding:14px; }
  .nw-cartx-prod { padding-right:38px; }
  .nw-cartx-unit, .nw-cartx-qty, .nw-cartx-total { display:flex; justify-content:space-between; align-items:center; margin-top:10px; }
  .nw-cartx-unit::before, .nw-cartx-qty::before, .nw-cartx-total::before {
    content:attr(data-label); font:600 11.5px Inter,sans-serif; letter-spacing:.05em; text-transform:uppercase; color:var(--mut); }
  .nw-cartx-remove:not(.nwcart-removelink) { position:absolute; top:10px; right:10px; }
  .nw-cartx-summary { position:static; }
}

/* pokladna */
.nw-co-form { max-width:none; }
.nw-co-sec { font-size:16px; margin:10px 0 0; padding-bottom:7px; border-bottom:1px solid var(--line); }
.nw-co-two { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
@media (max-width:640px){ .nw-co-two { grid-template-columns:1fr; } }
.nw-payx { border:0; padding:0; margin:0; display:flex; flex-direction:column; gap:10px; }
.nw-payx-opt { display:flex; gap:12px; align-items:flex-start; border:1.5px solid var(--line); border-radius:12px; padding:13px 15px; cursor:pointer; background:#fff; font-weight:400; }
.nw-payx-opt:hover { border-color:var(--brand); }
.nw-payx-opt:has(input:checked) { border-color:var(--brand); background:var(--cream); }
.nw-payx-opt input { margin-top:3px; accent-color:var(--brand); flex:none; }
.nw-payx-opt span strong { display:block; font-size:14.5px; }
.nw-payx-opt span small { display:block; color:var(--mut); font-size:12.5px; line-height:1.5; margin-top:2px; }
.nw-summary-item { display:flex; gap:10px; align-items:flex-start; min-width:0; }
.nw-summary-img { width:64px; height:48px; object-fit:cover; border-radius:9px; background:var(--cream);
  border:1px solid var(--line); flex:none; }
.nw-summary-row small { color:var(--mut); line-height:1.5; }

/* === кастомные дропдауны (2026-08-13) === */
.nw-dd { position:relative; display:inline-flex; vertical-align:middle; }
.nw-dd--block { display:flex; width:100%; }
.nw-dd--flat { display:flex; height:100%; }
.nw-dd-btn { display:flex; align-items:center; justify-content:space-between; gap:8px; border:1.5px solid #E4E7EC;
  background:#fff; border-radius:10px; padding:10px 12px; font:600 13px Inter,sans-serif; color:var(--ink);
  cursor:pointer; white-space:nowrap; transition:border-color .15s ease, background .15s ease; min-width:0; }
.nw-dd--block .nw-dd-btn { width:100%; }
.nw-dd-btn:hover, .nw-dd-btn.is-open { border-color:var(--brand); }
.nw-dd-label { overflow:hidden; text-overflow:ellipsis; }
.nw-dd-chev { flex:none; color:var(--mut); transition:transform .18s ease; }
.nw-dd-btn.is-open .nw-dd-chev { transform:rotate(180deg); }
.nw-dd--flat .nw-dd-btn { border:0; border-right:1px solid #E4E7EC; border-radius:0; background:#F4F6F8; height:100%; padding:0 12px 0 14px; }
.nw-dd--flat .nw-dd-btn:hover { background:#EEF1F4; }
.nw-dd-list { position:absolute; z-index:9999; background:#fff; border:1px solid #E4E7EC; border-radius:12px;
  box-shadow:0 18px 40px rgba(16,24,40,.16); padding:6px; max-height:340px; overflow:auto; }
.nw-dd-item { display:block; width:100%; text-align:left; border:0; background:none; padding:10px 14px; border-radius:8px;
  font:500 13.5px Inter,sans-serif; color:var(--ink); cursor:pointer; }
.nw-dd-item:hover { background:#FBF4EC; color:var(--brand-dark); }
.nw-dd-item.is-sel { color:var(--brand); font-weight:700; background:#FBF4EC; }
.nw-dd-item.is-sel::after { content:'✓'; float:right; margin-left:12px; }

/* === слайдер галереи товара + зум + лайтбокс (2026-08-13) === */
.nw-slider { position:relative; border-radius:14px; overflow:hidden; background:#fff; border:1px solid #E4E7EC; }
.nw-slider-frame { position:relative; overflow:hidden; cursor:zoom-in; }
.nw-slider-frame img { width:100%; height:auto; display:block; border-radius:0; transition:transform .25s ease; }
.nw-slider-frame.is-zoom img { transform:scale(1.9); }
.nw-slider-arr { position:absolute; top:50%; transform:translateY(-50%); width:42px; height:42px; border-radius:50%;
  border:1px solid #E4E7EC; background:rgba(255,255,255,.96); box-shadow:0 4px 14px rgba(16,24,40,.14);
  font:400 24px/1 Inter,sans-serif; color:var(--ink); cursor:pointer; display:flex; align-items:center; justify-content:center;
  z-index:3; transition:color .15s ease, border-color .15s ease; padding-bottom:3px; }
.nw-slider-arr:hover { border-color:var(--brand); color:var(--brand); }
.nw-slider-prev { left:12px; }
.nw-slider-next { right:12px; }
.nw-slider-count { position:absolute; right:12px; bottom:10px; background:rgba(16,24,40,.66); color:#fff;
  font:600 11px Inter,sans-serif; padding:4px 10px; border-radius:99px; z-index:3; }
.nw-gal-thumb.is-active { outline:2px solid var(--brand); outline-offset:1px; }
.nw-lightbox-arr { position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; border-radius:50%;
  border:1px solid rgba(255,255,255,.35); background:rgba(255,255,255,.12); color:#fff; font:400 28px/1 Inter,sans-serif;
  cursor:pointer; display:flex; align-items:center; justify-content:center; padding-bottom:3px; }
.nw-lightbox-arr:hover { background:rgba(255,255,255,.28); }
.nw-lightbox-prev { left:22px; }
.nw-lightbox-next { right:22px; }
.nw-lightbox-count { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); color:#fff;
  font:600 13px Inter,sans-serif; background:rgba(255,255,255,.14); padding:5px 14px; border-radius:99px; }

/* === степпер количества у Do košíku (2026-08-13) === */
.nw-qtybox { display:inline-flex; align-items:stretch; border:1.5px solid #E4E7EC; border-radius:10px; overflow:hidden; background:#fff; height:48px; }
.nw-qtybox-btn { width:40px; border:0; background:#F4F6F8; font:600 19px/1 Inter,sans-serif; color:var(--ink); cursor:pointer; transition:background .15s ease, color .15s ease; }
.nw-qtybox-btn:hover { background:#FBF4EC; color:var(--brand); }
.nw-qtybox .nw-qty { border:0; border-radius:0; width:52px; text-align:center; font:600 15px Inter,sans-serif; -moz-appearance:textfield; }
.nw-qtybox .nw-qty::-webkit-outer-spin-button, .nw-qtybox .nw-qty::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.nw-cta-cart { display:inline-flex; align-items:center; gap:9px; }

/* === тело страниц: светлый фон + контент белыми карточками (2026-08-14) === */
body { background:#F5F6F8; }
.nw-main .nw-prose-wrap,
.nw-main .nw-product-desc,
.nw-main .nw-product {
  background:#fff; border:1px solid #E4E7EC; border-radius:16px;
  padding:28px 32px; margin-bottom:22px; box-shadow:0 8px 24px rgba(16,24,40,.05);
}
.nw-main .nw-product-desc + .nw-product-desc { margin-top:0; }
@media (max-width:700px) {
  .nw-main .nw-prose-wrap, .nw-main .nw-product-desc, .nw-main .nw-product { padding:18px 16px; border-radius:12px; }
}

/* типографика контента: чёткие заголовки с акцентом, ссылки, списки, таблицы */
.nw-prose h2 { font-size:22px; margin:26px 0 12px; line-height:1.3; }
.nw-prose h2:first-child { margin-top:0; }
.nw-prose h3 { font-size:17px; margin:20px 0 8px; }
.nw-prose p { line-height:1.65; margin:0 0 12px; }
.nw-prose ul, .nw-prose ol { margin:0 0 14px; padding-left:22px; line-height:1.6; }
.nw-prose li { margin-bottom:6px; }
.nw-prose ul li::marker { color:var(--brand); }
.nw-prose a { font-weight:600; text-decoration:underline; text-decoration-color:#E2B48C; text-underline-offset:3px; }
.nw-prose a:hover { text-decoration-color:var(--brand); }
.nw-prose img { border-radius:12px; max-width:100%; height:auto; }
.nw-prose table { width:100%; border-collapse:collapse; margin:14px 0 18px; font-size:14px; }
.nw-prose table td, .nw-prose table th { border:1px solid #E4E7EC; padding:9px 12px; text-align:left; }
.nw-prose table tr:nth-child(even) td { background:#F8F9FB; }
.nw-prose table th, .nw-prose table tr:first-child td { background:#F4F6F8; font-weight:700; }
.nw-prose blockquote { border-left:4px solid #E2B48C; background:#FBF4EC; margin:14px 0; padding:12px 18px; border-radius:0 10px 10px 0; }

/* главная через общий layout: секции сами держат отступы */
.nw-main--home { padding:0; }
.nw-main--home .nw-wrap { max-width:none; }
/* Главная: гаттер уже даёт .dd-page > .nw-main (та же сетка max 1440, что у шапки
   и футера). Секции макета несли собственные inline 40px и были уже шапки — снимаем. */
.nw-main--home > div { padding-left:0 !important; padding-right:0 !important; }

/* ===== треугольники-указатели у выпадающих списков (категории поиска, подсказки) ===== */
/* список кастомного селекта: overflow:auto режет псевдоэлемент → рисуем «язычок» как отдельный слой */
.nw-dd-list { overflow: visible; }
.nw-dd-list > .nw-dd-scroll { max-height: 328px; overflow: auto; }
.nw-dd-list::before, .nw-dd-list::after {
  content: ""; position: absolute; bottom: 100%; left: 22px; width: 0; height: 0; border-style: solid;
}
.nw-dd-list::before { border-width: 0 9px 9px 9px; border-color: transparent transparent #E4E7EC transparent; }
.nw-dd-list::after { margin-bottom: -1px; left: 23px; border-width: 0 8px 8px 8px; border-color: transparent transparent #fff transparent; }
/* список над кнопкой (не влез вниз) — язычок снизу */
.nw-dd-list.is-up::before, .nw-dd-list.is-up::after { bottom: auto; top: 100%; }
.nw-dd-list.is-up::before { border-width: 9px 9px 0 9px; border-color: #E4E7EC transparent transparent transparent; }
.nw-dd-list.is-up::after { margin: -1px 0 0; border-width: 8px 8px 0 8px; border-color: #fff transparent transparent transparent; }

/* подсказки поиска */
.nw-suggest { overflow: visible; }
.nw-suggest .nw-suggest-item:first-child { border-top-left-radius: 12px; border-top-right-radius: 12px; }
.nw-suggest .nw-suggest-all { border-bottom-left-radius: 12px; border-bottom-right-radius: 12px; }
.nw-suggest::before, .nw-suggest::after {
  content: ""; position: absolute; bottom: 100%; left: 26px; width: 0; height: 0; border-style: solid;
}
.nw-suggest::before { border-width: 0 9px 9px 9px; border-color: transparent transparent #E4E7EC transparent; }
.nw-suggest::after { margin-bottom: -1px; left: 27px; border-width: 0 8px 8px 8px; border-color: transparent transparent #fff transparent; }

/* ===== лайтбокс: фото на белой подложке (снимки товаров — PNG с прозрачным фоном) ===== */
.nw-lightbox { z-index: 9999; }
.nw-lightbox-fig { margin: 0; background: #fff; border-radius: 14px; padding: 22px;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .5); display: flex; align-items: center; justify-content: center;
  max-width: min(94vw, 1040px); max-height: 88vh; }
.nw-lightbox-fig img { display: block; max-width: 100%; max-height: calc(88vh - 44px);
  width: auto; height: auto; object-fit: contain; border-radius: 6px; box-shadow: none; cursor: default; }
@media (max-width: 560px) { .nw-lightbox { padding: 14px; } .nw-lightbox-fig { padding: 12px; border-radius: 10px; } }

/* ===== шапка: кнопка каталога, сервисные ссылки и мега-меню (серверное) ===== */
.nwmega-btn { display:flex; align-items:center; gap:9px; background:#101828; color:#fff; border:0;
  border-radius:8px; padding:10px 16px; font:700 13px Inter,sans-serif; margin-right:12px; cursor:pointer;
  transition:background .2s ease; }
.nwmega-btn:hover, .nwmega-btn[aria-expanded="true"] { background:#A9633A; }
.nwmega-car { font-size:9px; opacity:.7; transition:transform .2s ease; }
.nwmega-btn[aria-expanded="true"] .nwmega-car { transform:rotate(180deg); }
.nwnav-l { padding:10px 14px; border-radius:8px; font:600 13px Inter,sans-serif; color:#101828;
  text-decoration:none; transition:background .2s ease, color .2s ease; }
.nwnav-l:hover { background:#F4F6F8; color:#101828; text-decoration:none; }
.nwnav-l.is-on { background:#F4F6F8; color:#A9633A; }

.nwmega { display:none; position:absolute; left:0; right:0; top:100%; z-index:40; background:#FBFBF9;
  border-bottom:1px solid #E4E7EC; box-shadow:0 34px 60px rgba(16,24,40,.18); }
.nwmega.is-open { display:block; }
.nwmega-inner { padding:26px 40px 30px; display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:36px; }
.nwmega-h { display:flex; align-items:baseline; justify-content:space-between; margin-bottom:16px; }
.nwmega-h-t { font:800 15px Inter,sans-serif; letter-spacing:-0.02em; color:#101828; }
.nwmega-h-t--info { margin-top:6px; }
.nwmega-h-all { display:flex; align-items:center; gap:7px; font:700 12px Inter,sans-serif; color:#A9633A; text-decoration:none; }
.nwmega-h-all:hover { text-decoration:underline; }
.nwmega-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.nwmega-card { display:flex; flex-direction:column; background:#fff; border:1px solid #E4E7EC; border-radius:12px;
  overflow:hidden; transition:border-color .2s ease, box-shadow .25s ease, transform .25s ease; }
.nwmega-card:hover { border-color:#A9633A; box-shadow:0 14px 30px rgba(16,24,40,.1); transform:translateY(-2px); }
.nwmega-card-img { position:relative; display:block; aspect-ratio:16/9; overflow:hidden; background:#EDEFF2; }
.nwmega-card-img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.nwmega-card:hover .nwmega-card-img img { transform:scale(1.05); }
.nwmega-badge { position:absolute; left:10px; top:10px; background:#D92D20; color:#fff; border-radius:5px;
  padding:4px 8px; font:700 10px Inter,sans-serif; }
.nwmega-card-b { padding:13px 15px 14px; display:flex; flex-direction:column; flex:1; }
.nwmega-card-h { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-bottom:11px; }
.nwmega-card-t { font:700 13px Inter,sans-serif; line-height:1.35; color:#101828; text-decoration:none; text-wrap:pretty; }
.nwmega-card-t:hover { color:#A9633A; text-decoration:none; }
.nwmega-card-p { flex:none; font:700 12px Inter,sans-serif; color:#A9633A; white-space:nowrap; }
.nwmega-card-links { margin-top:auto; display:grid; grid-template-columns:1fr 1fr; gap:7px; }
.nwmega-card-links a { display:flex; align-items:center; justify-content:center; background:#F4F6F8; border-radius:7px;
  padding:9px 6px; font:600 11px Inter,sans-serif; color:#344054; text-align:center; text-decoration:none;
  transition:background .2s ease, color .2s ease; }
.nwmega-card-links a:hover { background:#A9633A; color:#fff; text-decoration:none; }

.nwmega-side { display:flex; flex-direction:column; gap:12px; border-left:1px solid #E4E7EC; padding-left:32px; }
.nwmega-kfg { display:block; background:#101828; color:#fff; border-radius:12px; padding:20px; text-decoration:none;
  transition:transform .25s ease; }
.nwmega-kfg:hover { transform:translateY(-2px); text-decoration:none; color:#fff; }
.nwmega-kfg-t { display:flex; align-items:center; gap:9px; font:800 15px Inter,sans-serif; margin-bottom:7px; }
.nwmega-kfg-ico { display:flex; color:#E2B48C; }
.nwmega-kfg-d { display:block; font:400 12px Inter,sans-serif; line-height:1.55; color:rgba(255,255,255,.7); margin-bottom:12px; }
.nwmega-kfg-go { display:flex; align-items:center; gap:7px; font:700 12px Inter,sans-serif; color:#E2B48C; }
.nwmega-sale { display:block; border:1.5px solid #E8CDB4; background:#FBF4EC; border-radius:12px; padding:18px 20px;
  text-decoration:none; transition:border-color .2s ease; }
.nwmega-sale:hover { border-color:#A9633A; text-decoration:none; }
.nwmega-sale-h { display:flex; align-items:center; gap:9px; margin-bottom:6px; }
.nwmega-sale-b { background:#D92D20; color:#fff; border-radius:5px; padding:4px 9px; font:700 12px Inter,sans-serif; }
.nwmega-sale-t { font:800 14px Inter,sans-serif; color:#101828; }
.nwmega-sale-d { display:block; font:400 12px Inter,sans-serif; line-height:1.55; color:#5C554E; }
.nwmega-info { list-style:none; margin:0; padding:0; background:#fff; border:1px solid #E4E7EC; border-radius:12px; }
.nwmega-info li + li { border-top:1px solid #F0F2F4; }
.nwmega-info a { display:block; padding:11px 16px; font:600 12.5px Inter,sans-serif; color:#344054; text-decoration:none;
  transition:color .2s ease, background .2s ease; }
.nwmega-info a:hover { color:#A9633A; background:#FBF7F3; text-decoration:none; }
.nwmega-show { display:flex; align-items:center; gap:11px; background:#fff; border:1px solid #E4E7EC; border-radius:12px;
  padding:15px 18px; text-decoration:none; transition:border-color .2s ease; }
.nwmega-show:hover { border-color:#A9633A; text-decoration:none; }
.nwmega-show-ico { flex:none; width:34px; height:34px; border-radius:9px; background:#F5EBE0; color:#A9633A;
  display:flex; align-items:center; justify-content:center; }
.nwmega-show-t { min-width:0; }
.nwmega-show-t b { display:block; font:700 13px Inter,sans-serif; color:#101828; }
.nwmega-show-t small { display:block; font:500 11px Inter,sans-serif; color:#667085; }
.nwmega-show-go { margin-left:auto; display:flex; color:#A9633A; }
@media (max-width:1000px) {
  .nwmega { max-height:76vh; overflow-y:auto; }
  .nwmega-inner { grid-template-columns:1fr; gap:20px; padding:18px 14px 22px; }
  .nwmega-grid { grid-template-columns:1fr; }
  .nwmega-side { border-left:0; padding-left:0; border-top:1px solid #E4E7EC; padding-top:18px; }
  .nwmega-card-img { aspect-ratio:21/9; }
}

/* ===== страница контактов ===== */
.nwct-lead { max-width: 720px; }
.nwct-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 22px; align-items: start; }
.nwct-col { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
.nwct-card { background: #fff; border: 1px solid #E4E7EC; border-radius: 14px; padding: 22px 24px; }
.nwct-h { margin: 0 0 14px; font: 800 17px Inter, sans-serif; letter-spacing: -0.02em; color: #101828; border: 0; padding: 0; }
.nwct-dim { color: #667085; }
.nwct-note { margin: 14px 0 0; font: 500 12.5px/1.6 Inter, sans-serif; color: #667085; }

.nwct-card--main { background: #101828; border-color: #101828; }
/* Карточка быстрой связи тёмная, поэтому общий тёмный .nwct-h на ней не читается. */
.nwct-card--main .nwct-h { font: 700 11px Inter, sans-serif; letter-spacing: 0.12em;
  text-transform: uppercase; color: rgba(255,255,255,.6); margin-bottom: 16px; }
.nwct-phone { display: flex; align-items: center; gap: 14px; text-decoration: none; }
.nwct-phone:hover { text-decoration: none; }
.nwct-phone-ico { flex: none; width: 44px; height: 44px; border-radius: 12px; background: rgba(255,255,255,.1);
  color: #E2B48C; display: flex; align-items: center; justify-content: center; }
.nwct-phone-t b { display: block; font: 800 25px Inter, sans-serif; letter-spacing: -0.02em; color: #fff; }
.nwct-phone-t small { display: block; font: 500 12.5px Inter, sans-serif; color: rgba(255,255,255,.62); margin-top: 2px; }
.nwct-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 18px; }
.nwct-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 44px; padding: 0 14px;
  border-radius: 10px; font: 700 13px Inter, sans-serif; text-decoration: none; white-space: nowrap; overflow: hidden;
  text-overflow: ellipsis; transition: background .18s ease, border-color .18s ease, color .18s ease; }
.nwct-btn--wa { background: #25D366; color: #fff; }
.nwct-btn--wa:hover { background: #1FB855; color: #fff; text-decoration: none; }
.nwct-btn--wa .nw-wa-ico { color: #fff; }
.nwct-btn--mail { border: 1.5px solid rgba(255,255,255,.28); color: #fff; }
.nwct-btn--mail:hover { border-color: #E2B48C; color: #E2B48C; text-decoration: none; }

.nwct-place { display: flex; gap: 13px; }
.nwct-place + .nwct-place { margin-top: 18px; padding-top: 18px; border-top: 1px solid #F0F2F4; }
.nwct-place-ico { flex: none; width: 36px; height: 36px; border-radius: 10px; background: #F5EBE0; color: #A9633A;
  display: flex; align-items: center; justify-content: center; }
.nwct-place-ico--soon { background: #F4F6F8; color: #667085; }
.nwct-place-b { min-width: 0; }
.nwct-place-b strong { display: block; font: 700 14px Inter, sans-serif; color: #101828; margin-bottom: 5px; }
.nwct-place-b p { margin: 0 0 5px; font: 400 13.5px/1.6 Inter, sans-serif; color: #344054; }
.nwct-link { display: inline-block; font: 700 12.5px Inter, sans-serif; color: #A9633A; text-decoration: none; }
.nwct-link:hover { text-decoration: underline; }

.nwct-tab { width: 100%; border-collapse: collapse; }
.nwct-tab th, .nwct-tab td { padding: 9px 0; text-align: left; vertical-align: top;
  font: 500 13.5px Inter, sans-serif; border-bottom: 1px solid #F0F2F4; }
.nwct-tab tr:last-child th, .nwct-tab tr:last-child td { border-bottom: 0; }
.nwct-tab th { width: 38%; color: #667085; font-weight: 600; padding-right: 12px; }
.nwct-tab td { color: #101828; }

.nwct-soc { display: flex; gap: 10px; flex-wrap: wrap; }
.nwct-soc-l { display: inline-flex; align-items: center; gap: 9px; padding: 10px 15px; border: 1.5px solid #E4E7EC;
  border-radius: 10px; font: 700 13px Inter, sans-serif; color: #101828; text-decoration: none;
  transition: border-color .18s ease, color .18s ease, background .18s ease; }
.nwct-soc-l:hover { border-color: #A9633A; color: #A9633A; background: #FBF7F3; text-decoration: none; }

.nwct-formcard { position: sticky; top: 88px; }
.nwct-formsub { margin: -8px 0 14px; font: 400 13px/1.6 Inter, sans-serif; }
.nwct-formcard .nw-form { max-width: none; border: 0; padding: 0; background: transparent; }
@media (max-width: 900px) {
  .nwct-grid { grid-template-columns: 1fr; }
  .nwct-formcard { position: static; }
  .nwct-actions { grid-template-columns: 1fr; }
  .nwct-phone-t b { font-size: 22px; }
}

/* === Согласие с условиями: общий чекбокс всех форм (партиал templates/_souhlas.php) === */
.nw-agree { display:flex; align-items:flex-start; gap:10px; margin:2px 0 4px; }
.nw-agree-hit { flex:none; display:flex; cursor:pointer; }
/* 🔴 Чекбокс прячем «пуленепробиваемо»: правило .nw-pp-lead input {width:100%;height:48px}
   из product.css имеет ТУ ЖЕ специфичность и грузится позже — раньше оно побеждало,
   и невидимый input 100%×48px растягивал документ на ~700px вправо (горизонтальная
   прокрутка на каталоге, категориях, главной и товаре). Селектор с [type] выигрывает
   по специфичности, clip-path гарантирует нулевую отрисовку. */
.nw-agree input[type="checkbox"] {
  position:absolute; width:1px; height:1px; margin:0; padding:0; border:0;
  opacity:0; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap;
}
/* ссылки условий всегда сверху и кликабельны, что бы ни рисовал рантайм рядом */
.nw-agree-txt a { position:relative; z-index:2; pointer-events:auto; }
.nw-agree-txt { cursor:pointer; }
.nw-agree-box { flex:none; width:20px; height:20px; border:1.5px solid #D0D5DD; border-radius:6px; background:#fff;
  display:flex; align-items:center; justify-content:center; color:transparent; margin-top:1px;
  transition:border-color .15s ease, background .15s ease, color .15s ease; }
.nw-agree input:checked + .nw-agree-box { background:var(--brand); border-color:var(--brand); color:#fff; }
.nw-agree input:focus-visible + .nw-agree-box { box-shadow:0 0 0 3px rgba(169,99,58,.18); }
.nw-agree-txt { font:400 12.5px/1.55 Inter,sans-serif; color:var(--mut); }
.nw-agree-txt a { color:var(--brand); font-weight:600; text-decoration:underline; }
/* тёмный фон (футер) */
.nw-agree--dark .nw-agree-box { background:transparent; border-color:rgba(255,255,255,.35); }
.nw-agree--dark input:checked + .nw-agree-box { background:var(--brand); border-color:var(--brand); }
.nw-agree--dark .nw-agree-txt { color:rgba(255,255,255,.7); }
.nw-agree--dark .nw-agree-txt a { color:#E2B48C; }

/* === Модальное окно с условиями (ссылки в чекбоксе согласия) === */
.nw-modal { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:24px; }
.nw-modal-back { position:absolute; inset:0; background:rgba(16,24,40,.55); backdrop-filter:blur(2px); }
.nw-modal-win { position:relative; display:flex; flex-direction:column; width:min(760px, 100%); max-height:min(84vh, 780px);
  background:#fff; border-radius:16px; box-shadow:0 24px 60px rgba(16,24,40,.28); overflow:hidden; }
.nw-modal-head { display:flex; align-items:center; gap:12px; padding:18px 22px; border-bottom:1px solid var(--line); }
.nw-modal-t { font:800 17px Inter,sans-serif; letter-spacing:-.02em; color:var(--ink); flex:1; }
.nw-modal-x { border:0; background:transparent; font-size:26px; line-height:1; color:var(--mut); cursor:pointer; padding:0 4px; }
.nw-modal-x:hover { color:var(--brand); }
.nw-modal-body { padding:20px 22px; overflow:auto; font:400 14.5px/1.7 Inter,sans-serif; color:#344054; }
.nw-modal-body h2 { font:800 17px Inter,sans-serif; margin:18px 0 8px; }
.nw-modal-body h3 { font:700 15px Inter,sans-serif; margin:14px 0 6px; }
.nw-modal-body p, .nw-modal-body li { margin:0 0 10px; }
.nw-modal-body ul, .nw-modal-body ol { padding-left:20px; }
.nw-modal-load { color:var(--mut); }
.nw-modal-foot { display:flex; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 22px; border-top:1px solid var(--line); background:#F8F9FB; }
.nw-modal-full { font:600 12.5px Inter,sans-serif; color:var(--mut); }
.nw-modal-ok { border:0; border-radius:10px; background:var(--brand); color:#fff;
  font:700 13px Inter,sans-serif; padding:11px 20px; cursor:pointer; }
.nw-modal-ok:hover { background:var(--brand-dark); }
@media (max-width:700px) { .nw-modal { padding:12px; } .nw-modal-win { max-height:90vh; } }

/* === Валидация форм: красное поле + ошибка вместо плейсхолдера (обработчик в cart.js) === */
input.is-bad, textarea.is-bad { border-color:#F04438 !important; background:#FFFBFA; }
input.is-bad::placeholder, textarea.is-bad::placeholder { color:#B42318; opacity:1; }
label.is-bad { color:#B42318; }
.nw-co-err { display:block; margin-top:5px; font:600 12px Inter,sans-serif; color:#B42318; }
.nw-agree.is-bad .nw-agree-box { border-color:#F04438; background:#FFFBFA; }
.nw-agree.is-bad .nw-agree-txt { color:#B42318; }


/* === Соцсети в футере === */
.nwf-social { display:flex; gap:10px; margin-top:16px; flex-wrap:wrap; }
.nwf-soc { display:flex; align-items:center; justify-content:center; width:38px; height:38px;
  border-radius:10px; border:1px solid rgba(255,255,255,.18); color:rgba(255,255,255,.85);
  transition:border-color .15s ease, background .15s ease, color .15s ease, transform .15s ease; }
.nwf-soc:hover { border-color:var(--brand); background:rgba(169,99,58,.18); color:#fff; transform:translateY(-2px); }
.nwf-soc--g:hover { background:#fff; }

/* Подсказка над формой чекаута: вход не обязателен, заказ можно оформить гостем */
.nw-co-hint { margin:0 0 14px; padding:11px 14px; border:1px solid #EAD9C6; background:#FBF4EC;
  border-radius:10px; font:500 13.5px/1.55 Inter,sans-serif; color:#4A4238; }
.nw-co-hint a { color:var(--brand); font-weight:700; text-decoration:underline; }
.nw-co-hint b { font-weight:700; color:#101828; }


/* ===== «Jak to probíhá»: пять шагов покупки ================================ */
/* Ширина как у соседних секций: на главной это полоса с отступом 40px,
   в карточке товара блок стоит внутри .nw-wrap и боковых отступов не добавляет. */
.nw-jtp { padding: 40px 0 0; }
.nw-wrap .nw-jtp { padding: 8px 0 32px; }
.nw-jtp-h { margin: 0 0 20px; font: 800 24px Inter, sans-serif; letter-spacing: -0.03em; color: #101828; }
.nw-jtp-list {
  list-style: none; margin: 0; padding: 0; counter-reset: none;
  display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px;
}
.nw-jtp-item {
  position: relative;
  display: flex; flex-direction: column; gap: 14px;
  border: 1px solid #E4E7EC; border-radius: 14px; padding: 22px 22px 24px; background: #fff;
}
/* стрелка между шагами на широком экране */
.nw-jtp-item:not(:last-child)::after {
  content: ""; position: absolute; top: 37px; right: -12px; z-index: 1;
  width: 8px; height: 8px; border-top: 2px solid #D0B49A; border-right: 2px solid #D0B49A;
  transform: rotate(45deg);
}
.nw-jtp-num {
  flex: none; width: 34px; height: 34px; border-radius: 10px;
  background: #F5EBE0; color: #A9633A;
  display: flex; align-items: center; justify-content: center;
  font: 800 15px Inter, sans-serif;
}
.nw-jtp-txt b { display: block; margin-bottom: 6px; font: 700 15px/1.35 Inter, sans-serif; color: #101828; }
.nw-jtp-txt small { display: block; font: 500 13.5px/1.6 Inter, sans-serif; color: #667085; text-wrap: pretty; }
@media (max-width: 1000px) {
  .nw-jtp-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nw-jtp-item::after { display: none; }
}
@media (max-width: 620px) {
  .nw-jtp { padding: 28px 0 0; }
  .nw-wrap .nw-jtp { padding: 4px 0 24px; }
  .nw-jtp-list { grid-template-columns: 1fr; gap: 10px; }
  .nw-jtp-item { flex-direction: row; align-items: flex-start; gap: 14px; padding: 16px 18px; }
}

/* подсказки к формам заявки (бриф CTA-2) */
.nw-formnote { margin: 8px 0 0; font: 500 12.5px/1.5 Inter, sans-serif; color: #667085; }

/* /ke-stazeni/: размер и дата у файла (бриф T-32) */
.nw-dl li { margin: 0 0 8px; }
.nw-dl-meta { margin-left: 6px; font: 500 12px Inter, sans-serif; color: #98A2B3; white-space: nowrap; }

/* образец формы odstoupení и дата документа (юридические страницы) */
.nw-formsample { border: 1px dashed #D0D5DD; border-radius: 10px; padding: 16px 18px; background: #FCFCFD; }
.nw-formsample p { margin: 0 0 8px; }
.nw-muted { color: #667085; font-size: 13px; }
