/*
Theme Name: Navysim
Theme URI: https://navysim.eu
Author: Navysim
Description: Custom theme for Navysim – NaviSim training simulators (bilingual EN/BG).
Version: 1.5
Requires at least: 6.0
Text Domain: navysim
*/

  :root{
    --navy:#0A1826; --navy2:#112A3B; --navy3:#0D2032; --navy4:#15334A;
    --white:#FFFFFF; --fog:#B7C4CB; --fog-dim:#8497A0;
    --amber:#C4955A; --amber-soft:rgba(196,149,90,0.12);
    --radar:#4A9FD8; --line:rgba(255,255,255,0.10); --line2:rgba(255,255,255,0.06);
    --container:1220px;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;scroll-padding-top:84px;}
  body{background:var(--navy);color:var(--fog);font-family:'IBM Plex Sans',system-ui,sans-serif;line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased;}
  .display{font-family:'Oswald',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:0.01em;line-height:1.06;}
  .mono{font-family:'IBM Plex Mono',monospace;}
  a{color:inherit;text-decoration:none;}
  button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;}
  :focus-visible{outline:2px solid var(--amber);outline-offset:3px;}
  @media (prefers-reduced-motion: reduce){*{animation:none !important;transition:none !important;} html{scroll-behavior:auto;}}
  .wrap{max-width:var(--container);margin:0 auto;padding:0 32px;}
  .skip{position:absolute;left:-999px;top:8px;background:var(--white);color:var(--navy);padding:10px 16px;z-index:200;}
  .skip:focus{left:8px;}

  /* ---------- NAV ---------- */
  header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(10,24,38,0.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
  .nav-inner{max-width:var(--container);margin:0 auto;padding:16px 32px;display:flex;align-items:center;gap:28px;}
  .logo img{height:34px;width:auto;display:block;}
  nav.main{margin-left:auto;}
  nav.main ul{list-style:none;display:flex;gap:28px;}
  nav.main a{font-size:12.5px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--fog-dim);transition:color .2s;padding:6px 0;}
  nav.main a:hover{color:var(--white);}
  .lang{display:flex;border:1px solid var(--line);}
  .lang button{font-family:'IBM Plex Mono';font-size:11.5px;letter-spacing:0.08em;padding:7px 10px;color:var(--fog-dim);transition:color .2s,background .2s;}
  .lang button[aria-pressed="true"]{background:var(--white);color:var(--navy);}
  .lang button:not([aria-pressed="true"]):hover{color:var(--white);}
  .nav-cta{border:1px solid var(--fog-dim);padding:11px 22px;font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--white);transition:border-color .2s,background .2s;white-space:nowrap;}
  .nav-cta:hover{border-color:var(--amber);background:var(--amber-soft);}
  .burger{display:none;width:40px;height:40px;position:relative;}
  .burger span,.burger span::before,.burger span::after{position:absolute;left:10px;right:10px;height:1.5px;background:var(--white);content:'';transition:transform .25s,top .25s,opacity .2s;}
  .burger span{top:19px;}
  .burger span::before{left:0;right:0;top:-6px;}
  .burger span::after{left:0;right:0;top:6px;}
  .burger[aria-expanded="true"] span{background:transparent;}
  .burger[aria-expanded="true"] span::before{top:0;transform:rotate(45deg);}
  .burger[aria-expanded="true"] span::after{top:0;transform:rotate(-45deg);}

  /* ---------- HERO ---------- */
  .hero{position:relative;padding:176px 0 0;overflow:hidden;}
  .hero-bg{position:absolute;inset:0;pointer-events:none;
    background-image:linear-gradient(100deg, rgba(10,24,38,0.9) 0%, rgba(10,24,38,0.66) 45%, rgba(10,24,38,0.42) 75%, rgba(10,24,38,0.35) 100%),linear-gradient(0deg, var(--navy) 0%, rgba(10,24,38,0) 30%),url('assets/img/hero-bridge.jpg');
    background-size:cover;background-position:center 55%;}
  .chart-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--line) 1px, transparent 1px),linear-gradient(90deg, var(--line) 1px, transparent 1px);background-size:64px 64px;mask-image:radial-gradient(ellipse at 70% 10%, black 0%, black 35%, transparent 72%);-webkit-mask-image:radial-gradient(ellipse at 70% 10%, black 0%, black 35%, transparent 72%);opacity:0.5;}
  .radar-wrap{position:absolute;right:max(32px, calc((100vw - var(--container)) / 2 + 32px));top:80px;width:440px;height:440px;border-radius:50%;border:1px solid var(--line);pointer-events:none;}
  .radar-wrap::before,.radar-wrap::after{content:'';position:absolute;border-radius:50%;border:1px solid var(--line);}
  .radar-wrap::before{inset:15%;} .radar-wrap::after{inset:34%;}
  .radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg, rgba(255,255,255,0.26), transparent 20%);animation:spin 7s linear infinite;mask-image:radial-gradient(circle, black 62%, transparent 100%);-webkit-mask-image:radial-gradient(circle, black 62%, transparent 100%);}
  @keyframes spin{to{transform:rotate(360deg);}}
  .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr 0.8fr;gap:56px;align-items:end;padding-bottom:64px;}
  .eyebrow{font-family:'IBM Plex Mono';font-size:12px;letter-spacing:0.18em;color:var(--amber);text-transform:uppercase;margin-bottom:24px;display:flex;align-items:center;gap:12px;}
  .eyebrow::before{content:'';width:30px;height:1px;background:var(--amber);flex-shrink:0;}
  .hero h1{font-size:clamp(40px,5.2vw,72px);color:var(--white);max-width:680px;}
  .hero h1 .thin{font-weight:400;color:var(--fog);}
  .hero-side{border-left:1px solid var(--line);padding-left:36px;}
  .hero-side p{font-size:15.5px;color:var(--white);margin-bottom:28px;}
  .hero-side p b{color:var(--amber);font-weight:600;}
  .hero-actions{display:flex;gap:14px;flex-wrap:wrap;}
  .btn-primary{display:inline-block;background:var(--white);color:var(--navy);padding:16px 30px;font-size:13px;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;transition:background .2s;}
  .btn-primary:hover{background:var(--amber);}
  .btn-secondary{display:inline-block;border:1px solid var(--fog-dim);color:var(--white);padding:16px 30px;font-size:13px;letter-spacing:0.06em;text-transform:uppercase;transition:border-color .2s;}
  .btn-secondary:hover{border-color:var(--white);}
  /* domain ticker under hero */
  .domains{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);}
  .domain{padding:22px 24px 26px;border-right:1px solid var(--line);transition:background .2s;display:block;}
  .domain:last-child{border-right:none;}
  .domain:hover{background:rgba(255,255,255,0.03);}
  .domain .n{font-family:'IBM Plex Mono';font-size:11px;color:var(--amber);letter-spacing:0.12em;}
  .domain .t{font-family:'Oswald';font-weight:500;font-size:17px;color:var(--white);text-transform:uppercase;letter-spacing:0.03em;margin:6px 0 2px;}
  .domain .s{font-size:12.5px;color:var(--fog-dim);}

  /* ---------- STATS ---------- */
  .stats-strip{background:var(--navy3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:38px 0;}
  .stats-row{display:flex;flex-wrap:wrap;}
  .stat-item{flex:1;min-width:160px;padding:0 24px;text-align:center;}
  .stat-item:not(:first-child){border-left:1px solid var(--line);}
  .stat-num{font-family:'Oswald';font-weight:600;font-size:clamp(30px,3.4vw,40px);color:var(--white);line-height:1;display:inline-flex;align-items:baseline;gap:1px;}
  .stat-num .plus{color:var(--amber);}
  .stat-label{font-size:11.5px;color:var(--fog-dim);text-transform:uppercase;letter-spacing:0.09em;margin-top:10px;}

  /* ---------- SECTIONS ---------- */
  .section{padding:112px 0;}
  .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:48px;flex-wrap:wrap;}
  .section-head h2{font-size:clamp(28px,3.6vw,44px);color:var(--white);max-width:640px;}
  .section-desc{max-width:360px;font-size:14.5px;color:var(--fog-dim);}

  /* filter tabs */
  .tabs{display:flex;flex-wrap:wrap;gap:0;border:1px solid var(--line);margin-bottom:28px;width:max-content;max-width:100%;}
  .tabs button{font-family:'IBM Plex Mono';font-size:12px;letter-spacing:0.08em;text-transform:uppercase;padding:12px 18px;color:var(--fog-dim);border-right:1px solid var(--line);transition:color .2s,background .2s;}
  .tabs button:last-child{border-right:none;}
  .tabs button:hover{color:var(--white);}
  .tabs button[aria-selected="true"]{background:var(--white);color:var(--navy);}

  /* simulator cards */
  .sim-grid{display:grid;grid-auto-flow:dense;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line);}
  .sim{background:var(--navy);border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 30px 30px;display:flex;flex-direction:column;transition:background .25s;position:relative;}
  .sim:hover{background:var(--navy2);}
  .sim[hidden]{display:none;}
  .sim-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;}
  .sim-idx{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--amber);letter-spacing:0.1em;}
  .sim-ico{width:52px;height:52px;color:var(--white);opacity:0.9;}
  .sim-ico svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;}
  .sim h3{font-family:'Oswald';font-weight:600;font-size:22px;color:var(--white);text-transform:uppercase;letter-spacing:0.01em;margin-bottom:10px;line-height:1.15;}
  .sim p{font-size:14px;color:var(--fog);margin-bottom:16px;}
  .sim ul{list-style:none;font-size:13px;margin-bottom:22px;}
  .sim li{padding:7px 0 7px 16px;border-top:1px solid var(--line2);color:var(--fog-dim);position:relative;}
  .sim li::before{content:'';position:absolute;left:0;top:15px;width:6px;height:1px;background:var(--amber);}
  .tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px;}
  .tag{font-family:'IBM Plex Mono';font-size:10.5px;letter-spacing:0.05em;color:var(--fog);border:1px solid var(--line);padding:4px 8px;}
  .sim.feature{grid-column:span 2;}
  .sim.wide{grid-column:span 3;}
  .sim.wide .sim-body{display:grid;grid-template-columns:1fr 1fr;gap:10px 36px;}
  .sim.feature .sim-body{display:grid;grid-template-columns:1fr 1fr;gap:10px 36px;}
  .sim.feature h3{font-size:26px;}
  .badge{display:inline-block;font-family:'IBM Plex Mono';font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--navy);background:var(--amber);padding:3px 7px;margin-left:10px;vertical-align:middle;}

  /* also-offer row */
  .also{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-top:none;margin-top:0;}
  .also > div{background:var(--navy3);padding:26px 30px;}
  .also h4{font-family:'IBM Plex Mono';font-size:11.5px;font-weight:500;letter-spacing:0.12em;text-transform:uppercase;color:var(--amber);margin-bottom:10px;}
  .also p{font-size:13.5px;color:var(--fog-dim);}

  /* ---------- PLATFORM ---------- */
  .platform{background:var(--navy3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .pf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);}
  .pf{padding:32px 30px 34px 0;border-bottom:1px solid var(--line);}
  .pf:not(:nth-child(3n+1)){padding-left:30px;border-left:1px solid var(--line);}
  .pf .k{font-family:'IBM Plex Mono';font-size:11.5px;color:var(--amber);letter-spacing:0.1em;margin-bottom:14px;}
  .pf h3{font-family:'Oswald';font-weight:500;font-size:19px;color:var(--white);text-transform:uppercase;letter-spacing:0.02em;margin-bottom:8px;}
  .pf p{font-size:14px;color:var(--fog-dim);}

  /* ---------- STRIP ---------- */
  .strip{padding:64px 0;border-bottom:1px solid var(--line);}
  .strip-text{font-family:'Oswald';font-weight:500;font-size:clamp(22px,3.1vw,36px);color:var(--fog);text-transform:uppercase;letter-spacing:0.01em;max-width:920px;line-height:1.3;}
  .strip-text em{font-style:normal;color:var(--white);}

  /* ---------- PROJECTS GALLERY ---------- */
  .gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
  .gallery figure{position:relative;overflow:hidden;background:var(--navy2);aspect-ratio:4/3;}
  .gallery figure.big{grid-column:span 2;grid-row:span 2;aspect-ratio:auto;}
  .gallery img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;}
  .gallery figure:hover img{transform:scale(1.04);}
  .gallery figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 16px 12px;background:linear-gradient(0deg,rgba(10,24,38,.9),rgba(10,24,38,0));font-family:'IBM Plex Mono';font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--white);}
  @media (max-width:900px){.gallery{grid-template-columns:1fr 1fr;} .gallery figure.big{grid-column:span 2;grid-row:auto;aspect-ratio:4/3;}}
  @media (max-width:520px){.gallery{grid-template-columns:1fr;} .gallery figure.big{grid-column:auto;}}

  /* ---------- PRESENCE ---------- */
  .presence-grid{display:grid;grid-template-columns:0.9fr 1.1fr;gap:60px;align-items:stretch;}
  .coord-table{border-top:1px solid var(--line);}
  .coord-row{display:flex;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--line);align-items:baseline;gap:16px;}
  .coord-region{font-family:'Oswald';font-weight:500;font-size:18px;color:var(--white);text-transform:uppercase;letter-spacing:0.02em;}
  .coord-num{font-family:'IBM Plex Mono';font-size:12.5px;color:var(--amber);text-align:right;}
  .plot{position:relative;border:1px solid var(--line);background:var(--navy3);min-height:320px;overflow:hidden;}
  .plot svg{position:absolute;inset:0;width:100%;height:100%;}
  .plot .hq{position:absolute;left:24px;bottom:22px;font-family:'IBM Plex Mono';font-size:12px;color:var(--fog);line-height:1.7;}
  .plot .hq b{color:var(--white);font-weight:500;letter-spacing:0.08em;}

  /* ---------- STANDARDS ---------- */
  .std-row{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .std{padding:24px 18px;border-right:1px solid var(--line);}
  .std:last-child{border-right:none;}
  .std .c{font-family:'IBM Plex Mono';font-size:13px;color:var(--white);letter-spacing:0.04em;}
  .std .d{font-size:12.5px;color:var(--fog-dim);margin-top:6px;}

  /* ---------- CTA ---------- */
  .cta{padding:124px 0;text-align:center;border-top:1px solid var(--line);background:linear-gradient(180deg, var(--navy), var(--navy3));}
  .cta h2{font-size:clamp(30px,4.4vw,54px);color:var(--white);max-width:760px;margin:0 auto 20px;}
  .cta p{max-width:520px;margin:0 auto 36px;color:var(--fog-dim);font-size:15px;}
  .cta .eyebrow{justify-content:center;}
  .cta .hero-actions{justify-content:center;}

  /* ---------- FOOTER ---------- */
  footer{padding:60px 0 34px;border-top:1px solid var(--line);}
  .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:40px;}
  .foot-brand img{height:28px;width:auto;}
  .foot-tag{font-size:13px;color:var(--fog-dim);margin-top:14px;max-width:260px;}
  .foot-col h4{font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--amber);margin-bottom:16px;font-weight:500;}
  .foot-col ul{list-style:none;}
  .foot-col li{margin-bottom:10px;font-size:13.5px;color:var(--fog-dim);}
  .foot-col a:hover{color:var(--white);}
  .foot-bottom{display:flex;justify-content:space-between;padding-top:26px;border-top:1px solid var(--line);font-size:12px;color:var(--fog-dim);flex-wrap:wrap;gap:10px;}

  /* ---------- RESPONSIVE ---------- */
  @media (max-width:1080px){
    .sim-grid{grid-template-columns:repeat(2,1fr);}
    .sim.feature{grid-column:span 2;}
    .sim.wide{grid-column:auto;}
    .sim.wide .sim-body{grid-template-columns:1fr;}
    .std-row{grid-template-columns:repeat(3,1fr);}
    .std:nth-child(3){border-right:none;}
    .std:nth-child(n+4){border-top:1px solid var(--line);}
    nav.main ul{gap:20px;}
  }
  @media (max-width:900px){
    .wrap{padding:0 24px;}
    .nav-inner{padding:14px 24px;gap:14px;}
    .burger{display:block;}
    nav.main{position:fixed;top:65px;left:0;right:0;background:var(--navy);border-bottom:1px solid var(--line);display:none;margin:0;}
    nav.main.open{display:block;}
    nav.main ul{flex-direction:column;gap:0;padding:8px 24px 20px;}
    nav.main a{display:block;padding:14px 0;border-bottom:1px solid var(--line2);font-size:13px;}
    .lang{margin-left:auto;}
    .nav-cta{display:none;}
    .hero{padding-top:130px;}
    .radar-wrap{width:300px;height:300px;right:24px;top:40px;}
    .hero-grid{grid-template-columns:1fr;gap:30px;padding-bottom:44px;}
    .hero-side{border-left:none;padding-left:0;border-top:1px solid var(--line);padding-top:24px;}
    .domains{grid-template-columns:repeat(2,1fr);}
    .domain:nth-child(2){border-right:none;}
    .domain:nth-child(n+3){border-top:1px solid var(--line);}
    .stat-item{min-width:33.33%;padding:0 12px;}
    .stat-num{font-size:clamp(24px,6vw,32px);}
    .stat-label{font-size:10px;}
    .section{padding:76px 0;}
    .section-desc{max-width:100%;}
    .sim-grid{grid-template-columns:1fr;}
    .sim.feature{grid-column:auto;}
    .sim.feature .sim-body{grid-template-columns:1fr;}
    .also{grid-template-columns:1fr;}
    .pf-grid{grid-template-columns:1fr;}
    .pf,.pf:not(:nth-child(3n+1)){padding:24px 0;border-left:none;}
    .presence-grid{grid-template-columns:1fr;gap:32px;}
    .plot{min-height:260px;}
    .std-row{grid-template-columns:1fr 1fr;}
    .std{border-right:none !important;border-top:1px solid var(--line);}
    .std:nth-child(-n+2){border-top:none;}
    .std:nth-child(odd){border-right:1px solid var(--line) !important;}
    .cta{padding:80px 0;}
    .foot-grid{grid-template-columns:1fr 1fr;gap:28px;}
    .foot-bottom{flex-direction:column;gap:6px;}
  }
  @media (max-width:520px){
    .wrap{padding:0 16px;}
    .nav-inner{padding:12px 16px;}
    .logo img{height:26px;}
    nav.main{top:57px;}
    nav.main ul{padding:6px 16px 16px;}
    .hero{padding-top:108px;}
    .radar-wrap{width:200px;height:200px;right:16px;top:20px;opacity:0.6;}
    .hero h1{font-size:clamp(30px,9vw,40px);}
    .eyebrow{font-size:11px;letter-spacing:0.14em;}
    .hero-actions{flex-direction:column;}
    .btn-primary,.btn-secondary{width:100%;text-align:center;}
    .domains{grid-template-columns:1fr;}
    .domain{border-right:none !important;border-top:1px solid var(--line);}
    .domain:first-child{border-top:none;}
    .stats-row{flex-direction:column;}
    .stat-item{min-width:100%;padding:16px 0;border-left:none !important;border-top:1px solid var(--line);text-align:left;display:flex;align-items:baseline;justify-content:space-between;}
    .stat-item:first-child{border-top:none;}
    .stat-label{margin-top:0;}
    .tabs{width:100%;}
    .tabs button{flex:1 1 50%;border-bottom:1px solid var(--line);padding:11px 10px;}
    .sim{padding:28px 20px;}
    .std-row{grid-template-columns:1fr;}
    .std{border-right:none !important;border-top:1px solid var(--line) !important;}
    .std:first-child{border-top:none !important;}
    .foot-grid{grid-template-columns:1fr;}
  }
  @media (min-width:1600px){
    :root{--container:1440px;}
    .hero{padding-top:196px;}
    .radar-wrap{width:520px;height:520px;}
    .section{padding:140px 0;}
  }
  /* ---------- MEGA MENU ---------- */
  .nav-inner{position:relative;}
  nav.main .menu{list-style:none;display:flex;gap:22px;align-items:center;}
  nav.main .menu > li{position:static;}
  nav.main .menu > li.has-sub:not(.wide){position:relative;}
  nav.main .menu > li > a,.sub-toggle{white-space:nowrap;font-size:12px !important;letter-spacing:0.07em !important;}
  .sub-toggle{font-size:12.5px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--fog-dim);padding:6px 0;display:inline-flex;align-items:center;gap:7px;transition:color .2s;}
  .sub-toggle::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s;}
  .has-sub:hover .sub-toggle,.has-sub.open .sub-toggle{color:var(--white);}
  .has-sub.open .sub-toggle::after{transform:translateY(1px) rotate(-135deg);}
  .mega{position:absolute;top:100%;left:32px;right:32px;margin-top:0;background:var(--navy);border:1px solid var(--line);border-top:2px solid var(--amber);padding:26px 28px 24px;display:none;grid-template-columns:1fr 1.25fr 1fr;gap:10px 36px;box-shadow:0 24px 60px rgba(0,0,0,.45);z-index:120;}
  .mega::before{content:'';position:absolute;left:0;right:0;top:-24px;height:24px;}
  .has-sub:not(.wide) .mega{left:-24px;right:auto;top:100%;margin-top:22px;}
  .mega ul{display:block !important;}
  .mega.drop{grid-template-columns:1fr;min-width:250px;}
  .has-sub.open > .mega{display:grid;}
  @media (hover:hover) and (min-width:1181px){.has-sub:hover > .mega{display:grid;}}
  .mega h5{font-family:'IBM Plex Mono';font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);margin-bottom:10px;}
  .mega h5.mt{margin-top:22px;}
  .mega ul{list-style:none;}
  nav.main .mega a{display:block;text-transform:none;letter-spacing:0;font-size:13.5px;color:var(--fog);padding:6px 0;}
  nav.main .mega a:hover{color:var(--white);}

  /* ---------- ABOUT ---------- */
  .about-grid{display:grid;grid-template-columns:1.2fr 0.8fr;gap:64px;align-items:start;}
  .about-grid h2{font-size:clamp(28px,3.4vw,42px);color:var(--white);margin-bottom:24px;}
  .lead{font-size:16px;color:var(--fog);max-width:620px;}
  .mission{margin-top:28px;border-left:2px solid var(--amber);padding:6px 0 6px 20px;font-size:16px;color:var(--white);max-width:560px;}
  .mission b{color:var(--amber);font-weight:500;}
  .facts{list-style:none;border-top:1px solid var(--line);}
  .facts li{padding:20px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--fog-dim);}
  .facts b{display:block;font-family:'Oswald';font-weight:500;font-size:17px;letter-spacing:.03em;text-transform:uppercase;color:var(--white);margin-bottom:4px;}

  /* ---------- HARDWARE ---------- */
  .hardware{background:var(--navy3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .hw-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
  .hw{background:var(--navy);display:flex;flex-direction:column;scroll-margin-top:100px;}
  .hw-img{aspect-ratio:4/3;overflow:hidden;background:var(--navy2);}
  .hw-img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s;filter:saturate(.9);}
  .hw:hover .hw-img img{transform:scale(1.05);}
  .hw-b{padding:18px 18px 22px;}
  .hw h3{font-family:'Oswald';font-weight:500;font-size:16px;letter-spacing:.03em;text-transform:uppercase;color:var(--white);line-height:1.2;margin-bottom:8px;}
  .hw p{font-size:13px;color:var(--fog-dim);}
  .hw:target{outline:2px solid var(--amber);outline-offset:-2px;}

  /* ---------- SOFTWARE & SERVICES ---------- */
  .sws{display:grid;grid-template-columns:1fr 1fr;gap:64px;}
  .sws h2{font-size:clamp(26px,3vw,38px);color:var(--white);margin-bottom:26px;}
  .sw-list{border-top:1px solid var(--line);}
  .sw{padding:20px 0;border-bottom:1px solid var(--line);}
  .sw h3{font-family:'Oswald';font-weight:500;font-size:18px;text-transform:uppercase;letter-spacing:.02em;color:var(--white);margin-bottom:4px;}
  .sw p{font-size:14px;color:var(--fog-dim);}
  .sv-list{list-style:none;border-top:1px solid var(--line);}
  .sv-list li{padding:15px 0 15px 22px;border-bottom:1px solid var(--line);position:relative;font-size:14.5px;color:var(--fog);}
  .sv-list li::before{content:'';position:absolute;left:0;top:25px;width:10px;height:1px;background:var(--amber);}
  #services{scroll-margin-top:90px;}

  /* ---------- REAL EQUIPMENT ---------- */
  .real{background:var(--navy3);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .real-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center;}
  .real-grid h2{font-size:clamp(28px,3.4vw,42px);color:var(--white);margin-bottom:22px;}
  .real-grid .sv-list{margin-top:26px;}
  .real-img{display:grid;grid-template-columns:1.3fr 1fr;gap:12px;}
  .real-img img{width:100%;height:100%;aspect-ratio:3/4;object-fit:cover;display:block;}
  .real-img img:first-child{aspect-ratio:auto;}

  #presence .coord-row{display:grid;grid-template-columns:170px 1fr;gap:20px;align-items:baseline;}
  #presence .coord-region{font-size:16px;}
  #presence .coord-num{font-family:'IBM Plex Sans';font-size:13.5px;color:var(--fog);text-align:left;}
  @media (max-width:520px){#presence .coord-row{grid-template-columns:1fr;gap:4px;}}
  /* ---------- CERTIFICATES ---------- */
  .cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
  .cert{background:var(--navy);padding:26px 24px;position:relative;}
  .cert::before{content:'';position:absolute;top:26px;right:24px;width:26px;height:26px;border:1px solid var(--amber);border-radius:50%;}
  .cert::after{content:'';position:absolute;top:34px;right:31px;width:10px;height:5px;border-left:1.5px solid var(--amber);border-bottom:1.5px solid var(--amber);transform:rotate(-45deg);}
  .cert .c{font-family:'IBM Plex Mono';font-size:14px;color:var(--white);letter-spacing:.04em;margin-bottom:8px;}
  .cert .d{font-size:13.5px;color:var(--fog-dim);max-width:260px;}

  @media (max-width:1180px){
    .burger{display:block;}
    .nav-cta{display:none;}
    .lang{margin-left:auto;}
    nav.main{position:absolute;top:100%;left:0;right:0;height:calc(100vh - 65px);height:calc(100dvh - 65px);background:var(--navy);border-top:1px solid var(--line);display:none;margin:0;overflow-y:auto;}
    nav.main.open{display:block;}
    nav.main .menu{flex-direction:column;align-items:stretch;gap:0;padding:8px 24px 28px;}
    nav.main .menu > li > a,.sub-toggle{display:flex;width:100%;justify-content:space-between;padding:16px 0;border-bottom:1px solid var(--line2);font-size:13px;}
    .mega,.mega.drop,.has-sub:not(.wide) .mega{position:static;margin:0;border:0;box-shadow:none;padding:6px 0 14px 14px;grid-template-columns:1fr;width:auto;max-width:none;background:transparent;}
    .mega::before{display:none;}
    .hw-grid{grid-template-columns:repeat(3,1fr);}
  }
  @media (max-width:900px){
    .about-grid,.sws,.real-grid{grid-template-columns:1fr;gap:36px;}
    .hw-grid{grid-template-columns:repeat(2,1fr);}
    .cert-grid{grid-template-columns:1fr 1fr;}
  }
  @media (max-width:520px){
    nav.main{top:100%;height:calc(100vh - 57px);height:calc(100dvh - 57px);}
    nav.main .menu{padding:6px 16px 24px;}
    .hw-grid,.cert-grid{grid-template-columns:1fr;}
    .real-img{grid-template-columns:1fr;}
    .real-img img{aspect-ratio:4/3 !important;}
  }

body.admin-bar header{top:32px;}
@media(max-width:782px){body.admin-bar header{top:46px;}}
/* generic pages */
.ns-page{max-width:var(--container);margin:0 auto;padding:140px 24px 80px;color:var(--fog);}
.ns-page h1,.ns-page h2,.ns-page h3{color:#fff;font-family:'Oswald',sans-serif;margin:1em 0 .5em;}
.ns-page a{color:var(--radar);}
.ns-page img{max-width:100%;height:auto;}
.ns-page p{margin:0 0 1em;}

/* back to top */
.ns-top{position:fixed;right:24px;bottom:24px;z-index:990;width:48px;height:48px;border-radius:50%;border:1px solid var(--amber);background:rgba(10,24,38,.92);color:var(--amber);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s,transform .25s,visibility .25s,background .2s,color .2s;box-shadow:0 6px 18px rgba(0,0,0,.4);}
.ns-top.show{opacity:1;visibility:visible;transform:none;}
.ns-top:hover,.ns-top:focus-visible{background:var(--amber);color:var(--navy);outline:none;}
.ns-top svg{width:20px;height:20px;}
@media(max-width:767px){.ns-top{right:14px;bottom:14px;width:42px;height:42px;}}
/* learn more link on cards */
.sim-more{display:inline-flex;gap:6px;align-items:center;margin-top:14px;font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);text-decoration:none;}
.sim-more:hover{color:#fff;}
/* bilingual blocks on inner pages */
.l-bg{display:none;}
html[lang=bg] .l-bg{display:revert;}
html[lang=bg] .l-en{display:none;}
/* simulator page */
.ns-sim{padding:120px 0 80px;}
.ns-sim .wrap{max-width:var(--container);margin:0 auto;padding:0 24px;}
.ns-crumb{font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--fog-dim);margin-bottom:28px;}
.ns-crumb a{color:var(--fog-dim);text-decoration:none;} .ns-crumb a:hover{color:var(--amber);}
.ns-sim-hero{display:grid;grid-template-columns:1fr 160px;gap:40px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:40px;}
.ns-sim-idx{font-family:'IBM Plex Mono',monospace;font-size:13px;color:var(--amber);letter-spacing:.1em;margin-bottom:14px;}
.ns-sim-hero h1{font-family:'Oswald',sans-serif;color:#fff;text-transform:uppercase;font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0 0 18px;}
.ns-sim-hero .lead{font-size:18px;max-width:760px;color:var(--fog);}
.ns-sim-ico svg{width:140px;height:140px;fill:none;stroke:var(--amber);stroke-width:1.2;}
.ns-sim-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:48px;padding:48px 0;}
.ns-sim-grid h2{font-family:'Oswald',sans-serif;color:#fff;text-transform:uppercase;font-size:22px;letter-spacing:.04em;margin:0 0 18px;}
.ns-sim-grid ul{list-style:none;margin:0;padding:0;}
.ns-sim-grid li{padding:12px 0 12px 22px;border-bottom:1px solid var(--line2);position:relative;}
.ns-sim-grid li:before{content:'';position:absolute;left:0;top:22px;width:10px;height:1px;background:var(--amber);}
.ns-sim-grid .tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px;}
.ns-sim-grid p{margin:0 0 16px;}
.ns-sim-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:10px;}
.ns-sim-nav{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:28px;font-family:'IBM Plex Mono',monospace;font-size:13px;text-transform:uppercase;letter-spacing:.06em;}
.ns-sim-nav a{color:var(--fog);text-decoration:none;} .ns-sim-nav a:hover{color:var(--amber);}
@media(max-width:860px){.ns-sim-hero,.ns-sim-grid{grid-template-columns:1fr;}.ns-sim-ico{display:none;}}
