/* Gazon Markazi — презентация компании. Палитра: бумага / тёмно-зелёный + один акцент (трава). Размеры — в единицах слайда 1920×1080 (--u). */
@font-face{font-family:U;src:url(../fonts/Unbounded-cyrillic.woff2) format('woff2');font-weight:200 900;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:U;src:url(../fonts/Unbounded-latin.woff2) format('woff2');font-weight:200 900;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}
@font-face{font-family:M;src:url(../fonts/Manrope-cyrillic.woff2) format('woff2');font-weight:200 800;font-display:swap;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:M;src:url(../fonts/Manrope-latin.woff2) format('woff2');font-weight:200 800;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2212}

:root{
  --paper:#f1eee6; --ink:#14251b; --dark:#12241a; --cream:#efece3;
  --accent:#7cb342;                     /* один акцент — цвет свежей травы */
  --u:calc(min(100vw, 100svh * 16 / 9) / 1920);
  --ease:cubic-bezier(.2,.7,.1,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--dark);color:var(--ink);font-family:M,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
.deck{height:100svh;overflow-y:auto;scroll-snap-type:y mandatory;overscroll-behavior:none;scrollbar-width:none}
.deck::-webkit-scrollbar{display:none}
.slide{position:relative;height:100svh;scroll-snap-align:start;scroll-snap-stop:always;overflow:hidden;display:grid;place-items:center;background:var(--paper);--fg:var(--ink);--mute:rgba(20,37,27,.6);--line:rgba(20,37,27,.18)}
.slide.dk{background:var(--dark);--fg:var(--cream);--mute:rgba(239,236,227,.6);--line:rgba(239,236,227,.18)}
.frame{position:relative;width:calc(1920 * var(--u));height:calc(1080 * var(--u));color:var(--fg);font-size:calc(26 * var(--u));line-height:1.45;padding:calc(120 * var(--u)) calc(100 * var(--u)) calc(110 * var(--u))}
html.js:not(.print):not(.rm) [data-a]{opacity:0}

/* рамка: бренд · номер · девиз и телефон */
.chrome{position:absolute;inset:calc(48 * var(--u)) calc(100 * var(--u));pointer-events:none;z-index:5;display:grid;grid-template:auto 1fr auto/1fr auto;font:700 calc(15 * var(--u))/1 M;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.chrome .num{grid-column:2;color:var(--fg)}
.chrome .num b{color:var(--accent)}
.chrome .sign{grid-row:3;grid-column:1/3;display:flex;justify-content:space-between}
.progress{position:fixed;left:0;bottom:0;height:3px;background:var(--accent);width:0;z-index:9;transition:width .5s var(--ease)}

/* типографика */
.kicker{font:700 calc(18 * var(--u))/1.2 M;letter-spacing:.2em;text-transform:uppercase;color:var(--accent)}
.h{font:700 calc(84 * var(--u))/1 U;letter-spacing:-.02em;text-transform:uppercase}
.h2{font:600 calc(56 * var(--u))/1.08 U;letter-spacing:-.015em}
.lead{font:500 calc(34 * var(--u))/1.3 M;letter-spacing:-.005em}
.txt p+p{margin-top:.7em}
.mute{color:var(--mute)}
.list{list-style:none;border-top:1px solid var(--line)}
.list li{padding:.55em 0;border-bottom:1px solid var(--line)}
.ph{position:relative;overflow:hidden;background:#0002}
.ph img{width:100%;height:100%;object-fit:cover}

/* 1. обложка и контакты: кадр во весь экран */
.full .bg{position:absolute;inset:0;z-index:0}
.full .bg img{width:100%;height:100%;object-fit:cover}
.full .bg::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,28,20,.94) 0%,rgba(14,28,20,.78) 38%,rgba(14,28,20,.1) 72%)}
.full .frame{z-index:1;display:flex;flex-direction:column;justify-content:flex-end;gap:calc(34 * var(--u))}
.cover .name{font:800 calc(150 * var(--u))/.92 U;letter-spacing:-.03em;text-transform:uppercase}
.cover .name span{display:block}
.cover .motto{font:500 calc(52 * var(--u))/1.1 M;color:var(--accent)}
.facts{display:flex;gap:calc(64 * var(--u));border-top:1px solid var(--line);padding-top:calc(28 * var(--u));max-width:calc(1050 * var(--u))}
.facts b{display:block;font:700 calc(54 * var(--u))/1 U;color:var(--fg);margin-bottom:calc(10 * var(--u))}
.facts div{color:var(--mute);font-size:calc(22 * var(--u));line-height:1.3}

/* 2. текст слева, фото справа */
.split .frame{display:grid;grid-template-columns:calc(780 * var(--u)) 1fr;gap:calc(90 * var(--u));align-items:center}
.split .txt{display:flex;flex-direction:column;gap:calc(30 * var(--u))}
.split .ph{height:calc(780 * var(--u))}

