/* Teique front — Coach Account (v2/default/coach) */
.v2-page{background:var(--color-white)}
.v2-hero-texture{position:absolute;inset:0;background:url('/v2/assets/illustrations/background-abstract.png') center/cover no-repeat;opacity:.2;mix-blend-mode:overlay;pointer-events:none}
.v2-card-texture{position:absolute;inset:0;background:url('/v2/assets/illustrations/background-abstract.png') center/cover no-repeat;opacity:.18;mix-blend-mode:overlay;pointer-events:none}
.v2-link{font-family:var(--font-manrope);font-weight:600;font-size:16px;white-space:nowrap}
.v2-block{padding-bottom:clamp(56px,8vw,96px)}

/* HERO — gradient set inline on the element (page CSS loads before components.css,
   so a class-level override here would lose the cascade to .ds-hero-band) */
.v2-hero{position:relative;overflow:hidden}
.v2-hero__fade{position:absolute;left:0;right:0;bottom:0;height:clamp(180px,24vw,300px);background:linear-gradient(180deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.03) 18%,rgba(255,255,255,.09) 32%,rgba(255,255,255,.2) 46%,rgba(255,255,255,.38) 60%,rgba(255,255,255,.6) 73%,rgba(255,255,255,.82) 86%,var(--color-white) 100%);pointer-events:none}
.v2-hero__inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,0.95fr);gap:clamp(28px,4vw,64px);align-items:center;padding-top:clamp(48px,6vw,88px);padding-bottom:clamp(104px,10vw,140px)}
.v2-hero__copy{display:flex;flex-direction:column;align-items:flex-start;gap:24px}
.v2-hero__copy h1{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:36px;line-height:1.15;color:#fff;max-width:20ch}
.v2-hero__copy p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:20px;line-height:1.55;color:rgba(255,255,255,.95);max-width:52ch}
.v2-hero__ctas{display:flex;flex-wrap:wrap;gap:16px;margin-top:4px}
.v2-hero__shot{border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow-card)}
.v2-hero__shot img{display:block;width:100%;height:auto}
@media (max-width:1000px){.v2-hero__inner{grid-template-columns:minmax(0,1fr)}}

/* the outline button needs secondary tint on hover-independent parts handled by ds-btn */
.v2-hero .ds-btn--secondary{color:var(--color-secondary-full)}
.v2-hero .ds-btn--secondary:hover{color:var(--color-primary-full)}

/* STEPS */
.v2-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.v2-step-card{display:flex;flex-direction:column;gap:12px;padding:28px 24px;border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}
.v2-step-card__n{font-family:var(--font-manrope);font-weight:700;font-size:36px;line-height:1;color:var(--color-secondary-full)}
.v2-step-card h3{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:20px;line-height:1.2;color:var(--color-primary-full)}
.v2-step-card p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.5;color:var(--color-gray)}
@media (max-width:720px){.v2-steps{grid-template-columns:1fr}}

/* FEATURE BANDS */
.v2-bands{display:flex;flex-direction:column;gap:clamp(40px,5vw,72px)}
.v2-band{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,4vw,64px);align-items:center}
.v2-band--reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
.v2-band--reverse .v2-band__shot{order:2}
.v2-band__shot{display:flex;align-items:center;justify-content:center;min-height:340px}
.v2-band__shot img{width:100%;height:auto;border-radius:16px;box-shadow:var(--shadow-card)}
.v2-band__copy{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.v2-band__copy h3{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:24px;line-height:1.2;color:var(--color-primary-full)}
.v2-band__copy>p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.55;color:var(--color-gray);max-width:46ch}
@media (max-width:1000px){.v2-band,.v2-band--reverse{grid-template-columns:1fr}.v2-band--reverse .v2-band__shot{order:0}}

/* TICK LIST */
.v2-tick-list{display:flex;flex-direction:column;gap:10px;width:100%;max-width:44ch}
.v2-tick{display:flex;align-items:flex-start;gap:10px;padding-top:10px;border-top:1px solid var(--color-light-gray);font-family:var(--font-inter);font-weight:400;font-size:16px;line-height:1.35;color:var(--color-black)}
.v2-tick img{width:15px;height:15px;flex-shrink:0;margin-top:3px}

/* RAIL / REPORT CARDS */
.v2-rail-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap;margin-bottom:32px}
.v2-rail-head h2{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:36px;color:var(--color-primary-full)}
.v2-rail-head p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;color:var(--color-gray);max-width:70ch}
.v2-rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.v2-report-card{display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:16px;background:#fff;box-shadow:var(--shadow-card);text-decoration:none;transition:transform .3s ease}
.v2-report-card:hover{transform:translateY(-4px)}
.v2-report-card__cover{display:flex;align-items:center;justify-content:center;height:170px;padding:10px;border-radius:8px;background:var(--color-white-gradient);box-shadow:var(--shadow-inner);overflow:hidden}
.v2-report-card__cover img{max-width:100%;max-height:100%;object-fit:contain}
.v2-report-card h4{margin:0;font-family:var(--font-manrope);font-weight:600;font-size:16px;line-height:1.3;color:var(--color-primary-full)}
.v2-report-card p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.4;color:var(--color-gray)}
@media (max-width:1100px){.v2-rail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.v2-rail{grid-template-columns:1fr}}

