/* ПромЭлектрон — тема по макету (Manrope / IBM Plex Sans, синий #1652a6 / оранжевый #ee7522) */
:root{
  --ink:#12203a; --navy:#0e3b78; --blue:#1652a6; --orange:#ee7522;
  --muted:#5b6b85; --muted2:#475b7d; --line:#e2e8f2; --panel:#f4f7fb; --pill:#eaf1fc;
  --wrap:1240px; --sans:'IBM Plex Sans',-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  --head:'Manrope',-apple-system,Segoe UI,Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.6 var(--sans)}
img{max-width:100%;height:auto}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--orange)}
::selection{background:#d9e6fb}
h1,h2,h3,h4{font-family:var(--head);color:var(--navy);letter-spacing:-.01em;line-height:1.2}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 48px}

/* topbar */
.topbar{background:var(--navy);color:#dce6f7;font-size:13px}
.topbar-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px 20px;padding:8px 48px}
.topbar a{color:#fff}
.topbar-contacts{display:flex;gap:20px;flex-wrap:wrap}

/* header */
.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 1px 0 rgba(14,59,120,.04)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 48px;flex-wrap:wrap}
.logo{font-family:var(--head);font-weight:800;font-size:24px;letter-spacing:-.02em;color:var(--navy)}
.logo span{color:var(--orange)}
.site-nav{display:flex;gap:6px;flex-wrap:wrap}
.site-nav a{font-family:var(--sans);font-weight:600;font-size:14px;color:var(--ink);
  border:1px solid var(--line);background:var(--panel);padding:10px 18px;border-radius:8px}
