
:root{
  --bg:#090b0f;
  --bg2:#10141b;
  --panel:#151a22;
  --panel2:#1d242f;
  --text:#f6f7f9;
  --muted:#aab1bd;
  --red:#e11925;
  --red2:#ff3636;
  --line:rgba(255,255,255,.12);
  --shadow:0 24px 80px rgba(0,0,0,.42);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Arial, Helvetica, sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 15% 8%, rgba(225,25,37,.18), transparent 30%),
    radial-gradient(circle at 84% 20%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(180deg,#07090d 0%,#10141b 44%,#07090d 100%);
  line-height:1.55;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1160px, calc(100% - 32px));margin:0 auto}
.noise{
  position:fixed;inset:0;pointer-events:none;z-index:50;opacity:.055;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 220 220' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}
.top-strip{
  background:#e11925;
  color:white;
  font-size:14px;
  font-weight:700;
}
.top-strip__inner{
  display:flex;
  justify-content:center;
  gap:28px;
  align-items:center;
  min-height:40px;
  flex-wrap:wrap;
}
.site-header{
  position:sticky;
  top:0;
  z-index:40;
  background:rgba(7,9,13,.78);
  backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.nav{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand img{width:210px;height:auto}
.nav-links{display:flex;gap:4px;align-items:center}
.nav-links a{
  padding:12px 14px;
  color:#e7eaf0;
  font-weight:700;
  border-radius:999px;
  transition:.22s ease;
}
.nav-links a:hover{background:rgba(255,255,255,.08);color:#fff;transform:translateY(-1px)}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;cursor:pointer}
.nav-toggle span{display:block;height:3px;background:white;margin:7px;border-radius:3px}
.hero{
  position:relative;
  overflow:hidden;
  min-height:690px;
  padding:88px 0 70px;
}
.hero:before{
  content:"";
  position:absolute;
  inset:auto -10% 0 -10%;
  height:190px;
  background:linear-gradient(180deg,transparent,rgba(7,9,13,.98));
  z-index:1;
}
.hero__grid{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:48px;
  align-items:center;
}
.eyebrow{
  margin:0 0 12px;
  color:var(--red2);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.13em;
  font-size:13px;
}
h1,h2,h3{line-height:1.08;margin:0 0 18px}
h1{font-size:clamp(40px,6vw,78px);letter-spacing:-.05em}
h2{font-size:clamp(30px,4vw,48px);letter-spacing:-.035em}
h3{font-size:21px}
.lead{
  color:#d9dde4;
  font-size:20px;
  max-width:720px;
  margin:0 0 28px;
}
.hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin:30px 0}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;
  padding:14px 22px;
  border-radius:999px;
  font-weight:900;
  border:1px solid transparent;
  transition:.25s ease;
  position:relative;
  overflow:hidden;
}
.btn:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(120deg,transparent,rgba(255,255,255,.28),transparent);
  transform:translateX(-120%);
  transition:.55s ease;
}
.btn:hover:after{transform:translateX(120%)}
.btn-primary{background:linear-gradient(135deg,var(--red),#a80f18);box-shadow:0 12px 38px rgba(225,25,37,.28)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 20px 48px rgba(225,25,37,.38)}
.btn-ghost{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.06)}
.btn-ghost:hover{background:rgba(255,255,255,.11);transform:translateY(-3px)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:620px}
.stats div{
  background:rgba(255,255,255,.07);
  border:1px solid var(--line);
  border-radius:18px;
  padding:18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.stats strong{display:block;font-size:28px;color:#fff}
.stats span{display:block;color:var(--muted);font-weight:700;font-size:13px;text-transform:uppercase}
.hero__visual{position:relative}
.machine-card{
  position:relative;
  border-radius:34px;
  background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.03));
  border:1px solid rgba(255,255,255,.16);
  padding:14px;
  box-shadow:var(--shadow);
  transform:rotate(1.2deg);
  isolation:isolate;
}
.machine-card img{border-radius:25px;min-height:430px;object-fit:cover;width:100%}
.machine-card:before{
  content:"";
  position:absolute;inset:-2px;border-radius:36px;z-index:-1;
  background:linear-gradient(135deg,rgba(225,25,37,.7),transparent 38%,rgba(255,255,255,.18));
  filter:blur(16px);opacity:.55;
}
.scan-line{
  position:absolute;left:14px;right:14px;height:3px;top:16%;
  background:linear-gradient(90deg,transparent,var(--red2),transparent);
  box-shadow:0 0 24px var(--red2);
  animation:scan 4.5s linear infinite;
  opacity:.8;
}
@keyframes scan{0%{top:16%}50%{top:82%}100%{top:16%}}
.floating-badge{
  position:absolute;
  background:rgba(7,9,13,.82);
  border:1px solid rgba(255,255,255,.16);
  border-left:4px solid var(--red);
  backdrop-filter:blur(10px);
  padding:11px 14px;
  border-radius:14px;
  font-weight:900;
  box-shadow:0 14px 40px rgba(0,0,0,.35);
  animation:floaty 4s ease-in-out infinite;
}
.badge-1{left:-16px;top:70px}
.badge-2{right:-20px;top:210px;animation-delay:.8s}
.badge-3{left:42px;bottom:34px;animation-delay:1.3s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.orb{
  position:absolute;border-radius:999px;filter:blur(12px);opacity:.55;pointer-events:none;
}
.orb-1{width:260px;height:260px;background:rgba(225,25,37,.35);left:-80px;top:130px;animation:drift 9s ease-in-out infinite}
.orb-2{width:190px;height:190px;background:rgba(255,255,255,.10);right:8%;bottom:95px;animation:drift 12s ease-in-out infinite reverse}
@keyframes drift{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,-30px)}}
.section{padding:88px 0}
.section-head{max-width:790px;margin:0 auto 42px;text-align:center}
.section-head p:not(.eyebrow){color:var(--muted);font-size:18px;margin:0}
.service-band{background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01))}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.service-card,.review-card,.contact-card,.step{
  background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.035));
  border:1px solid var(--line);
  border-radius:var(--radius);
  box-shadow:0 18px 60px rgba(0,0,0,.25);
}
.service-card{
  padding:30px;
  position:relative;
  overflow:hidden;
  transition:.26s ease;
}
.service-card:before{
  content:"";
  position:absolute;
  inset:auto 20px -50px 20px;
  height:100px;
  background:radial-gradient(circle,rgba(225,25,37,.28),transparent 68%);
  transition:.3s ease;
}
.service-card:hover{transform:translateY(-8px);border-color:rgba(225,25,37,.5)}
.service-card:hover:before{transform:translateY(-22px)}
.icon{
  width:54px;height:54px;border-radius:17px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,var(--red),#7f0a10);
  font-size:28px;font-weight:900;
  margin-bottom:20px;
}
.service-card p,.split__content p,.step p,.review-card p{color:var(--muted)}
.dark-panel{background:#07090d}
.split{display:grid;grid-template-columns:.88fr 1.12fr;gap:62px;align-items:center}
.photo-stack{position:relative;min-height:430px}
.photo-stack img{
  position:absolute;
  object-fit:cover;
  border-radius:28px;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:var(--shadow);
}
.photo-stack__main{left:0;top:0;width:78%;height:360px}
.photo-stack__second{right:0;bottom:0;width:58%;height:260px}
.check-list{padding:0;margin:24px 0 0;list-style:none}
.check-list li{
  padding:12px 0 12px 38px;
  position:relative;
  border-bottom:1px solid rgba(255,255,255,.08);
  color:#d8dce3;
}
.check-list li:before{
  content:"✓";
  position:absolute;left:0;top:12px;
  width:24px;height:24px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--red);
  color:white;font-weight:900;font-size:14px;
}
.tabs{display:flex;justify-content:center;gap:12px;margin:0 0 22px;flex-wrap:wrap}
.tab-button{
  border:1px solid var(--line);
  background:rgba(255,255,255,.06);
  color:white;
  padding:13px 22px;
  border-radius:999px;
  font-weight:900;
  cursor:pointer;
  transition:.22s ease;
}
.tab-button.active,.tab-button:hover{background:var(--red);border-color:var(--red);transform:translateY(-2px)}
.tab-panel{display:none}
.tab-panel.active{display:block}
.table-wrap{
  overflow:auto;
  border-radius:24px;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  background:rgba(255,255,255,.04);
}
table{width:100%;border-collapse:collapse;min-width:760px}
th,td{padding:16px 18px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}
th{
  background:linear-gradient(135deg,#e11925,#8d0b13);
  color:#fff;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.08em;
}
td{color:#e4e7ec}
tbody tr{transition:.2s ease}
tbody tr:hover{background:rgba(225,25,37,.10)}
.gallery-section{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.055))}
.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.work-card{
  margin:0;
  border-radius:24px;
  overflow:hidden;
  background:var(--panel);
  border:1px solid var(--line);
  box-shadow:0 18px 60px rgba(0,0,0,.25);
}
.work-card img{height:230px;width:100%;object-fit:cover;transition:.5s ease}
.work-card:hover img{transform:scale(1.06)}
.work-card figcaption{
  padding:16px 18px;
  font-weight:900;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.08);
}
.process{background:#080a0e}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;position:relative}
.step{padding:25px;position:relative;overflow:hidden}
.step span{
  display:inline-flex;
  font-size:42px;
  font-weight:900;
  color:rgba(255,255,255,.10);
  margin-bottom:16px;
}
.step:before{
  content:"";
  position:absolute;right:-28px;top:-28px;width:98px;height:98px;border-radius:50%;
  border:14px solid rgba(225,25,37,.16);
}
.reviews{background:linear-gradient(180deg,#10141b,#07090d)}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review-card{padding:28px}
.stars{color:#ffca28;font-size:24px;letter-spacing:2px;margin-bottom:14px;text-shadow:0 0 18px rgba(255,202,40,.25)}
.review-card strong{display:block;margin-top:18px}
.review-card span{color:var(--muted);font-size:14px}
.cta-section{padding:70px 0;background:linear-gradient(135deg,#e11925,#6c070d)}
.cta{
  display:flex;
  justify-content:space-between;
  gap:28px;
  align-items:center;
}
.cta h2{margin-bottom:12px}
.cta p{max-width:760px;color:rgba(255,255,255,.86);margin:0}
.cta .eyebrow{color:white}
.cta .btn-primary{background:#fff;color:#111}
.contact__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:22px;align-items:stretch}
.contact-card{padding:34px}
.contact-card a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35)}
.map{
  border-radius:24px;
  overflow:hidden;
  border:1px solid var(--line);
  box-shadow:var(--shadow);
  min-height:420px;
}
.map iframe{display:block;filter:grayscale(.25) contrast(1.05)}
.footer{border-top:1px solid var(--line);padding:26px 0;background:#050609;color:var(--muted)}
.footer__inner{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.floating-phone{
  position:fixed;
  right:20px;
  bottom:20px;
  width:58px;height:58px;
  border-radius:999px;
  display:grid;place-items:center;
  background:linear-gradient(135deg,var(--red),#8d0b13);
  color:#fff;
  font-size:25px;
  box-shadow:0 14px 40px rgba(225,25,37,.45);
  z-index:45;
  animation:pulse 2.2s ease-in-out infinite;
}
@keyframes pulse{0%,100%{transform:scale(1);box-shadow:0 14px 40px rgba(225,25,37,.45)}50%{transform:scale(1.07);box-shadow:0 14px 58px rgba(225,25,37,.62)}}
.reveal{
  opacity:0;
  transform:translateY(22px);
  transition:opacity .7s ease, transform .7s ease;
}
.reveal.visible{
  opacity:1;
  transform:translateY(0);
}
.magnet{will-change:transform}
@media (max-width: 980px){
  .hero__grid,.split,.contact__grid{grid-template-columns:1fr}
  .service-grid,.work-grid,.review-grid{grid-template-columns:1fr 1fr}
  .timeline{grid-template-columns:1fr 1fr}
  .hero{padding-top:56px}
}
@media (max-width: 760px){
  .top-strip__inner{gap:8px;flex-direction:column;padding:8px 0}
  .nav{height:74px}
  .brand img{width:172px}
  .nav-toggle{display:block}
  .nav-links{
    position:absolute;
    left:16px;right:16px;top:82px;
    display:none;
    flex-direction:column;
    align-items:stretch;
    background:rgba(7,9,13,.96);
    border:1px solid var(--line);
    border-radius:22px;
    padding:12px;
    box-shadow:var(--shadow);
  }
  .nav-links.open{display:flex}
  .nav-links a{text-align:center}
  h1{font-size:40px}
  .lead{font-size:17px}
  .stats{grid-template-columns:1fr}
  .machine-card{transform:none}
  .machine-card img{min-height:300px}
  .floating-badge{position:static;margin:10px 0 0;display:inline-block}
  .service-grid,.work-grid,.review-grid,.timeline{grid-template-columns:1fr}
  .photo-stack{min-height:auto}
  .photo-stack img{position:static;width:100%;height:auto;margin-bottom:14px}
  .cta{flex-direction:column;align-items:flex-start}
  .footer__inner{flex-direction:column}
}


/* ===== Support chat ===== */
.floating-phone{bottom:96px}
.support-chat{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:60;
  font-family:Arial, Helvetica, sans-serif;
}
.support-chat__button{
  width:64px;
  height:64px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,var(--red),#7d070e);
  color:#fff;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow:0 18px 52px rgba(225,25,37,.46);
  position:relative;
  transition:.22s ease;
}
.support-chat__button:hover{transform:translateY(-3px) scale(1.03)}
.support-chat__button svg{width:30px;height:30px;fill:currentColor}
.support-chat__dot{
  position:absolute;
  right:6px;
  top:6px;
  width:15px;
  height:15px;
  border-radius:50%;
  background:#16d36b;
  border:3px solid #fff;
  box-shadow:0 0 0 6px rgba(22,211,107,.16);
}
.support-chat__panel{
  position:absolute;
  right:0;
  bottom:78px;
  width:min(390px, calc(100vw - 32px));
  max-height:min(680px, calc(100vh - 120px));
  background:#0b0f16;
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  box-shadow:0 30px 90px rgba(0,0,0,.52);
  overflow:hidden;
  transform:translateY(20px) scale(.96);
  opacity:0;
  pointer-events:none;
  transition:.24s ease;
}
.support-chat.open .support-chat__panel{
  opacity:1;
  pointer-events:auto;
  transform:translateY(0) scale(1);
}
.support-chat__head{
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  padding:18px 18px 16px;
  background:linear-gradient(135deg,#e11925,#72070d);
}
.support-chat__head strong{display:block;font-size:17px;line-height:1.15}
.support-chat__head span{display:block;font-size:12px;color:rgba(255,255,255,.82);margin-top:4px}
.support-chat__close{
  width:38px;
  height:38px;
  border:1px solid rgba(255,255,255,.22);
  background:rgba(255,255,255,.12);
  color:#fff;
  border-radius:999px;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
.support-chat__body{
  padding:16px;
  overflow:auto;
  max-height:calc(min(680px, calc(100vh - 120px)) - 86px);
}
.support-chat__notice{
  margin:0 0 12px;
  color:#c9ced8;
  font-size:13px;
  line-height:1.45;
}
.support-chat__messages{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin:0 0 14px;
}
.support-chat__msg{
  max-width:88%;
  padding:11px 13px;
  border-radius:16px;
  font-size:14px;
  line-height:1.4;
}
.support-chat__msg--bot{
  align-self:flex-start;
  background:#171d27;
  border:1px solid rgba(255,255,255,.08);
  color:#edf0f6;
}
.support-chat__msg--user{
  align-self:flex-end;
  background:linear-gradient(135deg,#e11925,#991018);
  color:#fff;
}
.support-chat__form{display:grid;gap:10px}
.support-chat__row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.support-chat label{display:grid;gap:6px;font-size:12px;color:#c9ced8;font-weight:800}
.support-chat input,
.support-chat textarea{
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:#111722;
  color:#fff;
  border-radius:14px;
  padding:11px 12px;
  font:inherit;
  outline:none;
}
.support-chat textarea{min-height:96px;resize:vertical}
.support-chat input:focus,
.support-chat textarea:focus{border-color:rgba(225,25,37,.78);box-shadow:0 0 0 4px rgba(225,25,37,.16)}
.support-chat__chips{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 2px}
.support-chat__chip{
  border:1px solid rgba(255,255,255,.12);
  background:#161d28;
  color:#fff;
  border-radius:999px;
  padding:8px 10px;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}
.support-chat__chip:hover{background:#222b39}
.support-chat__submit,
.support-chat__mail,
.support-chat__call{
  min-height:44px;
  border:0;
  border-radius:999px;
  font-weight:900;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:11px 15px;
  cursor:pointer;
  text-align:center;
}
.support-chat__submit{background:linear-gradient(135deg,var(--red),#8f0b13);color:#fff;box-shadow:0 14px 32px rgba(225,25,37,.24)}
.support-chat__actions{display:none;gap:8px;flex-wrap:wrap;margin-top:10px}
.support-chat__actions.show{display:flex}
.support-chat__mail{background:#fff;color:#10141b;flex:1}
.support-chat__call{background:#151b25;color:#fff;border:1px solid rgba(255,255,255,.14);flex:1}
.support-chat__privacy{font-size:11px;color:#8e96a5;margin:2px 0 0;line-height:1.35}
@media (max-width:760px){
  .support-chat{right:14px;bottom:14px}
  .support-chat__panel{right:-2px;width:calc(100vw - 28px);bottom:76px;border-radius:22px}
  .support-chat__row{grid-template-columns:1fr}
  .floating-phone{left:14px;right:auto;bottom:18px;width:54px;height:54px}
}