/* 3. «всё своё»: таблица направлений + столбик фото */
.own .frame{display:grid;grid-template-columns:1fr calc(520 * var(--u));gap:calc(90 * var(--u));align-items:center}
.rows{border-top:1px solid var(--line);margin-top:calc(40 * var(--u))}
.rows div{display:grid;grid-template-columns:calc(450 * var(--u)) 1fr;gap:calc(30 * var(--u));padding:calc(19 * var(--u)) 0;border-bottom:1px solid var(--line);font-size:calc(23 * var(--u));line-height:1.4}
.rows b{font:600 calc(25 * var(--u))/1.25 U;color:var(--fg)}
.rows span{color:var(--mute)}
.stack{display:grid;gap:calc(16 * var(--u));grid-template-rows:repeat(3,calc(255 * var(--u)))}

/* 4. для кого */
.who .frame{display:grid;grid-template-columns:1fr calc(700 * var(--u));gap:calc(90 * var(--u));align-items:center}
.big{list-style:none;margin-top:calc(36 * var(--u));border-top:1px solid var(--line)}
.big li{font:600 calc(46 * var(--u))/1.1 U;padding:calc(20 * var(--u)) 0;border-bottom:1px solid var(--line);display:flex;gap:calc(30 * var(--u));align-items:baseline}
.big li i{font:700 calc(18 * var(--u))/1 M;font-style:normal;color:var(--accent);letter-spacing:.1em;width:calc(40 * var(--u))}
.who aside .ph{height:calc(430 * var(--u));margin-bottom:calc(30 * var(--u))}
.who aside p{font-size:calc(22 * var(--u));line-height:1.45}

/* 5. оглавление направлений */
.index .frame{display:grid;grid-template-rows:auto 1fr;gap:calc(50 * var(--u))}
.toc{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-flow:column;grid-template-rows:repeat(5,auto);column-gap:calc(70 * var(--u));border-top:1px solid var(--line);align-self:start}
.toc a{display:flex;gap:calc(24 * var(--u));align-items:baseline;padding:calc(21 * var(--u)) 0;border-bottom:1px solid var(--line);color:var(--fg);text-decoration:none;font:600 calc(32 * var(--u))/1.15 U}
.toc a i{font:700 calc(18 * var(--u))/1 M;font-style:normal;color:var(--accent);width:calc(36 * var(--u));flex:none}
.toc a small{margin-left:auto;font:600 calc(16 * var(--u))/1 M;color:var(--mute);letter-spacing:.08em}

