/* Modern dark industrial UI — full rewrite (classes preserved) */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800;900&display=swap');

:root{
  /* core */
  --bg:#303237;                 /* requested */
  --paper:#36383e;              /* surfaces */
  --paper-2:#3b3d44;            /* elevated */
  --paper-3:#40424a;            /* hover / active */

  /* accent (yellow) */
  --accent:rgb(250 255 79);     /* requested */
  --accent-weak:rgba(250,255,79,.16);
  --accent-weak2:rgba(250,255,79,.10);

  /* borders / text */
  --line:rgba(255,255,255,.09);
  --line-2:rgba(255,255,255,.06);

  --text:rgba(255,255,255,.92);
  --muted:rgba(255,255,255,.66);

  /* depth */
  --radius:18px;
  --shadow:0 26px 80px rgba(0,0,0,.44);
  --shadow2:0 12px 30px rgba(0,0,0,.36);

  /* focus */
  --focus:rgba(250,255,79,.22);
  --focus-strong:rgba(250,255,79,.32);

  /* subtle sheen */
  --sheen:rgba(255,255,255,.06);
}

*{box-sizing:border-box}
html,body{height:100%}

.primeri {
    display:none;
}

body{
  margin:0;
  font-family:"Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, "Apple Color Emoji","Segoe UI Emoji";
  color:var(--text);
  background:var(--bg);
  overflow-x:hidden;
  position:relative;

  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-feature-settings:"kern","liga","calt";
}

/* верхний "ребристый" шумок + мягкая дымка */
body::before{
  content:"";
  position:fixed;
  top:0;left:0;
  width:100%;
  height:560px;
  z-index:-1;
  pointer-events:none;

  /* 1) рёбра 2) "шум" через микро-пятна 3) дымка */
  background:
    /* ribbed (very subtle) */
    repeating-linear-gradient(
      180deg,
      rgba(255,255,255,.028) 0px,
      rgba(255,255,255,.028) 1px,
      rgba(0,0,0,0) 7px,
      rgba(0,0,0,0) 10px
    ),
    /* micro speckle */
    radial-gradient(1px 1px at 12% 28%, rgba(255,255,255,.10), transparent 55%),
    radial-gradient(1px 1px at 24% 16%, rgba(255,255,255,.08), transparent 55%),
    radial-gradient(1px 1px at 38% 34%, rgba(255,255,255,.07), transparent 55%),
    radial-gradient(1px 1px at 52% 18%, rgba(255,255,255,.08), transparent 55%),
    radial-gradient(1px 1px at 66% 30%, rgba(255,255,255,.06), transparent 55%),
    radial-gradient(1px 1px at 78% 14%, rgba(255,255,255,.08), transparent 55%),
    radial-gradient(1px 1px at 88% 26%, rgba(255,255,255,.07), transparent 55%),
    /* haze */
    radial-gradient(1200px 560px at 18% 10%, rgba(255,255,255,.06), transparent 62%),
    radial-gradient(980px 560px at 88% 18%, rgba(250,255,79,.06), transparent 60%);

  /* keep it calm */
  opacity:.95;
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{max-width:1160px;margin:0 auto;padding:0 18px}

/* Utils */
.muted{color:var(--muted)}
.mt{margin-top:14px}
.mt-sm{margin-top:10px}
.divider{height:1px;background:var(--line);margin:12px 0}

/* Header */
.header{
  position:sticky;top:0;z-index:50;
  background:rgba(48,50,55,.78);
  backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}

.header__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 0;
}

.brand{display:flex;align-items:center;gap:12px;min-width:240px}
.brand__mark{
  width:44px;height:44px;border-radius:14px;

  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border:1px solid var(--line);

  box-shadow:0 14px 30px rgba(0,0,0,.38);
  display:grid;place-items:center;

  font-weight:900;letter-spacing:.3px;
  color:rgba(255,255,255,.90);
  position:relative;
  overflow:hidden;
}
.brand__mark::after{
  content:"";
  position:absolute;inset:-1px;
  border-radius:14px;
  background:radial-gradient(240px 120px at 22% 0%, rgba(250,255,79,.18), transparent 60%);
  opacity:.55;
  pointer-events:none;
}
.brand__title{display:block;font-weight:900;letter-spacing:-.25px}
.brand__sub{display:block;font-size:12px;color:var(--muted);margin-top:2px}