.site-nav a:hover{background:#eef3fb;color:var(--ink)}
.site-nav a.active{background:var(--pill);border-color:#cddcf2;color:var(--blue)}
.nav-toggle{display:none;font-size:20px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:6px 14px;cursor:pointer;color:var(--ink)}

/* hero */
.hero{background:linear-gradient(180deg,var(--panel) 0%,#fff 100%);padding:72px 0 56px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.badge{display:inline-block;background:var(--pill);color:var(--blue);font-family:var(--head);font-weight:700;
  font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:6px 14px;border-radius:999px;margin-bottom:20px}
.hero h1{font-family:var(--head);font-weight:800;font-size:46px;line-height:1.1;margin:0 0 20px;color:var(--navy)}
.hero p{font-size:18px;color:var(--muted2);max-width:560px;margin:0 0 30px}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap}
.hero-img{width:100%;height:360px;object-fit:cover;border-radius:18px;border:1px solid var(--line)}

.btn{display:inline-block;font-family:var(--head);font-weight:700;font-size:15px;padding:15px 28px;border-radius:10px;cursor:pointer;border:1.5px solid transparent}
.btn-primary{background:var(--blue);color:#fff}
.btn-primary:hover{background:var(--navy);color:#fff}
.btn-outline{background:#fff;color:var(--navy);border-color:#cddcf2}
.btn-outline:hover{border-color:var(--blue);color:var(--navy)}

/* stats */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding-top:8px}
.stat{background:var(--panel);border-radius:14px;padding:26px}
.stat b{display:block;font-family:var(--head);font-weight:800;font-size:34px;color:var(--blue)}
.stat span{color:var(--muted);font-size:15px;margin-top:6px;display:block}

/* sections + cards */
.section{padding:52px 48px 20px}
.section h2{font-size:28px;margin:0 0 24px}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.card{display:flex;flex-direction:column;justify-content:space-between;gap:14px;min-height:120px;
  border:1px solid var(--line);border-radius:14px;padding:22px;transition:border-color .15s,box-shadow .15s,transform .15s}
.card:hover{border-color:var(--blue);box-shadow:0 8px 22px rgba(19,74,142,.08);transform:translateY(-2px)}
.card .name{font-family:var(--head);font-weight:700;font-size:16px;color:var(--ink)}
.card .more{font-size:14px;color:var(--orange);font-weight:600}
.card:hover .more{color:var(--orange)}

/* about teaser (home) */
.about-teaser{margin:44px 0 0;background:var(--panel)}
.about-teaser-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;padding:40px 48px}
.about-teaser h2{font-size:24px;margin:0 0 8px}
.about-teaser p{margin:0;color:var(--muted);max-width:640px}

/* interior page */
.page{padding-top:40px;padding-bottom:72px}
.page.narrow,.narrow{max-width:1000px}
.page-head{margin-bottom:26px}
.page-head h1{font-size:34px;margin:0}
.lead{color:var(--muted);font-size:17px;margin:12px 0 0;font-family:var(--sans)}

/* about page blocks */
.panel{background:var(--panel);border-radius:16px;padding:34px 40px}
.panel-title{text-align:center;font-family:var(--head);font-weight:700;font-size:20px;color:var(--navy);margin-bottom:18px}
.panel p{font-size:16px;line-height:1.8;color:#334463;margin:0}
.info-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:26px}
.info-card{border:1px solid var(--line);border-radius:14px;padding:22px}
.ic-h{font-family:var(--head);font-weight:700;font-size:13px;color:var(--orange);text-transform:uppercase;letter-spacing:.06em;margin-bottom:10px}
.info-card p{margin:0;font-size:15px;line-height:1.6;color:#334463}
.note{margin-top:26px;background:#fff4ec;border:1px solid #fbdcc0;border-radius:12px;padding:18px 22px;font-size:15px;color:#9a4b12}
.note a{color:#c9560f;font-weight:600}

/* prose (контент-страницы) */
.prose{max-width:900px;font-size:15.5px}
.prose h2,.prose h3,.prose h4{margin:1.5em 0 .5em}
.prose h2{font-size:22px}.prose h3{font-size:19px}
.prose p{margin:.7em 0}
.prose img{border:1px solid var(--line);border-radius:10px;padding:6px;background:#fff;margin:8px 14px 8px 0}
.prose ul,.prose ol{padding-left:1.3em;margin:.6em 0}
.prose li{margin:.25em 0}
.prose table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:14px;display:block;overflow-x:auto}
.prose th,.prose td{border:1px solid var(--line);padding:8px 11px;text-align:left;vertical-align:top}
.prose th{background:var(--panel);font-family:var(--head);font-weight:600;color:var(--navy)}
.prose tr:nth-child(even) td{background:#fafbfd}

/* product cards (Приборная продукция) */
.pcards{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.pcard{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}
.pcard:hover{border-color:var(--blue);box-shadow:0 8px 22px rgba(19,74,142,.08);transform:translateY(-2px)}
.pthumb{height:170px;display:flex;align-items:center;justify-content:center;background:var(--panel);padding:16px}
.pthumb img{max-height:100%;max-width:100%;object-fit:contain}
.pph{color:var(--muted);font-size:14px}
.pname{padding:15px 16px;font-family:var(--head);font-weight:700;font-size:15px;color:var(--ink);line-height:1.35}

/* order form */
.order-step{margin-bottom:32px}
.step-label{font-family:var(--head);font-weight:700;font-size:13px;color:var(--orange);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px}
.chips{display:flex;gap:12px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:8px;border:1.5px solid var(--line);border-radius:10px;padding:13px 22px;cursor:pointer;font-family:var(--head);font-weight:700;font-size:15px;color:var(--ink)}
.chip:has(input:checked){border-color:var(--blue);background:var(--pill);color:var(--blue)}
.chip input,.check input{width:18px;height:18px;accent-color:var(--blue);cursor:pointer}
.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.check{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;cursor:pointer;font-size:15px;color:var(--ink)}
.check:has(input:checked){border-color:var(--blue);background:var(--pill)}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px}
.order-step input[type=text],.order-step input:not([type]),.order-step input[type=tel],#f-name,#f-phone,#f-comment{
  border:1px solid var(--line);border-radius:10px;padding:13px 14px;font:15px var(--sans);width:100%;background:#fff;color:var(--ink)}
#f-comment{min-height:104px;resize:vertical}
.send-note{margin-top:14px;color:#8a97ac;font-size:13px}

/* footer */
.site-footer{background:var(--navy);color:#c3d2e4;margin-top:56px;padding:44px 0 22px;font-size:14.5px}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}
.f-logo{font-family:var(--head);font-weight:800;font-size:20px;color:#fff;margin-bottom:10px}
.f-logo span{color:var(--orange)}
.f-h{font-family:var(--head);font-weight:700;color:#fff;margin-bottom:10px}
.site-footer p{margin:0;line-height:1.7}
.site-footer a{color:#9fc4ff}
.site-footer a:hover{color:var(--orange)}
.copyright{margin-top:26px;padding-top:16px;border-top:1px solid #1e4a86;color:#8ba6c9;font-size:13px}

/* mobile */
@media (max-width:900px){
  .wrap,.topbar-inner,.header-inner,.section,.about-teaser-inner{padding-left:20px;padding-right:20px}
  .hero-grid{grid-template-columns:1fr;gap:28px}
  .hero-img{height:240px}
  .stats,.cards,.info-cards,.footer-grid,.pcards,.checks,.fields{grid-template-columns:1fr}
  .hero h1{font-size:32px}
  .nav-toggle{display:block}
  .site-nav{position:absolute;left:0;right:0;top:100%;background:#fff;flex-direction:column;gap:0;
    padding:8px 20px;display:none;border-bottom:1px solid var(--line);box-shadow:0 12px 26px rgba(0,0,0,.08)}
  body.nav-open .site-nav{display:flex}
  .site-nav a{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:12px 4px}
  .site-nav a.active{background:none}
}
@media (max-width:760px){ .pcards{grid-template-columns:1fr 1fr} }
@media (max-width:640px){ .stats{grid-template-columns:1fr} }
