/* CAELIST Partners V24 — precision header spacing + control-plane typography polish */

/* Header: create deliberate breathing room between the primary nav and CTA. */
.navlinks{gap:6px}
.navlinks > .navlink{margin-left:10px;display:inline-flex;align-items:center;white-space:nowrap;padding:12px 13px;border-radius:12px;color:#c7d4e6;font-size:14px;line-height:1.2}
.navlinks > .navlink:hover{background:rgba(255,255,255,.05);color:#fff}
.navlinks > .btn{margin-left:6px;white-space:nowrap}
.navlinks > .btn.mini{min-height:44px;padding:11px 17px;border-radius:13px}
.navlinks + .lang-chooser{margin-left:14px}

/* Keep the top bar composed on larger desktop widths without squeezing the CTA. */
@media (min-width:1051px) and (max-width:1280px){
  .brand img{width:170px}
  .nav{gap:16px}
  .navlinks{gap:3px}
  .navlinks > .navlink{margin-left:6px;padding-left:10px;padding-right:10px}
  .navlinks > .btn.mini{margin-left:4px;padding-left:14px;padding-right:14px}
  .navlinks + .lang-chooser{margin-left:8px}
}

/* AI control-plane labels: prevent joined words and keep the visual hierarchy crisp. */
.ai-panel .node b,
.ai-panel .node strong{display:block;line-height:1.18;overflow-wrap:anywhere;text-wrap:balance}
.ai-panel .node small{display:block;margin-top:5px;line-height:1.35;max-width:100%;overflow-wrap:anywhere;text-wrap:pretty}
.ai-panel .node{min-width:150px;max-width:180px}

/* The center/control-panel labels should never collapse into each other. */
.orbit-node strong,
.v11-node strong{display:block;line-height:1.18;overflow-wrap:anywhere;text-wrap:balance}
.orbit-node small,
.v11-node small{display:block;margin-top:4px;line-height:1.32;max-width:100%;overflow-wrap:anywhere;text-wrap:pretty}

/* Give card contents slightly more consistent internal rhythm on the AI panel. */
.v11-node{align-content:start}

/* Mobile: preserve clean spacing without making the menu feel oversized. */
@media (max-width:1050px){
  .navlinks > .navlink,
  .navlinks > .btn{margin-left:0}
  .navlinks + .lang-chooser{margin-left:0}
}

/* Extra narrow desktop/tablet widths: keep node text comfortably wrapped. */
@media (min-width:681px) and (max-width:1050px){
  .ai-panel .node{min-width:140px;max-width:170px}
}

@media (max-width:680px){
  .ai-panel .node{min-width:132px;max-width:150px;padding:9px 10px}
  .ai-panel .node small{margin-top:4px;line-height:1.25}
}
