/* Network Technology corporate visual system — 2026 */
:root {
  --ntg-ink: #071426;
  --ntg-navy: #0a1b33;
  --ntg-blue: #2563eb;
  --ntg-blue-strong: #1748c7;
  --ntg-cyan: #52c7ea;
  --ntg-surface: #f4f7fb;
  --ntg-border: #dce5f0;
  --ntg-muted: #5d6b7e;
  --ntg-radius: 18px;
  --ntg-shadow: 0 18px 50px rgba(7, 20, 38, .09);
}

html { scroll-behavior: smooth; }
body { color: var(--ntg-ink); background: #fff; letter-spacing: -.01em; }
h1,h2,h3,h4,h5,h6 { color: var(--ntg-ink); letter-spacing: -.035em; }
.text-white :is(h1,h2,h3,h4,h5,h6),
.text-light :is(h1,h2,h3,h4,h5,h6),
.bg-dark :is(h1,h2,h3,h4,h5,h6) { color:#fff !important; }
p { line-height: 1.72; }
.container { --bs-gutter-x: 2rem; }

/* One compact utility line + one navigation line. */
.corporate-utility { background: var(--ntg-navy) !important; min-height: 34px; padding-block: 6px !important; }
.corporate-utility > .d-flex { max-width: 1320px; margin-inline: auto; }
.corporate-utility .topbar { font-size: 12px; letter-spacing: .01em; }
.corporate-utility .mx-auto { display:flex !important; gap:14px !important; }
.corporate-utility .mx-auto a { opacity:.78; transition:opacity .16s ease,color .16s ease; }
.corporate-utility .mx-auto a:hover,
.corporate-utility .mx-auto a:focus-visible { opacity:1; color:var(--ntg-cyan) !important; }
.corporate-utility .ms-auto { gap: 12px !important; }
.corporate-utility .ms-auto > a:first-child { opacity: .86; font-size: 12px; }
.utility-support { display:flex; align-items:center; gap:8px; padding-right:14px; border-right:1px solid rgba(255,255,255,.18); }
.utility-support .icon-svg { width:18px; height:18px; color:var(--ntg-cyan); }
.utility-support-copy { display:grid; line-height:1.05; }
.utility-support-copy strong { color:#fff; font-size:10px; letter-spacing:.08em; }
.utility-support-copy > span { margin-top:3px; color:#bcd5ff; font-size:12px; font-weight:750; }
.legacy-brand-header { display: none !important; }

#mainNavbar { min-height: 78px; padding: 0; border-color: rgba(7,20,38,.08) !important; box-shadow: 0 8px 30px rgba(7,20,38,.06) !important; }
#mainNavbar .container { max-width: 1320px; }
.corporate-brand { display: inline-flex; flex:0 0 172px; align-items: center; margin-right: 24px; padding: 8px 0; }
.corporate-brand picture { display:block; width:100%; }
.corporate-brand img { width: 172px; height: 54px; object-fit: contain; }
#mainNavbar .navbar-nav { align-items: center; gap: 2px; }
#mainNavbar .navbar-nav .nav-link { color: #23324a; font-size: 14px; font-weight: 650; padding: 27px 10px; white-space: nowrap; }
#mainNavbar .navbar-nav .nav-link:hover,
#mainNavbar .navbar-nav .nav-link:focus-visible { color: var(--ntg-blue); }
/* Consumer and operational utilities stay accessible outside the primary B2B path. */
#mainNavbar #navMain > .navbar-nav > .nav-item:nth-child(5),
#mainNavbar #navMain > .navbar-nav > .nav-item:nth-child(8),
#mainNavbar #navMain > .navbar-nav > .nav-item:last-child { display:none !important; }
#mainNavbar .dropdown-menu { border: 1px solid var(--ntg-border); border-radius: 14px; box-shadow: var(--ntg-shadow); padding: 12px; }
#mainNavbar .dropdown-item { border-radius: 9px; padding: 10px 12px; }
#mainNavbar .dropdown-item:hover { background: #edf4ff; color: var(--ntg-blue-strong); }
.corporate-phone { display: grid; color: var(--ntg-ink); text-decoration: none; font-size: 13px; font-weight: 700; line-height: 1.15; white-space: nowrap; }
.corporate-phone span { color: #168657; font-size: 10px; letter-spacing: .12em; }
.corporate-consultation { border-radius: 999px; padding: 11px 17px; font-size: 13px; font-weight: 700; white-space: nowrap; box-shadow: 0 8px 22px rgba(37,99,235,.2); }

/* Site-wide refinement without changing editorial content. */
.btn { border-radius: 10px; font-weight: 650; }
.btn-primary { background: var(--ntg-blue); border-color: var(--ntg-blue); }
.btn-primary:hover { background: var(--ntg-blue-strong); border-color: var(--ntg-blue-strong); transform: translateY(-1px); }
.card, .service-card, .service-card-modern, .accordion-item { border-color: var(--ntg-border) !important; border-radius: var(--ntg-radius) !important; }
.shadow-sm { box-shadow: 0 10px 34px rgba(7,20,38,.07) !important; }
main section { scroll-margin-top: 96px; }
main > section:not([class*="hero"]):not(.bg-dark):not(.bg-primary) { position: relative; }
main section[aria-labelledby="cta-title"] h2 { color:#fff !important; }
main section[aria-labelledby="cta-title"] p { color:rgba(255,255,255,.72) !important; }

/* Home: stronger premium hierarchy around existing CMS content. */
body:has(main section[aria-labelledby="hero-title"]) main { overflow: clip; }
section[aria-labelledby="hero-title"] { min-height: 640px; display:flex; align-items:center; isolation:isolate; }
section[aria-labelledby="hero-title"]::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(4,15,31,.72),rgba(4,15,31,.88)),linear-gradient(90deg,rgba(4,15,31,.55),rgba(4,15,31,.18),rgba(4,15,31,.55)); z-index:-1; pointer-events:none; }
section#hero > .position-absolute.translate-middle { left:0 !important; width:100% !important; max-width:none !important; padding:0 clamp(24px,6vw,96px) !important; text-align:center !important; }
section[aria-labelledby="hero-title"] h1 { max-width:1050px !important; margin-inline:auto; color:#fff !important; font-size:clamp(2.8rem,4.8vw,5rem) !important; line-height:.98; letter-spacing:-.055em; font-weight:750 !important; text-wrap:balance; text-shadow:0 4px 28px rgba(0,0,0,.28); }
section[aria-labelledby="hero-title"] .lead { max-width: 900px !important; margin-inline:auto; font-size:clamp(1.05rem,1.5vw,1.3rem); line-height:1.6; color:rgba(255,255,255,.82); }
section#hero .d-flex { justify-content:center !important; }
section[aria-labelledby="hero-title"] .btn { padding: 14px 22px; }
section[aria-labelledby="hero-title"] ul { width:min(1050px,100%); margin:36px auto 0 !important; display:grid !important; grid-template-columns:repeat(3,1fr); gap:14px !important; }
section[aria-labelledby="hero-title"] ul strong { display:block; margin-bottom:4px; font-size:1.45rem; color:#fff; }
section[aria-labelledby="hero-title"] ul li { min-height:82px; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:14px 18px; color:rgba(255,255,255,.66); font-size:.72rem; letter-spacing:.06em; text-transform:uppercase; border:1px solid rgba(255,255,255,.13); border-radius:14px; background:rgba(7,20,38,.45); backdrop-filter:blur(8px); }

#services-title + .row .service-card, main .card-ntg { height:100%; border:1px solid var(--ntg-border); box-shadow:none; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
#services-title + .row .service-card:hover, main .card-ntg:hover { transform:translateY(-5px); border-color:#b9cef1; box-shadow:var(--ntg-shadow); }

/* Calculator: product configurator rather than a price-list wall. */
#calc-root { background: var(--ntg-surface); border-radius: 26px; margin: 28px auto 64px; max-width: 1360px; }
#calc-root > .container { max-width: 1300px; padding: 42px 34px !important; }
#calc-root h1 { font-size: clamp(1.75rem,3vw,2.5rem); font-weight: 750; }
.calc-needs { padding:22px; border-radius:18px; color:#fff; background:linear-gradient(125deg,var(--ntg-navy),#12315d); box-shadow:0 16px 40px rgba(7,20,38,.14); }
.calc-needs-title { margin-bottom:14px; color:rgba(255,255,255,.72); font-size:.78rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.calc-needs-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.calc-need { min-height:58px; padding:10px 14px; color:#fff; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.17); border-radius:12px; font-weight:700; text-align:left; transition:background .18s ease,border-color .18s ease,transform .18s ease; }
.calc-need:hover,.calc-need.active { background:var(--ntg-blue); border-color:#7fabff; transform:translateY(-1px); }
#calc-root .controls-row { position: sticky; top: 82px; z-index: 12; background: rgba(244,247,251,.94); backdrop-filter: blur(14px); padding: 14px; margin-inline: -14px; border: 1px solid rgba(220,229,240,.8); border-radius: 16px; }
#calc-root .form-control, #calc-root .form-select { min-height: 46px; border-color: #ccd8e7; border-radius: 11px; background-color:#fff; }
#calc-root .chipbar { flex-wrap: nowrap !important; overflow-x: auto; padding: 8px 2px 14px; scrollbar-width: thin; }
#calc-root .chipbar .btn { flex: 0 0 auto; padding: 9px 14px; background:#fff; border-color:#cbd8ea; color:#31415a; }
#calc-root .chipbar .btn.active { color:#fff; background:var(--ntg-blue); border-color:var(--ntg-blue); }
#calc-root .service-card { border:1px solid var(--ntg-border); border-radius:16px; padding:18px; margin-bottom:16px; box-shadow:0 7px 24px rgba(7,20,38,.045); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
#calc-root .service-card:hover { transform:translateY(-2px); border-color:#adc5eb; box-shadow:0 14px 34px rgba(7,20,38,.08); }
#calc-root .service-card.is-selected { background:#eef6ff !important; border:2px solid var(--ntg-blue) !important; }
#calc-root .service-card .price { color:var(--ntg-blue-strong); font-size:1rem; }
#calc-root .service-card:not(.is-selected) .qty-wrap { opacity:.3; pointer-events:none; }
#calc-root .sticky-summary { width:min(1180px,calc(100% - 28px)); bottom:14px; border-radius:18px; border:1px solid rgba(173,197,235,.8); padding:14px 18px; box-shadow:0 20px 60px rgba(7,20,38,.18); }
#calc-root .sticky-summary:has(#cartItems:empty) { display:none; }

/* Quiet, credible corporate footer. */
footer { background:var(--ntg-ink) !important; border-top:0; margin-top:0 !important; }
footer::before { background:linear-gradient(90deg,var(--ntg-blue),var(--ntg-cyan)); height:3px; }
footer h5, footer h6 { color:#fff !important; letter-spacing:-.01em; }
footer .footer-support-project { display:none !important; }
footer .btn-outline-warning { border-color:rgba(255,255,255,.28); color:#fff; }
footer .opacity-75:last-child { display:none; }

#ntg-ai-btn { width:48px !important; height:48px !important; right:16px !important; bottom:16px !important; background:var(--ntg-blue) !important; box-shadow:0 12px 28px rgba(37,99,235,.28) !important; }

@media (max-width: 1399.98px) {
  .corporate-nav-actions { display:none !important; }
  #mainNavbar .navbar-nav .nav-link { padding-inline:8px; font-size:13px; }
}
@media (max-width: 1199px) {
  #mainNavbar .navbar-nav .nav-link { padding-inline:7px; font-size:13px; }
  .corporate-utility .mx-auto { display:none !important; }
}
@media (max-width: 991.98px) {
  .corporate-utility .topbar { max-width:70%; }
  .corporate-utility .ms-auto > a:not(.utility-support):first-of-type { display:none !important; }
  .utility-support { border-right:0; padding-right:0; }
  .utility-support-copy strong { font-size:9px; }
  .utility-support-copy > span { display:none; }
  #mainNavbar { min-height:68px; }
  .corporate-brand img { width:145px; height:46px; }
  #mainNavbar .navbar-toggler { order:3; margin-left:8px; }
  #mainNavbar .navbar-collapse { order:4 !important; flex-basis:100%; max-height:calc(100vh - 108px); overflow:auto; padding:14px 0 22px; }
  #mainNavbar .navbar-nav { align-items:stretch; }
  #mainNavbar .navbar-nav .nav-link { padding:12px 4px; font-size:15px; }
  section[aria-labelledby="hero-title"] { min-height:540px; }
  section[aria-labelledby="hero-title"]::after { background:rgba(4,15,31,.84); }
  #calc-root { border-radius:0; margin-top:0; }
  #calc-root > .container { padding:30px 18px !important; }
  #calc-root .controls-row { top:68px; }
  .calc-needs-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 575.98px) {
  .corporate-utility { min-height:30px; }
  .corporate-utility .topbar { max-width:100%; width:100%; text-align:center; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
  .corporate-utility > .d-flex { flex-wrap:nowrap !important; }
  .corporate-utility .topbar { display:none; }
  .corporate-utility .ms-auto { display:flex !important; width:100%; justify-content:space-between; }
  .corporate-utility .ms-auto > *:not(.utility-support):not(a[aria-label="Български"]):not(a[aria-label="English"]) { display:none !important; }
  .utility-support-copy strong { font-size:10px; }
  .corporate-brand img { width:132px; height:42px; }
  #mainNavbar form[role="search"] { display:none !important; }
  section[aria-labelledby="hero-title"] { min-height:600px; padding-block:64px !important; }
  section[aria-labelledby="hero-title"] h1 { font-size:2.65rem !important; }
  section[aria-labelledby="hero-title"] ul { grid-template-columns:1fr !important; gap:8px !important; margin-top:24px !important; }
  section[aria-labelledby="hero-title"] ul li { min-height:58px; }
  #calc-root .controls-row { position:static; }
  .calc-needs { padding:18px; }
  .calc-needs-grid { grid-template-columns:1fr; }
  #calc-root .sticky-summary { bottom:8px; width:calc(100% - 16px); max-height:52vh; overflow:auto !important; }
}

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