/* WINGS 2026 redesign — visual layer shared by the theme and student plugin. */
:root{
  --wings-navy:#052950;
  --wings-navy-2:#0e3768;
  --wings-yellow:#ffd450;
  --wings-yellow-strong:#ffc52f;
  --wings-blue:#dceeff;
  --wings-blue-strong:#6eb5ff;
  --wings-ivory:#fbf9f3;
  --wings-white:#fff;
  --wings-text:#44536a;
  --wings-muted:#5f6e83;
  --wings-line:rgba(29,50,84,.13);
  --wings-success:#187047;
  --wings-danger:#b42318;
  --wings-warning:#8a5a00;
  --wings-radius-sm:14px;
  --wings-radius:22px;
  --wings-radius-lg:32px;
  --wings-shadow:0 22px 64px rgba(29,50,84,.11);
  --wings-container:1360px;
  --wings-header-height:76px;
  --wings-header-height-scrolled:64px;
  --section-y:clamp(68px,5.5vw,96px);
  /* Отступ для якорей считается от сжатой шапки: к моменту приземления она
     всегда уже сжата, и расчёт по полной высоте оставлял лишний зазор. */
  --header-offset:calc(var(--wings-header-height-scrolled) + 20px);
  --motion-fast:160ms;
  --motion-ui:220ms;
  --motion-panel:300ms;
  /* 640 вместо 480: подъём на 26px за 480 мс читается как рывок, на этой
     дистанции движение должно успеть замедлиться. */
  --motion-reveal:640ms;
  --reveal-step:80ms;
  --ease-wings:cubic-bezier(.22,1,.36,1);
}

html{overflow-x:clip;scroll-padding-top:var(--header-offset)}
body{
  overflow-x:clip;
  color:var(--wings-text);
  background:var(--wings-ivory);
  background-image:none;
  font-family:'e-Ukraine',system-ui,sans-serif;
}
body::before,body::after{display:none}
.container{width:min(var(--wings-container),calc(100% - clamp(28px,5vw,72px)))}
.section{padding:var(--section-y) 0}
h1,h2,h3,.h2{color:var(--wings-navy);letter-spacing:-.025em}
p{line-height:1.65}
a{color:inherit}
button,input,select,textarea{font-family:inherit}
:where(img,video,iframe){max-width:100%}
:where(.hero-redesign__copy,.hero-redesign__media,.learning-redesign__grid>*,.about-grid>*,.faq-footer>*,.article-layout>*,.legal-layout>*){min-width:0}
:focus-visible{outline:3px solid #2878df;outline-offset:3px;box-shadow:0 0 0 2px #fff}
.section-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  width:max-content;
  margin-bottom:18px;
  padding:8px 13px;
  border:1px solid rgba(29,50,84,.13);
  border-radius:999px;
  background:rgba(255,255,255,.7);
  color:var(--wings-navy);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.section-kicker::before{
  content:"";
  width:9px;
  height:9px;
  border:2px solid var(--wings-yellow-strong);
  border-radius:50%;
  box-shadow:5px 0 0 -2px var(--wings-blue-strong);
}
.btn{
  min-height:48px;
  padding:14px 22px;
  border-radius:15px;
  font-size:13.5px;
  font-weight:600;
  box-shadow:none;
  will-change:auto;
}
.btn-primary{
  color:var(--wings-navy);
  background:var(--wings-yellow);
  box-shadow:0 12px 30px rgba(255,197,47,.25);
}
.btn-primary:focus-visible{background:var(--wings-yellow-strong);transform:none}
.btn-ghost-gradient{
  color:var(--wings-navy);
  background:transparent;
  border:1px solid var(--wings-line);
  box-shadow:none;
  backdrop-filter:none;
}

/* Header — один ряд: логотип, разделитель, меню, действия справа. */
.site-header{
  position:sticky;
  top:0;
  z-index:100;
  min-height:var(--wings-header-height);
  border-bottom:1px solid transparent;
  background:linear-gradient(90deg,#fdf8ec 0%,var(--wings-ivory) 50%,#eff4fb 100%);
  backdrop-filter:blur(14px);
  transition:background-color var(--motion-ui) ease,box-shadow var(--motion-ui) ease,border-color var(--motion-ui) ease;
}
/* После скролла шапка сжимается и становится полупрозрачной: она перекрывает
   содержимое, поэтому должна занимать меньше и явно отделяться тенью. */
.site-header.is-scrolled{
  border-color:#efe7d6;
  background:rgba(253,251,246,.92);
  box-shadow:0 12px 24px -18px rgba(18,49,92,.6);
}
.header-inner{
  position:relative;
  gap:20px;
  min-height:var(--wings-header-height);
  padding:0;
  transition:min-height var(--motion-ui) var(--ease-wings);
}
.site-header.is-scrolled .header-inner{min-height:var(--wings-header-height-scrolled)}
.logo{display:inline-flex;align-items:center;align-self:center}
.logo .wings-brand-asset{width:56px;transition:width var(--motion-ui) var(--ease-wings)}
.site-header.is-scrolled .logo .wings-brand-asset{width:44px}
.header-divider{width:1px;height:28px;flex:none;background:#e5ddcc}

.primary-nav{
  display:flex;
  flex:1;
  align-items:stretch;
  min-width:0;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.primary-nav .nav-list{gap:4px;height:100%;padding:0;border:0;background:transparent;box-shadow:none}
.primary-nav .nav-list > li{display:flex}
.primary-nav .nav-list > li > a{
  display:flex;
  align-items:center;
  height:100%;
  min-height:0;
  padding:8px 12px;
  border-radius:0;
  box-shadow:inset 0 -3px 0 transparent;
  color:#4a5c7a;
  font-size:15px;
  font-weight:600;
  white-space:nowrap;
  transition:color var(--motion-fast) ease,box-shadow var(--motion-fast) ease;
}
.primary-nav .nav-list > li > a:hover{background:transparent;color:var(--wings-navy)}
/* Жёлтое подчёркивание — единственный указатель текущего раздела, подменю нет. */
.primary-nav .nav-list > li > a[aria-current],
.primary-nav .nav-list > li.current-menu-item > a,
.primary-nav .nav-list > li > a.is-current{
  background:transparent;
  box-shadow:inset 0 -3px 0 var(--wings-yellow-strong);
  color:var(--wings-navy);
  font-weight:700;
}

.header-actions{display:flex;flex:none;align-items:center;gap:14px}
.header-phone{
  color:var(--wings-navy);
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
  text-decoration:none;
}
.header-phone:hover{color:var(--wings-navy-2);text-decoration:underline}
.header-account-btn{
  display:inline-flex;
  align-items:center;
  gap:8px;
  height:44px;
  min-height:0;
  padding:0 18px;
  border:1px solid #dfe7f2;
  border-radius:999px;
  background:#fff;
  color:var(--wings-navy);
  font-size:14px;
  font-weight:700;
  white-space:nowrap;
  text-decoration:none;
  transition:background-color .24s ease,border-color .24s ease,color .24s ease,box-shadow .24s ease;
}
.header-account-btn__icon{display:inline-flex;flex:none}
/* Кнопка внутри навигации существует только для раскрытого меню на телефоне.
   Правило выше задаёт .header-account-btn инлайн-флексом, поэтому прятать её
   нужно здесь же, иначе на десктопе «Кабінет» показывается дважды. */
.header-account-btn--mobile{display:none}
.header-account-btn:hover,
.header-account-btn:focus-visible{
  color:#fff;
  border-color:var(--wings-navy);
  background:var(--wings-navy);
  box-shadow:none;
  transform:none;
}
.header-enroll{
  display:inline-flex;
  align-items:center;
  gap:10px;
  height:44px;
  min-height:0;
  padding:0 22px;
  border-radius:999px;
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
  box-shadow:0 10px 24px -12px rgba(233,183,47,.9);
}
.header-enroll__arrow{display:inline-flex;flex:none}
/* В сжатом состоянии телефон уходит, а кабинет читается как ссылка: справа
   должна остаться одна кнопка, иначе две «таблетки» спорят за внимание. */
.site-header.is-scrolled .header-phone{display:none}
.site-header.is-scrolled .header-account-btn--desktop{
  height:auto;
  padding:0;
  border-color:transparent;
  background:transparent;
  font-size:14px;
}
.site-header.is-scrolled .header-account-btn--desktop:hover{color:var(--wings-navy-2);background:transparent}
.site-header.is-scrolled .header-account-btn__icon{display:none}
.site-header.is-scrolled .header-enroll{height:38px;padding:0 18px;font-size:14px;box-shadow:none}
.site-header.is-scrolled .header-enroll__arrow{display:none}
.site-header.is-scrolled .primary-nav .nav-list > li > a{font-size:14px}

@media(min-width:1181px){
  .header-account-btn--desktop{flex:none}
  /* Отступы внутри колонки задаёт gap, а построчное растягивание заголовка
     через scaleX убрано: оно подгоняло строки под один старый текст и ломало
     букву при любом другом. */
}

/* Home hero */
.hero-redesign{
  position:relative;
  overflow:hidden;
  /* 560 вместо 640: следующая секция должна заметно заглядывать в экран, иначе
     первый экран читается как вся страница. */
  min-height:560px;
  padding:6px 0 0;
  background:
    radial-gradient(circle at 14% 14%,rgba(255,212,80,.22),transparent 27%),
    radial-gradient(circle at 88% 28%,rgba(110,181,255,.18),transparent 30%),
    var(--wings-ivory);
}
.hero-redesign::before{
  content:"";
  position:absolute;
  inset:60px 0 0;
  z-index:1;
  opacity:.44;
  background:url('../img/wings-flight-path.png') center bottom/1120px auto no-repeat;
  pointer-events:none;
}
.hero-redesign::after{content:none}
/* Текстовая колонка тянется, фото фиксировано — как в макете. При обратном
   распределении заголовок не помещался в две строки и «WINGS -» повисало
   отдельной строкой. */
.hero-redesign__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);align-items:center;gap:clamp(28px,3vw,48px)}
/* Колонка собрана на gap, а не на отступах у каждого элемента: раньше интервалы
   задавались в четырёх местах и разъезжались при смене длины заголовка. */
.hero-redesign__copy{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:clamp(20px,2vw,30px);padding-bottom:0}
.hero-redesign__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  margin-bottom:0;
  padding:9px 20px;
  border:1px solid #f0e4c6;
  border-radius:999px;
  background:#fff;
  color:var(--wings-navy);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
  box-shadow:0 8px 20px -14px rgba(18,49,92,.4);
}
.hero-redesign__eyebrow span{
  display:grid;
  place-items:center;
  width:16px;
  height:16px;
  flex:none;
  border:0;
  border-radius:50%;
  background:var(--wings-yellow);
  box-shadow:none;
}
.hero-redesign__eyebrow span::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--wings-navy)}
/* Шрифт темы шире Montserrat из макета, поэтому ограничение в 620px, которое
   там давало две строки, здесь резало заголовок на три и оставляло «WINGS -»
   висеть отдельной строкой. */
