/* ==========================================================================
   Good Talk — библиотека блоков для страниц (префикс gt-)
   Вставить ОДИН раз в user.css темы Vega. Использовать на любых страницах:
   <div class="gt"> ... блоки ... </div>
   Цветовые темы: добавить к обёртке gt--blue, gt--green или gt--purple.
   Все правила имеют вид ".gt .gt-что-то" — это перебивает стили темы Vega.
   ========================================================================== */

/* ---------- Обёртка, цвета, сброс ---------- */
.gt{
  --gt-accent:#1fb5aa; --gt-accent-dark:#0e6f69; --gt-accent-soft:#e6f7f5; --gt-line:#dbe9e7;
  --gt-orange:#ff4d00; --gt-orange-dark:#e04400; --gt-blue:#1d6fd6; --gt-yellow:#f5b82e;
  --gt-ink:#1d2b2a; --gt-muted:#5b6b6a; --gt-cream:#fff6e3;
  --gt-strip:#12a095; --gt-cta-bg:#0e6f69;
  --gt-c1:#ff4d00; --gt-c2:#1fb5aa; --gt-c3:#1d6fd6; --gt-c4:#f5b82e;
  display:block; container-type:inline-size; margin:0 0 40px; color:var(--gt-ink); font-size:16px; line-height:1.6; text-align:left;
}
/* ---------- ЦВЕТОВЫЕ ТЕМЫ (по цвету баннера страницы) ----------
   teal   — STEM, по умолчанию        green  — GrapeSEED 5-6
   orange — Fly High 7-9, Каникулы     blue   — Go Getter 9-13, ОГЭ/ЕГЭ, Англия, главная
   yellow — Focus 13-17                purple — New Total English 18-99, Онлайн
   red    — Грамматические интенсивы
   poster — постер мастер-классов (голубой/синий/оранжевый/жёлтый)
   slate  — деловая тема для страниц документов («Сведения об образовательной организации» и подразделы)
   Применение: <div class="gt gt--green"> */
