/* ============ НССА — глобальный блок дизайна (1:1 из <helmet>) ============ */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;}
img{display:block;max-width:100%;}
input,select,textarea,button{font-family:inherit;}
body{font-family:'Golos Text',sans-serif;color:#101B2B;background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden;}

@keyframes revealUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:none;}}
@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}
@keyframes scaleIn{from{opacity:0;transform:translateY(16px) scale(.97);}to{opacity:1;transform:none;}}
@keyframes slideDown{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:none;}}
::selection{background:#0B2A4A;color:#fff;}
@keyframes pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,255,255,.5);}50%{box-shadow:0 0 0 5px rgba(255,255,255,0);}}

@media(max-width:1080px){
  .nssa-desk-nav,.nssa-desk-phone{display:none!important;}
  .nssa-burger{display:flex!important;}
  .nssa-about-grid,.nssa-partner-grid,.nssa-contact-grid{grid-template-columns:1fr!important;}
  .nssa-foot-grid{grid-template-columns:1fr 1fr!important;gap:32px!important;}
}
@media(max-width:760px){
  .nssa-desk-cta{display:none!important;}
  .nssa-foot-grid{grid-template-columns:1fr!important;}
  .nssa-dir-page-grid{grid-template-columns:1fr!important;}
}

/* ---- hover-состояния (в дизайне были style-hover) ---- */
.nssa-cta-red{transition:transform .15s,box-shadow .15s;}
.nssa-cta-red:hover{transform:translateY(-2px);}
.nssa-cta-red-sm{transition:transform .15s,box-shadow .15s;}
.nssa-cta-red-sm:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(209,31,58,.36);}
.nssa-btn-ghost{transition:background .2s;}
.nssa-btn-ghost:hover{background:rgba(255,255,255,.16);}
.nssa-btn-outline{transition:border-color .2s;}
.nssa-btn-outline:hover{border-color:#0B2A4A;}
.nssa-card{transition:transform .25s,box-shadow .25s,border-color .25s;}
.nssa-card:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(11,42,74,.13);border-color:#C9D7E8;}
.nssa-card-row{transition:transform .25s,box-shadow .25s,border-color .25s;}
.nssa-card-row:hover{transform:translateY(-4px);box-shadow:0 22px 46px rgba(11,42,74,.12);border-color:#C9D7E8;}
.nssa-card-doc{transition:transform .2s,box-shadow .2s,border-color .2s;}
.nssa-card-doc:hover{transform:translateY(-4px);box-shadow:0 20px 44px rgba(11,42,74,.12);border-color:#C9D7E8;}
.nssa-card-news{transition:transform .2s,box-shadow .2s,border-color .2s;}
.nssa-card-news:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(11,42,74,.1);border-color:#C9D7E8;}
.nssa-fleet-card{transition:transform .25s;}
.nssa-fleet-card:hover{transform:translateY(-5px);}
.nssa-submit-dark{transition:transform .15s;}
.nssa-submit-dark:hover{transform:translateY(-1px);}
.nssa-navlink{transition:background .15s,color .15s;}
.nssa-navlink:hover{background:#EEF3F9;color:#0B2A4A;}

/* Табы Гос/Корп */
.nssa-tab{display:flex;align-items:center;gap:8px;border:none;padding:12px 22px;border-radius:10px;font-weight:600;font-size:14.5px;cursor:pointer;transition:all .2s;background:transparent;color:#5C6E83;}
.nssa-tab.is-active{background:#0B2A4A;color:#fff;box-shadow:0 6px 16px rgba(11,42,74,.22);}

/* Скрыть мобильное меню по умолчанию (открывается через JS) */
.nssa-mobile-menu{display:none;}
.nssa-mobile-menu.is-open{display:block;}
.nssa-modal{display:none;}
.nssa-modal.is-open{display:flex;}
.nssa-toast{display:none;}
.nssa-toast.is-open{display:flex;}
