/* KidGuide — Услуги 2026 */
.kgs{--p:#6C5CE7;--p2:#FF4D7D;--bg:#F6F7FB;--card:#FFF;--tx:#111827;--mut:#6B7280;--line:#E9ECF3;--r:22px;
  --sh:0 1px 2px rgba(17,24,39,.04),0 8px 24px rgba(17,24,39,.06);--sh2:0 18px 48px rgba(17,24,39,.12);
  max-width:1240px;margin:0 auto;padding:0 20px 72px;color:var(--tx);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;-webkit-font-smoothing:antialiased}
.kgs *,.kgs *::before,.kgs *::after{box-sizing:border-box}
.kgs-page{background:var(--bg)}

/* Герой */
.kgs-hero{position:relative;margin:24px 0 28px;padding:64px 40px 52px;border-radius:32px;overflow:hidden;
  background:linear-gradient(135deg,#F3F0FF 0%,#FFF1F6 45%,#EAF6FF 100%);isolation:isolate}
.kgs-hero__glow{position:absolute;inset:-40% -10% auto;height:520px;z-index:-1;filter:blur(70px);opacity:.55;
  background:radial-gradient(40% 60% at 20% 40%,#A78BFA 0,transparent 70%),
             radial-gradient(35% 55% at 75% 30%,#FF9EC0 0,transparent 70%),
             radial-gradient(40% 60% at 50% 80%,#7DD3FC 0,transparent 70%)}
.kgs-hero__inner{max-width:820px;margin:0 auto;text-align:center}
.kgs-hero__pill{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;font-size:13px;font-weight:600;
  background:rgba(255,255,255,.72);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(12px);color:#4C1D95}
.kgs-hero__title{margin:18px 0 12px;font-size:clamp(30px,4.4vw,52px);line-height:1.08;letter-spacing:-.03em;font-weight:800;
  background:linear-gradient(120deg,#111827 0%,#6C5CE7 55%,#FF4D7D 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.kgs-hero__text{margin:0 auto 28px;max-width:560px;font-size:17px;line-height:1.55;color:#4B5563}

/* Поиск */
.kgs-searchwrap{max-width:720px;margin:0 auto}
.kgs-tabs{display:inline-flex;gap:4px;padding:4px;margin-bottom:12px;border-radius:999px;
  background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(12px)}
.kgs-tab{padding:9px 22px;border:0;border-radius:999px;background:transparent;font:600 14px/1 inherit;color:var(--mut);cursor:pointer;transition:.2s}
.kgs-tab.is-active{background:#fff;color:var(--tx);box-shadow:var(--sh)}
.kgs-search{position:relative;display:flex;align-items:center;gap:8px;padding:8px 8px 8px 50px;border-radius:20px;
  background:#fff;box-shadow:var(--sh2);border:1px solid rgba(255,255,255,.8)}
.kgs-search__icon{position:absolute;left:18px;font-size:18px;opacity:.5}
.kgs-search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font:15px/1.4 inherit;color:var(--tx);padding:12px 0}
.kgs-search input::placeholder{color:#9CA3AF}
.kgs-suggest{position:absolute;top:calc(100% + 10px);left:0;right:0;z-index:40;max-height:420px;overflow:auto;padding:8px;
  border-radius:18px;background:#fff;box-shadow:var(--sh2);border:1px solid var(--line)}
.kgs-sg-group{padding:10px 12px 4px;font:600 11px/1 inherit;letter-spacing:.08em;text-transform:uppercase;color:#9CA3AF}
.kgs-sg{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:transparent;
  text-align:left;cursor:pointer;color:inherit;text-decoration:none;transition:.15s}
.kgs-sg:hover,.kgs-sg.is-hi{background:#F4F3FF}
.kgs-sg__ic{width:34px;height:34px;flex:none;display:grid;place-items:center;border-radius:10px;background:#F3F4F6;font-size:16px}
.kgs-sg__t{font:600 14px/1.3 inherit}
.kgs-sg__s{font:13px/1.3 inherit;color:var(--mut)}
.kgs-sg--all{justify-content:center;font-weight:600;color:var(--p);background:#F4F3FF;margin-top:6px}
.kgs-hints{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:center;margin-top:16px;font-size:13px;color:var(--mut)}
.kgs-hint{padding:6px 14px;border:1px solid rgba(108,92,231,.2);border-radius:999px;background:rgba(255,255,255,.7);
  font:13px/1 inherit;color:#4C1D95;cursor:pointer;transition:.2s}
.kgs-hint:hover{background:#fff;transform:translateY(-1px)}

/* Плитки */
.kgs-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:32px}
.kgs-tile{position:relative;display:flex;align-items:center;gap:12px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;
  background:var(--card);cursor:pointer;text-align:left;transition:.22s cubic-bezier(.4,0,.2,1);overflow:hidden}
.kgs-tile::before{content:"";position:absolute;inset:0;opacity:0;transition:.22s;background:linear-gradient(120deg,var(--tile) 0,transparent 90%)}
.kgs-tile:hover{transform:translateY(-3px);border-color:var(--tile);box-shadow:var(--sh)}
.kgs-tile:hover::before{opacity:.07}
.kgs-tile.is-active{border-color:var(--tile);box-shadow:0 0 0 3px color-mix(in srgb,var(--tile) 18%,transparent)}
.kgs-tile__icon{width:42px;height:42px;flex:none;display:grid;place-items:center;border-radius:13px;font-size:20px;
  background:color-mix(in srgb,var(--tile) 12%,#fff)}
.kgs-tile__name{flex:1;font:600 14px/1.3 inherit;letter-spacing:-.01em}
.kgs-tile__count{font:600 12px/1 inherit;color:var(--mut)}

/* Макет */
.kgs-layout{display:grid;grid-template-columns:284px 1fr;gap:28px;align-items:start}
.kgs-side{position:sticky;top:20px;display:flex;flex-direction:column;gap:12px}
.kgs-side__head{display:flex;align-items:center;justify-content:space-between;padding:0 4px 2px;font-size:16px}
.kgs-reset{border:0;background:none;font:600 13px/1 inherit;color:var(--p);cursor:pointer;padding:4px}
.kgs-reset:hover{text-decoration:underline}
.kgs-panel{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--sh)}
.kgs-panel__title{margin:0 0 12px;font:600 13px/1 inherit;letter-spacing:.04em;text-transform:uppercase;color:#9CA3AF}
.kgs-panel--cross{background:linear-gradient(135deg,#F3F0FF,#FFF1F6);border-color:rgba(108,92,231,.18)}
.kgs-cross__text{margin:0 0 12px;font-size:14px;line-height:1.5;color:#4B5563}
.kgs-catlist{display:flex;flex-direction:column;gap:2px;max-height:340px;overflow:auto;margin:-4px}
.kgs-cat{display:flex;align-items:center;gap:10px;padding:8px 10px;border:0;border-radius:12px;background:transparent;
  cursor:pointer;text-align:left;color:inherit;transition:.15s}
.kgs-cat:hover{background:#F6F7FB}
.kgs-cat.is-active{background:#F4F3FF;color:var(--p)}
.kgs-cat__icon{width:30px;height:30px;flex:none;display:grid;place-items:center;border-radius:9px;font-size:15px;
  background:color-mix(in srgb,var(--c) 13%,#fff)}
.kgs-cat__name{flex:1;font:500 14px/1.3 inherit}
.kgs-cat__count{font:600 12px/1 inherit;color:#9CA3AF}
.kgs-pills{display:flex;flex-wrap:wrap;gap:8px}
.kgs-pill{padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;font:500 13px/1 inherit;
  color:var(--tx);cursor:pointer;transition:.18s}
.kgs-pill:hover{border-color:var(--p);color:var(--p)}
.kgs-pill.is-active{background:var(--p);border-color:var(--p);color:#fff;box-shadow:0 4px 14px rgba(108,92,231,.3)}
.kgs-select{width:100%;padding:11px 14px;border:1px solid var(--line);border-radius:13px;background:#fff;font:14px/1 inherit;color:var(--tx);cursor:pointer}
.kgs-select:focus{outline:0;border-color:var(--p);box-shadow:0 0 0 3px rgba(108,92,231,.12)}
.kgs-select--auto{width:auto;min-width:190px}
.kgs-range{width:100%;accent-color:var(--p)}
.kgs-check{display:flex;align-items:center;gap:10px;font-size:14px;cursor:pointer}
.kgs-check input{width:18px;height:18px;accent-color:var(--p);cursor:pointer}

/* Панель результатов */
.kgs-main{min-width:0}
.kgs-bar{position:sticky;top:20px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;
  margin-bottom:16px;padding:12px 16px;border:1px solid var(--line);border-radius:18px;
  background:rgba(255,255,255,.82);backdrop-filter:blur(14px);box-shadow:var(--sh)}
.kgs-bar__left,.kgs-bar__right{display:flex;align-items:center;gap:12px}
.kgs-found{margin:0;font-size:14px;color:var(--mut)}
.kgs-found strong{color:var(--tx);font-size:16px}
.kgs-viewtoggle{display:flex;gap:2px;padding:3px;border-radius:11px;background:#F3F4F6}
.kgs-view{width:34px;height:32px;border:0;border-radius:9px;background:transparent;font-size:15px;color:var(--mut);cursor:pointer;transition:.18s}
.kgs-view.is-active{background:#fff;color:var(--p);box-shadow:var(--sh)}
.kgs-active{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.kgs-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 8px 7px 14px;border-radius:999px;
  background:#F4F3FF;color:var(--p);font:500 13px/1 inherit}
.kgs-chip button{width:18px;height:18px;border:0;border-radius:50%;background:rgba(108,92,231,.16);color:var(--p);
  font-size:12px;line-height:1;cursor:pointer;display:grid;place-items:center}
.kgs-chip button:hover{background:var(--p);color:#fff}

/* Сетка и карточки */
.kgs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.kgs-grid.is-list{grid-template-columns:1fr}
.kgs-grid.is-loading{opacity:.45;pointer-events:none;transition:opacity .2s}
.kgs-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r);
  background:var(--card);overflow:hidden;box-shadow:var(--sh);transition:.25s cubic-bezier(.4,0,.2,1)}
.kgs-card:hover{transform:translateY(-4px);box-shadow:var(--sh2);border-color:color-mix(in srgb,var(--c) 40%,var(--line))}
.kgs-card__media{position:relative;aspect-ratio:16/10;background:linear-gradient(135deg,color-mix(in srgb,var(--c) 10%,#fff),#F6F7FB);overflow:hidden}
.kgs-card__link{display:block;width:100%;height:100%}
.kgs-card__img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.4,0,.2,1)}
.kgs-card:hover .kgs-card__img{transform:scale(1.06)}
.kgs-card__ph{position:absolute;inset:0;display:grid;place-items:center;font-size:46px;opacity:.5}
.kgs-card__flags{position:absolute;top:12px;left:12px;display:flex;flex-wrap:wrap;gap:6px;max-width:calc(100% - 60px)}
.kgs-flag{padding:5px 10px;border-radius:8px;font:700 11px/1 inherit;letter-spacing:.02em;color:#fff;backdrop-filter:blur(6px)}
.kgs-flag--sale{background:#EF4444}
.kgs-flag--hit{background:#F59E0B}
.kgs-flag--new{background:var(--p)}
.kgs-flag--ok{background:rgba(16,185,129,.92)}
.kgs-fav{position:absolute;top:12px;right:12px;width:36px;height:36px;border:0;border-radius:50%;cursor:pointer;
  background:rgba(255,255,255,.9);backdrop-filter:blur(8px);color:#D1D5DB;font-size:17px;line-height:1;transition:.2s;box-shadow:var(--sh)}
.kgs-fav:hover{transform:scale(1.12);color:var(--p2)}
.kgs-fav.is-active{color:var(--p2)}
.kgs-card__format{position:absolute;bottom:12px;left:12px;padding:5px 11px;border-radius:8px;font:600 11px/1 inherit;
  background:rgba(17,24,39,.72);color:#fff;backdrop-filter:blur(6px)}
.kgs-card__body{display:flex;flex-direction:column;gap:8px;flex:1;padding:18px}
.kgs-card__cat{display:inline-flex;align-items:center;gap:6px;font:600 12px/1 inherit;color:var(--c);text-decoration:none}
.kgs-card__title{margin:0;font:700 17px/1.3 inherit;letter-spacing:-.02em}
.kgs-card__title a{color:inherit;text-decoration:none}
.kgs-card__title a:hover{color:var(--p)}
.kgs-card__provider{margin:0;font-size:13px;color:var(--mut)}
.kgs-card__rating{display:flex;align-items:center;gap:6px;margin:0;font:600 13px/1 inherit}
.kgs-star{color:#F59E0B}
.kgs-card__reviews{font-weight:400;color:var(--mut)}
.kgs-card__place{margin:0;font-size:13px;color:var(--mut)}
.kgs-card__meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0;padding:0;list-style:none;font-size:13px;color:#4B5563}
.kgs-card__perks{display:flex;flex-wrap:wrap;gap:6px}
.kgs-perk{padding:5px 10px;border-radius:8px;background:#F0FDF4;color:#15803D;font:600 11px/1 inherit}
.kgs-card__foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.kgs-price{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:6px}
.kgs-price strong{font:800 19px/1 inherit;letter-spacing:-.02em}
.kgs-price s{font-size:13px;color:#9CA3AF}
.kgs-price span{font-size:12px;color:var(--mut)}
.kgs-card--list{flex-direction:row}
.kgs-card--list .kgs-card__media{width:290px;flex:none;aspect-ratio:auto}

/* Кнопки и состояния */
.kgs-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border:1px solid transparent;
  border-radius:13px;font:600 14px/1 inherit;cursor:pointer;transition:.2s;text-decoration:none;white-space:nowrap}
.kgs-btn--primary{background:linear-gradient(120deg,var(--p),#8B5CF6);color:#fff;box-shadow:0 6px 18px rgba(108,92,231,.32)}
.kgs-btn--primary:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(108,92,231,.42);color:#fff}
.kgs-btn--ghost{background:#fff;border-color:var(--line);color:var(--tx)}
.kgs-btn--ghost:hover{border-color:var(--p);color:var(--p)}
.kgs-btn--block{width:100%}
.kgs-morewrap{display:flex;justify-content:center;margin-top:28px}
.kgs-empty{grid-column:1/-1;padding:64px 24px;text-align:center;border:1px dashed var(--line);border-radius:var(--r);background:var(--card)}
.kgs-empty span{font-size:44px;opacity:.4}
.kgs-empty h3{margin:14px 0 6px;font-size:19px}
.kgs-empty p{margin:0 0 18px;color:var(--mut)}
.kgs-only-mobile{display:none}

/* Модальное окно */
.kgs-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;padding:20px}
.kgs-modal[hidden]{display:none}
.kgs-modal__backdrop{position:absolute;inset:0;background:rgba(17,24,39,.55);backdrop-filter:blur(6px)}
.kgs-modal__box{position:relative;width:100%;max-width:440px;padding:32px;border-radius:26px;background:#fff;box-shadow:var(--sh2);
  animation:kgsIn .28s cubic-bezier(.4,0,.2,1)}
@keyframes kgsIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.kgs-modal__close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:0;border-radius:50%;background:#F3F4F6;
  font-size:20px;line-height:1;color:var(--mut);cursor:pointer;transition:.2s}
.kgs-modal__close:hover{background:#E5E7EB;color:var(--tx)}
.kgs-modal__box h3{margin:0 0 6px;font-size:21px;letter-spacing:-.02em}
.kgs-modal__sub{margin:0 0 22px;font-size:14px;color:var(--mut)}
.kgs-form{display:flex;flex-direction:column;gap:14px}
.kgs-field{display:flex;flex-direction:column;gap:6px}
.kgs-field span{font:600 13px/1 inherit;color:#374151}
.kgs-field input,.kgs-field textarea{padding:12px 14px;border:1px solid var(--line);border-radius:13px;font:14px/1.4 inherit;
  color:var(--tx);background:#fff;resize:vertical}
.kgs-field input:focus,.kgs-field textarea:focus{outline:0;border-color:var(--p);box-shadow:0 0 0 3px rgba(108,92,231,.12)}
.kgs-form__msg{margin:0;font-size:13px;min-height:18px}
.kgs-form__msg.is-ok{color:#15803D}
.kgs-form__msg.is-err{color:#DC2626}

/* Адаптив */
@media(max-width:1080px){.kgs-tiles{grid-template-columns:repeat(3,1fr)}.kgs-grid{grid-template-columns:repeat(2,1fr)}
  .kgs-layout{grid-template-columns:250px 1fr;gap:20px}}
@media(max-width:860px){.kgs-layout{grid-template-columns:1fr}
  .kgs-side{position:static;display:none}.kgs-side.is-open{display:flex}
  .kgs-only-mobile{display:inline-flex}.kgs-tiles{grid-template-columns:repeat(2,1fr)}
  .kgs-hero{padding:44px 22px 38px;border-radius:26px}.kgs-card--list{flex-direction:column}
  .kgs-card--list .kgs-card__media{width:100%;aspect-ratio:16/10}}
@media(max-width:560px){.kgs{padding:0 14px 52px}.kgs-grid,.kgs-tiles{grid-template-columns:1fr}
  .kgs-search{padding-left:44px}.kgs-search input{font-size:16px}
  .kgs-search .kgs-btn{padding:11px 14px}.kgs-bar{position:static}.kgs-select--auto{min-width:0;flex:1}
  .kgs-modal__box{padding:24px}}
@media(prefers-reduced-motion:reduce){.kgs *{animation:none!important;transition:none!important}}
