/* ── Катарсис: надстройка над шаблоном Wildex ── */
/* Bricolage Grotesque без кириллицы — русские буквы берутся из Manrope */
:root{ --accent-font:"Bricolage Grotesque","Manrope",sans-serif; }
html{ scroll-behavior:smooth; }
[id]{ scroll-margin-top:90px; }

.navbar-brand img[src*="lk-logo"], .footer-logo-royal img[src*="lk-logo"]{ width:170px; height:auto; }

/* шаблон пишет кнопки и меню с Каждой Заглавной — для русского это плохо */
.btn-default, .btn-default-royal, .btn-default-prime, .readmore-btn, .main-menu ul li a, .slicknav_menu a,
.section-title h3, .section-sub-title h3{ text-transform:none !important; }
.section-title h3::first-letter, .section-sub-title h3::first-letter{ text-transform:uppercase; }

/* hero: вторая кнопка */
.hero-btn{ display:flex; flex-wrap:wrap; gap:14px; }
.lk-btn-ghost{ background:transparent !important; border:1px solid var(--accent-color); color:var(--white-color, #fff) !important; }
.lk-btn-ghost::before{ display:none !important; }

/* узнавание: список на всю ширину, кнопка под ним */
#problem .about-body-royal{ flex-direction:column; }
#problem .lk-problems{ width:100% !important; }

/* 2. узнавание: 22 пункта в две колонки */
.lk-problems ul{ columns:2; column-gap:28px; padding:0; }
.lk-problems ul li{ break-inside:avoid; margin-bottom:10px; }

/* цепочка «Увидеть → понять → научиться действовать иначе» */
.lk-steps{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:12px; margin-top:50px; }
.lk-steps span{ background:var(--accent-color); color:var(--primary-color); font-family:var(--accent-font); font-weight:700;
  font-size:22px; padding:12px 24px; border-radius:40px; }
.lk-steps i{ font-style:normal; font-size:26px; font-weight:700; color:var(--accent-color); }

/* 4. тёмные колонки: заголовок над блоком */
.lk-int-head{ padding:100px 15px 50px; }
.lk-method-footer{ margin:40px 0 100px; }

/* 5. что меняется */
.lk-changes li{ margin-bottom:8px; }

/* 6. кейсы: 5 в ряд */
#cases .row:has(.lk-case-col){ display:grid; grid-template-columns:repeat(5,1fr); gap:24px; margin:0; }
#cases .lk-case-col{ width:auto; padding:0; }
#cases .trip-item-image-royal img{ aspect-ratio:3/4; object-fit:cover; object-position:top; }
.lk-story-tag{ font-weight:700; text-decoration:underline; color:inherit; }

/* 8. форматы */
.lk-price-lt{ font-weight:700; margin:0 0 8px; }
.lk-price-note{ font-size:14px; opacity:.8; margin:14px 0; }
.pricing-item-prime{ height:calc(100% - 30px); display:flex; flex-direction:column; }
.pricing-item-prime .pricing-btn-prime{ margin-top:auto; }

/* форма */
.lk-checks label{ display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.45; margin-bottom:10px; cursor:pointer; }
.lk-checks input{ margin-top:4px; flex:none; accent-color:var(--accent-color); }
.lk-msg{ margin-top:16px; font-weight:600; }
.lk-msg.ok{ color:#2e7d32; } .lk-msg.err{ color:#c62828; }
.lk-form-aside img{ width:100%; border-radius:20px; }

/* разделитель и блоки в запасе */
.lk-divider{ background:repeating-linear-gradient(45deg,#111 0 14px,#222 14px 28px); color:#fff; padding:60px 0; text-align:center; }
.lk-divider span{ font-family:var(--accent-font); font-size:40px; font-weight:700; display:block; }
.lk-divider p{ color:#ccc; margin:10px 0 0; }

/* лайтбокс кейсов */
.lk-lightbox{ position:fixed; inset:0; z-index:100000; background:rgba(0,0,0,.92); display:none; flex-direction:column; align-items:center; justify-content:center; padding:20px; }
.lk-lightbox.open{ display:flex; }
.lk-lb-title{ color:#fff; font-family:var(--accent-font); font-size:28px; font-weight:700; margin-bottom:14px; }
.lk-lb-imgs{ display:flex; gap:20px; max-height:82vh; overflow:auto; }
.lk-lb-imgs figure{ margin:0; text-align:center; }
.lk-lb-imgs img{ max-height:76vh; width:auto; max-width:44vw; border-radius:10px; display:block; }
.lk-lb-imgs figcaption{ color:var(--accent-color); font-weight:700; margin-top:8px; text-transform:uppercase; }
.lk-lb-close{ position:absolute; top:12px; right:20px; background:none; border:0; color:#fff; font-size:44px; cursor:pointer; line-height:1; }

@media (max-width:991px){
  #cases .row:has(.lk-case-col){ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:767px){
  .lk-problems ul{ columns:1; }
  #cases .row:has(.lk-case-col){ grid-template-columns:repeat(2,1fr); gap:14px; }
  .lk-steps span{ font-size:17px; padding:10px 16px; }
  .lk-int-head{ padding:70px 15px 30px; }
  .lk-lightbox{ justify-content:flex-start; padding-top:56px; }
  .lk-lb-imgs{ flex-direction:column; }
  .lk-lb-imgs img{ max-width:90vw; max-height:none; }
  .lk-divider span{ font-size:28px; }
}