.hero-redesign h1{width:100%;max-width:720px;margin:0;font-size:clamp(38px,3.9vw,58px);font-weight:800;line-height:1.06;letter-spacing:-.02em;text-wrap:balance}
.hero-redesign h1>span{display:block;white-space:nowrap}
.hero-redesign__copy>p{max-width:540px;margin:0;color:#5b6b84;font-size:clamp(16px,1.25vw,18px);line-height:1.6;text-wrap:pretty}
.hero-redesign__actions{display:flex;align-items:center;gap:26px;margin-top:2px}
.hero-redesign__actions .btn{min-height:56px;padding:0 28px;border-radius:999px;font-size:16px;font-weight:700}
/* Вторичное действие — подчёркнутая ссылка, а не вторая кнопка: две кнопки
   рядом заставляют выбирать, хотя выбор здесь один. */
.hero-redesign__link{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding-bottom:3px;
  box-shadow:inset 0 -2px 0 #c9be9f;
  color:var(--wings-navy);
  font-size:16px;
  font-weight:700;
  text-decoration:none;
}
.hero-redesign__link:hover{box-shadow:inset 0 -2px 0 var(--wings-navy);text-decoration:none}

/* Маркер прокрутки под первым экраном. */
.hero-redesign__scroll{position:relative;z-index:2;padding-top:clamp(24px,3vw,38px);padding-bottom:34px}
.hero-redesign__scroll a{display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none}
.hero-redesign__scroll-icon{
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  flex:none;
  border:1.5px solid #e1d5b4;
  border-radius:50%;
  color:var(--wings-navy);
  transition:transform var(--motion-ui) var(--ease-wings),border-color var(--motion-ui) ease;
}
.hero-redesign__scroll a:hover .hero-redesign__scroll-icon{border-color:var(--wings-yellow-strong);transform:translateY(3px)}
.hero-redesign__scroll-label{color:#8a8272;font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.hero-redesign__scroll-line{flex:1;max-width:260px;height:1px;background:linear-gradient(90deg,#e1d5b4,rgba(225,213,180,0))}
.hero-redesign__media{position:relative;z-index:2;align-self:end;padding:0 32px 0 0}
.hero-redesign__frame{
  overflow:hidden;
  aspect-ratio:1.15/1;
  border:1px solid var(--wings-yellow-strong);
  border-radius:120px 36px 170px 42px;
  background:var(--wings-blue);
}
.hero-redesign__image{width:100%;height:100%;object-fit:cover;object-position:center 43%}
.hero-redesign__age{position:absolute;right:0;top:8%;padding:9px 14px;border:1px solid var(--wings-navy);border-radius:8px;background:var(--wings-blue);color:var(--wings-navy);font-size:12.6px;font-weight:600;transform:rotate(7deg)}
.hero-redesign__words{position:absolute;right:-22px;top:30%;color:var(--wings-navy);font-size:9.5px;font-weight:600;letter-spacing:.18em;writing-mode:vertical-rl;transform:rotate(180deg)}
.audiences__grid{display:grid;grid-template-columns:1fr 1fr;width:100%;max-width:none}
.audiences__item{position:relative;z-index:1;display:grid;grid-template-columns:76px minmax(0,580px);align-content:center;column-gap:28px;min-height:300px;padding:54px max(6vw,46px);overflow:hidden}
.audiences__item:first-child{border-right:1px solid var(--wings-line)}
.audiences__item h2{grid-column:2;max-width:540px;margin:0 0 14px;font-size:clamp(27px,2.295vw,34.2px);line-height:1.14}
.audiences__item p{grid-column:2;max-width:560px;margin:0;color:var(--wings-muted);font-size:12.6px;line-height:1.65}
.audiences__icon{grid-row:1/3;align-self:center;width:76px;height:76px;color:var(--wings-navy);font-size:63px;line-height:76px}
.audiences__marker{position:absolute;right:12%;bottom:34px;padding:7px 12px;border:1px solid var(--wings-navy);border-radius:5px;color:var(--wings-navy);font-size:12px;font-weight:600;letter-spacing:.08em;transform:rotate(5deg)}
.audiences__line{display:none}

/* Learning and teacher */
.learning-redesign{overflow:hidden;padding:clamp(84px,7vw,112px) 0;background:var(--wings-ivory)}
.learning-redesign__grid,.about-grid{display:grid;grid-template-columns:minmax(0,.82fr) minmax(520px,1.18fr);align-items:center;gap:clamp(56px,6vw,96px)}
.learning-redesign h2{max-width:600px;margin-bottom:32px;font-size:clamp(34.2px,2.97vw,43.2px);line-height:1.08}
.learning-redesign__steps{display:grid;gap:0}
.learning-redesign__step{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:18px 0;border-top:1px solid rgba(29,50,84,.14)}
.learning-redesign__step>span{display:grid;place-items:center;width:40px;height:40px;border:1px solid rgba(29,50,84,.2);border-radius:50%;background:#fff;color:var(--wings-navy);font-size:12.6px;font-weight:600}
.learning-redesign__step h3{display:flex;align-items:center;gap:10px;margin:0 0 6px;font-size:16.2px}
.learning-redesign__step h3 .dashicons{width:18px;height:18px;color:var(--wings-navy-2);font-size:16.2px;line-height:18px}
.learning-redesign__step p{margin:0;color:#56667c;font-size:12.6px;line-height:1.6}
.learning-redesign__media{position:relative}
.learning-redesign__image{width:100%;aspect-ratio:1.36/1;object-fit:cover;object-position:center;border:1px solid var(--wings-yellow-strong);border-radius:42px 96px 44px 118px}
.learning-redesign__grow{position:absolute;right:-16px;bottom:-30px;color:rgba(29,50,84,.09);font-size:clamp(63px,8.1vw,135px);font-weight:700;letter-spacing:-.06em}
.about-v2{position:relative;isolation:isolate;overflow:hidden;padding:clamp(76px,6.5vw,104px) 0;background:#fff}
.about-v2::after{content:"";position:absolute;inset:-70px 0 -36px;z-index:2;opacity:.32;background:url('../img/wings-flight-path.png') center/1100px auto no-repeat;pointer-events:none}
.about-grid{position:relative;z-index:1;grid-template-columns:minmax(390px,.76fr) minmax(0,1.24fr);gap:clamp(46px,4.5vw,68px);padding:32px 42px 32px 30px;border:1px solid rgba(255,197,47,.58);border-radius:34px 34px 92px 34px;background:var(--wings-ivory)}
.about-v2 .media-frame{height:auto;aspect-ratio:1.34/1;overflow:hidden;border:0;border-radius:36px 104px 38px 112px;background:var(--wings-blue);box-shadow:none}
.about-v2 .media-frame::after{content:none}
.about-v2 .media-img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:center 34%;opacity:1}
.about-v2 .media-glow{display:none}
.about-copy{max-width:720px}
.about-kicker{margin-bottom:18px}
.about-title{margin-bottom:18px;font-size:clamp(30.6px,2.52vw,37.8px);line-height:1.1}
.about-text{max-width:68ch}
.about-signature{margin-top:22px;padding:17px 0 0;border:0;border-top:1px solid var(--wings-line);border-radius:0;background:transparent;box-shadow:none;overflow:visible}
.about-signature strong{font-size:11.7px}

/* Pricing */
.price-v2{padding:clamp(88px,7vw,116px) 0 clamp(80px,6.5vw,108px);background:var(--wings-blue)}
section#price.price-v2{background:#eff6fc}
.price-head{display:block;margin-bottom:38px;text-align:center}
.price-head>div{display:grid;justify-items:center}
.price-head .section-kicker{margin-bottom:18px}
.price-head .h2{max-width:1100px;margin:0;font-size:clamp(32.4px,2.7vw,41.4px);line-height:1.12}
.price-head>p{max-width:960px;margin:14px auto 0}
.plans-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:0;border:0;border-radius:0;overflow:visible;background:transparent}
.plan-card{display:flex;flex-direction:column;min-height:330px;padding:28px 34px 30px;border:0;border-right:1px solid rgba(29,50,84,.13);border-radius:0;background:transparent;box-shadow:none;overflow:visible;color:inherit;text-decoration:none;cursor:pointer}
.plan-card:last-child{border-right:0}
.plan-card:hover{border-color:rgba(29,50,84,.13);background:rgba(255,255,255,.22);box-shadow:inset 0 0 0 1px rgba(29,50,84,.08)}
.plan-card.is-highlighted{z-index:1;background:rgba(255,255,255,.28);box-shadow:inset 0 0 0 2px var(--wings-yellow-strong)}
.plan-card.is-highlighted:hover,
.plan-card.is-highlighted:focus-within{box-shadow:inset 0 0 0 2px var(--wings-yellow-strong)}
.plan-card-head{min-height:108px;padding:0;background:none;border:0}
.plan-card-top{position:relative;align-items:flex-end;justify-content:center;min-height:70px;margin:0}.plan-index{color:var(--wings-muted)}
.plan-format-icon{width:44px;height:44px;color:var(--wings-navy);font-size:37.8px;line-height:44px}
.plan-choice{position:absolute;top:0;left:50%;padding:6px 12px;border:1px solid rgba(244,184,33,.38);border-radius:999px;background:rgba(255,221,111,.42);box-shadow:0 8px 18px rgba(244,184,33,.12);transform:translateX(-50%);white-space:nowrap;color:var(--wings-navy);font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.plan-badge{margin:10px 0 0;padding:0;background:transparent;color:var(--wings-navy);font-size:12.6px;font-weight:700;text-align:center}
.save-badge{border-radius:999px;background:rgba(255,255,255,.68);color:var(--wings-navy);font-size:12px;font-weight:600}
.plan-card-content{display:flex;flex:1;flex-direction:column;padding:0}
.plan-summary{display:block;padding:0;border:0;text-align:center}
.plan-name{min-height:52px;margin:6px 0 0;font-size:clamp(18.9px,1.53vw,23.4px);font-weight:600;line-height:1.2;text-align:center}
.plan-description{min-height:66px;margin:12px auto 0;max-width:40ch;color:var(--wings-muted);font-size:13.5px;line-height:1.55;text-align:center}
.plan-price{max-width:none;margin:12px 0 0;font-size:14.4px;font-weight:600;text-align:center}
.plan-price.is-long{font-size:12.6px}
.plan-actions{margin-top:auto;padding-top:22px}.plan-actions .btn{width:auto;min-width:210px;min-height:48px;margin-inline:auto;padding:12px 20px;border-radius:999px;font-size:12.6px}
.plan-actions .btn-enroll{
  box-shadow:none;
  transform:none;
  transition:background-color .24s ease,border-color .24s ease,color .24s ease;
}
.plan-card:hover .btn-enroll,
.plan-card:focus-visible .btn-enroll{
  color:#fff;
  background:var(--wings-navy);
  box-shadow:none;
  transform:none;
}
.price-note{display:flex;align-items:center;justify-content:center;gap:12px;margin:30px 0 0;color:var(--wings-muted);font-size:12.6px}.price-note .dashicons{color:var(--wings-navy)}

/* FAQ tabs */
.faq-redesign.faq-tabs-section{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(68px,5vw,82px) 0;
  background:
    radial-gradient(circle at 9% 15%,rgba(255,212,80,.15),transparent 25%),
    radial-gradient(circle at 91% 17%,rgba(110,181,255,.17),transparent 30%),
    var(--wings-ivory);
}
.faq-tabs-section::before{
  content:"";
  position:absolute;
  inset:42px -8% auto 42%;
  z-index:-1;
  height:260px;
  opacity:.2;
  background:url('../img/wings-flight-path.png') right top/760px auto no-repeat;
  pointer-events:none;
}
.faq-redesign .container.faq-tabs-shell{
  width:min(var(--wings-container),calc(100% - clamp(28px,5vw,72px)));
}
/* Заголовок и блок «Не знайшли відповідь?» слева, вопросы справа. Раньше карточка
   стояла сбоку от списка и обрывала его снизу, а на узкой колонке её заголовок
   ломался на три строки. */
.faq-layout{display:grid;grid-template-columns:380px minmax(0,1fr);align-items:start;gap:64px;min-width:0}
.faq-aside{position:sticky;top:calc(var(--wings-header-height) + 24px);display:flex;flex-direction:column;gap:24px}
.faq-tabs-head{max-width:none;margin:0;text-align:left}
.faq-tabs-head .section-kicker{margin:0 0 14px}
.faq-tabs-head .h2{margin:0;font-size:clamp(30px,2.7vw,40px);line-height:1.12}
.faq-tabs-head p{max-width:none;margin:14px 0 0}
/* Описание под заголовком секции — одна типографика на все секции.
   Раньше размер задавался в двенадцати местах: 12.6, 13.5, 15.3 и 16px по
   разным брейкпоинтам, поэтому «Пакети занять», «Матеріали для вас», FAQ и
   блок про викладача выглядели как четыре разных элемента. Раскладка (ширина,
   отступы, центрирование) остаётся за каждой секцией — общая только шрифтовая
   часть, иначе правило пришлось бы дробить обратно. */
:is(.about-text,.home-materials__head p,.price-head>p,.faq-tabs-head p){
  color:var(--wings-muted);
  font-size:16px;
  line-height:1.6;
  text-wrap:pretty;
}
@media(max-width:760px){
  :is(.about-text,.home-materials__head p,.price-head>p,.faq-tabs-head p){font-size:15px}
}
.faq-tabs{min-width:0}
.faq-tabs-nav-scroll{max-width:100%;margin-bottom:22px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
.faq-tabs-nav-scroll::-webkit-scrollbar{display:none}
.faq-tabs-nav{
  display:inline-flex;
  gap:8px;
  width:auto;
  min-width:max-content;
  padding:6px;
  border:1px solid #efe7d6;
  border-radius:999px;
  background:#fff;
  box-shadow:none;
}
.faq-tabs-nav__button{
  position:relative;
  display:inline-flex;
  align-items:center;
  gap:9px;
  min-width:0;
  min-height:0;
  padding:11px 20px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:#4a5c7a;
  font-size:15px;
  font-weight:600;
  line-height:1.25;
  white-space:nowrap;
  cursor:pointer;
  transition:background-color var(--motion-ui) var(--ease-wings),color var(--motion-ui) var(--ease-wings);
}
.faq-tabs-nav__count{
  flex:none;
  padding:2px 8px;
  border-radius:999px;
  background:#f6f1e6;
  color:#8a8272;
  font-size:12px;
  font-weight:700;
}
.faq-tabs-nav__button:hover{background:rgba(220,238,255,.52);color:var(--wings-navy)}
.faq-tabs-nav__button.is-active{background:var(--wings-navy);color:#fff}
.faq-tabs-nav__button.is-active .faq-tabs-nav__count{background:rgba(255,255,255,.16);color:var(--wings-yellow)}
.faq-tabs-nav__button:focus-visible{z-index:2;outline-offset:-3px;border-radius:999px}
.faq-tabs-panels,.faq-tab-panel{min-width:0}
.faq-tab-panel[hidden]{display:none}
/* Отдельные карточки вместо одного длинного списка: свёрнутые вопросы читаются
   как перечень тем, и видно, что список кончается, а не обрывается. */
.faq-tabs-section .faq-list{
  display:flex;
  flex-direction:column;
  gap:12px;
  height:auto;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.faq-tabs-section .faq-item{
  position:relative;
  overflow:hidden;
  border:1px solid #efe7d6;
  border-radius:18px;
  background:#fff;
  box-shadow:none;
  cursor:default;
  transition:background-color var(--motion-ui) ease,border-color var(--motion-ui) ease;
}
.faq-tabs-section .faq-item::before,.faq-tabs-section .faq-item::after{display:none}
.faq-tabs-section .faq-item:hover{border-color:#e3d9c2;background:#fdfbf6;box-shadow:none;transform:none}
.faq-tabs-section .faq-item.is-open{border-color:#e3d9c2;background:#fff}
.faq-item__heading{margin:0;font:inherit;letter-spacing:normal}
.faq-tabs-section .faq-q{
  display:grid;
  grid-template-columns:minmax(0,1fr) 36px;
  align-items:center;
  gap:20px;
  width:100%;
  min-height:0;
  padding:22px 26px;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--wings-navy);
  text-align:left;
  cursor:pointer;
}
.faq-tabs-section .faq-q-text{font-size:18px;font-weight:700;line-height:1.4}
/* Знак остаётся справа и в раскрытом состоянии — раньше он перепрыгивал влево,
   и строка вопроса дёргалась на каждом нажатии. */
.faq-tabs-section .faq-icon{
  display:grid;
  grid-column:2;
  place-items:center;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:#f6f1e6;
  color:var(--wings-navy);
  transition:background-color var(--motion-ui) ease}
.faq-tabs-section .faq-icon::before,.faq-tabs-section .faq-icon::after{display:none}
.faq-tabs-section .faq-icon .dashicons{grid-area:1/1;width:20px;height:20px;font-size:20px;line-height:20px}
.faq-tabs-section .faq-icon__minus{display:none}
.faq-tabs-section .faq-open-caret{display:none}
.faq-tabs-section .faq-item.is-open .faq-icon{background:var(--wings-yellow);transform:none;animation:none}
.faq-tabs-section .faq-item.is-open .faq-icon__plus{display:none}
.faq-tabs-section .faq-item.is-open .faq-icon__minus{display:block}
.faq-tabs-section .faq-a{height:0;overflow:hidden}
.faq-tabs-section .faq-a-inner{max-width:none;margin:0;padding:0 82px 24px 26px;border:0;border-radius:0;background:transparent;color:var(--wings-muted);font-size:16px;line-height:1.65}
.faq-tabs-section .faq-item.is-open .faq-a-inner{max-width:none;margin:0;padding:0 82px 24px 26px;border:0;border-radius:0;background:transparent}
.faq-tabs-section .faq-a-inner p{margin:0}
.faq-tabs-section .faq-q:focus-visible{outline:3px solid #2878df;outline-offset:-4px;border-radius:14px}
/* Карточка теперь под заголовком в левой колонке и растёт по содержимому:
   растягиваться по высоте списка вопросов ей больше не нужно. */
.faq-tabs-section .faq-cta-card{
  display:flex;
  flex-direction:column;
  align-self:stretch;
  min-width:0;
  min-height:0;
  padding:26px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  background:linear-gradient(145deg,var(--wings-navy-2),var(--wings-navy));
  color:#fff;
  box-shadow:0 18px 42px rgba(5,41,80,.12);
}
.faq-cta-card__icon{display:grid;place-items:center;width:44px;height:44px;margin-bottom:18px;border:1px solid rgba(255,212,80,.65);border-radius:50%;color:var(--wings-yellow)}
.faq-cta-card__icon .dashicons{width:22px;height:22px;font-size:22px;line-height:22px}
.faq-tabs-section .faq-cta-card h3{max-width:none;margin:0;color:#fff;font-size:19px;font-weight:700;line-height:1.3}
.faq-tabs-section .faq-cta-card p{max-width:none;margin:12px 0 0;color:rgba(255,255,255,.72);font-size:14px;line-height:1.6}
.faq-tabs-section .faq-cta-card .btn{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;gap:10px;width:auto;min-height:46px;margin-top:18px;padding:0 22px;border-radius:999px;font-size:15px;white-space:nowrap;box-shadow:none;transform:none}
.faq-tabs-section .faq-cta-card .btn:hover,.faq-tabs-section .faq-cta-card .btn:focus-visible{background:var(--wings-yellow-strong);box-shadow:none;transform:none}

/* Ниже 1024 две колонки не помещаются: липкая колонка съедала бы половину
   экрана, а вопросы читались бы в узкой полосе. */
@media(max-width:1024px){
  .faq-layout{grid-template-columns:1fr;gap:24px}
  /* Колонка раскрывается в обычные ячейки сетки, чтобы заголовок остался
     наверху, а карточка призыва ушла под список вопросов — иначе призыв
     оказался бы раньше самих ответов. */
  .faq-aside{position:static;display:contents}
  .faq-tabs-head{order:1}
  .faq-tabs{order:2}
  .faq-tabs-section .faq-cta-card{order:3}
}
@media(max-width:760px){
  .faq-redesign .container.faq-tabs-shell{width:calc(100% - 28px)}
  .faq-tabs-head .h2{font-size:clamp(26px,6.4vw,32px)}
  .faq-tabs-nav-scroll{margin-inline:-14px;padding-inline:14px}
  .faq-tabs-nav__button{padding:10px 16px;font-size:14px}
  .faq-tabs-section .faq-q{gap:14px;padding:18px}
  .faq-tabs-section .faq-q-text{font-size:16px}
  .faq-tabs-section .faq-icon{width:32px;height:32px}
  .faq-tabs-section .faq-q{grid-template-columns:minmax(0,1fr) 32px}
  .faq-tabs-section .faq-a-inner,
  .faq-tabs-section .faq-item.is-open .faq-a-inner{padding:0 18px 18px;font-size:15px}
  .faq-tabs-section .faq-cta-card{padding:22px}
  .faq-tabs-section .faq-cta-card .btn{align-self:stretch;width:100%}
}
@media(max-width:520px){
  .faq-redesign.faq-tabs-section{padding:60px 0}
  .faq-tabs-section::before{inset:10px -55% auto 8%;opacity:.14}
  .faq-tabs-head .section-kicker{margin-left:0}
  .faq-tabs-nav-scroll{margin-right:-14px;margin-bottom:18px;padding-right:14px;scroll-snap-type:x mandatory}
  .faq-tabs-nav{display:inline-flex;width:auto;min-width:max-content}
  .faq-tabs-nav__button{flex:0 0 auto;scroll-snap-align:start}
  .faq-tabs-section .faq-q{padding:16px}
  .faq-tabs-section .faq-a-inner,
  .faq-tabs-section .faq-item.is-open .faq-a-inner{padding:0 16px 16px}
  .faq-tabs-section .faq-cta-card{padding:22px;border-radius:18px}
  .faq-cta-card__icon{width:42px;height:42px;margin-bottom:16px}
  .faq-tabs-section .faq-cta-card .btn{width:100%}
}

/* Переваги WINGS — две большие карточки и четыре малые в одной сетке.
   Заменяет тёмную полосу фактов и блок «Підліткам і батькам»: они шли подряд и
   дважды рассказывали про внимание к ученику. */
.advantages__shell{display:flex;flex-direction:column;gap:36px}
.advantages__head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.advantages__intro{max-width:640px}
.advantages__intro .section-kicker{margin-bottom:14px}
.advantages__intro .h2{margin:0;font-size:clamp(28px,2.7vw,40px);line-height:1.12}
.advantages__cta{flex:none;min-height:48px;padding:0 24px;border-radius:999px;font-size:15px;white-space:nowrap}

.advantages__features{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.advantage-card{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  min-height:320px;
  padding:40px 40px 36px;
  border-radius:22px;
  overflow:hidden;
}
/* Круг за краем карточки: даёт глубину, но не должен перехватывать курсор. */
.advantage-card::before{
  content:"";
  position:absolute;
  top:-64px;
  right:-64px;
  width:240px;
  height:240px;
  border-radius:50%;
  pointer-events:none;
}
.advantage-card--dark{
  background:var(--wings-navy);
  color:#fff;
  box-shadow:0 22px 48px -26px rgba(5,41,80,.75);
}
.advantage-card--dark::before{background:rgba(255,255,255,.07)}
.advantage-card--light{
  border:1px solid #f0e4c6;
  background:#fdf8ec;
  color:var(--wings-navy);
}
.advantage-card--light::before{background:var(--wings-yellow);opacity:.35}
.advantage-card__top,
.advantage-card__body{position:relative}
.advantage-card__top{display:flex;align-items:center;justify-content:space-between;gap:16px}
.advantage-card__icon{
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  flex:none;
  border-radius:18px;
}
.advantage-card__icon.dashicons{width:68px;height:68px;font-size:32px;line-height:68px}
.advantage-card--dark .advantage-card__icon{background:var(--wings-yellow);color:var(--wings-navy)}
.advantage-card--light .advantage-card__icon{background:var(--wings-navy);color:var(--wings-yellow)}
.advantage-card__badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 16px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}
.advantage-card__dot{width:7px;height:7px;flex:none;border-radius:50%}
.advantage-card--dark .advantage-card__badge{background:rgba(255,255,255,.12);color:var(--wings-yellow)}
.advantage-card--dark .advantage-card__dot{background:var(--wings-yellow)}
.advantage-card--light .advantage-card__badge{border:1px solid #f0e4c6;background:#fff;color:#8a7a4a}
.advantage-card--light .advantage-card__dot{background:var(--wings-navy)}
.advantage-card__body{display:flex;flex-direction:column;gap:16px}
.advantage-card__body h3{margin:0;font-size:clamp(24px,2.2vw,34px);font-weight:800;line-height:1.15;text-wrap:balance}
.advantage-card--dark .advantage-card__body h3{color:#fff}
.advantage-card__body p{margin:0;max-width:520px;font-size:17px;line-height:1.6;text-wrap:pretty}
.advantage-card--dark .advantage-card__body p{color:#c8d5ea}
.advantage-card--light .advantage-card__body p{color:#5b5233}
.advantage-card__chips{display:flex;flex-wrap:wrap;gap:10px;margin:6px 0 0;padding:0;list-style:none}
.advantage-card__chips li{padding:8px 16px;border-radius:999px;font-size:14px;font-weight:600;white-space:nowrap}
.advantage-card--dark .advantage-card__chips li{background:rgba(255,255,255,.12);color:#d3deee}
.advantage-card--light .advantage-card__chips li{border:1px solid #f0e4c6;background:#fff;color:var(--wings-navy)}

.advantages__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.advantage-tile{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:28px 26px;
  border:1px solid #efe7d6;
  border-radius:20px;
  background:#fff;
  transition:border-color var(--motion-ui) ease,transform var(--motion-ui) var(--ease-wings);
}
.advantage-tile:hover{border-color:#e3d9c2;transform:translateY(-2px)}
.advantage-tile__icon{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  flex:none;
  border-radius:14px;
  background:var(--wings-blue);
  color:var(--wings-navy);
}
.advantage-tile__icon.dashicons{width:48px;height:48px;font-size:24px;line-height:48px}
.advantage-tile h3{margin:0;color:var(--wings-navy);font-size:19px;font-weight:700;line-height:1.3;text-wrap:pretty}
.advantage-tile p{margin:0;color:var(--wings-muted);font-size:15px;line-height:1.6;text-wrap:pretty}

@media(max-width:1080px){
  /* Четыре плитки в ряд дают колонку в ~170px — заголовок в ней рвётся на
     каждом слове. Переходим на два ряда по две. */
  .advantages__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .advantage-card{min-height:0;padding:32px}
}
@media(max-width:900px){
  .advantages__features{grid-template-columns:1fr}
  .advantages__shell{gap:28px}
}
@media(max-width:700px){
  .advantages__head{align-items:stretch;flex-direction:column;gap:20px}
  .advantages__cta{width:100%;justify-content:center}
  .advantage-card{gap:18px;padding:24px;border-radius:18px}
  /* На узкой карточке круг занимает половину площади и лезет под заголовок:
     фон перестаёт быть фоном. В макете его на телефоне тоже нет. */
  .advantage-card::before{display:none}
  .advantage-card__icon,.advantage-card__icon.dashicons{width:52px;height:52px;font-size:26px;line-height:52px}
  .advantage-card__badge{padding:7px 13px;font-size:11px}
  .advantage-card__body p{font-size:15px}
  /* Мітки на узком экране уводят карточку в горизонтальную прокрутку — они
     справочные, а не действия, поэтому здесь их не показываем. */
  .advantage-card__chips{display:none}
  .advantages__grid{gap:12px}
  .advantage-tile{gap:10px;padding:18px;border-radius:16px}
  .advantage-tile__icon,.advantage-tile__icon.dashicons{width:40px;height:40px;font-size:20px;line-height:40px}
  .advantage-tile h3{font-size:16px}
  .advantage-tile p{font-size:14px;line-height:1.55}
}

/* Footer — жёлтая полоса призыва, тёмный блок колонок, правовая строка. */
.footer-redesign{
  /* Оттенки подвала держим здесь: макет рисовался в своей палитре, но синий
     сайта темнее, и чужой навести рядом с остальными тёмными блоками читался
     бы как другой цвет. */
  --footer-line:rgba(255,255,255,.14);
  --footer-dim:rgba(255,255,255,.62);
  --footer-soft:rgba(255,255,255,.82);
  padding:0;
  background:var(--wings-navy);
  color:#fff;
}
.footer-redesign a{color:var(--footer-soft);text-decoration:none;transition:color var(--motion-fast) ease}
.footer-redesign a:hover{color:#fff}
.footer-col-title{
  margin:0 0 16px;
  color:var(--wings-yellow);
  font-size:12px;
  font-weight:700;
  letter-spacing:.14em;
  text-transform:uppercase;
}

/* Выравнивание задано явно: подвал наследует центрирование откуда-то выше по
   каскаду, а призыв и телефон должны читаться от левого края, как в макете. */
.footer-cta{background:var(--wings-yellow);text-align:left}
.footer-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:34px 0}
.footer-cta__copy{max-width:560px}
.footer-cta__title{margin:0;color:var(--wings-navy);font-size:clamp(21px,2vw,28px);font-weight:800;line-height:1.2}
.footer-cta__text{margin:8px 0 0;color:#5b4a16;font-size:15px;line-height:1.55}
.footer-cta__form{display:flex;flex:none;align-items:center;gap:8px;padding:6px;border-radius:999px;background:#fff}
.footer-cta__input{
  width:190px;
  min-height:44px;
  padding:0 8px 0 16px;
  border:0;
  background:transparent;
  color:var(--wings-navy);
  font:inherit;
  font-size:15px;
}
.footer-cta__input::placeholder{color:#8a8272}
/* Поле не имеет собственных границ — оно живёт внутри белой «таблетки», и
   рамка вокруг голого поля читалась бы как вторая, вложенная. Показываем фокус
   на самой таблетке: одна понятная граница вместо двух. */
.footer-cta__input:focus,
.footer-cta__input:focus-visible{outline:none;box-shadow:none}
.footer-cta__form:focus-within{outline:3px solid #2878df;outline-offset:2px}
.footer-cta__button{
  display:inline-flex;
  align-items:center;
  flex:none;
  min-height:48px;
  padding:0 26px;
  border-radius:999px;
  background:var(--wings-navy);
  color:#fff;
  font-size:15px;
  font-weight:700;
  white-space:nowrap;
  box-shadow:none;
}
.footer-cta__button::after{color:#fff}
.footer-cta__button:hover,
.footer-cta__button:focus-visible,
.footer-cta__button:active{background:var(--wings-navy-2);color:#fff;box-shadow:none;transform:none}

/* Доли, а не фиксированные ширины: у макета контейнер уже, и жёсткие колонки
   прижимались бы к правому краю, оставляя посередине пустое поле. */
.footer-main__inner{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1.15fr);gap:48px;padding:48px 0 40px}
.footer-brand{display:flex;flex-direction:column;gap:20px;max-width:420px}
.footer-redesign__logo{display:inline-flex;align-items:center;gap:12px;padding:0;background:transparent;border-radius:0}
.footer-redesign__logo .wings-brand-asset{width:52px;flex:none;border-radius:14px}
.footer-brand__name{display:flex;flex-direction:column;line-height:1}
.footer-brand__name strong{color:#fff;font-size:21px;font-weight:800}
.footer-brand__name span{margin-top:5px;color:var(--footer-dim);font-size:10px;font-weight:600;letter-spacing:.2em}
.footer-brand__about{margin:0;color:var(--footer-dim);font-size:14px;line-height:1.65}
.footer-socials{display:flex;flex-wrap:wrap;gap:10px}
.footer-socials a{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:0 18px;
  border-radius:12px;
  background:rgba(255,255,255,.1);
  font-size:14px;
  font-weight:600;
}
.footer-socials a:hover{background:rgba(255,255,255,.18)}

.footer-links ul{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}
.footer-links a{font-size:15px}

.footer-contacts{display:flex;flex-direction:column;gap:16px}
.footer-contacts .footer-col-title{margin-bottom:0}
.footer-contacts__block{display:flex;flex-direction:column;gap:3px}
.footer-contacts__phone{color:#fff;font-size:20px;font-weight:700}
.footer-contacts__email{font-size:15px}
.footer-contacts__note{color:var(--footer-dim);font-size:13px}
.footer-contacts__account{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  gap:9px;
  min-height:44px;
  margin-top:2px;
  padding:0 20px;
  border:1.5px solid rgba(255,255,255,.28);
  border-radius:999px;
  color:#fff;
  font-size:14px;
  font-weight:700;
}
.footer-contacts__account span{display:inline-flex;flex:none}
.footer-contacts__account:hover{border-color:var(--wings-yellow);background:rgba(255,255,255,.06)}

.footer-legal{background:rgba(0,0,0,.22)}
.footer-redesign__bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:18px 0;
  border-top:1px solid var(--footer-line);
  color:var(--footer-dim);
  font-size:13px;
}
.footer-redesign__bottom a{font-size:13px}

/* Появление секций.
 *
 * Движение одно на весь сайт: подъём с едва заметным приближением, кривая
 * --ease-wings резко стартует и мягко останавливается — элемент словно
 * подлетает и садится, а не выезжает равномерно. Масштаб взят маленький
 * (.985): на крупных карточках даже полпроцента заметны, а больше уже читается
 * как «зум» и отвлекает от текста.
 *
 * Боковые варианты нужны там, где блоки стоят парой: колонки съезжаются к
 * центру, и пара читается как одно целое, а не как два независимых блока.
 */
.js-reveal .reveal-up{opacity:0;transform:translate3d(0,26px,0) scale(.985)}
.js-reveal .reveal-fade{opacity:0}
.js-reveal .reveal-left{opacity:0;transform:translate3d(-30px,0,0)}
.js-reveal .reveal-right{opacity:0;transform:translate3d(30px,0,0)}
.js-reveal :is(.reveal-up,.reveal-fade,.reveal-left,.reveal-right){will-change:opacity,transform}
.js-reveal .reveal-in{
  opacity:1;
  transform:none;
  transition:opacity var(--motion-reveal) var(--ease-wings),transform var(--motion-reveal) var(--ease-wings)!important;
  /* Выдержку задаёт одна переменная: и утилитарные классы, и пошаговая
     задержка в сетках пишут в неё, поэтому они больше не затирают друг друга. */
  transition-delay:var(--delay,0s)!important;
  will-change:auto;
}
/* Классы-утилиты теперь только выставляют переменную. Раньше они писали
   transition-delay напрямую и конфликтовали с пошаговой задержкой. */
.delay-1{--delay:.08s;transition-delay:var(--delay)}
.delay-2{--delay:.16s;transition-delay:var(--delay)}
.delay-3{--delay:.24s;transition-delay:var(--delay)}

@media(prefers-reduced-motion:reduce){
  /* Никакого движения: элементы просто на месте. Обнуления длительности мало —
     без сброса стартового состояния блок остался бы сдвинутым и прозрачным,
     если наблюдатель по какой-то причине не сработает. */
  .js-reveal :is(.reveal-up,.reveal-fade,.reveal-left,.reveal-right){opacity:1;transform:none}
}
.enroll-format span{transition:background-color var(--motion-fast) ease,border-color var(--motion-fast) ease}
.enroll-format label:hover span{background:rgba(110,181,255,.12)}
.modal-redesign .modal__close{position:sticky;float:right;top:14px;z-index:4}
.footer-redesign__bottom nav{display:flex;gap:18px}

/* Modal */
.modal-redesign{inset:0;padding:20px;background:rgba(10,26,49,.7)}
.modal-redesign .modal__backdrop{background:transparent;backdrop-filter:none}
.modal-redesign .modal__dialog{width:min(560px,100%);max-height:min(calc(100svh - 40px),760px);border:1px solid rgba(29,50,84,.12);border-radius:28px;background:var(--wings-ivory);box-shadow:0 30px 100px rgba(4,18,38,.34)}
.modal-redesign .modal__head{padding:24px 30px 8px;background:transparent}
.modal-redesign .modal__eyebrow{display:inline-flex;margin:0 0 14px;padding:7px 12px;border:1px solid var(--wings-line);border-radius:999px;background:#fff;color:var(--wings-navy);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.modal-redesign .modal__title{margin:0 0 7px;font-size:clamp(27px,2.7vw,34.2px);font-weight:500}
.modal-redesign .modal__title:focus{outline:0;box-shadow:none}
.modal-redesign .modal__intro{max-width:480px;margin:0;color:var(--wings-muted)}
.modal-redesign .modal__body{padding:14px 30px 28px}
.modal-redesign .modal__close{top:20px;right:20px;display:grid;place-items:center;width:46px;height:46px;min-width:46px;min-height:46px;padding:0;border:1px solid var(--wings-line);background:#fff;color:var(--wings-navy);font-size:23.4px;line-height:1}
.enroll-fallback{display:grid;gap:16px}
.enroll-fallback .f-grid{gap:14px;margin:0}.enroll-fallback .f-grid--identity{grid-template-columns:minmax(0,1fr) 150px}
.enroll-fallback .f-label{display:grid;gap:7px;margin:0;color:var(--wings-navy);font-size:13px;font-weight:600}
.enroll-fallback .f-label>span{color:var(--wings-muted);font-weight:400}
.enroll-fallback .f-field-hint{margin-top:-3px;font-size:12px;line-height:1.4}
.enroll-fallback input,.enroll-fallback select,.enroll-fallback textarea{min-height:46px;margin-top:0;border:1px solid var(--wings-line);border-radius:13px;background:#fff;padding:11px 13px;color:var(--wings-navy);font-size:13.5px}
.enroll-fallback textarea{min-height:76px;resize:vertical}
.enroll-fallback [aria-invalid="true"]{border-color:var(--wings-danger);box-shadow:0 0 0 3px rgba(180,35,24,.1)}
.enroll-format{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:0;padding:0;border:1px solid var(--wings-line);border-radius:14px;overflow:hidden}
.enroll-format legend{width:100%;margin-bottom:7px;color:var(--wings-navy);font-size:11.7px;font-weight:600}
.enroll-format label{position:relative;min-width:0;border-right:1px solid var(--wings-line)}.enroll-format label:last-child{border-right:0}
.enroll-format input{position:absolute;opacity:0;pointer-events:none}
.enroll-format span{display:grid;place-items:center;min-height:44px;padding:8px;text-align:center;color:var(--wings-navy);font-size:11.7px;cursor:pointer}
.enroll-format input:checked+span{background:var(--wings-blue);box-shadow:inset 0 0 0 2px var(--wings-yellow)}
.enroll-format input:focus-visible+span{outline:3px solid #2878df;outline-offset:-3px;box-shadow:inset 0 0 0 2px #fff}
.enroll-more{border-top:1px solid var(--wings-line);border-bottom:1px solid var(--wings-line);padding:12px 0}
.enroll-more summary{cursor:pointer;color:var(--wings-navy);font-size:11.7px;font-weight:600}
.enroll-more__body{display:grid;min-width:0;gap:14px;margin:0;padding:16px 0 0;border:0}
.enroll-fallback .f-consent{align-items:flex-start;margin:0;color:var(--wings-muted);font-size:12px;line-height:1.5}
.enroll-fallback .f-consent input{width:20px;height:20px;min-height:20px;margin-top:1px}
.enroll-fallback>.btn{width:100%;min-height:52px}
.enroll-reassurance{margin:-7px 0 0;text-align:center;color:var(--wings-muted);font-size:12px}
.form-status{min-height:0;margin:0;font-size:11.7px}.form-status:not(:empty){padding:12px;border-radius:12px;background:#fff}

@media(max-width:760px){
  .modal-redesign{inset:0;align-items:stretch;height:100%;height:100dvh;min-height:100svh;padding:0}
  .modal-redesign .modal__dialog{width:100%;height:100%;height:100dvh;max-height:100dvh;overscroll-behavior:contain;border:0;border-radius:0}
  .modal-redesign .modal__head{padding-top:max(24px,env(safe-area-inset-top))}
  .modal-redesign .modal__body{padding-bottom:max(28px,env(safe-area-inset-bottom))}
  .modal-redesign .modal__close{top:max(14px,env(safe-area-inset-top))}
}

/* Legal and 404 */
.skip-link{position:fixed;z-index:10000;top:12px;left:12px;max-width:calc(100vw - 24px);padding:12px 18px;border:2px solid var(--wings-yellow-strong);border-radius:999px;background:var(--wings-navy);color:#fff;font-size:14px;font-weight:700;text-decoration:none;transform:translateY(calc(-100% - 24px));transition:transform .18s ease}
.skip-link:focus{transform:translateY(0);outline:3px solid rgba(255,212,80,.35);outline-offset:3px}
.legal-page,.error-page{padding:0;background:var(--wings-ivory)}
.legal-shell{padding:32px 0 52px;background:url('../img/wings-flight-path.png') right 58px/520px auto no-repeat}
.legal-hero{max-width:920px;margin:0 0 44px;padding:0;background:transparent;border:0;box-shadow:none}
.legal-breadcrumb{display:flex;gap:8px;margin:0 0 24px;color:var(--wings-muted);font-size:11.7px}.legal-breadcrumb a{color:inherit;text-decoration:none}.legal-breadcrumb a:hover{text-decoration:underline}
.legal-hero h1{font-size:clamp(37.8px,3.6vw,50.4px);font-weight:500;line-height:1.04;letter-spacing:-.035em}
.legal-hero p{max-width:700px;color:var(--wings-muted);font-size:16.2px}
.legal-updated{display:inline-flex;margin-top:16px;color:var(--wings-muted);font-size:11.7px}
.legal-layout{display:grid;grid-template-columns:260px minmax(0,760px);justify-content:center;gap:clamp(50px,8vw,120px)}
.legal-nav{position:sticky;top:calc(var(--wings-header-height) + 28px);align-self:start;display:grid;gap:6px;padding:0;background:transparent;border:0;box-shadow:none}
.legal-nav strong{margin-bottom:10px;color:var(--wings-navy)}
.legal-nav a{padding:10px 14px;border-left:2px solid var(--wings-line);color:var(--wings-muted);text-decoration:none;font-size:12.6px}
.legal-nav a[aria-current="true"]{border-left-color:var(--wings-yellow-strong);border-radius:0 12px 12px 0;background:var(--wings-blue);color:var(--wings-navy);font-weight:600}
.legal-content{max-width:760px;padding:0;background:transparent;border:0;box-shadow:none}
.legal-content section{scroll-margin-top:var(--header-offset);padding:0 0 40px;margin:0 0 40px;border-bottom:1px solid var(--wings-line)}
.legal-content h2{font-size:clamp(23.4px,2.7vw,32.4px)}
.error-shell{position:relative;isolation:isolate;min-height:max(700px,calc(100svh - var(--wings-header-height) - 120px));display:grid;grid-template-columns:1fr;place-items:center;padding:66px 0 44px;text-align:center;overflow:hidden}
.error-code{position:absolute;z-index:-2;left:50%;top:48%;color:rgba(29,50,84,.05);font-size:clamp(198px,29.7vw,468px);font-weight:700;line-height:.72;letter-spacing:-.08em;text-shadow:8px 8px 0 rgba(255,212,80,.16),-6px -6px 0 rgba(110,181,255,.1);transform:translate(-50%,-50%)}
.error-flight{position:absolute;z-index:-1;inset:auto 0 7%;width:100%;height:auto;opacity:.55;pointer-events:none}
.error-content{max-width:780px}.error-content h1{margin:18px 0 16px;font-size:clamp(43.2px,5.13vw,72px);font-weight:500;line-height:1.04}.error-content p{max-width:540px;margin-inline:auto;color:var(--wings-muted);font-size:16.2px}.error-actions{display:flex;justify-content:center;gap:14px;margin-top:28px}
.error-quick-links{display:flex;align-items:center;justify-content:center;gap:0;width:min(760px,100%);margin-top:8px}
.error-quick-links a,.error-quick-links button{display:flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:8px 30px;border:0;border-right:1px solid var(--wings-line);background:transparent;color:var(--wings-navy);font:inherit;font-size:12.6px;font-weight:600;text-decoration:none;cursor:pointer}
.error-quick-links>*:last-child{border-right:0}.error-quick-links a:hover,.error-quick-links button:hover{text-decoration:underline;text-underline-offset:4px}

/* Blog archive */
.blog-archive-page{background:#fff}
.blog-archive-hero{padding:clamp(58px,5.5vw,84px) 0 clamp(42px,4vw,62px);background:var(--wings-ivory)}
.blog-archive-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);align-items:center;gap:clamp(36px,4.5vw,72px);min-height:220px;padding-right:0}
.blog-archive-hero__copy{position:relative;z-index:2}
.blog-archive-hero h1{margin:0 0 16px;font-size:clamp(41.4px,3.42vw,52.2px);font-weight:500;line-height:1.05;letter-spacing:-.035em}
.blog-archive-hero p{max-width:650px;margin:0;color:var(--wings-muted);font-size:16.2px}
.blog-archive-hero__flight{min-height:170px}
.blog-archive-hero__flight img{width:100%;height:170px;object-fit:contain}
.blog-listing{padding:clamp(38px,3.5vw,52px) 0 var(--section-y)}
.blog-categories{display:flex;align-items:center;gap:10px;margin:0 0 clamp(34px,3vw,44px);padding:0;overflow-x:auto;border:0;border-radius:0;background:transparent;box-shadow:none;scroll-padding-inline:0;scrollbar-width:none}
.blog-categories a{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;min-height:44px;padding:10px 19px;border:1px solid var(--wings-line);border-radius:999px;background:#fff;color:var(--wings-navy);font-size:11.7px;font-weight:600;line-height:1.2;text-align:center;text-decoration:none;box-shadow:none;transition:border-color .2s ease,background-color .2s ease,color .2s ease,opacity .2s ease}
.blog-categories a:last-child{border-right:1px solid var(--wings-line)}
.blog-categories a:hover{border-color:rgba(29,50,84,.3);background:var(--wings-blue)}
.blog-categories a.is-pending{opacity:.58}
.blog-categories a[aria-current="page"]{border-color:var(--wings-navy);background:var(--wings-navy);color:#fff;box-shadow:none}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.7vw,24px)}
.blog-grid:has(.blog-card:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr));max-width:920px}
.blog-card{overflow:hidden;display:flex;flex-direction:column;border:1px solid var(--wings-line);border-radius:24px;background:#fff;box-shadow:none;transition:transform .2s ease,border-color .2s ease}
.blog-card:hover{transform:translateY(-3px);border-color:rgba(29,50,84,.28)}
.blog-card__media{aspect-ratio:1.52/1;margin:10px;border-radius:18px 54px 18px 54px;overflow:hidden}
.blog-card__media img{width:100%;height:100%;object-fit:cover}
.blog-card__body{display:flex;flex:1;flex-direction:column;padding:10px 20px 20px}
.blog-card__category{width:max-content;padding:6px 9px;border:1px solid var(--wings-line);border-radius:999px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.blog-card__title{margin:16px 0 10px;font-size:19.8px;line-height:1.2}.blog-card__excerpt{margin:0 0 20px;color:var(--wings-muted);font-size:12.6px}.blog-card__meta{margin-top:auto;padding-top:14px;border-top:1px solid var(--wings-line);font-size:12px}
.blog-archive-page .blog-card{display:grid;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);min-height:210px}
.blog-archive-page .blog-card__media{height:calc(100% - 20px);aspect-ratio:auto}
.blog-archive-page .blog-card__body{padding:16px 16px 16px 6px}
.blog-archive-page .blog-card__title{margin:12px 0 8px;font-size:17.1px}
.blog-archive-page .blog-card__excerpt{display:-webkit-box;margin-bottom:12px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px}
.blog-archive-page .blog-card__meta a{box-sizing:border-box;justify-content:flex-end;width:44px;min-height:44px;margin:-10px -8px -10px 0;padding:10px 8px;overflow:hidden;border-radius:12px;white-space:nowrap;color:transparent}
.blog-archive-page .blog-card__meta a:hover{background:var(--wings-blue)}
.blog-archive-page .blog-card__meta a svg{color:var(--wings-navy)}
.blog-load-more-wrap{margin-top:clamp(38px,4vw,56px)}.blog-load-more-wrap:has(.blog-load-more[hidden]):has(.blog-load-status:empty){display:none}.blog-load-more{min-width:180px;background:transparent;border:1px solid var(--wings-yellow-strong)}.blog-load-status.is-error{color:var(--wings-danger);font-weight:600}
.blog-archive-cta{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:clamp(58px,5vw,76px);padding:30px 36px;border:1px solid rgba(29,50,84,.1);border-radius:22px;background:var(--wings-blue)}.blog-archive-cta h2{margin:0 0 7px;font-size:23.4px}.blog-archive-cta p{margin:0;color:var(--wings-muted);font-size:12.6px}

/* Public materials hub */
.materials-archive-page,.materials-collection-page{background:#fff}
.materials-hero{padding:clamp(58px,5.5vw,84px) 0 clamp(44px,4.5vw,66px);background:var(--wings-ivory)}
.materials-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.5fr);align-items:center;gap:clamp(36px,4.5vw,72px);min-height:280px}
.materials-hero__copy{position:relative;z-index:2;min-width:0}
.materials-hero h1{max-width:900px;margin:0 0 16px;font-size:clamp(41.4px,3.42vw,52.2px);font-weight:500;line-height:1.05;letter-spacing:-.035em}
.materials-hero p{max-width:720px;margin:0;color:var(--wings-muted);font-size:16.2px}
.materials-hero__flight{min-width:0;min-height:190px}
.materials-hero__flight img{width:100%;height:190px;object-fit:contain}
.materials-mode-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:min(460px,100%);margin-top:30px;padding:5px;border:1px solid var(--wings-line);border-radius:999px;background:rgba(255,255,255,.78)}
.materials-mode-switch a{display:flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border-radius:999px;color:var(--wings-navy);font-size:12.6px;font-weight:650;text-decoration:none;transition:background-color var(--motion-ui) ease,color var(--motion-ui) ease}
.materials-mode-switch a:hover{background:var(--wings-blue)}
.materials-mode-switch a[aria-current="page"]{background:var(--wings-navy);color:#fff}
.materials-listing,.materials-tests{padding:clamp(48px,4.5vw,72px) 0 var(--section-y)}
.materials-section-head,.materials-tests__head{display:flex;align-items:flex-end;justify-content:space-between;gap:clamp(28px,4vw,64px);margin-bottom:clamp(30px,3vw,44px)}
.materials-section-head>div:first-child,.materials-tests__head>div:first-child{max-width:760px}
.materials-section-head h2,.materials-tests__head h2{margin:0 0 10px;font-size:clamp(28.8px,2.25vw,37.8px);font-weight:550;line-height:1.12}
.materials-section-head p,.materials-tests__head p{margin:0;color:var(--wings-muted);font-size:13.5px}
.materials-section-count{flex:none;padding:8px 13px;border:1px solid var(--wings-line);border-radius:999px;background:var(--wings-ivory);color:var(--wings-navy);font-size:12px;font-weight:650}
.materials-filter{display:grid;grid-template-columns:minmax(190px,260px) auto;align-items:end;gap:8px;min-width:min(100%,380px)}
.materials-filter label,.materials-test-filters label{grid-column:1/-1;display:block;margin:0 0 7px;color:var(--wings-navy);font-size:12px;font-weight:650}
.materials-filter__control{position:relative;min-width:0}
.materials-filter__control::after,.materials-test-filters__field::after{content:"";position:absolute;right:17px;bottom:18px;width:8px;height:8px;border-right:2px solid var(--wings-navy);border-bottom:2px solid var(--wings-navy);pointer-events:none;transform:rotate(45deg) translateY(-3px)}
.materials-filter select,.materials-test-filters select{width:100%;min-height:48px;padding:11px 44px 11px 15px;border:1px solid var(--wings-line);border-radius:14px;appearance:none;background:#fff;color:var(--wings-navy);font-size:12.6px;font-weight:550;line-height:1.2}
.materials-filter__submit{min-height:48px;padding-inline:16px}
.materials-archive-page .blog-card{display:grid;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr);min-height:210px}
.materials-archive-page .blog-card__media{height:calc(100% - 20px);aspect-ratio:auto}
.materials-archive-page .blog-card__body{padding:16px 16px 16px 6px}
.materials-archive-page .blog-card__title{margin:12px 0 8px;font-size:17.1px}
.materials-archive-page .blog-card__excerpt{display:-webkit-box;margin-bottom:12px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:12px}
.materials-archive-page .blog-card__meta a{box-sizing:border-box;justify-content:flex-end;width:44px;min-height:44px;margin:-10px -8px -10px 0;padding:10px 8px;overflow:hidden;border-radius:12px;white-space:nowrap;color:transparent}
.materials-archive-page .blog-card__meta a:hover{background:var(--wings-blue)}
.materials-archive-page .blog-card__meta a svg{color:var(--wings-navy)}
.materials-archive-cta{margin-top:clamp(58px,5vw,76px)}
.materials-collection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2vw,28px)}
.material-collection-card{min-width:0;overflow:hidden;border:1px solid var(--wings-line);border-radius:24px;background:#fff;color:inherit;text-decoration:none;transition:border-color var(--motion-ui) ease,background-color var(--motion-ui) ease}
.material-collection-card:hover,.material-collection-card:focus-visible{border-color:rgba(5,41,80,.32);background:#fcfdff}
.material-collection-card__media{position:relative;aspect-ratio:1.52/1;margin:10px;overflow:hidden;border-radius:18px 54px 18px 54px;background:var(--wings-blue)}
.material-collection-card__media>img,.material-collection-card__fallback,.material-collection-card__fallback>img{display:block;width:100%;height:100%}
.material-collection-card__media>img{object-fit:cover;transition:transform 420ms var(--ease-wings)}
.material-collection-card:hover .material-collection-card__media>img{transform:scale(1.025)}
.material-collection-card__fallback{position:relative;display:grid;place-items:center;overflow:hidden}
.material-collection-card__fallback>img{position:absolute;inset:0;object-fit:cover;opacity:.28}
.material-collection-card__fallback .wings-brand-asset{position:relative;z-index:1;width:min(38%,150px);height:auto;object-fit:contain}
.material-collection-card__badge{position:absolute;top:13px;left:13px;max-width:calc(100% - 26px);padding:7px 10px;border:1px solid rgba(5,41,80,.13);border-radius:999px;background:rgba(255,255,255,.9);color:var(--wings-navy);font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;backdrop-filter:blur(8px)}
.material-collection-card__body{display:flex;min-height:190px;flex-direction:column;padding:14px 20px 20px}
.material-collection-card__body h2{margin:0 0 10px;font-size:21.6px;line-height:1.18}
.material-collection-card__body p{display:-webkit-box;margin:0 0 20px;overflow:hidden;color:var(--wings-muted);font-size:12.6px;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.material-collection-card__meta{display:flex;align-items:center;gap:9px;margin-top:auto;padding-top:15px;border-top:1px solid var(--wings-line);color:var(--wings-muted);font-size:12px}
.material-collection-card__meta>span:not(:last-child)+span:not(:last-child)::before{content:"·";margin-right:9px}
.material-collection-card__arrow{display:grid;place-items:center;width:36px;height:36px;margin:-8px -7px -8px auto;border-radius:11px;color:var(--wings-navy);transition:background-color var(--motion-ui) ease}
.material-collection-card__arrow svg{width:19px;height:19px;transition:transform var(--motion-ui) var(--ease-wings)}
.material-collection-card:hover .material-collection-card__arrow{background:var(--wings-blue)}
.material-collection-card:hover .material-collection-card__arrow svg{transform:translateX(3px)}
.materials-empty{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:22px;padding:30px 32px;border:1px solid var(--wings-line);border-radius:22px;background:var(--wings-ivory)}
.materials-empty__mark{display:grid;place-items:center;width:58px;height:58px;border-radius:18px 18px 30px 18px;background:var(--wings-navy);color:var(--wings-yellow);font-family:Georgia,serif;font-size:29px}
.materials-empty h2{margin:0 0 6px;font-size:21.6px}.materials-empty p{margin:0;color:var(--wings-muted);font-size:12.6px}

/* One public material collection */
.materials-collection-hero{padding:clamp(42px,4vw,64px) 0;background:var(--wings-ivory)}
.materials-collection-hero__inner{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.58fr);align-items:center;gap:clamp(40px,6vw,90px)}
.materials-collection-hero__copy{min-width:0}
.materials-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;color:var(--wings-muted);font-size:12px}
.materials-breadcrumb a{text-decoration:none}.materials-breadcrumb a:hover{text-decoration:underline;text-underline-offset:3px}
.materials-collection-label{display:inline-flex;margin-bottom:16px;padding:7px 10px;border:1px solid var(--wings-line);border-radius:999px;background:#fff;color:var(--wings-navy);font-size:12px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.materials-collection-hero h1{max-width:850px;margin:0 0 16px;font-size:clamp(41.4px,3.42vw,54px);font-weight:550;line-height:1.04;letter-spacing:-.04em}
.materials-collection-hero__copy>p{max-width:720px;margin:0;color:var(--wings-muted);font-size:15.3px}
.materials-collection-summary{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
.materials-collection-summary span{padding:7px 10px;border:1px solid var(--wings-line);border-radius:999px;background:rgba(255,255,255,.72);color:var(--wings-navy);font-size:12px;font-weight:600}
.materials-collection-hero__media{aspect-ratio:1.32/1;margin:0;overflow:hidden;border:1px solid var(--wings-yellow-strong);border-radius:70px 22px 82px 22px;background:var(--wings-blue)}
.materials-collection-hero__media img{width:100%;height:100%;object-fit:cover}
.materials-collection-hero__flight{min-width:0}.materials-collection-hero__flight img{width:100%;height:230px;object-fit:contain}
.materials-tests__head{align-items:flex-end}
.materials-test-filters{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;min-width:min(100%,610px)}
.materials-test-filters__field{position:relative;min-width:170px}
.materials-test-filters__field label{grid-column:auto}
.materials-test-filters .btn{min-height:48px;padding-inline:16px}
.materials-test-filters__reset{display:inline-flex;align-items:center;min-height:48px;padding:10px;color:var(--wings-muted);font-size:12px;font-weight:600;text-underline-offset:3px}
.materials-test-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.material-test-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;min-height:174px;overflow:hidden;border:1px solid var(--wings-line);border-radius:21px;background:#fff;color:inherit;text-decoration:none;transition:border-color var(--motion-ui) ease,background-color var(--motion-ui) ease}
.material-test-card:hover,.material-test-card:focus-visible{border-color:rgba(5,41,80,.3);background:rgba(220,238,255,.26)}
.material-test-card__copy{display:flex;min-width:0;flex-direction:column;padding:22px 24px}
.material-test-card__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:15px;color:var(--wings-muted);font-size:12px}
.material-test-card__meta span{display:inline-flex;align-items:center;gap:8px}.material-test-card__meta span+span::before{content:"·";color:var(--wings-blue-strong)}
.material-test-card h2{margin:0 0 8px;font-size:19.8px;line-height:1.2}
.material-test-card p{display:-webkit-box;margin:0;color:var(--wings-muted);font-size:11.7px;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.material-test-card__action{display:flex;align-items:center;justify-content:center;gap:10px;width:150px;padding:18px;border-left:1px solid var(--wings-line);background:var(--wings-ivory);color:var(--wings-navy);font-size:11.7px;font-weight:700;text-align:center;transition:background-color var(--motion-ui) ease}
.material-test-card__action svg{flex:none;width:19px;height:19px;transition:transform var(--motion-ui) var(--ease-wings)}
.material-test-card:hover .material-test-card__action{background:var(--wings-yellow)}
.material-test-card:hover .material-test-card__action svg{transform:translateX(3px)}
.materials-pagination{display:flex;justify-content:center;margin-top:42px}
.materials-pagination ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px;margin:0;padding:0;list-style:none}
.materials-pagination a,.materials-pagination span{display:grid;place-items:center;min-width:42px;min-height:42px;padding:8px 12px;border:1px solid var(--wings-line);border-radius:12px;background:#fff;color:var(--wings-navy);font-size:12px;font-weight:650;text-decoration:none}
.materials-pagination a:hover{background:var(--wings-blue)}.materials-pagination .current{border-color:var(--wings-navy);background:var(--wings-navy);color:#fff}
.materials-empty--tests{margin-top:4px}

/* Public test SEO landing */
.material-test-landing{background:#fff}
.material-test-landing__hero{padding:clamp(46px,4.5vw,74px) 0;background:var(--wings-ivory)}
.material-test-landing__grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.62fr);align-items:center;gap:clamp(42px,6vw,92px)}
.material-test-landing__copy{min-width:0}
.material-test-landing__meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:17px}
.material-test-landing__meta span{padding:7px 10px;border:1px solid var(--wings-line);border-radius:999px;background:#fff;color:var(--wings-navy);font-size:12px;font-weight:650}
.material-test-landing h1{max-width:900px;margin:0 0 18px;font-size:clamp(41.4px,3.6vw,57.6px);font-weight:550;line-height:1.04;letter-spacing:-.04em}
.material-test-landing__copy>p{max-width:720px;margin:0;color:var(--wings-muted);font-size:15.3px}
.material-test-landing__actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:30px}
.material-test-landing__actions .btn{display:inline-flex;align-items:center;gap:12px}.material-test-landing__actions .btn svg{width:19px;height:19px}
.material-test-landing__back{color:var(--wings-navy);font-size:11.7px;font-weight:600;text-decoration:none}.material-test-landing__back:hover{text-decoration:underline;text-underline-offset:3px}
.material-test-landing__notes{display:flex;flex-wrap:wrap;gap:8px 20px;margin:30px 0 0;padding:20px 0 0;border-top:1px solid var(--wings-line);color:var(--wings-muted);font-size:12px;list-style:none}
.material-test-landing__notes li{display:flex;align-items:center;gap:8px}.material-test-landing__notes li::before{content:"";width:7px;height:7px;border:2px solid var(--wings-yellow-strong);border-radius:50%}
.material-test-landing__media{aspect-ratio:1.2/1;margin:0;overflow:hidden;border:1px solid var(--wings-yellow-strong);border-radius:76px 22px 92px 22px;background:var(--wings-blue)}
.material-test-landing__media img{width:100%;height:100%;object-fit:cover}
.material-test-landing__brand{position:relative;display:grid;place-items:center;min-height:340px;overflow:hidden;border:1px solid var(--wings-line);border-radius:76px 22px 92px 22px;background:var(--wings-blue)}
.material-test-landing__brand>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}.material-test-landing__brand .wings-brand-asset{position:relative;width:min(42%,180px)}
.material-test-landing__details{padding:clamp(44px,4vw,66px) 0 var(--section-y)}
.material-test-landing__details-inner{display:flex;align-items:center;justify-content:space-between;gap:42px;padding:30px 34px;border:1px solid var(--wings-line);border-radius:22px;background:var(--wings-blue)}
.material-test-landing__details-inner>div{max-width:780px}.material-test-landing__details h2{margin:0 0 8px;font-size:23.4px}.material-test-landing__details p{margin:0;color:var(--wings-muted);font-size:12.6px}.material-test-landing__details .btn{display:inline-flex;flex:none;align-items:center;gap:10px}.material-test-landing__details .btn svg{width:18px;height:18px}

/* Single article */
.single-article{background:#fff}
.article-hero{padding-top:clamp(58px,5.5vw,82px)}.article-hero__grid{display:block}.article-hero__title{max-width:1240px}
.article-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:24px;color:var(--wings-muted);font-size:11.7px;overflow-wrap:anywhere}.article-breadcrumb a{text-decoration:none}.article-breadcrumb a:hover{text-decoration:underline}
.article-hero h1{max-width:1240px;font-size:clamp(37.8px,3.51vw,50.4px);font-weight:500;line-height:1.04;letter-spacing:-.04em}
.article-meta{gap:12px;margin-top:22px}.article-meta>*{padding:7px 10px;border:1px solid var(--wings-line);border-radius:999px;background:transparent;font-size:12px}
.article-hero__media{margin-top:42px;border-radius:80px 24px 120px 24px;overflow:hidden;border:1px solid var(--wings-yellow-strong)}
.article-hero__media img{width:100%;max-height:650px;object-fit:cover}
.article-layout{grid-template-columns:260px minmax(0,760px);justify-content:center;gap:clamp(50px,7vw,100px);padding-top:clamp(58px,5vw,76px);padding-bottom:clamp(58px,5vw,76px)}
.article-sidebar{position:sticky;top:calc(var(--wings-header-height) + 28px);align-self:start;max-height:calc(100svh - var(--wings-header-height) - 56px);overflow:auto}.article-toc--desktop{position:static;top:auto;padding:0;background:transparent;border:0;box-shadow:none}
.article-toc__title{margin-bottom:14px}.article-toc a{padding:10px 14px;border-left:2px solid var(--wings-line);border-radius:0;background:transparent}
.article-toc a[aria-current="true"]{border-left-color:var(--wings-yellow-strong);border-radius:0 12px 12px 0;background:var(--wings-blue);box-shadow:none}
.article-content{font-size:15.3px;line-height:1.75}.article-content h2{scroll-margin-top:var(--header-offset);margin-top:70px;font-size:clamp(28.8px,3.6vw,41.4px)}.article-content h3{scroll-margin-top:var(--header-offset);margin-top:42px;font-size:22.5px}
.article-content img{border-radius:18px 54px 18px 54px}.article-content iframe,.article-content video{width:100%;aspect-ratio:16/9;border:0;border-radius:20px}
.is-style-wings-enroll-cta{margin-top:72px;padding:38px;border:0;border-radius:24px 68px 24px 68px;background:var(--wings-navy);box-shadow:none}.is-style-wings-enroll-cta h2,.is-style-wings-enroll-cta h3{color:#fff}.is-style-wings-enroll-cta p{margin-bottom:24px;color:rgba(255,255,255,.72)}
.is-style-wings-resource-cta{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;margin:42px 0;padding:26px 28px;border:1px solid rgba(29,50,84,.1);border-radius:20px;background:var(--wings-blue)}.is-style-wings-resource-cta>*{margin:0}.is-style-wings-resource-cta h2,.is-style-wings-resource-cta h3{margin:0 0 8px;font-size:21.6px}.is-style-wings-resource-cta .wp-block-button__link{display:inline-flex;min-height:44px;align-items:center;padding:10px 16px;border-radius:13px;background:var(--wings-yellow);color:var(--wings-navy);text-decoration:none;font-weight:600}
.article-related{padding-top:0;padding-bottom:var(--section-y)}.article-related__head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}.article-related__head h2{margin:0;font-size:30.6px}.article-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,1.7vw,24px)}

/* Student login */
.wings-student-login-page .site-header .primary-nav,.wings-student-login-page .site-header .header-actions,.wings-student-login-page .site-header .header-divider,.wings-student-login-page .site-header .burger{display:none}.wings-student-login-page .header-home-link{margin-left:auto;color:var(--wings-navy);font-size:12.6px;font-weight:600;text-decoration:none}.wings-student-login-page .header-home-link:hover{text-decoration:underline}.wings-student-login-page .footer-cta{display:none}
.wings-student-login-page #main.section{padding:0}.wings-student-login-page #main>.container{width:100%;max-width:none}.wings-student-login-page .page-content>.text{max-width:none;margin:0}
.student-auth-shell{width:min(1280px,calc(100% - 48px));min-height:calc(100svh - var(--wings-header-height) - 180px);margin:30px auto 70px}
.student-auth-layout{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;width:100%;border:1px solid var(--wings-line);border-radius:30px;background:#fff}
.student-auth-value{position:relative;min-height:650px;padding:60px;background:var(--wings-blue);overflow:hidden}
.student-auth-value h1{max-width:520px;margin:16px 0 32px;font-size:clamp(37.8px,3.6vw,52.2px);line-height:1.08}.student-auth-value ul{display:grid;gap:22px;max-width:440px;margin:0;padding:0;list-style:none}.student-auth-value li{display:grid;gap:4px;padding-left:0}.student-auth-value li strong{color:var(--wings-navy)}.student-auth-value li span{color:var(--wings-muted);font-size:12.6px}
.student-auth-photo{position:absolute;right:-30px;bottom:-34px;width:48%;aspect-ratio:1/1;overflow:hidden;border-radius:70% 12% 70% 12%;border:1px solid var(--wings-yellow-strong)}.student-auth-photo img{width:100%;height:100%;object-fit:cover}
.student-auth-card{display:flex;flex-direction:column;justify-content:center;width:auto;padding:clamp(48px,6vw,88px);border:0;border-radius:0;background:#fff;box-shadow:none}
.student-auth-card h2{margin:0 0 8px;font-size:clamp(34.2px,3.6vw,48.6px)}.student-auth-card>p{margin:0;color:var(--wings-muted)}
.student-login-form{margin-top:30px}.student-password-field{position:relative;display:block}.student-password-field input{padding-right:94px}.student-password-field button{position:absolute;right:7px;top:50%;min-height:36px;padding:7px 10px;transform:translateY(-50%);border:0;background:transparent;color:var(--wings-navy);font-size:11.5px;font-weight:600;cursor:pointer}
.student-auth-shell .btn-primary{background:var(--wings-yellow);color:var(--wings-navy)}.student-auth-note{margin:16px 0 0!important;font-size:11.7px}.student-auth-back{display:inline-flex;margin-top:22px;color:var(--wings-navy);font-size:12.6px;font-weight:600}

/* Student account */
.student-account-shell.student-account-redesign{width:min(1380px,calc(100% - 48px));margin:30px auto 70px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.student-account-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:36px;padding:0 0 18px;border-bottom:1px solid var(--wings-line)}
.student-account-nav strong{color:var(--wings-navy)}.student-account-nav>div{display:flex;gap:6px;padding:4px;border:1px solid var(--wings-line);border-radius:999px;background:#fff}.student-account-nav a{min-height:40px;padding:9px 18px;border-radius:999px;color:var(--wings-navy);text-decoration:none;font-size:11.7px;font-weight:600}.student-account-nav a[aria-current="page"]{background:var(--wings-blue)}
.student-account-hero{align-items:center;padding:12px 0 30px}.student-profile-avatar{width:116px;height:116px;border-radius:50%}.student-account-hero h1{font-size:clamp(34.2px,3.6vw,52.2px);font-weight:500}.student-group-pill{display:inline-flex;margin-top:8px;padding:7px 12px;border-radius:999px;background:var(--wings-blue);color:var(--wings-navy);font-size:11.7px}.student-logout{padding:10px 14px;border-radius:999px;text-decoration:none}.student-logout:hover{background:var(--wings-blue)}
.student-balance-band{grid-template-columns:minmax(180px,.45fr) minmax(280px,1fr);max-width:760px;margin:10px 0 12px;border:1px solid var(--wings-line);border-radius:22px;background:#fff;overflow:hidden;gap:0}.student-balance-band .student-metric-card{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:start;gap:8px 20px;min-height:130px;padding:26px 32px;border:0;border-right:1px solid var(--wings-line);border-radius:0;background:transparent}.student-balance-band .student-metric-card:last-child{border-right:0}.student-balance-band .student-metric-card span{color:var(--wings-navy);font-weight:600}.student-balance-band .student-metric-card strong{grid-row:1/3;margin:0;font-size:46.8px;font-weight:500}.student-balance-band small{max-width:330px;color:var(--wings-muted);font-size:11.5px;line-height:1.5}
.student-account-redesign #reschedules{max-width:760px;margin-top:14px;padding:18px 22px;background:var(--wings-blue);border:0}.student-account-redesign #reschedules .student-panel-head{margin:0}.student-account-redesign #reschedules h2{font-size:18px}.student-account-redesign #reschedules .student-reschedule-policy{padding:8px 0 0;border:0;background:transparent}.student-account-redesign #reschedules .student-reschedule-policy p{font-size:11.7px}.student-account-redesign #reschedules .student-reschedule-policy p+ p{display:none}
.student-learning{margin-top:56px;padding:0;border:0;background:transparent}.student-learning .student-panel-head{align-items:end;margin-bottom:18px}.student-learning h2{font-size:clamp(27px,2.7vw,37.8px)}.student-learning-tabs{display:flex;gap:5px;padding:4px;border:1px solid var(--wings-line);border-radius:999px;background:#fff}.student-learning-tabs button{min-height:40px;padding:8px 16px;border:0;border-radius:999px;background:transparent;color:var(--wings-navy);font:inherit;font-size:11.7px;font-weight:600;cursor:pointer}.student-learning-tabs button[aria-selected="true"]{background:var(--wings-blue)}.student-learning-tabs span{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:5px;border-radius:50%;background:#fff}
.student-file-list{border:1px solid var(--wings-line);border-radius:22px;background:#fff;overflow:hidden}.student-file-row{display:grid;grid-template-columns:minmax(250px,1.2fr) minmax(160px,.7fr) minmax(220px,1fr) minmax(260px,1.1fr);align-items:center;gap:22px;padding:24px;border-bottom:1px solid var(--wings-line)}.student-file-row:last-child{border-bottom:0}.student-file-row__main{display:flex;align-items:center;gap:14px}.student-file-type{display:grid;place-items:center;width:48px;height:52px;border:1px solid var(--wings-line);border-radius:10px;background:var(--wings-ivory);color:var(--wings-navy);font-size:11.5px;font-weight:700}.student-file-row h3{margin:0 0 5px;font-size:15.3px}.student-file-row a{color:var(--wings-navy);font-size:11.5px;font-weight:600}.student-file-row__meta{display:flex;gap:24px;margin:0}.student-file-row__meta div{display:grid;gap:4px}.student-file-row__meta dt,.student-file-row__note strong{color:var(--wings-muted);font-size:11.5px;font-weight:500}.student-file-row__meta dd{margin:0;color:var(--wings-navy);font-size:11.7px}.student-file-row__note p{margin:5px 0 0;font-size:11.7px}.student-file-row__response{min-width:0}.student-file-success{display:grid;gap:3px;padding:12px;border-radius:12px;background:#edf9f2;color:var(--wings-success);font-size:11.5px}.student-file-form{margin-top:10px;padding:0;border:0}.student-file-form label{position:relative;padding:13px;border:1px dashed rgba(29,50,84,.28);border-radius:13px;background:var(--wings-ivory);cursor:pointer}.student-file-form label:has(input[type="file"]:focus-visible){outline:3px solid #2878df;outline-offset:3px;box-shadow:0 0 0 2px #fff}.student-file-form input[type="file"]{position:absolute;opacity:0;pointer-events:none}.student-file-form small,.student-file-form em{color:var(--wings-muted);font-size:11.5px;font-style:normal}.student-file-form em.is-error{color:var(--wings-danger)}.student-file-form .btn{min-height:40px;padding:9px 14px}.student-file-row--material{grid-template-columns:1fr auto}.student-account-help{margin-top:36px;color:var(--wings-muted);font-size:11.7px}

/* Admin */
.students-dashboard.students-dashboard-redesign{width:min(1440px,calc(100% - 32px));margin:0 auto 50px;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.students-dashboard-nav{display:flex;align-items:center;gap:34px;padding:14px 0;border-bottom:1px solid var(--wings-line)}.students-dashboard-nav strong{margin-right:auto;color:var(--wings-navy)}.students-dashboard-nav>div{display:flex;gap:26px}.students-dashboard-nav a{padding:9px 0;color:var(--wings-navy);text-decoration:none;font-size:11.7px}.students-dashboard-nav a[aria-current="page"]{border-bottom:2px solid var(--wings-blue-strong);font-weight:600}.students-dashboard-head{align-items:center;margin-top:30px}.students-dashboard-head h1{font-size:clamp(28.8px,2.7vw,34.2px);font-weight:500}.students-dashboard-head p{margin-top:8px}.students-dashboard-actions .btn-primary{background:var(--wings-yellow);color:var(--wings-navy)}.student-low-summary{display:flex;justify-content:space-between;align-items:center}.student-low-summary a{color:var(--wings-navy)}
.students-admin-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:26px 0 4px;border-block:1px solid var(--wings-line)}.students-admin-overview__item{position:relative;display:grid;grid-template-columns:1fr auto;align-items:end;gap:2px 14px;min-height:88px;padding:15px 18px;border-right:1px solid var(--wings-line);color:var(--wings-navy);text-decoration:none}.students-admin-overview__item:last-child{border-right:0}.students-admin-overview__item>span{align-self:start;color:var(--wings-muted);font-size:11.5px;font-weight:600}.students-admin-overview__item>strong{grid-column:2;grid-row:1/3;align-self:center;font-size:27px;font-weight:600;line-height:1}.students-admin-overview__item>small{overflow:hidden;text-overflow:ellipsis;color:var(--wings-muted);font-size:11.5px;white-space:nowrap}.students-admin-overview__item:hover,.students-admin-overview__item.is-active{background:#eef6ff}.students-admin-overview__item.is-active::after{content:"";position:absolute;inset:auto 18px 0;height:2px;background:var(--wings-blue-strong)}.students-admin-overview__item.is-attention>strong{color:#9b6500}
.students-filter{grid-template-columns:minmax(230px,1.2fr) minmax(180px,.7fr) auto auto;align-items:end;margin-top:18px}.students-filter input,.students-filter select{min-height:46px;border:1px solid var(--wings-line);border-radius:13px;background:#fff;padding:10px 13px;font:inherit}.students-filter__check{display:flex!important;align-items:center;min-height:46px;gap:9px!important}.students-filter__check input{width:20px;height:20px}.students-filter-reset{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:8px 4px;color:var(--wings-navy);font-size:11.5px;font-weight:600}.students-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(400px,470px);align-items:start;gap:18px}.student-admin-grid{gap:0;border-top:1px solid var(--wings-line)}.student-list-head,.student-list-row{display:grid;grid-template-columns:minmax(240px,320px) minmax(140px,190px) 72px 80px minmax(170px,1fr) 108px;align-items:center;gap:14px}.student-list-head{padding:12px 16px;color:var(--wings-muted);font-size:11.5px}.student-list-row{padding:14px 16px;border:0;border-bottom:1px solid var(--wings-line);border-radius:0;background:transparent}.student-list-row.is-selected{border-left:3px solid var(--wings-blue-strong);background:#eef6ff}.student-list-row.is-low-balance{border-color:var(--wings-line);background:linear-gradient(90deg,rgba(254,226,226,.3),transparent 35%)}.student-list-row.is-selected.is-low-balance{background:linear-gradient(90deg,#eef6ff,rgba(254,226,226,.24))}.student-list-person h2{font-size:13.5px}.student-list-avatar{width:48px;height:48px;border-radius:50%}.student-list-stat strong{font-size:17.1px}.student-list-stat span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px}.student-list-row>.btn{min-height:38px;padding:8px 12px;border:1px solid var(--wings-line);background:#fff;color:var(--wings-navy)}
.students-dashboard-redesign:not(.has-selected-student) .students-workspace{grid-template-columns:minmax(0,1fr)}
.student-detail-pane{position:sticky;top:calc(var(--wings-header-height) + 14px);max-height:calc(100svh - var(--wings-header-height) - 28px);overflow:auto;border:1px solid var(--wings-line);border-radius:22px;background:#fff;box-shadow:var(--wings-shadow)}.student-detail-close{position:absolute;right:18px;top:14px;z-index:2;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--wings-navy);text-decoration:none;font-size:21.6px}.student-detail-pane .student-admin-card{padding:24px;border:0;border-radius:0;background:transparent}.student-detail-pane .student-admin-main{grid-template-columns:auto 1fr;padding-right:44px}.student-admin-context{display:grid;gap:3px;margin-top:10px;color:var(--wings-muted);font-size:11.5px}.student-admin-context a{overflow:hidden;text-overflow:ellipsis;color:var(--wings-navy);white-space:nowrap}.student-detail-pane .student-admin-balances{grid-column:1/-1;margin-top:10px}.student-detail-pane .student-admin-balances div{flex:1}.student-admin-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:18px 0 4px}.student-admin-section-head h3{margin:0;color:var(--wings-navy);font-size:16.2px}.student-admin-section-head p{margin:4px 0 0;color:var(--wings-muted);font-size:11.5px}.student-admin-section-head>span{flex:none;padding:6px 10px;border-radius:999px;background:var(--wings-blue);color:var(--wings-navy);font-size:11.5px;font-weight:700}.student-detail-pane .student-admin-quick{grid-template-columns:1fr;gap:8px;margin-top:10px}.student-detail-pane .student-quick-form{padding:12px;border-radius:13px}.student-detail-pane .student-admin-details{margin-top:18px}.student-detail-pane .student-admin-details summary{padding:4px 0}.student-detail-pane .student-form-grid,.student-detail-pane .student-admin-split{grid-template-columns:1fr}.student-detail-pane .student-material-list{grid-template-columns:1fr}.student-detail-pane .student-admin-help{font-size:11.5px}.student-detail-pane .student-history-item{font-size:11.5px}

/* Product shells: student and administrator */
.wings-student-account-page,.wings-students-dashboard-page{background:#fff}
.wings-student-account-page .site-header,.wings-student-account-page .site-footer,.wings-student-account-page #enroll-modal,.wings-students-dashboard-page .site-header,.wings-students-dashboard-page .site-footer,.wings-students-dashboard-page #enroll-modal{display:none!important}
.wings-student-account-page #main.section,.wings-students-dashboard-page #main.section{padding:0}.wings-student-account-page #main>.container,.wings-students-dashboard-page #main>.container{width:100%;max-width:none}.wings-student-account-page .page-content>.text,.wings-students-dashboard-page .page-content>.text{max-width:none;margin:0}
.student-product-brand{display:flex;align-items:center;gap:18px;color:var(--wings-navy);text-decoration:none;font-size:12.6px;font-weight:600;white-space:nowrap}.student-product-brand .wings-brand-asset{width:58px;border-radius:15px}.student-product-brand__label{padding-left:18px;border-left:1px solid var(--wings-line)}
.student-account-nav,.students-dashboard-nav{position:sticky;top:0;z-index:20;min-height:74px;margin:0;padding:12px 0;border-bottom:1px solid var(--wings-line);background:rgba(255,255,255,.97);backdrop-filter:blur(12px)}
.student-account-nav{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;margin-bottom:38px}.student-account-nav>div{padding:0;border:0;background:transparent}.student-account-tabs{display:flex!important;justify-self:center;gap:6px!important;padding:4px!important;border:1px solid var(--wings-line)!important;border-radius:999px!important;background:#fff!important}.student-account-tabs a{border-bottom:2px solid transparent}.student-account-tabs a[aria-current="page"]{border-bottom-color:#2878df;background:transparent}.student-account-user{display:flex!important;align-items:center;justify-content:flex-end;gap:12px!important;color:var(--wings-navy);font-size:11.7px;font-weight:600}.student-nav-avatar{width:38px;height:38px;border-radius:50%;font-size:11.7px}.student-account-user .student-logout{margin-left:8px;padding-left:18px;border-left:1px solid var(--wings-line);border-radius:0}
.student-account-overview{display:grid;grid-template-columns:minmax(390px,.75fr) minmax(600px,1.25fr);align-items:center;gap:clamp(44px,6vw,90px);padding:4px 8px 26px}.student-account-overview .student-profile{align-items:center;gap:20px}.student-account-overview .student-profile h1{margin:0 0 8px;font-size:clamp(28.8px,2.7vw,36px);font-weight:500}.student-account-overview .student-profile p{margin:0;color:var(--wings-muted)}.student-account-overview .student-profile-avatar{width:112px;height:112px;border-radius:50%}.student-learning h2{font-size:21.6px}
.student-account-overview .student-balance-band{grid-template-columns:minmax(200px,.65fr) minmax(360px,1.35fr);max-width:none;margin:0}.student-account-overview .student-balance-band .student-metric-card{min-height:138px}.student-account-overview .student-balance-band .student-metric-card.is-low strong,.student-list-stat strong.is-low{color:var(--wings-danger)}
.student-account-redesign>.student-alert{max-width:760px;margin:8px 0 22px}.student-file-unavailable{color:var(--wings-danger);font-size:11.5px;font-weight:600}.student-material-picker{display:flex;align-items:center;gap:10px}.student-material-clear{border:0;background:transparent;color:var(--wings-danger);font:inherit;font-size:11.5px;cursor:pointer}.student-admin-form small{color:var(--wings-muted);font-size:11.5px;font-weight:400}
.student-file-replace{margin-top:8px}.student-file-replace>summary{display:inline-flex;color:var(--wings-navy);font-size:11.5px;font-weight:700;cursor:pointer}.student-file-replace[open]>summary{margin-bottom:6px}.student-file-replace .student-file-form{margin-top:0}

.students-dashboard-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}.students-dashboard-sections{display:flex;justify-content:center;gap:28px}.students-dashboard-user{display:flex;align-items:center;justify-content:flex-end;gap:12px;color:var(--wings-navy);font-size:11.7px}.students-dashboard-nav .student-product-brand{justify-self:start}.students-dashboard-nav>div{display:flex}.students-dashboard-nav .students-dashboard-user a:last-child{padding-left:14px;border-left:1px solid var(--wings-line)}
.wings-assignments-app>.students-dashboard-nav,.wia-app--library>.students-dashboard-nav{width:min(1440px,calc(100% - 32px));margin-inline:auto}
.student-list-head,.student-list-row{grid-template-columns:minmax(240px,320px) minmax(140px,190px) 72px 80px minmax(170px,1fr) 108px}.student-list-group,.student-list-activity{display:grid;gap:3px;min-width:0}.student-list-group span{overflow:hidden;text-overflow:ellipsis;color:var(--wings-navy);font-size:11.5px;white-space:nowrap}.student-list-activity strong{color:var(--wings-navy);font-size:11.5px}.student-list-activity span{overflow:hidden;text-overflow:ellipsis;color:var(--wings-muted);font-size:11.5px;white-space:nowrap}.student-list-stat strong.is-low+span{color:var(--wings-danger)}
.students-pagination{grid-column:1/-1;padding:24px 0}.students-pagination ul{display:flex;justify-content:center;gap:6px;margin:0;padding:0;list-style:none}.students-pagination a,.students-pagination span{display:grid;place-items:center;min-width:40px;min-height:40px;padding:6px 10px;border:1px solid var(--wings-line);border-radius:10px;text-decoration:none}.students-pagination .current{border-color:var(--wings-blue-strong);background:var(--wings-blue);color:var(--wings-navy);font-weight:700}
.student-detail-tabs{display:flex;gap:24px;margin:18px -24px 0;padding:0 24px;border-bottom:1px solid var(--wings-line)}.student-detail-tabs button{min-height:46px;padding:10px 0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--wings-muted);font:inherit;font-size:12.6px;font-weight:600;cursor:pointer}.student-detail-tabs button[aria-selected="true"]{border-bottom-color:#2878df;color:var(--wings-navy)}.student-detail-panel[hidden]{display:none!important}.student-history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0}.student-history-toolbar select{min-height:40px;border:1px solid var(--wings-line);border-radius:11px;background:#fff;padding:8px 10px;color:var(--wings-navy);font:inherit;font-size:11.5px}.student-history-item[hidden]{display:none}
.student-admin-dialog{width:min(760px,calc(100% - 32px));max-height:calc(100svh - 40px);overflow:hidden;padding:0;border:1px solid var(--wings-line);border-radius:24px;background:#fff;color:var(--wings-text);box-shadow:0 30px 100px rgba(4,18,38,.3)}.student-admin-dialog[open]{display:flex;flex-direction:column}.student-admin-dialog::backdrop{background:rgba(10,26,49,.64)}.student-admin-dialog--compact{width:min(520px,calc(100% - 32px))}.student-admin-dialog__head{display:flex;flex:0 0 auto;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 28px;border-bottom:1px solid var(--wings-line);background:#fff}.student-admin-dialog__head span{color:var(--wings-muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em}.student-admin-dialog__head h2{margin:4px 0 0;font-size:27px}.student-admin-dialog__head>button{border:0;background:transparent;color:var(--wings-navy);font:inherit;font-size:11.7px;cursor:pointer}.student-admin-dialog>.student-admin-form{min-height:0;max-height:calc(100svh - 142px);overflow:auto;padding:24px 28px}.student-form-section{margin:0;padding:0;border:0}.student-form-section+.student-form-section{margin-top:24px;padding-top:22px;border-top:1px solid var(--wings-line)}.student-form-section legend{margin:0 0 14px;color:var(--wings-navy);font-size:12.6px;font-weight:700}.student-dialog-actions{position:sticky;bottom:-24px;z-index:2;display:flex;justify-content:flex-end;gap:10px;margin:22px -28px -24px;padding:14px 28px;border-top:1px solid var(--wings-line);background:rgba(255,255,255,.98)}.student-password-create{grid-column:1/-1;display:grid;gap:7px;font-weight:800}.student-password-create__control{display:grid;grid-template-columns:minmax(0,1fr) auto}.student-password-create__control input{border-radius:16px 0 0 16px!important}.student-password-create__control button{min-width:116px;border:1px solid var(--wings-line);border-left:0;border-radius:0 16px 16px 0;background:var(--wings-blue);color:var(--wings-navy);font:inherit;font-size:11.5px;font-weight:700;cursor:pointer}.student-password-create__control button:hover{background:#c9e4ff}
.student-groups-list{margin-top:22px;border-top:1px solid var(--wings-line)}.student-groups-head,.student-group-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,.55fr) 130px 110px;align-items:center;gap:16px;padding:13px 16px;border-bottom:1px solid var(--wings-line)}.student-groups-head{color:var(--wings-muted);font-size:11.5px}.student-group-row input,.student-group-row select{width:100%;min-height:44px;border:1px solid var(--wings-line);border-radius:12px;background:#fff;padding:9px 12px;color:var(--wings-navy);font:inherit}.student-group-count{display:flex;align-items:baseline;gap:8px;color:var(--wings-navy);text-decoration:none}.student-group-count strong{font-size:16.2px}.student-group-count span{font-size:11.5px;text-decoration:underline}.students-groups-dashboard>.student-admin-dialog+*{display:none}

@media(max-width:1180px){
  /* Шесть пунктов, телефон и две кнопки в один ряд уже не помещаются. Первым
     убираем телефон: он продублирован в подвале и в мобильном меню. */
  .primary-nav .nav-list > li > a{padding-inline:9px;font-size:14px}
  .header-inner{gap:14px}
  .header-actions{gap:10px}
  .header-phone{display:none}
  .header-account-btn{padding:0 14px}
  .hero-redesign__grid{grid-template-columns:1fr 1fr;gap:36px}.hero-redesign h1{width:auto;max-width:100%;font-size:clamp(36.9px,4.14vw,44.1px);letter-spacing:-.045em}
  .plans-grid{grid-template-columns:repeat(2,1fr)}.plan-card:nth-child(2){border-right:0}.plan-card:last-child{grid-column:1/-1;border-top:1px solid var(--wings-line)}
  .student-file-row{grid-template-columns:1.2fr .7fr 1fr}.student-file-row__response{grid-column:1/-1}
  .student-account-overview{grid-template-columns:1fr}.student-account-overview .student-balance-band{max-width:760px}
  .students-workspace{grid-template-columns:minmax(0,1fr) minmax(380px,44%)}
  .student-list-head,.student-list-row{grid-template-columns:minmax(210px,280px) minmax(120px,160px) 56px 64px minmax(140px,1fr) 104px;gap:10px}
}

@media(min-width:901px) and (max-width:1180px){
  .hero-redesign{min-height:auto;padding-bottom:28px}
  .hero-redesign__media{align-self:center;padding-bottom:0}
}

@media(max-width:1080px){
  :root{--wings-header-height:68px;--wings-header-height-scrolled:60px}
  .site-header{background:var(--wings-ivory);backdrop-filter:none}
  /* Знак рисуется с запасом в 136% от своей рамки, поэтому в шапке 68px рамка
     должна быть 48px — иначе картинка вылезает за нижнюю границу. */
  .logo .wings-brand-asset{width:48px}
  .header-divider{display:none}
  .header-account-btn--desktop{display:none}
  .header-actions{margin-left:auto}
  .primary-nav{
    position:fixed;
    inset:var(--wings-header-height) 12px auto;
    display:none;
    flex:none;
    max-height:calc(100svh - var(--wings-header-height) - 16px);
    margin:0;
    padding:8px 16px 20px;
    overflow-y:auto;
    overscroll-behavior:contain;
    border-radius:20px;
    background:var(--wings-ivory);
    box-shadow:var(--wings-shadow);
  }
  .primary-nav.is-open{display:block}
  .primary-nav .nav-list{display:grid;gap:0;height:auto}
  .primary-nav .nav-list > li{display:block;border-bottom:1px solid #f0eadd}
  .primary-nav .nav-list > li:last-child{border-bottom:0}
  /* В раскрытом меню подчёркивание невидимо на границе строки, поэтому текущий
     пункт помечаем начертанием и жёлтой меткой слева. */
  .primary-nav .nav-list > li > a{
    width:100%;
    min-height:52px;
    padding:15px 4px 15px 12px;
    box-shadow:none;
    border-left:3px solid transparent;
    color:var(--wings-navy);
    font-size:17px;
  }
  .primary-nav .nav-list > li > a[aria-current],
  .primary-nav .nav-list > li.current-menu-item > a,
  .primary-nav .nav-list > li > a.is-current{
    box-shadow:none;
    border-left-color:var(--wings-yellow-strong);
  }
  .primary-nav.is-open .header-account-btn--mobile{
    display:flex;
    justify-content:center;
    width:100%;
    height:52px;
    margin:16px 0 0;
    border:1.5px solid var(--wings-navy);
    background:transparent;
    font-size:16px;
  }
  .primary-nav.is-open .mobile-menu-contact{display:grid!important;margin-top:14px}
  .burger{display:inline-flex;margin-left:2px}
}

@media(max-width:900px){
  .burger{display:flex;width:44px;height:44px;flex:0 0 44px;border:1px solid #e3ddd1;border-radius:12px;background:#fff}
  .burger span{left:13px;right:13px;background:var(--wings-navy)}
  .burger span:nth-child(1){top:14px}.burger span:nth-child(2){top:21px}.burger span:nth-child(3){top:28px;right:19px}
  .burger.is-open span{left:13px;right:13px}
  .burger.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.burger.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .hero-redesign{min-height:auto;padding-top:46px}.hero-redesign__grid{grid-template-columns:1fr}.hero-redesign__copy{padding-bottom:0}.hero-redesign__media{width:min(680px,100%);margin:0 auto;padding-top:10px}.hero-redesign::before{display:none}
  .audiences__grid{grid-template-columns:1fr}.audiences__item:first-child{border-right:0;border-bottom:1px solid var(--wings-line)}
  .learning-redesign__grid,.about-grid{grid-template-columns:1fr}.learning-redesign__media{order:-1}.about-media{max-width:620px}.about-grid{padding:28px}
  .faq-footer{grid-template-columns:1fr}.faq-cta-card{min-height:340px}
  .article-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .article-toc--mobile{margin:0 0 38px;padding:18px 20px;border:1px solid var(--wings-line);border-radius:18px;background:#fff}
  .article-toc--mobile summary{color:var(--wings-navy);font-weight:700;cursor:pointer}
  .article-toc--mobile[open] summary{margin-bottom:14px}
  .article-toc--mobile ol{margin-top:12px}
  /* Три колонки в ряд перестают помещаться: описание школы сжимается до
     нечитаемой ленты. Бренд занимает всю ширину, разделы и контакты — под ним. */
  .footer-main__inner{grid-template-columns:1fr 1fr;gap:32px 40px;padding:38px 0 32px}
  .footer-brand{grid-column:1/-1;max-width:none}
  .footer-cta__inner{align-items:flex-start;flex-direction:column;gap:20px;padding:28px 0}
  .footer-cta__form{align-self:stretch}
  .footer-cta__input{flex:1;width:auto}
  .legal-layout,.article-layout{grid-template-columns:1fr}.legal-nav,.article-sidebar{position:static}.legal-nav{display:flex;overflow-x:auto}.legal-nav strong{display:none}.legal-nav a{flex:none;border-left:0;border-bottom:2px solid var(--wings-line)}.article-sidebar{display:none}.article-toc--desktop{display:none}.article-toc--mobile{display:block}
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .materials-hero__inner{grid-template-columns:minmax(0,1fr) minmax(220px,.42fr)}
  .materials-section-head,.materials-tests__head{align-items:flex-start;flex-direction:column}
  .materials-filter,.materials-test-filters{width:100%;justify-content:flex-start}
  .materials-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .materials-collection-hero__inner{grid-template-columns:1fr minmax(260px,.5fr);gap:36px}
  .materials-test-grid{grid-template-columns:1fr}
  .material-test-landing__grid{grid-template-columns:1fr minmax(280px,.5fr);gap:38px}
  .student-auth-layout{grid-template-columns:1fr}.student-auth-value{order:2;min-height:auto;padding:44px}.student-auth-photo{display:none}.student-auth-card{order:1;padding:44px}
  .student-file-row{grid-template-columns:1fr 1fr}.student-file-row__note,.student-file-row__response{grid-column:1/-1}
  .student-account-nav{grid-template-columns:1fr auto}.student-account-tabs{grid-column:1/-1;grid-row:2;justify-self:stretch;justify-content:center}.student-account-user span{display:none}
  .students-dashboard-nav{grid-template-columns:1fr auto}.students-dashboard-sections{grid-column:1/-1;grid-row:2}.students-dashboard-user span{display:none}
  .students-workspace{grid-template-columns:1fr}.student-detail-pane{position:static;max-height:none;overflow:visible}.students-filter{grid-template-columns:minmax(0,1fr) minmax(180px,.65fr) auto auto}.student-list-head,.student-list-row{grid-template-columns:minmax(220px,300px) minmax(130px,180px) 60px 68px minmax(130px,1fr) 104px}
}

@media(max-width:700px){
  .container{width:min(100% - 28px,var(--wings-container))}.section{padding:60px 0}
  /* Запись на пробное — главное действие лендинга, на телефоне она остаётся
     в шапке рядом с бургером, а не прячется в меню. */
  .header-enroll{height:40px;padding:0 16px;font-size:14px;box-shadow:none}
  .header-enroll__arrow{display:none}
  .logo .wings-brand-asset{width:44px;border-radius:14px}
  .hero-redesign{padding-top:36px}
  .hero-redesign__copy{gap:18px}
  /* Полное название школы в плашку одной строкой не помещается. Не режем текст,
     а уменьшаем саму плашку — две строки мелким шрифтом спорят с заголовком
     меньше, чем крупная плашка в half-экрана. */
  .hero-redesign__eyebrow{padding:8px 14px;font-size:11px;letter-spacing:.1em;line-height:1.35}
  .hero-redesign__eyebrow span{width:14px;height:14px}
  .hero-redesign h1{font-size:clamp(30px,8.6vw,36px)}
  .hero-redesign h1>span{white-space:normal}
  .hero-redesign__copy>p{font-size:16px}
  .hero-redesign__actions{align-items:stretch;flex-direction:column;gap:14px;width:100%}
  .hero-redesign__actions .btn{width:100%}
  /* Подчёркивание должно обнимать текст, а не тянуться на всю ширину экрана,
     поэтому ссылка центрируется целиком, а не её содержимое. */
  .hero-redesign__link{align-self:center;justify-content:center}
  .hero-redesign__media{padding:6px 0 36px}
  .hero-redesign__frame{border-radius:68px 24px 90px 28px}
  .hero-redesign__words{display:none}
  /* На телефоне следующая секция и так начинается сразу за фото — маркер
     дублировал бы очевидное. В макете на мобильной версии его тоже нет. */
  .hero-redesign__scroll{display:none}
  .audiences__item{grid-template-columns:46px 1fr;min-height:200px;padding:42px 22px;column-gap:16px}.audiences__icon{width:46px;height:46px;font-size:38.7px;line-height:46px}.audiences__marker{display:none}
  .learning-redesign h2,.about-title{font-size:32.4px}.learning-redesign__step{padding:16px 0}.learning-redesign__step h3{font-size:15.3px}.learning-redesign__step p{font-size:12.6px}.learning-redesign__image{border-radius:26px 70px 28px 90px}
  .about-grid{padding:22px;border-radius:24px 24px 58px 24px}.about-v2 .media-frame{aspect-ratio:1.3/1}.about-title{font-size:28.8px}.learning-redesign{padding:68px 0}.about-v2{padding:60px 0}.price-v2{padding:68px 0 62px}.faq-redesign{padding:68px 0}
  .price-head{margin-bottom:28px}.price-head .h2{font-size:30.6px}.plans-grid{grid-template-columns:1fr}.plan-card,.plan-card:nth-child(2),.plan-card:last-child{grid-column:auto;border-right:0;border-top:1px solid var(--wings-line)}.plan-card:first-child{border-top:0}.plan-card{min-height:300px;padding:26px 22px}.plan-description{min-height:0}.price-note{align-items:flex-start;flex-wrap:wrap;margin-top:26px}
  .faq-card{padding:28px 24px;border-radius:24px 48px 24px 24px}.faq-cta-card{min-height:330px;padding:34px 28px;border-radius:26px 56px 26px 64px}.faq-cta-card h2{font-size:34.2px}
  /* Телефон: поле и кнопка встают друг под друга — в строку они дают поле
     шириной в пару символов. Якоря идут в два столбца, как в макете: шесть
     коротких пунктов в один столбец растянули бы подвал вдвое. */
  .footer-cta__form{flex-direction:column;gap:10px;padding:0;border-radius:0;background:transparent}
  .footer-cta__input{width:100%;min-height:50px;padding:0 20px;border-radius:999px;background:#fff}
  .footer-cta__button{justify-content:center;width:100%;min-height:52px}
  .footer-main__inner{grid-template-columns:1fr;gap:26px;padding:30px 0 28px}
  .footer-links ul{display:grid;grid-template-columns:1fr 1fr;grid-auto-flow:row;gap:14px 16px}
  .footer-redesign__bottom{align-items:flex-start;flex-direction:column;gap:10px;padding:16px 0}
  .footer-redesign__bottom nav{flex-wrap:wrap}
  .modal-redesign{inset:0;padding:0}.modal-redesign .modal__dialog{width:100%;height:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0}.modal-redesign .modal__head{padding:24px 22px 8px;padding-top:max(24px,env(safe-area-inset-top))}.modal-redesign .modal__body{padding:16px 22px max(28px,env(safe-area-inset-bottom))}.modal-redesign .modal__close{position:sticky;float:right;top:max(14px,env(safe-area-inset-top));right:14px;z-index:3}.enroll-fallback .f-grid,.enroll-fallback .f-grid--identity{grid-template-columns:1fr}.enroll-format{grid-template-columns:1fr}.enroll-format label{border-right:0;border-bottom:1px solid var(--wings-line)}.enroll-format label:last-child{border-bottom:0}
  .error-page{padding:0}.error-shell{grid-template-columns:1fr;gap:20px;min-height:680px;padding:50px 0}.error-code{font-size:153px}.error-content h1{font-size:36px}.error-actions{align-items:stretch;flex-direction:column}.error-quick-links{align-items:stretch;flex-direction:column}.error-quick-links a,.error-quick-links button{width:100%;border-right:0;border-bottom:1px solid var(--wings-line)}.error-quick-links>*:last-child{border-bottom:0}
  .legal-shell{padding:50px 0;background:none}.legal-hero{margin-bottom:40px}.legal-hero h1{font-size:clamp(27px,7.65vw,34.2px);overflow-wrap:anywhere}.legal-nav{margin:0 -14px;padding:0 14px}.legal-content{font-size:13.5px}
  .blog-archive-hero{padding:48px 0 38px}.blog-archive-hero__inner{grid-template-columns:1fr;min-height:auto;padding-right:0}.blog-archive-hero__flight{display:none}.blog-archive-hero h1{font-size:clamp(32.4px,9.45vw,37.8px);overflow-wrap:anywhere}.blog-listing{padding-top:32px}.blog-categories{margin-inline:0;padding-inline:0}.blog-grid,.blog-grid:has(.blog-card:nth-child(2):last-child){grid-template-columns:1fr;max-width:none}.blog-card__title{font-size:18.9px}.blog-archive-page .blog-card{grid-template-columns:1fr}.blog-archive-page .blog-card__media{height:auto;aspect-ratio:16/10}.blog-archive-page .blog-card__body{padding:18px 20px 20px}.blog-archive-page .blog-card__title{font-size:18.9px}.blog-archive-page .blog-card__excerpt{font-size:12.6px}
  .blog-archive-cta{align-items:stretch;flex-direction:column;padding:24px}.blog-archive-cta .btn{width:100%}
  .materials-hero{padding:46px 0 38px}.materials-hero__inner{grid-template-columns:1fr;min-height:auto}.materials-hero__flight{display:none}.materials-hero h1{font-size:clamp(32.4px,9.45vw,39.6px);overflow-wrap:anywhere}.materials-hero p{font-size:13.5px}.materials-mode-switch{width:100%;margin-top:24px}.materials-mode-switch a{padding-inline:14px}.materials-listing,.materials-tests{padding-top:38px}.materials-section-head,.materials-tests__head{gap:22px;margin-bottom:28px}.materials-section-head h2,.materials-tests__head h2{font-size:28.8px}.materials-filter{grid-template-columns:1fr;width:100%}.materials-filter label{grid-column:auto}.materials-filter__submit{width:100%}.materials-archive-page .blog-card{grid-template-columns:1fr}.materials-archive-page .blog-card__media{height:auto;aspect-ratio:16/10}.materials-archive-page .blog-card__body{padding:18px 20px 20px}.materials-archive-page .blog-card__title{font-size:18.9px}.materials-archive-page .blog-card__excerpt{font-size:12.6px}.materials-collection-grid{grid-template-columns:1fr}.material-collection-card__body{min-height:0}.materials-empty{grid-template-columns:auto 1fr;padding:24px}.materials-empty .btn{grid-column:1/-1;width:100%}.materials-collection-hero{padding:38px 0}.materials-collection-hero__inner{grid-template-columns:1fr}.materials-collection-hero h1{font-size:36px}.materials-collection-hero__media{order:-1;aspect-ratio:16/10;border-radius:44px 18px 58px 18px}.materials-collection-hero__flight{display:none}.materials-test-filters{display:grid;grid-template-columns:1fr;width:100%}.materials-test-filters__field{min-width:0}.materials-test-filters .btn{width:100%}.materials-test-filters__reset{justify-content:center}.material-test-card{grid-template-columns:1fr;min-height:0}.material-test-card__copy{padding:20px}.material-test-card__action{justify-content:space-between;width:auto;min-height:48px;padding:12px 20px;border-top:1px solid var(--wings-line);border-left:0}.materials-archive-cta{margin-top:48px}.material-test-landing__hero{padding:38px 0}.material-test-landing__grid{grid-template-columns:1fr}.material-test-landing h1{font-size:36px}.material-test-landing__media,.material-test-landing__brand{order:-1;min-height:0;aspect-ratio:16/10;border-radius:44px 18px 58px 18px}.material-test-landing__actions{align-items:stretch;flex-direction:column}.material-test-landing__actions .btn{justify-content:center;width:100%}.material-test-landing__back{text-align:center}.material-test-landing__notes{display:grid}.material-test-landing__details-inner{align-items:stretch;flex-direction:column;padding:26px}.material-test-landing__details .btn{justify-content:center;width:100%}
  .article-hero{padding-top:46px}.article-hero h1{font-size:36px}.article-hero__media{border-radius:42px 18px 62px 18px}.article-layout{padding-top:40px;padding-bottom:52px}.article-content{font-size:14.4px}.is-style-wings-enroll-cta{padding:28px;border-radius:20px 42px 20px 42px}
  .article-related__head{align-items:flex-end;flex-wrap:wrap;margin-bottom:22px}.article-related__head h2{font-size:27px}
  .is-style-wings-resource-cta{grid-template-columns:1fr}.article-related__grid{grid-template-columns:1fr}
  .student-auth-shell{width:calc(100% - 24px);margin:16px auto 46px}.student-auth-value{padding:30px}.student-auth-value h1{font-size:34.2px}.student-auth-value ul{gap:15px}.student-auth-card{padding:30px 22px}.student-auth-card h2{font-size:32.4px}
  .student-account-shell.student-account-redesign{width:calc(100% - 24px);margin:0 auto 50px}.student-account-nav{position:sticky;top:0;grid-template-columns:1fr;gap:14px;padding-top:16px}.student-product-brand .wings-brand-asset{width:52px;border-radius:13px}.student-account-tabs{grid-column:auto;grid-row:auto;width:100%;justify-content:flex-start;overflow-x:auto}.student-account-nav a{flex:none}.student-account-tabs a{min-height:44px}.student-account-user{position:absolute;right:0;top:12px}.student-account-user>span,.student-account-user>.student-nav-avatar{display:none}.student-account-user .student-logout{border-left:0}.student-account-overview{grid-template-columns:1fr;padding-inline:0}.student-account-overview .student-profile{align-items:center;flex-direction:row}.student-account-overview .student-profile-avatar{width:82px;height:82px}.student-account-overview .student-profile h1{font-size:30.6px}.student-account-overview .student-balance-band{grid-template-columns:1fr}.student-balance-band .student-metric-card{border-right:0;border-bottom:1px solid var(--wings-line)}.student-balance-band .student-metric-card:last-child{border-bottom:0}.student-learning .student-panel-head{align-items:flex-start;flex-direction:column}.student-learning-tabs{width:100%;overflow-x:auto}.student-learning-tabs button{flex:none;min-height:44px}.student-file-row{grid-template-columns:1fr;padding:18px}.student-file-row__meta,.student-file-row__note,.student-file-row__response{grid-column:auto}.student-file-row__meta{justify-content:space-between}.student-file-row--material{grid-template-columns:1fr}.student-file-row--material>.btn{width:100%}
  .students-dashboard.students-dashboard-redesign{width:calc(100% - 20px);margin-top:0}.wings-assignments-app>.students-dashboard-nav,.wia-app--library>.students-dashboard-nav{width:calc(100% - 20px)}.students-dashboard-nav{position:sticky;top:0;grid-template-columns:1fr;padding-top:16px}.students-dashboard-sections{grid-column:auto;grid-row:auto;justify-content:flex-start}.students-dashboard-user{position:absolute;right:0;top:12px}.students-dashboard-user>.student-nav-avatar,.students-dashboard-user>span,.students-dashboard-user>a:first-child{display:none}.students-dashboard-head{align-items:flex-start}.students-dashboard-actions{width:100%}.students-dashboard-actions .btn{flex:1}.students-admin-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.students-admin-overview__item:nth-child(2){border-right:0}.students-admin-overview__item:nth-child(-n+2){border-bottom:1px solid var(--wings-line)}.students-filter{grid-template-columns:1fr}.students-workspace{grid-template-columns:minmax(0,1fr)}.student-list-head{display:none}.student-admin-grid,.student-list-row,.student-list-person,.student-list-person>div,.student-detail-pane{min-width:0}.student-admin-grid{width:100%}.student-list-row{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.student-list-person{grid-column:1/-1}.student-list-person span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.student-list-group{grid-column:1/-1}.student-list-activity{grid-column:1/3}.student-list-row>.btn{width:100%}.student-detail-pane{border-radius:18px}.student-detail-pane .student-admin-card{padding:18px}.student-detail-pane .student-admin-main{grid-template-columns:auto 1fr}.student-detail-tabs{margin-inline:-18px;padding-inline:18px}.student-admin-dialog{width:100%;height:100svh;max-height:100svh;border:0;border-radius:0}.student-admin-dialog__head,.student-admin-dialog>.student-admin-form{padding-inline:20px}.student-admin-dialog>.student-admin-form{flex:1 1 auto;max-height:none}.student-dialog-actions{bottom:0;flex-direction:column-reverse;margin-inline:-20px;padding-inline:20px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.student-dialog-actions .btn{width:100%}.student-password-create__control{grid-template-columns:1fr}.student-password-create__control input{border-radius:16px 16px 0 0!important}.student-password-create__control button{min-height:44px;border-top:0;border-left:1px solid var(--wings-line);border-radius:0 0 16px 16px}.student-groups-head{display:none}.student-group-row{grid-template-columns:1fr}.student-group-count::before{content:"Учнів: ";font-size:11.5px;font-weight:500}
}

/* Ultra-wide screens: grow visual layouts without stretching long-form copy. */
@media(min-width:1600px){
  :root{
    --wings-container:clamp(1360px,76vw,2160px);
    --section-y:clamp(92px,4.8vw,132px);
  }
  .hero-redesign{
    min-height:clamp(640px,35vw,900px);
  }
  .hero-redesign::before{
    background-size:clamp(1120px,42vw,1600px) auto;
  }
  .hero-redesign__grid{
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr);
    gap:clamp(48px,3.2vw,80px);
  }
  .hero-redesign h1{
    max-width:820px;
    font-size:clamp(57.6px,2.925vw,70.2px);
  }
  .hero-redesign h1>span:nth-child(3){
    font-size:clamp(52.2px,2.52vw,61.2px);
  }
  .hero-redesign__copy>p{
    max-width:680px;
    font-size:clamp(16.2px,.9vw,18.9px);
  }
  .hero-redesign__media{
    width:100%;
    max-width:1120px;
    justify-self:end;
  }
  .logo .wings-brand-asset{width:clamp(78px,4vw,92px)}
  .primary-nav .nav-list>li>a{font-size:clamp(12.6px,.648vw,14.4px)}
  .header-account-btn,.header-enroll{font-size:clamp(12.6px,.648vw,14.4px)}
  .audiences__item:first-child{
    padding-inline-start:max(6vw,calc((100vw - var(--wings-container))/2));
  }
  .audiences__item{min-height:clamp(300px,16vw,360px);padding-block:clamp(58px,3.2vw,80px)}
  .audiences__icon{width:clamp(76px,4vw,88px);height:clamp(76px,4vw,88px);font-size:clamp(63px,3.33vw,73.8px);line-height:1}
  .audiences__item h2{font-size:clamp(34.2px,1.62vw,43.2px)}
  .audiences__item p{font-size:clamp(12.6px,.702vw,15.3px)}
  .learning-redesign{padding:clamp(104px,5.3vw,148px) 0}
  .about-v2{padding:clamp(96px,4.8vw,136px) 0}
  .about-v2::after{background-size:clamp(1100px,48vw,1700px) auto}
  .price-v2{padding:clamp(104px,5.3vw,148px) 0 clamp(96px,4.8vw,136px)}
  .faq-redesign{padding:clamp(104px,5.3vw,148px) 0}
  .learning-redesign h2{max-width:680px;font-size:clamp(38.7px,2.025vw,50.4px)}
  .learning-redesign__step h3{font-size:clamp(14.4px,.81vw,16.2px)}
  .learning-redesign__step p{font-size:clamp(10.8px,.648vw,12.6px)}
  .about-grid{padding:clamp(34px,2vw,48px) clamp(42px,2.4vw,58px)}
  .about-copy{max-width:860px}
  .about-title{font-size:clamp(36px,1.845vw,45px)}
  .price-head{margin-bottom:clamp(42px,2.4vw,62px)}
  .price-head .h2{font-size:clamp(37.8px,1.845vw,46.8px)}
  .plan-card{
    min-height:clamp(340px,18vw,410px);
    padding:clamp(32px,1.8vw,44px) clamp(34px,2vw,48px);
  }
  .plan-name{font-size:clamp(18.9px,.945vw,22.5px)}
  .plan-description{font-size:clamp(11.7px,.648vw,13.5px)}
  .plan-price{font-size:clamp(13.5px,.738vw,15.3px)}
  .plan-actions .btn{min-height:clamp(42px,2.3vw,48px);font-size:clamp(11.7px,.648vw,13.5px)}
  .price-note{font-size:clamp(11.7px,.648vw,12.6px)}
  .faq-footer{
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    gap:clamp(40px,2.4vw,56px);
  }
  .faq-card>.h2{font-size:clamp(30.6px,1.62vw,39.6px)}
  .faq-card>p{font-size:clamp(12.6px,.702vw,14.4px)}
  .faq-list--compact .faq-q{min-height:clamp(44px,2.7vw,54px)}
  .faq-q-text{font-size:clamp(12.6px,.702vw,14.4px)}
  .faq-a-inner{font-size:clamp(11.7px,.648vw,13.5px)}
  .faq-card{padding:clamp(42px,2.3vw,56px)}
  .faq-cta-card{min-height:clamp(420px,22vw,520px);padding:clamp(54px,3vw,72px)}
  .faq-cta-card h2{font-size:clamp(36px,1.89vw,46.8px)}
  .faq-cta-card p{max-width:620px;font-size:clamp(12.6px,.72vw,14.4px)}
  .price-v2 .container,
  .faq-redesign .container{
    width:min(1840px,var(--wings-container),calc(100% - clamp(72px,5vw,160px)));
  }
  .blog-archive-page .container,
  .materials-archive-page .container,
  .materials-collection-page .container,
  .single-post .container{
    width:min(1920px,var(--wings-container),calc(100% - clamp(72px,5vw,160px)));
  }
  .blog-archive-page{min-height:calc(100svh - var(--wings-header-height) - 94px)}
  .blog-grid:has(.blog-card:nth-child(2):last-child){max-width:min(100%,1280px)}
  .blog-categories{
    width:max-content;
    max-width:100%;
    margin-right:auto;
  }
  .blog-archive-hero h1{font-size:clamp(52.2px,2.52vw,64.8px)}
  .blog-archive-page .blog-card__title{font-size:clamp(17.1px,.945vw,19.8px)}
  .materials-hero h1,.materials-collection-hero h1{font-size:clamp(52.2px,2.52vw,64.8px)}
  .materials-archive-page .blog-card__title{font-size:clamp(17.1px,.945vw,19.8px)}
  .materials-collection-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .material-test-card h2{font-size:clamp(19.8px,1vw,23.4px)}
  .article-hero__title,.article-hero h1{max-width:1440px}
  .article-hero h1{font-size:clamp(50.4px,2.52vw,61.2px)}
  .article-hero__media img{height:100%;max-height:none}
  .error-shell{
    align-content:center;
    grid-template-rows:auto auto;
    row-gap:clamp(28px,3vh,48px);
  }
  .error-code{font-size:clamp(468px,16.2vw,630px)}
  .error-content{max-width:1000px}
  .error-content h1{font-size:clamp(72px,2.7vw,97.2px)}
  .error-content p{max-width:640px;font-size:clamp(16.2px,.81vw,18.9px)}
  .error-actions .btn{min-height:52px;font-size:clamp(13.5px,.675vw,15.3px)}
  .error-quick-links{width:min(900px,100%)}
  .error-quick-links a,.error-quick-links button{font-size:clamp(12.6px,.648vw,14.4px)}
  body:not(.wings-student-login-page):not(.wings-student-account-page):not(.wings-students-dashboard-page) .page-content{
    width:min(100%,78ch);
    margin-inline:auto;
  }
  .modal-redesign .modal__dialog{
    width:min(clamp(560px,33vw,640px),100%);
    max-height:min(calc(100svh - 40px),clamp(760px,42vw,900px));
  }
  .student-auth-shell{
    width:min(2200px,max(1280px,66.667vw),calc(100% - clamp(96px,10vw,360px)));
  }
  .student-auth-layout{grid-template-columns:minmax(0,1.05fr) minmax(540px,.95fr)}
  .student-auth-value{
    min-height:clamp(650px,28vw,980px);
    padding:clamp(60px,3vw,100px);
  }
  .student-auth-card{padding:clamp(64px,4vw,120px)}
  .student-auth-card>h2,
  .student-auth-card>p,
  .student-auth-card>.student-login-form{
    width:min(100%,600px);
    margin-inline:auto;
  }
  .student-auth-back{
    align-self:center;
    width:min(100%,600px);
  }
  .student-account-shell.student-account-redesign{
    width:min(2200px,max(1380px,72vw),calc(100% - clamp(80px,8vw,320px)));
  }
  .student-account-overview{
    width:min(100%,1900px);
    margin-inline:auto;
    grid-template-columns:minmax(460px,.75fr) minmax(720px,1.25fr);
    gap:clamp(64px,5vw,120px);
  }
  .student-account-overview .student-balance-band,
  .student-account-redesign>.student-alert{max-width:1040px}
  .student-learning{
    width:min(100%,1800px);
    margin-inline:auto;
  }
  .students-dashboard.students-dashboard-redesign{
    width:min(2400px,max(1440px,78vw),calc(100% - clamp(64px,6vw,240px)));
  }
  .students-admin-overview,
  .student-groups-list{
    width:min(100%,1900px);
    margin-inline:auto;
  }
  .students-filter{
    grid-template-columns:minmax(320px,560px) minmax(220px,320px) auto auto;
  }
  .students-workspace{
    grid-template-columns:minmax(0,1fr) minmax(470px,clamp(470px,22vw,560px));
    gap:clamp(18px,1.2vw,30px);
  }
}

@media(min-width:2200px){
  .learning-redesign__step h3{font-size:18px}
  .learning-redesign__step p{font-size:15.3px}
  .plan-name{font-size:25.2px}
  .plan-description{font-size:15.3px}
  .plan-price{font-size:16.2px}
  .plan-actions .btn,.price-note{font-size:14.4px}
  .faq-card>p,.faq-q-text,.faq-cta-card p{font-size:15.3px}
  .faq-a-inner{font-size:14.4px}
  .student-product-brand .wings-brand-asset{width:clamp(58px,3vw,72px)}
  .student-account-nav a,.students-dashboard-nav a{font-size:clamp(11.7px,.45vw,14.4px)}
  .student-account-overview .student-profile-avatar{
    width:clamp(112px,4vw,144px);
    height:clamp(112px,4vw,144px);
  }
  .student-account-overview .student-profile h1{font-size:clamp(36px,1.53vw,46.8px)}
  .student-list-head,.student-list-row{
    grid-template-columns:minmax(280px,360px) minmax(180px,240px) 80px 86px minmax(220px,1fr) 118px;
    gap:18px;
  }
}

/* Pricing packages — selected premium card direction */
section#price.pricing-packages{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(74px,6.2vw,104px) 0 clamp(64px,5.2vw,88px);
  background:
    radial-gradient(circle at 11% 11%,rgba(255,237,177,.42),transparent 27%),
    linear-gradient(108deg,#fffdf8 0%,#f7fbff 48%,#edf6ff 100%);
}
section#price.pricing-packages::before{
  content:"";
  position:absolute;
  inset:8% -7% auto -7%;
  z-index:-1;
  height:52%;
  background:url('../img/wings-flight-path.png') center/100% auto no-repeat;
  opacity:.11;
  pointer-events:none;
}
.pricing-packages>.container{
  width:min(1360px,calc(100% - clamp(32px,5vw,80px)));
}
.pricing-packages .price-head{margin-bottom:0;text-align:center}
.pricing-packages .price-head>div{display:grid;justify-items:center}
/* Плашка раздела берётся из базового стиля — своя версия здесь была голым
   жёлтым текстом без точки и не читалась как тот же элемент, что в остальных
   секциях. Остаётся только обнуление нижнего отступа: заголовок ниже задаёт
   свой собственный. */
.pricing-packages .price-head .section-kicker{margin-bottom:0}
.pricing-packages .price-head .h2{
  max-width:900px;
  margin:16px auto 0;
  font-size:clamp(36px,3.2vw,46.8px);
  font-weight:650;
  line-height:1.08;
  letter-spacing:-.035em;
}
/* Только раскладка: размер и цвет берутся из общего правила для подзаголовков
   секций. Собственный шрифт здесь и делал «Пакети занять» не похожими на
   остальные. */
.pricing-packages .price-head>p{
  max-width:760px;
  margin:13px auto 0;
}
.pricing-format-tabs{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  width:min(520px,100%);
  min-height:62px;
  margin:28px auto 0;
  padding:5px;
  border:1px solid rgba(29,50,84,.2);
  border-radius:999px;
  background:rgba(255,255,255,.74);
}
.pricing-format-tab{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-width:0;
  min-height:50px;
  padding:10px 18px;
  border:0;
  border-radius:999px;
  background:transparent;
  color:var(--wings-navy);
  font:inherit;
  font-size:14.4px;
  font-weight:650;
  cursor:pointer;
  transition:background-color .24s ease,color .24s ease;
}
.pricing-format-tab .dashicons{width:22px;height:22px;font-size:21.6px;line-height:22px}
.pricing-format-tab.is-active{
  background:var(--wings-navy);
  color:#fff;
}
.pricing-format-tab:not(.is-active):hover{background:rgba(220,238,255,.62)}
.pricing-format-tab:focus-visible{outline:3px solid #2878df;outline-offset:3px}
.pricing-format-panels{margin-top:28px}
.pricing-format-panel[hidden]{display:none!important}
.pricing-package-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:clamp(18px,2vw,28px);
  align-items:stretch;
}
.pricing-package-grid:has(.pricing-package-card:first-child:last-child){
  grid-template-columns:minmax(0,430px);
  justify-content:center;
}
.pricing-package-grid:has(.pricing-package-card:nth-child(2):last-child){
  grid-template-columns:repeat(2,minmax(0,430px));
  justify-content:center;
}
.pricing-package-card{
  position:relative;
  display:flex;
  min-width:0;
  min-height:520px;
  flex-direction:column;
  padding:30px clamp(26px,2.35vw,38px) 28px;
  overflow:hidden;
  border:1.5px solid var(--wings-navy);
  border-radius:25px;
  background:rgba(255,255,255,.88);
  color:var(--wings-navy);
  text-decoration:none;
  box-shadow:none;
  transition:border-color .24s ease,background-color .24s ease,opacity .7s ease,transform .7s ease;
}
.pricing-package-card:hover{
  border-color:#2878df;
  background:#fff;
  box-shadow:none;
}
.pricing-package-card:focus-visible{
  outline:3px solid #2878df;
  outline-offset:5px;
  box-shadow:none;
}
.pricing-package-card.is-recommended{
  border:2px solid #2d6eb6;
  background:rgba(255,255,255,.96);
}
.pricing-package-card.is-recommended::after{
  content:"";
  position:absolute;
  inset:7px;
  border:2px solid var(--wings-yellow-strong);
  border-radius:19px;
  pointer-events:none;
}
.pricing-package-card>*{position:relative;z-index:1}
.pricing-package-card__badges{
  display:flex;
  align-items:flex-start;
  justify-content:center;
  min-height:38px;
  gap:7px;
}
.pricing-package-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  gap:7px;
  padding:7px 12px;
  border:1px solid rgba(244,184,33,.44);
  border-radius:999px;
  background:#ffdf78;
  color:var(--wings-navy);
  font-size:12px;
  font-weight:750;
  line-height:1.15;
  letter-spacing:.025em;
  text-align:center;
  text-transform:uppercase;
}
.pricing-package-badge .dashicons{width:16px;height:16px;font-size:14.4px;line-height:16px}
.pricing-package-card__heading{text-align:center}
.pricing-package-card__heading h3{
  margin:8px 0 0;
  font-size:clamp(25.2px,2vw,30.6px);
  font-weight:700;
  line-height:1.08;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.pricing-package-card__heading p{
  margin:7px 0 0;
  color:var(--wings-muted);
  font-size:14.4px;
  line-height:1.35;
}
.pricing-package-card__heading::after{
  content:"";
  display:block;
  width:54px;
  height:2px;
  margin:14px auto 0;
  background:var(--wings-yellow-strong);
}
.pricing-package-card__price{
  display:flex;
  min-height:116px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  padding:18px 0;
  text-align:center;
}
.pricing-package-card__price del{
  margin-bottom:5px;
  color:var(--wings-muted);
  font-size:20.7px;
  line-height:1;
}
.pricing-package-card__price strong{
  color:var(--wings-navy);
  font-size:clamp(32.4px,3vw,41.4px);
  font-weight:700;
  line-height:1;
  letter-spacing:-.035em;
}
.pricing-package-card__price span{
  margin-top:9px;
  color:var(--wings-muted);
  font-size:13.5px;
  line-height:1.25;
}
.pricing-package-features{
  display:grid;
  gap:12px;
  margin:0;
  padding:22px 0 0;
  border-top:1px solid rgba(29,50,84,.18);
  list-style:none;
}
.pricing-package-features li{
  display:grid;
  grid-template-columns:20px minmax(0,1fr);
  align-items:start;
  gap:10px;
  color:var(--wings-navy);
  font-size:12.6px;
  line-height:1.4;
}
.pricing-package-features .dashicons{
  display:grid;
  place-items:center;
  width:19px;
  height:19px;
  border-radius:50%;
  background:var(--wings-navy);
  color:#fff;
  font-size:12.6px;
  line-height:19px;
}
.pricing-package-cta{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  width:100%;
  min-height:52px;
  gap:10px;
  margin-top:auto;
  padding:11px 18px;
  border:2px solid var(--wings-navy);
  border-radius:999px;
  background:transparent;
  color:var(--wings-navy);
  font-size:13.5px;
  font-weight:700;
  line-height:1.15;
  text-align:center;
  transition:background-color .24s ease,color .24s ease;
}
.pricing-package-cta>span:first-child{grid-column:2}
.pricing-package-cta__arrow{
  grid-column:3;
  justify-self:end;
  font-size:19.8px;
  line-height:1;
  transition:transform .24s ease;
}
.pricing-package-card.is-recommended .pricing-package-cta,
.pricing-package-card:hover .pricing-package-cta,
.pricing-package-card:focus-visible .pricing-package-cta{
  background:var(--wings-navy);
  color:#fff;
}
.pricing-package-card:hover .pricing-package-cta__arrow,
.pricing-package-card:focus-visible .pricing-package-cta__arrow{transform:translateX(5px)}
.pricing-packages .price-note{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:34px 0 0;
  color:var(--wings-muted);
  font-size:12.6px;
  line-height:1.5;
  text-align:center;
}
.pricing-packages .price-note .dashicons{flex:0 0 auto;color:var(--wings-navy)}

.enroll-selection{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:3px 14px;
  padding:13px 15px;
  border:1px solid rgba(40,120,223,.22);
  border-radius:14px;
  background:#eef6ff;
}
.enroll-selection[hidden]{display:none!important}
.enroll-selection>span{
  grid-column:1/-1;
  color:var(--wings-muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.enroll-selection>strong{min-width:0;font-size:12.6px;line-height:1.35}
.enroll-selection>small{justify-self:end;color:var(--wings-navy);font-size:11.7px;font-weight:700;white-space:nowrap}

@media(max-width:1100px){
  .pricing-package-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
  .pricing-package-grid:has(.pricing-package-card:nth-child(3):last-child) .pricing-package-card:last-child{
    grid-column:1/-1;
    width:calc((100% - 20px)/2);
    justify-self:center;
  }
  .pricing-package-card{min-height:500px}
}

@media(max-width:760px){
  section#price.pricing-packages{padding:62px 0 58px}
  section#price.pricing-packages::before{display:none}
  .pricing-packages>.container{width:min(100% - 28px,1360px)}
  .pricing-packages .price-head .h2{margin-top:13px;font-size:clamp(28.8px,8.4vw,34.2px)}
  .pricing-format-tabs{min-height:56px;margin-top:22px;padding:4px}
  .pricing-format-tab{min-height:46px;padding:8px 10px;font-size:12.6px}
  .pricing-format-tab .dashicons{width:19px;height:19px;font-size:18px;line-height:19px}
  .pricing-format-panels{margin-top:20px}
  .pricing-package-grid,
  .pricing-package-grid:has(.pricing-package-card:first-child:last-child),
  .pricing-package-grid:has(.pricing-package-card:nth-child(2):last-child){
    grid-template-columns:1fr;
    gap:16px;
  }
  .pricing-package-grid:has(.pricing-package-card:nth-child(3):last-child) .pricing-package-card:last-child{
    grid-column:auto;
    width:100%;
  }
  .pricing-package-card{min-height:auto;padding:25px 22px 22px;border-radius:22px}
  .pricing-package-card.is-recommended::after{inset:6px;border-radius:16px}
  .pricing-package-card__heading h3{font-size:25.2px}
  .pricing-package-card__price{min-height:104px;padding:15px 0}
  .pricing-package-card__price strong{font-size:36px}
  .pricing-package-features{padding-top:19px}
  .pricing-package-cta{min-height:50px;margin-top:24px}
  .pricing-packages .price-note{align-items:flex-start;margin-top:25px;font-size:11.7px}
  .enroll-selection{grid-template-columns:1fr}
  .enroll-selection>small{justify-self:start;white-space:normal}
}

@media(max-width:390px){
  .pricing-format-tab .dashicons{display:none}
  .pricing-package-badge{font-size:12px}
  .pricing-packages .price-note{text-align:left}
}

/* Enrollment modal — online-first flow */
.modal-redesign .modal__dialog{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  width:min(640px,100%);
  overflow:hidden;
}
.modal-redesign .modal__head{
  padding:24px 92px 18px 32px;
  border-bottom:1px solid rgba(29,50,84,.1);
  background:
    radial-gradient(circle at 10% 0%,rgba(255,223,120,.24),transparent 52%),
    rgba(255,255,255,.46);
}
.modal-redesign .modal__eyebrow{gap:7px;margin-bottom:12px}
.modal-redesign .modal__eyebrow .dashicons{
  width:17px;
  height:17px;
  color:var(--wings-yellow-strong);
  font-size:16.2px;
  line-height:17px;
}
.modal-redesign .modal__title{
  max-width:510px;
  margin:0 0 7px;
  font-size:clamp(27px,2.5vw,32.4px);
  line-height:1.06;
}
.modal-redesign .modal__intro{max-width:510px;font-size:12.6px;line-height:1.5}
.modal-redesign .modal__close{
  position:absolute;
  top:20px;
  right:22px;
  float:none;
  box-shadow:none;
}
.modal-redesign .modal__close:hover,
.modal-redesign .modal__close:focus-visible{
  border-color:var(--wings-navy);
  background:var(--wings-navy);
  color:#fff;
  box-shadow:none;
  transform:none;
}
.modal-redesign .modal__body{
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding:18px 32px 28px;
  scrollbar-gutter:stable;
}
.modal-redesign .modal__body::-webkit-scrollbar{width:7px}
.modal-redesign .modal__body::-webkit-scrollbar-thumb{
  border-radius:999px;
  background:rgba(29,50,84,.22);
}
.modal-redesign .enroll-fallback{gap:14px}
.modal-redesign .enroll-selection{
  padding:12px 14px;
  border-color:rgba(40,120,223,.2);
  background:#eef6ff;
}
.modal-redesign .enroll-format{
  display:block;
  margin:0;
  padding:0;
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
}
.modal-redesign .enroll-format legend{
  width:auto;
  margin:0 0 7px;
  padding:0;
  color:var(--wings-navy);
  font-size:11.7px;
  font-weight:600;
}
.modal-redesign .enroll-format__options{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  overflow:hidden;
  border:1px solid var(--wings-line);
  border-radius:14px;
  background:#fff;
}
.modal-redesign .enroll-format__options label{
  position:relative;
  min-width:0;
  border-right:1px solid var(--wings-line);
  border-bottom:0;
}
.modal-redesign .enroll-format__options label:last-child{border-right:0}
.modal-redesign .enroll-format__options input{
  position:absolute;
  width:1px;
  height:1px;
  min-height:1px;
  padding:0;
  opacity:0;
  pointer-events:none;
}
.modal-redesign .enroll-format__options span{
  display:grid;
  min-height:46px;
  place-items:center;
  padding:8px 10px;
  color:var(--wings-navy);
  font-size:11.7px;
  font-weight:600;
  line-height:1.2;
  text-align:center;
  cursor:pointer;
  transition:background-color .22s ease,color .22s ease;
}
.modal-redesign .enroll-format__options label:hover span{background:rgba(220,238,255,.55)}
.modal-redesign .enroll-format__options input:checked+span{
  background:var(--wings-navy);
  color:#fff;
  box-shadow:none;
}
.modal-redesign .enroll-format__options input:focus-visible+span{
  outline:3px solid #2878df;
  outline-offset:-3px;
  box-shadow:none;
}
.modal-redesign .enroll-fallback .f-grid--identity{
  grid-template-columns:minmax(0,1fr) 132px;
}
.modal-redesign .enroll-fallback .f-grid--contact{
  grid-template-columns:minmax(0,1.35fr) minmax(150px,.65fr);
  align-items:start;
}
.modal-redesign .enroll-fallback .f-grid--contact .f-label{align-content:start}
.modal-redesign .enroll-fallback select{
  appearance:none;
  -webkit-appearance:none;
  height:46px;
  padding-right:38px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%231D3254' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 14px center;
  background-size:12px;
}
.modal-redesign .enroll-fallback textarea{min-height:72px}
.modal-redesign .enroll-more{
  overflow:hidden;
  padding:0;
  border:1px solid var(--wings-line);
  border-radius:14px;
  background:rgba(255,255,255,.76);
}
.modal-redesign .enroll-more summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:46px;
  padding:11px 14px;
  list-style:none;
  cursor:pointer;
}
.modal-redesign .enroll-more summary::-webkit-details-marker{display:none}
.modal-redesign .enroll-more summary:focus-visible{
  outline:0;
  box-shadow:inset 0 0 0 3px rgba(40,120,223,.72);
}
.modal-redesign .enroll-more summary .dashicons{
  flex:0 0 auto;
  width:18px;
  height:18px;
  font-size:17.1px;
  line-height:18px;
  transition:transform .22s ease;
}
.modal-redesign .enroll-more[open] summary .dashicons{transform:rotate(180deg)}
.modal-redesign .enroll-more__body{
  gap:13px;
  padding:14px;
  border-top:1px solid var(--wings-line);
  background:rgba(238,246,255,.44);
}
.modal-redesign .enroll-fallback .f-consent{
  position:relative;
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  align-items:center;
  gap:9px;
  font-size:12px;
  line-height:1.45;
  cursor:pointer;
}
.modal-redesign .enroll-fallback .f-consent>input{
  position:absolute;
  width:1px;
  height:1px;
  min-height:1px;
  margin:0;
  padding:0;
  opacity:0;
  pointer-events:none;
}
.modal-redesign .f-consent__box{
  display:grid;
  width:18px;
  height:18px;
  place-items:center;
  margin-top:0;
  border:1.5px solid rgba(29,50,84,.34);
  border-radius:5px;
  background:#fff;
  color:#fff;
  transition:border-color .18s ease,background-color .18s ease;
}
.modal-redesign .f-consent__box .dashicons{
  width:14px;
  height:14px;
  font-size:13.5px;
  line-height:14px;
  opacity:0;
  transform:scale(.75);
  transition:opacity .18s ease,transform .18s ease;
}
.modal-redesign .f-consent input:checked+.f-consent__box{
  border-color:var(--wings-navy);
  background:var(--wings-navy);
}
.modal-redesign .f-consent input:checked+.f-consent__box .dashicons{
  opacity:1;
  transform:scale(1);
}
.modal-redesign .f-consent input:focus-visible+.f-consent__box{
  outline:3px solid #2878df;
  outline-offset:3px;
}
.modal-redesign .f-consent input[aria-invalid="true"]+.f-consent__box{
  border-color:var(--wings-danger);
  box-shadow:0 0 0 3px rgba(180,35,24,.1);
}
.modal-redesign .f-consent__text{min-width:0;color:var(--wings-muted)}
.modal-redesign .form-status:not(:empty){
  position:sticky;
  top:-2px;
  z-index:3;
  padding:11px 13px;
  border:1px solid currentColor;
  border-radius:12px;
  background:#fff;
  box-shadow:0 8px 20px rgba(29,50,84,.08);
  text-align:left;
}
.modal-redesign .enroll-fallback.is-error .form-status{background:#fff5f3}
.modal-redesign .enroll-fallback.is-success .form-status{background:#effaf4}
.modal-redesign .enroll-fallback>.btn{
  min-height:52px;
  box-shadow:none;
  transform:none;
}
.modal-redesign .enroll-fallback>.btn:hover,
.modal-redesign .enroll-fallback>.btn:focus-visible{
  background:var(--wings-navy);
  color:#fff;
  box-shadow:none;
  transform:none;
}

@media(max-width:700px){
  .modal-redesign .modal__dialog{
    grid-template-rows:auto minmax(0,1fr);
    overflow:hidden;
  }
  .modal-redesign .modal__head{
    padding:22px 72px 16px 20px;
    padding-top:max(22px,env(safe-area-inset-top));
  }
  .modal-redesign .modal__title{font-size:27px}
  .modal-redesign .modal__intro{font-size:11.7px}
  .modal-redesign .modal__close{
    position:absolute;
    top:max(16px,env(safe-area-inset-top));
    right:16px;
  }
  .modal-redesign .modal__body{
    padding:16px 20px max(24px,env(safe-area-inset-bottom));
  }
  .modal-redesign .enroll-format__options{grid-template-columns:repeat(3,minmax(0,1fr))}
  .modal-redesign .enroll-format__options label{border-right:1px solid var(--wings-line);border-bottom:0}
  .modal-redesign .enroll-format__options label:last-child{border-right:0}
  .modal-redesign .enroll-format__options span{min-height:50px;padding-inline:6px;font-size:12px}
}

@media(max-width:520px){
  .modal-redesign .enroll-fallback .f-grid--identity,
  .modal-redesign .enroll-fallback .f-grid--contact{grid-template-columns:1fr}
  .modal-redesign .enroll-format__options span{overflow-wrap:anywhere}
  .modal-redesign .enroll-fallback .f-consent{align-items:start}
  .modal-redesign .f-consent__box{margin-top:1px}
}

/* Homepage materials — editorial selection of public exercises */
.home-materials{
  position:relative;
  overflow:hidden;
  background:#fff;
}
.home-materials__head{
  max-width:760px;
  margin-bottom:clamp(30px,3vw,44px);
}


.home-materials__head .h2{
  max-width:960px;
  margin:0;
  font-size:clamp(39.6px,3.6vw,54px);
  font-weight:550;
  line-height:1.08;
  letter-spacing:-.035em;
}
.home-materials__head p{
  max-width:630px;
  margin:14px 0 0;
}
.home-materials__layout{
  display:grid;
  grid-template-columns:minmax(340px,.7fr) minmax(0,1.3fr);
  overflow:hidden;
  border:1px solid var(--wings-line);
  border-radius:10px;
  background:#fff;
}
.home-materials__layout--without-feature,
.home-materials__layout--without-list{grid-template-columns:1fr}
.home-materials__feature{
  position:relative;
  isolation:isolate;
  display:flex;
  min-width:0;
  min-height:530px;
  flex-direction:column;
  padding:clamp(34px,3.5vw,52px);
  overflow:hidden;
  background:var(--wings-navy);
  color:#fff;
  text-decoration:none;
  transition:background-color var(--motion-ui) ease;
}
.home-materials__feature:hover{background:var(--wings-navy-2)}
.home-materials__feature:focus-visible,
.home-materials__item:focus-visible,
.home-materials__all:focus-visible{
  outline:3px solid #2878df;
  outline-offset:-4px;
  box-shadow:inset 0 0 0 1px #fff;
}
.home-materials__feature:focus-visible{outline-color:var(--wings-yellow)}
.home-materials__feature-label{
  position:relative;
  z-index:2;
  color:var(--wings-yellow);
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.home-materials__feature-label::after{
  content:"";
  display:block;
  width:156px;
  height:2px;
  margin-top:13px;
  background:var(--wings-yellow-strong);
}
.home-materials__feature-copy{
  position:relative;
  z-index:2;
  display:grid;
  gap:16px;
  max-width:440px;
  margin-top:auto;
}
.home-materials__feature-title{
  color:#fff;
  font-size:clamp(31.5px,2.7vw,40.5px);
  font-weight:550;
  line-height:1.08;
  letter-spacing:-.035em;
}
.home-materials__feature-text{
  max-width:40ch;
  color:rgba(255,255,255,.76);
  font-size:13.5px;
  line-height:1.58;
}
.home-materials__feature-meta{
  position:relative;
  z-index:2;
  margin-top:24px;
  color:rgba(255,255,255,.58);
  font-size:12px;
  font-weight:600;
  letter-spacing:.02em;
}
.home-materials__feature-action{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  width:min(100%,258px);
  min-height:50px;
  gap:18px;
  margin-top:22px;
  padding:12px 18px;
  border-radius:0;
  background:var(--wings-yellow);
  color:var(--wings-navy);
  font-size:12.6px;
  font-weight:700;
  transition:background-color var(--motion-ui) ease;
}
.home-materials__feature-action>span:last-child,
.home-materials__item-arrow,
.home-materials__all>span:last-child{
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  transition:transform var(--motion-ui) var(--ease-wings);
}
.home-materials__feature-action svg,
.home-materials__item-arrow svg,
.home-materials__all svg{width:20px;height:20px}
.home-materials__feature:hover .home-materials__feature-action{background:var(--wings-yellow-strong)}
.home-materials__feature:hover .home-materials__feature-action>span:last-child{transform:translateX(4px)}
.home-materials__feature-watermark{
  position:absolute;
  right:-16px;
  bottom:-26px;
  z-index:1;
  color:transparent;
  font-size:clamp(86px,9vw,132px);
  font-weight:700;
  line-height:1;
  letter-spacing:-.08em;
  opacity:.1;
  -webkit-text-stroke:1px #fff;
  pointer-events:none;
}
.home-materials__list{
  display:flex;
  min-width:0;
  flex-direction:column;
  background:#fff;
}
.home-materials__item{
  display:grid;
  min-width:0;
  min-height:156px;
  flex:0 0 156px;
  grid-template-columns:clamp(132px,12vw,174px) minmax(0,1fr) 28px;
  align-items:center;
  gap:clamp(20px,2.3vw,34px);
  padding:18px clamp(22px,2.6vw,36px) 18px 20px;
  border-bottom:1px solid var(--wings-line);
  color:var(--wings-navy);
  text-decoration:none;
  transition:background-color var(--motion-ui) ease;
}
.home-materials__item:hover{background:#f4f8fc}
.home-materials__cover{
  display:flex;
  width:100%;
  aspect-ratio:1.4/1;
  flex-direction:column;
  justify-content:space-between;
  padding:14px;
  overflow:hidden;
  border:1px solid rgba(5,41,80,.13);
  border-radius:0;
  background:#eef5fb;
  color:var(--wings-navy);
}
.home-materials__cover>span{
  font-size:9.5px;
  font-weight:700;
  letter-spacing:.12em;
}
.home-materials__cover>strong{
  max-width:100%;
  font-family:Georgia,serif;
  font-size:clamp(14.4px,1.35vw,19.8px);
  font-weight:400;
  line-height:1.05;
}
.home-materials__cover--speaking{background:#f8f2e6;color:#8b4f20}
.home-materials__cover--travel{background:var(--wings-navy);color:#fff}
.home-materials__cover--travel>strong{font-size:clamp(10.8px,1.15vw,17.1px);letter-spacing:-.03em;white-space:nowrap}
.home-materials__cover--vocabulary{background:#e6f1fb;color:var(--wings-navy)}
.home-materials__cover--vocabulary>strong{font-size:clamp(10.8px,1.08vw,16.2px);line-height:1.12}
.home-materials__cover--general{background:#f4f0fa;color:#493c68}
.home-materials__item-copy{display:grid;min-width:0;gap:6px}
.home-materials__item-label{
  color:var(--wings-muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.home-materials__item-title{
  display:-webkit-box;
  overflow:hidden;
  color:var(--wings-navy);
  font-size:18px;
  font-weight:600;
  line-height:1.25;
  letter-spacing:-.015em;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.home-materials__item-meta{color:var(--wings-muted);font-size:12.5px;line-height:1.35}
.home-materials__item-arrow{justify-self:end;color:var(--wings-navy)}
.home-materials__item:hover .home-materials__item-arrow{transform:translateX(4px)}
.home-materials__all{
  display:flex;
  min-height:62px;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  padding:14px clamp(22px,2.6vw,36px);
  color:var(--wings-navy);
  font-size:11.7px;
  font-weight:700;
  text-decoration:none;
  margin-top:auto;
}
.home-materials__all:hover>span:last-child{transform:translateX(4px)}

@media(max-width:1100px){
  .home-materials__layout{grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr)}
  .home-materials__feature{padding:34px;min-height:500px}
  .home-materials__item{grid-template-columns:122px minmax(0,1fr) 26px;gap:20px;padding-inline:18px 24px}
  .home-materials__cover{padding:12px}
}

@media(max-width:900px){
  .home-materials__layout{grid-template-columns:1fr}
  .home-materials__feature{min-height:360px}
  .home-materials__feature-copy{max-width:540px}
  .home-materials__feature-watermark{right:12px}
  .home-materials__item{min-height:132px;flex-basis:auto;grid-template-columns:132px minmax(0,1fr) 28px}
}

@media(max-width:600px){
  .home-materials__head{margin-bottom:26px}
  .home-materials__head .h2{font-size:30.6px}
  .home-materials__layout{border-radius:10px}
  .home-materials__feature{min-height:390px;padding:27px 22px}
  .home-materials__feature-title{font-size:30.6px}
  .home-materials__feature-text{font-size:12.6px}
  .home-materials__feature-action{width:100%}
  .home-materials__feature-watermark{right:-8px;bottom:-12px;font-size:82px}
  /* Обложка стала шире, чтобы её подписи не пришлось ужимать до 6px: на этих
     размерах текст превращался в серую полоску, а не в надпись. */
  .home-materials__item{min-height:108px;grid-template-columns:92px minmax(0,1fr) 24px;gap:14px;padding:14px 15px}
  .home-materials__cover{padding:9px;border-radius:0}
  .home-materials__cover>span{font-size:9.5px}
  .home-materials__cover>strong{font-size:11.5px}
  .home-materials__cover--travel>strong{font-size:10px;letter-spacing:-.04em}
  .home-materials__item-title{font-size:15px}
  .home-materials__item-label{font-size:12px}
  .home-materials__item-meta{font-size:12px}
  .home-materials__all{justify-content:space-between;min-height:56px;padding:12px 16px}
}

@media(min-width:1600px){
  .home-materials__head{max-width:920px}
  .home-materials__head .h2{font-size:clamp(43.2px,2.1vw,52.2px)}
  .home-materials__feature{min-height:clamp(500px,27vw,620px)}
  .home-materials__feature-title{font-size:clamp(38.7px,1.8vw,48.6px)}
  .home-materials__feature-text{font-size:clamp(13.5px,.72vw,16.2px)}
  .home-materials__item-title{font-size:clamp(17.1px,.9vw,21.6px)}
  .home-materials__item-meta,.home-materials__all{font-size:clamp(10.8px,.58vw,13.5px)}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

@media print{
  .site-header,.site-footer,.legal-nav{display:none!important}
  .legal-page,.legal-content{background:#fff!important;color:#000!important}
  .legal-layout{display:block}.legal-content{max-width:none}.legal-content a{text-decoration:underline}
}