/* Nav — always one row */
.nav{
  display:flex;
  gap:10px;
  flex-wrap:nowrap;           /* IMPORTANT: no wrap */
  white-space:nowrap;         /* keep in one line */
  justify-content:center;
  align-items:center;
  min-width:0;
}

.nav__link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 12px;
  border-radius:12px;

  color:rgba(255,255,255,.68);
  border:1px solid transparent;

  cursor:pointer;             /* IMPORTANT */
  touch-action:manipulation;  /* IMPORTANT */
  -webkit-tap-highlight-color:transparent;

  transition:background .18s,color .18s,border-color .18s, box-shadow .18s, transform .18s;
}

.nav__link:hover{
  background:rgba(255,255,255,.06);
  border-color:var(--line-2);
  color:var(--text);
  transform:translateY(-1px);
}

.nav__link.is-active{
  background:
    linear-gradient(180deg, rgba(250,255,79,.16), rgba(250,255,79,.08)),
    rgba(255,255,255,.04);
  border-color:rgba(250,255,79,.30);
  box-shadow:0 14px 30px rgba(0,0,0,.34);
  color:rgba(255,255,255,.94);
}

.header__cta{display:flex;align-items:center;gap:10px}
.phone{
  white-space:nowrap;
  padding:10px 12px;border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.05);
  box-shadow:var(--shadow2);
  font-weight:900;
  color:rgba(255,255,255,.92);
}

/* Buttons — hard normalize for <button> + <a> */
button, input, textarea, select{font:inherit;color:inherit}

.btn{
  position:relative;

  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;

  min-height:44px;
  padding:11px 14px;
  border-radius:14px;

  font-weight:900;
  letter-spacing:-.15px;
  line-height:1;
  white-space:nowrap;

  border:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  box-shadow:var(--shadow2);

  cursor:pointer; /* IMPORTANT */
  user-select:none;

  touch-action:manipulation; /* IMPORTANT */
  -webkit-tap-highlight-color:transparent;

  transition:transform .18s, box-shadow .18s, background .18s, border-color .18s, filter .18s;
}

button.btn{
  appearance:none;
  -webkit-appearance:none;
  background-clip:padding-box;
  border:none; /* reset then re-apply */
  border:1px solid var(--line);
}

a.btn{cursor:pointer;text-decoration:none}

.btn:hover{
  transform:translateY(-2px);
  box-shadow:var(--shadow);
  border-color:rgba(255,255,255,.14);
}
.btn:active{transform:translateY(0);filter:saturate(.98)}

.btn--primary{
  border-color:rgba(250,255,79,.36);
  background:
    linear-gradient(180deg, rgba(250,255,79,.22), rgba(250,255,79,.10)),
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
}

.btn--ghost{
  background:rgba(255,255,255,.04);
  border-color:var(--line-2);
  box-shadow:0 10px 22px rgba(0,0,0,.32);
}
.btn--full{width:100%}

.btn__shine{
  position:absolute;
  inset:-1px;
  border-radius:14px;
  background:radial-gradient(260px 90px at 22% 0%,
    rgba(255,255,255,.14),
    transparent 58%
  );
  opacity:.55;
  pointer-events:none;
}

.iconbtn{
  border:1px solid transparent;
  background:transparent;
  font-size:18px;
  cursor:pointer;
  padding:8px 10px;
  border-radius:12px;
  transition:background .18s, border-color .18s, transform .18s;
  color:rgba(255,255,255,.84);
}
.iconbtn:hover{
  background:rgba(255,255,255,.06);
  border-color:var(--line-2);
  transform:translateY(-1px);
}

/* Mobile menu */
.burger{display:none}
.burger .line{width:22px;height:2px;background:rgba(255,255,255,.80);display:block;border-radius:999px}
.burger{
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  box-shadow:var(--shadow2);
  border-radius:14px;
  padding:10px;
  cursor:pointer;
  display:none;
  gap:5px;
  align-items:center;
  justify-content:center;
}