.gt--teal{
--gt-accent:#1fb5aa; --gt-accent-dark:#0e6f69; --gt-accent-soft:#e6f7f5; --gt-line:#dbe9e7; --gt-strip:#12a095; --gt-cta-bg:#0e6f69; --gt-c1:#ff4d00; --gt-c2:#1fb5aa; --gt-c3:#1d6fd6; --gt-c4:#f5b82e}
.gt--green{
--gt-accent:#2ea84a; --gt-accent-dark:#1b6b2f; --gt-accent-soft:#e8f7ec; --gt-line:#d3ebd9; --gt-strip:#2a9d46; --gt-cta-bg:#1b6b2f; --gt-c1:#ff4d00; --gt-c2:#2ea84a; --gt-c3:#1d6fd6; --gt-c4:#f5b82e}
.gt--orange{
--gt-accent:#ff7a1a; --gt-accent-dark:#a84300; --gt-accent-soft:#fff0e3; --gt-line:#f6dcc6; --gt-strip:#e8650a; --gt-cta-bg:#1f3a5f; --gt-c1:#ff7a1a; --gt-c2:#1fb5aa; --gt-c3:#1d6fd6; --gt-c4:#f5b82e}
.gt--blue{
--gt-accent:#1d6fd6; --gt-accent-dark:#124a99; --gt-accent-soft:#e8f1fd; --gt-line:#d6e3f6; --gt-strip:#1d6fd6; --gt-cta-bg:#124a99; --gt-c1:#ff4d00; --gt-c2:#1d6fd6; --gt-c3:#1fb5aa; --gt-c4:#f5b82e}
.gt--yellow{
--gt-accent:#f5a800; --gt-accent-dark:#7a5200; --gt-accent-soft:#fff6dc; --gt-line:#f2e2b3; --gt-strip:#c28400; --gt-cta-bg:#1f3a5f; --gt-c1:#ff4d00; --gt-c2:#f5a800; --gt-c3:#1d6fd6; --gt-c4:#2ea84a}
.gt--purple{
--gt-accent:#8e3fd6; --gt-accent-dark:#5a1f99; --gt-accent-soft:#f3eafc; --gt-line:#e4d6f5; --gt-strip:#8e3fd6; --gt-cta-bg:#5a1f99; --gt-c1:#ff4d00; --gt-c2:#8e3fd6; --gt-c3:#1fb5aa; --gt-c4:#f5b82e}
.gt--red{
--gt-accent:#e0242b; --gt-accent-dark:#a3141a; --gt-accent-soft:#fdeaea; --gt-line:#f5d0d2; --gt-strip:#d9232a; --gt-cta-bg:#1f3a5f; --gt-c1:#f5b82e; --gt-c2:#e0242b; --gt-c3:#1d6fd6; --gt-c4:#1fb5aa}
.gt--slate{
--gt-accent:#2f4a6d; --gt-accent-dark:#1f3552; --gt-accent-soft:#f2f5f9; --gt-line:#d8dfe8; --gt-strip:#2f4a6d; --gt-cta-bg:#1f3552; --gt-c1:#2f4a6d; --gt-c2:#5b7597; --gt-c3:#2f4a6d; --gt-c4:#5b7597}
.gt--wide{
max-width:1200px; margin-left:auto; margin-right:auto; padding:0 16px} /* для страниц без сайдбара */

.gt, .gt *, .gt *::before, .gt *::after{
box-sizing:border-box}
.gt p{
margin:0 0 14px !important; color:inherit; font-size:inherit; line-height:1.6 !important}
.gt ul, .gt ol{
margin:0; padding:0; list-style:none}
.gt li{
margin:0; padding:0}
.gt li::before, .gt li::after{
content:none !important; display:none !important; background:none !important}
.gt img{
max-width:100%; height:auto}

/* ---------- Заголовки (используем классы, а не теги) ---------- */
.gt .gt-title, .gt .gt-subtitle, .gt .gt-card__title{
  margin:0 0 16px !important; padding:0 !important; border:0; background:none; font-family:inherit; font-weight:700 !important;
  line-height:1.25 !important; letter-spacing:normal; text-transform:none; text-align:left; color:var(--gt-ink);
}
.gt .gt-title::before, .gt .gt-title::after, .gt .gt-subtitle::before, .gt .gt-subtitle::after,
.gt .gt-card__title::before, .gt .gt-card__title::after{
content:none; display:none}
.gt .gt-title{
font-size:26px !important}
.gt .gt-title--xl{
font-size:32px !important}
.gt .gt-subtitle{
font-size:21px !important}
.gt .gt-card__title{
font-size:17px !important; margin-bottom:8px !important; color:var(--gt-accent-dark)}
.gt .gt-card--plain .gt-card__title{
color:var(--gt-ink)}

/* ---------- Секции и картинка ---------- */
.gt .gt-section{
margin:0 0 44px}
.gt .gt-banner{
display:block; width:100%; height:auto; border-radius:14px; margin:0 0 32px}
.gt .gt-intro{
margin:0 0 28px}
.gt .gt-lead{
font-size:18px !important; max-width:860px}
.gt .gt-lead.gt-lead--full{
max-width:none !important}
.gt .gt-muted{
color:var(--gt-muted)}
.gt .gt-mt{
margin-top:18px !important}
.gt .gt-mb{
margin-bottom:20px !important}

/* ---------- Слоган-полоса ---------- */
.gt .gt-slogan{
display:flex; flex-wrap:wrap; gap:6px 22px; background:var(--gt-strip); color:#fff;
  border-radius:12px; padding:16px 22px; margin:0 0 20px; font-size:20px; font-weight:700}
.gt .gt-slogan span{
white-space:normal; min-width:0; max-width:100%}

/* ---------- Ключевые факты (4 плашки) ---------- */
.gt .gt-facts{
display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:14px; margin:0 0 40px}
.gt .gt-fact{
background:#fff; border:1px solid var(--gt-line); border-top:5px solid var(--gt-c1); border-radius:10px; padding:16px 18px}
.gt .gt-fact:nth-child(2){
border-top-color:var(--gt-c2)}
.gt .gt-fact:nth-child(3){
border-top-color:var(--gt-c3)}
.gt .gt-fact:nth-child(4){
border-top-color:var(--gt-c4)}
.gt .gt-fact b{
display:block; font-size:20px; line-height:1.25; margin-bottom:4px; color:var(--gt-ink)}
.gt .gt-fact span{
color:var(--gt-muted); font-size:15px}

/* ---------- Карточки ---------- */
.gt .gt-grid{
display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:14px}
.gt .gt-grid--2{
grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
.gt .gt-card{
background:var(--gt-accent-soft); border-radius:12px; padding:20px}
.gt .gt-card--plain{
background:#fff; border:1px solid var(--gt-line)}
.gt .gt-card p{
margin:0 !important; font-size:15.5px}

/* ---------- Цитата / выделенный текст ---------- */
.gt .gt-cols{
display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:20px; align-items:stretch}
.gt .gt-quote{
background:var(--gt-cream); border-left:6px solid var(--gt-yellow); border-radius:0 12px 12px 0; padding:22px 24px}
.gt .gt-quote--accent{
background:var(--gt-accent-soft); border-left-color:var(--gt-accent)}
.gt .gt-quote p:last-child{
margin-bottom:0 !important}
.gt .gt-about{
background:var(--gt-cream); border-radius:12px; padding:22px 26px; margin:0 0 28px}
.gt .gt-about p:last-child{
margin-bottom:0 !important}
.gt .gt-note{
background:var(--gt-accent-soft); border-radius:12px; padding:22px 26px; margin-top:28px}
.gt .gt-note p:last-child{
margin-bottom:0 !important}

/* ---------- Список с цветными полосками ---------- */
.gt ul.gt-list{
display:grid; grid-template-columns:1fr; gap:12px; margin:0 0 4px !important; padding:0 !important}
.gt ul.gt-list li{
list-style:none !important; background:#fff; border:1px solid var(--gt-line); border-left:5px solid var(--gt-c1); border-radius:8px; padding:14px 16px; font-size:15.5px}
.gt ul.gt-list li:nth-child(2){
border-left-color:var(--gt-c2)}
.gt ul.gt-list li:nth-child(3){
border-left-color:var(--gt-c3)}
.gt ul.gt-list li:nth-child(4){
border-left-color:var(--gt-c4)}

/* ---------- Расписание ---------- */
.gt .gt-schedule{
background:#fff; border:1px solid var(--gt-line); border-radius:14px; overflow:hidden}
.gt .gt-schedule__head{
background:var(--gt-accent-dark); color:#fff; font-weight:700; font-size:18px; padding:14px 22px}
.gt .gt-schedule__row{
display:flex; align-items:baseline; gap:18px; padding:14px 22px; border-top:1px solid var(--gt-line)}
.gt .gt-schedule__head + .gt-schedule__row{
border-top:0}
.gt .gt-schedule__time{
flex:0 0 74px; font-size:22px; font-weight:700; color:var(--gt-orange)}
.gt .gt-schedule__text{
font-size:17px}
.gt .gt-schedule__meta{
display:flex; flex-wrap:wrap; gap:8px 28px; padding:14px 22px; background:var(--gt-accent-soft); font-size:15.5px}

/* ---------- Таблица (цены, сравнение) ---------- */
.gt .gt-table-wrap{
overflow-x:auto}
.gt table.gt-table{
width:100%; border-collapse:collapse; background:#fff; font-size:16px}
.gt table.gt-table th{
background:var(--gt-accent-dark); color:#fff; text-align:left; padding:12px 16px; font-weight:700; border:0}
.gt table.gt-table td{
padding:12px 16px; border:0; border-bottom:1px solid var(--gt-line); vertical-align:top}
.gt table.gt-table tr:nth-child(even) td{
background:var(--gt-accent-soft)}

/* ---------- Вопрос-ответ (раскрывающийся) ---------- */
.gt details.gt-faq{
background:#fff; border:1px solid var(--gt-line); border-radius:10px; margin:0 0 10px}
.gt details.gt-faq summary{
cursor:pointer; padding:16px 20px; font-weight:700; font-size:17px; list-style:none}
.gt details.gt-faq summary::-webkit-details-marker{
display:none}
.gt details.gt-faq summary::after{
content:"+"; float:right; font-size:22px; line-height:1; color:var(--gt-orange)}
.gt details.gt-faq[open] summary::after{
content:"–"}
.gt details.gt-faq .gt-faq__body{
padding:0 20px 16px}

/* ---------- Текст + картинка ---------- */
.gt .gt-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:28px;
  align-items:center;
}
.gt .gt-split>*{
  min-width:0;
}
.gt .gt-split img{
  display:block;
  width:100%;
  height:auto;
  border-radius:14px;
}
@container (max-width:640px){
  .gt .gt-split{
    grid-template-columns:minmax(0,1fr);
  }
}

/* ---------- Блок записи и кнопки ---------- */
.gt .gt-cta{
background:var(--gt-cta-bg); color:#fff; border-radius:16px; padding:32px 30px; margin:0 0 48px}
.gt .gt-cta .gt-title{
color:#fff}
.gt .gt-cta p{
max-width:720px; margin:0 0 20px !important; opacity:.95}
.gt .gt-btns{
display:flex; flex-wrap:wrap; gap:12px}
.gt a.gt-btn{
display:inline-block; padding:13px 24px; border-radius:8px; font-weight:700; font-size:16px; line-height:1.3;
  text-decoration:none !important; background:#fff; color:#1d2b2a !important; border:0; transition:background .2s,color .2s}
.gt a.gt-btn:hover{
background:var(--gt-yellow); color:var(--gt-ink) !important}
.gt a.gt-btn:focus-visible{
outline:3px solid var(--gt-yellow); outline-offset:2px}
.gt a.gt-btn--main{
background:var(--gt-orange); color:#fff !important}
.gt a.gt-btn--main:hover{
background:var(--gt-orange-dark); color:#fff !important}
/* кнопки мессенджеров в фирменных цветах */
.gt a.gt-btn--wa{
background:#1e9e50; color:#fff !important}
.gt a.gt-btn--tg{
background:#2183c9; color:#fff !important}
.gt a.gt-btn--max{
background:#6c3fe0; color:#fff !important}
.gt a.gt-btn--wa:hover{
background:#17803f; color:#fff !important}
.gt a.gt-btn--tg:hover{
background:#1a69a3; color:#fff !important}
.gt a.gt-btn--max:hover{
background:#552fb8; color:#fff !important}
.gt a.gt-btn[href^="tel:"]{
-webkit-mask-image:none !important; mask-image:none !important; -webkit-text-fill-color:currentColor !important; -webkit-background-clip:border-box !important; background-clip:border-box !important}
/* кнопки вне тёмного блока */
.gt .gt-btns--light{
margin-top:18px}
.gt .gt-btns--light a.gt-btn{
background:var(--gt-accent-soft); border:1px solid var(--gt-line)}
.gt .gt-btns--light a.gt-btn--main{
background:var(--gt-orange)}

/* ---------- Контакты (карточки связи) и карта ---------- */
.gt .gt-contacts{
display:grid; grid-template-columns:1fr; gap:14px; margin:0 0 40px}
.gt .gt-contact{
display:flex; flex-direction:column; gap:2px; background:#fff; border:1px solid var(--gt-line); border-top:5px solid var(--gt-c1); border-radius:12px; padding:16px 18px}
.gt .gt-contact:nth-child(4n+2){
border-top-color:var(--gt-c2)}
.gt .gt-contact:nth-child(4n+3){
border-top-color:var(--gt-c3)}
.gt .gt-contact:nth-child(4n+4){
border-top-color:var(--gt-c4)}
.gt .gt-contact__label{
font-size:14px; color:var(--gt-muted)}
.gt .gt-contact__label--wa,
.gt .gt-contact__label--tg,
.gt .gt-contact__label--max{
  align-self:flex-start;
  margin-bottom:6px;
  padding:3px 12px;
  border-radius:999px;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
  color:#fff !important;
}
.gt .gt-contact__label--wa{
  background:#1e9e50;
}
.gt .gt-contact__label--tg{
  background:#2183c9;
}
.gt .gt-contact__label--max{
  background:#6c3fe0;
}
.gt .gt-contact__value{
font-size:19px; font-weight:700; line-height:1.3; color:var(--gt-ink); word-break:break-word}
.gt .gt-contact__sub{
font-size:15px; color:var(--gt-muted)}
.gt a.gt-contact__link{
display:inline-block; margin-top:auto; padding-top:10px; font-weight:700; font-size:15.5px; color:var(--gt-accent-dark) !important; text-decoration:none !important; border:0}
.gt a.gt-contact__link:hover{
color:var(--gt-orange) !important}
.gt .gt-contact__links{
display:flex; flex-direction:column; gap:2px; margin-top:auto; padding-top:10px}
.gt .gt-contact__links a.gt-contact__link{
margin:0; padding:0}
.gt a.gt-contact__link::after{
content:" →"}
.gt .gt-contact--main{
background:var(--gt-accent-soft); border-color:var(--gt-accent); border-top-color:var(--gt-orange)}
.gt .gt-contact--main a.gt-contact__link{
align-self:flex-start; margin-top:auto; padding:10px 16px; border-radius:8px; background:var(--gt-orange); color:#fff !important}
.gt .gt-contact--main a.gt-contact__link:hover{
background:var(--gt-orange-dark); color:#fff !important}
.gt .gt-map{
border-radius:14px; overflow:hidden; border:1px solid var(--gt-line); margin:0 0 44px; background:var(--gt-accent-soft)}
.gt .gt-map iframe{
display:block; width:100%; height:420px; border:0}
.gt a[href^="tel:"]{
-webkit-mask-image:none !important; mask-image:none !important; -webkit-text-fill-color:currentColor !important}

/* ---------- Деловые блоки: документы, ссылки-реестр, реквизиты ---------- */
/* Карточки-документы: иконка файла слева, стрелка справа (рисуется бордерами, всегда по центру) */
.gt ul.gt-docs{
list-style:none; margin:0 0 32px !important; padding:0 !important; display:grid; grid-template-columns:1fr; gap:10px}
.gt .gt-docs li{
margin:0; padding:0; list-style:none !important}
.gt .gt-docs a{
display:flex; align-items:center; gap:14px; height:100%; padding:12px 16px; background:#fff; border:1px solid var(--gt-line); border-radius:8px; font-size:15.5px; font-weight:500; line-height:1.35; color:var(--gt-ink) !important; text-decoration:none !important; transition:border-color .2s, box-shadow .2s}
.gt .gt-docs a::before{
content:""; flex:0 0 42px; height:42px; border-radius:8px; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f4a6d' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M9 13h6M9 17h6'/%3E%3C/svg%3E") center/22px 22px no-repeat, var(--gt-accent-soft)}
.gt .gt-docs a::after, .gt .gt-registry a::after{
content:""; flex:0 0 8px; width:8px; height:8px; margin:0 4px 0 auto; border-top:2px solid var(--gt-muted); border-right:2px solid var(--gt-muted); transform:rotate(45deg)}
.gt .gt-docs a:hover, .gt .gt-docs a:focus-visible{
border-color:var(--gt-accent); box-shadow:0 2px 8px rgba(31,53,82,.12); color:var(--gt-accent-dark) !important}
.gt .gt-docs a:hover::after, .gt .gt-registry a:hover::after{
border-color:var(--gt-accent-dark)}
/* Простой список ссылок (связанные разделы) */
.gt ul.gt-registry{
list-style:none; margin:0 0 32px !important; padding:0 !important; border:1px solid var(--gt-line); border-radius:8px; overflow:hidden; background:#fff}
.gt .gt-registry li{
border-top:1px solid var(--gt-line); list-style:none !important}
.gt .gt-registry li:first-child{
border-top:0}
.gt .gt-registry a{
display:flex; align-items:center; gap:12px; padding:14px 20px; font-size:16px; font-weight:500; line-height:1.4; color:var(--gt-ink) !important; text-decoration:none !important}
.gt .gt-registry a:hover, .gt .gt-registry a:focus-visible{
background:var(--gt-accent-soft); color:var(--gt-accent-dark) !important}
/* Реквизиты */
.gt dl.gt-dl{
margin:0 0 32px !important; padding:0 !important; border:1px solid var(--gt-line); border-radius:8px; background:#fff}
.gt dl.gt-dl>div{
display:grid; grid-template-columns:1fr; gap:2px; padding:12px 20px; border-top:1px solid var(--gt-line)}
.gt dl.gt-dl>div:first-child{
border-top:0}
.gt dl.gt-dl dt{
margin:0; padding:0; font-size:14.5px; color:var(--gt-muted)}
.gt dl.gt-dl dd{
margin:0; padding:0; font-weight:600; line-height:1.4}
.gt dl.gt-dl a{
color:var(--gt-accent-dark) !important; text-decoration:underline; text-underline-offset:3px}
.gt dl.gt-dl--light dt{
  color:var(--gt-ink);
  font-weight:700;
  font-size:15.5px;
}
.gt dl.gt-dl--light dd{
  font-weight:400;
  font-size:15.5px;
}
.gt .gt-section[id]{
  scroll-margin-top:100px;
}
.gt .gt-lead--plain{
font-size:17px !important; max-width:860px; color:var(--gt-muted); margin-bottom:32px !important}
.gt .gt-hint{
margin:-6px 0 16px !important; font-size:15px; color:var(--gt-muted)}

/* Обёртка формы «Заявки»: на всю ширину блока, без своей рамки (карточку рисует сама форма) */
.gt .gt-form{
width:100%; max-width:none !important; margin:0 0 4px; padding:0; background:none; border:0; box-shadow:none}
.gt .gt-form form, .gt .gt-form>div{
max-width:none}

.gt .gt-facts>*,
.gt .gt-grid>*,
.gt .gt-cols>*,
.gt .gt-contacts>*{
  min-width:0;
}
.gt .gt-fact b,
.gt .gt-card__title,
.gt .gt-contact__value{
  overflow-wrap:anywhere;
}
/* ---------- Фото-карточки (события с картинкой) ---------- */
.gt .gt-photo{
  display:flex;
  flex-direction:column;
  background:#fff;
  border:1px solid var(--gt-line);
  border-radius:12px;
  overflow:hidden;
}
.gt .gt-photo img{
  display:block;
  width:100%;
  aspect-ratio:4/3;
  object-fit:cover;
}
.gt .gt-photo__body{
  display:flex;
  flex-direction:column;
  gap:6px;
  flex:1 1 auto;
  padding:16px 18px 18px;
}
.gt .gt-photo__meta{
  font-size:14px;
  color:var(--gt-muted);
}
.gt .gt-photo p{
  margin:0 !important;
  font-size:15.5px;
}
.gt a.gt-photo__link{
  margin-top:auto;
  padding-top:8px;
  font-weight:700;
  font-size:15.5px;
  color:var(--gt-accent-dark) !important;
  text-decoration:none !important;
}
.gt a.gt-photo__link::after{
  content:" →";
}
.gt a.gt-photo__link:hover{
  color:var(--gt-orange) !important;
}

/* ---------- Выбор сезона: две крупные карточки ---------- */
.gt .gt-seasons{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
}
.gt .gt-seasoncard{
  border-radius:14px;
  padding:22px 22px 20px;
  border-top:6px solid #2a6fd6;
  background:#e8f1fd;
}
.gt .gt-seasoncard--summer{
  border-top-color:#e8650a;
  background:#fff0e3;
}
.gt .gt-seasoncard .gt-card__title{
  font-size:22px !important;
  color:#124a99;
}
.gt .gt-seasoncard--summer .gt-card__title{
  color:#a84300;
}
.gt .gt-seasoncard .gt-btns--light a.gt-btn{
  background:#fff;
}
.gt .gt-seasoncard p{
  margin:0 0 14px !important;
}
@container (min-width:640px){
  .gt .gt-seasons{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* ---------- Интерактив «Английский сезона» (зима / лето) ---------- */
.gt .gt-play{
  --p-a:#2a6fd6;
  --p-soft:#e8f1fd;
  --p-dark:#124a99;
  background:var(--p-soft);
  border-radius:16px;
  padding:24px;
  transition:background .25s;
}
.gt .gt-play[data-season="summer"]{
  --p-a:#e8650a;
  --p-soft:#fff0e3;
  --p-dark:#a84300;
}
.gt .gt-play__tabs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 18px;
}
.gt .gt-play button{
  -webkit-appearance:none;
  appearance:none;
  font:inherit;
  cursor:pointer;
  text-transform:none;
  letter-spacing:normal;
}
.gt .gt-play .gt-play__tab{
  font-weight:700;
  font-size:16px;
  line-height:1.2;
  padding:11px 20px;
  border:2px solid var(--p-a) !important;
  border-radius:999px;
  background:#fff !important;
  color:var(--p-dark) !important;
  box-shadow:none;
}
.gt .gt-play .gt-play__tab[aria-selected="true"]{
  background:var(--p-a) !important;
  color:#fff !important;
}
.gt .gt-play .gt-play__tab:focus-visible,
.gt .gt-play .gt-play__card:focus-visible{
  outline:3px solid var(--gt-yellow);
  outline-offset:2px;
}
.gt .gt-play__grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.gt .gt-play__panel[hidden]{
  display:none;
}
.gt .gt-play .gt-play__card{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:104px;
  padding:14px 10px;
  border:0 !important;
  border-radius:14px;
  background:#fff !important;
  color:var(--p-dark) !important;
  box-shadow:0 4px 0 rgba(0,0,0,.12);
  text-align:center;
  transition:transform .15s;
}
.gt .gt-play .gt-play__card[aria-pressed="true"]{
  background:var(--p-a) !important;
  color:#fff !important;
}
.gt .gt-play__emoji{
  font-size:28px;
  line-height:1;
}
.gt .gt-play__card b{
  font-size:20px;
  line-height:1.2;
  color:inherit;
  overflow-wrap:anywhere;
}
.gt .gt-play__status{
  margin:16px 0 0 !important;
  font-weight:700;
  color:var(--p-dark);
}
.gt .gt-play__finale{
  margin-top:14px;
  padding:16px 18px;
  background:#fff;
  border-radius:12px;
  border-left:6px solid var(--p-a);
}
.gt .gt-play__finale[hidden]{
  display:none;
}
.gt .gt-play__finale p{
  margin:0 0 12px !important;
}
@container (min-width:640px){
  .gt .gt-play__grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (hover:hover){
  .gt .gt-play .gt-play__card:hover{
    transform:translateY(-3px);
  }
}
@media (prefers-reduced-motion:reduce){
  .gt .gt-play,
  .gt .gt-play .gt-play__card{
    transition:none;
  }
}

/* ---------- Встроенная форма «Заявки»: масштаб капчи на узких экранах ---------- */
.gt .gt-form iframe.gt-fit{
  display:block !important;
  width:304px !important;
  max-width:none !important;
  transform:scale(var(--gt-k,1)) !important;
  transform-origin:0 0 !important;
  margin-bottom:var(--gt-mb,0) !important;
}

/* ---------- Рамка записи (как на странице «Забронируй мастер-класс») ---------- */
.gt .gt-book{
  background:linear-gradient(135deg,#1d6fd6,#2f45e0);
  color:#fff;
  border-radius:28px;
  padding:40px 32px 32px;
}
.gt .gt-book .gt-title{
  color:#fff;
}
.gt .gt-book .gt-lead{
  color:#fff;
  max-width:none;
}
.gt .gt-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 22px;
}
.gt .gt-chips span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 16px;
  background:rgba(255,255,255,.16);
  border-radius:999px;
  font-size:15px;
  font-weight:700;
  color:#fff;
}
.gt .gt-chips b{
  color:var(--gt-yellow);
}
.gt .gt-book .gt-form{
  margin:0;
  padding:28px;
  background:#fff;
  border-radius:20px;
  border-top:8px solid var(--gt-orange);
  color:var(--gt-ink);
}
@container (max-width:640px){
  .gt .gt-book{
    padding:28px 20px 20px;
    border-radius:22px;
  }
  .gt .gt-book .gt-form{
    width:auto;
    padding:14px 12px;
    margin-left:-12px;
    margin-right:-12px;
  }
}

/* ---------- Карточки цен ---------- */
.gt .gt-prices{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
  margin:0 0 14px;
}
.gt .gt-price{
  background:#fff;
  border:1px solid var(--gt-line);
  border-top:6px solid var(--gt-c2);
  border-radius:14px;
  padding:22px;
}
.gt .gt-price:nth-child(2){
  border-top-color:var(--gt-c1);
}
.gt .gt-price__label{
  font-size:15px;
  color:var(--gt-muted);
}
.gt .gt-price__name{
  margin:2px 0 8px;
  font-size:20px;
  font-weight:700;
  line-height:1.25;
  color:var(--gt-ink);
}
.gt .gt-price__value{
  font-size:38px;
  font-weight:800;
  line-height:1.1;
  color:var(--gt-ink);
}
.gt .gt-price__value small{
  font-size:18px;
  font-weight:600;
  color:var(--gt-muted);
}
.gt .gt-price__note{
  margin-top:10px;
  font-size:15.5px;
}
@container (min-width:640px){
  .gt .gt-prices{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
.gt .gt-photo--square img{
  aspect-ratio:1/1;
}

.gt .gt-photo--wide{
  margin-top:14px;
}
@container (min-width:640px){
  .gt .gt-photo--wide{
    flex-direction:row;
  }
  .gt .gt-photo--wide img{
    flex:0 0 260px;
    width:260px;
    height:auto;
    aspect-ratio:1/1;
  }
  .gt .gt-photo--wide .gt-photo__body{
    justify-content:center;
    padding:22px 26px;
  }
}

/* ---------- Встроенная таблица (Google Таблицы и т.п.) ---------- */
.gt .gt-embed{
  border:1px solid var(--gt-line);
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.gt .gt-embed iframe{
  display:block;
  width:100%;
  max-width:100%;
  height:var(--gt-embed-h,1160px);
  border:0;
}
.gt .gt-embed__link{
  margin:10px 0 0 !important;
  font-size:15px;
  color:var(--gt-muted);
}

/* ---------- Сетки с заданным числом колонок ---------- */
.gt .gt-facts{
grid-template-columns:1fr}
.gt .gt-grid--2, .gt .gt-grid--3, .gt .gt-grid--4, .gt .gt-grid--5{
grid-template-columns:1fr}
@container (min-width:560px){
  .gt dl.gt-dl>div{
grid-template-columns:260px 1fr; gap:16px}
}
@container (min-width:640px){
  .gt ul.gt-docs{
grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (min-width:480px){
  .gt .gt-facts{
grid-template-columns:repeat(2,minmax(0,1fr))}
  .gt .gt-grid--2, .gt .gt-grid--3, .gt .gt-grid--4, .gt .gt-grid--5{
grid-template-columns:repeat(2,minmax(0,1fr))}
  .gt .gt-grid--5>:last-child{
grid-column:1/-1}
  .gt ul.gt-list{
grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (min-width:480px){
  .gt .gt-contacts{
grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (min-width:900px){
  .gt .gt-contacts{
grid-template-columns:repeat(4,minmax(0,1fr))}
}
@container (min-width:720px){
  .gt .gt-facts{
grid-template-columns:repeat(4,minmax(0,1fr))}
  .gt .gt-grid--3{
grid-template-columns:repeat(3,minmax(0,1fr))}
  .gt .gt-grid--4{
grid-template-columns:repeat(4,minmax(0,1fr))}
  .gt .gt-grid--5{
grid-template-columns:repeat(6,minmax(0,1fr))}
  .gt .gt-grid--5>*{
grid-column:span 2}
  .gt .gt-grid--5>:nth-child(4){
grid-column:2 / span 2}
  .gt .gt-grid--5>:nth-child(5){
grid-column:4 / span 2}
}

/* ---------- Мобильная версия ---------- */
@media (max-width:700px){
  .gt .gt-title--xl{
font-size:25px !important}
  .gt .gt-title{
font-size:22px !important}
  .gt .gt-slogan{
font-size:17px; padding:14px 16px}
  .gt .gt-lead{
font-size:16.5px !important}
  .gt .gt-schedule__row{
flex-direction:column; gap:2px}
  .gt .gt-map iframe{
height:320px}
  .gt .gt-cta{
padding:24px 18px}
  .gt a.gt-btn{
width:100%; text-align:center}
  .gt .gt-split{
grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
.gt a.gt-btn{
transition:none}}

/* ==========================================================================
   Лендинг «Мастер-классы / запись через форму» (обёртка #gt-lp)
   Все правила начинаются с #gt-lp, поэтому не пересекаются с библиотекой .gt-
   и не влияют на остальные страницы. Разметку лендинга НЕ помещайте внутрь
   <div class="gt">: у .gt включены контейнерные запросы, и фиксированные
   элементы внутри ведут себя неверно. Нижней фиксированной панели у лендинга
   нет: она перекрывала нижнее мобильное меню Vega.
   ========================================================================== */
#gt-lp{
--ink:#1d2358;--blue:#2f45e0;--sun:#ffc83d;--mint:#2fb996;--or:#ff4d00;--soft:#f2f0ff;--txt:#2a2e4a;color:var(--txt);font-size:17px;line-height:1.6;box-sizing:border-box}
#gt-lp *{
box-sizing:border-box}
#gt-lp h1,#gt-lp h2,#gt-lp h3{
color:var(--ink);line-height:1.15;margin:0 0 .5em;font-weight:800}
#gt-lp h1,#gt-lp .gt-h1{
font-size:clamp(30px,6vw,54px)}
#gt-lp h2{
font-size:clamp(24px,4vw,36px)}
#gt-lp h3{
font-size:19px}
#gt-lp p{
margin:0 0 1em}
#gt-lp .gt-wrap{
max-width:1100px;margin:0 auto;padding:0 20px}
#gt-lp section{
padding:56px 0}
#gt-lp .gt-hero{
background:var(--ink);color:#fff;padding:48px 0 64px;position:relative;overflow:hidden}
#gt-lp .gt-hero h1,#gt-lp .gt-hero .gt-h1{
color:#fff;max-width:14em}
#gt-lp .gt-hero .gt-grid{
display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:center}
#gt-lp .gt-lead{
font-size:20px;max-width:30em;color:#e6e8ff}
#gt-lp .gt-age{
display:inline-block;background:var(--sun);color:var(--ink);font-weight:800;border-radius:999px;padding:6px 16px;margin-bottom:18px;transform:rotate(-2deg)}
#gt-lp .gt-ticket{
background:var(--sun);color:var(--ink);border-radius:22px;overflow:hidden;transform:rotate(1.5deg);box-shadow:0 0 0 4px #fff,12px 12px 0 var(--or)}
#gt-lp .gt-tk-head{
background:var(--or);color:#fff;padding:13px 24px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:15px;display:flex;align-items:center;gap:10px}
#gt-lp .gt-dot{
width:12px;height:12px;border-radius:50%;background:#fff;flex:none}
#gt-lp .gt-tk-body{
padding:20px 24px 24px}
#gt-lp .gt-tk-l{
font-size:13px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;opacity:.65;margin:0}
#gt-lp .gt-tk-v{
font-size:26px;font-weight:800;line-height:1.2;margin:0 0 14px;color:var(--ink)}
#gt-lp .gt-tk-v small{
display:block;font-size:15px;font-weight:600;opacity:.8;margin-top:2px}
#gt-lp .gt-tk-btn{
display:flex;justify-content:center;width:100%;background:var(--ink);color:#fff!important;font-size:18px;padding:16px 20px;border-radius:14px;font-weight:800;text-decoration:none;margin-top:6px}
#gt-lp .gt-tk-btn:hover{
background:var(--or)}
#gt-lp .gt-go{
background:var(--or);font-size:19px;padding:16px 28px;box-shadow:0 6px 0 #b83500}
#gt-lp .gt-sub{
margin-top:14px;font-size:15px;color:#c9ceff}
#gt-lp .gt-sub a{
color:#fff!important;text-decoration:underline}
#gt-lp .gt-book{
background:linear-gradient(135deg,#1d6fd6,#2f45e0);color:#fff;border-radius:28px;padding:44px 32px 36px;scroll-margin-top:90px}
#gt-lp .gt-book h2{
color:#fff}
#gt-lp .gt-chips{
display:flex;flex-wrap:wrap;gap:10px;margin:0 0 22px}
#gt-lp .gt-chips span{
display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.16);border-radius:999px;padding:8px 16px;font-weight:700;font-size:15px}
#gt-lp .gt-chips b{
color:var(--sun)}
#gt-lp .gt-form{
margin-top:0;background:#fff;border-radius:20px;padding:28px;color:var(--txt);border-top:8px solid var(--or)}
#gt-lp .gt-q{
margin-top:28px;background:var(--soft);border-radius:22px;padding:30px 28px}
#gt-lp .gt-q h3{
font-size:22px}
#gt-lp .gt-q .gt-ml{
color:var(--ink)!important}
#gt-lp .gt-tg,#gt-lp .gt-wa,#gt-lp .gt-mx{
box-shadow:none}
#gt-lp .gt-about{
display:grid;grid-template-columns:5fr 6fr;gap:44px;align-items:center;background:var(--soft);border-radius:28px;padding:40px}
#gt-lp .gt-pic{
border-radius:22px;overflow:hidden;transform:rotate(-2deg);box-shadow:0 0 0 5px #fff,10px 10px 0 var(--sun);background:#fff;aspect-ratio:4/3}
#gt-lp .gt-pic img,#gt-lp .gt-pic svg{
display:block;width:100%;height:100%;object-fit:cover}
#gt-lp .gt-tag{
display:inline-block;background:var(--blue);color:#fff;font-weight:800;font-size:14px;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:6px 14px;margin-bottom:14px}
#gt-lp .gt-facts-mini{
list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
#gt-lp .gt-facts-mini li{
background:#fff;border-radius:12px;padding:10px 16px;font-size:15px;box-shadow:0 3px 0 #c9ceff}
#gt-lp .gt-facts-mini li::before,#gt-lp .gt-facts-mini li::after{
content:none!important;display:none!important;background:none!important}
#gt-lp .gt-facts-mini li{
padding-left:16px!important;list-style:none!important}
#gt-lp .gt-facts-mini b{
display:block;color:var(--blue);font-size:12px;text-transform:uppercase;letter-spacing:.06em}
#gt-lp{
overflow-x:hidden;overflow-x:clip}
#gt-lp .gt-split>*,#gt-lp .gt-about>*,#gt-lp .gt-grid>*{
min-width:0}
#gt-lp .gt-tabsrow{
margin-top:34px}
#gt-lp .gt-tabsrow p{
margin:0 0 10px;font-weight:700;color:var(--ink)}
#gt-lp .gt-tabs{
display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#gt-lp .gt-tab{
display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;font:inherit;cursor:pointer;border:2px solid #c9ceff;background:#fff;border-radius:14px;padding:12px 16px;text-align:left;color:var(--ink);line-height:1.2;min-width:0}
#gt-lp .gt-tab b{
display:block;font-size:17px}
#gt-lp .gt-tab small{
font-size:13px;opacity:.75}
#gt-lp .gt-hint{
display:flex;align-items:center;gap:10px;background:var(--blue);color:#fff;font-weight:700;font-size:15px;line-height:1.3;border-radius:14px;padding:10px 16px;margin:0 0 6px!important}
#gt-lp .gt-hand{
flex:none;font-size:20px;line-height:1}
#gt-lp .gt-word{
position:relative;padding-right:34px;transition:transform .15s}
#gt-lp .gt-word::after{
content:"↻";position:absolute;top:6px;right:10px;font-size:14px;color:var(--blue);opacity:.85}
@media(hover:hover){
#gt-lp .gt-word:hover{
transform:translateY(-3px)}}
#gt-lp .gt-ph,#gt-lp .gt-ml{
white-space:nowrap}
#gt-lp .gt-form iframe.gt-fit{
display:block!important;width:304px!important;max-width:none!important;transform:scale(var(--gt-k,1))!important;transform-origin:0 0!important;margin-bottom:var(--gt-mb,0)!important}
#gt-lp .gt-btns{
display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
#gt-lp .gt-b{
display:inline-flex;align-items:center;gap:8px;padding:13px 20px;border-radius:12px;font-weight:700;text-decoration:none;color:#fff!important;border:2px solid transparent;font-size:16px;line-height:1.2}
#gt-lp .gt-b:focus-visible,#gt-lp summary:focus-visible,#gt-lp .gt-word:focus-visible{
outline:3px solid var(--sun);outline-offset:3px}
#gt-lp .gt-wa{
background:#1e9e50}#gt-lp .gt-tg{
background:#2183c9}#gt-lp .gt-mx{
background:#6c3fe0}
#gt-lp .gt-ph{
background:var(--sun);color:var(--ink)!important}
#gt-lp .gt-ml{
background:transparent;border-color:currentColor;color:var(--ink)!important}
#gt-lp .gt-b--dark{
background:var(--ink)}
#gt-lp a[href^="tel:"]{
-webkit-mask-image:none!important;mask-image:none!important;-webkit-text-fill-color:currentColor!important;-webkit-background-clip:border-box!important;background-clip:border-box!important}
#gt-lp .gt-b:hover{
filter:brightness(1.08)}
#gt-lp .gt-urgent{
background:var(--or);color:#fff;text-align:center;font-weight:800;padding:13px 20px;letter-spacing:.01em}
#gt-lp .gt-cards{
display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px}
#gt-lp .gt-card{
background:var(--soft);border-radius:18px;padding:24px}
#gt-lp .gt-card:nth-child(2){
background:#fff4d6}#gt-lp .gt-card:nth-child(3){
background:#dcf6ee}
#gt-lp .gt-split{
display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
#gt-lp .gt-steps{
list-style:none;margin:0;padding:0;counter-reset:s}
#gt-lp .gt-steps li{
counter-increment:s;position:relative;padding:0 0 22px 56px}
#gt-lp .gt-steps li:before{
content:counter(s);position:absolute;left:0;top:0;width:40px;height:40px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
#gt-lp .gt-steps li:not(:last-child):after{
content:"";position:absolute;left:19px;top:44px;bottom:4px;width:2px;background:#c9ceff}
#gt-lp .gt-words{
background:var(--soft)}
#gt-lp .gt-wordgrid{
display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
#gt-lp .gt-word{
font:inherit;font-weight:800;font-size:22px;border:0;border-radius:14px;padding:14px 22px;cursor:pointer;color:var(--ink);background:#fff;box-shadow:0 4px 0 #c9ceff;min-width:130px}
#gt-lp .gt-word[aria-pressed=true]{
background:var(--sun);box-shadow:0 4px 0 #d9a400}
#gt-lp .gt-wordgrid[hidden]{
display:none}
#gt-lp .gt-wordgrid{
min-height:170px;align-content:flex-start}
#gt-lp .gt-setname{
margin:18px 0 0;font-weight:800;color:var(--blue);text-transform:uppercase;letter-spacing:.06em;font-size:14px}
#gt-lp .gt-tab[aria-selected=true]{
background:var(--ink);color:#fff;border-color:var(--ink)}
#gt-lp .gt-tab:focus-visible{
outline:3px solid var(--sun);outline-offset:3px}
#gt-lp details{
border-bottom:1px solid #d7d9f0;padding:16px 0}
#gt-lp summary{
cursor:pointer;font-weight:700;color:var(--ink);font-size:18px}
#gt-lp details p{
margin:.7em 0 0}
#gt-lp .gt-addr{
margin-top:22px;font-size:15px;opacity:.9}
@media(max-width:820px){
#gt-lp section{
padding:40px 0}
#gt-lp .gt-hero .gt-grid,#gt-lp .gt-split,#gt-lp .gt-cards{
grid-template-columns:1fr}
#gt-lp .gt-split{
grid-template-columns:minmax(0,1fr)}
#gt-lp .gt-addr span{
display:block;margin-bottom:4px}#gt-lp .gt-addr .gt-sep{
display:none}
#gt-lp .gt-tabs{
grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#gt-lp .gt-tab{
padding:8px 10px}#gt-lp .gt-tab b{
font-size:14px}#gt-lp .gt-tab small{
font-size:12px}
#gt-lp .gt-word{
min-width:0;flex:1 1 calc(50% - 12px);font-size:19px;padding:12px 28px 12px 12px}
#gt-lp .gt-wrap-s{
padding:0}
#gt-lp .gt-book{
padding:28px 20px 20px;border-radius:22px}
#gt-lp .gt-form{
padding:10px 6px;margin-left:-12px;margin-right:-12px}
#gt-lp .gt-q{
padding:22px 16px}
#gt-lp .gt-q .gt-ph,#gt-lp .gt-q .gt-ml{
flex:1 1 100%}
#gt-lp .gt-ticket{
transform:none}
#gt-lp .gt-about{
grid-template-columns:1fr;padding:24px 18px;gap:28px}#gt-lp .gt-pic{
transform:none}

