:root{
  --bg:#020912;--panel:#071a2a;--panel2:#0b2235;--cyan:#04bdec;--cyan2:#018cc7;
  --text:#f8fbff;--muted:#c7d1db;--line:rgba(95,190,230,.35);
  --shadow:0 20px 80px rgba(0,0,0,.45);
}

@font-face{
  font-family:"Vintage Party";
  src:url("assets/fonts/Vintage-Party.ttf") format("truetype");
  font-weight:normal;font-style:normal;font-display:swap;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
section[id]{scroll-margin-top:120px}
body{
  margin:0;color:var(--text);font-family:"Arial Narrow",Arial,sans-serif;overflow-x:hidden;
  background:radial-gradient(circle at 80% 4%,#0d4264 0,#061220 30%,#020912 70%);
}
body:before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(circle at 75% 8%,rgba(0,194,255,.35),transparent 17%),
  linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
  linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:auto,80px 80px,80px 80px;
}
.section-shell{max-width:1180px;margin:0 auto;padding-left:18px;padding-right:18px}

/* Header */
.site-header{
  position:sticky;top:0;z-index:20;width:100%;margin:0;padding:16px 0;
  background:linear-gradient(180deg,rgba(2,9,18,.96),rgba(2,9,18,.72),rgba(2,9,18,.08));
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(4,189,236,.12);
  box-shadow:0 8px 34px rgba(0,0,0,.28);
}
.header-inner{display:flex;align-items:center;gap:28px;width:100%}
.logo{display:flex;align-items:center;gap:14px;text-decoration:none;color:#fff;line-height:1}
.logo img{height:95px;width:auto;display:block;filter:drop-shadow(0 5px 16px rgba(0,0,0,.45))}
.logo span{
  font-family:"Vintage Party","Segoe Script","Brush Script MT",cursive;
  font-size:72px;font-weight:normal;letter-spacing:0;color:#fff;
  text-shadow:0 3px 0 rgba(0,0,0,.35),0 0 12px rgba(0,190,255,.22);
}
.logo small{
  display:block;margin-top:5px;text-transform:uppercase;font-weight:900;
  font-size:8.8px;letter-spacing:.9px;color:#d5e2ee;
}
.nav{display:flex;gap:25px;margin-left:auto}
.nav a,.footer nav a{
  color:#dfe8f1;text-decoration:none;text-transform:uppercase;font-weight:900;
  font-size:14px;letter-spacing:.8px;transition:color .2s ease;
}
.nav a:hover,.nav a.active{color:var(--cyan)}
.nav a.active:after{content:"";display:block;height:3px;background:var(--cyan);margin-top:8px}

/* Buttons */
.btn{
  position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:16px;
  border:0;border-radius:999px;padding:18px 34px;
  background:linear-gradient(135deg,var(--cyan),var(--cyan2));
  color:#fff;text-decoration:none;text-transform:uppercase;font-weight:950;letter-spacing:.6px;
  box-shadow:0 12px 26px rgba(0,188,236,.25);cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease;
}
.btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(0,188,236,.32)}
.btn:before{
  content:"";position:absolute;top:0;left:-80%;width:45%;height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);
  transform:skewX(-20deg);
}
.btn:hover:before{animation:btnShine .7s ease}
.btn-small{padding:13px 22px;font-size:13px;white-space:nowrap}
@keyframes btnShine{to{left:130%}}

/* Hero */
.hero{position:relative;min-height:640px;display:grid;grid-template-columns:1fr 1.38fr;align-items:center;padding-top:18px}
.hero:after{
  content:"";position:absolute;right:-80px;top:30px;width:480px;height:150px;
  background:radial-gradient(circle,#fff 0 8px,rgba(255,255,255,.35) 9px 15px,transparent 16px);
  filter:blur(1px);opacity:.65;transform:rotate(14deg);
}
.hero-copy{position:relative;z-index:2;max-width:420px;animation:fadeUp .65s ease both}
.brush{
  width:250px;height:16px;margin:0 0 20px;
  background:linear-gradient(90deg,transparent,var(--cyan),transparent);
  clip-path:polygon(0 50%,12% 25%,55% 0,100% 40%,84% 63%,28% 100%);
}
.brush.small{display:inline-block;width:190px;margin-left:18px}
.hero h1,.section-title h2,.contact h2{
  font-family:Impact,"Arial Black",sans-serif;text-transform:uppercase;line-height:.94;letter-spacing:2px;margin:0;
}
.hero h1{font-size:86px;text-shadow:0 6px 0 rgba(0,0,0,.25)}
.hero h1 span{display:block;color:var(--cyan)}
.hero p{font-size:23px;line-height:1.18;color:#e5edf4;margin:28px 0}
.hero-visual{position:relative;min-height:610px;overflow:visible}
.hero-visual img{
  position:absolute;right:-120px;bottom:-150px;width:min(760px,62vw);
  filter:drop-shadow(0 20px 40px rgba(0,0,0,.55));
  animation:heroFloat 6s ease-in-out infinite;
}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(14px)}}

