/* Страница «Обучение на вашем аппарате» — дополняет style.css и course.css */

/* первый экран: фото аппарата светлое, без лишнего масштаба */
.ap-hero .chero__media > img { object-position: 50% 60%; }

/* ---------- направления ---------- */
.adir { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--gap); }
.adirc { display: flex; flex-direction: column; padding: .6rem; border-radius: var(--r); background: var(--white); }
.adirc__img { position: relative; aspect-ratio: 5 / 4; border-radius: calc(var(--r) - .6rem); overflow: hidden; background: var(--tint-sand); }
.adirc__img img { width: 100%; height: 100%; object-fit: cover; }
.adirc__img .pill { position: absolute; left: .8rem; top: .8rem; height: 2.4rem; font-size: 1.05rem; box-shadow: none; }
.adirc__body { display: flex; flex-direction: column; gap: 1rem; flex: 1; padding: 1.6rem 1.2rem 1.2rem; }
.adirc h3 { font-size: 1.9rem; letter-spacing: -0.02em; line-height: 1.2; }
.adirc p { font-size: 1.2rem; color: var(--ink-2); }
.adirc__prices { list-style: none; margin: .4rem 0 0; padding: 0; display: flex; flex-direction: column; }
.adirc__prices li { display: flex; justify-content: space-between; align-items: baseline; gap: 1.2rem; padding: .9rem 0; border-top: 1px solid var(--line); font-size: 1.15rem; color: var(--ink-2); }
.adirc__prices b { font-family: var(--f-display); font-weight: 500; font-size: 1.6rem; letter-spacing: -0.02em; color: var(--ink); white-space: nowrap; }
.adirc__foot { margin-top: auto; padding-top: 1.2rem; display: flex; flex-direction: column; gap: .8rem; }
.adirc__foot .btn { justify-content: center; }
.adirc .more { display: inline-flex; align-items: center; gap: .6rem; font-size: 1.15rem; color: var(--copper-dk); font-weight: 500; }
.adirc .more svg { width: 1rem; height: 1rem; }
.adirc--other { background: var(--tint-rose); }
.adirc--other .adirc__img { background: var(--white); }
@media (max-width: 1279px) { .adir { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 767px) { .adir { grid-template-columns: 1fr; } }

/* ---------- форматы ---------- */
.afmt { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gap); }
.afmtc { display: flex; flex-direction: column; gap: 1.4rem; padding: 2.4rem; border-radius: var(--r); background: var(--white); }
.afmtc .top { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.afmtc h3 { font-size: 2.2rem; letter-spacing: -0.025em; line-height: 1.15; }
.afmtc .sum { font-family: var(--f-display); font-weight: 500; font-size: 3.6rem; letter-spacing: -0.04em; line-height: 1; }
.afmtc .sum small { font-size: 1.6rem; letter-spacing: -0.02em; color: var(--ink-2); }
.afmtc ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.afmtc li { display: flex; gap: 1rem; align-items: baseline; padding: 1rem 0; border-top: 1px solid var(--line); font-size: 1.25rem; }
.afmtc li::before { content: ""; flex: none; width: .6rem; height: .6rem; border-radius: 50%; background: var(--copper); transform: translateY(-.2rem); }
.afmtc .note { font-size: 1.1rem; color: var(--ink-2); padding: 1.2rem 1.4rem; border-radius: 1.2rem; background: var(--bg); }
.afmtc .btn { margin-top: auto; align-self: flex-start; }
.afmtc--accent { background: var(--tint-cream); }
.afmtc--accent .note { background: var(--white); }
.afmtc--med { background: var(--tint-rose); }
.afmtc--med .note { background: var(--white); }
.team-row { grid-column: 1 / -1; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 2.4rem; margin-top: var(--gap); padding: 2rem 2rem 2rem 2.4rem; border-radius: var(--r); background: var(--white); }
.team-row b { display: block; font-family: var(--f-display); font-weight: 500; font-size: 1.9rem; letter-spacing: -0.02em; margin-bottom: .4rem; }
.team-row p { font-size: 1.25rem; color: var(--ink-2); max-width: 70rem; }
@media (max-width: 1279px) { .afmt { grid-template-columns: 1fr; } .afmtc .btn { margin-top: .8rem; } .team-row { grid-template-columns: 1fr; } }
@media (max-width: 767px) { .afmtc { padding: 2rem; } .afmtc .btn, .team-row .btn { width: 100%; justify-content: center; white-space: normal; height: auto; min-height: 4rem; padding-block: 1rem; text-align: center; } }

/* ---------- поддержка ---------- */
.asup { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--gap); }
.asup__img { grid-column: span 5; position: relative; min-height: 40rem; border-radius: var(--r); overflow: hidden; background: var(--tint-sand); }
.asup__img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.asup__img .pill { position: absolute; left: 1.4rem; top: 1.4rem; z-index: 1; box-shadow: none; }
.asup__side { grid-column: span 7; display: grid; grid-template-columns: 1fr 1fr; gap: var(--gap); }
.asup__main { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 1.4rem; padding: 2.4rem; border-radius: var(--r); background: var(--white); }
.asup__main h3 { font-size: 2.2rem; letter-spacing: -0.025em; }
.asup__main p { font-size: 1.25rem; color: var(--ink-2); max-width: 60rem; }
@media (max-width: 1279px) { .asup__img, .asup__side { grid-column: 1 / -1; } .asup__img { min-height: 34rem; } }
@media (max-width: 767px) { .asup__side { grid-template-columns: 1fr; } .asup__img { min-height: 26rem; } .asup__main { padding: 2rem; } }

/* ---------- преподаватели: 7 карточек ---------- */
.team--7 { grid-template-columns: repeat(7, minmax(0, 1fr)); margin-top: 0; }
.tm__ph { aspect-ratio: 1; width: 100%; border-radius: calc(var(--r) - .6rem); margin-bottom: 1rem; background: var(--tint-sand); display: grid; place-items: center; font-family: var(--f-display); font-size: 3.2rem; letter-spacing: -0.04em; color: var(--copper); }
@media (max-width: 1279px) { .team--7 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 767px) { .team--7 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

/* ---------- документы: сравнение ---------- */
.adoc .reqc h3 small { display: block; margin-top: .6rem; font-family: var(--f-text); font-size: 1.15rem; font-weight: 400; letter-spacing: 0; color: var(--ink-2); }

/* ---------- форма: дополнительные поля ---------- */
.form .opts label { white-space: nowrap; }
@media (max-width: 767px) { .form .opts label { white-space: normal; height: auto; min-height: 3.2rem; padding-block: .6rem; } }

/* ---------- список инструктажей и форматы ---------- */
.ilists { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--gap); }
.ilist h3 { margin-top: .8rem; }
.isum { font-family: var(--f-display); font-size: 3.6rem; letter-spacing: -0.03em; line-height: 1; }
@media (max-width: 1279px) { .ilists { grid-template-columns: minmax(0, 1fr); } }
