:root { color-scheme:light; --navy:#101a30; --deep-navy:#18233c; --white:#fff; --turquoise:#00bcc4; --turquoise-hover:#00a7ae; --turquoise-tint:#e2f6f8; --turquoise-bright:#6ee0e6; --teal:#007680; --teal-dark:#00535a; --ink:#14203a; --muted:#4a5470; --ground:#f6f3ee; --ground-alt:#f5f1ea; --warm-white:#fdfcfa; --line:#e8e2da; --neutral-line:#e2ddd3; --plum:#8f5a86; --clay:#b98a71; --on-dark:#c3ccdd; --success:#2f6b4f; --success-tint:#e9f4ec; --success-line:#cee5d6; --neutral:#6b6459; --neutral-tint:#f0eee9; --focus:#00535a; --focus-ring:#a9dde1; --space-1:4px; --space-2:8px; --space-3:12px; --space-4:16px; --space-5:24px; --space-6:32px; --space-7:48px; --space-8:64px; --space-9:96px; --space-10:128px; --control:8px; --card:14px; --pill:999px; --shadow:0 12px 28px -18px rgba(16,26,48,.15); --heading:"Space Grotesk",system-ui,sans-serif; --body:"Manrope",system-ui,sans-serif; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; -webkit-text-size-adjust:100%; } body { min-width:320px; margin:0; color:var(--ink); background:var(--warm-white); font:400 16px/1.55 var(--body); text-wrap:pretty; } h1,h2,h3,p,ol { margin:0; } a { color:var(--teal); font-weight:700; text-decoration:none; transition:color 120ms cubic-bezier(.2,0,.2,1),background-color 120ms cubic-bezier(.2,0,.2,1),border-color 120ms cubic-bezier(.2,0,.2,1); } a:hover { color:var(--teal-dark); text-decoration:underline; } :where(a,[tabindex]):focus-visible { outline:none; border:2px solid var(--focus); box-shadow:0 0 0 3px var(--focus-ring); } [data-surface="dark"] :where(a,[tabindex]):focus-visible { border-color:var(--turquoise-bright); box-shadow:0 0 0 3px var(--turquoise); }.shell { width:min(1160px,calc(100% - 96px)); margin-inline:auto; }.skip-link { position:absolute; z-index:10; top:-64px; left:var(--space-4); padding:var(--space-3) var(--space-4); border-radius:var(--control); color:var(--white); background:var(--navy); }.skip-link:focus { top:var(--space-4); }
.site-header { position:relative; z-index:2; background:var(--warm-white); border-bottom:1px solid var(--line); }.header__inner { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); }.identity { display:flex; align-items:center; gap:var(--space-3); color:var(--ink); font-family:var(--heading); font-weight:700; }.identity:hover { color:var(--ink); text-decoration:none; }.dot-mark { display:grid; grid-template-columns:repeat(3,6px); grid-template-rows:repeat(3,6px); gap:2px; color:var(--turquoise); }.dot-mark i { display:block; border-radius:1px; background:currentColor; }.dot-mark .dim { opacity:.3; }.dot-mark--large { grid-template-columns:repeat(3,10px); grid-template-rows:repeat(3,10px); gap:3px; }.site-header nav { display:flex; align-items:center; gap:var(--space-5); }.site-header nav a { min-height:44px; display:inline-flex; align-items:center; color:var(--muted); font-size:14px; }.site-header nav a:last-child { color:var(--teal); }.site-header nav a:hover { color:var(--ink); text-decoration:none; }
.atlas-hero,.section { position:relative; overflow:hidden; }.atlas-hero { padding-block:var(--space-10) var(--space-9); background:var(--warm-white); }.atlas-hero__grid { position:relative; display:grid; grid-template-columns:120px minmax(0,1fr) 300px; gap:var(--space-7); align-items:end; }.hero-side { align-self:center; padding-left:var(--space-4); border-left:2px solid var(--plum); color:var(--plum); font:700 14px/1.35 var(--heading); letter-spacing:.06em; }.eyebrow { margin-bottom:var(--space-3); color:var(--teal); font:700 12px/1.3 var(--heading); letter-spacing:.14em; text-transform:uppercase; } h1,h2,h3 { font-family:var(--heading); } h1 { font-size:60px; line-height:1.02; letter-spacing:-.02em; } h1 em { color:var(--teal); font-style:normal; } h2 { font-size:32px; line-height:1.15; letter-spacing:-.01em; } h3 { font-size:32px; line-height:1.15; letter-spacing:-.01em; }.hero-lead { max-width:590px; margin-top:var(--space-5); color:var(--muted); font-size:20px; line-height:1.45; }.hero-key { padding:var(--space-5); border-top:4px solid var(--turquoise); background:var(--ground); }.hero-key__number { display:block; color:var(--teal); font:700 44px/1 var(--heading); }.hero-key p { margin-top:var(--space-4); color:var(--muted); font-size:14px; }.hero-key a { min-height:44px; display:inline-flex; align-items:center; gap:var(--space-2); margin-top:var(--space-5); }.glow { position:absolute; inset:0; pointer-events:none; }.glow--hero { background:radial-gradient(ellipse 760px 440px at 96% 108%,rgba(0,188,196,.15),transparent 70%),radial-gradient(ellipse 600px 400px at 0% 105%,rgba(143,90,134,.15),transparent 72%); }.glow--calendar { background:radial-gradient(ellipse 680px 350px at 96% -8%,rgba(185,138,113,.14),transparent 72%),radial-gradient(ellipse 560px 340px at 0% 106%,rgba(0,188,196,.1),transparent 72%); }.glow--training { background:radial-gradient(ellipse 620px 340px at 0% -12%,rgba(0,188,196,.12),transparent 72%),radial-gradient(ellipse 560px 340px at 100% 105%,rgba(143,90,134,.1),transparent 72%); }
.section { padding-block:var(--space-9); }.atlas { background:radial-gradient(ellipse 760px 280px at 96% -10%,rgba(0,188,196,.12),transparent 74%),radial-gradient(ellipse 620px 300px at 0% -12%,rgba(143,90,134,.11),transparent 74%),var(--white); }.section-top { position:relative; display:grid; grid-template-columns:1.15fr .85fr; gap:var(--space-8); align-items:end; }.section-top > p { color:var(--muted); }.atlas-list { margin-top:var(--space-7); border-top:1px solid var(--line); }.atlas-entry { display:grid; grid-template-columns:170px 1fr minmax(220px,.75fr) 180px; gap:var(--space-5); align-items:center; padding:var(--space-6) 0; border-bottom:1px solid var(--line); }.atlas-entry--open { padding-block:var(--space-7); }.atlas-entry__signal { display:flex; align-items:center; gap:var(--space-3); color:var(--teal); font-size:14px; font-weight:700; }.atlas-entry__signal--clay { color:#7a5642; }.atlas-entry__signal--plum { color:#6a3f64; }.atlas-entry__title p { color:var(--muted); font-size:14px; }.atlas-entry__title h3 { margin-top:var(--space-1); }.atlas-entry__summary { color:var(--muted); font-size:14px; }.entry-link,.entry-wait { min-height:44px; display:inline-flex; align-items:center; justify-content:flex-end; gap:var(--space-2); }.entry-wait { color:var(--muted); font-size:14px; font-weight:700; }
.calendar { background:var(--ground); }.calendar__content { position:relative; }.schedule { position:relative; display:grid; gap:0; margin-top:var(--space-7); padding:0; list-style:none; }.schedule::before { position:absolute; top:0; bottom:0; left:5px; width:2px; background:var(--line); content:""; }.schedule li { position:relative; z-index:1; display:grid; grid-template-columns:32px 1.15fr 1fr auto; gap:var(--space-5); align-items:center; padding:var(--space-5) 0; border-bottom:1px solid var(--line); }.schedule li:first-child { padding-top:0; }.schedule li:last-child { border-bottom:0; padding-bottom:0; }.schedule__marker { width:12px; height:12px; border-radius:3px; background:var(--turquoise); }.schedule__marker--clay { background:var(--clay); }.schedule__marker--plum { background:var(--plum); }.schedule__period { font:700 14px/1.45 var(--heading); }.schedule__program { display:flex; flex-direction:column; gap:var(--space-1); }.schedule__program strong { font-family:var(--heading); }.schedule__program span { color:var(--muted); font-size:14px; }.status { display:inline-flex; width:max-content; padding:var(--space-1) var(--space-3); border:1px solid; border-radius:var(--pill); font-size:12px; font-weight:800; line-height:1.3; }.status--available { color:var(--success); border-color:var(--success-line); background:var(--success-tint); }.status--neutral { color:var(--neutral); border-color:var(--neutral-line); background:var(--neutral-tint); }
.training { background:var(--ground-alt); }.training__layout { position:relative; display:grid; grid-template-columns:110px 1fr auto; gap:var(--space-6); align-items:center; }.training-mark { width:96px; height:96px; display:grid; place-items:center; border-radius:50%; background:var(--white); }.training h2 { max-width:680px; }.training h2 + p { max-width:600px; margin-top:var(--space-4); color:var(--muted); }.button { min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); padding:var(--space-4) var(--space-6); border:0; border-radius:var(--control); font-size:16px; }.button--ink { color:var(--white); background:var(--navy); }.button--ink:hover { color:var(--white); background:var(--deep-navy); text-decoration:none; }.site-footer { background:var(--deep-navy); }.footer__inner { min-height:112px; display:flex; align-items:center; justify-content:space-between; gap:var(--space-5); }.identity--footer { color:var(--white); }.identity--footer:hover { color:var(--white); }.footer__links { display:flex; flex-wrap:wrap; gap:var(--space-5); }.footer__links a { min-height:44px; display:inline-flex; align-items:center; color:var(--on-dark); font-size:14px; }.footer__links a:hover { color:var(--white); }
@media (max-width:1199px) { .shell { width:min(768px,calc(100% - 64px)); } h1 { font-size:44px; }.atlas-hero__grid { grid-template-columns:1fr 260px; gap:var(--space-6); }.hero-side { grid-column:1 / -1; justify-self:start; }.section-top,.training__layout { grid-template-columns:1fr; gap:var(--space-6); }.atlas-entry { grid-template-columns:130px 1fr; }.atlas-entry__summary { grid-column:2; }.entry-link,.entry-wait { grid-column:2; justify-content:flex-start; }.schedule li { grid-template-columns:32px 1fr auto; }.schedule__program { grid-column:2; }.schedule li .status { grid-column:3; grid-row:1 / span 2; }.training-mark { display:none; } }
@media (max-width:767px) { .shell { width:calc(100% - 40px); }.header__inner { min-height:auto; align-items:center; padding-block:var(--space-4); }.identity { font-size:14px; }.site-header nav { margin-left:auto; }.site-header nav a:not(:last-child) { display:none; }.site-header nav a:last-child { min-height:44px; max-width:148px; text-align:right; }.atlas-hero,.section { padding-block:var(--space-8); } h1 { font-size:32px; } h2 { font-size:24px; } h3 { font-size:24px; }.hero-lead { font-size:16px; }.atlas-hero__grid { grid-template-columns:1fr; }.hero-side { grid-column:auto; justify-self:start; }.hero-key { max-width:350px; }.section-top { gap:var(--space-4); }.atlas-list { margin-top:var(--space-6); }.atlas-entry,.atlas-entry--open { grid-template-columns:1fr; gap:var(--space-3); padding-block:var(--space-5); }.atlas-entry__summary,.entry-link,.entry-wait { grid-column:auto; }.entry-link,.entry-wait { justify-content:flex-start; }.schedule { margin-top:var(--space-6); }.schedule li { grid-template-columns:24px 1fr; gap:var(--space-3); align-items:start; }.schedule::before { left:5px; }.schedule__period,.schedule__program,.schedule li .status { grid-column:2; grid-row:auto; }.training__layout { gap:var(--space-4); }.button { width:100%; }.footer__inner { align-items:flex-start; flex-direction:column; padding-block:var(--space-6); }.footer__links { gap:var(--space-3) var(--space-5); } }
@media (max-width:767px) { .identity { flex-shrink:0; gap:var(--space-2); font-size:12px; white-space:nowrap; } }
.atlas-hero__grid { grid-template-columns:150px 1fr 270px; }
.hero-side { align-self:auto; padding-left:0; border-left:0; }
.glow--hero { background:radial-gradient(ellipse 700px 480px at 100% 0%,rgba(0,188,196,.14),transparent 70%),radial-gradient(ellipse 640px 460px at 0% 100%,rgba(143,90,134,.16),transparent 70%); }
.atlas { background:var(--white); }
.glow--calendar { background:radial-gradient(ellipse 600px 420px at 0% 100%,rgba(185,138,113,.2),transparent 70%); }
.glow--training { background:radial-gradient(ellipse 600px 420px at 100% 0%,rgba(0,188,196,.16),transparent 70%); }
@media (max-width:1199px) { .atlas-hero__grid { grid-template-columns:1fr 260px; } }
@media (max-width:767px) { .atlas-hero__grid { grid-template-columns:1fr; } }
.atlas-hero__grid { align-items:start; }
.hero-side,.hero-key { align-self:start; }
.training { position:relative; background:var(--white); border-top:var(--space-5) solid var(--warm-white); }
.glow--training { display:none; }
.calendar-table-wrap { position:relative; overflow-x:auto; margin-top:var(--space-7); border:1px solid var(--line); border-radius:var(--card); background:var(--white); box-shadow:var(--shadow); }
.calendar-table { width:100%; min-width:720px; border-collapse:collapse; text-align:left; }.calendar-table th,.calendar-table td { padding:var(--space-5); border-bottom:1px solid var(--neutral-line); }.calendar-table thead { background:var(--warm-white); }.calendar-table thead th { color:var(--muted); font-size:12px; letter-spacing:.08em; text-transform:uppercase; }.calendar-table tbody th { font-family:var(--heading); font-weight:700; }.calendar-table tbody tr:last-child > * { border-bottom:0; }.calendar-mark { display:inline-block; width:12px; height:12px; margin-right:var(--space-3); border-radius:3px; background:var(--turquoise); }.calendar-mark--two { background:var(--clay); }.calendar-mark--three { background:var(--plum); }
@media (max-width:767px) { .calendar-table-wrap { margin-top:var(--space-6); } }
@media (max-width:1199px) { .calendar-table-wrap { overflow:hidden; }.calendar-table { min-width:0; }.calendar-table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; }.calendar-table,.calendar-table tbody { display:block; }.calendar-table tbody tr { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-areas:"program status" "period slot"; gap:var(--space-4) var(--space-6); height:auto; padding:var(--space-5); border-bottom:1px solid var(--neutral-line); }.calendar-table tbody tr:last-child { border-bottom:0; }.calendar-table tbody th,.calendar-table tbody td { min-width:0; padding:0; border:0; }.calendar-table tbody th { grid-area:program; align-self:center; }.calendar-table tbody td:nth-child(2) { grid-area:period; }.calendar-table tbody td:nth-child(3) { grid-area:slot; }.calendar-table tbody td:nth-child(4) { grid-area:status; align-self:center; justify-self:start; }.calendar-table tbody td:nth-child(2)::before,.calendar-table tbody td:nth-child(3)::before { display:block; margin-bottom:var(--space-1); color:var(--muted); font:700 11px/1.2 var(--heading); letter-spacing:.08em; text-transform:uppercase; }.calendar-table tbody td:nth-child(2)::before { content:"Период"; }.calendar-table tbody td:nth-child(3)::before { content:"Редовен слот"; } }
@media (max-width:599px) { .calendar-table tbody tr { grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"program status" "period period" "slot slot"; gap:var(--space-3); }.calendar-table tbody td:nth-child(4) { align-self:center; }.calendar-table tbody td:nth-child(2),.calendar-table tbody td:nth-child(3) { font-size:15px; } }
.menu-toggle { display:none; }
.site-header { background:rgba(253,252,250,.96); box-shadow:0 1px 0 rgba(20,32,58,.03); }
.atlas-hero { background:linear-gradient(116deg,rgba(226,246,248,.88) 0%,rgba(253,252,250,.95) 48%,rgba(248,239,246,.82) 100%); border-bottom:1px solid var(--line); }
.glow--hero { background:radial-gradient(ellipse 720px 430px at 93% 100%,rgba(0,188,196,.2),transparent 69%),radial-gradient(ellipse 620px 400px at 0% 100%,rgba(143,90,134,.2),transparent 70%); }
.hero-main { padding-block:var(--space-4); }.hero-key { border:1px solid rgba(0,118,128,.18); border-top:4px solid var(--turquoise); box-shadow:0 16px 30px -24px rgba(16,26,48,.45); }
.atlas { border-top:1px solid rgba(0,118,128,.09); }.calendar { background:#f1ede5; border-top:1px solid rgba(185,138,113,.2); }.training { border-top-color:#e7e1d8; }
@media (max-width:767px) { .header__inner { position:relative; min-height:68px; }.site-header nav { display:none; }.site-header nav a:not(:last-child),.site-header nav a:last-child { display:flex; max-width:none; min-height:48px; text-align:left; }.menu-toggle { width:44px; height:44px; display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); padding:0; border:1px solid var(--line); border-radius:var(--control); color:var(--ink); background:var(--white); cursor:pointer; }.menu-toggle__label { font:700 12px/1 var(--heading); }.menu-toggle__icon { width:16px; display:grid; gap:3px; }.menu-toggle__icon i { display:block; height:2px; border-radius:2px; background:currentColor; transition:transform 160ms ease,opacity 160ms ease; }.site-header[data-menu-open="true"] .menu-toggle__icon i:first-child { transform:translateY(5px) rotate(45deg); }.site-header[data-menu-open="true"] .menu-toggle__icon i:nth-child(2) { opacity:0; }.site-header[data-menu-open="true"] .menu-toggle__icon i:last-child { transform:translateY(-5px) rotate(-45deg); }.site-header[data-menu-open="true"] nav { position:absolute; z-index:5; top:100%; right:0; left:0; display:flex; flex-direction:column; gap:0; padding:var(--space-3) var(--space-5) var(--space-4); border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--warm-white); box-shadow:0 18px 28px -24px rgba(16,26,48,.45); }.site-header[data-menu-open="true"] nav a { padding-inline:0; border-bottom:1px solid var(--line); }.site-header[data-menu-open="true"] nav a:last-child { border-bottom:0; color:var(--teal); }.atlas-hero { padding-top:var(--space-7); background:linear-gradient(148deg,rgba(226,246,248,.95),var(--warm-white) 55%,rgba(248,239,246,.88)); }.hero-main { padding-block:0; }.hero-key { margin-top:var(--space-2); background:rgba(255,255,255,.82); } }
.site-header { background:var(--warm-white); box-shadow:none; }
.atlas-hero { background:var(--white); border-bottom:1px solid var(--line); }
.glow--hero { display:none; }
.hero-main { padding:0 0 0 var(--space-5); border-left:4px solid var(--turquoise); }
.hero-key { border:0; border-top:4px solid var(--turquoise); background:var(--navy); box-shadow:0 18px 34px -22px rgba(16,26,48,.55); }
.hero-key__number { color:var(--turquoise-bright); }.hero-key p { color:var(--on-dark); }.hero-key a { color:var(--turquoise-bright); }
.atlas { border-top:0; }.calendar { background:var(--ground); border-top:0; }.training { border-top-color:var(--warm-white); }
@media (max-width:767px) { .atlas-hero { padding-top:var(--space-7); background:var(--white); }.hero-main { padding:0 0 0 var(--space-4); }.hero-key { margin-top:var(--space-2); background:var(--navy); } }
.hero-main { padding:var(--space-4) 0; border-left:0; }
.hero-key { border:1px solid rgba(0,118,128,.18); border-top:4px solid var(--turquoise); background:var(--ground); box-shadow:0 16px 30px -24px rgba(16,26,48,.45); }
.hero-key__number { color:var(--teal); }.hero-key p { color:var(--muted); }.hero-key a { color:var(--teal); }
@media (max-width:767px) { .hero-main { padding-block:0; }.hero-key { background:rgba(255,255,255,.82); } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:1ms!important; transition-duration:1ms!important; } }