/* Benefits */
.benefits{
  position:relative;z-index:3;margin-top:-25px;display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  padding-top:28px;padding-bottom:28px;background:#f4f8fb;color:#0c2d45;box-shadow:var(--shadow);
  clip-path:polygon(0 10%,4% 0,18% 7%,40% 1%,65% 8%,84% 0,100% 9%,98% 92%,80% 100%,55% 94%,33% 100%,13% 93%,0 100%);
}
.benefits article{text-align:center;padding:0 24px;border-right:2px solid rgba(0,142,199,.35)}
.benefits article:last-child{border:0}
.benefits svg{width:60px;height:60px;fill:none;stroke:#073e68;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.benefits h3,.product-card h3,.steps h3{
  font-family:Impact,"Arial Black",sans-serif;text-transform:uppercase;color:#007fc4;letter-spacing:1px;margin:10px 0 6px;
}
.benefits p,.product-card p,.steps p{margin:0;color:inherit;font-size:17px;line-height:1.25}

/* Sections / Cards */
.section-title{display:flex;align-items:center;margin:52px 0 16px}
.section-title h2,.contact h2{font-size:40px}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.product-card{
  position:relative;min-height:335px;padding:16px;text-align:center;
  background:linear-gradient(180deg,rgba(15,42,62,.9),rgba(5,16,28,.85));
  border:1px solid var(--line);border-radius:10px;
  box-shadow:inset 0 0 30px rgba(255,255,255,.04);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  animation:fadeUp .55s ease both;
}
.product-card:hover,.catalog-card:hover{
  transform:translateY(-6px);border-color:rgba(4,189,236,.72);
  box-shadow:0 20px 60px rgba(0,0,0,.4),0 0 25px rgba(4,189,236,.2);
}
.product-card img{width:100%;height:190px;object-fit:cover;border-radius:8px;margin-bottom:26px;filter:saturate(1.05)}
.product-card-link{text-decoration:none;color:inherit;display:block}

/* Round Icons */
.round-icon{
  position:absolute;left:50%;top:178px;transform:translateX(-50%);
  width:68px;height:68px;display:grid;place-items:center;border-radius:50%;
  background:radial-gradient(circle at 50% 40%,#041a2a 0%,#020912 100%);
  border:2px solid rgba(0,190,255,.55);
  box-shadow:0 0 0 4px rgba(0,180,255,.06),0 0 16px rgba(0,190,255,.26);
  transition:transform .25s ease,box-shadow .25s ease;
}
.product-card:hover .round-icon,.catalog-card:hover .round-icon{
  transform:translateX(-50%) scale(1.08);
  box-shadow:0 0 0 5px rgba(0,180,255,.08),0 0 24px rgba(0,190,255,.34);
}
.round-icon .svg-icon,.product-card .round-icon img.svg-icon{
  width:55px;height:55px;object-fit:contain;display:block;margin:0;border-radius:0;
  filter:brightness(1.08) contrast(1.05) drop-shadow(0 0 5px rgba(4,189,236,.65));
}
.round-icon i{color:var(--cyan);font-size:28px;filter:drop-shadow(0 0 6px rgba(0,190,255,.55))}

/* Steps */
.steps{padding-bottom:30px}
.step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;text-align:center}
.step-grid article{position:relative;animation:fadeUp .55s ease both}
.step-grid article:not(:last-child):after{
  content: "\2192";position:absolute;right:-30px;top:50px;color:var(--cyan);font-size:42px;
  text-shadow:0 0 16px rgba(4,189,236,.55);
}
.step-grid b{
  font-family:Impact,"Arial Black";font-size:54px;color:var(--cyan);margin-right:10px;
  text-shadow:0 0 16px rgba(4,189,236,.28);
}
.step-icon,.step-grid .icon{
  width:76px;height:76px;margin:8px auto 14px;border-radius:50%;
  background:radial-gradient(circle at 50% 40%,#08324a 0%,#041a2a 70%);
  border:2px solid rgba(0,190,255,.7);
  box-shadow:0 0 0 4px rgba(0,180,255,.08),0 0 14px rgba(0,190,255,.35),0 0 28px rgba(0,190,255,.25);
  display:flex;align-items:center;justify-content:center;
  transition:transform .25s ease,box-shadow .25s ease;
}
.step-grid article:hover .step-icon,.step-grid article:hover .icon{
  transform:scale(1.08);
  box-shadow:0 0 0 5px rgba(0,180,255,.1),0 0 20px rgba(0,190,255,.42),0 0 34px rgba(0,190,255,.28);
}
.step-icon img,.step-grid .icon img{
  width:65px;height:65px;filter:brightness(1.2) contrast(1.1) drop-shadow(0 0 6px rgba(0,190,255,.6));
}

.step-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin-bottom: 10px;
}

