*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:88px;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;background:#03101c;color:#f5f9ff;font-family:Inter,"Segoe UI",Arial,sans-serif}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}

.topbar{height:78px;display:grid;grid-template-columns:250px 1fr 250px;align-items:center;padding:0 8vw;background:#03101cea;border-bottom:1px solid #123047;position:sticky;top:0;z-index:50;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.brand{display:flex;align-items:center;min-width:0}
.brand img{width:165px;height:60px;object-fit:contain}
.topbar nav{display:flex;justify-content:center;gap:48px;font-weight:700;font-size:14px}
.topbar nav a{padding:30px 0 17px;position:relative;white-space:nowrap}
.topbar nav a:hover,.topbar nav a.active{color:#27c6ff}
.topbar nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:8px;height:2px;background:#27c6ff}
.phone{justify-self:end;border:1px solid #16bdf6;border-radius:11px;padding:12px 18px;font-weight:800;font-size:14px;white-space:nowrap}
.phone span{color:#27c6ff;margin-right:8px}
.menu{display:none;background:none;border:0;color:#fff;font-size:27px;line-height:1;padding:10px;min-width:44px;min-height:44px;border-radius:10px;cursor:pointer}
.menu:focus-visible,.topbar a:focus-visible,.btn:focus-visible{outline:2px solid #27c6ff;outline-offset:3px}

.hero{min-height:442px;display:grid;grid-template-columns:53% 47%;background:#061421;border-bottom:1px solid #123047}
.hero-copy{padding:40px 4vw 30px 8vw;background:radial-gradient(circle at 80% 30%,#1b57703b,transparent 30%),linear-gradient(90deg,#06131f,#071827);display:flex;flex-direction:column;justify-content:center;min-width:0}
.micro{font-size:12px;font-weight:800;letter-spacing:.28em;color:#39c9ff;margin-bottom:16px}
.micro i{display:inline-block;width:36px;height:5px;border-radius:999px;background:#23c8ff;box-shadow:0 0 18px #23c8ff;margin-right:12px;vertical-align:middle}
.hero h1{font-size:clamp(48px,4.2vw,74px);line-height:.98;letter-spacing:-.05em;margin:0 0 16px;overflow-wrap:normal}
.hero h1 em,.section h2 em{color:#26c6ff;font-style:normal}
.hero p{max-width:680px;color:#bbc7d4;font-size:17px;line-height:1.6;margin:0}
.actions{display:flex;gap:14px;margin:20px 0 26px}
.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:15px 22px;border-radius:11px;font-weight:900;border:1px solid #1bbdf3;min-width:180px;min-height:48px;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.btn:hover{transform:translateY(-1px)}
.btn.primary{background:#23c7fb;color:#04111b}
.btn.ghost{background:#071625;color:#fff}
.proofs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.proofs>div{display:flex;align-items:center;gap:11px;min-width:0}
.proofs b{font-size:27px;color:#22c8ff;flex:0 0 auto}
.proofs strong{font-size:12px;display:block}
.proofs small{font-size:11px;color:#9aabbc;display:block;margin-top:5px;white-space:nowrap}
.hero-photo{position:relative;background-image:url('images/hero-technician.png');background-size:cover;background-position:center 35%;overflow:hidden;min-width:0}
.photo-shade{position:absolute;inset:0;background:linear-gradient(90deg,#061421 0%,transparent 24%,transparent 70%,#06142166 100%)}
.script{position:absolute;right:5%;top:24%;font-family:"Segoe Script","Brush Script MT",cursive;font-size:42px;line-height:1.25;transform:rotate(-4deg);text-align:center;text-shadow:0 3px 15px #000}
.brush{position:absolute;right:4%;top:70%;width:190px;height:12px;border-radius:50%;background:#23c8ff;transform:rotate(-14deg);box-shadow:0 0 10px #23c8ff}

.service-strip{padding:34px 5.7vw;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;background:linear-gradient(#071725,#06131f)}
.service-card{height:210px;border:1px solid #17415b;border-radius:10px;overflow:hidden;background:#061421;position:relative;box-shadow:0 16px 35px #0003;transition:.2s;min-width:0}
.service-card:hover{transform:translateY(-5px);border-color:#24c8ff}
.service-card img{width:100%;height:145px;object-fit:cover;filter:saturate(.9) contrast(1.06)}
.card-bottom{position:absolute;left:0;right:0;bottom:0;min-height:74px;padding:14px 12px;display:flex;align-items:center;gap:12px;background:linear-gradient(180deg,#08192ac9,#06111df4)}
.card-icon{font-size:25px;color:#27c8ff;flex:0 0 auto}
.card-bottom strong{font-size:12px;line-height:1.22}

.benefits{display:grid;grid-template-columns:repeat(4,1fr);padding:22px 8vw;background:#04111d;border-top:1px solid #123047;border-bottom:1px solid #123047}
.benefits>div{display:flex;justify-content:center;align-items:center;gap:14px;padding:8px 28px;border-right:1px solid #17354a;min-width:0}
.benefits>div:last-child{border-right:0}
.benefits span{color:#22c8ff;font-size:26px;flex:0 0 auto}
.benefits p{margin:0}.benefits strong{display:block;font-size:12px}.benefits small{display:block;color:#91a3b5;font-size:11px;margin-top:5px}

.section{padding:90px 8vw}
.section-title>span{font-size:11px;letter-spacing:.24em;color:#28c8ff;font-weight:900}
.section h2{font-size:clamp(38px,4.5vw,68px);line-height:1;letter-spacing:-.045em;margin:14px 0 22px;max-width:900px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:#071725}
.about-copy{padding-top:38px}.about-copy p{color:#9aadc0;line-height:1.8}.about-copy .lead{font-size:22px;color:#e6eff7}
.works{background:#04111d}.work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.work-grid figure{margin:0;border:1px solid #163c55;border-radius:12px;overflow:hidden;background:#071725;min-width:0}
.work-grid img{width:100%;height:220px;object-fit:cover}.work-grid figcaption{padding:14px 16px;font-weight:800}
.contact{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw;background:#071725}
.contact .section-title p{color:#99aabd}
.contact form{display:grid;grid-template-columns:1fr 1fr;gap:14px;background:#04111d;border:1px solid #15394f;padding:25px;border-radius:14px;min-width:0}
.contact label{font-size:11px;color:#90a4b6;min-width:0}
.contact input,.contact select,.contact textarea{width:100%;margin-top:7px;background:#071725;border:1px solid #1a425c;border-radius:8px;color:#fff;padding:12px;font:inherit;min-height:46px}
.contact textarea{resize:vertical;min-height:130px}.wide{grid-column:1/-1}
footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;padding:30px 8vw;border-top:1px solid #123047;color:#7d91a4;font-size:11px}footer img{width:150px;height:56px;object-fit:contain}footer p{text-align:center}

@media(max-width:1200px){
  .topbar{grid-template-columns:180px 1fr 190px;padding:0 4vw}.topbar nav{gap:24px}
  .hero{grid-template-columns:1fr 1fr}.hero-copy{padding-left:5vw}.proofs{grid-template-columns:repeat(2,1fr)}
  .service-strip{grid-template-columns:repeat(4,1fr)}.service-card{height:220px}
  .benefits{padding-left:4vw;padding-right:4vw}
}

@media(max-width:820px){
  html{scroll-padding-top:72px}
  .topbar{height:70px;grid-template-columns:1fr auto;padding:0 18px;padding-left:max(18px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
  .brand img{width:138px;height:52px}.menu{display:grid;place-items:center}
  .topbar nav{display:none;position:absolute;top:70px;left:0;right:0;background:#03101cf7;border-bottom:1px solid #123047;padding:14px 18px 20px;flex-direction:column;gap:2px;box-shadow:0 18px 35px #0008}
  .topbar nav.open{display:flex}.topbar nav a{padding:12px 4px;font-size:15px}.topbar nav a.active:after{display:none}.phone{display:none}

  .hero{grid-template-columns:1fr;min-height:0}
  .hero-copy{padding:34px 22px 28px;min-height:0;background:radial-gradient(circle at 78% 20%,#1b57703d,transparent 34%),linear-gradient(135deg,#06131f,#071827)}
  .micro{font-size:10px;letter-spacing:.16em;margin-bottom:12px;line-height:1.45}.micro i{width:24px;height:4px;margin-right:8px}
  .hero h1{font-size:clamp(38px,10.8vw,54px);line-height:1.01;letter-spacing:-.048em;margin-bottom:15px}
  .hero h1 br{display:none}
  .hero p{font-size:15px;line-height:1.55;max-width:100%}
  .actions{margin:20px 0 24px;gap:10px}.btn{min-width:0;padding:14px 17px}
  .proofs{grid-template-columns:1fr 1fr;gap:15px 12px}.proofs>div{gap:8px}.proofs b{font-size:22px}.proofs strong{font-size:11px}.proofs small{font-size:10px;white-space:normal;line-height:1.3;margin-top:3px}
  .hero-photo{min-height:260px;background-position:center 28%}
  .photo-shade{background:linear-gradient(180deg,#061421 0%,transparent 18%,transparent 72%,#061421 100%)}
  .script{right:5%;top:13%;font-size:30px;line-height:1.15}.brush{right:5%;top:76%;width:135px;height:8px}

  .service-strip{display:flex;overflow-x:auto;gap:12px;padding:24px 18px 26px;scroll-snap-type:x mandatory;scroll-padding:18px;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain}
  .service-strip::-webkit-scrollbar{display:none}.service-strip{scrollbar-width:none}
  .service-card{flex:0 0 min(76vw,320px);height:228px;scroll-snap-align:start}.service-card img{height:158px}.card-bottom{min-height:76px;padding:14px}.card-bottom strong{font-size:13px}

  .benefits{grid-template-columns:1fr 1fr;padding:12px 18px}.benefits>div{border-right:0;border-bottom:1px solid #17354a;justify-content:flex-start;padding:14px 8px}.benefits>div:nth-last-child(-n+2){border-bottom:0}.benefits span{font-size:23px}.benefits strong{font-size:11px}.benefits small{font-size:10px}

  .section{padding:64px 22px}.section h2{font-size:clamp(36px,9.7vw,52px);line-height:1.02;margin-top:11px}.section-title>span{font-size:10px}
  .about,.contact{grid-template-columns:1fr;gap:26px}.about-copy{padding-top:0}.about-copy .lead{font-size:19px;line-height:1.5}.about-copy p{line-height:1.65}
  .work-grid{grid-template-columns:1fr 1fr;gap:12px}.work-grid img{height:180px}.work-grid figcaption{padding:12px 13px;font-size:13px}
  .contact form{grid-template-columns:1fr 1fr;padding:18px;gap:12px}.contact input,.contact select,.contact textarea{font-size:16px}
  footer{grid-template-columns:1fr;text-align:center;gap:12px;padding:28px 22px calc(28px + env(safe-area-inset-bottom))}footer img{margin:auto;width:145px}footer p{margin:0;line-height:1.6}
}

@media(max-width:520px){
  .hero-copy{padding:28px 18px 24px}.hero h1{font-size:clamp(36px,11.5vw,46px)}.hero p{font-size:14px}.actions{flex-direction:column}.btn{width:100%}
  .proofs{grid-template-columns:1fr 1fr;gap:14px 8px}.proofs b{font-size:20px}
  .hero-photo{min-height:228px;background-position:center 26%}.script{font-size:25px;top:12%}.brush{width:115px;top:77%}
  .service-card{flex-basis:82vw;height:218px}.service-card img{height:148px}
  .benefits{grid-template-columns:1fr}.benefits>div,.benefits>div:nth-last-child(-n+2){border-bottom:1px solid #17354a}.benefits>div:last-child{border-bottom:0}
  .section{padding:54px 18px}.section h2{font-size:clamp(34px,10.5vw,44px)}
  .work-grid{grid-template-columns:1fr}.work-grid img{height:210px}
  .contact form{grid-template-columns:1fr;padding:16px}.contact label,.wide{grid-column:1/-1}
}

@media(max-width:380px){
  .brand img{width:125px}.hero-copy{padding-left:16px;padding-right:16px}.hero h1{font-size:35px}
  .proofs{grid-template-columns:1fr}.service-card{flex-basis:86vw}.section{padding-left:16px;padding-right:16px}
}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
