:root { --wine: #971f31; --wine-deep: #6f101f; --wine-light: #b84550; --rose: #e5b8bd; --gold: #ecd080; --gold-deep: #c89f42; --cream: #f3f1ef; --paper: #fbfaf8; --ink: #191919; --muted: #6b6866; --line: #1919191f; --radius-lg: 32px; --radius-md: 22px; --shadow: 0 26px 80px #300d132e; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body { background: var(--cream); color: var(--ink); font-family: var(--font-geist-sans,Arial), Arial, sans-serif; margin: 0px; font-size: 17px; overflow-x: hidden; }
main { padding-bottom: 92px; }
body, a, button, summary { -webkit-font-smoothing: antialiased; }
img { max-width: 100%; display: block; }
a { color: inherit; }
h1, h2, h3, p { margin-top: 0px; }
h2 { letter-spacing: -0.055em; margin-bottom: 0px; font-size: clamp(44px, 6vw, 78px); line-height: 0.98; }
h3 { letter-spacing: -0.025em; }
:focus-visible { outline: 3px solid var(--gold); outline-offset: 4px; }
.section-shell { width: min(1180px, 100% - 48px); margin: 0px auto; }
.light-section { background: radial-gradient(circle at 18% 12%, rgba(151, 31, 49, 0.035), rgba(0, 0, 0, 0) 24%), linear-gradient(rgb(246, 245, 243), rgb(238, 236, 234)); padding: 112px 0px; }
.dark-section { color: rgb(255, 255, 255); background: rgb(23, 23, 23); }
.eyebrow { letter-spacing: 0.04em; text-transform: uppercase; border: 1px solid; border-radius: 999px; align-items: center; width: fit-content; padding: 8px 14px; font-size: 12px; font-weight: 750; line-height: 1; display: inline-flex; }
.wine-text { color: var(--wine); }
.gold-text { color: var(--gold); }
.section-heading { margin-bottom: 54px; }
.section-heading .eyebrow { margin-bottom: 24px; }
.section-heading > p { color: var(--muted); max-width: 670px; margin: 22px auto 0px; line-height: 1.62; }
.centered-heading { text-align: center; }
.centered-heading .eyebrow { margin-left: auto; margin-right: auto; }
.light-heading { color: rgb(255, 255, 255); }
.light-heading h2 { max-width: 940px; }
.hero { color: rgb(255, 255, 255); background: rgb(151, 31, 49); min-height: 842px; position: relative; overflow: hidden; }
.site-header { z-index: 100; backdrop-filter: blur(18px); background: rgba(91, 12, 28, 0.76); border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 22px; justify-content: space-between; align-items: center; gap: 30px; width: min(1280px, 100% - 48px); min-height: 64px; padding: 9px 14px; display: flex; position: fixed; top: 12px; left: 50%; transform: translate(-50%); box-shadow: rgba(41, 5, 13, 0.22) 0px 14px 36px; }
.brand-lockup { color: rgb(255, 255, 255); letter-spacing: 0.08em; align-items: center; gap: 14px; font-size: 11px; font-weight: 800; text-decoration: none; display: flex; }
.brand-lockup i { background: rgba(255, 255, 255, 0.65); width: 1px; height: 24px; }
.desktop-nav { backdrop-filter: blur(10px); background: rgba(83, 9, 23, 0.2); border: 1px solid rgba(255, 255, 255, 0.28); border-radius: 999px; align-items: center; gap: 26px; padding: 10px 16px; display: flex; }
.desktop-nav a { color: rgba(255, 255, 255, 0.9); font-size: 13px; font-weight: 600; text-decoration: none; }
.desktop-nav a:hover { color: var(--gold); }
.header-actions { align-items: center; gap: 10px; display: flex; }
.header-cta { color: rgb(43, 37, 26); background: var(--gold); white-space: nowrap; letter-spacing: 0.03em; border-radius: 999px; justify-content: center; align-items: center; min-height: 44px; padding: 0px 20px; font-size: 12px; font-weight: 900; text-decoration: none; transition: transform 0.2s, background 0.2s; display: inline-flex; }
.header-cta:hover { background: rgb(255, 224, 148); transform: translateY(-2px); }
.mobile-menu { display: none; position: relative; }
.mobile-menu summary { cursor: pointer; border: 1px solid rgba(255, 255, 255, 0.45); border-radius: 50%; place-content: center; gap: 4px; width: 46px; height: 46px; list-style: none; display: grid; }
.mobile-menu summary::-webkit-details-marker { display: none; }
.mobile-menu summary span { background: rgb(255, 255, 255); width: 18px; height: 1px; }
.mobile-menu nav { min-width: 210px; color: var(--ink); box-shadow: var(--shadow); background: rgb(255, 255, 255); border-radius: 18px; padding: 16px; display: grid; position: absolute; top: 54px; right: 0px; }
.mobile-menu nav a { padding: 12px; font-weight: 700; text-decoration: none; }
.hero-inner { z-index: 2; width: min(1280px, 100% - 48px); min-height: 760px; margin: 0px auto; padding-top: 82px; position: relative; }
#program, #platform, #tariffs { scroll-margin-top: 110px; }
.hero-copy { z-index: 4; width: min(63%, 790px); padding: 48px 10px 66px 0px; position: relative; }
.hero-meta { align-items: center; gap: 24px; margin-bottom: 56px; font-size: 15px; line-height: 1.12; display: flex; }
.hero-meta span { max-width: 135px; }
.hero-meta b { opacity: 0.72; text-transform: lowercase; font-weight: 400; display: block; }
.hero-meta i { background: rgba(255, 255, 255, 0.7); width: 1px; height: 36px; }
.course-name { border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 999px; width: fit-content; margin-bottom: 18px; padding: 7px 13px; font-size: 13px; font-weight: 700; }
.hero h1 { letter-spacing: -0.06em; text-wrap: balance; max-width: 790px; margin-bottom: 26px; font-size: clamp(46px, 5.3vw, 76px); font-weight: 740; line-height: 0.96; }
.hero h1 em { color: var(--gold); font-style: normal; }
.hero-price { white-space: nowrap; }
.hero-note { color: rgba(255, 255, 255, 0.83); max-width: 640px; margin-bottom: 30px; font-size: 18px; line-height: 1.55; }
.gold-button, .outline-button, .tariff-button { border-radius: 15px; justify-content: center; align-items: center; gap: 16px; min-height: 68px; padding: 0px 30px; font-weight: 800; text-decoration: none; transition: transform 0.22s, box-shadow 0.22s, background 0.22s; display: inline-flex; }
.gold-button { color: rgb(43, 37, 26); background: linear-gradient(105deg, rgb(211, 167, 86), rgb(255, 219, 130) 24%, rgb(244, 235, 188) 58%, rgb(212, 164, 81)); box-shadow: rgba(83, 36, 8, 0.35) 0px 14px 42px, rgba(255, 255, 255, 0.75) 0px 1px inset; }
.gold-button:hover, .outline-button:hover, .tariff-button:hover { transform: translateY(-3px); }
.gold-button:hover { box-shadow: rgba(83, 36, 8, 0.45) 0px 19px 48px, rgba(255, 255, 255, 0.75) 0px 1px inset; }
.gold-button span, .outline-button span, .tariff-button span { font-size: 24px; line-height: 1; }
.section-cta-row { justify-content: center; margin-top: 38px; display: flex; }
.section-cta-on-wine { margin-top: 34px; }
.tariffs-cta-row { margin: -14px 0px 36px; }
.hero-chips { flex-wrap: wrap; gap: 8px; max-width: 650px; margin-top: 38px; display: flex; }
.hero-chips span { color: rgba(255, 255, 255, 0.88); background: rgba(115, 14, 33, 0.34); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 999px; padding: 10px 18px; font-size: 13px; }
.hero-visual { z-index: 1; width: min(56vw, 780px); min-width: 0px; position: absolute; top: 0px; bottom: 0px; right: calc(50% - 50vw); }
.hero-portrait-halo { aspect-ratio: 1 / 1; filter: blur(62px); pointer-events: none; background: rgba(232, 190, 174, 0.34); border-radius: 50%; width: 68%; position: absolute; top: 16%; right: 4%; }
.hero-cutout { object-fit: contain; object-position: right bottom; transform-origin: 100% 100%; filter: drop-shadow(rgba(62, 5, 17, 0.28) -24px 28px 42px); width: 100%; height: 100%; animation: 9s ease-in-out 0s infinite normal none running hero-portrait-breathe; position: absolute; inset: 0px; }
.hero-author-label { z-index: 3; backdrop-filter: blur(14px); background: rgba(84, 10, 25, 0.45); border: 1px solid rgba(255, 255, 255, 0.35); border-radius: 999px; min-width: 174px; padding: 13px 18px; position: absolute; bottom: 30px; right: clamp(22px, 5vw, 88px); box-shadow: rgba(56, 7, 17, 0.18) 0px 12px 30px; }
.hero-author-label b, .hero-author-label span { display: block; }
.hero-author-label b { font-size: 13px; }
.hero-author-label span { color: rgba(255, 255, 255, 0.64); text-transform: uppercase; letter-spacing: 0.08em; margin-top: 2px; font-size: 10px; }
@keyframes hero-portrait-breathe { 
  0%, 100% { transform: translate(0px, 0px) scale(1.035); }
  50% { transform: translate(-8px, -5px) scale(1.055); }
}
.opportunities { padding: 88px 0px 30px; }
.wine-panel { border-radius: var(--radius-lg); background: radial-gradient(circle at 80% 0px, rgba(255, 255, 255, 0.13), rgba(0, 0, 0, 0) 28%), linear-gradient(150deg, rgb(155, 35, 53), rgb(124, 20, 37) 65%, rgb(95, 13, 27)); padding: 70px; box-shadow: rgba(0, 0, 0, 0.28) 0px 34px 100px; }
.opportunity-grid { grid-template-columns: repeat(3, 1fr); gap: 14px; display: grid; }
.opportunity-card { min-height: 280px; color: var(--ink); background: rgb(248, 247, 244); border-radius: 20px; padding: 24px; position: relative; }
.opportunity-card:nth-child(2), .opportunity-card:nth-child(5) { background: rgb(234, 213, 214); }
.opportunity-card .card-number { color: rgb(255, 255, 255); background: var(--wine); border-radius: 50%; place-items: center; width: 42px; height: 42px; margin-bottom: 38px; font-size: 12px; font-weight: 800; display: grid; }
.opportunity-card h3 { max-width: 290px; margin-bottom: 12px; font-size: 24px; line-height: 1.02; }
.opportunity-card p { color: rgb(89, 84, 82); margin-bottom: 0px; font-size: 14px; line-height: 1.52; }
.opportunity-card small { color: var(--wine); text-transform: uppercase; font-size: 11px; font-weight: 800; position: absolute; bottom: 22px; left: 24px; }
.legal-note { color: rgb(111, 107, 104); text-align: center; max-width: 920px; margin: 32px auto 0px; font-size: 12px; line-height: 1.55; }
.light-note { color: rgba(255, 255, 255, 0.48); }
.audience-grid { grid-template-columns: 1fr 1fr; gap: 18px; display: grid; }
.audience-grid article { border-radius: var(--radius-lg); background: radial-gradient(circle at 80% 15%, rgba(151, 31, 49, 0.17), rgba(0, 0, 0, 0) 28%), rgb(255, 255, 255); flex-direction: column; justify-content: flex-end; min-height: 410px; padding: 48px; display: flex; box-shadow: rgba(31, 22, 23, 0.07) 0px 16px 48px; }
.audience-grid .wine-card { color: rgb(255, 255, 255); background: radial-gradient(circle at 18% 15%, #ffe0ac2e, transparent 26%), linear-gradient(145deg, var(--wine-light), var(--wine-deep)); }
.audience-mark { width: fit-content; color: var(--wine); background: rgb(240, 220, 222); border-radius: 999px; margin-bottom: auto; padding: 8px 14px; font-size: 12px; font-weight: 800; }
.wine-card .audience-mark { color: rgb(46, 38, 27); background: var(--gold); }
.audience-grid h3 { max-width: 480px; margin-bottom: 18px; font-size: clamp(30px, 4vw, 48px); line-height: 1; }
.audience-grid p { color: rgb(97, 92, 89); margin: 0px; line-height: 1.58; }
.wine-card p { color: rgba(255, 255, 255, 0.78); }
.no-code-strip { color: rgb(255, 255, 255); background: var(--ink); border-radius: 22px; grid-template-columns: 1.2fr repeat(3, 1fr); align-items: center; gap: 20px; margin-top: 18px; padding: 28px 34px; display: grid; }
.no-code-strip strong { font-size: 20px; }
.no-code-strip span { color: rgba(255, 255, 255, 0.64); border-left: 1px solid rgba(255, 255, 255, 0.18); padding-left: 20px; font-size: 13px; line-height: 1.4; }
.skills-section { color: rgb(255, 255, 255); background: radial-gradient(circle at 70% 20%, rgba(255, 218, 130, 0.13), rgba(0, 0, 0, 0) 28%), linear-gradient(140deg, rgb(143, 30, 47), rgb(103, 16, 30)); padding: 112px 0px; }
.split-heading { grid-template-columns: 1.4fr 0.6fr; align-items: end; gap: 20px; display: grid; }
.split-heading .eyebrow { grid-column: 1 / -1; }
.split-heading p { color: rgba(255, 255, 255, 0.68); margin: 0px; line-height: 1.55; }
.skills-list { border-top: 1px solid rgba(255, 255, 255, 0.25); }
.skill-row { border-bottom: 1px solid rgba(255, 255, 255, 0.2); grid-template-columns: 52px 84px 1fr 190px; align-items: center; gap: 24px; min-height: 156px; padding: 24px 0px; display: grid; }
.skill-number { color: var(--gold); align-self: start; font-size: 12px; font-weight: 800; }
.skill-mark { width: 72px; height: 72px; color: var(--wine); background: rgb(255, 255, 255); border-radius: 20px; place-items: center; font-size: 14px; font-weight: 900; display: grid; box-shadow: rgba(255, 255, 255, 0.5) 0px 0px 0px 1px inset; }
.skill-row h3 { margin-bottom: 8px; font-size: 32px; }
.skill-row p { color: rgba(255, 255, 255, 0.65); max-width: 650px; margin: 0px; font-size: 14px; line-height: 1.5; }
.skill-outcome { justify-items: end; gap: 12px; display: grid; }
.skill-outcome strong { color: var(--gold); text-align: right; font-size: 14px; }
.skill-market-price { text-align: right; background: rgba(255, 219, 130, 0.08); border: 1px solid rgba(255, 219, 130, 0.34); border-radius: 12px; gap: 4px; width: 100%; padding: 11px 13px; display: grid; }
.skill-market-price small { color: rgba(255, 255, 255, 0.58); letter-spacing: 0.06em; text-transform: uppercase; font-size: 9px; font-weight: 700; }
.skill-market-price b { color: var(--gold); font-size: 12px; line-height: 1.3; }
.results-board { grid-template-columns: repeat(4, 1fr); gap: 14px; display: grid; }
.results-board article { background: rgb(255, 255, 255); border-radius: 24px; flex-direction: column; min-height: 310px; padding: 24px; display: flex; box-shadow: rgba(45, 32, 33, 0.08) 0px 14px 40px; }
.results-board article > span { color: rgb(255, 255, 255); background: var(--wine); border-radius: 50%; place-items: center; width: 36px; height: 36px; font-size: 11px; font-weight: 800; display: grid; }
.results-board h3 { min-height: 54px; margin: 24px 0px 18px; font-size: 20px; line-height: 1.12; }
.mini-scene { aspect-ratio: 840 / 476; background: rgb(43, 32, 34); border-radius: 16px; min-height: 130px; margin-top: auto; position: relative; overflow: hidden; }
.mini-scene img { object-fit: cover; transition: transform 0.45s; }
.results-board article:hover .mini-scene img { transform: scale(1.035); }
.portfolio-banner { color: rgb(255, 255, 255); background: var(--ink); border-radius: 26px; grid-template-columns: 0.7fr 1.3fr; align-items: end; gap: 50px; margin-top: 18px; padding: 42px 46px; display: grid; }
.portfolio-banner .eyebrow { color: var(--gold); }
.portfolio-banner h3 { margin: 18px 0px 0px; font-size: 36px; line-height: 1; }
.portfolio-banner p { color: rgba(255, 255, 255, 0.62); margin: 0px; line-height: 1.58; }
.platform-section { background: radial-gradient(circle at 75% 20%, rgba(151, 31, 49, 0.28), rgba(0, 0, 0, 0) 30%), rgb(21, 21, 21); padding: 112px 0px; }
.platform-shell { grid-template-columns: 0.85fr 1.15fr; grid-template-areas: "intro preview" "steps preview" "cta preview"; align-items: center; gap: 72px; display: grid; }
.platform-intro { grid-area: intro; }
.platform-intro h2 { max-width: 520px; margin: 22px 0px; }
.platform-lead { color: rgba(255, 255, 255, 0.64); max-width: 530px; line-height: 1.58; }
.platform-steps { border-top: 1px solid rgba(255, 255, 255, 0.18); grid-area: steps; margin: 34px 0px; }
.platform-steps article { border-bottom: 1px solid rgba(255, 255, 255, 0.18); grid-template-columns: 38px 1fr; gap: 16px; padding: 18px 0px; display: grid; }
.platform-steps article > span { color: var(--gold); font-size: 12px; font-weight: 800; }
.platform-steps h3 { margin-bottom: 5px; font-size: 18px; }
.platform-steps p { color: rgba(255, 255, 255, 0.5); margin: 0px; font-size: 13px; line-height: 1.4; }
.outline-button { color: rgb(255, 255, 255); border: 1px solid rgba(255, 255, 255, 0.45); min-height: 58px; font-size: 14px; }
.outline-button:hover { background: rgba(255, 255, 255, 0.08); }
.platform-cta { grid-area: cta; justify-self: start; }
.platform-preview { background: rgb(255, 255, 255); border-radius: 28px; grid-area: preview; padding: 12px; position: relative; transform: rotate(1.2deg); box-shadow: rgba(0, 0, 0, 0.45) 0px 34px 90px; }
.browser-bar { color: rgb(129, 123, 119); align-items: center; gap: 7px; height: 44px; padding: 0px 14px; font-size: 10px; display: flex; }
.browser-bar i { background: rgb(217, 212, 208); border-radius: 50%; width: 8px; height: 8px; }
.browser-bar span { margin-left: auto; }
.platform-preview > img { object-fit: cover; object-position: left center; border-radius: 18px; width: 100%; height: 560px; }
.platform-badge { color: rgb(255, 255, 255); background: var(--wine); max-width: 200px; box-shadow: var(--shadow); border-radius: 18px; padding: 18px 20px; position: absolute; bottom: 40px; right: -22px; }
.platform-badge b, .platform-badge span { display: block; }
.platform-badge b { margin-bottom: 4px; font-size: 14px; }
.platform-badge span { color: rgba(255, 255, 255, 0.65); font-size: 11px; line-height: 1.4; }
.program-heading p { max-width: 760px; }
.module-list { gap: 18px; display: grid; }
.module-card { background: rgb(255, 255, 255); border-radius: 28px; grid-template-columns: 0.9fr 0.8fr 0.9fr; gap: 20px; min-height: 460px; padding: 24px; display: grid; box-shadow: rgba(48, 32, 33, 0.08) 0px 12px 45px; }
.module-copy, .module-result { padding: 24px; }
.module-pill { color: rgb(255, 255, 255); background: var(--wine); border-radius: 999px; padding: 8px 14px; font-size: 12px; font-weight: 800; display: inline-flex; }
.module-copy h3 { margin: 28px 0px 22px; font-size: 34px; line-height: 1; }
.module-copy ul { margin: 0px; padding: 0px; list-style: none; }
.module-copy li { color: rgb(89, 84, 82); padding: 6px 0px 6px 18px; font-size: 14px; line-height: 1.4; position: relative; }
.module-copy li::before { content: "•"; color: var(--wine); position: absolute; left: 0px; }
.module-visual { color: rgb(255, 255, 255); background: rgb(101, 17, 32); border-radius: 22px; flex-direction: column; justify-content: space-between; min-height: 100%; display: flex; position: relative; overflow: hidden; }
.module-gold .module-visual { color: rgb(255, 255, 255); background: rgb(154, 118, 47); }
.module-ink .module-visual { background: linear-gradient(145deg, rgb(56, 56, 56), rgb(17, 17, 17)); }
.module-visual > span { z-index: 2; color: rgb(255, 255, 255); letter-spacing: -0.08em; text-shadow: rgba(0, 0, 0, 0.42) 0px 3px 22px; align-self: flex-start; margin: 22px; font-size: 72px; font-weight: 800; line-height: 0.8; position: relative; }
.module-visual > img { object-fit: cover; }
.module-result { color: rgb(255, 255, 255); background: var(--wine); border-radius: 22px; flex-direction: column; display: flex; }
.module-gold .module-result { background: rgb(155, 35, 53); }
.module-ink .module-result { background: var(--ink); }
.module-result > strong { font-size: 17px; }
.module-result > p { color: rgba(255, 255, 255, 0.78); margin: 22px 0px; font-size: 23px; line-height: 1.32; }
.module-project-tags { flex-wrap: wrap; gap: 7px; margin-top: auto; display: flex; }
.module-project-tags span { color: rgba(255, 255, 255, 0.82); background: rgba(255, 255, 255, 0.1); border-radius: 999px; padding: 8px 10px; font-size: 10px; }
.module-market-price { background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 16px; gap: 6px; margin: 2px 0px 22px; padding: 16px 18px; display: grid; }
.module-market-price span { color: rgba(255, 255, 255, 0.62); letter-spacing: 0.08em; text-transform: uppercase; font-size: 11px; font-weight: 700; }
.module-market-price b { color: var(--gold); font-size: 19px; line-height: 1.2; }
.market-price-note { color: rgb(129, 121, 120); text-align: center; max-width: 760px; margin: 22px auto 0px; font-size: 12px; line-height: 1.5; }
.career-section { color: rgb(255, 255, 255); background: radial-gradient(circle at 85% 15%, rgba(255, 220, 138, 0.22), rgba(0, 0, 0, 0) 24%), linear-gradient(135deg, rgb(158, 38, 56), rgb(111, 16, 31)); padding: 110px 0px; }
.career-shell { grid-template-columns: minmax(0px, 1.08fr) minmax(0px, 0.92fr); gap: 64px; display: grid; }
.career-title-block { min-width: 0px; }
.career-title-block h2 { max-width: 600px; margin: 24px 0px; font-size: clamp(42px, 5vw, 72px); }
.career-title-block p { color: rgba(255, 255, 255, 0.65); max-width: 480px; line-height: 1.58; }
.career-path { border-top: 1px solid rgba(255, 255, 255, 0.25); }
.career-path article { border-bottom: 1px solid rgba(255, 255, 255, 0.22); grid-template-columns: 40px 180px 1fr; gap: 22px; padding: 24px 0px; display: grid; }
.career-path article > span { color: var(--gold); font-size: 12px; font-weight: 800; }
.career-path h3 { margin: 0px; font-size: 22px; }
.career-path p { color: rgba(255, 255, 255, 0.58); margin: 0px; font-size: 14px; line-height: 1.45; }
.cases-section { padding: 112px 0px; }
.cases-heading { grid-template-columns: 1fr auto; align-items: end; gap: 24px; display: grid; }
.cases-heading .eyebrow { grid-column: 1 / -1; }
.cases-heading a { color: var(--gold); font-size: 14px; font-weight: 800; text-decoration: none; }
.cases-grid { grid-template-columns: 1fr 1fr; gap: 18px; display: grid; }
.case-card { color: var(--ink); background: rgb(247, 245, 242); border-radius: 26px; overflow: hidden; }
.case-image { background: rgb(51, 40, 42); height: 340px; display: block; position: relative; overflow: hidden; }
.case-image img { object-fit: cover; width: 100%; height: 100%; transition: transform 0.45s; }
.case-image:hover img { transform: scale(1.035); }
.case-image > span { width: 52px; height: 52px; color: var(--wine); background: rgb(255, 255, 255); border-radius: 50%; place-items: center; font-size: 24px; display: grid; position: absolute; top: 18px; right: 18px; box-shadow: rgba(0, 0, 0, 0.2) 0px 12px 28px; }
.case-copy { padding: 28px 30px 34px; }
.case-copy > div { justify-content: space-between; align-items: center; gap: 12px; display: flex; }
.case-copy > div span { color: var(--wine); text-transform: uppercase; background: rgb(237, 217, 220); border-radius: 999px; padding: 7px 11px; font-size: 10px; font-weight: 800; }
.case-copy small { color: rgb(132, 125, 121); font-size: 11px; }
.case-copy h3 { margin: 22px 0px 10px; font-size: 27px; line-height: 1.04; }
.case-copy p { color: rgb(107, 101, 98); margin: 0px; font-size: 14px; line-height: 1.5; }
.student-results-heading > p { max-width: 760px; }
.student-story-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 20px; display: grid; }
.student-story-card { background: rgb(255, 255, 255); border: 1px solid rgba(111, 16, 31, 0.09); border-radius: 28px; grid-template-columns: minmax(180px, 42%) minmax(0px, 1fr); min-width: 0px; display: grid; overflow: hidden; box-shadow: rgba(61, 32, 36, 0.09) 0px 18px 56px; }
.student-story-card:last-child:nth-child(2n+1) { grid-column: 1 / -1; grid-template-columns: minmax(260px, 34%) minmax(0px, 1fr); }
.student-story-photo { background: linear-gradient(145deg, rgb(60, 37, 42), rgb(126, 32, 48)); min-height: 410px; position: relative; overflow: hidden; }
.student-story-photo img { object-fit: cover; object-position: center top; transition: transform 0.5s; }
.student-story-card:hover .student-story-photo img { transform: scale(1.025); }
.student-story-photo > span { z-index: 2; color: rgb(255, 255, 255); backdrop-filter: blur(9px); letter-spacing: 0.08em; background: rgba(22, 12, 14, 0.62); border: 1px solid rgba(255, 255, 255, 0.4); border-radius: 999px; padding: 7px 11px; font-size: 10px; font-weight: 800; position: absolute; bottom: 16px; left: 16px; }
.student-story-copy { align-self: center; min-width: 0px; padding: 30px 28px 32px; }
.student-story-person { justify-content: space-between; align-items: baseline; gap: 14px; margin-bottom: 28px; display: flex; }
.student-story-person h3 { margin: 0px; font-size: 24px; }
.student-story-person span { color: var(--wine); overflow-wrap: anywhere; font-size: 11px; font-weight: 750; }
.student-story-copy > strong { color: var(--wine-deep); letter-spacing: -0.04em; margin-bottom: 18px; font-size: clamp(22px, 2vw, 30px); line-height: 1.04; display: block; }
.student-story-copy > p { color: rgb(102, 96, 93); margin-bottom: 12px; font-size: 13px; line-height: 1.55; }
.student-story-copy > p:last-child { margin-bottom: 0px; }
.student-results-note { max-width: 950px; margin-top: 36px; }
.reviews-section { background: radial-gradient(circle at 80% 10%, rgba(236, 208, 128, 0.12), rgba(0, 0, 0, 0) 24%), radial-gradient(circle at 10% 40%, rgba(177, 57, 73, 0.17), rgba(0, 0, 0, 0) 32%), rgb(23, 23, 23); padding: 112px 0px; }
.reviews-heading { grid-template-columns: 1fr minmax(260px, 420px); align-items: end; gap: 28px; display: grid; }
.reviews-heading .eyebrow { grid-column: 1 / -1; }
.reviews-heading p { color: rgba(255, 255, 255, 0.62); margin: 0px; font-size: 15px; line-height: 1.55; }
.reviews-wall { columns: 4; column-gap: 16px; }
.review-card { break-inside: avoid; background: rgb(247, 244, 239); border-radius: 20px; width: 100%; margin: 0px 0px 16px; padding: 9px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.24) 0px 16px 42px; }
.review-card img { border-radius: 13px; width: 100%; height: auto; }
.reviews-more { margin-top: 34px; }
.reviews-more > summary { width: min(100%, 430px); min-height: 64px; color: var(--gold); cursor: pointer; text-align: center; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(236, 208, 128, 0.7); border-radius: 999px; justify-content: center; align-items: center; gap: 16px; margin: 0px auto; padding: 16px 22px; font-size: 14px; font-weight: 800; list-style: none; display: flex; }
.reviews-more > summary::-webkit-details-marker { display: none; }
.reviews-more > summary span { font-size: 18px; transition: transform 0.25s; }
.reviews-more[open] > summary span { transform: rotate(180deg); }
.reviews-wall-rest { margin-top: 34px; }
.tariff-grid { grid-template-columns: repeat(3, 1fr); align-items: stretch; gap: 16px; display: grid; }
.tariff-card { border-radius: 26px; flex-direction: column; min-width: 0px; min-height: 720px; padding: 34px 28px 28px; display: flex; position: relative; box-shadow: rgba(33, 22, 23, 0.1) 0px 16px 52px; }
.tariff-light { background: rgb(255, 255, 255); }
.tariff-wine { color: rgb(255, 255, 255); background: linear-gradient(155deg, rgb(170, 53, 68), rgb(124, 20, 38)); }
.tariff-dark { color: rgb(255, 255, 255); background: rgb(25, 25, 25); }
.popular-badge { color: rgb(49, 39, 26); background: var(--gold); text-transform: uppercase; border-radius: 999px; width: max-content; padding: 8px 14px; font-size: 10px; font-weight: 900; position: absolute; top: -15px; left: 50%; transform: translate(-50%); box-shadow: rgba(92, 58, 7, 0.2) 0px 8px 22px; }
.tariff-eyebrow { min-height: 36px; color: var(--wine); text-transform: uppercase; margin-bottom: 8px; font-size: 12px; font-weight: 750; }
.tariff-wine .tariff-eyebrow, .tariff-dark .tariff-eyebrow { color: var(--gold); }
.tariff-card h3 { min-height: 78px; color: var(--wine); margin-bottom: 26px; font-size: 36px; line-height: 1; }
.tariff-wine h3, .tariff-dark h3 { color: rgb(255, 255, 255); }
.tariff-list, .bonus-list { border-top: 1px solid var(--line); padding-top: 24px; }
.tariff-wine .tariff-list, .tariff-wine .bonus-list, .tariff-dark .tariff-list, .tariff-dark .bonus-list { border-color: rgba(255, 255, 255, 0.18); }
.tariff-list strong, .bonus-list strong { margin-bottom: 14px; font-size: 13px; display: block; }
.tariff-list p { color: rgb(93, 88, 85); grid-template-columns: 18px 1fr; gap: 8px; margin-bottom: 12px; font-size: 13px; line-height: 1.42; display: grid; }
.tariff-wine .tariff-list p, .tariff-dark .tariff-list p { color: rgba(255, 255, 255, 0.75); }
.tariff-list p span { color: var(--wine); font-weight: 900; }
.tariff-wine .tariff-list p span, .tariff-dark .tariff-list p span { color: var(--gold); }
.bonus-list { margin-top: 26px; }
.bonus-list p { color: rgb(93, 88, 85); background: rgb(240, 230, 231); border-radius: 14px; margin: 8px 0px; padding: 12px 14px; font-size: 12px; line-height: 1.35; }
.tariff-wine .bonus-list p, .tariff-dark .bonus-list p { color: rgba(255, 255, 255, 0.8); background: rgba(95, 6, 23, 0.35); }
.tariff-note { color: var(--wine); margin-top: 14px; font-size: 12px; font-weight: 800; line-height: 1.4; }
.tariff-wine .tariff-note, .tariff-dark .tariff-note { color: var(--gold); }
.tariff-excluded-list { margin-top: 26px; }
.tariff-excluded-list strong, .tariff-excluded-list p { font-size: 14px; }
.tariff-card .tariff-excluded-list p, .tariff-card .tariff-excluded-list p > span { color: rgb(200, 188, 192); }
.tariff-excluded-list s { text-decoration-thickness: 1px; }
.tariff-payment { margin-top: auto; padding-top: 28px; }
.tariff-price-block { color: rgb(255, 255, 255); background: rgba(44, 8, 16, 0.28); border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 18px; padding: 20px; }
.tariff-compare-price { color: rgba(255, 255, 255, 0.56); width: fit-content; margin-bottom: 10px; font-size: 14px; font-weight: 750; text-decoration: line-through 2px; display: block; }
.tariff-light .tariff-price-block { background: rgb(36, 25, 27); }
.tariff-monthly-price { color: var(--gold); letter-spacing: -0.045em; white-space: nowrap; font-size: clamp(28px, 2.35vw, 38px); line-height: 1; display: block; }
.tariff-full-price { color: rgba(255, 255, 255, 0.7); margin-top: 10px; font-size: 12px; line-height: 1.35; display: block; }
.tariff-payment-actions { grid-template-columns: 1fr 1fr; gap: 10px; margin-top: 12px; display: grid; }
.tariff-payment-button { cursor: pointer; min-height: 56px; font-style: inherit; font-variant: inherit; font-stretch: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; border-radius: 14px; padding: 12px 14px; font-size: 12px; font-weight: 850; line-height: 1.15; transition: transform 0.2s, box-shadow 0.2s, background 0.2s; }
a.tariff-payment-button { text-align: center; justify-content: center; align-items: center; text-decoration: none; display: inline-flex; }
.tariff-payment-button:hover { transform: translateY(-2px); }
.tariff-payment-installment { color: rgb(43, 37, 26); background: linear-gradient(105deg, rgb(211, 167, 86), rgb(255, 224, 154) 50%, rgb(207, 162, 78)); border: 0px; box-shadow: rgba(84, 48, 5, 0.2) 0px 12px 28px; }
.tariff-payment-full { color: rgb(255, 255, 255); background: 0px 0px; border: 1px solid rgba(255, 255, 255, 0.52); }
.tariff-light .tariff-payment-full { color: var(--ink); border-color: rgba(25, 25, 25, 0.32); }
.payment-dialog { width: min(620px, 100% - 24px); max-width: 620px; max-height: calc(100dvh - 24px); color: var(--ink); background: 0px 0px; border: 0px; border-radius: 26px; padding: 0px; box-shadow: rgba(0, 0, 0, 0.42) 0px 34px 100px; }
.payment-dialog::backdrop { backdrop-filter: blur(8px); background: rgba(13, 8, 10, 0.78); }
.payment-dialog-card { background: radial-gradient(circle at 94% 0px, rgba(236, 208, 128, 0.22), rgba(0, 0, 0, 0) 28%), rgb(248, 245, 239); border: 1px solid rgba(255, 255, 255, 0.72); border-radius: 26px; max-height: calc(100dvh - 24px); padding: 34px; position: relative; overflow: auto; }
.payment-dialog-close { cursor: pointer; width: 42px; height: 42px; color: var(--ink); background: rgba(255, 255, 255, 0.82); border: 1px solid rgba(25, 25, 25, 0.16); border-radius: 50%; place-items: center; font-size: 28px; line-height: 1; display: grid; position: absolute; top: 16px; right: 16px; }
.payment-dialog-kicker { color: var(--wine); letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 8px; font-size: 11px; font-weight: 850; }
.payment-dialog h3 { max-width: calc(100% - 48px); margin-bottom: 8px; font-size: clamp(30px, 5vw, 46px); line-height: 1; }
.payment-dialog-price { color: var(--wine); margin-bottom: 22px; font-size: 20px; font-weight: 850; }
.payment-dialog-status, .payment-dialog-error { color: rgb(78, 69, 68); background: rgb(238, 229, 223); border-radius: 14px; margin-bottom: 16px; padding: 14px 16px; font-size: 13px; }
.payment-dialog-error p { margin-bottom: 10px; }
.payment-dialog-error button { cursor: pointer; color: rgb(255, 255, 255); background: var(--wine); border: 0px; border-radius: 10px; min-height: 42px; padding: 0px 16px; font-weight: 800; }
.payment-widget-host { border-radius: 16px; min-height: 120px; overflow: hidden; }
.payment-widget-host iframe { min-height: 420px; border: 0px !important; width: 100% !important; }
.tariff-button { color: rgb(255, 255, 255); background: var(--wine); min-height: 58px; margin-top: auto; font-size: 14px; }
.tariff-wine .tariff-button, .tariff-dark .tariff-button { color: rgb(48, 39, 25); background: linear-gradient(105deg, rgb(211, 167, 86), rgb(255, 224, 154) 50%, rgb(207, 162, 78)); }
.agent-offer { background: radial-gradient(circle at 15% 20%, rgba(236, 208, 128, 0.18), rgba(0, 0, 0, 0) 28%), radial-gradient(circle at 90% 70%, rgba(151, 31, 49, 0.38), rgba(0, 0, 0, 0) 32%), rgb(23, 23, 23); padding: 112px 0px; overflow: hidden; }
.agent-offer-inner { grid-template-columns: minmax(0px, 1.08fr) minmax(320px, 0.72fr); align-items: center; gap: 72px; display: grid; }
.agent-offer h2 { color: rgb(255, 255, 255); max-width: 760px; margin-top: 26px; }
.agent-offer-copy { background: rgba(255, 255, 255, 0.07); border: 1px solid rgba(255, 255, 255, 0.16); border-radius: 26px; padding: 36px; box-shadow: rgba(0, 0, 0, 0.22) 0px 26px 80px; }
.agent-offer-copy p, .agent-offer-copy li { color: rgba(255, 255, 255, 0.78); line-height: 1.6; }
.agent-offer-copy ul { margin: 24px 0px 30px; padding-left: 22px; }
.agent-offer-copy li + li { margin-top: 10px; }
.alumni-discount { padding: 72px 0px; }
.alumni-discount-inner { box-shadow: var(--shadow); background: radial-gradient(circle at 92% 0px, rgba(236, 208, 128, 0.42), rgba(0, 0, 0, 0) 34%), rgb(255, 255, 255); border: 1px solid rgba(151, 31, 49, 0.14); border-radius: 30px; grid-template-columns: minmax(0px, 1fr) auto; align-items: center; gap: 54px; padding: 48px; display: grid; }
.alumni-discount h2 { max-width: 760px; margin: 22px 0px 16px; font-size: clamp(38px, 5vw, 64px); }
.alumni-discount p { max-width: 720px; color: var(--muted); margin-bottom: 0px; line-height: 1.6; }
.manager-contact-links { gap: 10px; display: grid; }
.manager-contact-links > span { color: inherit; letter-spacing: 0.05em; text-transform: uppercase; font-size: 11px; font-weight: 850; }
.manager-contact-links > div { flex-wrap: wrap; gap: 9px; display: flex; }
.manager-contact-links a { min-height: 44px; }
.manager-contact-icon { width: 48px; height: 48px; color: var(--wine-deep); background: rgba(255, 255, 255, 0.74); border: 1px solid rgba(111, 16, 31, 0.22); border-radius: 50%; flex: 0 0 48px; justify-content: center; align-items: center; padding: 0px; text-decoration: none; transition: transform 0.2s, color 0.2s, background 0.2s, border-color 0.2s, box-shadow 0.2s; display: inline-flex; box-shadow: rgba(80, 13, 26, 0.12) 0px 8px 22px, rgba(255, 255, 255, 0.8) 0px 1px inset; }
.manager-contact-icon svg { fill: currentcolor; width: 23px; height: 23px; }
.manager-contact-icon:hover { color: rgb(255, 255, 255); border-color: var(--wine); background: var(--wine); transform: translateY(-2px); box-shadow: rgba(80, 13, 26, 0.22) 0px 12px 28px; }
.manager-contact-icon:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.tariff-wine .manager-contact-icon, .tariff-dark .manager-contact-icon, .final-cta .manager-contact-icon, .manager-contact-bar .manager-contact-icon { color: var(--gold); background: rgba(255, 255, 255, 0.075); border-color: rgba(236, 208, 128, 0.38); box-shadow: rgba(20, 2, 7, 0.2) 0px 8px 22px, rgba(255, 255, 255, 0.12) 0px 1px inset; }
.tariff-wine .manager-contact-icon:hover, .tariff-dark .manager-contact-icon:hover, .final-cta .manager-contact-icon:hover, .manager-contact-bar .manager-contact-icon:hover { color: rgb(50, 16, 24); border-color: var(--gold); background: var(--gold); box-shadow: rgba(20, 2, 7, 0.3) 0px 12px 28px; }
.tariff-card > .manager-contact-links { border-top: 1px solid rgba(255, 255, 255, 0.18); margin-top: 18px; padding-top: 18px; }
.tariff-light > .manager-contact-links { border-top-color: rgba(25, 25, 25, 0.12); }
.manager-contact-bar { z-index: 90; color: rgb(255, 255, 255); backdrop-filter: blur(18px); background: rgba(48, 8, 17, 0.92); border: 1px solid rgba(255, 255, 255, 0.2); border-radius: 22px; justify-content: space-between; align-items: center; gap: 22px; width: min(760px, 100% - 32px); min-height: 68px; padding: 10px 12px 10px 22px; display: flex; position: fixed; bottom: 12px; left: 50%; transform: translate(-50%); box-shadow: rgba(24, 3, 8, 0.36) 0px 18px 48px; }
.manager-contact-bar > strong { font-size: 14px; }
.manager-contact-bar .manager-contact-links { display: block; }
.manager-contact-bar .manager-contact-links > span { clip: rect(0px, 0px, 0px, 0px); width: 1px; height: 1px; position: absolute; overflow: hidden; }
.faq-section { padding: 112px 0px; }
.faq-shell { grid-template-columns: 0.72fr 1.28fr; gap: 86px; display: grid; }
.faq-list { border-top: 1px solid rgba(255, 255, 255, 0.22); }
.faq-list details { border-bottom: 1px solid rgba(255, 255, 255, 0.22); padding: 22px 0px; }
.faq-list summary { cursor: pointer; letter-spacing: -0.02em; grid-template-columns: 1fr 40px; align-items: center; gap: 18px; font-size: 20px; font-weight: 750; list-style: none; display: grid; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { width: 40px; height: 40px; color: var(--ink); background: var(--gold); border-radius: 50%; place-items: center; font-size: 22px; transition: transform 0.2s; display: grid; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { color: rgba(255, 255, 255, 0.56); max-width: 680px; margin: 18px 58px 0px 0px; line-height: 1.58; }
.final-cta { color: rgb(255, 255, 255); background: radial-gradient(circle at 90% 20%, rgba(255, 220, 144, 0.22), rgba(0, 0, 0, 0) 24%), linear-gradient(128deg, rgb(122, 17, 35), rgb(170, 53, 67) 64%, rgb(189, 85, 93)); padding: 108px 0px; position: relative; overflow: hidden; }
.final-cta::after { content: "5"; color: rgba(255, 255, 255, 0.07); font-size: 54vw; font-weight: 900; line-height: 0.7; position: absolute; bottom: -16vw; right: 4vw; }
.final-cta-inner { z-index: 2; grid-template-columns: 1fr auto; align-items: end; gap: 50px; display: grid; position: relative; }
.final-cta h2 { max-width: 850px; margin: 22px 0px; }
.final-cta p { color: rgba(255, 255, 255, 0.68); max-width: 670px; margin: 0px; line-height: 1.55; }
.site-footer { color: rgb(255, 255, 255); background: rgb(16, 16, 16); padding: 42px 0px; }
.site-footer .section-shell { grid-template-columns: auto 1fr auto; align-items: center; gap: 34px; display: grid; }
.footer-brand { color: var(--gold); letter-spacing: 0.06em; font-size: 20px; font-weight: 900; }
.site-footer p { color: rgba(255, 255, 255, 0.48); margin: 0px; font-size: 12px; }
.site-footer a { color: rgba(255, 255, 255, 0.74); font-size: 12px; }
.footer-links { gap: 12px; display: grid; }
.site-footer .footer-links a { text-underline-offset: 4px; font-size: 14px; }
.course-offer { color: rgb(41, 35, 38); background: rgb(255, 250, 246); min-height: 100vh; padding: 48px 24px 72px; font-size: 16px; line-height: 1.7; }
.offer-shell { overflow-wrap: anywhere; max-width: 880px; margin: 0px auto; }
.course-offer h1 { color: var(--wine); letter-spacing: -0.02em; margin: 20px 0px; font-size: clamp(30px, 5vw, 48px); line-height: 1.15; }
.course-offer h2 { margin: 0px 0px 20px; font-size: 25px; line-height: 1.3; }
.course-offer h3 { margin: 0px 0px 18px; font-size: 21px; line-height: 1.3; }
.course-offer p { margin: 0px 0px 16px; }
.course-offer section { margin: 40px 0px; scroll-margin-top: 24px; }
.course-offer ul { margin: 0px 0px 20px; padding-left: 24px; list-style: outside; }
.course-offer li { margin-bottom: 8px; }
.course-offer a { color: var(--wine); text-underline-offset: 3px; text-decoration: underline; }
.course-offer .offer-edition { color: rgb(104, 96, 100); margin-top: 30px; font-size: 14px; }
.offer-nav { border-block: 1px solid rgb(219, 203, 208); flex-wrap: wrap; gap: 10px 24px; padding: 22px 0px; display: flex; }
.offer-tariff { background: rgb(255, 255, 255); border: 1px solid rgb(219, 203, 208); border-radius: 18px; padding: clamp(18px, 4vw, 30px); }
.offer-tariff[id="vip"] { border: 2px solid var(--wine); }
.offer-condition, .offer-requisites { background: rgb(243, 232, 232); border-radius: 12px; padding: 20px; }
.offer-prices { border-top: 1px solid rgb(219, 203, 208); margin: 24px 0px 0px; }
.offer-prices div { flex-wrap: wrap; justify-content: space-between; gap: 8px 24px; padding-top: 14px; display: flex; }
.offer-prices dt { flex: 1 1 280px; }
.offer-prices dd { color: var(--wine); margin: 0px; font-weight: 750; }
.offer-back { margin-block: 8px; display: inline-block; }
@media print {
  .course-offer { color: rgb(0, 0, 0); background: rgb(255, 255, 255); padding: 0px; font-size: 11pt; }
  .course-offer a { color: inherit; }
  .offer-nav, .offer-back { display: none; }
  .course-offer h2, .course-offer h3 { break-after: avoid; }
}
@media (max-width: 1280px) {
  .career-shell { grid-template-columns: 1fr; gap: 54px; }
  .career-title-block h2, .career-title-block p { max-width: 760px; }
}
@media (max-width: 1050px) {
  .hero-copy { width: min(66%, 700px); }
  .hero h1 { font-size: clamp(44px, 6.6vw, 66px); }
  .opportunity-grid, .results-board { grid-template-columns: repeat(2, 1fr); }
  .student-story-grid { grid-template-columns: 1fr; }
  .student-story-card:last-child:nth-child(2n+1) { grid-column: auto; grid-template-columns: minmax(180px, 42%) minmax(0px, 1fr); }
  .reviews-wall { columns: 3; }
  .split-heading, .career-shell, .faq-shell { grid-template-columns: 1fr; }
  .platform-shell { grid-template-columns: 1fr; grid-template-areas: "intro" "preview" "steps" "cta"; gap: 32px; }
  .platform-preview { width: min(720px, 100%); margin: 0px auto; }
  .module-card { grid-template-columns: 1fr 1fr; }
  .module-result { grid-column: 1 / -1; min-height: 270px; }
}
@media (max-width: 820px) {
  body { font-size: 16px; }
  .desktop-nav { display: none; }
  .mobile-menu { display: block; }
  .platform-shell { grid-template-areas: "intro" "preview" "steps" "cta"; }
  .platform-steps { margin: 0px; }
  .platform-cta { width: 100%; }
  .hero { min-height: 0px; }
  .hero-inner { width: 100%; min-height: 0px; padding-top: 88px; }
  .hero-copy { width: 100%; padding: 48px 24px 46px; }
  .hero-meta { margin-bottom: 38px; }
  .hero h1 { max-width: 720px; font-size: clamp(45px, 10vw, 72px); }
  .hero-visual { width: 100%; height: 680px; position: relative; top: auto; bottom: auto; right: auto; }
  .hero-cutout { object-position: center bottom; }
  .hero-author-label { bottom: 24px; right: 24px; }
  .section-shell { width: min(100% - 32px, 680px); }
  .agent-offer-inner, .alumni-discount-inner { grid-template-columns: 1fr; gap: 34px; }
  .agent-offer { padding: 82px 0px; }
  .alumni-discount-inner { padding: 36px 28px; }
  .light-section, .skills-section, .platform-section, .career-section, .cases-section, .reviews-section, .faq-section { padding: 82px 0px; }
  .wine-panel { padding: 42px 22px; }
  .audience-grid, .cases-grid, .tariff-grid, .reviews-heading { grid-template-columns: 1fr; }
  .reviews-wall { columns: 2; }
  .audience-grid article { min-height: 360px; }
  .no-code-strip { grid-template-columns: 1fr 1fr; }
  .no-code-strip span:nth-of-type(2) { border-left: 0px; }
  .skill-row { grid-template-columns: 42px 70px 1fr; }
  .skill-outcome { grid-column: 3; justify-items: start; }
  .skill-outcome strong, .skill-market-price { text-align: left; }
  .module-card { grid-template-columns: 1fr; }
  .module-result { grid-column: auto; }
  .module-visual { aspect-ratio: 840 / 476; min-height: 0px; }
  .platform-preview > img { aspect-ratio: 3 / 2; height: auto; }
  .platform-badge { max-width: none; margin-top: 12px; padding: 14px 18px; position: static; }
  .case-image { aspect-ratio: 8 / 5; height: auto; }
  .student-story-photo { aspect-ratio: 848 / 870; min-height: 0px; }
  .portfolio-banner { grid-template-columns: 1fr; gap: 26px; }
  .cases-heading { grid-template-columns: 1fr; }
  .tariff-card { min-height: 660px; }
  .final-cta-inner { grid-template-columns: 1fr; align-items: start; }
  .site-footer .section-shell { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  main { padding-bottom: 92px; }
  .manager-contact-bar { border-radius: 999px; width: max-content; padding: 8px 12px; display: block; bottom: 8px; left: 50%; right: auto; transform: translate(-50%); }
  .manager-contact-bar > strong { display: none; }
  .manager-contact-bar .manager-contact-links > div { justify-content: center; }
  .manager-contact-bar .manager-contact-links { place-items: center; display: grid; }
  .agent-offer-copy { padding: 26px 22px; }
  .alumni-discount { padding: 54px 0px; }
  .alumni-discount-inner { padding: 30px 22px; }
  .alumni-discount .manager-contact-links > div, .final-cta .manager-contact-links > div { display: flex; }
  .hero-inner { padding-top: 88px; }
  .site-header { border-radius: 18px; gap: 8px; width: calc(100% - 20px); min-height: 64px; padding: 8px; }
  .brand-lockup { flex: 1 1 auto; gap: 0px; min-width: 0px; font-size: 9px; }
  .brand-lockup i, .brand-lockup span:last-child { display: none; }
  .header-actions { flex: 0 0 auto; gap: 6px; }
  .header-cta { min-height: 42px; padding: 0px 12px; font-size: 10px; }
  .mobile-menu summary { width: 42px; height: 42px; }
  .hero-copy { padding: 24px 24px 46px; }
  .hero-meta { gap: 16px; font-size: 12px; }
  .hero h1 { font-size: 43px; line-height: 0.98; }
  .hero-note { font-size: 16px; }
  .gold-button { width: 100%; min-height: 64px; padding: 0px 20px; font-size: 14px; }
  .section-cta-row { margin-top: 28px; }
  .tariffs-cta-row { margin: -8px 0px 28px; }
  .tariff-payment-actions { grid-template-columns: 1fr; }
  .tariff-payment-button { width: 100%; min-height: 58px; }
  .payment-dialog-card { border-radius: 22px; padding: 26px 18px 18px; }
  .payment-dialog-close { top: 12px; right: 12px; }
  .hero-chips span { padding: 9px 13px; font-size: 11px; }
  .hero-visual { height: 500px; position: relative; top: auto; right: auto; }
  .hero-author-label { bottom: 18px; }
  h2 { font-size: 42px; }
  .section-heading { margin-bottom: 38px; }
  .opportunity-grid, .results-board { grid-template-columns: 1fr; }
  .opportunity-card { min-height: 0px; }
  .opportunity-card small { margin-top: 16px; display: block; position: static; }
  .audience-grid article { min-height: 390px; padding: 34px 26px; }
  .no-code-strip { grid-template-columns: 1fr; }
  .no-code-strip span { border-top: 1px solid rgba(255, 255, 255, 0.18); border-left: 0px; padding: 14px 0px 0px; }
  .split-heading { display: block; }
  .split-heading h2 { margin-bottom: 20px; }
  .skill-row { grid-template-columns: 38px 1fr; align-items: start; gap: 16px; }
  .skill-mark { grid-column: 2; width: 62px; height: 62px; }
  .skill-row > div:not(.skill-outcome) { grid-column: 2; }
  .skill-outcome { grid-column: 2; justify-items: start; width: 100%; }
  .skill-outcome strong, .skill-market-price { text-align: left; }
  .results-board article { min-height: 300px; }
  .portfolio-banner { padding: 32px 26px; }
  .platform-shell { gap: 44px; }
  .module-card { padding: 12px; }
  .module-copy, .module-result { padding: 22px; }
  .module-copy h3 { font-size: 30px; }
  .career-path article { grid-template-columns: 36px 1fr; }
  .career-path p { grid-column: 2; }
  .case-copy { padding: 24px; }
  .case-copy h3 { font-size: 24px; }
  .student-story-card, .student-story-card:last-child:nth-child(2n+1) { grid-template-columns: 1fr; }
  .student-story-copy { padding: 26px 24px 30px; }
  .student-story-person { flex-direction: column; align-items: flex-start; gap: 6px; margin-bottom: 22px; }
  .reviews-wall { columns: 1; }
  .review-card { margin-bottom: 14px; }
  .reviews-more > summary { min-height: 58px; }
  .tariff-card { min-height: 0px; }
  .tariff-button { margin-top: 36px; }
  .faq-list summary { font-size: 17px; }
  .final-cta { padding: 82px 0px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .hero-cutout { animation: auto ease 0s 1 normal none running none; }
  .manager-contact-icon { transform: none; }
  *, ::before, ::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; }
}
.school-brand { align-items: center; gap: 8px; display: inline-flex; }
.school-brand img { object-fit: contain; width: 38px; height: 38px; }
.tariff-grid { grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 32px 24px; }
.tariff-card { padding: 38px 32px 30px; }
.tariff-card h3 { min-height: auto; margin: 12px 0px 28px; }
.tariff-list p, .bonus-list p { font-size: 15px; line-height: 1.5; }
.tariff-eyebrow { font-size: 12px; line-height: 1.5; }
.tariff-payment-button { font-size: 14px; }
.tariff-gold { color: rgb(54, 34, 20); background: linear-gradient(135deg, rgb(255, 243, 206), rgb(234, 209, 153) 60%, rgb(213, 181, 107)); border: 1px solid rgb(173, 130, 65); }
.tariff-gold h3, .tariff-gold .tariff-eyebrow { color: rgb(101, 67, 22); }
.tariff-gold .popular-badge { color: rgb(255, 232, 181); background: rgb(81, 49, 26); font-size: 12px; }
.tariff-gold .bonus-list p { color: rgb(69, 50, 33); background: rgba(255, 255, 255, 0.45); }
.tariff-gold .tariff-list p { color: rgb(69, 50, 33); }
.tariff-gold .tariff-price-block { background: rgb(52, 38, 27); border: 0px; }
.premium-price-label { color: rgb(237, 216, 170); font-size: 13px; display: block; }
.premium-full-price { color: rgb(255, 226, 166); letter-spacing: -0.04em; margin-top: 8px; font-size: clamp(36px, 4vw, 54px); line-height: 1.1; display: block; }
.premium-installment { border-top: 1px solid rgba(255, 255, 255, 0.19); gap: 7px; margin-top: 22px; padding-top: 18px; display: grid; }
.premium-installment strong { color: rgb(255, 226, 166); font-size: 25px; }
.premium-installment span { font-size: 14px; line-height: 1.45; }
.premium-installment small { color: rgb(223, 209, 196); max-width: 350px; font-size: 12px; line-height: 1.5; }
.premium-cta { color: rgb(255, 246, 229); width: 100%; box-shadow: none; background: rgb(104, 67, 23); gap: 16px; margin-top: 12px; display: flex; }
.premium-contact-note { color: rgb(81, 57, 31); margin: 12px 0px 0px; font-size: 13px; line-height: 1.6; }
.premium-contact-note a { color: inherit; text-underline-offset: 3px; }
.course-platform > .section-heading { max-width: 900px; margin-bottom: 40px; }
.course-platform .platform-lead { color: rgb(221, 210, 205); max-width: 720px; font-size: 18px; }
.platform-screen-stage { grid-template-columns: minmax(0px, 1fr) 240px; align-items: center; gap: 24px; margin: 40px 0px 48px; display: grid; position: relative; }
.platform-desktop-shot, .platform-mobile-shot { min-width: 0px; margin: 0px; }
.platform-desktop-shot > a, .platform-mobile-shot > a { border: 1px solid rgba(222, 201, 163, 0.28); border-radius: 0px 0px 16px 16px; display: block; overflow: hidden; }
.platform-desktop-shot img, .platform-mobile-shot img { width: 100%; height: auto; display: block; }
.platform-mobile-shot > a { border: 7px solid rgb(52, 48, 43); border-radius: 28px; box-shadow: rgba(0, 0, 0, 0.333) 0px 24px 44px; }
.platform-mobile-shot img { object-fit: cover; object-position: center top; max-height: 490px; }
.platform-screen-stage figcaption { color: rgb(200, 189, 180); text-align: center; margin-top: 14px; font-size: 13px; }
.platform-walkthrough { border-top: 1px solid rgba(255, 255, 255, 0.16); grid-template-columns: repeat(4, minmax(0px, 1fr)); gap: 28px; padding: 32px 0px; display: grid; }
.platform-walkthrough article > span { color: rgb(218, 186, 121); font-size: 30px; font-weight: 800; }
.platform-walkthrough h3 { color: rgb(255, 245, 230); margin: 14px 0px 10px; font-size: 19px; }
.platform-walkthrough p { color: rgb(210, 200, 191); font-size: 15px; line-height: 1.55; }
.access-comparison { grid-template-columns: 1fr 1fr; gap: 16px; margin: 8px 0px 30px; display: grid; }
.access-comparison p { border: 1px solid rgba(255, 255, 255, 0.196); border-radius: 16px; flex-direction: column; gap: 10px; margin: 0px; padding: 22px 24px; display: flex; }
.access-comparison p:last-child { background: rgba(215, 179, 108, 0.082); border-color: rgb(215, 179, 108); }
.access-comparison span { color: rgb(218, 186, 121); letter-spacing: 0.08em; font-size: 12px; font-weight: 800; }
.access-comparison strong { font-size: 20px; font-weight: 650; }
.fairy-showcase { grid-template-columns: 1.1fr 0.9fr; align-items: center; gap: 70px; display: grid; }
.fairy-intro h2 { max-width: 620px; font-size: clamp(40px, 5vw, 72px); }
.fairy-lead { color: rgb(237, 225, 217); max-width: 600px; font-size: 19px; line-height: 1.65; }
.fairy-capabilities { margin: 26px 0px; padding: 0px; list-style: none; }
.fairy-capabilities li { color: rgb(223, 210, 204); border-left: 2px solid rgb(208, 174, 102); margin: 18px 0px; padding-left: 18px; font-size: 16px; line-height: 1.65; }
.fairy-capabilities b { color: rgb(255, 243, 223); }
.fairy-duration { grid-template-columns: 1fr 1fr; gap: 16px; max-width: 460px; display: grid; }
.fairy-duration p { border: 1px solid rgba(212, 184, 117, 0.4); border-radius: 16px; gap: 6px; margin: 0px; padding: 18px 20px; display: grid; }
.fairy-duration span { color: rgb(221, 189, 123); font-size: 12px; font-weight: 800; }
.fairy-duration b { color: rgb(255, 240, 211); font-size: 25px; }
.fairy-offer-note { color: rgb(211, 196, 187); margin: 12px 0px 26px; font-size: 13px; line-height: 1.5; }
.fairy-demo { justify-self: center; width: min(100%, 410px); }
.fairy-phone { color: rgb(52, 45, 43); background: rgb(245, 239, 228); border: 7px solid rgb(221, 210, 197); border-radius: 34px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.333) 0px 28px 70px; }
.fairy-chat-header { background: rgb(255, 250, 243); border-bottom: 1px solid rgb(215, 205, 192); align-items: center; gap: 12px; padding: 18px 20px; display: flex; }
.fairy-chat-header img { object-fit: cover; border-radius: 50%; width: 48px; height: 48px; }
.fairy-chat-header b { font-size: 17px; display: block; }
.fairy-chat-header span { color: rgb(106, 101, 95); margin-top: 3px; font-size: 12px; display: block; }
.fairy-chat-body { padding: 18px; }
.fairy-demo-label { text-align: center; color: rgb(119, 108, 98); margin: 0px auto 14px; font-size: 12px; display: block; }
.fairy-bubble { border-radius: 17px; padding: 13px 15px; font-size: 14px; line-height: 1.5; }
.fairy-bubble-user { background: rgb(228, 236, 216); border-bottom-right-radius: 4px; margin-left: 28px; }
.fairy-work-step { align-items: flex-start; gap: 12px; margin: 19px 0px; display: flex; }
.fairy-work-step > span { color: rgb(255, 255, 255); background: rgb(113, 49, 68); border-radius: 50%; flex: 0 0 28px; place-items: center; height: 28px; font-size: 11px; display: grid; }
.fairy-work-step b { font-size: 15px; }
.fairy-work-step p { color: rgb(115, 101, 93); margin: 4px 0px 0px; font-size: 13px; line-height: 1.45; }
.fairy-result-preview { background: rgb(255, 252, 247); border: 1px solid rgb(232, 218, 202); border-radius: 14px; margin-bottom: 16px; padding: 18px; }
.fairy-result-preview > div { margin-bottom: 14px; }
.fairy-result-preview span { color: rgb(163, 132, 81); text-transform: uppercase; letter-spacing: 0.08em; font-size: 11px; display: block; }
.fairy-result-preview b { color: rgb(112, 48, 68); margin-top: 6px; font-size: 17px; display: block; }
.fairy-result-preview p { margin: 8px 0px; font-size: 12px; line-height: 1.4; }
.fairy-demo-caption { color: rgb(212, 200, 191); text-align: center; max-width: 355px; margin: 18px auto 0px; font-size: 12px; line-height: 1.5; }
@media (max-width: 1050px) {
  .fairy-showcase { gap: 34px; }
  .platform-screen-stage { grid-template-columns: minmax(0px, 1fr) 195px; gap: 18px; }
  .platform-walkthrough { grid-template-columns: repeat(2, minmax(0px, 1fr)); }
}
@media (max-width: 820px) {
  .tariff-grid { grid-template-columns: 1fr; gap: 36px; }
  .tariff-card { min-height: 0px; }
  .fairy-showcase { grid-template-columns: 1fr; gap: 36px; }
  .fairy-intro h2 { max-width: none; }
  .platform-screen-stage { grid-template-columns: 1fr; }
  .platform-mobile-shot { justify-self: center; width: 220px; margin-top: 12px; }
  .access-comparison strong { font-size: 18px; }
}
@media (max-width: 560px) {
  .school-brand { gap: 4px; }
  .school-brand img { width: 27px; height: 27px; }
  .brand-lockup { gap: 8px; }
  .tariff-card { padding: 30px 22px 24px; }
  .popular-badge { text-align: center; max-width: calc(100% - 20px); padding: 8px 10px; font-size: 9px; }
  .tariff-eyebrow { min-height: 0px; }
  .platform-walkthrough { gap: 24px 16px; }
  .platform-walkthrough h3 { font-size: 17px; }
  .platform-walkthrough p { font-size: 14px; }
  .access-comparison { grid-template-columns: 1fr; }
  .fairy-lead, .course-platform .platform-lead { font-size: 17px; }
  .fairy-phone { border-width: 5px; }
  .fairy-chat-body { padding: 14px; }
  .fairy-capabilities li { font-size: 16px; }
}
@font-face { font-family: Geist; font-style: normal; font-weight: 100 900; font-display: swap; src: url("https://ezhgenti.ru/neiroprofi/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-ff2310f5.woff2") format("woff2"); unicode-range: U+460-52F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F; }
@font-face { font-family: Geist; font-style: normal; font-weight: 100 900; font-display: swap; src: url("https://ezhgenti.ru/neiroprofi/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-875ccdd4.woff2") format("woff2"); unicode-range: U+301, U+400-45F, U+490-491, U+4B0-4B1, U+2116; }
@font-face { font-family: Geist; font-style: normal; font-weight: 100 900; font-display: swap; src: url("https://ezhgenti.ru/neiroprofi/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-52306abf.woff2") format("woff2"); unicode-range: U+102-103, U+110-111, U+128-129, U+168-169, U+1A0-1A1, U+1AF-1B0, U+300-301, U+303-304, U+308-309, U+323, U+329, U+1EA0-1EF9, U+20AB; }
@font-face { font-family: Geist; font-style: normal; font-weight: 100 900; font-display: swap; src: url("https://ezhgenti.ru/neiroprofi/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-001175b1.woff2") format("woff2"); unicode-range: U+100-2BA, U+2BD-2C5, U+2C7-2CC, U+2CE-2D7, U+2DD-2FF, U+304, U+308, U+329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF; }
@font-face { font-family: Geist; font-style: normal; font-weight: 100 900; font-display: swap; src: url("https://ezhgenti.ru/neiroprofi/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-98bbbccb.woff2") format("woff2"); unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: "Geist Fallback"; src: local("Arial"); ascent-override: 95.94%; descent-override: 28.16%; line-gap-override: 0%; size-adjust: 104.76%; }
.__font_geist_19ysh9d { font-family: Geist, "Geist Fallback"; font-style: normal; }
.__variable_geist_19ysh9d { --font-geist-sans: 'Geist', 'Geist Fallback'; }
