/* Original user-supplied template styles; local font and approved brand accent. */

  
  :root{
    --bg:#0c0c0d; --bg2:#111113; --ink:#f2f0ec; --mut:#9a978f;
    --line:#26262a; --acc:#B6DACB;
    --sans:var(--font-text);
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{background:var(--bg);color:var(--ink);font-family:var(--sans);
       font-variation-settings:'wdth' 100;overflow-x:hidden;-webkit-font-smoothing:antialiased}
  ::selection{background:var(--acc);color:#0c0c0d}

  /* ---------- прогресс ---------- */
  #progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--acc);z-index:100}

  /* ---------- шапка ---------- */
  header{position:fixed;top:0;left:0;right:0;z-index:90;display:flex;justify-content:space-between;
         align-items:center;padding:22px 4vw;mix-blend-mode:difference}
  .logo-link{display:flex;align-items:center;text-decoration:none}
  .logo-img{height:22px;width:auto;transition:opacity .3s}
  .logo-link:hover .logo-img{opacity:.75}
  .nav{display:flex;gap:28px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#cfcbc2}
  .nav a{color:inherit;text-decoration:none;transition:color .3s}
  .nav a:hover{color:var(--acc)}
  @media(max-width:720px){.nav{display:none}}

  /* ---------- hero ---------- */
  .hero{position:relative;height:100vh;overflow:hidden}
  .hero-img{position:absolute;inset:-12% 0;width:100%;height:124%;object-fit:cover;
            will-change:transform;filter:brightness(.72) contrast(1.05)}
  .hero-shade{position:absolute;inset:0;background:
      linear-gradient(180deg,rgba(12,12,13,.55) 0%,rgba(12,12,13,.15) 40%,rgba(12,12,13,.92) 100%)}
  .hero-in{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;
           justify-content:flex-end;padding:0 4vw 9vh}
  .kicker{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--acc);margin-bottom:18px}
  h1{font-size:clamp(44px,9vw,124px);line-height:.95;font-weight:800;
     font-variation-settings:'wdth' 75;letter-spacing:-.01em;text-transform:uppercase}
  h1 .thin{font-weight:200;color:var(--mut)}
  .hero-sub{margin-top:26px;max-width:520px;font-size:clamp(15px,1.4vw,19px);line-height:1.55;color:#d8d5cd}
  .hero-cta{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap}
  .btn{display:inline-block;padding:16px 34px;font-size:13px;letter-spacing:.16em;text-transform:uppercase;
       text-decoration:none;transition:.35s cubic-bezier(.2,.8,.2,1);cursor:pointer;border:1px solid transparent}
  .btn-fill{background:var(--ink);color:#0c0c0d;font-weight:700}
  .btn-fill:hover{background:var(--acc)}
  .btn-ghost{border-color:#4a4a4f;color:var(--ink)}
  .btn-ghost:hover{border-color:var(--acc);color:var(--acc)}
  .scroll-hint{position:absolute;right:4vw;bottom:9vh;z-index:2;font-size:11px;letter-spacing:.24em;
               text-transform:uppercase;color:var(--mut);writing-mode:vertical-rl;
               animation:hint 2.4s ease-in-out infinite}
  @keyframes hint{0%,100%{transform:translateY(0)}50%{transform:translateY(12px)}}
  @media(max-width:720px){.scroll-hint{display:none}}

  /* ---------- манифест (слова проявляются от скролла) ---------- */
  .manifest{padding:22vh 6vw;max-width:1100px;margin:0 auto}
  .manifest p{font-size:clamp(26px,4.2vw,54px);line-height:1.28;font-weight:600;
              font-variation-settings:'wdth' 90}
  .w{opacity:.12;transition:opacity .5s linear}
  .w.on{opacity:1}
  .w.acc{color:var(--acc)}

  /* ---------- горизонтальная галерея ---------- */
  .hwrap{position:relative;height:340vh}
  .hsticky{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;align-items:center}
  .htrack{display:flex;gap:5vw;padding:0 6vw;will-change:transform}
  .hpanel{flex:0 0 auto;width:62vw;max-width:900px}
  @media(max-width:720px){.hpanel{width:84vw}}
  .hpanel figure{position:relative;overflow:hidden;height:64vh;border-radius:4px}
  .hpanel img{width:100%;height:118%;object-fit:cover;will-change:transform;
              filter:brightness(.85)}
  .hpanel figcaption{display:flex;justify-content:space-between;margin-top:16px;
                     font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
  .hpanel figcaption b{color:var(--ink);font-weight:600}

  /* ---------- состав ---------- */
  .spec{padding:16vh 6vw;max-width:1200px;margin:0 auto}
  .sec-head{display:flex;align-items:baseline;gap:24px;margin-bottom:8vh;flex-wrap:wrap}
  .sec-num{font-size:13px;letter-spacing:.26em;color:var(--acc)}
  h2{font-size:clamp(30px,4.6vw,58px);font-weight:800;font-variation-settings:'wdth' 80;
     text-transform:uppercase;letter-spacing:-.01em}
  .rows{border-top:1px solid var(--line)}
  .row{display:grid;grid-template-columns:64px 1fr auto;gap:24px;align-items:center;
       padding:30px 0;border-bottom:1px solid var(--line);
       opacity:0;transform:translateY(36px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
  .row.vis{opacity:1;transform:none}
  .row .idx{font-size:12px;color:var(--mut);letter-spacing:.2em}
  .row .name{font-size:clamp(18px,2.2vw,26px);font-weight:600}
  .row .opt{font-size:13px;color:var(--mut);text-align:right;letter-spacing:.06em}
  .row:hover .name{color:var(--acc);transition:color .3s}
  @media(max-width:720px){.row{grid-template-columns:40px 1fr}.row .opt{display:none}}

  /* ---------- процесс ---------- */
  .process{background:var(--bg2);padding:16vh 6vw}
  .steps{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(5,1fr);gap:2px}
  .step{background:var(--bg);padding:34px 22px;min-height:230px;display:flex;flex-direction:column;
        justify-content:space-between;opacity:0;transform:translateY(40px);
        transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
  .step.vis{opacity:1;transform:none}
  .step:nth-child(2){transition-delay:.08s}.step:nth-child(3){transition-delay:.16s}
  .step:nth-child(4){transition-delay:.24s}.step:nth-child(5){transition-delay:.32s}
  .step .sn{font-size:12px;color:var(--acc);letter-spacing:.24em}
  .step .st{font-size:clamp(16px,1.6vw,21px);font-weight:700;text-transform:uppercase;
            font-variation-settings:'wdth' 85;margin-top:40px}
  .step .sd{font-size:13px;color:var(--mut);line-height:1.5;margin-top:10px}
  @media(max-width:960px){.steps{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.steps{grid-template-columns:1fr}}

  /* ---------- деталь ---------- */
  .detail{display:grid;grid-template-columns:1fr 1fr;min-height:88vh}
  .detail figure{overflow:hidden}
  .detail img{width:100%;height:116%;object-fit:cover;will-change:transform;filter:brightness(.9)}
  .detail .txt{padding:12vh 6vw;display:flex;flex-direction:column;justify-content:center}
  .detail .txt p{margin-top:24px;color:#c9c6be;line-height:1.65;max-width:440px}
  .stats{display:flex;gap:48px;margin-top:6vh;flex-wrap:wrap}
  .stat b{font-size:clamp(30px,3.6vw,48px);font-weight:800;font-variation-settings:'wdth' 80}
  .stat b i{color:var(--acc);font-style:normal}
  .stat span{display:block;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--mut);margin-top:6px}
  @media(max-width:860px){.detail{grid-template-columns:1fr}.detail figure{height:52vh}}

  /* ---------- медиа ---------- */
  .media{padding:16vh 6vw;max-width:1200px;margin:0 auto}
  .posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .post{position:relative;overflow:hidden;border-radius:6px;aspect-ratio:3/4;opacity:0;transform:translateY(40px);
        transition:opacity .8s ease,transform .8s cubic-bezier(.2,.8,.2,1)}
  .post.vis{opacity:1;transform:none}
  .post:nth-child(2){transition-delay:.1s}.post:nth-child(3){transition-delay:.2s}
  .post img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
  .post:hover img{transform:scale(1.07)}
  .post .cap{position:absolute;left:0;right:0;bottom:0;padding:44px 18px 16px;
             background:linear-gradient(transparent,rgba(0,0,0,.8));font-size:11px;
             letter-spacing:.18em;text-transform:uppercase;color:#ddd9d0}
  .post .cap b{display:block;color:var(--acc);margin-bottom:4px;font-weight:600}
  @media(max-width:720px){.posts{grid-template-columns:1fr 1fr}}

  /* ---------- CTA ---------- */
  .cta{padding:20vh 6vw;text-align:center;position:relative;overflow:hidden}
  .cta h2{font-size:clamp(36px,7vw,96px)}
  .cta p{color:var(--mut);margin:22px auto 40px;max-width:460px;line-height:1.6}
  form{max-width:440px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
  input{background:transparent;border:1px solid var(--line);color:var(--ink);
        padding:17px 20px;font-family:inherit;font-size:15px;border-radius:2px;transition:border-color .3s}
  input:focus{outline:none;border-color:var(--acc)}
  input::placeholder{color:#5b5952}
  #ok{display:none;margin-top:18px;color:var(--acc);font-size:13px;letter-spacing:.14em;text-transform:uppercase}
  footer{padding:40px 6vw;display:flex;justify-content:space-between;font-size:11px;
         letter-spacing:.2em;text-transform:uppercase;color:#57554f;border-top:1px solid var(--line)}