.mobilemenu{position:fixed;inset:0;z-index:80;display:none}
.mobilemenu.is-open{display:block}
.mobilemenu__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(6px)}
.mobilemenu__panel{
  position:absolute;right:12px;top:12px;left:12px;
  background:rgba(54,56,62,.92);
  border:1px solid rgba(255,255,255,.10);
  border-radius:20px;
  box-shadow:0 46px 140px rgba(0,0,0,.60);
  overflow:hidden;
}
.mobilemenu__head{display:flex;align-items:center;justify-content:space-between;padding:14px;border-bottom:1px solid var(--line)}
.mobilemenu__list{display:flex;flex-direction:column;padding:10px}
.mobilemenu__list a{
  padding:12px 12px;border-radius:14px;border:1px solid transparent;
  font-weight:900;color:rgba(255,255,255,.82);
  cursor:pointer;
  touch-action:manipulation;
}
.mobilemenu__list a:hover{background:rgba(255,255,255,.06);border-color:var(--line-2)}
.mobilemenu__footer{display:flex;gap:10px;padding:14px;border-top:1px solid var(--line)}

/* Hero */
.hero{padding:26px 0 10px}
.hero__inner{display:grid;grid-template-columns:1.18fr .82fr;gap:18px;align-items:stretch}

.badge{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  padding:8px 12px;border-radius:999px;
  font-weight:900;
  box-shadow:0 12px 30px rgba(0,0,0,.34);
  color:rgba(255,255,255,.90);
}

.h1{font-size:42px;line-height:1.08;margin:14px 0 10px;letter-spacing:-1.05px;font-weight:900}
.h2{font-size:28px;margin:0 0 6px;letter-spacing:-.65px;font-weight:900}
.h3{font-size:18px;margin:0 0 8px;font-weight:900}

.lead{font-size:16px;color:var(--muted);line-height:1.65;max-width:720px}
.hero__actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}
.stat{
  border:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03));
  border-radius:16px;padding:12px;box-shadow:var(--shadow2)
}
.stat__num{font-weight:900;letter-spacing:-.2px}
.stat__txt{font-size:12px;color:var(--muted);margin-top:2px}

.glasscard{
  height:100%;
  border:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
  border-radius:22px;
  padding:16px;
  box-shadow:var(--shadow);
  position:relative;
  overflow:hidden;
}
.glasscard:before{
  content:"";
  position:absolute;inset:-140px -90px auto auto;
  width:300px;height:300px;border-radius:999px;
  background:radial-gradient(circle at 30% 30%, rgba(250,255,79,.16), transparent 62%);
  filter:blur(2px);
  opacity:.80;
}
.glasscard__title{font-weight:900;font-size:16px;position:relative;letter-spacing:-.2px}
.checklist{position:relative;margin:10px 0 14px;padding-left:18px;color:rgba(255,255,255,.78);line-height:1.72}
.link{
  color:rgba(255,255,255,.92);
  font-weight:900;
  text-decoration:underline;
  text-decoration-color:rgba(250,255,79,.35);
}
.link:hover{text-decoration-color:rgba(250,255,79,.60)}

/* Sections / grids */
.section{padding:22px 0}
.section__head{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:14px;max-width:920px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.section__actions{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:14px;flex-wrap:wrap}

/* Cards */
.card{
  border:1px solid var(--line);
  background:
    linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.03));
  border-radius:var(--radius);
  box-shadow:var(--shadow2);
  overflow:hidden;
  transform:translateY(0);
  transition:transform .2s, box-shadow .2s, border-color .2s, background .2s;
}
.card:hover{
  transform:translateY(-3px);
  box-shadow:var(--shadow);
  border-color:rgba(255,255,255,.14);
  background:
    linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
}

/* Features */
.feature{padding:16px}
.feature__icon{
  width:44px;height:44px;border-radius:14px;
  display:grid;place-items:center;
  background:
    linear-gradient(180deg, rgba(250,255,79,.10), rgba(255,255,255,.02));
  border:1px solid rgba(250,255,79,.18);
  box-shadow:0 12px 26px rgba(0,0,0,.34);
}
.feature__icon svg{width:22px;height:22px;opacity:.90}
.feature__title{font-weight:900;margin-top:10px;letter-spacing:-.2px}
.feature__text{color:var(--muted);line-height:1.62;margin-top:6px}

