/* Styles from the approved redesign/home preview. */

:root{
  --amber:#f5af00; --amber-2:#fc9500; --amber-dark:#d09e00; --amber-text:#8a6100;
  --ink:#000; --ink-2:#262626; --muted:#6e6e6e;
  --surface-2:#f3f3f5; --border:#e0e0e0; --border-soft:#ededed; --dark:#111;
  --ok:#1c6b2e; --tap:46px; --pad:14px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);
  font-family:Poppins,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{max-width:100%}
:focus-visible{outline:2px solid var(--amber-dark);outline-offset:2px;border-radius:3px}
.wrap{max-width:1220px;margin:0 auto;padding:0 var(--pad)}
.scroller{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;
  margin:0 calc(var(--pad)*-1);padding:0 var(--pad) 4px;scrollbar-width:none}
.scroller::-webkit-scrollbar{display:none}
.scroller>*{scroll-snap-align:start;flex:0 0 auto}
.sec{padding:26px 0 0}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;
  margin-bottom:14px}
.sec-head h2{margin:0;font-size:19px;font-weight:700}
.sec-head a{font-size:12.5px;font-weight:500;color:var(--amber-text);white-space:nowrap}
/* зона нажатия для самостоятельных ссылок: визуально ничего не меняет,
   доводит цель до 44px по вертикали (WCAG 2.5.8 требует минимум 24px) */