/* ACCREDITATION + HUB */
.v2-accred-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(28px,3.5vw,56px);align-items:start}
.v2-accred-copy{display:flex;flex-direction:column;gap:24px}
.v2-accred-head{display:flex;flex-direction:column;gap:12px}
.v2-accred-head h2{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:36px;color:var(--color-primary-full)}
.v2-accred-head p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;color:var(--color-gray);max-width:60ch}
.v2-module-list{display:flex;flex-direction:column;gap:12px}
.v2-module-item{display:grid;grid-template-columns:30px minmax(0,1fr);gap:16px;align-items:start;padding:18px 22px;border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}
.v2-module-item__n{width:30px;height:30px;border-radius:50%;background-image:var(--color-secondary-gradient);display:grid;place-items:center;font-family:var(--font-manrope);font-weight:700;font-size:12px;color:#fff}
.v2-module-item__title{display:block;font-family:var(--font-manrope);font-weight:600;font-size:16px;color:var(--color-primary-full)}
.v2-module-item__body{display:block;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.45;color:var(--color-gray)}
.v2-hub-panel{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:18px;padding:clamp(24px,2.6vw,34px);border-radius:16px;background-image:var(--color-primary-gradient);box-shadow:var(--shadow-card)}
.v2-hub-panel__eyebrow{position:relative;font-family:var(--font-manrope);font-weight:700;font-size:12px;letter-spacing:.08em;color:rgba(255,255,255,.78)}
.v2-hub-panel h3{position:relative;margin:0;font-family:var(--font-manrope);font-weight:700;font-size:24px;line-height:1.2;color:#fff}
.v2-hub-panel p{position:relative;margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.55;color:rgba(255,255,255,.92)}
.v2-hub-panel__list{position:relative;display:flex;flex-direction:column;gap:10px}
.v2-hub-item{display:flex;align-items:flex-start;gap:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.28);font-family:var(--font-inter);font-weight:400;font-size:16px;line-height:1.35;color:#fff}
.v2-hub-item__dot{width:6px;height:6px;border-radius:50%;background:#fff;flex-shrink:0;margin-top:8px}
@media (max-width:1100px){.v2-accred-grid{grid-template-columns:1fr}}

/* MANAGER VIEW BAND */
.v2-manager-band{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,4vw,64px);align-items:center;padding:clamp(24px,3vw,40px);border-radius:16px;background:var(--color-white-gradient);box-shadow:var(--shadow-inner)}
.v2-manager-band__copy{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.v2-manager-band__copy h3{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:24px;line-height:1.2;color:var(--color-primary-full)}
.v2-manager-band__copy>p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.55;color:var(--color-gray);max-width:46ch}
.v2-manager-band__shot{border-radius:16px;overflow:hidden;background:#fff;box-shadow:var(--shadow-card)}
.v2-manager-band__shot img{display:block;width:100%;height:auto}
@media (max-width:1000px){.v2-manager-band{grid-template-columns:1fr}}

/* WHO */
.v2-who-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.v2-who-card{display:flex;flex-direction:column;gap:10px;padding-top:16px;border-top:2px solid var(--color-secondary-full)}
.v2-who-card h3{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:20px;line-height:1.2;color:var(--color-primary-full)}
.v2-who-card p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;line-height:1.5;color:var(--color-gray)}
@media (max-width:720px){.v2-who-grid{grid-template-columns:1fr}}

/* FINAL CTA */
.v2-cta-banner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:40px;flex-wrap:wrap;padding:clamp(28px,4vw,56px);border-radius:16px;background-image:var(--color-secondary-gradient)}
.v2-cta-banner__copy{position:relative;display:flex;flex-direction:column;gap:12px}
.v2-cta-banner__copy h2{margin:0;font-family:var(--font-manrope);font-weight:700;font-size:36px;line-height:1.1;color:#fff}
.v2-cta-banner__copy p{margin:0;font-family:var(--font-inter);font-weight:300;font-size:16px;color:rgba(255,255,255,.95);max-width:52ch}
.v2-cta-banner__actions{position:relative;display:flex;gap:16px;flex-wrap:wrap}
.v2-cta-banner .ds-btn--secondary{color:var(--color-secondary-full)}
.v2-cta-banner .ds-btn--secondary:hover{color:var(--color-primary-full)}

/* HERO — по макету: свой фон, нижний отступ под затемнение в белый, плашка и
   кнопки hero крупнее общих. Вес поднят: общее правило .ds-hero-band>.ds-section
   из components.css подключается позже и иначе перебило бы отступ. */
.v2-hero.ds-hero-band{background-image:var(--color-secondary-gradient)}
.v2-hero.ds-hero-band>.v2-hero__inner{padding-bottom:clamp(104px,10vw,140px)}
.v2-hero__copy .ds-tag--pill-on-dark{padding:7px 18px;font-weight:700;letter-spacing:.04em;background:rgba(255,255,255,.2);border-color:rgba(255,255,255,.45)}

/* По макету: у первой секции после hero есть верхний отступ. */
.v2-hero+.v2-block{padding-top:clamp(24px,3vw,40px)}
/* В макете у hero нет нижнего внешнего отступа — следующую секцию отделяет её собственный. */
.v2-hero.ds-hero-band{margin-bottom:0}
