/* =========================================================
   B2BGEMI PUBLIC v2 — HEADER / MEGA MENU / FOOTER
   Isolated namespace: .b2b-shell-*
   ========================================================= */
:root{
  --b2bs-bg:#06101d;
  --b2bs-bg2:#081625;
  --b2bs-panel:#0b1a2b;
  --b2bs-line:rgba(167,197,224,.20);
  --b2bs-line-soft:rgba(167,197,224,.10);
  --b2bs-text:#f7faff;
  --b2bs-muted:#b2c5d6;
  --b2bs-muted2:#8199ae;
  --b2bs-teal:#16dfbd;
  --b2bs-teal2:#74f3dc;
  --b2bs-shadow:0 32px 90px rgba(0,0,0,.48);
}
.b2b-shell-header,.b2b-shell-header *,
.b2b-shell-footer,.b2b-shell-footer *{box-sizing:border-box}
.b2b-shell-skip{
  position:fixed;
  left:16px;top:-80px;z-index:100000;
  min-height:48px;
  display:flex;align-items:center;
  padding:0 18px;
  border-radius:10px;
  background:#fff;color:#081625;
  font:800 15px/1.2 Inter,"Segoe UI",sans-serif;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
}
.b2b-shell-skip:focus{top:14px}
.b2b-shell-header{
  position:sticky;top:0;z-index:9999;
  width:100%;
  border-bottom:1px solid var(--b2bs-line);
  background:rgba(5,14,25,.93);
  -webkit-backdrop-filter:blur(22px) saturate(135%);
  backdrop-filter:blur(22px) saturate(135%);
  color:var(--b2bs-text);
  font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;
  transition:box-shadow .2s ease,background .2s ease;
}
.b2b-shell-header.is-scrolled{
  background:rgba(5,14,25,.985);
  box-shadow:0 12px 35px rgba(0,0,0,.26);
}
.b2b-shell-header__inner{
  width:min(1500px,100%);
  min-height:76px;
  margin-inline:auto;
  padding:0 clamp(18px,2.5vw,42px);
  display:flex;
  align-items:center;
  gap:18px;
}
.b2b-shell-brand{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  color:var(--b2bs-text)!important;
  text-decoration:none!important;
}
.b2b-shell-brand__logo{
  display:block;
  width:auto;
  object-fit:contain;
}
.b2b-shell-brand__logo--desktop{height:52px}
.b2b-shell-brand__logo--mobile{display:none;height:36px}
.b2b-shell-desktop-nav{
  margin-left:auto;
  display:flex;
  align-items:stretch;
  gap:clamp(10px,1.05vw,18px);
}
.b2b-shell-desktop-nav>a,
.b2b-shell-mega__trigger{
  min-height:76px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0;
  border:0;
  border-bottom:3px solid transparent;
  background:none;
  color:var(--b2bs-muted)!important;
  text-decoration:none!important;
  font-size:14px;
  font-weight:780;
  line-height:1.2;
  white-space:nowrap;
  cursor:pointer;
  transition:color .18s ease,border-color .18s ease;
}
.b2b-shell-desktop-nav>a:hover,
.b2b-shell-desktop-nav>a.is-active,
.b2b-shell-desktop-nav>a[aria-current="page"],
.b2b-shell-mega.has-active>.b2b-shell-mega__trigger,
.b2b-shell-mega__trigger:hover{
  color:var(--b2bs-teal)!important;
  border-bottom-color:var(--b2bs-teal);
}
.b2b-shell-actions{
  flex:0 0 auto;
  display:flex;align-items:center;gap:10px;
}
.b2b-shell-login{
  min-height:48px;
  display:inline-flex;align-items:center;
  padding:0 8px;
  color:#d4e1ec!important;
  text-decoration:none!important;
  font-size:14px;font-weight:800;
}
.b2b-shell-cta{
  min-height:48px;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:0 17px;
  border-radius:11px;
  color:#042820!important;
  text-decoration:none!important;
  font-size:14px;font-weight:900;
  white-space:nowrap;
  background:linear-gradient(135deg,var(--b2bs-teal),var(--b2bs-teal2));
  box-shadow:0 11px 28px rgba(22,223,189,.16);
  transition:transform .18s ease,box-shadow .18s ease;
}
.b2b-shell-cta:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(22,223,189,.23)}
.b2b-shell-menu-button{
  display:none;
  width:48px;height:48px;flex:0 0 48px;
  position:relative;
  border:1px solid var(--b2bs-line);
  border-radius:11px;
  background:rgba(255,255,255,.035);
  cursor:pointer;
}
.b2b-shell-menu-button span,
.b2b-shell-menu-button::before,
.b2b-shell-menu-button::after{
  content:"";
  position:absolute;left:12px;right:12px;
  height:2px;border-radius:3px;
  background:#f4f8fc;
  transition:transform .2s ease,opacity .2s ease,top .2s ease;
}
.b2b-shell-menu-button::before{top:15px}
.b2b-shell-menu-button span{top:22px}
.b2b-shell-menu-button::after{top:29px}
.b2b-shell-menu-button[aria-expanded="true"]::before{top:22px;transform:rotate(45deg)}
.b2b-shell-menu-button[aria-expanded="true"] span{opacity:0}
.b2b-shell-menu-button[aria-expanded="true"]::after{top:22px;transform:rotate(-45deg)}