/* Pills / services */
.pill{
  font-size:12px;padding:6px 10px;border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.04);
  font-weight:900;
  white-space:nowrap;
  color:rgba(255,255,255,.82);
}
.pill.is-accent{
  border-color:rgba(250,255,79,.30);
  background:rgba(250,255,79,.10);
}

/* Service: make footer stick to bottom */
.service{
  padding:16px;
  display:flex;
  flex-direction:column;
  height:100%;
}
.service__top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.service__title{font-weight:900;font-size:16px;letter-spacing:-.2px}
.service__text{color:var(--muted);margin-top:10px;line-height:1.62}
.service__more{
  margin-top:auto;
  padding-top:12px;
  font-weight:900;
  color:rgba(255,255,255,.88);
  display:flex;justify-content:space-between;align-items:center;
}
.service__more span{opacity:.88}

/* Works */
.work__img{aspect-ratio:16/10;background:rgba(255,255,255,.03)}
.work__img img{width:100%;height:100%;object-fit:cover}
.work__body{padding:14px 16px}
.work__title{font-weight:900;letter-spacing:-.2px}
.work__text{color:var(--muted);margin-top:6px;line-height:1.62}
.work__more{margin-top:10px;font-weight:900;color:rgba(255,255,255,.88)}

/* Pages */
.pagehead{padding:22px 0 12px}
.crumb{
  display:inline-block;margin-bottom:8px;
  color:rgba(255,255,255,.90);font-weight:900;
  text-decoration:underline;text-decoration-color:rgba(250,255,79,.30);
  cursor:pointer;
  touch-action:manipulation;
}
.crumb:hover{text-decoration-color:rgba(250,255,79,.55)}

.content{padding:16px}
.prose{color:rgba(255,255,255,.78);line-height:1.78}
.list{margin:10px 0 0;padding-left:18px;color:rgba(255,255,255,.78)}
.kv{display:flex;flex-direction:column;gap:8px}
.kv__row{display:flex;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px dashed rgba(255,255,255,.14)}
.kv__k{color:var(--muted);font-weight:900}
.kv__v{font-weight:900}

.content__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}
.sidebox{
  border:1px solid var(--line);
  background:rgba(255,255,255,.04);
  border-radius:16px;
  padding:14px;
}
.sidebox__title{font-weight:900;letter-spacing:-.2px}

/* Machines */
.machine__img{aspect-ratio:16/10;background:rgba(255,255,255,.03)}
.machine__img img{width:100%;height:100%;object-fit:cover}
.machine__body{padding:14px 16px}
.machine__title{font-weight:900;letter-spacing:-.2px}

/* Gallery */
.gallery__main{aspect-ratio:16/10;background:rgba(255,255,255,.03)}
.gallery__main img{width:100%;height:100%;object-fit:cover}
.gallery__thumbs{display:flex;gap:10px;padding:12px;flex-wrap:wrap;border-top:1px solid var(--line)}
.thumb{
  border:1px solid rgba(255,255,255,.14);
  border-radius:14px;
  overflow:hidden;
  background:rgba(255,255,255,.06);
  cursor:pointer;
  width:88px;height:58px;
  transition:transform .15s, border-color .15s, box-shadow .15s, background .15s;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
}
.thumb:hover{
  transform:translateY(-2px);
  border-color:rgba(250,255,79,.28);
  box-shadow:0 14px 30px rgba(0,0,0,.38);
  background:rgba(255,255,255,.08);
}
.thumb img{width:100%;height:100%;object-fit:cover}

