/* Демо-шаблон «Камелия»: собирается tools/primery/convert.js cvety — руками не править. */
@font-face{font-family:"Old Standard TT";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Old Standard TT";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-latin-400-normal.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:"Old Standard TT";font-style:normal;font-weight:700;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Old Standard TT";font-style:normal;font-weight:700;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-latin-700-normal.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:"Old Standard TT";font-style:italic;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-cyrillic-400-italic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Old Standard TT";font-style:italic;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/old-standard-tt-latin-400-italic.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:"Mulish";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/mulish-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Mulish";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/mulish-latin-400-normal.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:"Mulish";font-style:normal;font-weight:500;font-display:swap;src:url(/primery/cvety/fonts/mulish-cyrillic-500-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Mulish";font-style:normal;font-weight:500;font-display:swap;src:url(/primery/cvety/fonts/mulish-latin-500-normal.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:"Mulish";font-style:normal;font-weight:600;font-display:swap;src:url(/primery/cvety/fonts/mulish-cyrillic-600-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Mulish";font-style:normal;font-weight:600;font-display:swap;src:url(/primery/cvety/fonts/mulish-latin-600-normal.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:"Mulish";font-style:normal;font-weight:700;font-display:swap;src:url(/primery/cvety/fonts/mulish-cyrillic-700-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Mulish";font-style:normal;font-weight:700;font-display:swap;src:url(/primery/cvety/fonts/mulish-latin-700-normal.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:"Marck Script";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/marck-script-cyrillic-400-normal.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Marck Script";font-style:normal;font-weight:400;font-display:swap;src:url(/primery/cvety/fonts/marck-script-latin-400-normal.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}
:root{--d-bg:#F4EEE7;--d-ink:#1E2420;--d-line:#DDD3C8;--d-soft:#EBDCD3;--d-shadow:rgba(16,18,20,.4)}
/* Общие правила демо-шаблонов /primery/<шаблон>: плашка ИТКорс, меню для телефона,
   адаптив поверх инлайн-стилей холста (по признакам в атрибуте style).
   Цвета шаблона — переменные --d-*, их и шрифты подставляет tools/primery/convert.js. */
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--d-bg)}
img{display:block;max-width:100%}
#dc-root{overflow-wrap:break-word}

/* ── плашка ИТКорс над демо ── */
/* светлая и полупрозрачная: не затемняет шаблон, сквозь неё виден его вид */
.itk-bar{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:14px;min-height:28px;box-sizing:border-box;padding:3px 16px;background:rgba(255,255,255,.62);-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2);border-bottom:1px solid rgba(20,24,28,.08);color:#1A2230;font:500 12px/1.3 Manrope,system-ui,sans-serif}
.itk-bar a{color:#1A2230;text-decoration:none}
.itk-bar-brand{font-weight:700;letter-spacing:.02em;padding-right:14px;border-right:1px solid rgba(20,24,28,.15)}
.itk-bar-t{color:#2B3341}
.itk-bar-r{margin-left:auto;display:flex;gap:16px;align-items:center}
.itk-bar-kab{font-weight:700;color:#7A5A12!important;background:rgba(255,250,238,.94);border:1px solid rgba(122,90,18,.32);padding:2px 10px;border-radius:999px}
.itk-bar-cta{background:#C9A961;color:#14181C!important;font-weight:700;padding:3px 12px;border-radius:999px}

/* ── планшет ── */
@media (max-width:1100px){
  [style*="max-width: 1320px"]{padding-left:24px!important;padding-right:24px!important}
  header nav:not(.o-mnav-p){display:none!important}
  [style*="repeat(5, minmax"],[style*="repeat(4, minmax"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  [style*="grid-template-columns: 1.55fr 1fr"],[style*="grid-template-columns: 1fr 400px"],[style*="grid-template-columns: 290px 1fr"],[style*="grid-template-columns: 240px 1fr"],[style*="grid-template-columns: 250px 1fr"],
  [style*="grid-template-columns: 1fr 440px"],[style*="grid-template-columns: 420px 1fr"],[style*="grid-template-columns: 1fr 420px"],[style*="grid-template-columns: 1fr 380px"],[style*="grid-template-columns: 1fr 360px"],[style*="grid-template-columns: 360px 1fr"],[style*="grid-template-columns: 1fr 1.25fr"],
  [style*="grid-template-columns: 1.1fr 1fr"],[style*="grid-template-columns: 1.3fr 1fr"],[style*="grid-template-columns: 1.4fr 1fr 1fr 1fr"]{grid-template-columns:1fr!important}
  aside[style*="sticky"],form[style*="sticky"]{position:static!important}
  article[style*="width: 340px"]{position:static!important;width:auto!important;margin:12px}
  [style*="max-height: 734px"]{max-height:360px!important}
}

/* ── телефон ── */
@media (max-width:720px){
  /* плашка ИТКорс на телефоне — одна строка: марка, суть, кнопка */
  .itk-bar{flex-wrap:nowrap;gap:10px;padding:7px 12px}
  .itk-bar-brand{padding-right:10px}
  .itk-bar-t{flex:1 1 auto;min-width:0;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .itk-bar-r{margin-left:0;flex-shrink:0}
  .itk-bar-r a:not(.itk-bar-cta){display:none}
  .itk-bar-cta{padding:6px 12px;font-size:12px}
  [style*="max-width: 1320px"]{padding-left:16px!important;padding-right:16px!important}
  [style*="padding: 110px 40px 0"],[style*="padding: 120px 40px 0"],[style*="padding: 100px 40px 0"]{padding-top:64px!important}
  /* :not со списком — вес одного атрибута, чтобы правила шаблонов [style][style*=…] его перекрывали */
  [style*="grid-template-columns"]:not([style*="repeat(12"],[style*="repeat(7"]){grid-template-columns:1fr!important}
  [style][style*="grid-template-columns: repeat(2, minmax"],[style][style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px"],[style][style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  [role="tablist"][style][style*="repeat(12"]{grid-template-columns:repeat(6,minmax(0,1fr))!important}
  [style][style*="220px repeat(12"]{grid-template-columns:96px repeat(12,minmax(0,1fr))!important;font-size:10px!important;gap:3px!important}
  [style*="grid-row: span 2"]{grid-row:auto!important}
  [style*="grid-template-rows"]{grid-template-rows:none!important}
  [style*="grid-template-rows"] img{height:220px!important}
  h1{font-size:46px!important;line-height:1.02!important}
  h2{font-size:36px!important}
  header{gap:12px!important;padding-top:16px!important}
  header > div:last-child > span, header a[href^="tel"]{display:none!important}
  header > div:last-child > a{padding:10px 14px!important;font-size:13px!important}
  /* дополнительная ссылка шапки (кабинет, клуб) — в меню телефона */
  header > div:last-child > a:not(:last-child){display:none!important}
  /* главная: поиск под первым экраном */
  section[style*="height: 820px"]{height:auto!important;padding-bottom:20px}
  section[style*="height: 820px"] > div[style*="padding: 120px"]{padding-top:56px!important}
  form[style*="position: absolute"]{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;width:auto!important;margin:28px 16px 0}
  form[style*="position: absolute"] label{border-right:0!important;border-bottom:1px solid var(--d-line)}
  form[style*="position: absolute"] button{min-height:56px}
  /* внутренние первые экраны */
  section[style*="height: 720px"],section[style*="height: 680px"]{height:620px!important}
  [style*="font-size: 92px"],[style*="font-size: 84px"],[style*="font-size: 76px"]{font-size:46px!important}
  [style*="font-size: 64px"],[style*="font-size: 60px"],[style*="font-size: 56px"],[style*="font-size: 52px"],[style*="font-size: 50px"]{font-size:36px!important}
  [style*="padding: 64px"],[style*="padding: 60px"],[style*="padding: 56px"],[style*="padding: 52px"],[style*="padding: 48px"],[style*="padding: 64px 60px"]{padding:28px 20px!important}
  [style*="justify-content: space-between"][style*="align-items: flex-end"]{flex-direction:column;align-items:flex-start!important;gap:16px}
  [style*="display: flex; gap: 6px; padding: 6px"]{flex-wrap:wrap}
  [style*="min-height: 560px"]{min-height:280px!important}
  [style*="height: 520px"],[style*="height: 480px"]{height:300px!important}
  [style*="padding: 0 24px 24px 128px"]{padding:0 20px 20px!important}
  [style*="grid-template-columns: 92px 1fr 28px"]{grid-template-columns:56px 1fr 24px!important}
  footer > div:last-child{flex-direction:column;gap:8px}
}
@media (max-width:720px){
  [role="tablist"]{flex-wrap:wrap}
  /* элементы сеток не распирают колонку длинным словом */
  [style*="grid-template-columns"] > *{min-width:0}
  /* фото-первый экран: высота по содержимому, текст не налезает на шапку */
  section[style*="position: relative; height: 700px"],section[style*="position: relative; height: 640px"],section[style*="position: relative; height: 620px"],section[style*="position: relative; height: 600px"]{height:auto!important;min-height:520px}
  section[style*="position: relative; height"] > div[style*="bottom: 64px"]{position:relative!important;bottom:auto!important;padding:96px 0 44px}
  [style*="font-size: 44px"]{font-size:32px!important}
  article[style*="width: 340px"]{margin:12px 0 0!important}
}

/* меню для планшета и телефона (на компьютере скрыто правилом страницы) */
.o-mnav summary{list-style:none}
.o-mnav summary::-webkit-details-marker{display:none}
.o-mnav-p{position:absolute;right:16px;top:calc(100% + 10px);z-index:20;min-width:230px;display:flex;flex-direction:column;padding:10px;border-radius:6px;background:#FFFFFF;box-shadow:0 24px 50px -24px var(--d-shadow);border:1px solid var(--d-line)}
.o-mnav-p a{color:var(--d-ink)!important;padding:12px 14px;border-radius:4px;font-weight:600;font-size:15px}
.o-mnav-p a:hover{background:var(--d-soft)}
@media (max-width:1100px){.o-mnav{display:block!important}}
@media (max-width:720px){
  [style*="display: flex; gap: 10px; margin-top: 26px"]{flex-wrap:wrap}
  [style*="display: flex; gap: 10px; margin-top: 26px"] > span{white-space:nowrap}
}


/* ── правила раскладок строительного шаблона ── */
@media (max-width:1100px){
  [style*="grid-template-columns: 1fr 460px"],[style*="grid-template-columns: 1.15fr 1fr"],[style*="grid-template-columns: 1fr 1.2fr"],
  [style*="grid-template-columns: 1.4fr 1fr"],[style*="grid-template-columns: 250px 1fr"],[style*="grid-template-columns: 90px 1fr 420px"],
  [style*="grid-template-columns: 1fr 1fr 1fr;"],[style*="grid-template-columns: 1.3fr 1fr"]{grid-template-columns:1fr!important}
  [role="tablist"][style][style*="repeat(8"]{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (max-width:720px){
  section[style*="height: 860px"]{height:auto!important;padding-bottom:0}
  section[style*="height: 860px"] > div[style*="padding: 130px"]{padding-top:56px!important;padding-bottom:28px}
  section[style*="height: 860px"] > div[style*="bottom: 0"]{position:relative!important}
  section[style*="height: 700px"],section[style*="height: 660px"],section[style*="height: 640px"]{height:640px!important}
  [style*="font-size: 76px"]{font-size:44px!important}
  [style*="font-size: 54px"],[style*="font-size: 48px"],[style*="font-size: 46px"]{font-size:34px!important}
  [style][style*="1.6fr repeat(4"],[style][style*="1.3fr 1fr 1fr 1fr"]{grid-template-columns:1.3fr repeat(4,minmax(0,1fr))!important;font-size:11.5px}
  [style][style*="1.3fr 1fr 1fr 1fr"]{grid-template-columns:1.2fr repeat(3,minmax(0,1fr))!important}
  [style][style*="1.6fr repeat(4"] > div,[style][style*="1.3fr 1fr 1fr 1fr"] > div{padding:10px 6px!important}
  [role="tablist"][style][style*="repeat(8"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  [style][style*="repeat(8, minmax(0, 1fr)); gap: 6px"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  [style*="min-height: 900px"]{min-height:0!important}
  [style*="height: 460px"],[style*="height: 520px"]{height:280px!important}
  [style*="padding: 32px 36px"]{padding:20px 16px!important}
  [style*="grid-template-columns: 1fr 160px 200px"]{grid-template-columns:1fr!important;gap:4px}
  [style*="aspect-ratio: 24 / 14"] button{font-size:10px!important;padding:3px!important}
}
@media (max-width:720px){
  header > div:last-child > a[href$="/kabinet"]{display:none!important}
  header > div:last-child{gap:10px!important}
  header > a span span:last-child{display:none}
}

/* ярлык «Кабинет владельца» у правого края — главный вход в кабинет владельца на компьютере (tools/primery/itk-kab.css:
   подключают convert.js, proektnaya/main.py; в demo.css «Острова» и «Северного дома» — копия). Шрифт — Playfair сайта ИТКорс */
@font-face{font-family:"ITK-PF";font-weight:500;font-display:swap;src:url(/fonts/playfairdisplay-cyrillic-600.woff2) format("woff2")}
.itk-kab{position:fixed;right:0;top:50%;z-index:60;display:flex;flex-direction:column;align-items:center;gap:14px;padding:20px 14px 24px 16px;border-radius:20px 0 0 20px;background:radial-gradient(120% 60% at 0% 0%,rgba(230,205,149,.18),transparent 60%),linear-gradient(180deg,#1C2638 0%,#0A101B 100%);color:#F4EFE6;text-decoration:none;white-space:nowrap;transform:translateY(-50%);overflow:hidden;box-shadow:0 30px 60px -20px rgba(4,8,16,.75),0 0 0 1px rgba(230,205,149,.55),inset 0 1px 0 rgba(255,255,255,.1);animation:itk-kab-glow 4.5s ease-in-out infinite;transition:padding .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.itk-kab::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(180deg,#F3E2B5,#C9A866 45%,rgba(201,168,102,.15));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.itk-kab::after{content:'';position:absolute;left:-20%;right:-20%;height:46%;top:-60%;background:linear-gradient(180deg,transparent,rgba(243,226,181,.22),transparent);transform:skewY(-18deg);animation:itk-kab-sheen 6s ease-in-out infinite;pointer-events:none}
.itk-kab-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#F3E2B5,#C9A866);color:#141B27;box-shadow:0 6px 16px -6px rgba(201,168,102,.9)}
.itk-kab-t{display:flex;align-items:center;gap:10px;writing-mode:vertical-rl;transform:rotate(180deg)}
.itk-kab-t b{font:500 19px/1 "ITK-PF",Georgia,serif;letter-spacing:.01em;background:linear-gradient(180deg,#F6E8C3,#D2B272);-webkit-background-clip:text;background-clip:text;color:transparent}
.itk-kab-t i{width:1px;height:20px;background:linear-gradient(180deg,transparent,rgba(230,205,149,.7),transparent)}
.itk-kab-t span{font:600 10.5px/1 system-ui,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:rgba(244,239,230,.72)}
.itk-kab:hover{padding-left:22px;box-shadow:0 34px 70px -18px rgba(4,8,16,.85),0 0 0 1px #F3E2B5,0 0 34px -6px rgba(230,205,149,.55),inset 0 1px 0 rgba(255,255,255,.12)}
.itk-kab:focus-visible{outline:2px solid #F3E2B5;outline-offset:3px}
@keyframes itk-kab-glow{0%,100%{filter:drop-shadow(0 0 0 rgba(230,205,149,0))}50%{filter:drop-shadow(0 0 14px rgba(230,205,149,.35))}}
@keyframes itk-kab-sheen{0%,62%{top:-60%}100%{top:120%}}
@media (prefers-reduced-motion:reduce){.itk-kab,.itk-kab::after{animation:none}}
@media (max-width:720px){.itk-kab{display:none}}


/* ── мобильный слой (m-lite.js): ленты, шторки, нижняя панель ── */
@media (min-width:721px){.m-only{display:none!important}}
.m-scrim{display:none}
@media (max-width:720px){
  .m-hide{display:none!important}
  /* лента карточек с перелистыванием: следующая карточка выглядывает справа */
  [data-m="swipe"]{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;grid-template-columns:none!important;grid-template-rows:none!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:12px!important;margin-left:-16px!important;margin-right:-16px!important;padding:0 16px 8px!important;scroll-padding:0 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  [data-m="swipe"]::-webkit-scrollbar{display:none}
  [data-m="swipe"] > *{flex:0 0 var(--m-w,80%)!important;max-width:none!important;scroll-snap-align:start;min-width:0;grid-row:auto!important;border-left:0!important}
  /* ряд кнопок в одну строку */
  [data-m="chips"]{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;grid-template-columns:none!important;overflow-x:auto!important;scrollbar-width:none;margin-left:-16px!important;margin-right:-16px!important;padding:2px 16px 4px!important}
  [data-m="chips"]::-webkit-scrollbar{display:none}
  [data-m="chips"] > *{flex:0 0 auto!important;white-space:nowrap}
  /* сетки в 2 и 3 колонки на телефоне */
  [style][data-m="g2"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  [style][data-m="g3"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  /* шторка снизу: скрыта, пока не открыта кнопкой data-m-open */
  [data-m-sheet]:not(.m-on){display:none!important}
  [data-m-sheet].m-on{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;z-index:91!important;width:auto!important;max-height:88vh;overflow-y:auto;overscroll-behavior:contain;margin:0!important;border-radius:22px 22px 0 0!important;padding:8px 18px calc(18px + env(safe-area-inset-bottom))!important;background:var(--m-sheet-bg,#FFFFFF)!important;box-shadow:0 -24px 60px -20px rgba(0,0,0,.35)!important;box-sizing:border-box}
  [data-m-sheet].m-anim{animation:m-up .28s cubic-bezier(.2,.8,.2,1)}
  @keyframes m-up{from{transform:translateY(40px);opacity:.4}to{transform:none;opacity:1}}
  .m-sheet-h{position:sticky;top:-8px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 -18px 12px;padding:14px 18px 12px;background:inherit;border-bottom:1px solid var(--d-line)}
  .m-sheet-h::before{content:"";position:absolute;left:50%;top:5px;width:40px;height:4px;margin-left:-20px;border-radius:4px;background:rgba(0,0,0,.18)}
  .m-x{width:36px;height:36px;border-radius:50%;border:1px solid var(--d-line);background:transparent;color:inherit;font-size:20px;line-height:1;cursor:pointer}
  .m-scrim{position:fixed;inset:0;z-index:90;background:rgba(18,20,22,.45);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
  html.m-lock .m-scrim{display:block}
  html.m-lock,html.m-lock body{overflow:hidden}
  /* панель «цена + действие» внизу экрана */
  [data-m="bar"]{position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;z-index:70!important;margin:0!important;border-radius:20px 20px 0 0!important;padding-bottom:calc(14px + env(safe-area-inset-bottom))!important;box-shadow:0 -16px 40px -18px rgba(0,0,0,.35)!important}
  body:has([data-m="bar"]) #dc-root{padding-bottom:var(--m-bar-h,120px)}
}

/* «Камелия»: шапка магазина держит меню телефона */
header{position:relative}
.o-mnav{display:none}
/* пульт мастерской: боковое меню — лентой сверху на планшете и телефоне */
@media (max-width:1100px){
  [style][style*="grid-template-columns: 230px 1fr"]{grid-template-columns:1fr!important}
  nav[aria-label="Пульт"]{min-height:0!important;flex-direction:row!important;flex-wrap:wrap;align-items:center;gap:6px!important;padding:14px 16px!important}
  nav[aria-label="Пульт"] > *:first-child{margin-right:10px}
  nav[aria-label="Пульт"] [style*="margin-top: auto"]{display:none!important}
  [style][style*="repeat(5, minmax(0, 1fr)); gap: 10px; align-items: start"]{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:720px){
  header{padding-left:16px!important;padding-right:16px!important;gap:10px!important}
  header a[href$="/kabinet"]:not(.o-mnav-p a){display:none!important}
  header > a[href="#zapros"]{padding:9px 14px!important;font-size:12.5px!important}
  [style*="min-height: 520px"]{min-height:0!important}
  [style][style*="repeat(5, minmax(0, 1fr)); gap: 10px; align-items: start"]{grid-template-columns:1fr!important}
  /* кабинет: подборка к дате — три карточки в ряд, заголовок во всю ширину */
  [style][style*="grid-template-columns: 1fr 1fr 1fr; gap: 14px; align-items: end"]{grid-template-columns:repeat(3,minmax(0,1fr))!important;padding:22px 18px!important}
  [style*="grid-template-columns: 1fr 1fr 1fr; gap: 14px; align-items: end"] .ph{height:110px!important}
  [style*="grid-template-columns: 1fr 1fr 1fr; gap: 14px; align-items: end"] > a{font-size:13px}
  /* склад: пики спроса — по одному в ряд */
  [style][style*="margin-top: 14px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr))"]{grid-template-columns:1fr!important}
}
@media (max-width:720px){
  /* оформление: промокод переносится, поле не распирает строку */
  [style*="margin-top: 18px; display: flex; gap: 8px; align-items: center"]{flex-wrap:wrap}
  #promo{min-width:0;flex:1 1 140px}
}
/* планшет: двухколоночные раскладки страниц — в одну колонку */
@media (max-width:1100px){
  [style][style*="grid-template-columns: 400px 1fr;"],[style][style$="grid-template-columns: 400px 1fr"],[style][style*="grid-template-columns: 380px 1fr;"],[style][style$="grid-template-columns: 380px 1fr"],[style][style*="grid-template-columns: 270px 1fr;"],[style][style$="grid-template-columns: 270px 1fr"],[style][style*="grid-template-columns: 240px 1fr;"],[style][style$="grid-template-columns: 240px 1fr"],[style][style*="grid-template-columns: 220px 1fr;"],[style][style$="grid-template-columns: 220px 1fr"],[style][style*="grid-template-columns: 200px 1fr;"],[style][style$="grid-template-columns: 200px 1fr"],[style][style*="grid-template-columns: 1fr 520px;"],[style][style$="grid-template-columns: 1fr 520px"],[style][style*="grid-template-columns: 1fr 230px;"],[style][style$="grid-template-columns: 1fr 230px"],[style][style*="grid-template-columns: 1fr 1.2fr;"],[style][style$="grid-template-columns: 1fr 1.2fr"],[style][style*="grid-template-columns: 1fr 1.1fr;"],[style][style$="grid-template-columns: 1fr 1.1fr"],[style][style*="grid-template-columns: 1fr 1.15fr;"],[style][style$="grid-template-columns: 1fr 1.15fr"],[style][style*="grid-template-columns: 1.6fr 1fr;"],[style][style$="grid-template-columns: 1.6fr 1fr"],[style][style*="grid-template-columns: 1.4fr 1fr;"],[style][style$="grid-template-columns: 1.4fr 1fr"],[style][style*="grid-template-columns: 1.3fr 1fr;"],[style][style$="grid-template-columns: 1.3fr 1fr"],[style][style*="grid-template-columns: 1.2fr 1fr;"],[style][style$="grid-template-columns: 1.2fr 1fr"],[style][style*="grid-template-columns: 1.1fr 1fr;"],[style][style$="grid-template-columns: 1.1fr 1fr"],[style][style*="grid-template-columns: 1.08fr 1fr;"],[style][style$="grid-template-columns: 1.08fr 1fr"]{grid-template-columns:1fr!important}
}
/* планшет и телефон: в одну колонку «липкие» панели (галерея букета, подсказки ИИ‑флориста) не держим — иначе наезжают на следующие блоки */
@media (max-width:1100px){
  [style*="position: sticky"]{position:static!important}
}
/* ── телефон: магазин как приложение ── */
@media (max-width:720px){
  :root{--m-bar-h:110px}
  body{font-size:15px}
  /* нижнее меню */
  .m-tabs{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid!important;grid-template-columns:repeat(5,1fr);padding:6px 4px calc(6px + env(safe-area-inset-bottom));background:rgba(244,238,231,.94);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid #DDD3C8}
  .m-tabs a{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 0;font:600 10.5px/1.2 'Mulish',sans-serif;color:#6B6A64!important}
  .m-tabs a.on{color:#8E3B33!important}
  .m-badge{position:absolute;top:0;left:calc(50% + 6px);min-width:16px;height:16px;border-radius:8px;background:#8E3B33;color:#FFFFFF;font-size:10px;line-height:16px;text-align:center}
  body:has(.m-tabs):not(:has([data-m="bar"])) #dc-root{padding-bottom:76px}
  body:has([data-m="bar"]) .m-tabs{display:none!important}
  /* шапка: логотип, корзина, меню; телефон — снизу во вкладках */
  header > div:last-child > a[href$="/oformlenie"]{padding:8px 14px!important}
  [style*="padding: 10px 40px; display: flex; justify-content: space-between"]{padding:8px 16px!important;font-size:12px}
  [style*="padding: 10px 40px; display: flex; justify-content: space-between"] > span:last-child{display:none}
  /* главная */
  section[style*="grid-template-columns: 1fr 1.15fr"] .ph[style*="height: 720px"]{height:400px!important;border-radius:200px 200px 22px 22px!important}
  section[style*="grid-template-columns: 1fr 1.15fr"] [style*="left: -36px"]{left:12px!important;bottom:16px!important}
  section[style*="grid-template-columns: 1fr 1.15fr"] > div:first-child [style*="padding: 24px; box-shadow"]{padding:18px!important}
  [style*="grid-template-columns: 1.1fr 1fr 1fr 1fr; overflow: hidden"]{grid-template-columns:1fr 1fr!important}
  [style*="grid-template-columns: 1.1fr 1fr 1fr 1fr; overflow: hidden"] > div{padding:18px!important;border-left:0!important;border-top:1px solid rgba(237,228,218,.12)}
  .m-sw .ph[style*="height: 380px"]{height:330px!important}
  .m-occ > a{height:300px!important}
  [style*="padding: 110px 40px 0"],[style*="padding: 110px 40px 50px"]{padding-top:56px!important}
  [style*="padding: 70px 64px"],[style*="padding: 60px 56px"]{padding:28px 20px!important}
  .ph[style*="min-height: 560px"],.ph[style*="min-height: 460px"]{min-height:260px!important}
  /* каталог в две колонки */
  [style].m-grid2{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 10px!important;margin-top:16px!important}
  .m-grid2 .ph[style*="height: 360px"]{height:210px!important;border-radius:16px!important}
  .m-grid2 article [style*="font-size: 23px"]{font-size:17px!important;line-height:1.15}
  .m-grid2 article > div:nth-child(2){flex-direction:column;align-items:flex-start!important;gap:2px!important}
  .m-grid2 article > div:nth-child(3){font-size:12.5px!important}
  .m-grid2 article > div:last-child{flex-direction:column;align-items:stretch!important;gap:8px}
  .m-grid2 article > div:last-child > span{font-size:11.5px!important}
  .m-grid2 article > div:last-child button{width:100%}
  section[style*="grid-template-columns: 270px 1fr"]{padding-top:18px!important;gap:0!important}
  /* карточка букета */
  .m-gal{margin-top:4px!important}
  section > div[style*="grid-template-columns: 1.08fr 1fr"]{margin-top:12px!important;gap:22px!important}
  [data-m="bar"][style*="background: #1E2420"]{padding:14px 18px!important}
  [data-m="bar"] [style*="font-size: 34px"]{font-size:26px!important}
  [data-m="bar"] > div:first-child{min-width:0;flex:1 1 auto}
  [data-m="bar"] [style*="font-size: 13px"]{font-size:11.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  [data-m="bar"] a,[data-m="bar"] button{flex-shrink:0;padding:14px 18px!important;white-space:nowrap;font-size:14.5px!important}
  [data-m-sheet="otkrytka"] textarea{min-height:120px}
  [data-m-sheet="otkrytka"] > div:last-of-type{transform:none!important}
  /* светлая панель внизу (конструктор, оформление) */
  .m-bar-l{background:#FFFFFF!important;padding:12px 18px!important;border-top:1px solid #DDD3C8!important}
  /* конструктор: эскиз сверху, цветы списком */
  .m-first{order:-1}
  section > div[style*="grid-template-columns: 1fr 520px"]{display:flex!important;flex-direction:column;align-items:stretch!important;gap:16px!important}
  .m-eskiz [style*="height: 380px"]{height:250px!important}
  [style].m-flowers{grid-template-columns:1fr!important;gap:8px!important}
  [style].m-flowers > div[style]{padding:10px 12px!important;grid-template-columns:44px 1fr auto!important;gap:10px!important;align-items:center!important}
  .m-flowers > div > span:first-child{width:44px!important;height:44px!important}
  /* оформление: товар в корзине — строкой со снимком слева */
  [style][style*="grid-template-columns: 96px 1fr auto auto"]{grid-template-columns:76px 1fr!important;gap:6px 14px!important;align-items:start!important}
  [style*="grid-template-columns: 96px 1fr auto auto"] > .ph{height:92px!important;grid-row:span 3}
  [style*="grid-template-columns: 96px 1fr auto auto"] > :nth-child(n+3){grid-column:2}
  header > div[style*="color: #6B6A64"]{display:none}
  /* склад: шапка таблицы не нужна — подписи внутри строк */
  [style*="grid-template-columns: 1.4fr 0.8fr 1.6fr 1.5fr; padding: 14px 22px"]{display:none!important}
  /* оформление: шаги лентой */
  .m-steps > button{min-width:132px}
  /* кабинет: разделы — вкладками в строку */
  .m-tabs-in{padding:6px!important;border-radius:999px!important}
  .m-tabs-in > button{width:auto!important;border-radius:999px!important;padding:9px 14px!important}
  .m-sw [style*="grid-template-columns: 70px 1fr auto auto"]{grid-template-columns:64px 1fr!important;height:100%;box-sizing:border-box}
  .m-sw [style*="grid-template-columns: 70px 1fr auto auto"] > :nth-child(n+3){grid-column:1 / -1}
  /* подписка: варианты — сегментами */
  .m-seg > button{padding:12px 8px!important;font-size:13px!important}
  .m-seg > button *{font-size:inherit}
  [data-m="swipe"] > button[style*="height"]{height:auto}
  /* компаниям: список сотрудников карточками */
  [style][style*="grid-template-columns: 1.4fr 1fr 1fr 1.2fr 1fr"]{grid-template-columns:1fr 1fr!important;gap:2px 12px;padding:12px 16px!important}
  [style*="grid-template-columns: 1.4fr 1fr 1fr 1.2fr 1fr"][style*="background: #FBF8F3"]{display:none!important}
  [data-m-sheet="zapros"].m-on{--m-sheet-bg:#F4EEE7}
  [style*="min-height: 520px"][style*="display: flex; align-items: flex-end"]{height:auto!important;min-height:480px!important;border-radius:24px!important}
  [style*="linear-gradient(90deg, rgba(20,24,21,.82)"]{background:linear-gradient(0deg, rgba(20,24,21,.88) 35%, rgba(20,24,21,.2) 100%)!important}
  header > a[href="#zapros"]{white-space:nowrap;padding:9px 14px!important;font-size:12.5px!important}
  /* подписка: цифры выгоды компактнее */
  [style*="display: flex; gap: 28px"] [style*="font-size: 36px"]{font-size:26px!important}
  [style*="display: flex; gap: 28px"]{gap:18px!important}
  /* пульт: разделы лентой, колонки заказов — перелистыванием */
  nav[aria-label="Пульт"][data-m="chips"]{flex-wrap:nowrap!important;overflow-x:auto!important;margin:0!important;padding:12px 14px!important;gap:6px!important}
  nav[aria-label="Пульт"] > *{flex:0 0 auto}
}
/* ── телефон: единая система (02.10.2026) ──
   один экран — одна задача; сверху только плашка и короткая шапка; единый ритм секций;
   второстепенное убрано или свёрнуто; главное действие — внизу */
@media (max-width:720px){
  /* верх: без полосы акций, шапка 56px — логотип и меню; корзина — во вкладках внизу */
  [style*="background: #1E2420; color: #EDE4DA; font-size: 13px; letter-spacing: .04em"]{display:none!important}
  header{padding:10px 16px!important;min-height:56px;box-sizing:border-box}
  header > a:first-child > span:first-child{font-size:25px!important}
  header > a:first-child > span + span{display:none!important}
  header summary{width:40px!important;height:40px!important}
  body:has(.m-tabs):not(:has([data-m="bar"])) header a[href$="/oformlenie"]:not(.o-mnav-p a){display:none!important}
  /* типографика и ритм */
  #dc-root h1{font-size:36px!important;line-height:1.05!important}
  #dc-root h2,[style*="font-size: 52px"],[style*="font-size: 50px"],[style*="font-size: 46px"]{font-size:29px!important;line-height:1.12!important}
  [style*="letter-spacing: .3em; text-transform: uppercase"]{font-size:11px!important;letter-spacing:.22em!important}
  [style*="padding: 110px 40px 0"],[style*="padding: 70px 40px 0"],[style*="padding: 60px 40px 0"]{padding-top:44px!important}
  [style*="margin-top: 34px"],[style*="margin-top: 40px"]{margin-top:18px!important}
  [style*="justify-content: space-between; align-items: flex-end"]{flex-direction:row!important;align-items:flex-end!important;gap:10px!important}
  /* подвал компактный: две колонки ссылок */
  footer{padding-top:44px!important;padding-bottom:28px!important}
  footer > div{grid-template-columns:1fr 1fr!important;gap:20px 14px!important;padding-top:24px!important;font-size:13.5px}
  footer > div > div:first-child{grid-column:1 / -1}
  footer > div > div{gap:7px!important;font-size:13.5px!important}
  /* главная: фото первым, крупный заголовок, подбор сразу под ним */
  section[style*="grid-template-columns: 1fr 1.15fr"]{padding-top:6px!important;gap:20px!important}
  section[style*="grid-template-columns: 1fr 1.15fr"] > div:last-child{order:-1}
  section[style*="grid-template-columns: 1fr 1.15fr"] .ph[style*="height: 720px"]{height:300px!important;border-radius:150px 150px 22px 22px!important}
  section[style*="grid-template-columns: 1fr 1.15fr"] p{font-size:15px!important;margin-top:12px!important}
  section[style*="grid-template-columns: 1fr 1.15fr"] [style*="margin-top: 30px; background: #FFFFFF"]{margin-top:18px!important}
  /* «Сегодня в мастерской» — на телефоне лишний экран, убираем */
  section:has(> [style*="grid-template-columns: 1.1fr 1fr 1fr 1fr; overflow: hidden"]){display:none!important}
  /* витрина недели: карточки поменьше */
  .m-sw .ph[style*="height: 380px"]{height:250px!important;border-radius:18px!important}
  .m-sw article [style*="font-size: 24px"],.m-sw article [style*="font-size: 23px"]{font-size:18px!important}
  /* поводы: аккуратные плитки, фото во всю плитку */
  .m-occ > a{height:230px!important;border-radius:18px!important}
  .m-occ img{height:100%!important}
  .m-occ > a > span:last-child{left:14px!important;right:14px!important;bottom:14px!important}
  .m-occ [style*="font-size: 24px"]{font-size:19px!important}
  .m-occ [style*="font-size: 10.5px"]{display:none!important}
  /* конструктор и подписка на главной — компактные карточки */
  [style*="padding: 70px 64px"] > div[style*="flex-wrap: wrap"]{display:none!important}
  .ph[style*="min-height: 560px"],.ph[style*="min-height: 460px"]{min-height:200px!important}
  .ph[style*="height: 480px"]{height:220px!important}
  /* «забота» — сетка 2×2 коротких пунктов */
  .m-care{gap:0!important;border-top:0!important}
  .m-care > div{padding:16px 12px 16px 0!important;border-left:0!important;border-top:1px solid #DDD3C8}
  .m-care > div:nth-child(even){padding-left:12px!important;border-left:1px solid #DDD3C8!important}
  .m-care [style*="font-size: 40px"]{font-size:24px!important}
  .m-care [style*="font-size: 18px"]{font-size:15px!important;margin-top:4px!important}
  .m-care p{font-size:13px!important}
  /* вопросы — заголовок над списком */
  section > div[style*="grid-template-columns: 380px 1fr"]{gap:14px!important}
  details summary{font-size:17px!important}
}
@media (max-width:720px){
  /* подбор: рекомендация строкой — снимок, название, кнопка с ценой во всю ширину */
  [style][style*="grid-template-columns: 84px 1fr auto"]{grid-template-columns:64px 1fr!important;gap:6px 14px!important;align-items:center!important}
  [style*="grid-template-columns: 84px 1fr auto"] > .ph{width:64px!important;height:76px!important}
  [style*="grid-template-columns: 84px 1fr auto"] > a{grid-column:1 / -1;text-align:center;margin-top:6px}
  .m-occ > a > span:last-child > span:last-child{display:none!important}
  /* мастерская: три цифры в строку */
  [style][style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #DDD3C8"]{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  [style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #DDD3C8"] [style*="font-size: 32px"]{font-size:24px!important}
  [style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #DDD3C8"] > div{padding-left:12px!important}
  [style*="grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0; border-top: 1px solid #DDD3C8"] > div:first-child{padding-left:0!important}
}
@media (max-width:720px){
  /* подписка: фото первым и ниже, варианты — аккуратными сегментами */
  section[style*="grid-template-columns: 1fr 1.1fr"]{gap:18px!important;padding-top:6px!important}
  section[style*="grid-template-columns: 1fr 1.1fr"] > .ph{order:-1;height:230px!important;border-radius:22px!important}
  section[style*="grid-template-columns: 1fr 1.1fr"] p{font-size:15px!important;margin-top:12px!important}
  .m-seg{gap:6px!important}
  .m-seg > button{padding:10px 6px!important;text-align:center!important;border-radius:14px!important}
  .m-seg > button > b{font-size:13px;line-height:1.2}
  .m-seg > button > span{display:block;font-size:11px!important;line-height:1.25;margin-top:3px}
  /* кабинет: бонусы не переносятся, снимок заказа ниже */
  [style*="border-radius: 18px; padding: 14px 20px"] [style*="font-size: 26px"]{white-space:nowrap}
  [style*="grid-template-columns: 200px 1fr"] > .ph,[style*="grid-template-columns: 220px 1fr"] > .ph{height:180px!important}
}
@media (max-width:720px){
  /* кабинет: бонусы и уровень клуба помещаются в строку */
  [style*="border-radius: 18px; padding: 14px 20px; min-width: 220px"]{min-width:0!important;flex:1 1 auto}
}