/* 6. раздел: слово, текст и мозаика из 3–4 фото */
.sec .frame{display:grid;grid-template-columns:calc(640 * var(--u)) 1fr;gap:calc(70 * var(--u))}
.sec .txt{display:flex;flex-direction:column;justify-content:center;gap:calc(28 * var(--u))}
.sec .n{font:700 calc(20 * var(--u))/1 M;letter-spacing:.2em;color:var(--accent)}
.sec .h{font-size:calc(var(--hs,78) * var(--u));overflow-wrap:normal}
.sec .lead{font-size:calc(29 * var(--u))}
.sec .list{font-size:calc(22 * var(--u));line-height:1.35;color:var(--mute)}
.sec .list li{padding:.5em 0}
.mos{display:grid;gap:calc(16 * var(--u));height:calc(850 * var(--u))}
.m3{grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr}
.m3 .ph:first-child{grid-row:1/3}
.m4{grid-template-columns:1.3fr 1fr;grid-template-rows:1fr 1fr}
.m4b{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}
.m5{grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:1fr 1fr}
.m5 .ph:first-child{grid-row:1/3}
.cap{position:absolute;left:calc(14 * var(--u));bottom:calc(12 * var(--u));font:700 calc(14 * var(--u))/1 M;letter-spacing:.14em;text-transform:uppercase;color:#fff;background:rgba(14,28,20,.62);padding:.5em .7em}

/* 7. как работаем */
.steps{display:grid;grid-template-columns:repeat(5,1fr);gap:calc(28 * var(--u));margin-top:calc(70 * var(--u))}
.steps div{border-top:calc(4 * var(--u)) solid var(--accent);padding-top:calc(28 * var(--u))}
.steps i{display:block;font:700 calc(64 * var(--u))/1 U;font-style:normal;color:var(--accent);margin-bottom:calc(26 * var(--u))}
.steps b{display:block;font:600 calc(30 * var(--u))/1.15 U;margin-bottom:calc(16 * var(--u))}
.steps span{display:block;font-size:calc(22 * var(--u));line-height:1.4;color:var(--mute)}
.proc .ph{height:calc(330 * var(--u))}
.proc .row3{margin-top:calc(44 * var(--u))}
.proc .row3{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(16 * var(--u))}

/* 8. люди */
.people .frame{display:grid;grid-template-columns:1.15fr 1fr;gap:calc(90 * var(--u));align-content:center;align-items:start}
.ppl{list-style:none;border-top:1px solid var(--line);margin-top:calc(34 * var(--u))}
.ppl li{padding:calc(22 * var(--u)) 0;border-bottom:1px solid var(--line);font-size:calc(22 * var(--u));line-height:1.35;color:var(--mute)}
.ppl b{display:block;font:600 calc(28 * var(--u))/1.2 U;color:var(--fg);margin-bottom:calc(6 * var(--u))}

/* 9. контакты */
.contacts .frame{justify-content:center}
.ct{display:grid;grid-template-columns:repeat(3,auto);justify-content:start;column-gap:calc(80 * var(--u));row-gap:calc(30 * var(--u));margin-top:calc(20 * var(--u))}
.ct div{font-size:calc(20 * var(--u));color:var(--mute);letter-spacing:.06em;text-transform:uppercase;font-weight:700}
.ct a{display:block;font:600 calc(34 * var(--u))/1.2 U;color:var(--fg);text-decoration:none;text-transform:none;letter-spacing:0;margin-top:calc(10 * var(--u))}
.ct a:hover{color:var(--accent)}
.contacts .bg::after{background:linear-gradient(90deg,rgba(14,28,20,.95) 0%,rgba(14,28,20,.86) 55%,rgba(14,28,20,.35) 85%,rgba(14,28,20,.15) 100%)}

/* телефон и узкое окно: слайд по высоте содержимого, всё стопкой */
@media (max-aspect-ratio:1/1){
  :root{--u:calc(100vw / 760)}
  .deck{scroll-snap-type:none}
  .slide{height:auto;min-height:100svh;place-items:stretch}
  .frame{width:100%;height:auto;padding:calc(110 * var(--u)) calc(44 * var(--u)) calc(120 * var(--u));font-size:calc(30 * var(--u))}
  .chrome{inset:calc(40 * var(--u)) calc(44 * var(--u));font-size:calc(17 * var(--u))}
  .split .frame,.own .frame,.who .frame,.sec .frame,.people .frame{grid-template-columns:1fr;gap:calc(50 * var(--u))}
  .split .ph{height:calc(560 * var(--u))}
  .full{min-height:100svh}
  .full .bg::after{background:linear-gradient(0deg,rgba(14,28,20,.96) 0%,rgba(14,28,20,.8) 50%,rgba(14,28,20,.2) 100%)}
  .full .frame{min-height:100svh}
  .cover .name{font-size:calc(104 * var(--u))}
  .facts{flex-wrap:wrap;gap:calc(36 * var(--u))}
  .facts b{font-size:calc(50 * var(--u))}
  .facts div{font-size:calc(24 * var(--u))}
  .h{font-size:calc(66 * var(--u))}
  .sec .h{font-size:calc(var(--hm,64) * var(--u))}
  .lead,.sec .lead{font-size:calc(34 * var(--u))}
  .sec .list,.rows div,.who aside p,.ppl li,.steps span{font-size:calc(26 * var(--u))}
  .rows div{grid-template-columns:1fr;gap:calc(8 * var(--u))}
  .rows b{font-size:calc(30 * var(--u))}
  .stack{grid-template-rows:none;grid-template-columns:repeat(3,1fr);height:calc(260 * var(--u))}
  .mos{height:auto;grid-template-columns:1fr 1fr;grid-template-rows:none;grid-auto-rows:calc(300 * var(--u))}
  .mos .ph:first-child{grid-column:1/3;grid-row:auto;height:calc(470 * var(--u))}
  .toc{grid-template-columns:1fr;grid-auto-flow:row;grid-template-rows:none}
  .toc a{font-size:calc(32 * var(--u))}
  .big li{font-size:calc(40 * var(--u))}
  .steps{grid-template-columns:1fr;gap:calc(40 * var(--u));margin-top:calc(40 * var(--u))}
  .proc .row3{grid-template-columns:1fr 1fr}
  .proc .row3 .ph:first-child{grid-column:1/3}
  .proc .ph{height:calc(300 * var(--u))}
  .ct{grid-template-columns:1fr}
  .ct a{font-size:calc(36 * var(--u))}
  .cap{font-size:calc(17 * var(--u))}
}

/* печать / PDF: 1 слайд = 1 лист 1920×1080 */
@page{size:1920px 1080px;margin:0}
html.print{--u:1px}
html.print .deck{height:auto;overflow:visible;scroll-snap-type:none}
html.print .slide{width:1920px;height:1080px;break-after:page;page-break-after:always}
html.print .slide:last-child{break-after:auto;page-break-after:auto}
html.print .progress{display:none}
html.export .deck{scroll-snap-type:none;scroll-behavior:auto}
@media (prefers-reduced-motion:reduce){.progress{transition:none}}