/* Footer */
.footer{
  padding:18px 0;margin-top:22px;
  border-top:1px solid var(--line);
  background:rgba(255,255,255,.03);
}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.footer__title{font-weight:900;letter-spacing:-.2px}
.footer__muted{color:var(--muted);font-size:12px;margin-top:4px}
.footer__right{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.footer__link{
  color:rgba(255,255,255,.68);
  font-weight:800;
  cursor:pointer;
  touch-action:manipulation;
}
.footer__link:hover{color:rgba(255,255,255,.92)}

/* Modal */
.modal{position:fixed;inset:0;display:none;z-index:100}
.modal.is-open{display:block}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.60);backdrop-filter:blur(6px)}
.modal__panel{
  position:relative;
  max-width:760px;
  margin:6vh auto 0;
  background:rgba(54,56,62,.92);
  border:1px solid rgba(255,255,255,.10);
  border-radius:22px;
  box-shadow:0 52px 160px rgba(0,0,0,.70);
  overflow:hidden;
  transform:translateY(10px);
  animation:pop .18s ease forwards;
}
@keyframes pop{to{transform:translateY(0)}}
.modal__head{display:flex;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}
.modal__title{font-weight:900;font-size:18px;letter-spacing:-.2px}
.modal__sub{color:var(--muted);margin-top:4px;font-size:13px}

/* Form */
.form{padding:16px}
.field span{display:block;font-size:12px;color:var(--muted);font-weight:900;margin-bottom:6px}

input,textarea{
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:12px 12px;
  font:inherit;
  background:rgba(255,255,255,.06);
  outline:none;
  transition:box-shadow .15s,border-color .15s, background .15s;
  color:rgba(255,255,255,.92);
}
input::placeholder,textarea::placeholder{color:rgba(255,255,255,.50)}
input:hover,textarea:hover{border-color:rgba(255,255,255,.16)}
input:focus,textarea:focus{
  border-color:rgba(250,255,79,.45);
  box-shadow:0 0 0 6px var(--focus);
  background:rgba(255,255,255,.08);
}

.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.form__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:12px;flex-wrap:wrap}
.form__note{color:var(--muted);font-size:12px;margin-top:10px;line-height:1.5}

/* File input */
.file{
  border:1px dashed rgba(255,255,255,.18);
  border-radius:16px;
  padding:12px;
  background:rgba(255,255,255,.04);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.file__left{display:flex;flex-direction:column;gap:3px}
.file__title{font-weight:900;letter-spacing:-.2px}
.file__hint{color:var(--muted);font-size:12px}
.file__btn{
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.04));
  border-radius:14px;
  padding:10px 12px;
  font-weight:900;
  cursor:pointer;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  transition:transform .18s, box-shadow .18s, border-color .18s, background .18s;
  box-shadow:0 14px 30px rgba(0,0,0,.38);
}
.file__btn:hover{
  transform:translateY(-2px);
  box-shadow:0 26px 80px rgba(0,0,0,.52);
  border-color:rgba(250,255,79,.26);
  background:
    linear-gradient(180deg, rgba(250,255,79,.14), rgba(255,255,255,.04));
}
.file input{display:none}
.file__names{margin-top:8px;color:rgba(255,255,255,.72);font-size:12px;line-height:1.5}

/* Toast */
.toast{
  position:fixed;right:18px;bottom:18px;z-index:200;
  max-width:420px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid var(--line);
  background:rgba(54,56,62,.92);
  box-shadow:var(--shadow);
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .18s,transform .18s;
}
.toast.is-show{opacity:1;transform:translateY(0)}
.toast__title{font-weight:900;letter-spacing:-.2px}
.toast__text{color:var(--muted);margin-top:4px}

/* Reveal anim */
[data-anim="rise"]{opacity:0;transform:translateY(10px);transition:opacity .55s,transform .55s}
[data-anim="rise"].is-in{opacity:1;transform:translateY(0)}

/* Active thumb */
.thumb.is-active{
  outline:3px solid rgba(250,255,79,.22);
  outline-offset:2px;
  transform:translateY(-2px);
}
@media (max-width: 1140px){
    .delmob {display: none; }
}

/* Responsive */
@media (max-width:980px){
  .brand__sub{display:none}
  .hero__inner{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr}
  .grid3{grid-template-columns:1fr}
  .grid2{grid-template-columns:1fr}
  .content__grid{grid-template-columns:1fr}
  .nav{display:none}
  .burger{display:flex}
  .header__cta .phone{display:none}
  .h1{font-size:34px}
}
@media (max-width:520px){
  .header__cta{gap:8px}
  .btn{padding:11px 12px}
  .modal__panel{margin:10vh 12px 0}
}
