/*
Theme Name: NODEX
Description: Корпоративная тема NODEX ISP
Version: 1.0
*/
@font-face{font-family:"Inter";src:url(fonts/inter-cyrillic-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116;font-display:swap}
@font-face{font-family:"Inter";src:url(fonts/inter-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-style:normal;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;font-display:swap}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scrollbar-gutter:stable}
body{font-family:"Inter","Segoe UI",Arial,sans-serif;font-size:15px;color:#333;background:#f5f7fa;line-height:1.6;display:flex;flex-direction:column;min-height:100vh}
#footer{margin-top:auto}
a{color:#0078b4;text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:1060px;margin:0 auto;padding:0 20px}
#header{background:#fff;border-bottom:3px solid #0078b4;box-shadow:0 2px 8px rgba(0,0,0,.08)}
.header-inner{display:flex;align-items:center;height:70px;gap:40px}
.header-phone{margin-left:auto;font-size:17px;font-weight:700;color:#0078b4;text-decoration:none;letter-spacing:-.3px;white-space:nowrap}
.header-phone:hover{color:#005a8a;text-decoration:none}
.site-logo{flex-shrink:0;display:block;width:180px;height:40px;background-repeat:no-repeat;background-position:center;background-size:contain}
.site-tagline{color:#888;font-size:12px;border-left:1px solid #ddd;padding-left:20px}
#nav{background:#0078b4}
.nav-inner{display:flex}
.nav-inner ul{display:flex;list-style:none;margin:0;padding:0}
.nav-inner li{display:block}
.nav-inner a{color:#fff;padding:12px 20px;display:block;font-size:14px;border-right:1px solid rgba(255,255,255,.15);transition:background .2s}
.nav-inner a:hover,.nav-inner a.current{background:#005a8a;text-decoration:none}
@keyframes hero-grid-shift{0%{background-position:0 0,0 0,0 0}100%{background-position:56px 56px,0 0,0 0}}
#hero{background:linear-gradient(135deg,#0a1628 0%,#0d2d5c 35%,#0a4a8c 65%,#0078b4 100%);color:#fff;padding:80px 0;min-height:380px;display:flex;align-items:center;position:relative;overflow:hidden}
#hero::before{content:'';position:absolute;inset:0;background:linear-gradient(rgba(5,12,24,.28),rgba(5,12,24,.28)),linear-gradient(90deg,transparent 0,transparent 650px,rgba(8,18,34,.18) 780px,rgba(8,18,34,.45) 900px,rgba(8,18,34,.8) 1020px,rgba(8,18,34,.97) 1140px,#050d1a 1250px,#030812 100%),url('hero-bg.png') left 20%/auto 100% no-repeat;pointer-events:none}
#hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 80% at 75% 50%,rgba(0,150,220,.15) 0%,transparent 70%);pointer-events:none;animation:hero-pulse 6s ease-in-out infinite alternate}
@keyframes hero-pulse{0%{opacity:.6}100%{opacity:1}}
#hero .container{position:relative;z-index:1}
.hero-content{text-align:center}
.hero-content h1{font-size:40px;font-weight:700;margin-bottom:16px;letter-spacing:-1px;text-shadow:0 2px 8px rgba(0,0,0,.5)}
.hero-content p{font-size:18px;max-width:580px;margin:0 auto 30px;text-shadow:0 1px 6px rgba(0,0,0,.5)}
.hero-btn{display:inline-block;background:#fff;color:#0078b4;padding:14px 36px;border-radius:4px;font-weight:700;font-size:15px}
.hero-btn:hover{background:#e8f4fc;text-decoration:none}
.hero-trust{display:flex;justify-content:center;gap:32px;margin-top:32px;flex-wrap:wrap}
.hero-trust span{font-size:13px;color:rgba(255,255,255,.75);display:flex;align-items:center;gap:7px}
.hero-trust span::before{content:'';width:6px;height:6px;border-radius:50%;background:#0078b4;border:1px solid rgba(255,255,255,.5);flex-shrink:0}
#clients-band{background:#fff;border-bottom:1px solid #e8eef4;padding:18px 0}
.clients-inner{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.clients-label{font-size:12px;color:#999;text-transform:uppercase;letter-spacing:.6px;white-space:nowrap;flex-shrink:0}
.clients-list{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.client-item{padding:6px 18px;border:1px solid #e0eaf2;border-radius:4px;font-size:14px;color:#555;font-weight:600;background:#fafbfd;white-space:nowrap}
.client-item img{height:28px;width:auto;opacity:.7;display:block}
#services{padding:60px 0;background:#fff}
#services>div>h2{text-align:center;font-size:28px;color:#111;margin-bottom:40px}
.services-grid{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}
.service-card{flex:0 0 calc(33.333% - 16px);min-width:260px}
.service-card{background:#f9fbfd;border:1px solid #e0eaf2;border-radius:6px;padding:28px 24px;transition:box-shadow .2s,transform .2s}
.service-card:hover{box-shadow:0 4px 20px rgba(0,120,180,.12);transform:translateY(-3px)}
.service-icon{font-size:34px;margin-bottom:12px}
.service-card h3{font-size:17px;color:#0078b4;margin-bottom:10px}
.service-card p{color:#666;font-size:14px}
#why{padding:60px 0;background:#f0f4f8}
#why>div>h2{text-align:center;font-size:28px;color:#111;margin-bottom:40px}
.why-grid{display:flex;flex-wrap:wrap;gap:20px;justify-content:center}
.why-item{background:#fff;border:none;border-radius:12px;padding:28px 20px;flex:0 0 calc(20% - 16px);min-width:180px;text-align:center;box-shadow:0 2px 16px rgba(0,0,0,.07);transition:transform .2s,box-shadow .2s}
.why-item:hover{transform:translateY(-4px);box-shadow:0 6px 24px rgba(0,120,180,.13)}
.why-icon{font-size:28px;margin:0 auto 16px;width:60px;height:60px;background:#e8f4fc;border-radius:50%;display:flex;align-items:center;justify-content:center}
.why-title{font-size:15px;font-weight:700;color:#111;margin-bottom:8px}
.why-desc{font-size:13px;color:#666;line-height:1.55}
#contact-band{background:#0078b4;color:#fff;padding:50px 0}
.contact-band-inner{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.contact-info h2{font-size:24px;margin-bottom:16px}
.contact-info p{opacity:.9;margin-bottom:8px;font-size:14px}
.contact-phone{font-size:34px;font-weight:900;letter-spacing:-1px;margin:14px 0}
.contact-form input,.contact-form textarea{width:100%;padding:10px 14px;margin-bottom:10px;border:1px solid rgba(255,255,255,.3);border-radius:4px;font-size:14px;background:rgba(255,255,255,.15);color:#fff}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:rgba(255,255,255,.6)}
.contact-form .nodex-pulse{animation:nodexPulse 1.6s ease-out;background:rgba(255,255,255,.35)!important}
@keyframes nodexPulse{0%{box-shadow:0 0 0 0 rgba(255,255,255,.9);background:rgba(255,255,255,.6)}70%{box-shadow:0 0 0 14px rgba(255,255,255,0)}100%{box-shadow:0 0 0 0 rgba(255,255,255,0);background:rgba(255,255,255,.15)}}
.contact-form textarea{height:90px;resize:vertical}
.contact-form button{background:#fff;color:#0078b4;border:none;padding:12px 28px;border-radius:4px;font-weight:700;cursor:pointer;font-size:15px;width:100%}
.contact-form button:hover{background:#e8f4fc}
#footer{background:#1a2940;color:#aab;padding:40px 0 20px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;margin-bottom:28px}
.footer-logo{font-size:22px;font-weight:900;color:#fff;margin-bottom:8px}
.footer-logo span{color:#0078b4}
.footer-desc{font-size:13px;line-height:1.7}
.footer-col h4{color:#fff;font-size:13px;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}
.footer-col ul{list-style:none}
.footer-col ul li{margin-bottom:7px}
.footer-col ul li a{color:#aab;font-size:13px}
.footer-col ul li a:hover{color:#fff}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:18px;font-size:12px;color:#778;display:flex;justify-content:space-between}
.page-hero{background:linear-gradient(135deg,#0a1628 0%,#0d2d5c 40%,#0a4a8c 75%,#0078b4 100%);color:#fff;padding:28px 0;display:flex;align-items:center;border-bottom:1px solid rgba(255,255,255,.08)}
.page-hero .container{width:100%;display:flex;align-items:center;justify-content:center}
.page-hero h1{font-size:28px;font-weight:700;text-align:center;letter-spacing:-.3px}
#content{padding:50px 0}
.page-title{font-size:30px;color:#111;margin-bottom:28px;padding-bottom:12px;border-bottom:2px solid #0078b4}
.entry-content h2{font-size:20px;color:#0078b4;margin:28px 0 12px}
.entry-content p{margin-bottom:14px;color:#444}
.entry-content ul{padding-left:22px;margin-bottom:14px}
.entry-content ul li{margin-bottom:6px;color:#444}
.service-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:30px}
.service-box{background:#f9fbfd;border:1px solid #e0eaf2;border-radius:6px;padding:24px}
.service-box h3{color:#0078b4;margin-bottom:10px;font-size:16px}
.cta-box{background:#0078b4;color:#fff;border-radius:6px;padding:30px;text-align:center;margin-top:30px}
.cta-box h3{font-size:20px;margin-bottom:10px}
.cta-box p{opacity:.9;margin-bottom:18px}
.cta-box a{display:inline-block;background:#fff;color:#0078b4;padding:11px 28px;border-radius:4px;font-weight:700}
/* About page */
#about-page{padding:50px 0}
.about-intro{display:grid;grid-template-columns:1fr 340px;gap:50px;align-items:start;margin-bottom:50px}
.about-intro-text h2{font-size:26px;color:#111;margin-bottom:16px}
.about-intro-text p{color:#555;font-size:15px;line-height:1.7;margin-bottom:12px}
.about-stats{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.about-stat{background:#0078b4;color:#fff;border-radius:8px;padding:20px;text-align:center}
.about-stat-num{font-size:32px;font-weight:900;line-height:1}
.about-stat-label{font-size:12px;opacity:.85;margin-top:6px}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-bottom:40px}
.about-block{background:#fff;border:1px solid #e0eaf2;border-radius:8px;padding:28px}
.about-block h3{font-size:16px;font-weight:700;color:#0078b4;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid #e0eaf2}
.about-table{width:100%;border-collapse:collapse;font-size:13px}
.about-table tr{border-bottom:1px solid #f0f4f8}
.about-table tr:last-child{border-bottom:none}
.about-table td{padding:8px 4px;vertical-align:top;line-height:1.5}
.about-table td:first-child{color:#888;width:42%;padding-right:12px}
.about-table td:last-child{color:#222;font-weight:500}
.license-list{display:flex;flex-direction:column;gap:12px}
.license-item{background:#f5f8fb;border-radius:6px;padding:12px 16px}
.license-num{font-size:13px;font-weight:600;color:#222}
.license-date{font-size:12px;color:#888;margin-top:3px}
.about-cta{background:#0078b4;color:#fff;border-radius:8px;padding:24px 30px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.about-cta strong{display:block;font-size:16px;margin-bottom:4px}
.about-cta span{font-size:14px;opacity:.9}
.about-cta-btn{background:#fff;color:#0078b4;padding:11px 28px;border-radius:4px;font-weight:700;white-space:nowrap;flex-shrink:0}
.about-cta-btn:hover{background:#e8f4fc;text-decoration:none}
/* Contacts page */
#contacts-page{padding:50px 0}
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:start;margin-bottom:40px}
.contact-cards{display:flex;flex-direction:column;gap:10px;height:100%}
.contact-card{display:flex;flex-direction:row;align-items:center;gap:16px;background:#fff;border:1px solid #e0eaf2;border-radius:10px;padding:16px 20px;box-shadow:0 2px 8px rgba(0,0,0,.04);transition:box-shadow .2s;flex:1}
.contact-card:hover{box-shadow:0 4px 16px rgba(0,120,180,.1)}
.contact-card-icon{width:44px;height:44px;border-radius:10px;background:#e8f4fc;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.contact-card-body{flex:1}
.contact-card-label{font-size:11px;color:#0078b4;text-transform:uppercase;letter-spacing:.6px;font-weight:700;margin-bottom:3px}
.contact-card-value{font-size:14px;color:#333;line-height:1.6}
.contact-card-value a{color:#0078b4}
.contact-card-value a:hover{text-decoration:underline}
.contacts-form-wrap{background:#fff;border:1px solid #e0eaf2;border-radius:8px;padding:30px}
.contacts-form-wrap h2{font-size:20px;color:#111;margin-bottom:8px}
.contacts-form-wrap>p{font-size:14px;color:#666;margin-bottom:20px}
.contacts-form input,.contacts-form textarea{width:100%;padding:10px 14px;margin-bottom:12px;border:1px solid #d0dce8;border-radius:4px;font-size:14px;font-family:inherit;color:#333}
.contacts-form textarea{height:100px;resize:vertical}
.contacts-form button{background:#0078b4;color:#fff;border:none;padding:12px 28px;border-radius:4px;font-weight:700;cursor:pointer;font-size:15px;width:100%}
.contacts-form button:hover{background:#005a8a}
.form-success{background:#e8f8ee;border:1px solid #a8ddb8;border-radius:6px;padding:18px;color:#1a6e35;font-weight:600;text-align:center}
.contacts-map{border-radius:8px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.08)}
/* Services page */
#services-page{padding:50px 0}
.svc-list{display:flex;flex-direction:column;gap:2px}
.svc-item{display:flex;gap:28px;background:#fff;border:1px solid #e0eaf2;border-radius:8px;padding:32px 28px;margin-bottom:16px;align-items:flex-start;transition:box-shadow .2s}
.svc-item:hover{box-shadow:0 4px 20px rgba(0,120,180,.1)}
.svc-icon{font-size:40px;flex-shrink:0;width:56px;text-align:center;margin-top:4px}
.svc-body h2{font-size:20px;color:#0078b4;margin-bottom:10px}
.svc-body>p{font-size:14px;color:#555;line-height:1.7;margin-bottom:16px}
.svc-features{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:7px}
.svc-features li{font-size:13px;color:#444;padding-left:16px;position:relative}
.svc-features li::before{content:"\2713";position:absolute;left:0;color:#0078b4;font-weight:700}
.svc-cta{display:inline-block;background:#0078b4;color:#fff;padding:9px 22px;border-radius:4px;font-size:14px;font-weight:600}
.svc-cta:hover{background:#005a8a;text-decoration:none}
@media(max-width:768px){
  .services-grid,.contact-band-inner,.footer-grid,.service-detail-grid{grid-template-columns:1fr}
  .why-grid{gap:12px}
  .why-item{flex:0 0 calc(50% - 6px);min-width:140px}
  #hero{padding:40px 0;min-height:260px}
  .hero-trust span:nth-child(n+4){display:none}
  .hero-content h1{font-size:22px;margin-bottom:8px}
  .hero-content p{font-size:13px;margin-bottom:12px}
  .hero-btn{padding:8px 18px;font-size:12px;margin-top:5px}
  .header-inner{height:56px;gap:16px}
  .site-tagline{display:none}
  .header-phone{display:none}
  .nav-inner a{padding:10px 10px;font-size:13px}
  #services{padding:30px 0}
  .service-card{flex:0 0 100%;min-width:0;width:100%}
  .page-hero{padding:20px 0}
  .page-hero h1{font-size:22px}
  .page-hero h1{font-size:28px;text-align:center;padding-bottom:0}
  .about-intro,.about-grid,.contacts-grid{grid-template-columns:1fr}
  .svc-item{flex-direction:column;gap:16px}
  .svc-icon{width:auto}
  .contact-cards{grid-template-columns:1fr}
  .about-cta{flex-direction:column;text-align:center}
  .footer-grid{grid-template-columns:1fr}
}