.b2b-shell-mega{position:relative}
.b2b-shell-mega__panel{
  position:absolute;
  top:76px;left:50%;
  width:min(1000px,92vw);
  display:grid;
  grid-template-columns:.78fr 1.22fr;
  gap:20px;
  padding:20px;
  border:1px solid rgba(22,223,189,.25);
  border-radius:20px;
  background:rgba(6,16,29,.99);
  box-shadow:var(--b2bs-shadow);
  opacity:0;visibility:hidden;
  transform:translateX(-50%) translateY(10px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.b2b-shell-mega.is-open .b2b-shell-mega__panel{
  opacity:1;visibility:visible;
  transform:translateX(-50%) translateY(0);
}
.b2b-shell-mega__intro{
  padding:23px;
  border:1px solid var(--b2bs-line-soft);
  border-radius:16px;
  background:
    radial-gradient(circle at 10% 12%,rgba(22,223,189,.16),transparent 42%),
    #091827;
}
.b2b-shell-mega__intro>span{
  color:var(--b2bs-teal);
  font-size:11px;font-weight:900;letter-spacing:.1em;
}
.b2b-shell-mega__intro h2{
  margin:10px 0 0;
  font-family:"Space Grotesk",Inter,sans-serif;
  font-size:28px;line-height:1.12;letter-spacing:-.045em;
}
.b2b-shell-mega__intro p{
  margin:12px 0 0;
  color:var(--b2bs-muted);
  font-size:15px;line-height:1.65;
}
.b2b-shell-mega__intro>a{
  min-height:44px;
  display:inline-flex;align-items:center;
  margin-top:17px;
  color:var(--b2bs-teal)!important;
  text-decoration:none!important;
  font-size:14px;font-weight:900;
}
.b2b-shell-mega__flow{
  display:flex;align-items:center;gap:6px;flex-wrap:wrap;
  margin-top:16px;
}
.b2b-shell-mega__flow i{
  padding:6px 9px;
  border:1px solid var(--b2bs-line);
  border-radius:999px;
  color:#d0dce7;
  font-size:11px;font-style:normal;
}
.b2b-shell-mega__flow b{color:var(--b2bs-teal)}
.b2b-shell-mega__tools{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.b2b-shell-mega__tools>a{
  min-height:82px;
  display:grid;
  grid-template-columns:42px 1fr;
  gap:12px;
  align-items:center;
  padding:13px;
  border:1px solid transparent;
  border-radius:13px;
  color:var(--b2bs-text)!important;
  text-decoration:none!important;
}
.b2b-shell-mega__tools>a:hover,
.b2b-shell-mega__tools>a.is-active{
  border-color:rgba(22,223,189,.18);
  background:rgba(22,223,189,.065);
}
.b2b-shell-mega__tools i{
  width:42px;height:42px;
  display:grid;place-items:center;
  border-radius:11px;
  background:rgba(22,223,189,.09);
  color:var(--b2bs-teal);
  font-size:18px;font-style:normal;
}
.b2b-shell-mega__tools b{
  display:block;
  font-size:14px;line-height:1.3;
}
.b2b-shell-mega__tools small{
  display:block;
  margin-top:4px;
  color:var(--b2bs-muted);
  font-size:12px;line-height:1.48;
}

.b2b-shell-mobile-menu{
  border-top:1px solid var(--b2bs-line-soft);
  background:#071321;
  max-height:calc(100dvh - 68px);
  overflow:auto;
}
.b2b-shell-mobile-menu[hidden]{display:none!important}
.b2b-shell-mobile-menu__inner{padding:10px 14px 18px}
.b2b-shell-mobile-menu__inner>a,
.b2b-shell-mobile-tools>summary{
  min-height:52px;
  display:flex;align-items:center;
  padding:0 14px;
  border-radius:11px;
  color:#d4e1ec!important;
  text-decoration:none!important;
  font-size:16px;font-weight:800;
  cursor:pointer;
}
.b2b-shell-mobile-menu__inner>a:hover,
.b2b-shell-mobile-menu__inner>a.is-active{
  background:rgba(22,223,189,.08);
  color:var(--b2bs-teal)!important;
}
.b2b-shell-mobile-tools>summary{
  justify-content:space-between;
  list-style:none;
}
.b2b-shell-mobile-tools>summary::-webkit-details-marker{display:none}
.b2b-shell-mobile-tools>summary span::before{content:"+";font-size:22px}
.b2b-shell-mobile-tools[open]>summary{color:var(--b2bs-teal)!important}
.b2b-shell-mobile-tools[open]>summary span::before{content:"−"}
.b2b-shell-mobile-tools>div{padding:2px 0 8px 15px}
.b2b-shell-mobile-tools a{
  min-height:58px;
  display:flex;justify-content:center;flex-direction:column;
  padding:9px 12px;
  border-left:2px solid var(--b2bs-line);
  color:#d2dfeb!important;
  text-decoration:none!important;
}
.b2b-shell-mobile-tools a.is-active{border-left-color:var(--b2bs-teal);background:rgba(22,223,189,.05)}
.b2b-shell-mobile-tools b{font-size:14px}
.b2b-shell-mobile-tools small{
  margin-top:4px;
  color:var(--b2bs-muted);
  font-size:12px;line-height:1.45;
}
.b2b-shell-mobile-menu__actions{
  display:grid;grid-template-columns:1fr 1fr;gap:10px;
  margin-top:12px;padding-top:14px;
  border-top:1px solid var(--b2bs-line-soft);
}
.b2b-shell-mobile-menu__actions a{
  min-height:50px;
  display:flex;align-items:center;justify-content:center;
  border-radius:11px;
  text-decoration:none!important;
  font-size:15px;font-weight:900;
}
.b2b-shell-mobile-menu__actions a:first-child{
  border:1px solid var(--b2bs-line);
  color:#e2ebf3!important;
}
.b2b-shell-mobile-menu__actions a:last-child{
  color:#042820!important;
  background:linear-gradient(135deg,var(--b2bs-teal),var(--b2bs-teal2));
}
body.b2b-shell-menu-open{overflow:hidden}

.b2b-shell-footer{
  width:100%;
  padding:72px 0 26px;
  border-top:1px solid var(--b2bs-line);
  background:#040b13;
  color:var(--b2bs-text);
  font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;
}
.b2b-shell-footer__inner{
  width:min(1500px,100%);
  margin-inline:auto;
  padding:0 clamp(18px,3vw,44px);
}
.b2b-shell-footer__trust{
  display:flex;align-items:center;justify-content:space-between;gap:28px;
  margin-bottom:52px;
  padding:28px 30px;
  border:1px solid rgba(22,223,189,.23);
  border-radius:20px;
  background:
    radial-gradient(circle at 88% 10%,rgba(22,223,189,.16),transparent 34%),
    #071725;
}
.b2b-shell-footer__trust span{
  display:block;
  color:var(--b2bs-teal);
  font-size:11px;font-weight:900;letter-spacing:.09em;
}
.b2b-shell-footer__trust strong{
  display:block;
  max-width:820px;
  margin-top:7px;
  font-family:"Space Grotesk",Inter,sans-serif;
  font-size:clamp(22px,2.4vw,34px);
  line-height:1.15;
  letter-spacing:-.035em;
}
.b2b-shell-footer__trust>a{
  min-height:50px;
  flex:0 0 auto;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:0 19px;
  border-radius:11px;
  color:#042820!important;
  text-decoration:none!important;
  font-size:15px;font-weight:900;
  background:linear-gradient(135deg,var(--b2bs-teal),var(--b2bs-teal2));
}
.b2b-shell-footer__grid{
  display:grid;
  grid-template-columns:1.65fr 1fr .9fr .72fr 1.15fr;
  gap:clamp(25px,3vw,46px);
}
.b2b-shell-footer__logo{display:block;width:230px;height:auto}
.b2b-shell-footer section h3{
  margin:0 0 14px;
  color:#dce6ef;
  font-size:14px;font-weight:900;
}
.b2b-shell-footer section>a:not(.b2b-shell-brand){
  min-height:34px;
  display:flex;align-items:center;
  color:var(--b2bs-muted)!important;
  text-decoration:none!important;
  font-size:14px;line-height:1.5;
}
.b2b-shell-footer section>a:hover{color:var(--b2bs-teal)!important}
.b2b-shell-footer__brand p{
  max-width:480px;
  margin:18px 0 0;
  color:var(--b2bs-muted);
  font-size:15px;line-height:1.75;
}
.b2b-shell-footer__contact{
  display:flex;gap:14px;flex-wrap:wrap;
  margin-top:16px;
}
.b2b-shell-footer__contact a{
  min-height:44px;
  display:inline-flex;align-items:center;
  color:var(--b2bs-teal)!important;
  text-decoration:none!important;
  font-size:14px;font-weight:850;
}
.b2b-shell-footer__bottom{
  display:flex;justify-content:space-between;gap:18px;
  margin-top:44px;padding-top:22px;
  border-top:1px solid var(--b2bs-line);
  color:var(--b2bs-muted2);
  font-size:13px;line-height:1.5;
}

@media(max-width:1279px){
  .b2b-shell-desktop-nav,.b2b-shell-login{display:none}
  .b2b-shell-menu-button{display:block}
  .b2b-shell-actions{margin-left:auto}
  .b2b-shell-brand__logo--desktop{display:none}
  .b2b-shell-brand__logo--mobile{display:block}
  .b2b-shell-header__inner{min-height:68px}
}
@media(max-width:1020px){
  .b2b-shell-footer__grid{grid-template-columns:1.3fr 1fr 1fr}
  .b2b-shell-footer__brand{grid-column:1/-1}
}
@media(max-width:720px){
  .b2b-shell-cta{display:none}
  .b2b-shell-footer{padding-top:54px}
  .b2b-shell-footer__trust{align-items:flex-start;flex-direction:column;padding:24px}
  .b2b-shell-footer__trust>a{width:100%}
  .b2b-shell-footer__grid{grid-template-columns:1fr 1fr}
  .b2b-shell-footer__bottom{flex-direction:column}
}
@media(max-width:460px){
  .b2b-shell-header__inner{padding-inline:12px}
  .b2b-shell-brand__logo--mobile{height:31px}
  .b2b-shell-footer__grid{grid-template-columns:1fr}
  .b2b-shell-mobile-menu__actions{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .b2b-shell-header,.b2b-shell-cta,.b2b-shell-mega__panel,
  .b2b-shell-menu-button span,.b2b-shell-menu-button::before,.b2b-shell-menu-button::after{
    transition:none!important;
  }
}


/* Sprint 7D.1 — avoid costly blur on small/mobile devices */
@media(max-width:1179px){
  .b2b-shell-header{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
    background:rgba(5,14,25,.985);
  }
}
@media(prefers-reduced-motion:reduce){
  .b2b-shell-header,.b2b-shell-cta,.b2b-shell-mega__panel,
  .b2b-shell-menu-button span,.b2b-shell-menu-button::before,
  .b2b-shell-menu-button::after{transition:none!important}
}
