:root {
  --black: #090907;
  --black-soft: #14130f;
  --white: #f7f6f1;
  --paper: #efeee8;
  --ink: #161611;
  --muted: #66655f;
  --yellow: #f2c600;
  --yellow-soft: #ffd943;
  --line-dark: rgba(255, 255, 255, .16);
  --line-light: rgba(22, 22, 17, .18);
  --shadow: 0 20px 60px rgba(12, 12, 9, .12);
  --type-display: 46px;
  --type-section: clamp(34px, 4.16vw, 54px);
  --type-t1: 18px;
  --type-important: calc(var(--type-t1) * 1.1);
  --type-lead: 27px;
  --type-body: 16px;
  --type-ui: 12px;
}

/* Уточнения оформления цен и текста «Выдоха». */
#bridge .bridge-turn, #bridge .bridge-turn p, #bridge .bridge-turn strong { color: #000 !important; }
.bridge-old-price s, .directors-old-price s, .outcomes-old-price s {
  text-decoration: none;
  background-image: linear-gradient(to top right, transparent calc(50% - .7px), currentColor calc(50% - .7px), currentColor calc(50% + .7px), transparent calc(50% + .7px));
  background-repeat: no-repeat;
}

/* Плавный золотой градиент: меняется только фон кнопок. */
.signal-controls button,
.carousel-controls button {
  background-image: linear-gradient(110deg, #715b00, #927712, #806900, #977b13, #715b00) !important;
  background-size: 300% 100% !important;
  animation: goldButtonFlow 7s ease-in-out infinite;
}
.signal-controls button:disabled,
.carousel-controls button:disabled { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
  .signal-controls button,
  .carousel-controls button { animation: none; }
}
@keyframes goldButtonFlow {
  0%, 100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
:is(.button, .header-action, .inline-action, .card-action, .directors-action, .step-toggle, .alena-account) {
  background-image: linear-gradient(110deg, #d5ae32, #f5dc79, #e5bf42, #f8e393, #d5ae32) !important;
  background-size: 300% 100% !important;
  animation: goldButtonFlow 7s ease-in-out infinite;
}
:is(:is(.button, .header-action, .inline-action, .card-action, .directors-action, .step-toggle, .alena-account)):disabled,
:is(:is(.button, .header-action, .inline-action, .card-action, .directors-action, .step-toggle, .alena-account))[aria-disabled="true"] { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) {
  :is(.button, .header-action, .inline-action, .card-action, .directors-action, .step-toggle, .alena-account) { animation: none; background-position: 50% 50%; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { margin: 0; color: var(--ink); background: var(--white); font-family: Arial, Helvetica, sans-serif; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
.shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.band { position: relative; overflow: hidden; padding: 112px 0; }
.band-dark { color: var(--white); background: var(--black); }
.band-light { color: var(--ink); background: var(--white); }
.eyebrow { margin: 0 0 18px; color: #987b00; font-size: 12px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.band-dark .eyebrow { color: var(--yellow); }
.eyebrow span { display: inline-grid; min-width: 34px; height: 27px; place-items: center; margin-right: 10px; color: var(--black); background: var(--yellow); }
h1, h2, h3 { margin-top: 0; font-family: Arial, Helvetica, sans-serif; font-weight: 400; }
h2 { margin-bottom: 0; font-size: var(--type-section); line-height: 1; letter-spacing: -.025em; }
.band:not(.hero) .shell h2 {
  font-family: Arial, Helvetica, sans-serif;
  font-size: var(--type-section);
  font-weight: 400;
  font-style: normal;
  line-height: 1;
  letter-spacing: -.025em;
  text-transform: uppercase;
}
p { line-height: 1.6; }
.button { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; gap: 0; padding: 15px 22px; color: var(--black); background: var(--yellow); border: 0; box-shadow: 12px 12px 0 rgba(242, 198, 0, .14); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.button:hover { background: var(--yellow-soft); box-shadow: 8px 8px 0 rgba(242, 198, 0, .2); transform: translate(2px, 2px); }
.button-yellow { min-width: 310px; }
.button-black { color: var(--black); background: var(--yellow); }
.dot-field { position: absolute; pointer-events: none; opacity: .32; background-image: radial-gradient(circle, currentColor 1.2px, transparent 1.5px); background-size: 14px 14px; }

.site-header { position: absolute; z-index: 20; top: 0; left: 0; right: 0; height: 76px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 30px; padding: 0 max(24px, calc((100vw - 1180px) / 2)); color: var(--white); border-bottom: 1px solid var(--line-dark); }
.brand { display: flex; align-items: center; gap: 10px; font: 17px/1 Georgia, serif; }
.brand-mark { display: grid; width: 32px; height: 32px; place-items: center; color: var(--black); background: var(--yellow); border-radius: 50%; }
.site-header nav { display: flex; gap: 22px; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.site-header nav a:hover { color: var(--yellow); }
.header-actions { justify-self: end; display: flex; gap: 10px; }
.header-user-status { max-width: 180px; overflow: hidden; color: var(--yellow); font-size: 11px; font-weight: 700; letter-spacing: .03em; text-overflow: ellipsis; white-space: nowrap; }
.header-action { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 9px 16px; color: var(--black); background: var(--yellow); border: 1px solid var(--yellow); box-shadow: 7px 7px 0 rgba(242,198,0,.14); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.header-action:hover { color: var(--black); background: var(--yellow-soft); box-shadow: 4px 4px 0 rgba(242,198,0,.2); transform: translate(2px, 2px); }
.account-button--signed-in { min-width: 176px; flex-direction: column; gap: 3px; line-height: 1.05; white-space: nowrap; }
.account-button--signed-in > span { white-space: nowrap; }
.account-button--signed-in > small { display: block; max-width: 158px; overflow: hidden; font-size: 9px; font-weight: 600; letter-spacing: .02em; text-overflow: ellipsis; text-transform: none; white-space: nowrap; }
.menu-toggle { display: none; min-height: 44px; align-items: center; gap: 8px; padding: 8px 11px; color: var(--yellow); background: transparent; border: 1px solid var(--yellow); cursor: pointer; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.menu-toggle-icon { display: grid; width: 16px; gap: 3px; }
.menu-toggle-icon i { display: block; height: 1px; background: currentColor; transition: transform .2s ease, opacity .2s ease; }
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(1) { transform: translateY(4px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(2) { opacity: 0; }
.menu-toggle[aria-expanded="true"] .menu-toggle-icon i:nth-child(3) { transform: translateY(-4px) rotate(-45deg); }
.mobile-menu { position: fixed; z-index: 30; top: 76px; right: 0; left: 0; max-height: calc(100vh - 76px); overflow-y: auto; padding: 26px max(24px, calc((100vw - 1180px) / 2)) 30px; color: var(--white); background: var(--black); border-top: 1px solid var(--line-dark); box-shadow: 0 24px 50px rgba(0,0,0,.28); }
.mobile-menu[hidden] { display: none; }
.mobile-menu nav { display: grid; gap: 0; }
.mobile-menu nav a { display: flex; min-height: 48px; align-items: center; border-bottom: 1px solid var(--line-dark); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.mobile-menu nav a:hover { color: var(--yellow); }
.mobile-menu-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 24px; }
.mobile-menu-actions .button { min-width: 280px; }
.mobile-menu-account { display: inline-flex; min-height: 48px; align-items: center; gap: 18px; color: var(--yellow); border-bottom: 1px solid var(--yellow); font-size: 11px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
body.menu-open { overflow: hidden; }

/* Главная страница: единая типографика Onest. Кабинет использует исходные стили. */
.homepage,
.homepage * {
  font-family: "Onest", sans-serif !important;
}

/* Единая шкала главной страницы: крупные заголовки и основной текст. */
.homepage .band:not(.hero) .shell h2 { font-size: 46px !important; }

.hero { min-height: 920px; display: flex; align-items: center; padding: 130px 0 90px; }
.hero-copy { position: relative; z-index: 4; margin-left: max(24px, calc((100vw - 1180px) / 2)); margin-right: 35vw; }
.hero h1 { max-width: 720px; margin-bottom: 25px; font-size: var(--type-display); line-height: .92; letter-spacing: .01em; }
.hero-lead { max-width: 650px; margin: 0 0 30px; color: var(--white); font-size: var(--type-t1); }
.hero-note { max-width: 560px; margin: 26px 0 0; padding-left: 17px; color: var(--white); border-left: 2px solid var(--yellow); font-size: 13px; }
.hero-photo { position: absolute; z-index: 1; inset: 0; width: 100%; overflow: hidden; }
.hero-photo::after { display: none; }
.hero-photo picture { display: block; width: 100%; height: 100%; }
.hero-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; filter: none; -webkit-mask-image: none; mask-image: none; }
.dot-field-hero { z-index: 3; right: 31%; bottom: 65px; width: 220px; height: 150px; color: var(--yellow); mask-image: linear-gradient(135deg, #000, transparent 78%); }

.section-heading { max-width: 850px; }
.split-heading { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 60px; align-items: end; max-width: none; }
.split-heading .eyebrow { grid-column: 1 / -1; }
.split-heading p:last-child { max-width: 500px; margin: 0; color: var(--muted); }
.signal-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 54px; }
.signal-card { position: relative; min-height: 150px; display: grid; grid-template-columns: 1fr; align-items: center; padding: 28px 30px 24px 34px; background: #fff; border: 1px solid var(--line-light); box-shadow: var(--shadow); }
.signal-card::before { content: ""; position: absolute; top: -1px; bottom: -1px; left: -1px; width: 8px; background: var(--yellow); }
.signal-card p { margin: 0; font: 18px/1.45 Arial, Helvetica, sans-serif; }
.inline-action { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; margin-top: 38px; padding: 15px 22px; color: var(--black); background: var(--yellow); border: 0; box-shadow: 10px 10px 0 rgba(242,198,0,.14); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.inline-action:hover { color: var(--black); background: var(--yellow-soft); box-shadow: 7px 7px 0 rgba(242,198,0,.2); transform: translate(2px, 2px); }

.clarity { background: var(--black-soft); }
.clarity-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr .8fr; gap: 100px; }
.clarity-copy { padding-top: 28px; }
.lead-serif { margin-top: 0; color: inherit; font: var(--type-lead)/1.45 Georgia, serif; }
.clarity-copy > p:not(.lead-serif) { color: var(--white); }
.fine-print { margin-top: 28px; padding-top: 18px; border-top: 1px solid var(--line-dark); font-size: 12px; letter-spacing: .03em; }
.dot-field-clarity { right: -30px; bottom: -15px; width: 330px; height: 250px; color: var(--yellow); opacity: .2; transform: rotate(-9deg); }

.steps-heading { display: grid; grid-template-columns: 1fr .5fr; gap: 20px 70px; max-width: none; }
.steps-heading .eyebrow { grid-column: 1 / -1; }
.steps-heading > p:last-child { align-self: end; margin: 0; color: var(--muted); }

.steps { background: var(--white); }
.step-list { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 58px; }
.step-card { min-height: 235px; background: #fff; border: 1px solid var(--line-light); box-shadow: 0 12px 35px rgba(12, 12, 9, .06); }
.step-card summary { min-height: 233px; display: grid; grid-template-columns: 80px 1fr 46px; gap: 28px; align-items: stretch; padding: 0 25px 0 0; cursor: pointer; list-style: none; }
.step-card:not([open]) summary { height: 100%; }
.step-card summary::-webkit-details-marker { display: none; }
.step-rail { align-self: stretch; display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 22px 0; color: var(--black); background: var(--yellow); }
.step-rail span { font: 31px/1 Georgia, serif; }
.step-rail small { font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; transform: rotate(-90deg) translateX(13px); }
.step-card-copy { align-self: center; padding: 24px 0; }
.step-card h3 { margin: 0 0 10px; font-size: 25px; line-height: 1.08; }
.step-card p { margin: 0; color: var(--muted); font-size: 14px; }
.step-price { display: flex; align-items: center; gap: 9px; margin-bottom: 18px; color: #796300; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.step-price small { font: inherit; }
.step-price strong { padding: 5px 7px; color: var(--black); background: #fff1a9; font: inherit; }
.step-toggle { align-self: center; display: grid; width: 42px; height: 42px; place-items: center; color: var(--black); background: var(--yellow); font: 25px/1 Arial, sans-serif; transition: transform .2s ease; }
.step-card[open] .step-toggle { transform: rotate(45deg); }
.step-card[open] { box-shadow: 0 18px 55px rgba(12, 12, 9, .14); }
.step-details { margin-left: 80px; padding: 28px 32px 32px; border-top: 1px solid var(--line-light); background: #faf9f5; }
.step-details p { margin: 0 0 10px; }
.step-details a { display: flex; min-height: 0; align-items: center; justify-content: space-between; margin-top: 24px; padding: 17px 0 0; color: var(--ink); background: transparent; border-top: 1px solid var(--line-light); box-shadow: none; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-align: left; text-transform: uppercase; transition: color .2s ease; }
.step-details a:hover { color: #806900; background: transparent; box-shadow: none; transform: none; }
.step-unavailable { display: flex; align-items: center; min-height: 42px; margin-top: auto; padding-top: 17px; color: #77766f; border-top: 1px solid var(--line-light); font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
#step-6 { background: var(--yellow); border-color: rgba(242,198,0,.65); box-shadow: 0 0 0 1px rgba(242,198,0,.28), 0 20px 60px rgba(242,198,0,.2); }
#step-6 .step-rail { color: var(--black); background: var(--white); }
#step-6 .step-toggle { color: var(--yellow); background: var(--white); }
#step-6 .step-price { color: #6f5700; }
#step-6 .step-price strong { color: var(--black); background: var(--white); }
#step-6 .step-details { background: #f8dc58; border-color: rgba(22,22,17,.18); }
#step-6 .step-details a { border-color: rgba(22,22,17,.2); }

.formats { background: var(--black); }
.format-heading { max-width: 900px; }
.format-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 56px; }
.format-grid-three { grid-template-columns: repeat(3, 1fr); align-items: end; }
.format-grid-three .format-card:nth-child(1) { min-height: 328px; }
.format-grid-three .format-card:nth-child(2) { min-height: 369px; }
.format-grid-three .format-card:nth-child(3) {
  min-height: 410px;
  box-shadow: 0 0 0 1px rgba(242, 198, 0, .3), 0 22px 70px rgba(242, 198, 0, .24);
}
.format-card { position: relative; min-height: 410px; display: flex; flex-direction: column; padding: 42px; color: var(--ink); background: var(--white); }
.format-card-featured { background: var(--yellow); }
.format-card-dark { color: var(--white); background: #23221d; border: 1px solid rgba(242,198,0,.35); }
.format-card-dark .format-index { color: var(--black); background: var(--yellow); }
.format-card-dark h3, .format-card-dark > p:not(.eyebrow) { color: var(--white); }
.format-card .eyebrow { color: #7c6700; }
.format-index { position: absolute; top: 0; right: 0; display: grid; width: 62px; height: 62px; place-items: center; color: var(--black); background: var(--yellow); font-weight: 800; }
.format-card-featured .format-index { color: var(--white); background: var(--black); }
.format-badge { position: absolute; top: 18px; left: 42px; padding: 7px 11px; color: var(--yellow); background: rgba(9, 9, 7, .88); border: 1px solid rgba(9, 9, 7, .18); border-radius: 2px; font-size: 9px; font-weight: 800; letter-spacing: .12em; line-height: 1; }
.format-card h3 { max-width: 520px; margin: 32px 0 18px; font-size: 38px; line-height: 1.04; }
.format-card > p:not(.eyebrow) { color: var(--muted); }
.format-card-dark > p:not(.eyebrow) { color: var(--white); }
.format-card-featured > p:not(.eyebrow) { color: #554900; }
.format-card-featured .card-action { color: var(--yellow); background: var(--black); box-shadow: 9px 9px 0 rgba(9,9,7,.22); }
.format-card-featured .card-action:hover { color: var(--yellow); background: #1c1c17; box-shadow: 6px 6px 0 rgba(9,9,7,.28); }
.card-action { display: flex; min-height: 54px; align-items: center; justify-content: center; margin-top: auto; padding: 15px 22px; color: var(--black); background: var(--yellow); border: 0; box-shadow: 9px 9px 0 rgba(242,198,0,.14); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-align: center; text-transform: uppercase; transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.card-action:hover { color: var(--black); background: var(--yellow-soft); box-shadow: 6px 6px 0 rgba(242,198,0,.2); transform: translate(2px, 2px); }

.process { background: var(--white); }
.process-heading { max-width: 850px; }
.process-line { position: relative; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 62px; }
.process-line-four { grid-template-columns: repeat(4, 1fr); }
.process-line::before { content: ""; position: absolute; top: 57px; right: 15%; left: 15%; border-top: 2px dotted #b9b7ad; }
.process-line article { position: relative; z-index: 1; padding: 0 30px; text-align: center; }
.process-icon { width: 72px; height: 72px; display: grid; place-items: center; margin: 18px auto 25px; color: var(--black); background: var(--yellow); font: 31px/1 Georgia, serif; border-radius: 50%; }
.process-line h3 { margin-bottom: 9px; font-size: 27px; }
.process-line p { margin: 0; color: var(--muted); }

.routes { overflow: hidden; color: var(--black); background: #f0f0ed; }
.routes-heading { display: grid; grid-template-columns: 1fr .55fr; gap: 18px 70px; align-items: end; }
.routes-heading .eyebrow { grid-column: 1 / -1; color: #8b7200; }
.routes-heading h2 { margin: 0; font: 900 clamp(48px, 6.2vw, 88px)/.92 Arial, Helvetica, sans-serif; letter-spacing: -.06em; }
.routes-heading > p:last-child { max-width: 520px; margin: 0; color: var(--muted); font-size: 17px; }
.routes-scroll { margin: 62px -20px 0; padding: 24px 20px 38px; overflow-x: auto; overscroll-behavior-x: contain; scrollbar-color: #c6a900 #deded8; scrollbar-width: thin; }
.routes-scroll:focus-visible { outline: 2px solid #9d8300; outline-offset: 4px; }
.routes-table { min-width: 1120px; display: grid; grid-template-columns: minmax(390px, 1.65fr) repeat(3, minmax(220px, 1fr)); gap: 12px; align-items: stretch; }
.route-column { display: grid; grid-template-rows: 180px repeat(6, minmax(104px, auto)) 194px; min-width: 0; }
.route-column > * { min-width: 0; border-bottom: 1px solid rgba(25, 24, 20, .1); }
.route-options { background: #fff; border: 1px solid #e0dfd8; box-shadow: 0 18px 55px rgba(18, 17, 13, .07); }
.route-options-head { display: flex; flex-direction: column; justify-content: center; align-items: flex-start; padding: 34px 36px; }
.route-options-head strong { font: 900 20px/1 Arial, Helvetica, sans-serif; letter-spacing: -.025em; }
.route-options-head span { width: 118px; margin-top: 22px; border-top: 5px solid var(--yellow); }
.route-step-label { display: grid; grid-template-columns: 58px 1fr; gap: 21px; align-items: stretch; padding: 0 24px 0 0; }
.route-step-number { display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 17px 0 13px; color: var(--black); background: var(--yellow); }
.route-step-number b { font: 25px/1 Georgia, serif; }
.route-step-number small { font-size: 8px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; transform: rotate(-90deg) translateX(6px); }
.route-step-label strong { font: 600 17px/1.3 Arial, Helvetica, sans-serif; }
.route-options-foot { display: flex; flex-direction: column; justify-content: center; padding: 30px 36px; border-bottom: 0; }
.route-options-foot strong { font: 800 17px/1.2 Arial, Helvetica, sans-serif; text-transform: uppercase; }
.route-options-foot p { max-width: 300px; margin: 12px 0 0; color: var(--muted); font-size: 13px; }
.route-plan { position: relative; border: 1px solid rgba(25, 24, 20, .08); box-shadow: 0 22px 58px rgba(25, 24, 20, .09); transition: transform .22s ease, box-shadow .22s ease; }
.route-plan:hover { box-shadow: 0 28px 70px rgba(25, 24, 20, .14); }
.route-support { background: #fbfbfa; }
.route-navigator { z-index: 2; background: #fff7d9; transform: translateY(-14px); box-shadow: 0 30px 76px rgba(132, 103, 0, .18); }
.route-integrity { background: #f8eaf1; }
.route-plan-head { position: relative; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; overflow: hidden; padding: 30px 20px 22px 86px; }
.route-plan-head::before { content: ""; position: absolute; top: 0; left: 0; width: 76px; height: 76px; background: linear-gradient(135deg, #f5d85a, #c99a2e); border-radius: 0 0 100% 0; }
.route-icon { position: absolute; z-index: 1; top: 19px; left: 17px; width: 31px; height: 31px; color: #fff; }
.route-icon svg { display: block; width: 100%; height: 100%; fill: currentColor; }
.route-plan-head strong { font: 900 clamp(18px, 1.7vw, 24px)/1 Arial, Helvetica, sans-serif; letter-spacing: -.035em; }
.route-plan-head small { margin-top: 10px; color: #76746c; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.route-badge { position: absolute; top: 16px; right: 14px; max-width: 125px; padding: 6px 7px; color: #4d3c00; background: rgba(240, 207, 0, .27); font-size: 8px; font-weight: 900; letter-spacing: .08em; text-align: center; text-transform: uppercase; }
.route-integrity .route-badge { color: #fff; background: #171713; }
.route-state { display: grid; place-items: center; padding: 18px; }
.route-check { display: grid; width: 36px; height: 36px; place-items: center; color: var(--black); background: var(--yellow); border-radius: 50%; font-size: 20px; font-weight: 900; box-shadow: 0 7px 20px rgba(181, 151, 0, .22); }
.route-dash { color: #c6c5be; font-size: 29px; line-height: 1; }
.route-price { display: flex; flex-direction: column; align-items: stretch; justify-content: center; padding: 24px 20px; border-bottom: 0; text-align: center; }
.route-price > small { color: #77756e; font-size: 9px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.route-price > strong { margin: 8px 0 17px; font: 900 34px/1 Arial, Helvetica, sans-serif; letter-spacing: -.04em; }
.route-buy { width: 100%; min-height: 48px; display: grid; place-items: center; border-radius: 3px; font-size: 11px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; transition: filter .2s ease, box-shadow .2s ease, transform .2s ease; }
.route-buy:not(.is-disabled):hover { filter: brightness(.92); box-shadow: 0 12px 28px rgba(18, 17, 13, .18); transform: translateY(-2px); }
.route-buy-outline { color: #8c7200; background: #fff; border: 2px solid #c8a600; }
.route-buy-gold { color: #fff; background: #a97f16; border: 2px solid #a97f16; }
.route-buy-dark { color: var(--yellow); background: var(--black); border: 2px solid var(--black); }
.route-price > span { min-height: 24px; margin-top: 9px; color: #77756e; font-size: 9px; line-height: 1.35; }
.routes-swipe { display: none; margin: 12px 0 0; color: var(--muted); font-size: 12px; }

.expert { background: var(--black); }
.expert-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 42px 90px; }
.expert-heading { grid-column: 1 / -1; }
.expert-profile, .expert-details { min-width: 0; padding-top: 28px; border-top: 1px solid var(--line-dark); }
.expert-profile > p:not(.lead-serif), .expert-details > p { color: var(--white); }
.expert .button-black { color: var(--black); background: var(--white); }
.inline-action-dark { color: var(--black); }

.free-entry { background: var(--white); }
.free-entry-grid { display: grid; grid-template-columns: .8fr 1fr; gap: 100px; }
.free-entry-grid > div:last-child > p:not(.lead-serif) { color: var(--muted); }
.free-entry .button { margin-top: 20px; }

.mission { background: var(--black-soft); }
.mission .eyebrow { color: var(--yellow); }
.mission-grid { display: grid; grid-template-columns: .35fr 1fr; gap: 80px; }
.mission h2 { max-width: 820px; }
.mission p:not(.eyebrow) { max-width: 720px; margin: 28px 0 0; color: var(--white); font-size: 18px; }
.mission .button-black { color: var(--black); background: var(--yellow); }

.site-footer { padding: 48px 0; color: var(--white); background: var(--black); border-top: 1px solid var(--line-dark); }
.footer-grid { display: grid; grid-template-columns: 1.1fr 1.5fr auto; gap: 40px; align-items: center; font-size: 13px; }
.footer-grid p { margin: 0; }
.footer-grid > a:last-child { justify-self: end; color: var(--yellow); }
.footer-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 24px; }
.footer-links a { color: var(--white); border-bottom: 1px solid var(--line-dark); }
.footer-links a:hover { color: var(--yellow); border-bottom-color: var(--yellow); }

.hero-description { max-width: 670px; margin: 0 0 12px; color: var(--white); font-size: var(--type-t1); }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 32px; }
.hero-secondary { font-size: 11px; }
.centered-heading { margin: 0 auto; text-align: center; }
.wide-heading { max-width: 1100px; }
.wide-heading h2 { font-size: clamp(40px, 5.2vw, 68px); }

.obstacle { background: var(--black-soft); }
.obstacle > .shell > h2 { max-width: 1060px; margin: 0; text-align: left; }
.obstacle-grid { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 62px; }
.obstacle-copy { min-height: 250px; padding: 34px; border-top: 1px solid var(--line-dark); }
.obstacle-copy > p:not(.lead-serif) { color: var(--white); }
.tooltip-trigger { padding: 0 1px 2px; color: var(--yellow); background: transparent; border: 0; border-bottom: 1px dotted currentColor; cursor: pointer; }
.tooltip-trigger:focus-visible { outline: 2px solid var(--yellow); outline-offset: 4px; }
.life-areas-tip { margin-top: 22px; padding: 25px; color: var(--ink); background: var(--white); border-left: 7px solid var(--yellow); box-shadow: 0 22px 60px rgba(0,0,0,.28); }
.life-areas-tip[hidden] { display: none; }
.life-areas-tip h3 { margin-bottom: 14px; font-size: 24px; }
.life-areas-tip p { margin: 8px 0; color: var(--muted); font-size: 13px; }

.importance { background: var(--white); }
.importance-grid { display: grid; grid-template-columns: 1fr .85fr; gap: 85px; margin-top: 60px; }
.accent-list, .bridge-list { display: grid; gap: 11px; margin: 22px 0 0; padding: 0; list-style: none; }
.accent-list li, .bridge-list li { position: relative; padding-left: 24px; line-height: 1.55; }
.accent-list li::before, .bridge-list li::before { content: ""; position: absolute; top: .7em; left: 0; width: 9px; border-top: 4px solid var(--yellow); }
.importance-panel { align-self: start; padding: 34px; background: #fff; border: 1px solid var(--line-light); box-shadow: var(--shadow); }
.importance-panel p:first-child { margin-top: 0; font: 24px/1.45 Georgia, serif; }

.bridge { background: var(--black); }
.bridge > .shell > h2 { max-width: 1050px; font: 800 clamp(45px, 6vw, 78px)/.98 Arial, Helvetica, sans-serif; letter-spacing: -.05em; }
.bridge-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; margin-top: 62px; }
.bridge-grid > div { min-width: 0; padding: 28px 0 0; border-top: 1px solid var(--line-dark); }
.bridge-grid > div:last-child > p { color: var(--white); }
.bridge-list { gap: 6px; color: var(--white); }
.bridge-list li { line-height: 1.3; }
.bridge .fine-print { width: calc(75% - 6px); max-width: calc(75% - 6px); margin-left: 24px; padding: 18px 0 0; color: var(--white) !important; border-left: 0; text-align: left; }
.bridge-action { display: flex; justify-content: center; margin-top: 38px; }
.bridge-action .inline-action { width: min(100%, 430px); margin: 0; }
.process-action { display: flex; justify-content: center; }

.outcomes { background: var(--white); }
.outcome-heading { max-width: 1000px; }
.outcome-heading h2 { font: 800 clamp(48px, 6vw, 80px)/.95 Arial, Helvetica, sans-serif; letter-spacing: -.055em; }
.outcome-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 58px; }
.outcome-grid article { min-height: 340px; padding: 34px; background: #fff; border: 1px solid var(--line-light); box-shadow: var(--shadow); }
.outcome-icon { width: 70px; height: 70px; display: grid; place-items: center; margin-bottom: 40px; color: var(--black); background: var(--yellow); border-radius: 50%; font: 24px/1 Georgia, serif; }
.outcome-grid h3 { min-height: 70px; margin-bottom: 18px; font: 800 24px/1.12 Arial, Helvetica, sans-serif; }
.outcome-grid p { margin: 0; color: var(--muted); }
.outcome-actions { display: flex; flex-wrap: wrap; gap: 34px; }

.steps-intro { background: var(--black-soft); }
.steps-intro-grid { display: grid; grid-template-columns: 1fr .85fr; gap: 42px 90px; }
.steps-intro-heading { grid-column: 1 / -1; }
.steps-intro h2 { font: 800 clamp(50px, 6.2vw, 84px)/.95 Arial, Helvetica, sans-serif; letter-spacing: -.055em; }
.steps-intro-lead .lead-serif { margin: 0; }
.steps-intro-summary > p { color: var(--white); }
.steps-combined .step-list { margin-top: 72px; }
.steps-combined .step-card { color: var(--ink); }
.step-details a + a { margin-top: 0; }

.steps-footer { margin-top: 72px; padding-top: 42px; border-top: 1px solid var(--line-dark); }
.steps-footer p { max-width: 900px; color: var(--white); }
.steps-footer .button { margin-top: 24px; }

.relation-card { margin-top: 62px; padding: 42px; color: var(--white); background: var(--black); box-shadow: var(--shadow); }
.relation-card h3 { max-width: 1000px; margin: 20px 0; color: var(--yellow); font: 800 29px/1.35 Arial, Helvetica, sans-serif; }
.relation-card p:not(.eyebrow) { max-width: 900px; color: var(--white); }
.relation-card .button { margin-top: 24px; }

.client-results { background: var(--white); }
.carousel-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; }
.carousel-heading h2 { font: 800 clamp(48px, 6vw, 80px)/.95 Arial, Helvetica, sans-serif; letter-spacing: -.055em; }
.carousel-controls { display: flex; justify-content: center; gap: 10px; margin-top: 24px; }
.carousel-controls button { width: 54px; height: 54px; color: var(--black); background: var(--yellow); border: 0; cursor: pointer; font-size: 22px; }
.carousel-controls button:hover { filter: brightness(.9); }
.results-note { max-width: 720px; margin: 24px 0 0; color: rgba(255,255,255,.72); font-size: var(--type-t1); }
.results-carousel { display: grid; grid-auto-flow: column; grid-auto-columns: 74%; align-items: start; gap: 18px; margin-top: 42px; padding: 4px 2px 24px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-color: var(--yellow) #d8d7d0; cursor: grab; }
.results-carousel:focus-visible { outline: 2px solid var(--yellow); outline-offset: 6px; }
.results-carousel.is-dragging { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.result-card { min-height: 430px; padding: 34px; color: var(--ink); background: var(--paper); border: 1px solid rgba(22,22,17,.1); border-top: 3px solid rgba(242,198,0,.65); box-shadow: 0 10px 28px rgba(12,12,9,.05); scroll-margin-top: 96px; scroll-snap-align: start; }
.result-card > span { color: #8a7100; font-size: 12px; font-weight: 800; letter-spacing: .12em; }
.result-card h3 { max-width: 720px; margin: 28px 0 34px; font: 400 30px/1.2 Arial, Helvetica, sans-serif; }
.result-card p { color: var(--muted); }
.result-card-label { margin: 0 0 12px; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.result-card-teaser { max-width: 760px; margin: 0; font-size: var(--type-t1); line-height: 1.6; }
.result-card-details { margin-top: 30px; border-top: 1px solid var(--line-dark); }
.result-card-details summary { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 24px; color: var(--white); cursor: pointer; list-style: none; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.result-card-details summary::-webkit-details-marker { display: none; }
.result-card-details summary::after { content: "+"; flex: 0 0 auto; color: var(--yellow); font-size: 26px; font-weight: 400; }
.result-card-details[open] summary::after { content: "−"; }
.result-card:has(.result-card-details[open]) .result-card-teaser { display: none; }
.result-card-full { padding: 12px 0 4px; }
.result-card-full h4 { margin: 30px 0 10px; padding-left: 14px; color: var(--white); border-left: 3px solid var(--gold-dark, #806900); font-size: 15px; line-height: 1.4; }
.result-card-full h4:first-child { margin-top: 0; }
.result-card-full p { max-width: 790px; margin: 0; font-size: var(--type-t1); line-height: 1.65; }
.result-card-full p + p { margin-top: 14px; }
.result-card-full ul { max-width: 790px; margin: 10px 0 0; padding-left: 24px; }
.result-card-full li { margin: 8px 0; color: var(--white); font-size: var(--type-t1); line-height: 1.55; }
.result-card-full .result-fragment-gap { margin: 24px 0 4px; color: var(--yellow); font-size: 24px; font-weight: 800; letter-spacing: .18em; }

.expert-heading h2 { max-width: 1050px; font: 400 var(--type-section)/1 Arial, Helvetica, sans-serif; letter-spacing: -.025em; }
.expert-name-row { margin-bottom: 48px; text-align: center; }
.expert-name { margin: 0; color: var(--yellow); font: 400 clamp(30px, 3.4vw, 46px)/1 Arial, Helvetica, sans-serif; letter-spacing: -.035em; }
.expert-details > h3 { margin: 38px 0 14px; font: 800 20px/1.2 Arial, Helvetica, sans-serif; }
.expert-details > h3:first-child { margin-top: 0; }
.expert-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 14px; margin-top: 42px; }
.mission .button { margin-top: 28px; }
.button-disabled { cursor: not-allowed; opacity: .55; }

.faq { background: var(--white); }
.faq-grid { display: grid; grid-template-columns: .7fr 1fr; gap: 90px; }
.faq-list { border-top: 1px solid var(--line-light); }
.faq-list details { border-bottom: 1px solid var(--line-light); }
.faq-list summary { min-height: 74px; display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; list-style: none; font: 20px/1.3 Arial, Helvetica, sans-serif; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: "+"; color: var(--yellow); font: 26px/1 Arial, sans-serif; }
.faq-list details[open] summary::after { content: "−"; }
.faq-list p { margin: 0 0 22px; color: var(--muted); }

/* Личный кабинет */
.cabinet-body { min-height: 100vh; background: var(--paper); }
.cabinet-header { height: 72px; display: flex; align-items: center; justify-content: space-between; padding: 0 max(24px, calc((100vw - 1180px) / 2)); color: var(--white); background: var(--black); border-bottom: 1px solid var(--line-dark); }
.cabinet-account { display: flex; align-items: center; gap: 14px; color: var(--white); font-size: 12px; }
.cabinet-account button { min-height: 44px; padding: 9px 15px; color: var(--yellow); background: transparent; border: 1px solid var(--yellow); cursor: pointer; font-size: 10px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.cabinet-main { min-height: calc(100vh - 72px); }
.cabinet-intro { display: grid; grid-template-columns: 1fr .8fr; gap: 80px; align-items: end; padding-top: 72px; padding-bottom: 45px; }
.cabinet-intro h1 { margin: 0; font-size: clamp(58px, 8vw, 104px); line-height: .9; letter-spacing: -.06em; }
.cabinet-intro > p { max-width: 520px; margin: 0; color: var(--muted); }
.cabinet-content { padding-bottom: 90px; }
.cabinet-section-title { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; padding-top: 26px; border-top: 1px solid var(--line-light); }
.cabinet-section-title h2 { font-size: 34px; letter-spacing: -.02em; }
.cabinet-section-title span { display: inline-flex; min-height: 32px; align-items: center; padding: 6px 10px; color: var(--black); background: var(--yellow); font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.cabinet-section-title-spaced { margin-top: 54px; }
.cabinet-step-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.cabinet-step-card { min-height: 300px; display: grid; grid-template-columns: 76px 1fr; background: #fff; border: 1px solid var(--line-light); box-shadow: var(--shadow); }
.cabinet-step-rail { display: flex; flex-direction: column; align-items: center; justify-content: space-between; padding: 23px 0; background: var(--yellow); }
.cabinet-step-rail span { font: 34px/1 Georgia, serif; }
.cabinet-step-rail small { font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; transform: rotate(-90deg) translateX(12px); }
.cabinet-step-copy { display: flex; flex-direction: column; padding: 32px; }
.cabinet-step-copy > small { color: #8c7300; font-size: 10px; font-weight: 800; letter-spacing: .11em; text-transform: uppercase; }
.cabinet-step-copy h3 { margin: 24px 0 12px; font-size: 32px; line-height: 1.05; }
.cabinet-step-copy p { margin: 0; color: var(--muted); }
.cabinet-step-copy a { display: flex; justify-content: space-between; margin-top: auto; padding-top: 18px; border-top: 1px solid var(--line-light); font-weight: 800; }
.cabinet-step-copy .step-unavailable { padding-top: 18px; }
.future-steps { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--line-light); border-left: 1px solid var(--line-light); }
.future-steps article { min-height: 96px; display: grid; grid-template-columns: 42px 1fr auto; gap: 18px; align-items: center; padding: 18px 20px; background: #f8f7f2; border-right: 1px solid var(--line-light); border-bottom: 1px solid var(--line-light); }
.future-steps article > span { display: grid; width: 36px; height: 36px; place-items: center; background: #deddd5; font-size: 11px; font-weight: 800; }
.future-steps p { margin: 0; font: 18px/1.25 Georgia, serif; }
.future-steps small { color: #77766f; font-size: 9px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.history-panel { margin-top: 58px; padding: 36px; color: var(--white); background: var(--black); }
.history-panel h2 { margin-bottom: 30px; font-size: 42px; }
.history-panel article { display: grid; grid-template-columns: 1fr auto auto; gap: 24px; align-items: center; min-height: 88px; border-top: 1px solid var(--line-dark); }
.history-panel article > div { display: grid; gap: 6px; }
.history-panel article span, .history-panel time { color: var(--white); font-size: 12px; }
.history-panel article a { color: var(--yellow); font-weight: 800; }
.cabinet-footer { padding: 25px 0; color: var(--white); background: var(--black); font-size: 12px; }
.cabinet-footer > div { display: flex; justify-content: space-between; }
.cabinet-footer a { color: var(--yellow); }

@media (max-width: 1080px) {
  .site-header { grid-template-columns: minmax(0, 1fr) auto auto; gap: 12px; }
  .site-header nav { display: none; }
  .site-header .mobile-menu nav { display: grid; }
  .header-format-action { display: none; }
  .menu-toggle { display: inline-flex; }
}

@media (max-width: 920px) {
  .site-header { grid-template-columns: 1fr auto auto; }
  .hero { min-height: 760px; align-items: end; }
  .hero-copy { margin-right: max(24px, calc((100vw - 1180px) / 2)); padding-bottom: 40px; }
  .hero-photo { width: 100%; opacity: .58; }
  .hero-photo::after { background: linear-gradient(0deg, var(--black) 7%, rgba(9, 9, 7, .5) 68%, rgba(9, 9, 7, .2)); }
  .hero h1 { max-width: 730px; }
  .dot-field-hero { right: 0; }
  .signal-grid { grid-template-columns: 1fr 1fr; }
  .clarity-grid, .obstacle-grid, .importance-grid, .bridge-grid, .steps-intro-grid, .expert-grid, .mission-grid, .free-entry-grid, .faq-grid, .routes-heading { grid-template-columns: 1fr; gap: 35px; }
  .bridge .fine-print { width: auto; max-width: none; margin-left: 0; }
  .routes-heading .eyebrow { grid-column: auto; }
  .step-list { grid-template-columns: 1fr; }
  .format-grid, .format-grid-three, .outcome-grid, .cabinet-step-grid { grid-template-columns: 1fr; }
  .process-line-four { grid-template-columns: 1fr 1fr; }
  .process-line-four::before { display: none; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid > a:last-child { justify-self: start; }
}

@media (max-width: 620px) {
  .shell { width: min(100% - 28px, 1180px); }
  .band { padding: 76px 0; }
  .routes-heading h2 { font-size: 44px; }
  .routes-heading > p:last-child { font-size: 15px; }
  .routes-scroll { margin-top: 40px; padding-top: 18px; }
  .routes-table { min-width: 1020px; grid-template-columns: 330px repeat(3, 218px); gap: 10px; }
  .route-column { grid-template-rows: 166px repeat(6, minmax(102px, auto)) 186px; }
  .route-step-label { padding: 18px 20px; }
  .route-step-label strong { font-size: 15px; }
  .route-plan-head { padding-left: 82px; }
  .routes-swipe { display: block; }
  .site-header { height: 60px; gap: 6px; padding: 0 14px; }
  .site-header > .brand { min-width: 0; font-size: 12px; line-height: 1.05; }
  .site-header > .brand > span:last-child { max-width: 122px; }
  .brand-mark { width: 28px; height: 28px; }
  .header-action { padding: 7px 10px; font-size: 9px; }
  .header-actions { gap: 6px; }
  .account-button--signed-in { min-width: 124px; min-height: 48px; padding-right: 7px; padding-left: 7px; }
  .account-button--signed-in > small { max-width: 110px; font-size: 8px; }
  .header-format-action { display: none; }
  .menu-toggle { min-height: 44px; padding: 7px 9px; font-size: 9px; }
  .mobile-menu { top: 60px; max-height: calc(100vh - 60px); padding: 20px 14px 24px; }
  .mobile-menu-actions { display: grid; gap: 16px; }
  .mobile-menu-actions .button { min-width: 0; width: 100%; }
  .mobile-menu-account { width: max-content; }
  .hero { min-height: 700px; padding: 90px 0 45px; }
  .hero-copy { margin: 0 14px; padding-bottom: 0; }
  .hero h1 { font-size: 36px; }
  .hero h1 { letter-spacing: -.02em; }
  .hero-lead { font-size: 15px; }
  .hero-description { font-size: 13px; }
  .button-yellow { width: 100%; min-width: 0; }
  .split-heading, .steps-heading { grid-template-columns: 1fr; gap: 20px; }
  .split-heading .eyebrow, .steps-heading .eyebrow { grid-column: auto; }
  .signal-grid { display: grid; grid-auto-flow: column; grid-auto-columns: minmax(280px, 86vw); grid-template-columns: none; gap: 14px; margin-right: -14px; padding: 4px 14px 24px 2px; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-color: var(--yellow) #d8d7d0; }
  .signal-card { min-height: 132px; scroll-snap-align: start; }
  .step-card summary { grid-template-columns: 58px 1fr 36px; gap: 16px; padding-right: 14px; }
  .step-card h3 { font-size: 23px; }
  .step-price { align-items: flex-start; flex-direction: column; }
  .step-toggle { width: 36px; height: 36px; }
  .step-details { margin-left: 58px; padding: 24px 18px; }
  .format-card { min-height: 380px; padding: 32px 25px; }
  .format-badge { left: 25px; }
  .format-grid-three .format-card { width: 100%; min-height: 380px; }
  .format-card h3 { font-size: 31px; }
  .results-note { font-size: 15px; }
  .results-carousel { grid-auto-columns: 91%; margin-top: 34px; }
  .result-card { min-height: 400px; padding: 28px 22px; }
  .result-card h3 { margin: 24px 0 28px; font-size: 25px; }
  .result-card-teaser,
  .result-card-full p { font-size: 15px; }
  .carousel-heading { align-items: flex-start; flex-direction: column; }
  .relation-card { padding: 28px 22px; }
  .relation-card h3 { font-size: 22px; }
  .steps-footer h3:nth-child(2) { font-size: 21px; }
  .process-line, .process-line-four { grid-template-columns: 1fr; gap: 42px; }
  .process-line::before { display: none; }
  .mission h2 { font-size: 44px; }
  .cabinet-header { height: 60px; padding: 0 14px; }
  .cabinet-account > span { display: none; }
  .cabinet-intro { grid-template-columns: 1fr; gap: 24px; padding-top: 48px; }
  .cabinet-intro h1 { font-size: 62px; }
  .cabinet-step-card { grid-template-columns: 58px 1fr; }
  .cabinet-step-copy { padding: 25px 20px; }
  .cabinet-step-copy h3 { font-size: 27px; }
  .future-steps { grid-template-columns: 1fr; }
  .history-panel { padding: 25px 20px; }
  .history-panel h2 { font-size: 34px; }
  .history-panel article { grid-template-columns: 1fr; gap: 8px; padding: 18px 0; }
  .cabinet-footer > div { display: grid; gap: 10px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Версия 1.3: обновлённые блоки и пакеты */
.hero-text-link { display: inline-flex; align-items: center; min-height: 44px; color: var(--yellow); border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.hero-text-link:hover { color: var(--yellow-soft); }
.hero-caption { position: absolute; z-index: 2; right: 42px; bottom: 40px; max-width: 300px; margin: 0; color: var(--white); font-size: 18px; font-weight: 700; line-height: 1.25; text-align: right; }
.hero-caption span { display: inline-block; margin-top: 9px; font-size: 12px; font-weight: 500; line-height: 1.45; }

/* Первый экран проявляется последовательно после загрузки фотографии. */
.js .hero .hero-copy > .eyebrow,
.js .hero .hero-copy > h1,
.js .hero .hero-lead,
.js .hero .hero-caption,
.js .hero .hero-actions {
  opacity: 0;
  will-change: opacity, transform;
}
.js .hero .hero-copy > .eyebrow,
.js .hero .hero-copy > h1 {
  transform: translate3d(0, -44px, 0);
  transition: opacity .82s ease .1s, transform .82s cubic-bezier(.22, 1, .36, 1) .1s;
}
.js .hero .hero-lead {
  transform: translate3d(0, 38px, 0);
  transition: opacity .76s ease .65s, transform .76s cubic-bezier(.22, 1, .36, 1) .65s;
}
.js .hero .hero-caption {
  transform: translate3d(48px, 0, 0);
  transition: opacity .76s ease 2.08s, transform .76s cubic-bezier(.22, 1, .36, 1) 2.08s;
}
.js .hero .hero-actions {
  pointer-events: none;
  transform: translate3d(0, 12px, 0);
  transition: opacity .56s ease 1.46s, transform .56s cubic-bezier(.22, 1, .36, 1) 1.46s;
}
.js .hero.hero-ready .hero-copy > .eyebrow,
.js .hero.hero-ready .hero-copy > h1,
.js .hero.hero-ready .hero-lead,
.js .hero.hero-ready .hero-caption,
.js .hero.hero-ready .hero-actions {
  opacity: 1;
  transform: none;
}
.js .hero.hero-ready .hero-actions { pointer-events: auto; }
.js .hero:not(.hero-ready) .hero-copy > .eyebrow,
.js .hero:not(.hero-ready) .hero-copy > h1,
.js .hero:not(.hero-ready) .hero-lead,
.js .hero:not(.hero-ready) .hero-caption,
.js .hero:not(.hero-ready) .hero-actions { transition: none; }

@media (prefers-reduced-motion: no-preference) {
  .step-list .step-reveal {
    opacity: 0;
    filter: blur(12px);
    transition: opacity 1.2s ease, filter 1.2s cubic-bezier(.4, 0, .2, 1);
    transition-delay: var(--step-reveal-delay, 0ms);
  }
  .step-list .step-reveal.is-revealed,
  .step-list .step-reveal:focus-within,
  .step-list .step-reveal[open] {
    opacity: 1;
    filter: blur(0);
  }
  .step-list .step-reveal:focus-within,
  .step-list .step-reveal[open] { transition: none; }
  .bridge-purchase-grid .scroll-reveal {
    opacity: 0;
    filter: blur(12px);
    transition: opacity 2.4s cubic-bezier(.4, 0, .2, 1), filter 2.4s cubic-bezier(.4, 0, .2, 1);
  }
  .bridge-purchase-grid .scroll-reveal.is-revealed,
  .bridge-purchase-grid .scroll-reveal:focus-within { opacity: 1; filter: blur(0); }
  .bridge-purchase-grid .scroll-reveal:focus-within { transition: none; }
}
@media (min-width: 1081px) and (prefers-reduced-motion: no-preference) {
  .signal-grid .scroll-reveal,
  .directors-results-grid .scroll-reveal {
    opacity: 0;
    transform: translate3d(0, 48px, 0);
    transition: opacity 2.4s cubic-bezier(.4, 0, .2, 1), transform 2.4s cubic-bezier(.4, 0, .2, 1);
  }
  .signal-grid .scroll-reveal.is-revealed,
  .directors-results-grid .scroll-reveal.is-revealed { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .js .hero .hero-copy > .eyebrow,
  .js .hero .hero-copy > h1,
  .js .hero .hero-lead,
  .js .hero .hero-caption,
  .js .hero .hero-actions {
    opacity: 1;
    pointer-events: auto;
    transform: none;
    transition: none;
    will-change: auto;
  }
}

.obstacle-copy-single { max-width: 820px; min-height: 0; padding: 38px 0 0; border-top: 1px solid var(--line-dark); }
.obstacle-copy-single p { max-width: 720px; color: var(--white); }
.obstacle-copy-single p { font-size: var(--type-t1); line-height: 1.6; }
.obstacle-copy-single .lead-serif { color: var(--yellow); font-weight: 400; }
.obstacle-layout { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: 64px; align-items: center; margin-top: 54px; }
.obstacle-image { position: relative; min-width: 0; margin: 0; border: 1px solid var(--line-dark); box-shadow: none; }
.obstacle-image::after { content: ""; position: absolute; right: -1px; bottom: -1px; left: -1px; height: 6px; background: var(--yellow); }
.obstacle-image img { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; object-position: center; filter: saturate(.78) contrast(1.04); }
.obstacle-layout .obstacle-copy-single { max-width: none; padding-top: 28px; }
.importance-panel-new { position: relative; max-width: 88%; padding: 34px; }
.importance-panel-new p:first-of-type { margin: 0; padding-right: 72px; color: var(--ink); font: 400 var(--type-t1)/1.6 "Onest", sans-serif !important; }
.importance-target-icon { position: absolute; top: 18px; right: 20px; display: grid; width: 58px; height: 58px; place-items: center; color: var(--yellow); }
.importance-target-icon svg { width: 48px; height: 48px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2.6; stroke-linecap: square; stroke-linejoin: miter; }
.importance-target-icon .importance-target-dot { fill: currentColor; stroke: none; }
.importance-grid .lead-serif { font-size: var(--type-t1); line-height: 1.6; }
.importance-note { margin: 34px 0 0; padding-top: 24px; border-top: 3px solid var(--yellow); font-size: 14px; font-weight: 700; }
.bridge-grid > div:first-child > p:not(.lead-serif), .bridge-grid > div:last-child > p:not(.lead-serif) { color: var(--white); }
.bridge-closing { max-width: 890px; margin-top: 50px; padding-top: 28px; border-top: 3px solid var(--yellow); }
.bridge-closing p { color: var(--white); }
.bridge-closing p:first-child { margin-top: 0; font-size: 22px; }
.bridge-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 72px; align-items: start; margin-top: 62px; }
.bridge-copy { min-width: 0; }
.bridge-lead { max-width: 520px; margin: 0; color: var(--white); font-size: var(--type-t1); font-weight: 400; line-height: 1.6; }
.bridge-reassurance { margin-top: 34px; padding-top: 28px; border-top: 3px solid var(--yellow); }
.bridge-reassurance > p:first-child { margin: 0 0 18px; color: var(--yellow); font-size: var(--type-t1); font-weight: 400; }
.bridge-disclaimer { margin: 0; color: var(--white); font-size: var(--type-t1); line-height: 1.6; }
.bridge-options { min-width: 0; }
.bridge-options-label { margin: 0 0 18px; color: var(--white); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-align: center; }
.bridge-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.bridge-card { position: relative; min-height: 270px; padding: 76px 30px 30px; color: var(--white); background: #23221d; border: 1px solid rgba(242,198,0,.35); box-shadow: 0 16px 40px rgba(0,0,0,.22); }
.bridge-card-thumb { position: absolute; top: 0; right: 0; display: grid; width: 76px; height: 76px; place-items: center; color: var(--yellow); background: transparent; box-shadow: none; }
.bridge-card-thumb svg { width: 43px; height: 43px; fill: currentColor; }
.bridge-card h3 { margin: 0 0 28px; color: var(--white); font-size: 20px; font-weight: 700; line-height: 1.2; }
.bridge-card p { margin: 0; color: var(--white); font-size: 15px; line-height: 1.55; }
.bridge-card-emphasis { border-color: rgba(242,198,0,.55); box-shadow: 0 20px 46px rgba(0,0,0,.28); }
.format-intro { max-width: 660px; margin: 28px 0 0; color: var(--white); font-size: var(--type-t1); }
.format-questions { display: grid; gap: 10px; max-width: 800px; margin: 42px 0 0; padding: 0; color: var(--white); font-size: var(--type-t1); list-style: none; }
.format-questions li { position: relative; padding-left: 24px; line-height: 1.5; }
.format-questions li::before { content: ""; position: absolute; top: .7em; left: 0; width: 9px; border-top: 3px solid var(--yellow); }
.format-result { max-width: 780px; margin: 34px 0 0; color: var(--white); font-size: var(--type-t1); }
.format-grid-two { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: stretch; }
.format-grid-two .format-card { min-height: 300px; }
.format-summary { max-width: 880px; margin: 42px 0 0; color: var(--white); font-size: var(--type-t1); }
.format-bridge { display: grid; gap: 4px; max-width: 900px; margin-top: 46px; padding: 28px; color: var(--black); background: var(--yellow); }
.format-bridge p { margin: 0; font-size: var(--type-t1); font-weight: 400; }
.format-bridge .inline-action { justify-self: start; min-height: auto; margin: 4px 0 0; padding: 0; color: var(--black); background: transparent; box-shadow: none; text-align: left; }
.format-note { max-width: 850px; margin: 34px 0 0 24px; padding-left: 20px; color: var(--white); border-left: 2px solid var(--yellow); font-size: 14px; }
.directors { background: var(--white); }
.directors-card { max-width: 1050px; margin: 0 auto; padding: clamp(34px, 6vw, 76px); color: var(--black); background: linear-gradient(135deg, #f2c600, #f8dc58); box-shadow: 18px 18px 0 rgba(242,198,0,.2); }
.directors-card .eyebrow { color: #665300; }
.directors-card h2 { max-width: 790px; }
.directors-subtitle { margin: 26px 0 0; font-size: var(--type-t1); font-weight: 400; }
.directors-copy { columns: 2; column-gap: 60px; margin-top: 42px; }
.directors-copy p { break-inside: avoid; margin-top: 0; font-size: var(--type-t1); }
.directors-action { width: min(100%, 570px); margin-top: 34px; color: var(--yellow); background: var(--black); box-shadow: 10px 10px 0 rgba(22,22,17,.22); }
.directors-action:hover { color: var(--yellow); background: #24231e; }
.directors-discount { margin: 22px 0 0; font-size: var(--type-t1); font-weight: 600; }
.directors-note { max-width: 820px; margin: 36px 0 0; padding-top: 24px; border-top: 2px solid rgba(22,22,17,.35); font-size: 14px; font-weight: 700; }
.outcomes { background: var(--black); }
.outcomes .outcome-heading h2, .outcomes-copy, .outcomes-copy p, .outcomes-copy li { color: var(--white); }
.outcomes-copy { max-width: 950px; margin-top: 46px; font-size: var(--type-t1); }
.outcomes-copy ul { display: grid; gap: 10px; padding-left: 22px; }
.outcomes-copy li::marker { color: var(--yellow); }
.outcomes-action { width: min(100%, 620px); margin-top: 35px; }
.outcomes-discount { margin: 20px 0 0; color: var(--white); font-size: var(--type-t1); }
.steps-intro { background: var(--white); }
.steps-intro-summary > p { color: var(--ink); }
.steps-intro .lead-serif { color: var(--ink); font-size: var(--type-t1); }
.steps-intro-summary > p { font-size: var(--type-t1); }
.steps-footer { border-top-color: var(--line-light); }
.steps-footer .button { margin-top: 0; }
.step-price { min-height: 29px; align-items: flex-start; font-size: 12px; }
.step-price strong { padding: 6px 9px; font-size: 15px; }
.client-results { background: var(--black); }
.client-results .carousel-heading h2 { color: var(--white); }
.expert { background: var(--white); }
.expert-profile > p:not(.lead-serif), .expert-details > p { color: var(--ink); }
.expert-profile, .expert-details { border-top-color: var(--line-light); }
.expert-profile > h3, .expert-details > h3 { margin: 38px 0 14px; font-size: 20px; }
.expert-accordion { margin-top: 0; border-top: 1px solid var(--line-light); border-bottom: 1px solid var(--line-light); }
.expert-accordion summary { display: flex; min-height: 70px; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; font-size: 20px; font-weight: 800; }
.expert-accordion summary::-webkit-details-marker { display: none; }
.expert-accordion summary::after { content: "+"; color: var(--yellow); font-size: 28px; font-weight: 400; }
.expert-accordion[open] summary::after { content: "−"; }
.expert-accordion p { color: var(--ink); }
.expert-intro { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(300px, .78fr) minmax(0, 1.22fr); gap: 70px; align-items: start; }
.expert-photo { position: relative; margin: 0; border: 1px solid var(--line-light); }
.expert-photo img { display: block; width: 100%; aspect-ratio: 3 / 4; object-fit: cover; object-position: 67% center; filter: saturate(.88) contrast(1.03); }
.expert-profile { padding-top: 28px; }
.expert-wide-copy { grid-column: 1 / -1; width: 100%; padding-top: 28px; }
.expert-wide-copy .expert-section-title { margin: 0 0 14px; font-size: 20px; font-weight: 800; }
.expert-wide-copy p { color: var(--ink); font-size: var(--type-t1); line-height: 1.6; }
.expert-details { grid-column: 1 / -1; display: grid; margin-top: 8px; padding-top: 0; border-top: 0; }
.expert-details .expert-accordion { margin: 0; border-top: 1px solid var(--line-light); border-bottom: 0; }
.expert-details .expert-accordion:last-child { border-bottom: 1px solid var(--line-light); }
.expert-details .expert-accordion summary { justify-content: space-between; text-align: left; }
.free-entry { background: var(--black); }
.free-entry-grid > div:last-child > p:not(.lead-serif) { color: var(--white); }
.free-entry-grid { grid-template-columns: 1fr; gap: 0; }
.free-entry-heading { width: 100%; }
.free-entry-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; margin-top: 48px; }
.free-entry-copy p,
.free-entry-copy li { color: var(--white); font-size: var(--type-t1); }
.free-entry-copy > div > p:first-child { margin-top: 0; }
.free-entry-actions { justify-content: center; width: 100%; margin-top: 38px; }
.free-entry-actions .serial-link { margin: 0; }
.serial-link { display: inline-flex; min-height: 44px; align-items: center; margin-top: 14px; color: var(--yellow); border-bottom: 1px solid currentColor; font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.free-entry-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 30px; }
.free-entry-actions .button { min-width: 260px; }

/* Единые элементы главной страницы */
.primary-checkup-button { min-width: 310px; }
.consultation-link { margin: 0; }
.expert .consultation-link { color: #806900; }
.free-entry .consultation-link { color: var(--yellow); }
.expert-actions, .free-entry-actions { align-items: center; }

.important-notice {
  width: calc(100% - 48px);
  margin: 36px 24px 0;
  padding: 18px 22px;
  color: inherit;
  background: transparent;
  border-left: 3px solid var(--yellow);
  font-size: var(--type-important);
  font-weight: 800;
  line-height: 1.55;
}

.homepage .site-list {
  display: grid;
  gap: 10px;
  padding: 0;
  list-style: none;
}
.homepage .site-list li {
  position: relative;
  padding-left: 24px;
  line-height: 1.5;
}
.homepage .site-list li::before {
  content: "";
  position: absolute;
  top: .7em;
  left: 0;
  width: 9px;
  border-top: 3px solid var(--yellow);
}
.homepage .site-list li::marker { content: none; }

@media (max-width: 920px) {
  .format-grid-two { grid-template-columns: 1fr; }
  .directors-copy { columns: 1; }
  .hero-caption { right: 24px; bottom: 25px; }
  .bridge-layout { grid-template-columns: 1fr; gap: 46px; }
  .obstacle-layout { grid-template-columns: 1fr; gap: 34px; }
  .expert-intro { grid-template-columns: 1fr; gap: 32px; }
  .expert-photo img { aspect-ratio: 4 / 5; object-position: 67% center; }
  .free-entry-copy { grid-template-columns: 1fr; gap: 22px; margin-top: 34px; }
}

@media (max-width: 620px) {
  :root { --type-t1: 15px; }
  .homepage .band:not(.hero) .shell h2 { font-size: 36px !important; }
  .hero-lead, .hero-description { font-size: var(--type-t1); }
  .hero-text-link { font-size: 10px; }
  .hero-caption { right: 14px; bottom: 18px; max-width: 230px; font-size: 15px; }
  .hero-caption span { font-size: 10px; }
  .importance-panel-new { max-width: 100%; }
  .directors-card { padding: 32px 24px; box-shadow: 10px 10px 0 rgba(242,198,0,.2); }
  .directors-action, .outcomes-action { width: 100%; }
  .format-note { margin-left: 0; }
  .step-price strong { font-size: 14px; }
  .free-entry-actions .button { width: 100%; min-width: 0; }
  .important-notice { width: calc(100% - 16px); margin-right: 8px; margin-left: 8px; padding: 16px 18px; }
  .consultation-link { width: auto; }
  .bridge-layout { margin-top: 44px; }
  .bridge-card-grid { grid-template-columns: 1fr; }
  .bridge-card { min-height: 220px; padding: 76px 24px 26px; }
  .bridge-card h3 { margin-bottom: 18px; }
  .obstacle-layout { margin-top: 36px; }
  .obstacle-image { box-shadow: none; }
  .obstacle-layout .obstacle-copy-single { padding-top: 24px; }
}

/* Изменения от 23-08: новая последовательность и единые состояния полос */
:root { --type-display: 36px; --type-section: 36px; }
.homepage .band:not(.hero) .shell h2 { font-size: 36px !important; }
.homepage .brand { font-size: 13.6px; }

.hero-photo img { object-position: center; filter: none; }
.hero-caption, .hero-caption span { font-size: var(--type-t1); font-weight: 400; line-height: 1.5; }

.signal-controls { display: none; justify-content: center; gap: 12px; margin-top: 20px; }
.signal-controls button,
.carousel-controls button { width: 48px; height: 48px; color: var(--black); background: var(--yellow); border: 0; box-shadow: 6px 6px 0 rgba(242,198,0,.16); cursor: pointer; font-size: 22px; }
.signal-controls button:disabled { cursor: default; opacity: .35; box-shadow: none; }

.obstacle-copy-single { border-top: 0; }
.obstacle-divider { display: block; width: 100%; margin: 26px 0; border-top: 3px solid var(--yellow); }
.importance-panel-new::after { content: ""; position: absolute; right: 0; bottom: 0; left: 0; height: 6px; background: var(--yellow); }

.important-notice { color: var(--yellow) !important; background: transparent; font-weight: 400; }

.process { color: var(--white); background: var(--black); }
.process h2, .process-line h3, .process-line p { color: var(--white); }
.process-line p { font-size: var(--type-t1); }
.process-line::before { border-color: rgba(255,255,255,.3); }

.bridge { color: var(--ink); background: var(--white); }
.bridge > .shell > h2 { color: var(--ink); }
.bridge .eyebrow { color: #987b00; }
.bridge-new-copy { display: block; width: 100%; margin-top: 50px; font-size: var(--type-t1); }
.bridge-new-copy > p:first-child { margin-top: 0; }
.bridge-question-list { width: 100%; margin: 22px 0 0; }
.bridge-turn { width: 100%; margin-top: 42px; padding-top: 32px; border-top: 3px solid var(--yellow); font-size: var(--type-t1); }
.bridge-turn p { width: 100%; margin: 0 0 18px; }
.bridge-turn p:last-child { margin-bottom: 0; }
.bridge-board-preview { grid-column: 1 / -1; margin-top: 28px; padding: 34px; color: var(--white); background: var(--black-soft); border-left: 6px solid var(--yellow); }
.bridge-board-preview h3 { margin-bottom: 22px; font-size: 25px; }
.bridge-board-preview p { color: var(--white); }
.bridge-board-preview .hero-text-link { margin-top: 12px; }
.bridge-purchase-grid { margin-top: 42px; scroll-margin-top: 86px; }
.bridge-single-card { background: #fff; border: 1px solid var(--line-light); box-shadow: var(--shadow); }
.bridge-purchase-grid .format-card h3 { margin-bottom: 8px; }
.bridge-purchase-grid .format-card .format-card-price { margin: 0 0 20px; color: #806900; font-size: var(--type-t1); font-weight: 800; }
.bridge-purchase-grid .format-card-dark .format-card-price { color: var(--yellow); }

.directors { color: var(--white); background: var(--black); }
.directors-card { max-width: none; padding: 0; color: var(--white); background: transparent; box-shadow: none; }
.directors-card .eyebrow { color: var(--yellow); }
.directors-card h2 { max-width: 900px; color: var(--white); }
.directors-copy { display: grid; grid-template-columns: 1fr 1fr; columns: auto; gap: 70px; margin-top: 48px; }
.directors-copy > div { padding-top: 28px; border-top: 1px solid var(--line-dark); }
.directors-copy p, .directors-copy li { color: var(--white); font-size: var(--type-t1); }
.directors-closing { margin-top: 30px; padding-top: 24px; color: var(--yellow) !important; border-top: 3px solid var(--yellow); }
.directors-action { color: var(--black); background: var(--yellow); box-shadow: 10px 10px 0 rgba(242,198,0,.14); }
.directors-action:hover { color: var(--black); background: var(--yellow-soft); }
.directors-discount { color: var(--white); font-weight: 400; }

.outcomes { color: var(--ink); background: var(--white); }
.outcomes .outcome-heading h2, .outcomes-copy, .outcomes-copy p, .outcomes-copy li, .outcomes-discount { color: var(--ink); }
.outcomes-secondary-actions { display: flex; flex-wrap: wrap; gap: 18px 30px; margin-top: 34px; }
.outcomes-secondary-actions .hero-text-link { color: #806900; }

.steps-intro { color: var(--white); background: var(--black-soft); }
.steps-intro h2, .steps-intro .lead-serif, .steps-intro-summary > p { color: var(--white); }
.steps-intro .steps-intro-grid { grid-template-columns: 1fr 1fr; }

.client-results { color: var(--ink); background: var(--white); }
.client-results .carousel-heading h2 { color: var(--ink); }

.expert { color: var(--white); background: var(--black); }
.expert h2, .expert-profile > p:not(.lead-serif), .expert-details > p, .expert-profile .lead-serif, .expert-accordion p { color: var(--white); }
.expert-profile p, .expert-profile .lead-serif, .expert-accordion p { font-size: var(--type-t1); line-height: 1.6; }
.expert-profile, .expert-details, .expert-photo, .expert-accordion, .expert-details .expert-accordion, .expert-details .expert-accordion:last-child { border-color: var(--line-dark); }
.expert .consultation-link { color: var(--yellow); }

.free-entry { color: var(--ink); background: var(--white); }
.free-entry-grid > div:last-child > p:not(.lead-serif) { color: var(--ink); }
.free-entry-grid p { font-size: var(--type-t1); }
.free-entry .serial-link { color: #806900; }

.faq { color: var(--white); background: var(--black); }
.faq-grid { grid-template-columns: 1fr; gap: 48px; }
.faq-list { border-top-color: var(--line-dark); }
.faq-list details { border-bottom-color: var(--line-dark); }
.faq-list summary, .faq-list p, .faq-answer h3, .faq-answer li { color: var(--white); }
.faq-list p, .faq-answer li { font-size: var(--type-t1); }
.faq-answer { padding-bottom: 26px; }
.faq-answer h3 { margin: 10px 0 14px; font-size: 20px; }
.faq-answer .site-list { margin: 0 0 22px; }
.faq-video-answer { padding-top: 4px; }
.faq-video-answer video { display: block; width: 100%; max-width: 960px; height: auto; max-height: 72vh; background: var(--black); border: 1px solid var(--line-light); }

@media (max-width: 1080px) {
  .hero { min-height: 0; display: block; padding: 0 0 70px; }
  .hero-copy { margin: 0 auto; padding: 110px 24px 42px; }
  .hero-photo { position: relative; inset: auto; width: min(520px, 72vw); margin: 0 auto; overflow: visible; opacity: 1; }
  .hero-photo::after { display: none; }
  .hero-photo picture { height: auto; }
  .hero-photo img { display: block; width: 100%; height: auto; aspect-ratio: 692 / 834; object-fit: contain; object-position: center; -webkit-mask-image: none; mask-image: none; }
  .hero-caption { position: static; max-width: none; padding: 18px 24px 0; text-align: left; }
  .directors-copy, .steps-intro .steps-intro-grid { grid-template-columns: 1fr; }
}

@media (max-width: 620px) {
  :root { --type-display: 36px; --type-section: 36px; }
  .homepage .band:not(.hero) .shell h2 { font-size: 36px !important; }
  .hero-photo { width: 100%; margin: 0; }
  .hero h1 { font-size: 36px; }
  .hero-caption, .hero-caption span { font-size: var(--type-t1); }
  .signal-controls { display: flex; }
  .bridge-new-copy { margin-top: 36px; }
  .bridge-board-preview { padding: 26px 22px; }
  .outcomes-secondary-actions { display: grid; }
}

/* Правки 23 августа _2: новая последовательность и самостоятельный Совет директоров. */
.bridge-question-list strong { font-weight: 800; }
.bridge-purchase-grid .format-card h3 {
  align-self: stretch;
  margin: 32px 0 8px;
  font-size: clamp(28px, 3vw, 38px);
  text-align: center;
}
.bridge-purchase-grid .format-card .format-card-price {
  align-self: stretch;
  margin: 0 0 20px;
  font-size: clamp(22.4px, 2.4vw, 30.4px);
  line-height: 1.1;
  text-align: center;
}
.bridge-old-price { margin: 0 0 24px; text-align: center; }
.bridge-turn {
  width: calc(100% - 48px);
  margin: 42px 24px 0;
  padding: 34px 40px;
  color: var(--black);
  background: var(--yellow);
  border: 0;
}
.bridge-turn p,
.bridge-turn strong { color: var(--black); }

.council-intro { color: var(--white); background: var(--black); }
.council-intro h2 { max-width: 900px; color: var(--white); }
.council-intro-copy {
  max-width: 940px;
  margin-top: 48px;
  padding-top: 28px;
  border-top: 1px solid var(--line-dark);
  font-size: var(--type-t1);
}
.council-intro-copy p { margin: 0 0 20px; color: var(--white); }
.council-intro-copy p:last-child { margin-bottom: 0; }

.directors { color: var(--ink); background: var(--white); }
.directors-card { color: var(--ink); }
.directors-card .eyebrow { color: #987b00; }
.directors-card h2 { color: var(--ink); }
.directors-copy {
  display: block;
  max-width: none;
  margin-top: 48px;
  padding-top: 28px;
  border-top: 1px solid var(--line-light);
}
.directors-copy p,
.directors-copy li { color: var(--ink); font-size: var(--type-t1); }
.directors-results-lead { margin-top: 40px; font-weight: 700; }
.directors-results-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 16px;
  margin: 28px 0 42px;
  padding: 0;
  list-style: none;
}
.directors-results-grid li {
  position: relative;
  min-height: 148px;
  display: flex;
  align-items: flex-end;
  padding: 46px 28px 26px;
  background: #fbfaf6;
  border: 1px solid var(--line-light);
}
.directors-results-grid li::before {
  content: "";
  position: absolute;
  top: 25px;
  left: 28px;
  width: 54px;
  border-top: 4px solid var(--yellow);
}
.directors-closing {
  width: 100%;
  margin: 48px 0 50px;
  padding: 38px 0;
  color: #806900 !important;
  border-top: 3px solid var(--yellow);
  border-bottom: 1px solid var(--line-light);
  font-size: clamp(22px, 2.2vw, 30px) !important;
  line-height: 1.35;
}
.directors-old-price,
.outcomes-old-price { margin: 22px 0 0; font-size: var(--type-t1); }
.directors-discount { color: var(--ink); }
.directors .important-notice { color: var(--ink) !important; }

.outcomes { color: var(--white); background: var(--black); }
.outcomes .outcome-heading h2,
.outcomes-copy,
.outcomes-copy p,
.outcomes-discount,
.outcomes-old-price { color: var(--white); }
.outcomes-question-panel {
  margin: 28px 0 32px;
  padding: clamp(28px, 5vw, 54px);
  color: var(--yellow);
  background: #fff;
  border: 1px solid rgba(255,255,255,.18);
  box-shadow: 14px 14px 0 rgba(242,198,0,.12);
}
.outcomes-question-panel .site-list { margin: 0; }
.outcomes-question-panel li { color: var(--ink) !important; }
.outcomes-secondary-actions {
  display: grid;
  justify-items: start;
  width: min(100%, 620px);
  gap: 18px;
}
.outcomes-secondary-actions .hero-text-link { width: 50%; color: var(--yellow); }

@media (max-width: 620px) {
  .outcomes-secondary-actions .hero-text-link { width: 100%; }
}

.steps-intro { color: var(--ink); background: var(--white); }
.steps-intro h2,
.steps-intro .lead-serif,
.steps-intro-summary > p { color: var(--ink); }
.steps-intro .eyebrow { color: #987b00; }

.client-results { color: var(--white); background: var(--black); }
.client-results .carousel-heading h2 { color: var(--white); }
.client-results .result-card {
  color: var(--white);
  background: #1b1a16;
  border-color: var(--line-dark);
  box-shadow: none;
}
.client-results .result-card > span { color: var(--yellow); }
.client-results .result-card h3,
.client-results .result-card p { color: var(--white); }

.expert { color: var(--ink); background: var(--white); }
.expert h2,
.expert .expert-name,
.expert-profile > p:not(.lead-serif),
.expert-details > p,
.expert-profile .lead-serif,
.expert-profile h3,
.expert-accordion summary,
.expert-accordion p { color: var(--ink); }
.expert-profile,
.expert-details,
.expert-photo,
.expert-accordion,
.expert-details .expert-accordion,
.expert-details .expert-accordion:last-child { border-color: var(--line-light); }
.expert .consultation-link { color: #806900; }

.free-entry { color: var(--white); background: var(--black); }
.free-entry h2,
.free-entry-grid > div:last-child > p:not(.lead-serif) { color: var(--white); }
.free-entry .serial-link { color: var(--yellow); }

.faq { color: var(--ink); background: var(--white); }
.faq h2,
.faq-list summary,
.faq-list p,
.faq-answer h3,
.faq-answer li { color: var(--ink); }
.faq-list { border-top-color: var(--line-light); }
.faq-list details { border-bottom-color: var(--line-light); }

@media (max-width: 620px) {
  .bridge-turn {
    width: calc(100% - 24px);
    margin-right: 12px;
    margin-left: 12px;
    padding: 26px 22px;
  }
  .directors-results-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  .directors-results-grid li { min-height: 150px; padding: 42px 16px 20px; font-size: 14px; }
  .directors-results-grid li::before { top: 21px; left: 16px; width: 42px; }
  .directors-action,
  .outcomes-action { width: 100%; }
}

/* Точечные правки типографики и блоков после согласования. */
:root {
  --type-display: 36px;
  --type-section: 36px;
  --type-t1: 18px;
}
.homepage .band:not(.hero) .shell h2 { font-size: 36px !important; }

/* «Выдох»: оформление по правилам текстового блока «Важно». */
.bridge-turn {
  width: calc(100% - 48px);
  margin: 36px 24px 0;
  padding: 18px 22px;
  color: var(--yellow);
  background: transparent;
  border: 0;
  border-left: 3px solid var(--yellow);
  font-size: var(--type-important);
  font-weight: 400;
  line-height: 1.55;
}
.bridge-turn p { color: inherit; font-weight: 400; }
.bridge-turn strong { color: inherit; font-weight: 800; }
.bridge-turn p { margin-bottom: 12px; line-height: inherit; }

/* «Внутренний совет директоров»: без серого разделителя. */
.council-intro-copy { padding-top: 0; border-top: 0; }

/* «Акционеры вашей жизни»: без горизонтальных линий, карточки как в «Вам это знакомо». */
.directors-copy { padding-top: 0; border-top: 0; }
.directors-results-grid { gap: 16px; }
.directors-results-grid li {
  position: relative;
  min-height: 150px;
  display: grid;
  place-items: center;
  padding: 28px 30px 24px 34px;
  color: var(--ink);
  background: #fff;
  border: 1px solid var(--line-light);
  box-shadow: var(--shadow);
  text-align: center;
}
.directors-results-grid li::before {
  content: "";
  position: absolute;
  top: -1px;
  bottom: -1px;
  left: -1px;
  width: 8px;
  background: var(--yellow);
  border: 0;
}
.directors-closing {
  margin-top: 42px;
  padding: 0;
  border-top: 0;
  border-bottom: 0;
}

/* «Карта внутренних ориентиров»: белая карточка уже основного контейнера. */
.outcomes-question-panel {
  width: calc(100% - 64px);
  margin: 28px auto 32px;
}

/* Вводный текст шагов начинается на одной верхней линии. */
.steps-intro-grid { align-items: start; }
.steps-intro .steps-intro-grid { grid-template-columns: 1fr; gap: 22px; }
.steps-intro-lead,
.steps-intro-summary { align-self: start; }
.steps-intro-lead .lead-serif,
.steps-intro-summary > p { margin-top: 0; }

@media (max-width: 620px) {
  :root {
    --type-display: 28px;
    --type-section: 28px;
    --type-t1: 15px;
  }
  .homepage .band:not(.hero) .shell h2 { font-size: 28px !important; }
  .hero h1 { font-size: 28px; }
  .bridge-turn {
    width: calc(100% - 16px);
    margin-right: 8px;
    margin-left: 8px;
    padding: 16px 18px;
  }
  .directors-results-grid li {
    min-height: 150px;
    padding: 22px 18px 20px 24px;
    font-size: var(--type-t1);
  }
  .directors-results-grid li::before { width: 6px; }
  .outcomes-question-panel {
    width: calc(100% - 24px);
    margin-right: auto;
    margin-left: auto;
  }
  .footer-grid { grid-template-columns: 1fr; gap: 26px; }
  .footer-links { justify-content: flex-start; }
  .footer-grid > a:last-child { justify-self: start; }
}

/* Согласованная двухцветная акцентная палитра: тёмное золото для текста,
   ссылок, маркеров, линий, пиктограмм и стрелок каруселей. Яркий жёлтый
   сохранён для логотипа, CTA-кнопок, номеров, полос карточек, меню и теней. */
:root { --gold-dark: #806900; }

/* 1–8: текстовые акценты. */
.homepage .eyebrow,
.obstacle-copy-single .lead-serif,
.bridge-turn,
.bridge-turn p,
.bridge-turn strong,
.hero-text-link,
.serial-link,
.footer-account,
.important-notice,
.bridge-purchase-grid .format-card-dark .format-card-price,
.client-results .result-card > span,
.faq-list summary::after,
.expert-accordion summary::after {
  color: var(--gold-dark) !important;
}

/* 15: стрелки каруселей. Жёлтые тени сохранены. */
.signal-controls button,
.carousel-controls button {
  color: var(--white);
  background: var(--gold-dark);
}

/* 17: маркеры перечислений. */
.accent-list li::before,
.bridge-list li::before,
.format-questions li::before,
.homepage .site-list li::before {
  border-top-color: var(--gold-dark);
}
.directors-results-grid li::before { background: var(--yellow); }
.outcomes-copy li::marker { color: var(--gold-dark); }

/* 18: линии, подчёркивания и разделители. */
.obstacle-image::after,
.importance-panel-new::after { background: var(--gold-dark); }
.obstacle-divider,
.importance-note,
.bridge-closing,
.bridge-reassurance { border-top-color: var(--gold-dark); }
.bridge-turn,
.format-note,
.important-notice { border-left-color: var(--gold-dark); }

/* 19: пиктограммы «цель» и «палец вверх». */
.importance-target-icon,
.bridge-card-thumb,
.format-card-thumb { color: var(--gold-dark); }

/* Точечные правки после просмотра двухцветной палитры. */
.expert-profile .expert-section-title { font-weight: 800 !important; }
.hero .hero-text-link[href="#directors"],
.outcomes-secondary-actions .hero-text-link,
.expert .consultation-link,
.free-entry .serial-link { color: var(--yellow) !important; }

@media (min-width: 1081px) {
  .hero {
    min-height: clamp(700px, calc(46.04vw + 186px), 997px);
    padding: 150px 0 80px;
  }
  .hero-photo {
    top: 150px;
    right: auto;
    bottom: auto;
    left: 50%;
    width: min(1666px, calc(100% - 96px));
    aspect-ratio: 1666 / 767;
    transform: translateX(-50%);
  }
  .hero-photo picture { height: 100%; }
  .hero-photo img { object-fit: contain; }
  .hero-caption { max-width: 440px; }
  .hero-caption span { white-space: nowrap; }
}

/* Каналы проекта в блоке «Познавательно». */
.social-links {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  width: 100%;
  margin-top: 38px;
}

.free-entry-channels-intro {
  max-width: 860px;
  margin: 24px 0 0;
  color: var(--white);
  font-size: var(--type-t1);
  line-height: 1.6;
}

.free-entry-inline-link {
  color: inherit;
  border-bottom: 1px solid var(--gold-dark);
  text-decoration: none;
  transition: color .2s ease, border-color .2s ease;
}

.free-entry-inline-link:hover,
.free-entry-inline-link:focus-visible {
  color: var(--yellow);
  border-bottom-color: var(--yellow);
}

.social-link {
  position: relative;
  overflow: hidden;
  display: inline-flex;
  min-width: 0;
  min-height: 58px;
  align-items: center;
  justify-content: center;
  gap: 11px;
  padding: 14px 16px;
  color: var(--white);
  background: var(--black);
  border: 1px solid rgba(128, 105, 0, .82);
  box-shadow: 7px 7px 0 rgba(128, 105, 0, .17);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: color .2s ease, background-color .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.social-link-icon {
  width: 22px;
  height: 22px;
  flex: 0 0 22px;
  color: var(--social-brand, var(--gold-dark));
  fill: currentColor;
}

@keyframes channel-shine {
  0%, 8% { transform: translateX(-220%) skewX(-22deg); opacity: 0; }
  12% { opacity: 1; }
  40% { transform: translateX(420%) skewX(-22deg); opacity: 0; }
  100% { transform: translateX(420%) skewX(-22deg); opacity: 0; }
}
@media (prefers-reduced-motion: no-preference) {
  .social-link::after {
    content: "";
    position: absolute;
    pointer-events: none;
    inset: -35% auto -35% 0;
    width: 40%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,.08) 20%, rgba(255,255,255,.38) 50%, rgba(255,255,255,.08) 80%, transparent);
    opacity: 0;
    animation: channel-shine 7s ease-in-out infinite;
    animation-play-state: paused;
  }
  .social-links.shine-visible .social-link::after { animation-play-state: running; }
  .social-link:nth-child(2)::after { animation-delay: .35s; }
  .social-link:nth-child(3)::after { animation-delay: .7s; }
  .social-link:nth-child(4)::after { animation-delay: 1.05s; }
  .social-link:nth-child(5)::after { animation-delay: 1.4s; }
}

.social-link--telegram { --social-brand: #229ed9; }
.social-link--max { --social-brand: #471aff; }
.social-link--instagram { --social-brand: #e4405f; }
.social-link--youtube { --social-brand: #ff0000; }
.social-link--rutube { --social-brand: #ed143b; }

.social-link-icon-stroke {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.social-link-icon-stroke .social-link-icon-fill {
  fill: currentColor;
  stroke: none;
}

.social-link:hover,
.social-link:focus-visible {
  color: var(--black);
  background: var(--yellow);
  border-color: var(--yellow);
  box-shadow: 9px 9px 0 rgba(128, 105, 0, .3);
  transform: translate(-2px, -2px);
}

.social-link sup {
  position: relative;
  top: -.15em;
  margin-left: 2px;
  font-size: .72em;
  line-height: 0;
}

.social-disclaimer {
  width: 100%;
  margin: 20px 0 0;
  color: rgba(255, 255, 255, .66);
  font-size: 5.4px;
  line-height: 1.5;
}

.footer-copyright {
  grid-column: 1 / -1;
  padding-top: 24px;
  color: rgba(255, 255, 255, .62);
  border-top: 1px solid var(--line-dark);
  font-size: 11px;
  line-height: 1.55;
}

.social-link:hover .social-link-icon,
.social-link:focus-visible .social-link-icon {
  color: var(--social-brand, var(--black));
}

.social-link:focus-visible {
  outline: 2px solid var(--white);
  outline-offset: 4px;
}

@media (min-width: 621px) and (max-width: 920px) {
  .social-links { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 620px) {
  .social-links {
    grid-template-columns: minmax(0, 1fr);
    grid-auto-flow: row;
    grid-auto-columns: auto;
    gap: 12px;
    margin-top: 30px;
    padding: 0;
    overflow: visible;
  }

  .social-link {
    width: 100%;
    min-height: 54px;
  }
}
/* Keep the homepage bands alternating after the results section. */
.meetings-teaser{color:var(--ink);background:var(--white);padding:86px 0 94px}
.meetings-teaser .eyebrow{margin:0 0 10px;color:#806900}
.meetings-heading-link{display:inline-block}
.meetings-teaser .meetings-heading-link h2{margin:0;color:var(--ink);font:clamp(42px,6vw,72px)/1 Georgia,serif;letter-spacing:-.04em}
.meetings-teaser .meetings-heading-link p{margin:12px 0 0;color:#806900;font-size:20px}
.meetings-teaser .meetings-heading-link:hover h2,.meetings-teaser .meetings-heading-link:focus-visible h2{color:#806900}
.meetings-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(272px,34.4vw,408px);gap:18px;margin-top:42px;padding:4px 2px 24px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-color:var(--yellow) #d8d7d0;cursor:grab}
.meetings-carousel:focus-visible{outline:2px solid #806900;outline-offset:5px}
.meetings-carousel.is-dragging{cursor:grabbing;scroll-snap-type:none;user-select:none}
.meeting-poster{display:grid;grid-template-columns:64px minmax(0,1fr);min-height:285px;color:var(--ink);background:var(--paper);border:1px solid var(--line-light);box-shadow:0 14px 36px rgba(12,12,9,.08);scroll-snap-align:start;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.meeting-poster:hover,.meeting-poster:focus-visible{transform:translateY(-4px);box-shadow:0 20px 45px rgba(12,12,9,.14)}
.meeting-poster-date{display:flex;align-items:center;justify-content:center;padding:18px 10px;color:var(--black);background:var(--yellow);font-size:20px;font-weight:800;letter-spacing:.02em;white-space:nowrap;writing-mode:vertical-rl;transform:rotate(180deg)}
.meeting-poster-body{display:flex;min-width:0;flex-direction:column;justify-content:space-between;gap:22px;padding:30px 30px 26px}
.meeting-poster-title{display:block;font:400 clamp(22px,2.1vw,30px)/1.12 Arial,Helvetica,sans-serif;letter-spacing:-.035em}
.meeting-poster-bottom{display:flex;align-items:flex-start;gap:12px;padding-top:19px;border-top:1px solid var(--line-light)}
.meeting-poster-clock{display:block;width:34px;height:34px;flex:0 0 34px;color:var(--yellow)}
.meeting-poster-clock svg{display:block;width:100%;height:100%}
.meeting-poster-time{display:block;font:clamp(17px,1.8vw,23px)/1.2 Arial,Helvetica,sans-serif}
.meeting-poster-bottom small{display:block;margin-top:7px;color:var(--muted);font-size:13px}
.meetings-empty{grid-column:1;padding:28px;color:var(--muted);background:var(--paper)}
.meeting-controls{justify-content:center}
.meeting-controls button:disabled{cursor:default;opacity:.45}

.expert{color:var(--white);background:var(--black)}
.expert h2,.expert .expert-section-title,.expert-profile > p:not(.lead-serif),.expert-details > p,.expert-profile .lead-serif,.expert-accordion summary,.expert-accordion p,.expert-wide-copy p{color:var(--white)}
.expert .expert-name{color:var(--yellow)}
.expert-profile,.expert-details,.expert-photo,.expert-accordion,.expert-details .expert-accordion,.expert-details .expert-accordion:last-child{border-color:var(--line-dark)}
.expert .consultation-link{color:var(--yellow)}
.free-entry{color:var(--ink);background:var(--white)}
.free-entry h2,.free-entry-copy p,.free-entry-copy li,.free-entry-grid > div:last-child > p:not(.lead-serif),.free-entry-channels-intro{color:var(--ink)}
.free-entry .eyebrow{color:#806900}
.free-entry .serial-link{color:#806900!important}
.social-disclaimer{color:var(--muted)}
.faq{color:var(--white);background:var(--black)}
.faq h2,.faq-list summary,.faq-list p,.faq-answer h3,.faq-answer li{color:var(--white)}
.faq-list{border-top-color:var(--line-dark)}
.faq-list details{border-bottom-color:var(--line-dark)}

@media(max-width:800px){.meetings-carousel{grid-auto-columns:58vw}}
@media(max-width:560px){.meetings-teaser{padding:64px 0 70px}.meetings-carousel{grid-auto-columns:78vw;gap:12px;margin-top:30px}.meeting-poster{grid-template-columns:48px minmax(0,1fr);min-height:250px}.meeting-poster-date{font-size:16px}.meeting-poster-body{padding:22px 18px}.meeting-poster-title{font-size:21px}.meeting-poster-time{font-size:17px}.meeting-poster-clock{width:28px;height:28px;flex-basis:28px}}
@media(prefers-reduced-motion:reduce){.meeting-poster{transition:none}}
