/* SNOW SCHOOL — Figma 670:6163. Hodnoty calc(N * var(--u)) = design px pri 1920. Prefix ls-. */
.ls-page { background: #fff; }
.ls-sec { max-width: var(--maxw); margin-inline: auto; padding: calc(64 * var(--u)) calc(95 * var(--u)); color: var(--c-navy-2); }
.ls-h { font-weight: 700; font-size: max(26px, calc(45 * var(--u))); line-height: calc(54.9 / 45); color: var(--c-navy-2); }
.ls-h--up { text-transform: uppercase; }

/* tlacitko (Figma Button: #cc994a, r7, 20/700 verzalky) */
.ls-btn { display: inline-flex; align-items: center; justify-content: center; padding: calc(16 * var(--u)) max(20px, calc(40 * var(--u))); min-height: 44px; border-radius: 7px; background: #cc994a; color: #fff; font-weight: 700; font-size: max(14px, calc(20 * var(--u))); line-height: calc(24.4 / 20); text-transform: uppercase; text-align: center; transition: background-color .2s; }
.ls-btn:hover { background: var(--c-navy); }
.ls-btn--full { display: flex; width: 100%; height: calc(56 * var(--u)); padding-block: 0; }
.ls-btn--sm { width: calc(236 * var(--u)); min-width: 120px; height: calc(62 * var(--u)); padding: 0 8px; font-size: max(12px, calc(17 * var(--u))); line-height: calc(22 / 17); }

/* text + fotka (Figma 870 | 100 | 760 x 560) */
.ls-split { display: flex; gap: calc(100 * var(--u)); align-items: flex-start; }
.ls-split--center { align-items: center; }
.ls-split__txt { flex: 0 1 calc(870 * var(--u)); display: flex; flex-direction: column; align-items: flex-start; }
.ls-split__img { flex: none; width: calc(760 * var(--u)); height: calc(560 * var(--u)); object-fit: cover; border-radius: 7px; }
.ls-split__img--shadow { box-shadow: 0 4px 40px rgba(0, 0, 0, .10); }

.ls-intro { padding-top: calc(124 * var(--u)); }
.ls-intro__p { margin-top: calc(24 * var(--u)); font-size: max(16px, calc(22 * var(--u))); line-height: calc(34 / 22); letter-spacing: 0; }
.ls-intro__p a { text-decoration: underline; text-underline-offset: 2px; }
.ls-intro__btn { margin-top: calc(24 * var(--u)); height: calc(64 * var(--u)); padding-block: 0; }

/* srovnani lekci (Figma 840:3134: #021675, pad 24/32, sloupce 246 + 5x284) */
.ls-compare { padding-top: calc(124 * var(--u)); }
.ls-cmp { position: relative; margin-top: calc(24 * var(--u)); background: var(--c-navy-2); border-radius: 7px; padding: calc(24 * var(--u)) calc(32 * var(--u)); color: #fff; }
.ls-cmp__t { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: max(13px, calc(17 * var(--u))); line-height: calc(25 / 17); letter-spacing: 0; }
.ls-cmp__t th, .ls-cmp__t td { padding: 0 calc(12 * var(--u)); text-align: center; vertical-align: middle; font-weight: 500; }
.ls-cmp__t thead td { width: calc(246 * var(--u)); }
.ls-cmp__t thead th { height: calc(100 * var(--u)); font-weight: 700; font-size: max(14px, calc(20 * var(--u))); line-height: calc(27 / 20); }
.ls-cmp__t tbody tr { height: calc(63 * var(--u)); border-top: 1px solid rgba(255, 255, 255, .18); }
.ls-cmp__t tbody th { text-align: left; padding-left: 0; font-weight: 700; }
.ls-cmp__t tr.ls-cmp__buy { height: calc(93 * var(--u)); }
.ls-cmp__foot { display: flex; justify-content: space-between; gap: 12px 24px; flex-wrap: wrap; margin-top: calc(24 * var(--u)); font-size: max(13px, calc(17 * var(--u))); line-height: calc(25 / 17); letter-spacing: 0; }
.ls-cmp__help { font-weight: 700; }
.ls-cmp__help span { opacity: .6; margin-right: calc(4 * var(--u)); }
.ls-cmp__help a { color: #cc994a; text-decoration: underline; text-underline-offset: 2px; }
.ls-cmp__help a:hover { color: var(--c-navy); }

/* proc u nas */
.ls-why { padding-top: calc(125 * var(--u)); }
.ls-why__list { display: flex; flex-direction: column; gap: calc(20 * var(--u)); margin-top: calc(32 * var(--u)); font-weight: 500; font-size: max(15px, calc(18 * var(--u))); line-height: calc(26 / 18); letter-spacing: 0; }
.ls-why__list li { display: flex; align-items: center; gap: 12px; }
.ls-why__dot { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: #cc994a; color: #fff; }
.ls-why__dot .cs-ico { width: 16px; height: 16px; }
.ls-why__btn { margin-top: calc(32 * var(--u)); height: calc(72 * var(--u)); padding-block: 0; }

/* karty lekci / balicku (Figma ProgramCard: bily, obrys #021675, r7, fotka 280) */
.ls-find__eyebrow { font-weight: 800; font-size: max(10px, calc(11 * var(--u))); line-height: calc(13.4 / 11); letter-spacing: 1.4px; text-transform: uppercase; color: var(--c-gold); }
.ls-find__h { margin-top: calc(8 * var(--u)); font-weight: 800; font-size: max(26px, calc(42 * var(--u))); line-height: calc(46 / 42); letter-spacing: .3px; text-transform: uppercase; color: var(--c-navy); }
.ls-cards { display: grid; gap: calc(32 * var(--u)); margin-top: calc(32 * var(--u)); }
.ls-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ls-cards--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ls-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--c-navy-2); border-radius: 7px; overflow: hidden; }
.ls-card__img { width: 100%; height: calc(280 * var(--u)); min-height: 180px; object-fit: cover; border-radius: 7px; }
.ls-card__body { flex: 1; display: flex; flex-direction: column; padding: calc(32 * var(--u)); }
.ls-card__t { font-weight: 700; font-size: max(19px, calc(24 * var(--u))); line-height: calc(32 / 24); color: var(--c-navy-2); letter-spacing: 0; }
.ls-card__p { margin-top: calc(12 * var(--u)); font-weight: 500; font-size: max(15px, calc(18 * var(--u))); line-height: calc(28 / 18); color: #666; letter-spacing: 0; }
.ls-card .ls-btn { margin-top: auto; }
.ls-card__p { margin-bottom: calc(24 * var(--u)); }
.ls-find .ls-card__p { min-height: calc(84 * var(--u)); }

.ls-find { padding-top: calc(64 * var(--u)); }
.ls-pkg { padding-top: calc(70 * var(--u)); }
.ls-pkg .ls-cards { margin-top: calc(32 * var(--u)); }

/* info karty (Figma InfoCard 408x268, #021675) */
.ls-info { padding-top: calc(130 * var(--u)); }
.ls-info__list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: calc(32 * var(--u)); }
.ls-info__card { min-height: calc(268 * var(--u)); padding: calc(92 * var(--u)) calc(32 * var(--u)) calc(32 * var(--u)); border-radius: 7px; background: var(--c-navy-2); color: #fff; box-shadow: 0 4px 24px rgba(0, 0, 0, .05); }
.ls-info__t { font-weight: 700; font-size: max(19px, calc(24 * var(--u))); line-height: calc(32 / 24); letter-spacing: 0; }
.ls-info__p { margin-top: calc(12 * var(--u)); max-width: calc(344 * var(--u) + 20px); font-weight: 500; font-size: max(14px, calc(16 * var(--u))); line-height: calc(25 / 16); letter-spacing: 0; }

@media (max-width: 1279px) {
  .ls-sec { padding-inline: var(--gut); }
  .ls-info__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ls-cmp { overflow-x: auto; }
  .ls-cmp__t { min-width: 960px; }
}
@media (max-width: 1023px) {
  .ls-split, .ls-split--center { flex-direction: column; align-items: stretch; gap: 32px; }
  .ls-split__txt { flex: none; }
  .ls-split__img { width: 100%; height: auto; aspect-ratio: 760 / 560; }
  .ls-cards--3 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .ls-sec { padding-block: 32px !important; }
  .ls-intro { padding-top: 48px !important; }
  .ls-cards--3, .ls-cards--2, .ls-info__list { grid-template-columns: 1fr; gap: 20px; }
  .ls-cmp { padding: 16px; margin-top: 20px; }
  .ls-cmp__t { min-width: 820px; }
  .ls-cmp__t thead td { width: 150px; }
  .ls-info__card { min-height: 0; padding-top: 28px; }
  .ls-card__body { padding: 20px; }
  .ls-btn--full { height: 48px; }
  .ls-intro__btn, .ls-why__btn { height: 52px; }
  .ls-cmp__foot { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { .ls-btn { transition: none; } }