.step-head b {
  margin: 0;
  font-size: 54px;
  line-height: 1;
}

.step-head .icon {
  margin: 0;
}

/* Contact */
.contact{
  display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;align-items:center;margin-top:10px;
  padding:34px 42px;border:1px solid var(--line);border-radius:10px;
  background:linear-gradient(145deg,rgba(8,35,56,.92),rgba(3,14,24,.72));
  overflow:hidden;box-shadow:0 0 28px rgba(0,180,255,.12);animation:fadeUp .55s ease both;
}
.contact-text{min-width:0}
.contact-text h2{font-size:40px;max-width:390px;line-height: 1.08;}
.contact-row{font-size:18px;color:#dce8f3;font-weight:700;margin:14px 0}
.contact-row i{color:var(--cyan);margin-right:10px;width:20px;text-align:center;filter:drop-shadow(0 0 6px rgba(0,190,255,.5))}
.contact-figure{display:flex;justify-content:center;align-items:flex-end;min-width:0;height:100%}
.contact-figure img{max-width:100%;max-height:330px;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.45))}
.contact-form{display:grid;gap:12px;min-width:0;padding:0}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
input,textarea{
  width:100%;padding:17px 18px;border:1px solid rgba(130,180,210,.35);border-radius:6px;
  background:rgba(3,11,20,.72);color:white;font:700 16px Arial,sans-serif;
}
input:focus,textarea:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgba(4,189,236,.16)}
textarea{resize:vertical}
.contact-form .btn{width:100%;border-radius:10px}
.contact-form small{text-align:center;color:#cbd6df}
.contact-form a{color:var(--cyan)}

/* Testimonials */
.testimonials{padding-bottom:34px;animation:fadeUp .55s ease both}
.testimonial-slider{
  position:relative;overflow:hidden;border:1px solid var(--line);border-radius:14px;
  background:linear-gradient(145deg,rgba(8,35,56,.92),rgba(3,14,24,.76));
  box-shadow:0 0 28px rgba(0,180,255,.12);
}
.testimonial-slider input{display:none}
.testimonial-track{display:flex;width:500%;transition:transform .45s ease}
.testimonial-card{
  width:100%;padding:42px 58px;text-align:center;
  background:radial-gradient(circle at 50% 0%,rgba(4,189,236,.18),transparent 34%),linear-gradient(180deg,rgba(255,255,255,.035),transparent);
}
.testimonial-card p{max-width:760px;margin:0 auto 22px;color:#f2f8ff;font-size:24px;line-height:1.35;font-weight:700}
.testimonial-card strong{display:block;font-family:Impact,"Arial Black",sans-serif;color:var(--cyan);font-size:26px;text-transform:uppercase;letter-spacing:1px}
.testimonial-card span{display:block;margin-top:4px;color:var(--muted);font-size:17px}
.testimonial-dots{position:absolute;left:0;right:0;bottom:18px;display:flex;justify-content:center;gap:10px}
.testimonial-dots label{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.38);border:1px solid rgba(255,255,255,.65);cursor:pointer}
#t1:checked~.testimonial-track{transform:translateX(0)}
#t2:checked~.testimonial-track{transform:translateX(-20%)}
#t3:checked~.testimonial-track{transform:translateX(-40%)}
#t4:checked~.testimonial-track{transform:translateX(-60%)}
#t5:checked~.testimonial-track{transform:translateX(-80%)}
#t1:checked~.testimonial-dots label[for="t1"],
#t2:checked~.testimonial-dots label[for="t2"],
#t3:checked~.testimonial-dots label[for="t3"],
#t4:checked~.testimonial-dots label[for="t4"],
#t5:checked~.testimonial-dots label[for="t5"]{background:var(--cyan);box-shadow:0 0 12px rgba(4,189,236,.8)}
.stars{margin-bottom:16px}
.stars i{color:#ffd84d;margin:0 3px;font-size:20px;text-shadow:0 0 6px rgba(255,216,77,.7),0 0 12px rgba(255,216,77,.4)}

/* Catalog */
.catalog-grid{margin-top:20px}
.catalog-card{display:flex;flex-direction:column;justify-content:space-between;min-height:260px;padding-top:60px}
.catalog-card .round-icon{top:-34px}
.catalog-card .btn{margin-top:20px}

/* Footer / Legal */
.footer{display:flex;align-items:center;justify-content:space-between;gap:22px;padding-top:30px;padding-bottom:30px}
.footer p{font-family:"Segoe Script","Brush Script MT",cursive;font-size:26px;line-height:1.2;margin:0}
.footer nav{display:flex;gap:26px}
.legal{max-width:900px;padding-top:60px;padding-bottom:80px}
.legal h1{font-family:Impact,"Arial Black";text-transform:uppercase;font-size:56px}
.legal p,.legal li{color:#dce7f1;font-size:18px;line-height:1.55}

/* Spam field */
.hp-field{position:absolute!important;left:-9999px!important;opacity:0!important;height:0!important;width:0!important;pointer-events:none!important}

/* Animations */
@keyframes fadeUp{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}

/* Responsive */
@media(max-width:980px){
  html{scroll-padding-top:170px}
  section[id]{scroll-margin-top:170px}
  .site-header{padding:14px 0}
  .header-inner{flex-wrap:wrap}
  .nav{order:3;width:100%;justify-content:center;flex-wrap:wrap;gap:14px;margin-left:0}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-copy{max-width:620px;padding-top:30px}
  .hero h1{font-size:64px}
  .hero-visual{min-height:520px}
  .hero-visual img{right:0;width:min(680px,100%)}
  .benefits,.product-grid,.step-grid{grid-template-columns:repeat(2,1fr)}
  .benefits article:nth-child(2){border:0}
  .contact{grid-template-columns:1fr;text-align:center;padding:30px 32px}
  .contact-text h2{max-width:none}
  .contact-figure img{max-height:270px}
  .footer{flex-direction:column;text-align:center}
}

@media(max-width:620px){
  html{scroll-padding-top:150px}
  section[id]{scroll-margin-top:150px}
  .logo img{height:65px}
  .logo span{font-size:38px}
  .logo small{font-size:7.5px}
  .btn-small{display:none}
  .hero h1{font-size:50px}
  .hero p{font-size:19px}
  .hero-visual{min-height:390px}
  .benefits,.product-grid,.step-grid,.form-row{grid-template-columns:1fr}
  .benefits article{border:0;border-bottom:1px solid rgba(0,142,199,.25);padding:18px}
  .step-grid article:after{display:none}
  .contact h2,.section-title h2{font-size:32px}
  .contact{padding:28px 20px}
  .testimonial-card{padding:34px 24px 52px}
  .testimonial-card p{font-size:19px}
  .footer nav{flex-wrap:wrap;justify-content:center}
}

@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

/* WhatsApp Floating Button */
.wa-float {
  position: fixed;
  right: 22px;
  bottom: 22px;
  z-index: 999;

  width: 64px;
  height: 64px;

  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;

  background: radial-gradient(circle at 30% 30%, #04bdec, #018cc7);
  box-shadow:
    0 10px 25px rgba(0,0,0,.45),
    0 0 18px rgba(37,211,102,.35);

  transition: transform .25s ease, box-shadow .25s ease;
}

.wa-float:hover {
  transform: translateY(-4px) scale(1.05);
  box-shadow:
    0 18px 40px rgba(0,0,0,.5),
    0 0 28px rgba(37,211,102,.6);
}

/* Icon */
.wa-icon {
  width: 32px;
  height: 32px;
  fill: #fff;
}

/* Tooltip */
.wa-tooltip {
  position: absolute;
  right: 78px;
  white-space: nowrap;

  background: rgba(5,20,35,.95);
  color: #fff;

  padding: 8px 12px;
  border-radius: 6px;

  font-size: 13px;
  font-weight: 700;

  opacity: 0;
  transform: translateX(10px);
  pointer-events: none;

  transition: all .25s ease;

  border: 1px solid rgba(4,189,236,.25);
}

.wa-float:hover .wa-tooltip {
  opacity: 1;
  transform: translateX(0);
}

.form-message {
  display: none;
  padding: 14px 16px;
  border-radius: 8px;
  font-weight: 800;
  line-height: 1.35;
  text-align: center;
}

.form-message:not(:empty) {
  display: block;
}

.form-message.success {
  color: #dfffea;
  background: rgba(37, 211, 102, .14);
  border: 1px solid rgba(37, 211, 102, .42);
  box-shadow: 0 0 18px rgba(37, 211, 102, .16);
}

.form-message.error {
  color: #ffe4e4;
  background: rgba(255, 80, 80, .14);
  border: 1px solid rgba(255, 80, 80, .42);
  box-shadow: 0 0 18px rgba(255, 80, 80, .16);
}

.contact-form button:disabled {
  opacity: .65;
  cursor: wait;
}

.customer-slider {
  padding-bottom: 42px;
}

.customer-slider-wrap {
  position: relative;
  overflow: hidden;
}

.customer-track {
  display: flex;
  gap: 18px;
  padding: 24px 70px;
  overflow: visible;
  will-change: transform;
  touch-action: pan-y;
  cursor: grab;
}

.customer-track:active {
  cursor: grabbing;
}

.customer-slide {
  flex: 0 0 clamp(260px, 31vw, 390px);
  height: 280px;
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  background: rgba(3,11,20,.72);
}

.customer-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  cursor: zoom-in;
  transition: transform .3s ease, filter .3s ease;
}

.customer-slide:hover img {
  transform: scale(1.04);
  filter: saturate(1.12);
}

.slider-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 3;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(4,189,236,.55);
  border-radius: 50%;
  background: rgba(2,9,18,.82);
  color: var(--cyan);
  font-size: 34px;
  line-height: 1;
  cursor: pointer;
  box-shadow: 0 0 18px rgba(4,189,236,.18);
}

.slider-btn:hover {
  background: var(--cyan);
  color: #fff;
}

.slider-btn.prev {
  left: 14px;
}

.slider-btn.next {
  right: 14px;
}

@media(max-width:900px){
  .customer-slide {
    flex-basis: calc(50% - 9px);
  }
}

@media(max-width:620px){
  .customer-slide {
    flex-basis: 100%;
  }
}

.lightbox {
  position: fixed;
  inset: 0;
  z-index: 2000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 28px;
  background: rgba(2,9,18,.88);
  backdrop-filter: blur(10px);
}

.lightbox.is-open {
  display: flex;
}

.lightbox img {
  max-width: min(1100px, 94vw);
  max-height: 88vh;
  border-radius: 14px;
  border: 1px solid var(--line);
  box-shadow: 0 30px 90px rgba(0,0,0,.65), 0 0 34px rgba(4,189,236,.18);
}

.lightbox-close {
  position: fixed;
  top: 24px;
  right: 28px;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(4,189,236,.55);
  border-radius: 50%;
  background: rgba(2,9,18,.85);
  color: #fff;
  font-size: 34px;
  line-height: 1;
  cursor: pointer;
}

@media(max-width:620px){
  .catalog-card{
    min-height: auto;
    height: auto;
    padding: 64px 18px 22px;
  }

  .catalog-card .btn,
  .catalog-card .btn-small{
    display: inline-flex;
    width: 100%;
    margin-top: 22px;
    position: relative;
    z-index: 2;
  }

  .catalog-card p{
    margin-bottom: 18px;
  }
}