#gt-lp .gt-b{
flex:1 1 calc(50% - 10px);justify-content:center}
}
@media(prefers-reduced-motion:no-preference){
#gt-lp .gt-dot{
animation:gtp 1.2s infinite}#gt-lp .gt-age{
animation:gtw 3s ease-in-out infinite}}
@keyframes gtp{
50%{
opacity:.2}}
@keyframes gtw{
50%{
transform:rotate(2deg) scale(1.05)}}


/* ===== Карточка-«билет» с датами мероприятия (.gt-dt) ===== */
.gt .gt-dt-row{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;align-items:center;margin:34px 0 40px}
.gt .gt-dt-wrap{margin:0;padding:0 14px 14px 0}
.gt .gt-dt{max-width:560px;background:#ffc83d;color:#1d2358;border-radius:22px;overflow:hidden;transform:rotate(-1.2deg);box-shadow:0 0 0 4px #fff,12px 12px 0 #ff4d00}
.gt .gt-dt__head{background:#ff4d00;color:#fff;padding:13px 24px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:15px;display:flex;align-items:center;gap:10px}
.gt .gt-dt__dot{width:12px;height:12px;border-radius:50%;background:#fff;flex:none}
.gt .gt-dt__body{padding:20px 24px 24px}
.gt .gt-dt__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}
.gt .gt-dt .gt-dt__l{font-size:13px;text-transform:uppercase;letter-spacing:.07em;font-weight:700;opacity:.65;margin:0!important;line-height:1.3!important}
.gt .gt-dt .gt-dt__v{font-size:26px;font-weight:800;line-height:1.2!important;margin:0 0 14px!important;color:#1d2358}
.gt .gt-dt .gt-dt__v small{display:block;font-size:15px;font-weight:600;opacity:.8;margin-top:2px}
.gt .gt-dt a.gt-dt__btn{display:flex;justify-content:center;width:100%;background:#1d2358;color:#fff!important;font-size:18px;padding:16px 20px;border-radius:14px;font-weight:800;text-decoration:none!important;margin-top:6px}
.gt .gt-dt a.gt-dt__btn:hover{background:#ff4d00}
.gt .gt-dt-side{background:var(--gt-accent-soft);border-radius:16px;padding:22px 24px}
.gt .gt-dt-side .gt-card__title{font-size:19px!important}
.gt .gt-dt-side ul{display:grid;gap:12px;margin:0 0 4px!important;padding:0!important;list-style:none!important}
.gt .gt-dt-side ul li{display:flex!important;align-items:flex-start;gap:12px;margin:0!important;padding:0!important;font-size:15.5px;line-height:1.45!important;list-style:none!important}
.gt .gt-dt-side ul li::before{content:""!important;display:block!important;flex:0 0 20px!important;align-self:flex-start!important;box-sizing:border-box!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;aspect-ratio:1/1;margin:1px 0 0!important;padding:0!important;border:0!important;border-radius:50%!important;position:static!important;transform:none!important;background:#ff4d00 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5'/%3E%3C/svg%3E") center/20px 20px no-repeat!important}
@container (min-width:760px){
  .gt .gt-dt-row{grid-template-columns:minmax(0,560px) minmax(0,1fr)}
}
@media(prefers-reduced-motion:no-preference){.gt .gt-dt__dot{animation:gtdt 1.2s infinite}}
@keyframes gtdt{50%{opacity:.2}}
@container (max-width:640px){
  .gt .gt-dt{transform:none}
  .gt .gt-dt .gt-dt__v{font-size:22px}
  .gt .gt-dt__body{padding:18px 18px 20px}
  .gt .gt-dt__head{padding:12px 18px}
}

/* ---------- Фото-карточка-афиша (картинка с готовым текстом, без обрезки) ---------- */
.gt .gt-photo--poster img{aspect-ratio:auto;height:auto;object-fit:contain}
.gt a.gt-photo--poster{transition:transform .2s,box-shadow .2s}
@media (hover:hover){
  .gt a.gt-photo--poster:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(0,0,0,.12)}
}
.gt .gt-photo--poster .gt-photo__link{margin-top:auto;padding-top:8px;font-weight:700;font-size:15.5px;color:var(--gt-accent-dark)}
.gt .gt-photo--poster .gt-photo__link::after{content:" →"}
.gt a.gt-photo--poster:hover .gt-photo__link{color:var(--gt-orange)}

/* ---------- Отзывы ---------- */
.gt .gt-reviews{column-count:1;column-gap:14px}
.gt .gt-review{break-inside:avoid;-webkit-column-break-inside:avoid;display:block;background:var(--gt-accent-soft);border-radius:14px;padding:22px 22px 18px;margin:0 0 14px}
.gt .gt-review__text{margin:0 0 16px!important;font-size:15.5px;line-height:1.55!important}
.gt .gt-review__who{display:flex;align-items:center;gap:12px}
.gt .gt-review__who img{flex:0 0 48px;width:48px;height:48px;border-radius:50%;object-fit:cover;background:#fff}
.gt .gt-review__who b{display:block;font-size:16px;line-height:1.3}
.gt .gt-review__who a{font-size:14px;font-weight:700;color:var(--gt-accent-dark)!important;text-decoration:none!important}
.gt .gt-review__who a:hover{color:var(--gt-orange)!important}
@container (min-width:640px){.gt .gt-reviews{column-count:2}}
@container (min-width:980px){.gt .gt-reviews{column-count:3}}

/* ---------- Интерактив «Подскажем, с чего начать» и фильтр вопросов ---------- */
.gt .gt-pick__tabs{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;margin:0 0 18px}
.gt button.gt-pick__btn,.gt button.gt-pick__chip{-webkit-appearance:none;appearance:none;font:inherit;cursor:pointer;text-transform:none;letter-spacing:normal}
.gt button.gt-pick__btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;width:100%;padding:16px 18px;background:#fff!important;border:1px solid var(--gt-line)!important;border-top:5px solid var(--gt-c1)!important;border-radius:12px;color:var(--gt-ink)!important;box-shadow:none;line-height:1.25;transition:transform .15s,background .15s}
.gt button.gt-pick__btn:nth-of-type(2){border-top-color:var(--gt-c2)!important}
.gt button.gt-pick__btn:nth-of-type(3){border-top-color:var(--gt-c3)!important}
.gt button.gt-pick__btn:nth-of-type(4){border-top-color:var(--gt-c4)!important}
.gt .gt-pick__btn b{font-size:18px;color:inherit}
.gt .gt-pick__btn small{font-size:14px;color:var(--gt-muted)}
.gt button.gt-pick__btn[aria-pressed="true"]{background:var(--gt-accent-soft)!important;border-color:var(--gt-accent)!important}
.gt button.gt-pick__btn:focus-visible,.gt button.gt-pick__chip:focus-visible{outline:3px solid var(--gt-yellow);outline-offset:2px}
.gt .gt-pick__panel{background:var(--gt-accent-soft);border-radius:14px;padding:22px 24px}
.gt .gt-pick__panel[hidden]{display:none}
.gt .gt-pick__panel .gt-card__title{font-size:20px!important}
.gt .gt-pick__q{margin:16px 0 0!important;font-size:15px;color:var(--gt-muted)}
.gt .gt-pick__q a{color:var(--gt-accent-dark)!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.gt .gt-pick__filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 16px}
.gt button.gt-pick__chip{padding:9px 18px;border:2px solid var(--gt-accent)!important;border-radius:999px;background:#fff!important;color:var(--gt-accent-dark)!important;font-weight:700;font-size:15px;line-height:1.2;box-shadow:none}
.gt button.gt-pick__chip[aria-pressed="true"]{background:var(--gt-accent)!important;color:#fff!important}
.gt details.gt-faq[hidden]{display:none}
@container (min-width:560px){.gt .gt-pick__tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (min-width:900px){.gt .gt-pick__tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}

/* ---------- Афиша мастер-классов ---------- */
.gt .gt-media{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:var(--gt-accent-soft)}
.gt .gt-media--ph{display:flex;align-items:center;justify-content:center;color:var(--gt-muted);font-size:14px;border-bottom:1px solid var(--gt-line)}
.gt .gt-photo>img.gt-media{border-radius:0}
.gt .gt-dates{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}
.gt a.gt-date{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 20px;background:var(--gt-accent-soft);border:2px solid var(--gt-accent);border-radius:14px;text-decoration:none!important;color:var(--gt-accent-dark)!important;transition:background .15s,color .15s}
.gt a.gt-date b{font-size:18px;line-height:1.2;color:inherit}
.gt a.gt-date span{font-size:14px;opacity:.8}
.gt a.gt-date:hover{background:var(--gt-accent);color:#fff!important}
.gt a.gt-date.is-past{opacity:.5;border-style:dashed}
.gt .gt-events{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.gt .gt-event{display:flex;flex-direction:column;background:#fff;border:1px solid var(--gt-line);border-radius:14px;overflow:hidden;scroll-margin-top:100px}
.gt .gt-event:target{box-shadow:0 0 0 3px var(--gt-orange)}
.gt .gt-event.is-past{opacity:.65}
.gt .gt-event__body{display:flex;flex-direction:column;gap:8px;padding:18px 20px 20px;flex:1 1 auto}
.gt .gt-event .gt-event__tag{margin:0!important;font-size:14px;font-weight:700;color:var(--gt-accent-dark);text-transform:uppercase;letter-spacing:.04em}
.gt .gt-event .gt-event__tag span{font-weight:400;text-transform:none;letter-spacing:normal;color:var(--gt-muted)}
.gt .gt-event .gt-event__status{margin:0!important;display:inline-block;align-self:flex-start;padding:3px 10px;background:#eee;border-radius:999px;font-size:13px;font-weight:700}
.gt .gt-event .gt-event__status[hidden]{display:none}
.gt .gt-event__title{font-size:20px!important;margin:0!important}
.gt .gt-event .gt-event__desc{margin:0!important;font-size:15.5px}
.gt .gt-event__meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:6px 0 4px;padding:12px 0;border-top:1px solid var(--gt-line);border-bottom:1px solid var(--gt-line)}
.gt .gt-event__meta span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--gt-muted)}
.gt .gt-event__meta b{display:block;font-size:15.5px;line-height:1.3}
.gt a.gt-event__btn{align-self:flex-start;margin-top:auto}
.gt a.gt-event__btn[aria-disabled="true"]{background:#bbb!important;pointer-events:none}
@container (min-width:720px){
  .gt .gt-events{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@container (max-width:480px){
  .gt .gt-event__meta{grid-template-columns:1fr 1fr}
}

/* ---------- Тема gt--poster: палитра постера мастер-классов (голубой фон, синий, оранжевый, жёлтый, зелёный) ---------- */
.gt--poster{
--gt-accent:#1e88e5; --gt-accent-dark:#0d4fa3; --gt-accent-soft:#e3f2fd; --gt-line:#c5e0f7; --gt-strip:#1e88e5; --gt-cta-bg:#1d2358; --gt-c1:#ff5a1f; --gt-c2:#1e88e5; --gt-c3:#ffc83d; --gt-c4:#3cb878; --gt-orange:#ff5a1f; --gt-orange-dark:#e04a10; --gt-yellow:#ffc83d}


/* Vega: убрать наложение на картинках карточек */
.card-three__image-container::after {
   display: none !important;
}

/* ---------- Форма «Заявки»: капча не вылезает за рамку (масштаб ставит скрипт gt-formfit) ---------- */
.gt .gt-form{overflow-x:clip}
.gt .gt-form iframe{max-width:100%}
.gt .gt-form iframe.gt-fit2{
  max-width:none !important;
  transform:scale(var(--gt-k,1)) !important;
  transform-origin:0 0 !important;
  margin-bottom:var(--gt-mb,0) !important}

/* ---------- Подбор на «Вопрос-ответ»: панель открывается под нажатой карточкой ---------- */
.gt .gt-pick__tabs .gt-pick__panel{grid-column:1/-1}
/* ---------- Фильтр вопросов на телефоне: сетка 2 колонки ---------- */
@container (max-width:559px){
  .gt .gt-pick__filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .gt button.gt-pick__chip{width:100%;padding:10px 8px;font-size:14px;text-align:center}
  .gt button.gt-pick__chip[data-filter="all"]{grid-column:1/-1}
}

/* ---------- Летний клуб: галерея, плашка «сайт лагеря», сетка смен ---------- */
.gt .gt-gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 8px}
.gt .gt-gal img,.gt .gt-gal .gt-media{border-radius:12px;aspect-ratio:4/3;object-fit:cover;width:100%;display:block}
@container (min-width:640px){.gt .gt-gal{grid-template-columns:repeat(3,minmax(0,1fr))}}
.gt .gt-camp{background:var(--gt-cta-bg);color:#fff;border-radius:20px;padding:30px 28px;margin:0 0 48px;display:grid;grid-template-columns:minmax(0,1fr);gap:20px}
.gt .gt-camp .gt-title{color:#fff!important;margin:0 0 10px!important}
.gt .gt-camp p{color:#fff;margin:0 0 14px!important}
.gt .gt-camp ul{margin:0 0 18px!important;padding:0!important;list-style:none!important}
.gt .gt-camp li{position:relative;padding:0 0 6px 24px!important;margin:0!important;color:#fff}
.gt .gt-camp li::before{content:"✓"!important;display:block!important;position:absolute;left:0;top:0;color:var(--gt-yellow);font-weight:700}
.gt .gt-shift__meta{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:14px;color:var(--gt-muted);margin:0 0 4px}
.gt .gt-shift__meta b{color:var(--gt-ink)}
.gt .gt-hint-ph{font-size:13px;color:var(--gt-muted)}

/* ---------- Летний клуб v2: два формата, цифры, неделя, финансы ---------- */
.gt .gt-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 40px}
@container (min-width:700px){.gt .gt-stats{grid-template-columns:repeat(4,minmax(0,1fr))}}
.gt .gt-stat{background:var(--gt-cta-bg);color:#fff;border-radius:16px;padding:18px 16px;text-align:center}
.gt .gt-stat b{display:block;font-size:34px;line-height:1.1;color:var(--gt-yellow)}
.gt .gt-stat span{display:block;margin-top:6px;font-size:14px;line-height:1.3;color:#fff}

.gt .gt-fmt{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}
@container (min-width:760px){.gt .gt-fmt{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gt .gt-fmt__card{border-radius:20px;overflow:hidden;background:#fff;border:2px solid var(--gt-line)}
.gt .gt-fmt__head{padding:18px 22px;color:#fff}
.gt .gt-fmt__head small{display:block;font-size:13px;font-weight:700;letter-spacing:1px;text-transform:uppercase;opacity:.9}
.gt .gt-fmt__head h3{margin:4px 0 0!important;font-size:24px!important;line-height:1.2;color:#fff!important}
.gt .gt-fmt__card--city{border-color:#ff7a3d}
.gt .gt-fmt__card--city .gt-fmt__head{background:linear-gradient(135deg,#ff7a3d,#ff4d00)}
.gt .gt-fmt__card--country{border-color:var(--gt-cg)}
.gt .gt-fmt__card--country .gt-fmt__head{background:linear-gradient(135deg,var(--gt-cg),var(--gt-cg-dark))}
.gt .gt-fmt__body{padding:18px 22px 22px}
.gt .gt-fmt__body p{margin:0 0 12px!important}
.gt .gt-fmt__body ul{margin:0 0 14px!important;padding:0!important;list-style:none!important}
.gt .gt-fmt__body li{position:relative;padding:0 0 7px 26px!important;margin:0!important}
.gt .gt-fmt__body li::before{content:""!important;display:block!important;position:absolute;left:2px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--gt-accent)!important}
.gt .gt-fmt__card--city li::before{background:#ff4d00!important}
.gt .gt-fmt__where{margin:0!important;padding:10px 14px;border-radius:10px;background:var(--gt-accent-soft);font-size:15px}
.gt .gt-fmt__card--city .gt-fmt__where{background:#fff0e8}

.gt .gt-badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;color:#fff;background:var(--gt-accent)}
.gt .gt-badge--city{background:#ff4d00}
.gt .gt-photo--city{border-top:6px solid #ff4d00}
.gt .gt-photo--country{border-top:6px solid var(--gt-cg)}
.gt .gt-sub{margin:26px 0 12px!important;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.gt .gt-sub h3{margin:0!important}

.gt .gt-week{list-style:none!important;margin:0 0 8px!important;padding:0!important;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;counter-reset:wk}
@container (min-width:760px){.gt .gt-week{grid-template-columns:repeat(5,minmax(0,1fr))}}
.gt .gt-week li{counter-increment:wk;position:relative;background:#fff;border:1px solid var(--gt-line);border-top:5px solid var(--gt-c1);border-radius:12px;padding:14px 14px 14px 14px!important;margin:0!important}
.gt .gt-week li:nth-child(2){border-top-color:var(--gt-c2)}
.gt .gt-week li:nth-child(3){border-top-color:var(--gt-c3)}
.gt .gt-week li:nth-child(4){border-top-color:var(--gt-c4)}
.gt .gt-week li::before{content:counter(wk)!important;display:inline-flex!important;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--gt-accent)!important;color:#fff;font-weight:700;font-size:14px;margin:0 0 8px}
.gt .gt-week b{display:block;font-size:13px;color:var(--gt-muted);text-transform:uppercase;letter-spacing:.5px}
.gt .gt-week span{display:block;font-weight:700;margin-top:2px;line-height:1.3}

.gt .gt-tiers{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0 0 20px}
@container (min-width:700px){.gt .gt-tiers{grid-template-columns:repeat(3,minmax(0,1fr))}}
.gt .gt-tier{background:#fff;border:2px solid var(--gt-line);border-radius:16px;padding:20px 20px 18px}
.gt .gt-tier small{display:block;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--gt-muted)}
.gt .gt-tier b{display:block;font-size:30px;line-height:1.15;margin:6px 0 4px;color:var(--gt-ink)}
.gt .gt-tier span{display:block;font-size:15px;color:var(--gt-muted)}
.gt .gt-tier--best{border-color:var(--gt-c1);box-shadow:0 6px 18px rgba(255,77,0,.12)}
.gt .gt-pay{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;margin:0 0 20px}
@container (min-width:760px){.gt .gt-pay{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gt .gt-pay__card{border-radius:18px;padding:22px 24px}
.gt .gt-pay__card h3{margin:0 0 8px!important;font-size:21px!important}
.gt .gt-pay__card p{margin:0 0 10px!important}
.gt .gt-pay__card--club{background:var(--gt-accent-soft);border:2px solid var(--gt-line)}
.gt .gt-pay__card--tb{background:#ffdd2d;color:#333;border:2px solid #ffdd2d}
.gt .gt-pay__card--tb h3,.gt .gt-pay__card--tb p,.gt .gt-pay__card--tb li{color:#333!important}
.gt .gt-pay__card ul{margin:0 0 14px!important;padding:0!important;list-style:none!important}
.gt .gt-pay__card li{position:relative;padding:0 0 6px 24px!important;margin:0!important}
.gt .gt-pay__card li::before{content:"✓"!important;display:block!important;position:absolute;left:0;top:0;font-weight:700}
.gt .gt-pay__terms{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.gt .gt-pay__terms span{padding:6px 14px;border-radius:999px;font-weight:700;font-size:15px;background:#fff;color:#333}
.gt a.gt-btn--tb{background:#333;color:#fff!important}
.gt a.gt-btn--tb:hover{background:#000;color:#ffdd2d!important}
.gt .gt-incl{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin:0 0 8px}
@container (min-width:700px){.gt .gt-incl{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gt .gt-incl div{background:#fff;border:1px solid var(--gt-line);border-radius:12px;padding:14px 16px}
.gt .gt-incl b{display:block;color:var(--gt-accent-dark);margin-bottom:2px}
.gt .gt-incl span{font-size:15px;color:var(--gt-muted)}
.gt .gt-xx{display:inline-block;padding:0 8px;border-radius:6px;background:#fff3c4;color:#6a4b00;font-weight:800;letter-spacing:1px}
.gt .gt-themes{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@container (min-width:700px){.gt .gt-themes{grid-template-columns:repeat(3,minmax(0,1fr))}}
.gt .gt-theme{background:#fff;border:1px solid var(--gt-line);border-radius:14px;padding:16px 18px}
.gt .gt-theme small{display:block;font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--gt-c1)}
.gt .gt-theme b{display:block;font-size:18px;margin:4px 0}
.gt .gt-theme span{font-size:15px;color:var(--gt-muted)}
@container (min-width:560px){.gt .gt-pick--3 .gt-pick__tabs{grid-template-columns:minmax(0,1fr)}}
@container (min-width:760px){.gt .gt-pick--3 .gt-pick__tabs{grid-template-columns:repeat(3,minmax(0,1fr))}}
.gt .gt-tier b .gt-xx{display:inline-block;margin-right:4px}
.gt .gt-tier b{display:flex;flex-wrap:wrap;align-items:baseline}

/* ---------- Летний клуб v3: маркеры, цифры недели, цветовое разделение, переключатель дня ---------- */
/* маркеры списков: полный набор !important, чтобы тема Vega не меняла размеры */
.gt .gt-fmt__body li,.gt .gt-pay__card li,.gt .gt-camp li{position:relative!important;padding:0 0 8px 30px!important;margin:0!important;list-style:none!important}
.gt .gt-fmt__body li::before{content:""!important;display:block!important;position:absolute!important;left:4px!important;top:9px!important;width:12px!important;min-width:12px!important;max-width:12px!important;height:12px!important;min-height:12px!important;max-height:12px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;transform:none!important;background:var(--gt-accent)!important}
.gt .gt-fmt__card--city li::before{background:#ff4d00!important}
.gt .gt-pay__card li::before,.gt .gt-camp li::before{content:""!important;display:block!important;position:absolute!important;left:0!important;top:5px!important;width:20px!important;min-width:20px!important;max-width:20px!important;height:20px!important;min-height:20px!important;max-height:20px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;transform:none!important;color:transparent!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23333' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5'/%3E%3C/svg%3E") center/20px 20px no-repeat!important}
.gt .gt-camp li::before{background:#ffc83d url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%231f3a5f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5.5 10.5l3 3 6-6.5'/%3E%3C/svg%3E") center/20px 20px no-repeat!important}
/* неделя: цифры без счётчиков */
.gt .gt-week li::before{content:none!important;display:none!important}
.gt .gt-week i{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--gt-accent);color:#fff;font-style:normal;font-weight:700;font-size:15px;line-height:1;margin:0 0 8px}
/* город и загород: цветовое разделение карточек смен */
.gt .gt-photo--city{background:#fff4ec!important;border:2px solid #ff7a3d!important;border-top-width:2px!important}
.gt .gt-photo--country{background:var(--gt-cg-soft)!important;border:2px solid var(--gt-cg)!important;border-top-width:2px!important}
.gt .gt-shift__strip{padding:9px 16px;font-size:13px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#fff}
.gt .gt-shift__strip--city{background:linear-gradient(135deg,#ff7a3d,#ff4d00)}
.gt .gt-shift__strip--country{background:linear-gradient(135deg,var(--gt-cg),var(--gt-cg-dark))}
.gt .gt-sub{padding:12px 16px;border-radius:12px;margin:26px 0 14px!important}
.gt .gt-sub--city{background:#fff0e8;border-left:6px solid #ff4d00}
.gt .gt-sub--country{background:var(--gt-cg-soft);border-left:6px solid var(--gt-cg)}
.gt .gt-tier--city{border-color:#ffb594;background:#fff9f5}
.gt .gt-tiers--4{grid-template-columns:minmax(0,1fr)}
@container (min-width:560px){.gt .gt-tiers--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@container (min-width:900px){.gt .gt-tiers--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* карточки рассрочки: кнопки на одной линии снизу */
.gt .gt-pay__card{display:flex!important;flex-direction:column}
.gt .gt-pay__card .gt-btns{margin-top:auto!important;padding-top:6px}
.gt .gt-pay__card ul{margin-bottom:16px!important}
/* переключатель распорядка дня */
.gt .gt-tabsw{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px}
.gt button.gt-tabsw__btn{-webkit-appearance:none;appearance:none;font:inherit;cursor:pointer;padding:12px 22px;border-radius:999px;font-weight:700;font-size:16px;line-height:1.2;background:#fff!important;color:var(--gt-ink)!important;border:2px solid var(--gt-line)!important;box-shadow:none;text-transform:none;letter-spacing:normal}
.gt button.gt-tabsw__btn--city[aria-selected="true"]{background:#ff4d00!important;border-color:#ff4d00!important;color:#fff!important}
.gt button.gt-tabsw__btn--country[aria-selected="true"]{background:var(--gt-cg)!important;border-color:var(--gt-cg)!important;color:#fff!important}
.gt button.gt-tabsw__btn:focus-visible{outline:3px solid var(--gt-yellow);outline-offset:2px}
.gt .gt-day[hidden]{display:none}
.gt table.gt-table--city th{background:#ff4d00!important}
.gt table.gt-table--city tr:nth-child(even) td{background:#fff0e8!important}

/* зелёная гамма загорода под баннер; баннеры в карточках форматов */
.gt{--gt-cg:#6a9a1f;--gt-cg-dark:#3f6b10;--gt-cg-soft:#f0f7e2}
.gt .gt-fmt__card--country li::before{background:var(--gt-cg)!important}
.gt .gt-fmt__card--country .gt-fmt__where{background:var(--gt-cg-soft)}
.gt .gt-sub--country .gt-badge,.gt .gt-photo--country .gt-badge{background:var(--gt-cg)!important}
.gt .gt-photo--country .gt-card__title,.gt .gt-sub--country .gt-card__title{color:var(--gt-cg-dark)!important}
.gt .gt-photo--country a{color:var(--gt-cg-dark)}
.gt .gt-fmt__img{display:block;width:100%!important;height:auto!important;aspect-ratio:3/1;object-fit:cover;margin:0!important;border-radius:0!important}
.gt .gt-lead__cta{margin:6px 0 22px}
.gt .gt-photo--city .gt-media--ph{background:#ffe6d6!important}
.gt .gt-photo--country .gt-media--ph{background:#e3efc9!important}
.gt .gt-photo--city .gt-card__title,.gt .gt-sub--city .gt-card__title{color:#b83700!important}
.gt .gt-photo--city a{color:#b83700}


/* ==========================================================================
   GoodTalk Camp — тема gt--camp («Вечерний синий»)
   Вставить в user.css темы vegacamp ПОСЛЕ всего содержимого gt-user.css.
   Применение: <div class="gt gt--camp">
   Зелёного нет: загородные смены (--gt-cg) окрашены тёмно-синим,
   городские недели остаются оранжевыми.
   ========================================================================== */
.gt--camp{
  --gt-accent:#2f5bb8; --gt-accent-dark:#1f3a7a; --gt-accent-soft:#eef2fa; --gt-line:#d5deef;
  --gt-strip:#1f3a7a; --gt-cta-bg:#1f3a7a;
  --gt-orange:#e03f00; --gt-orange-dark:#b83300; --gt-yellow:#ffc83d;
  --gt-c1:#e03f00; --gt-c2:#2f5bb8; --gt-c3:#ffc83d; --gt-c4:#1f3a7a;
  --gt-cg:#2f5bb8; --gt-cg-dark:#1f3a7a; --gt-cg-soft:#eef2fa;
}
/* рамка записи — в цветах кэмпа */
.gt--camp .gt-book{background:linear-gradient(135deg,#2f5bb8,#1f3a7a)}
/* заглушки фото загородных смен — без зелёного */
.gt--camp .gt-photo--country .gt-media--ph,
.gt--camp .gt-fmt__card--country .gt-media--ph{background:#dfe7f6!important}
.gt--camp .gt-fmt__card--city .gt-media--ph{background:#ffe6d6!important}
/* заглушка-баннер в карточке формата */
.gt--camp .gt-fmt__card .gt-media--ph{aspect-ratio:3/1;border-bottom:0}
/* плашка «Скоро» для смен 2027 */
.gt--camp .gt-soon{display:inline-block;margin:0 0 12px;padding:4px 12px;border-radius:999px;background:var(--gt-yellow);color:#1d2358;font-size:13px;font-weight:800;letter-spacing:.5px;text-transform:uppercase}

/* галерея: подпись заглушки по центру */
.gt--camp .gt-gal .gt-media--ph{display:flex;align-items:center;justify-content:center;text-align:center}
/* строка под формой внутри синей рамки */
.gt--camp .gt-book .gt-book__note{margin:16px 0 0!important;font-size:15px;color:#fff}
.gt--camp .gt-book .gt-book__note a{color:#fff!important;text-decoration:underline;text-underline-offset:3px}

/* скрыть заголовок темы на страницах, где есть наш H1 (без utils.html, визуальный редактор работает) */
.layout-main:has(.gt h1.gt-title) .layout-main__title{display:none!important}

/* плашка «Скоро» в карточке смены не растягивается */
.gt--camp .gt-soon{align-self:flex-start}

/* заглушки сезонных страниц: баннер 3:1 и карточки «Английский сезона» */
.gt--camp .gt-media--banner{aspect-ratio:3/1;border-radius:14px;border-bottom:0}
.gt--camp .gt-wordcard{text-align:center;padding:18px 14px}
.gt--camp .gt-wordcard b{display:block;font-size:22px;line-height:1.2;color:var(--gt-accent-dark)}
.gt--camp .gt-wordcard span{display:block;margin-top:4px;font-size:15px;color:var(--gt-muted)}
.gt--camp .gt-words{grid-template-columns:repeat(2,minmax(0,1fr))}
@container (min-width:720px){.gt--camp .gt-words{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* «Смотрите также» / «Другие каникулы»: текст строки по центру стрелки (тема Vega добавляет отступы li) */
.gt--camp ul.gt-registry li{margin:0!important;padding:0!important;line-height:1.4!important}
.gt--camp ul.gt-registry li>a{margin:0!important;min-height:54px;align-items:center!important}
.gt--camp ul.gt-registry li>a>*{margin:0!important}

/* «Английский сезона» на сезонных страницах: цвета сезонов (без зелёного) и кнопка «Другие слова» */
.gt--camp .gt-play[data-season="winter"]{--p-a:#2f5bb8;--p-soft:#eef2fa;--p-dark:#1f3a7a}
.gt--camp .gt-play[data-season="autumn"]{--p-a:#d9480f;--p-soft:#fff1e6;--p-dark:#9a3412}
.gt--camp .gt-play[data-season="spring"]{--p-a:#d6457f;--p-soft:#fdeef4;--p-dark:#9d174d}
.gt--camp .gt-play__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-top:16px}
.gt--camp .gt-play__bar .gt-play__status{margin:0!important}
.gt--camp .gt-play .gt-play__more{padding:10px 18px;border:2px solid var(--p-a)!important;border-radius:999px;background:#fff!important;color:var(--p-dark)!important;font-weight:700;font-size:15px;line-height:1.2;box-shadow:none}
.gt--camp .gt-play .gt-play__more:hover{background:var(--p-a)!important;color:#fff!important}
.gt--camp .gt-play .gt-play__more:focus-visible{outline:3px solid var(--gt-yellow);outline-offset:2px}

/* подсказка после блока (gt-hint + gt-mt) не прилипает: у gt-hint отрицательный верхний отступ */
.gt--camp .gt-hint.gt-mt{margin-top:18px!important}

/* фильтр смен: скрытая карточка не показывается (у gt-photo display:flex) */
.gt--camp [data-kind][hidden]{display:none!important}

/* галерея сразу после блока «текст + фото» или карточек не склеивается */
.gt--camp .gt-split + .gt-gal,.gt--camp .gt-incl + .gt-gal,.gt--camp .gt-grid + .gt-gal{margin-top:14px}

/* чек-лист «Что взять с собой» */
.gt--camp .gt-checklist{display:grid;grid-template-columns:minmax(0,1fr);gap:14px;background:var(--gt-accent-soft);border-radius:16px;padding:20px}
@container (min-width:720px){.gt--camp .gt-checklist{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gt--camp .gt-check__group{background:#fff;border:1px solid var(--gt-line);border-radius:12px;padding:16px 18px}
.gt--camp ul.gt-check{margin:0!important;padding:0!important;list-style:none!important;display:grid;gap:4px}
.gt--camp ul.gt-check li{margin:0!important;padding:0!important;list-style:none!important}
.gt--camp .gt-check label{display:flex;align-items:flex-start;gap:10px;padding:6px 0;cursor:pointer;font-size:15.5px;line-height:1.4}
.gt--camp .gt-check input[type="checkbox"]{flex:0 0 20px;width:20px;height:20px;margin:1px 0 0;accent-color:var(--gt-orange);cursor:pointer}
.gt--camp .gt-check input:checked + span{color:var(--gt-muted);text-decoration:line-through}
.gt--camp .gt-check__bar{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.gt--camp .gt-check__status{margin:0!important;font-weight:700;color:var(--gt-accent-dark)}
.gt--camp button.gt-check__reset{-webkit-appearance:none;appearance:none;font:inherit;cursor:pointer;padding:10px 18px;border:2px solid var(--gt-accent)!important;border-radius:999px;background:#fff!important;color:var(--gt-accent-dark)!important;font-weight:700;font-size:15px;line-height:1.2;box-shadow:none;text-transform:none;letter-spacing:normal}
.gt--camp button.gt-check__reset:hover{background:var(--gt-accent)!important;color:#fff!important}
.gt--camp .gt-facts.gt-mt{margin-top:18px!important}

/* чек-лист: кнопки «Скачать список» и «Сбросить» */
.gt--camp .gt-check__actions{display:flex;flex-wrap:wrap;gap:10px}
.gt--camp button.gt-check__download{-webkit-appearance:none;appearance:none;font:inherit;cursor:pointer;padding:10px 18px;border:2px solid var(--gt-orange)!important;border-radius:999px;background:var(--gt-orange)!important;color:#fff!important;font-weight:700;font-size:15px;line-height:1.2;box-shadow:none;text-transform:none;letter-spacing:normal}
.gt--camp button.gt-check__download:hover{background:var(--gt-orange-dark)!important;border-color:var(--gt-orange-dark)!important}
.gt--camp button.gt-check__download:focus-visible,.gt--camp button.gt-check__reset:focus-visible{outline:3px solid var(--gt-yellow);outline-offset:2px}
@media (max-width:700px){.gt--camp .gt-check__actions{width:100%}.gt--camp .gt-check__actions button{flex:1 1 auto}}

/* чек-лист v2: раскрывающиеся разделы и свой квадратик, выровненный по первой строке текста */
.gt--camp .gt-checklist{grid-template-columns:minmax(0,1fr)!important;gap:10px}
.gt--camp details.gt-check__group{padding:0;overflow:hidden}
.gt--camp details.gt-check__group>summary{display:flex;align-items:center;gap:12px;padding:16px 18px;cursor:pointer;list-style:none}
.gt--camp details.gt-check__group>summary::-webkit-details-marker{display:none}
.gt--camp details.gt-check__group>summary::after{content:"";flex:0 0 10px;width:10px;height:10px;margin-left:4px;border-right:2px solid var(--gt-accent-dark);border-bottom:2px solid var(--gt-accent-dark);transform:rotate(45deg) translateY(-3px);transition:transform .2s}
.gt--camp details.gt-check__group[open]>summary::after{transform:rotate(-135deg) translateY(-3px)}
.gt--camp details.gt-check__group>summary .gt-card__title{margin:0!important;flex:1 1 auto}
.gt--camp .gt-check__count{flex:0 0 auto;padding:3px 10px;border-radius:999px;background:var(--gt-accent-soft);color:var(--gt-accent-dark);font-size:13px;font-weight:700;line-height:1.4;white-space:nowrap}
.gt--camp .gt-check__count.is-done{background:var(--gt-orange);color:#fff}
.gt--camp details.gt-check__group>ul.gt-check{padding:0 18px 14px!important;border-top:1px solid var(--gt-line)}
.gt--camp details.gt-check__group>summary:focus-visible{outline:3px solid var(--gt-yellow);outline-offset:-3px}
.gt--camp .gt-check label{position:relative;display:flex!important;align-items:flex-start!important;gap:12px;padding:8px 0;font-size:15.5px!important;line-height:22px!important}
.gt--camp .gt-check label input[type="checkbox"]{position:absolute!important;left:0;top:8px;width:22px!important;height:22px!important;margin:0!important;opacity:0!important;cursor:pointer}
.gt--camp .gt-check__box{flex:0 0 22px;width:22px;height:22px;margin:0;border:2px solid #b9c4d8;border-radius:6px;background:#fff;box-sizing:border-box;transition:background .15s,border-color .15s}
.gt--camp .gt-check input:checked + .gt-check__box{background:var(--gt-orange) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 10.5l3.2 3.2L15 7'/%3E%3C/svg%3E") center/18px 18px no-repeat;border-color:var(--gt-orange)}
.gt--camp .gt-check input:focus-visible + .gt-check__box{outline:3px solid var(--gt-yellow);outline-offset:2px}
.gt--camp .gt-check input:checked ~ span{color:var(--gt-muted);text-decoration:line-through}
.gt--camp .gt-check label span{flex:1 1 auto;min-width:0}
.gt--camp details.gt-check__group>ul.gt-check{padding-top:8px!important}

/* шаги на 3 и 4 карточки; тарифы без цены */
@container (min-width:760px){.gt--camp .gt-week--3{grid-template-columns:repeat(3,minmax(0,1fr))}.gt--camp .gt-week--4{grid-template-columns:repeat(4,minmax(0,1fr))}}
.gt--camp .gt-tier b{margin:10px 0 8px}
.gt--camp .gt-tier b .gt-soon{margin:0;font-size:12px}
.gt--camp .gt-tier strong{display:block;font-size:18px;line-height:1.3;color:var(--gt-ink);margin-bottom:2px}
.gt--camp .gt-sub .gt-card__title{margin:0!important}

/* «Вопросы и ответы»: последняя тема на телефоне во всю ширину */
@container (max-width:559px){.gt--camp .gt-pick__filters .gt-pick__chip:last-child:nth-child(even){grid-column:1/-1}}
