/* ==========================================================================
   Кампус Лейос — дизайн-токены колоды
   Источник: титульный слайд (slide 01). Три слоя: primitive → semantic → component.
   Правило: в разметке и компонентах — только var(), никаких сырых hex/px-магии.
   ========================================================================== */

/* ---------- шрифт ---------- */
@font-face{font-family:Navigo;src:url("../fonts/Navigo-Regular-Desktop.otf") format("opentype");font-weight:400;font-style:normal;font-display:block}
@font-face{font-family:Navigo;src:url("../fonts/Navigo-Medium-Desktop.otf")  format("opentype");font-weight:500;font-style:normal;font-display:block}
@font-face{font-family:Navigo;src:url("../fonts/Navigo-Bold-Desktop.otf")    format("opentype");font-weight:700;font-style:normal;font-display:block}
@font-face{font-family:Navigo;src:url("../fonts/Navigo-Black-Desktop.otf")   format("opentype");font-weight:900;font-style:normal;font-display:block}

:root{

  /* =======================================================================
     1. PRIMITIVE — сырые значения. Нигде не используются напрямую.
     ======================================================================= */

  /* цвет */
  --color-green-100:#D6F7E4;
  --color-green-300:#6FE3A2;
  --color-green-500:#09C75E;   /* знак «Кампус» */
  --color-green-600:#07A94F;
  --color-green-700:#05803C;
  --color-ink-900:#0A0A0A;     /* полотно титула */
  --color-ink-800:#16181C;
  --color-ink-700:#24272C;
  --color-ink-500:#5A6068;
  --color-ink-300:#9AA0A8;
  --color-ink-100:#E3E7EC;
  --color-ink-050:#F4F6F9;
  --color-white:#FFFFFF;
  --color-amber-500:#FFC700;   /* только ценовые плашки */
  --color-backdrop:#101216;    /* фон вокруг сцены */
  --alpha-white-70:rgba(255,255,255,.70);
  --alpha-white-40:rgba(255,255,255,.40);
  --alpha-white-12:rgba(255,255,255,.12);
  --alpha-ink-60:rgba(10,10,10,.60);

  /* шрифт */
  --font-navigo:Navigo,-apple-system,system-ui,"Helvetica Neue",sans-serif;
  --weight-regular:400;
  --weight-medium:500;
  --weight-bold:700;
  --weight-black:900;

  /* кегль — модульная шкала ratio 1.28, база 16 */
  --size-12:12px;
  --size-13:13px;
  --size-16:16px;
  --size-20:20px;
  --size-21:21px;
  --size-27:27px;
  --size-29:29px;   /* подзаголовок титула */
  --size-34:34px;
  --size-44:44px;
  --size-56:56px;
  --size-64:64px;   /* заголовок контентного слайда */
  --size-72:72px;
  --size-92:92px;
  --size-118:118px;
  --size-150:150px; /* «ЛЕЙОС» */

  /* интерлиньяж / трекинг */
  --leading-display:.86;
  --leading-tight:1.06;
  --leading-snug:1.28;
  --leading-normal:1.5;
  --tracking-display:-.02em;
  --tracking-tight:-.01em;
  --tracking-normal:0em;
  --tracking-wide:.08em;

  /* отступы — база 4px */
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-6:24px;
  --space-8:32px;
  --space-11:44px;
  --space-14:56px;
  --space-18:72px;
  --space-19:76px;  /* поле титула */
  --space-26:104px;
  --space-35:140px;

  /* радиусы, тени, геометрия */
  --radius-none:0px;
  --radius-sm:8px;
  --radius-md:16px;
  --shadow-stage:0 30px 80px -30px rgba(0,0,0,.7);
  --shadow-card:0 12px 32px -18px rgba(10,10,10,.45);
  --wedge-top:57.5%;     /* диагональ: x сверху */
  --wedge-bottom:24.5%;  /* диагональ: x снизу  */

  /* =======================================================================
     2. SEMANTIC — назначение. Этим слоем пользуются компоненты.
     ======================================================================= */

  --bg-slide:var(--color-ink-900);
  --bg-slide-light:var(--color-white);
  --bg-surface:var(--color-ink-050);
  --bg-backdrop:var(--color-backdrop);

  --fg-on-dark:var(--color-white);
  --fg-on-dark-muted:var(--alpha-white-70);
  --fg-on-light:var(--color-ink-900);
  --fg-on-light-muted:var(--color-ink-500);

  --accent:var(--color-green-500);
  --accent-strong:var(--color-green-600);
  --accent-soft:var(--color-green-100);
  --accent-price:var(--color-amber-500);

  --line-on-dark:var(--alpha-white-12);
  --line-on-light:var(--color-ink-100);

  --font-heading:var(--font-navigo);
  --font-body:var(--font-navigo);

  --gutter:var(--space-19);
  --block-gap:var(--space-8);         /* воздух между шапкой слайда и бенто */
  --block-inner-gap:var(--space-4);   /* воздух внутри шапки: надзаголовок / заголовок / лид */

  /* =======================================================================
     3. COMPONENT — на что подписаны конкретные блоки слайдов.
     ======================================================================= */

  /* сцена / слайд */
  --slide-w:1280px;
  --slide-h:720px;
  --slide-bg:var(--bg-slide);
  --slide-shadow:var(--shadow-stage);
  --slide-pad-x:var(--gutter);
  --slide-pad-top:var(--space-14);
  --slide-pad-bottom:var(--space-14);

  /* титул */
  --cover-title-size:var(--size-150);
  --cover-title-weight:var(--weight-black);
  --cover-title-leading:var(--leading-display);
  --cover-title-top:74px;
  --cover-title-fill:var(--fg-on-dark);
  --cover-sub-size:var(--size-29);
  --cover-sub-weight:var(--weight-medium);
  --cover-sub-leading:var(--leading-snug);
  --cover-sub-top:340px;
  --cover-sub-measure:330px;
  --cover-logo-w:172px;
  --cover-logo-bottom:var(--space-18);
  --cover-wedge-fill:var(--bg-slide);
  --cover-photo-transform:translate(291px,0);
  --cover-photo-opacity:.8;

  /* заголовки контентных слайдов */
  --h1-size:var(--size-92);
  --h2-size:var(--size-64);
  --h3-size:var(--size-34);
  --eyebrow-size:var(--size-16);
  --eyebrow-tracking:var(--tracking-tight); /* без разрядки */
  --heading-weight:var(--weight-black);
  --heading-leading:var(--leading-tight);
  --heading-tracking:var(--tracking-display);

  /* текст */
  --lead-size:var(--size-27);
  --body-size:var(--size-21);
  --small-size:var(--size-16);
  --caption-size:var(--size-13);
  --text-leading:var(--leading-normal);

  /* бенто */
  --bento-gap:var(--space-6);          /* воздух между плитками */
  --tile-bg:var(--color-ink-800);
  --tile-bg-accent:#0F2B1B;              /* зелёный, приглушённый до фона слайда */
  --tile-pad:var(--space-8);
  --tile-radius:var(--radius-md);
  --tile-photo:url("../img/slide-01-cover.webp");
  --tile-photo-size:170%;
  --tile-photo-pos:34% 56%;
  --tile-scrim:rgba(10,10,10,.88);

  /* продукт + перечень */
  --split-gap:var(--space-8);
  --specs-size:var(--size-21);
  --specs-pad:var(--space-4);
  --specs-gap:var(--space-4);
  --specs-ic:28px;
  --media-glow:rgba(9,199,94,.22);      /* зелёное свечение под продуктом */
  --media-glow-soft:rgba(9,199,94,.09);
  --media-glow-spread:-34%;             /* насколько свет выходит за габарит фото */

  /* слайд «Навигатор · почему Кампус» */
  --feat-ic:42px;
  --navcover-img:url("../img/slide-06-navigator.webp");
  --navcover-pos:0% 20%;               /* виден навигатор на стойке слева */
  --nav-wedge-top:50%;                  /* чёрный блок справа: доля сверху */
  --nav-wedge-bottom:50%;
  --navinfo-left:58%;                   /* правее диагонали — контент всегда на чёрном */
  --badge-top:250px;
  --badge-left:var(--gutter);
  --badge-star:url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMyIiBoZWlnaHQ9IjEyNyIgdmlld0JveD0iMCAwIDEzMiAxMjciIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQyLjE5NjcgMTIzLjY5M0wzMy4yMzE4IDEwOC41MjlMMTYuMjI5NSAxMDQuODE2QzE0LjY4MzggMTA0LjUwNyAxMy40NDczIDEwMy43MDcgMTIuNTE5OSAxMDIuNDE4QzExLjU5MjUgMTAxLjEyOCAxMS4yMzE5IDk5LjcxMDEgMTEuNDM3OSA5OC4xNjI4TDEzLjEzODIgODAuNjc4N0wxLjU0NTY3IDY3LjM3MjNDMC41MTUyMjIgNjYuMjM3NiAwIDY0Ljg5NjcgMCA2My4zNDk0QzAgNjEuODAyMSAwLjUxNTIyMiA2MC40NjEyIDEuNTQ1NjcgNTkuMzI2NUwxMy4xMzgyIDQ2LjAyTDExLjQzNzkgMjguNTM2QzExLjIzMTkgMjYuOTg4NyAxMS41OTI1IDI1LjU3MDQgMTIuNTE5OSAyNC4yODFDMTMuNDQ3MyAyMi45OTE2IDE0LjY4MzggMjIuMTkyMiAxNi4yMjk1IDIxLjg4MjdMMzMuMjMxOCAxOC4xNjkzTDQyLjE5NjcgMy4wMDYxMUM0My4wMjExIDEuNjY1MTUgNDQuMTU0NiAwLjc2MjU4IDQ1LjU5NzIgMC4yOTg0MDFDNDcuMDM5OCAtMC4xNjU3NzggNDguNDgyNCAtMC4wODg0MTUxIDQ5LjkyNTEgMC41MzA0OUw2NiA3LjMzODQ1TDgyLjA3NDkgMC41MzA0OUM4My41MTc2IC0wLjA4ODQxNTEgODQuOTYwMiAtMC4xNjU3NzggODYuNDAyOCAwLjI5ODQwMUM4Ny44NDU0IDAuNzYyNTggODguOTc4OSAxLjY2NTE1IDg5LjgwMzMgMy4wMDYxMUw5OC43NjgyIDE4LjE2OTNMMTE1Ljc3IDIxLjg4MjdDMTE3LjMxNiAyMi4xOTIyIDExOC41NTMgMjIuOTkxNiAxMTkuNDggMjQuMjgxQzEyMC40MDcgMjUuNTcwNCAxMjAuNzY4IDI2Ljk4ODcgMTIwLjU2MiAyOC41MzZMMTE4Ljg2MiA0Ni4wMkwxMzAuNDU0IDU5LjMyNjVDMTMxLjQ4NSA2MC40NjEyIDEzMiA2MS44MDIxIDEzMiA2My4zNDk0QzEzMiA2NC44OTY3IDEzMS40ODUgNjYuMjM3NiAxMzAuNDU0IDY3LjM3MjNMMTE4Ljg2MiA4MC42Nzg3TDEyMC41NjIgOTguMTYyOEMxMjAuNzY4IDk5LjcxMDEgMTIwLjQwNyAxMDEuMTI4IDExOS40OCAxMDIuNDE4QzExOC41NTMgMTAzLjcwNyAxMTcuMzE2IDEwNC41MDcgMTE1Ljc3IDEwNC44MTZMOTguNzY4MiAxMDguNTI5TDg5LjgwMzMgMTIzLjY5M0M4OC45Nzg5IDEyNS4wMzQgODcuODQ1NCAxMjUuOTM2IDg2LjQwMjggMTI2LjRDODQuOTYwMiAxMjYuODY1IDgzLjUxNzYgMTI2Ljc4NyA4Mi4wNzQ5IDEyNi4xNjhMNjYgMTE5LjM2TDQ5LjkyNTEgMTI2LjE2OEM0OC40ODI0IDEyNi43ODcgNDcuMDM5OCAxMjYuODY1IDQ1LjU5NzIgMTI2LjRDNDQuMTU0NiAxMjUuOTM2IDQzLjAyMTEgMTI1LjAzNCA0Mi4xOTY3IDEyMy42OTNaIiBmaWxsPSIjMDM0RkY4Ii8+PC9zdmc+Cg==");
  --badge-w:120px;
  --badge-h:115px;
  --navinfo-bottom:150px;               /* чистая полоса под пилюлю */

  /* слайд «точность навигатора» */
  --acc-img:url("../img/antenna-field.webp");
  --acc-size:110% auto;                 /* зум по ширине → горизонтальный сдвиг работает */
  --acc-pos:-17% 50%;                   /* антенна по центру видимой полосы */
  --acc-seam-top:62%;                   /* фото уже */
  --acc-seam-bottom:58%;
  --acc-info-w:50%;
  --accsig-h:56px;
  --sig-ghost:var(--color-ink-700);
  --sig-weak:#4C6FE0;
  --sig-strong:var(--accent);

  /* слайд «влагомер зерна» */
  --moist-img:url("../img/moisture-meter.webp");
  --moist-size:auto 108%;              /* по высоте — прибор целиком */
  --moist-pos:110% 50%;
  --moist-seam-top:54%;
  --moist-seam-bottom:50%;
  --moist-info-w:44%;

  /* слайд «собственное производство» */
  --prod-img:url("../img/slide-07-production.webp");
  --prod-size:100% 100%;                 /* взрыв-схема по высоте */
  --prod-pos:62% 50%;                   /* стопка компонентов в правой зоне */
  --prod-seam-top:50%;                  /* чёрный блок слева: доля сверху */
  --prod-seam-bottom:50%;
  --prod-info-w:34%;

  /* слайд «комбайн» */
  --harvest-wedge-top:48%;              /* положе, чем титул: почти вертикаль */
  --harvest-wedge-bottom:38%;
  --harvest-photo:url("../img/combine-field.webp");
  --harvest-photo-size:auto 100%;      /* без увеличения: изображение целиком по высоте */
  --harvest-photo-pos:100% 50%;        /* прижато к правому краю */
  --harvest-title-top:50px;
  --harvest-kit-x:78px;
  --harvest-kit-y:54%;
  --harvest-kit-w:55%;

  /* пилюля: сайт + номер (два отдельных чёрных пилюля, единый блок на всех слайдах) */
  --pill-bg:var(--color-ink-900);
  --pill-fg:var(--color-white);
  --pill-size:var(--size-12);
  --pill-h:33px;
  --pill-pad-x:var(--space-4);        /* внутренний отступ пилюли-сайта */
  --pill-gap:var(--space-3);          /* зазор между сайтом и номером */
  --pill-num:33px;                    /* мин. ширина плашки-номера */
  --pill-num-pad:var(--space-3);
  --pill-right:var(--space-8);
  --pill-bottom:var(--space-8);

  /* подвал */
  --footer-size:var(--caption-size);
  --footer-fg:var(--color-ink-300);
  --footer-bottom:var(--space-6);
}

/* Светлый слайд: тот же набор семантики, перевёрнутые значения.
   Ставится классом на .slide — компоненты не переписываются. */
.slide--light{
  --slide-bg:var(--bg-slide-light);
  --fg-on-dark:var(--fg-on-light);
  --fg-on-dark-muted:var(--fg-on-light-muted);
  --line-on-dark:var(--line-on-light);
}