.sec-head a,.crumbs a,.ftr ul a{position:relative}
.sec-head a:after{content:"";position:absolute;inset:-13px -8px}
.crumbs a:after{content:"";position:absolute;inset:-14px -3px}
.ftr ul a:after{content:"";position:absolute;inset:-8px -6px}
.status{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:var(--ok)}
.status:before{content:"";width:7px;height:7px;border-radius:50%;background:#2f9e44;flex:0 0 auto}
.status.order{color:var(--muted)}
.status.order:before{background:#adb5bd}
.btn{display:inline-grid;place-items:center;min-height:var(--tap);padding:0 18px;
  font:inherit;font-size:12.5px;font-weight:600;text-transform:uppercase;
  border-radius:7px;cursor:pointer;text-align:center}
.btn-solid{background:var(--amber);border:1px solid var(--amber);color:#000}
.btn-out{background:#fff;border:1px solid var(--amber);color:var(--amber-text)}
.btn-quiet{background:#fff;border:1px solid var(--border);color:var(--ink-2)}
/* ── контактная строка ── */
.topbar{background:var(--dark);color:#fff}
.topbar ul{display:flex;margin:0;padding:0;list-style:none}
.topbar li{flex:1;border-left:1px solid rgba(255,255,255,.14)}
.topbar li:first-child{border-left:0}
.topbar li.tb-addr{display:none}
.topbar a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;
  min-height:52px;padding:6px 4px;color:#fff;font-size:10px;text-align:center}
.topbar li.tb-phone{flex:1.5}
.topbar li.tb-phone a{flex-direction:row;gap:7px;font-size:13px;font-weight:600}
.max-badge{display:grid;place-items:center;width:16px;height:16px;border-radius:4px;
  background:linear-gradient(135deg,#8b5cf6,#5b3df5);font-size:9px;font-weight:700;color:#fff}
/* ── шапка ── */
.hdr{position:sticky;top:0;z-index:30;background:var(--amber)}
.hdr-in{display:flex;align-items:center;gap:10px;padding-top:8px;padding-bottom:8px}
.burger{display:grid;place-items:center;width:var(--tap);height:var(--tap);
  background:none;border:0;border-radius:8px;cursor:pointer;margin-left:-8px}
.burger span{display:block;width:21px;height:2px;background:#000;
  box-shadow:0 6px 0 #000,0 -6px 0 #000}
.logo{display:flex;align-items:center;background:#fff;border-radius:7px;padding:7px 11px}
.logo svg{width:126px;height:22px;display:block}
.mainnav{display:none}
.tools{margin-left:auto;display:flex;gap:2px}
.tools a,.tools button{position:relative;display:grid;place-items:center;
  width:var(--tap);height:var(--tap);background:none;border:0;border-radius:8px;cursor:pointer}
.tools b{position:absolute;top:5px;right:4px;min-width:17px;height:17px;padding:0 4px;
  border-radius:9px;background:#000;color:var(--amber);font-size:10px;line-height:17px;
  text-align:center}
/* ── нижняя навигация (только узкие экраны) ── */
.tabbar{position:sticky;bottom:0;z-index:30;display:flex;background:#fff;
  border-top:1px solid var(--border);box-shadow:0 -2px 12px rgba(0,0,0,.06)}
.tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:3px;min-height:58px;font-size:10.5px;color:var(--muted)}
.tabbar a.on{color:var(--ink)}
.tabbar a.on svg{color:var(--amber-dark)}
/* ── подвал ── */
.ftr{margin-top:40px;background:var(--surface-2);border-top:1px solid var(--border);
  padding:26px 0 18px}
.ftr-cols{display:grid;gap:0}
.ftr-brand svg{width:172px;height:29px;margin-bottom:12px}
.ftr .tel{display:block;font-size:21px;font-weight:700}
.ftr .hours{font-size:13px;color:var(--muted);line-height:1.7}
.ftr-cta{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0 18px}
.ftr h3{margin:0;font-size:13px;font-weight:600;letter-spacing:.03em;text-transform:uppercase}
.ftr details{border-top:1px solid var(--border)}
.ftr summary{display:flex;align-items:center;justify-content:space-between;
  min-height:var(--tap);cursor:pointer;list-style:none}
.ftr summary::-webkit-details-marker{display:none}
.ftr summary:after{content:"";width:8px;height:8px;border-right:2px solid var(--muted);
  border-bottom:2px solid var(--muted);transform:rotate(-135deg);margin-right:4px}
.ftr ul{margin:0 0 14px;padding:0;list-style:none;font-size:14px;line-height:2}
.req{font-size:13px;line-height:1.85;color:var(--ink-2);padding-bottom:14px}
.req dl{display:grid;grid-template-columns:auto 1fr;gap:3px 12px;margin:0 0 12px}
.req dt{color:var(--muted)}
.req dd{margin:0;display:flex;align-items:center;gap:8px}
.copy{background:none;border:0;padding:4px;border-radius:4px;cursor:pointer;
  color:var(--muted);line-height:0}
.dl-btn{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 14px;
  background:#fff;border:1px solid var(--border);border-radius:6px;font-size:13px;cursor:pointer}
.ftr-legal{border-top:1px solid var(--border);padding-top:14px;margin-top:8px;
  font-size:11px;line-height:1.7;color:var(--muted)}
.ftr-legal p{margin:0;max-width:78ch}@media (min-width:1000px){.ftr-legal p{max-width:none;white-space:nowrap}}
@media (max-height:480px){.hdr{position:static}}
@media (min-width:640px){:root{--pad:20px}body{font-size:14.5px}.topbar li.tb-addr{display:block}.sec-head h2{font-size:21px}.ftr-cols{grid-template-columns:1fr 1fr;gap:0 34px}.ftr-brand{grid-column:1/-1}}
@media (min-width:1000px){body{font-size:14px}.topbar ul{justify-content:flex-start}.topbar li{flex:0 0 auto}.topbar li.tb-phone{flex:0 0 auto}.topbar a{flex-direction:row;gap:7px;min-height:0;padding:11px 20px;font-size:12.5px}.topbar li.tb-phone a{font-size:12.5px;font-weight:400}.hdr{position:static}.hdr-in{gap:26px;padding:0}.burger{display:none}.logo{align-self:stretch;border-radius:0;padding:14px 26px 14px 0;
    margin-left:calc(-50vw + 50%);padding-left:calc(50vw - 50% + var(--pad))}.logo svg{width:196px;height:33px}.mainnav{display:block}.mainnav ul{display:flex;flex-wrap:wrap;gap:20px;margin:0;padding:0;list-style:none}.mainnav a{display:inline-flex;align-items:center;gap:5px;padding:8px 0;
    font-size:14px;font-weight:600}.caret{width:0;height:0;border:4px solid transparent;border-top-color:#000;margin-top:3px}.tabbar{display:none}.sec{padding:38px 0 0}.sec-head{margin-bottom:18px}.sec-head h2{font-size:23px}.sec-head a:after,.crumbs a:after,.ftr ul a:after{display:none}.ftr{margin-top:56px;padding:38px 0 22px}.ftr-cols{grid-template-columns:1.4fr 1fr 1fr 1.3fr;gap:34px}.ftr-brand{grid-column:auto}.ftr details{border-top:0}.ftr summary{pointer-events:none;min-height:0;margin-bottom:14px}.ftr summary:after{display:none}.ftr ul{margin-bottom:0;font-size:13px;line-height:2}.req{padding-bottom:0;font-size:12.5px}}
.hero{position:relative;background:var(--ink-2);border-bottom:1px solid var(--border-soft);padding:22px 0 24px}
.hero .rd-hero-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:65% center;pointer-events:none}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:rgba(0,0,0,.55);pointer-events:none}
.hero>.wrap{position:relative;z-index:2}
.hero h1{margin:0 0 5px;font-size:23px;font-weight:700;line-height:1.2}
.hero .sub{margin:0 0 16px;font-size:13.5px;color:var(--muted)}
.searchbox{position:relative}
.searchrow{display:flex;flex-direction:column;gap:9px}
.searchrow input{width:100%;height:52px;padding:0 16px;font:inherit;font-size:16px;
  border:1px solid var(--border);border-radius:8px;background:#fff}
.searchrow button{height:50px;font:inherit;font-size:14px;font-weight:600;
  text-transform:uppercase;background:var(--amber);border:1px solid var(--amber);
  border-radius:8px;cursor:pointer}
.sugg{margin-top:12px;background:#fff;border:1px solid var(--border);border-radius:8px;
  overflow:hidden;text-align:left}
.sugg .grp{padding:8px 14px;font-size:10.5px;font-weight:600;letter-spacing:.05em;
  text-transform:uppercase;color:var(--muted);background:var(--surface-2)}
.sugg a{display:grid;grid-template-columns:38px 1fr auto;gap:11px;align-items:center;
  padding:9px 14px;min-height:var(--tap);border-top:1px solid var(--border-soft)}
.sugg .ph{height:34px;border-radius:4px;background:var(--surface-2);display:grid;
  place-items:center}
.sugg .art{display:block;font-size:12px;color:var(--muted)}
.sugg .nm{display:block;font-size:13.5px;line-height:1.3}
/* подсветка совпадения — самый важный фрагмент строки, ему нужен
   максимальный контраст, а не наследование приглушённого цвета */
.sugg mark{background:#ffe9ad;color:var(--ink-2);padding:0 1px;border-radius:2px;
  font-weight:600}
.sugg .pr{text-align:right;font-size:13.5px;font-weight:700;white-space:nowrap}
.sugg .st{display:block;font-size:10.5px;font-weight:400;color:var(--ok)}
.sugg .st.order{color:var(--muted)}
.sugg .all{display:block;grid-template-columns:none;text-align:center;font-size:13px;
  font-weight:500;color:var(--amber-text);background:var(--surface-2)}
.hint{margin:16px 0 0;font-size:12.5px;line-height:1.6;color:var(--muted)}
.hint b{color:var(--ink-2);font-weight:500}
.rd-home .hero h1,.rd-home .hero .sub,.rd-home .hero .hint,.rd-home .hero .hint b,.rd-home .hero .hint a{color:#fff}
.hero .hint a{text-decoration:underline;text-underline-offset:3px}
.usp{padding-top:24px}
.usp .card{width:214px;display:flex;gap:11px;padding:13px;border:1px solid var(--border-soft);
  border-radius:8px}
.usp .ic{flex:0 0 36px;height:36px;display:grid;place-items:center;border-radius:8px;
  background:var(--amber)}
.usp b{display:block;font-size:13px;font-weight:600;line-height:1.25;margin-bottom:2px}
.usp .txt span{display:block;font-size:11.5px;line-height:1.4;color:var(--muted)}
.cats{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.cat{display:flex;flex-direction:column;padding:12px;border:1px solid var(--border-soft);
  border-radius:8px}
.cat b{font-size:13.5px;font-weight:600;line-height:1.25}
.cat .num{font-size:11.5px;color:var(--muted)}
.cat .subs,.cat .more{display:none}
.rd-home .cats{grid-auto-rows:1fr}
.rd-home .cats:has(>.cat:not([hidden]) .cat-children[open]){grid-auto-rows:auto}
.rd-home .cat{min-width:0;align-self:stretch}
.rd-home .cat-title{display:block;overflow-wrap:anywhere}
.rd-home .cat-children{min-width:0;margin-top:auto;padding-top:4px}
.rd-home .cat-children summary{display:flex;align-items:center;justify-content:space-between;
  gap:8px;min-height:44px;padding:4px 0;list-style:none;cursor:pointer;
  font-size:12px;font-weight:500;line-height:1.4;color:var(--amber-text)}
.rd-home .cat-children summary::-webkit-details-marker{display:none}
.rd-home .cat-children summary span{min-width:0;overflow-wrap:anywhere}
.rd-home .cat-children summary .fa{flex:0 0 14px;text-align:center;font-size:16px}
.rd-home .cat-children[open] summary .fa{transform:rotate(180deg)}
.rd-home .cat-children ul{list-style:none;margin:4px 0 0;padding:4px 0 0;
  border-top:1px solid var(--border-soft)}
.rd-home .cat-children li{margin:0;padding:0;min-width:0}
.rd-home .cat-children li+li{border-top:1px solid var(--border-soft)}
.rd-home .cat-children li a{display:flex;align-items:center;min-height:44px;padding:8px 0;
  font-size:12.5px;line-height:1.5;overflow-wrap:anywhere;color:var(--ink-2)}
@media (max-width:639px){
  .rd-home .cat:has(.cat-children[open]){grid-column:1/-1}
}
@media (min-width:640px) and (pointer:fine){
  .rd-home .cat-children summary{min-height:32px}
  .rd-home .cat-children li a{min-height:36px}
}
@media (hover:hover){
  .rd-home .cat-title:hover,.rd-home .cat-children summary:hover,
  .rd-home .cat-children li a:hover{color:var(--amber-text);text-decoration:underline}
}
.cats .all,.rd-home .cats+.all{grid-column:1/-1;display:grid;place-items:center;min-height:var(--tap);
  border:1px dashed var(--border);border-radius:8px;font-size:13px;font-weight:500;
  color:var(--amber-text)}
.rd-home .cats+.all{width:100%;margin-top:12px;background:var(--surface-2);cursor:pointer}
.rd-home .cats+.all:hover{border-color:var(--amber);color:var(--ink-2)}
.rail{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;
  margin:0 calc(var(--pad)*-1);padding:0 var(--pad) 4px;scrollbar-width:none}
.rail::-webkit-scrollbar{display:none}
.rail>*{scroll-snap-align:start;flex:0 0 168px}
.pcard{display:flex;flex-direction:column;height:292px;border:1px solid #f0f0f0;
  border-radius:8px;padding:11px}
.pcard .ph{height:98px;display:grid;place-items:center;background:var(--surface-2);
  border-radius:5px;margin-bottom:9px}
.pcard .art{font-size:11.5px;font-weight:600;margin-bottom:2px}
.pcard h3{margin:0 0 6px;font-size:13px;font-weight:400;line-height:1.35;color:var(--muted);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.pcard .art{overflow-wrap:anywhere}
.pcard .foot{margin-top:auto}
.pcard .pr{display:block;font-size:17px;font-weight:700;margin-bottom:7px}
.pcard .btn{width:100%;min-height:40px;padding:0 8px;font-size:11.5px}
.brands{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.brand{display:grid;place-items:center;height:68px;border:1px solid var(--border-soft);
  border-radius:8px;font-size:14px;font-weight:700;letter-spacing:.03em;color:#3a3a3a}
.posts{display:grid;gap:0}
.post{display:flex;flex-direction:row;gap:12px;align-items:center;padding:11px 0;
  border-top:1px solid var(--border-soft)}
.post:first-child{border-top:0}
.post .ph{flex:0 0 96px;height:70px;background:var(--surface-2);border-radius:6px;
  display:grid;place-items:center}
.post time{font-size:11px;color:var(--muted)}
.post h3{margin:3px 0 0;font-size:14px;font-weight:600;line-height:1.3}
.mapsec{display:grid;border:1px solid var(--border-soft);border-radius:8px;overflow:hidden}
.mapview{position:relative;height:200px;background:#eaece4}
.mapview svg{display:block;width:100%;height:100%}
.mapview .pin{position:absolute;left:46%;top:46%;transform:translate(-50%,-100%);color:#e03131}
.mapinfo{padding:16px}
.mapinfo h3{margin:0 0 4px;font-size:17px;font-weight:700}
.mapinfo .addr{margin:0;font-size:14px;line-height:1.6}
.mapinfo dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:14px 0 0;
  font-size:13px}
.mapinfo dt{color:var(--muted)}
.mapinfo dd{margin:0}
.mapinfo .btns{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:16px}
.seo{margin-top:26px;background:var(--surface-2);padding:24px 0}
.seo-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:24px;align-items:center}
.seo-copy{min-width:0}
.seo h2{margin:0 0 10px;font-size:18px;font-weight:700}
.seo p{margin:0 0 10px;font-size:13.5px;line-height:1.65;color:var(--ink-2);max-width:60ch}
.seo .fade{max-height:96px;overflow:hidden;position:relative}
.seo .fade:after{content:"";position:absolute;inset:auto 0 0;height:48px;
  background:linear-gradient(rgba(243,243,245,0),var(--surface-2))}
.seo .btn{margin-top:10px}
.seo-media{display:flex;align-items:center;justify-content:center;min-width:0}
.seo-media img{display:block;width:100%;max-width:400px;height:auto;max-height:250px;object-fit:contain}
@media (max-width:899px){.seo-layout{grid-template-columns:1fr;gap:18px}.seo-media{order:2}.seo-media img{max-width:360px;max-height:270px}}
@media (min-width:640px){.hero{padding:32px 0 34px}.hero h1{font-size:27px}.searchbox{max-width:760px;margin:0 auto}.hero h1,.hero .sub{text-align:center}.hero .sub{max-width:600px;margin-left:auto;margin-right:auto}.searchrow{flex-direction:row}.searchrow input{border-radius:8px 0 0 8px;border-right:0}.searchrow button{height:52px;padding:0 30px;border-radius:0 8px 8px 0}.sugg{position:absolute;left:0;right:0;top:62px;margin-top:0;z-index:5;
    box-shadow:0 10px 30px rgba(0,0,0,.12)}.hint{text-align:center;max-width:760px;margin:80px auto 0}.cats{grid-template-columns:repeat(3,1fr)}.cat .subs{display:block;margin-top:5px;font-size:12.5px;line-height:1.6;color:var(--muted)}.cat .more{display:inline-block;margin-top:6px;font-size:12px;font-weight:500;
    color:var(--amber-text)}.brands{grid-template-columns:repeat(4,1fr)}.posts{grid-template-columns:repeat(3,1fr);gap:14px}.post{flex-direction:column;align-items:stretch;gap:0;padding:0;border-top:0;
    border:1px solid var(--border-soft);border-radius:8px;overflow:hidden}.post .ph{flex:none;width:100%;height:132px;border-radius:0}.post .body{padding:13px 15px 15px}.mapsec{grid-template-columns:1.5fr 1fr}.mapview{height:auto;min-height:280px}.mapinfo{padding:20px 22px}}
@media (min-width:1000px){.hero{padding:40px 0 44px}.hero h1{font-size:32px}.usp{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:26px 0 0;
    overflow:visible;margin:0}.usp .card{width:auto;border:0;padding:0}.cats{grid-template-columns:repeat(4,1fr);gap:12px}.cat{padding:14px 16px}.cat b{font-size:15px}.rail{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;overflow:visible;
    margin:0;padding:0}.rail>*{flex:none}.pcard{height:318px;padding:12px}.pcard .ph{height:118px}.pcard h3{font-size:13.5px}.pcard .pr{font-size:19px}.brands{grid-template-columns:repeat(6,1fr);gap:12px}.brand{height:92px;font-size:17px}.seo{margin-top:38px;padding:30px 0}.seo h2{font-size:20px}.seo .fade{max-height:104px}}
@media (hover:hover){.sec-head a:hover{color:var(--ink-2)}.btn-solid:hover{background:var(--amber-dark);border-color:var(--amber-dark)}.btn-out:hover{background:var(--amber);color:#000}.btn-quiet:hover{border-color:var(--amber)}.topbar a:hover{background:rgba(255,255,255,.08)}.burger:hover{background:rgba(0,0,0,.08)}.tools a:hover,.tools button:hover{background:rgba(0,0,0,.08)}.tabbar a:hover{color:var(--ink)}.ftr .tel:hover{color:var(--amber-text)}.ftr summary:hover{color:var(--amber-text)}.ftr ul a:hover{color:var(--amber-text)}.copy:hover{color:var(--amber-text);background:#fff}.dl-btn:hover{border-color:var(--amber)}.searchrow button:hover{background:var(--amber-dark);border-color:var(--amber-dark)}.sugg a:hover{background:#fffaf0}.sugg .all:hover{color:var(--ink-2)}.cat:hover{border-color:var(--amber)}.cats .all:hover{border-color:var(--amber);color:var(--ink-2)}.pcard:hover{border-color:var(--border)}.brand:hover{border-color:var(--amber)}}
@media (hover:hover) and (min-width:1000px){.mainnav a:hover{color:#5c3f00}}
@media (hover:hover) and (min-width:640px){.cat .subs a:hover{color:var(--amber-text)}.post:hover{border-color:var(--amber)}}
