/* NAMING HUB® 0.6.5 — hero network grid hotfix
   Replaces fragile absolute node positioning with an explicit semantic grid. */

.nh-node-hero{
  grid-template-columns:minmax(0,64%) minmax(340px,36%)!important;
}

.nh-network-zone{
  display:grid!important;
  grid-template-columns:minmax(150px,1fr) minmax(170px,1fr) minmax(150px,1fr);
  grid-template-rows:minmax(110px,.9fr) minmax(170px,1.25fr) minmax(120px,1fr) auto;
  grid-template-areas:
    "trademark domain rights"
    "names core evidence"
    "intelligence risk events"
    "hint hint hint";
  align-items:center;
  justify-items:center;
  gap:clamp(12px,1.25vw,24px);
  padding:clamp(28px,3vw,54px) clamp(24px,3vw,50px) 20px;
  min-width:0;
  min-height:100%;
}

.nh-network-zone .nh-network-core,
.nh-network-zone .nh-semantic-node,
.nh-network-zone .nh-node-hint{
  position:relative!important;
  inset:auto!important;
  top:auto!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  transform:none!important;
  margin:0!important;
}

.nh-network-zone .nh-node-trademark{grid-area:trademark}
.nh-network-zone .nh-node-domain{grid-area:domain}
.nh-network-zone .nh-node-rights{grid-area:rights}
.nh-network-zone .nh-node-names{grid-area:names}
.nh-network-zone .nh-network-core{grid-area:core}
.nh-network-zone .nh-node-evidence{grid-area:evidence}
.nh-network-zone .nh-node-intelligence{grid-area:intelligence}
.nh-network-zone .nh-node-risk{grid-area:risk}
.nh-network-zone .nh-node-events{grid-area:events}
.nh-network-zone .nh-node-hint{
  grid-area:hint;
  justify-self:start;
  align-self:end;
  max-width:none!important;
}

.nh-network-zone .nh-semantic-node{
  width:max-content;
  max-width:100%;
  min-width:132px;
}

.nh-network-zone .nh-network-core{
  width:clamp(108px,8vw,136px)!important;
  height:clamp(108px,8vw,136px)!important;
}

.nh-ecosystem-zone{
  border-left:1px solid rgba(125,163,182,.28);
  background:rgba(248,252,253,.24);
}

.nh-ecosystem-zone .nh-asset-card{
  width:min(100%,460px)!important;
}

/* Wide desktop / iMac 27 class */
@media (min-width:1600px){
  .nh-node-hero{
    grid-template-columns:minmax(0,66%) minmax(380px,34%)!important;
  }
  .nh-network-zone{
    grid-template-columns:repeat(3,minmax(170px,1fr));
    grid-template-rows:minmax(120px,.9fr) minmax(190px,1.3fr) minmax(135px,1fr) auto;
    padding:42px 42px 22px;
    gap:20px 28px;
  }
  .nh-network-zone .nh-semantic-node{
    min-width:145px;
  }
  .nh-network-zone .nh-network-core{
    width:132px!important;
    height:132px!important;
  }
}

/* 1920–2559 CSS px */
@media (min-width:1920px) and (max-width:2559px){
  .nh-node-hero{
    grid-template-columns:minmax(0,68%) minmax(390px,32%)!important;
  }
  .nh-network-zone{
    padding:48px 54px 24px;
    gap:22px 36px;
  }
  .nh-network-zone .nh-semantic-node{
    min-width:154px;
  }
  .nh-ecosystem-zone{
    padding:46px 42px;
  }
  .nh-ecosystem-zone .nh-asset-card{
    width:min(100%,480px)!important;
  }
}

/* QHD / 4K / 5K */
@media (min-width:2560px){
  .nh-node-hero{
    grid-template-columns:minmax(0,70%) minmax(440px,30%)!important;
  }
  .nh-network-zone{
    grid-template-columns:repeat(3,minmax(200px,1fr));
    grid-template-rows:minmax(150px,.9fr) minmax(220px,1.3fr) minmax(160px,1fr) auto;
    padding:58px 72px 28px;
    gap:28px 48px;
  }
  .nh-network-zone .nh-semantic-node{
    min-width:170px;
  }
  .nh-network-zone .nh-network-core{
    width:146px!important;
    height:146px!important;
  }
  .nh-ecosystem-zone .nh-asset-card{
    width:min(100%,520px)!important;
  }
}

/* Laptop / tablet: keep the same semantic order but stack ecosystem below network. */
@media (max-width:1279px){
  .nh-node-hero{
    grid-template-columns:1fr!important;
    grid-template-rows:auto auto!important;
  }
  .nh-network-zone{
    grid-column:1!important;
    grid-row:1!important;
    min-height:620px;
    grid-template-columns:repeat(3,minmax(120px,1fr));
    grid-template-rows:110px 170px 120px auto;
    padding:28px 24px 18px;
  }
  .nh-ecosystem-zone{
    grid-column:1!important;
    grid-row:2!important;
    border-left:0;
    border-top:1px solid rgba(125,163,182,.28);
    padding:24px;
  }
  .nh-ecosystem-zone .nh-asset-card{
    width:min(100%,680px)!important;
    max-width:680px!important;
  }
}

/* Phones: reduce node chrome, preserve clear 3x3 semantics. */
@media (max-width:767px){
  .nh-network-zone{
    min-height:610px;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:96px 150px 110px;
    grid-template-areas:
      "trademark domain rights"
      "names core evidence"
      "intelligence risk events";
    gap:10px 6px;
    padding:20px 10px;
  }
  .nh-network-zone .nh-node-hint{display:none!important}
  .nh-network-zone .nh-semantic-node{
    min-width:0;
    width:100%;
    grid-template-columns:28px 1fr;
    padding:5px;
  }
  .nh-network-zone .nh-semantic-node i{
    width:28px;
    height:28px;
  }
  .nh-network-zone .nh-semantic-node strong{
    font-size:9px;
  }
  .nh-network-zone .nh-semantic-node small{
    display:none;
  }
  .nh-network-zone .nh-network-core{
    width:94px!important;
    height:94px!important;
  }
  .nh-ecosystem-zone{
    padding:16px;
  }
  .nh-ecosystem-zone .nh-asset-card{
    width:100%!important;
    max-width:none!important;
  }
}
