/* CYBERNOX AI responsive safety layer v7
   Purpose: protect the premium layout from clipping, overflow and cramped UI
   across phones, tablets, laptops, desktops and ultra-wide screens. */

:root {
  --cnx-responsive-max: 1560px;
  --cnx-safe-x: clamp(16px, 3vw, 48px);
}

html,
body {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

body.menu-open { overflow: hidden; }

main,
header,
footer,
section,
article,
aside,
nav,
form,
fieldset,
div {
  min-width: 0;
}

img,
picture,
video,
canvas,
svg,
iframe {
  max-width: 100%;
}

img,
video {
  height: auto;
}

iframe,
video {
  display: block;
}

table {
  max-width: 100%;
}

input,
select,
textarea,
button {
  max-width: 100%;
}

.nox-footer a,
.nox-footer span,
.n6-brand-rail a,
.eco6-list a,
.about6-brand-list a,
.sol6-service-ledger a,
.clr-related-grid a,
.clr-ecosystem-items a {
  overflow-wrap: anywhere;
}

.nox-shell,
.n5-shell,
.nox-inner-shell,
.nox-footer-shell,
.clr-shell,
.nav-shell {
  max-width: var(--cnx-responsive-max) !important;
}

/* ---------- Ultra-wide screens ---------- */
@media (min-width: 1800px) {
  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .nav-shell {
    width: min(1560px, calc(100% - 128px)) !important;
  }

  .clr-shell { width: min(1440px, calc(100% - 128px)) !important; }

  .n6-hero .nox-headline { max-width: 1460px !important; }
  .n6-hero .nox-lead { max-width: 760px !important; }
  .n6-ecosystem-grid,
  .n6-human-grid,
  .n6-proof-head,
  .sol6-hero-shell,
  .ind6-hero-shell,
  .eco6-hero-shell,
  .con6-hero-shell,
  .about6-human-grid,
  .about6-place-grid {
    column-gap: clamp(96px, 8vw, 180px) !important;
  }
}

@media (min-width: 2400px) {
  :root { --cnx-responsive-max: 1680px; }

  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .nav-shell {
    width: min(1680px, calc(100% - 180px)) !important;
  }

  .nox-home-v5,
  .sol6-page,
  .ind6-page,
  .eco6-page,
  .about6-page,
  .con6-page,
  .clarity-page {
    font-size: 1.04rem;
  }
}

/* ---------- Navigation: switch before it gets cramped ---------- */
@media (max-width: 1180px) {
  .site-header-nox .nav-shell,
  .nav-shell {
    width: calc(100% - 36px) !important;
    max-width: none !important;
  }

  .menu-toggle {
    display: block !important;
    position: relative;
    z-index: 110;
    flex: 0 0 auto;
  }

  .primary-nav {
    position: fixed !important;
    z-index: 105 !important;
    inset: 72px 18px 18px !important;
    max-height: calc(100dvh - 90px) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    display: none !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 2px !important;
    padding: 18px !important;
    border: 1px solid rgba(255,255,255,.12) !important;
    border-radius: 0 !important;
    background: rgba(7,16,24,.985) !important;
    box-shadow: 0 28px 90px rgba(0,0,0,.42) !important;
    backdrop-filter: blur(20px) saturate(120%);
  }

  .primary-nav[data-open] { display: flex !important; }

  .primary-nav > a:not(.nav-cta),
  .primary-nav .nav-cta {
    width: 100% !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    justify-content: space-between !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
    background: transparent !important;
  }

  .primary-nav .nav-cta {
    margin-top: 8px !important;
    border: 1px solid rgba(255,255,255,.22) !important;
  }

  .primary-nav .nav-cta i {
    width: 44px !important;
    height: 44px !important;
    margin-left: auto !important;
  }
}

/* ---------- Laptop / landscape tablet ---------- */
@media (max-width: 1100px) {
  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .clr-shell {
    width: calc(100% - 56px) !important;
  }

  /* Homepage service chapters */
  .n6-offer .n5-offer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .n6-offer .n5-offer-grid article {
    min-height: 400px !important;
  }

  /* Give the live example enough width before it stacks completely. */
  .n5-moment-theatre {
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 48px auto auto auto !important;
  }

  .n5-moment-theatre::before { display: none !important; }
  .n5-moment-top { grid-column: 1 / -1 !important; }
  .n5-moment-signal,
  .n5-moment-intelligence { min-height: 500px !important; }
  .n5-moment-result {
    grid-column: 1 / -1 !important;
    min-height: 440px !important;
    padding: 42px 36px !important;
  }
  .n5-moment-control { grid-column: 1 / -1 !important; }

  /* Industry theatre is more readable when the tabs move above the content. */
  .n5-industry-experience {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
  .n5-industry-tabs {
    display: flex !important;
    overflow-x: auto !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
    scrollbar-width: thin;
    scroll-snap-type: x proximity;
  }
  .n5-industry-tab {
    min-width: 220px !important;
    min-height: 82px !important;
    flex: 1 0 220px;
    scroll-snap-align: start;
  }

  /* Primary inner-page compositions */
  .sol6-hero-shell,
  .sol6-section-head,
  .sol6-faq-grid,
  .ind6-hero-shell,
  .ind6-section-head,
  .ind6-principle-grid,
  .ind6-auto-grid,
  .ind6-faq-grid,
  .eco6-hero-shell,
  .eco6-section-head,
  .eco6-story-grid,
  .eco6-faq-grid,
  .about6-human-grid,
  .about6-section-head,
  .about6-place-grid,
  .about6-faq-grid,
  .con6-hero-shell,
  .con6-form-grid,
  .con6-faq-grid {
    grid-template-columns: 1fr !important;
  }

  .sol6-orbit,
  .eco6-network {
    width: min(100%, 620px) !important;
    margin: 28px auto 0 !important;
  }

  .con6-form-copy,
  .n6-ecosystem-core {
    position: relative !important;
    top: auto !important;
  }

  .about6-brand-list > a,
  .eco6-list > a {
    grid-template-columns: 44px minmax(0,1fr) auto !important;
  }

  .about6-brand-list > a p,
  .eco6-list > a p {
    grid-column: 2 / -1 !important;
  }

  .sol6-cta .nox-inner-shell,
  .ind6-cta .nox-inner-shell,
  .eco6-cta .nox-inner-shell,
  .about6-cta .nox-inner-shell {
    grid-template-columns: 1fr !important;
  }
}

/* ---------- Tablet portrait ---------- */
@media (max-width: 900px) {
  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .clr-shell {
    width: calc(100% - 40px) !important;
  }

  .n6-hero .nox-headline,
  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1,
  .about6-human h2,
  .about6-place-grid h2 {
    overflow-wrap: normal;
    word-break: normal;
  }

  /* Hero flow becomes a two-column control panel instead of five cramped cells. */
  .n6-hero .nox-system { margin-top: 34px !important; }
  .n6-hero .nox-flow {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
  .n6-hero .nox-flow-line { display: none !important; }
  .n6-hero .nox-node {
    min-height: 130px !important;
    padding: 20px !important;
    border-right: 1px solid rgba(255,255,255,.1) !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
  }
  .n6-hero .nox-node:last-child { grid-column: 1 / -1 !important; }
  .n6-hero .nox-node strong { margin-top: 22px !important; }

  /* Footer becomes a clean 2-column system on tablets. */
  .nox-footer-top {
    grid-template-columns: 1fr 1fr !important;
    gap: 34px !important;
  }
  .nox-footer-brand { grid-column: 1 / -1 !important; }
  .nox-footer-links {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 36px 28px !important;
  }
  .nox-footer-bottom {
    grid-template-columns: 1fr auto !important;
    gap: 12px 24px !important;
  }
  .nox-footer-bottom > p:last-child { grid-column: 1 / -1 !important; }

  /* Older service template safety */
  .clr-hero-grid,
  .clr-section-head,
  .clr-human-grid,
  .clr-position-grid,
  .clr-contact-grid,
  .clr-faq-grid,
  .clr-final-grid {
    grid-template-columns: 1fr !important;
  }

  .clr-hero { min-height: auto !important; }
}

/* ---------- Phones and narrow tablets ---------- */
@media (max-width: 760px) {
  :root { --cnx-safe-x: 18px; }

  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .clr-shell,
  .nav-shell {
    width: calc(100% - 32px) !important;
  }

  .site-header-nox .nav-shell { min-height: 64px !important; }
  .site-header-nox .brand { width: min(170px, 56vw) !important; }
  .primary-nav { inset: 66px 10px 10px !important; max-height: calc(100dvh - 76px) !important; }

  /* Home hero: no text or stage may spill outside the viewport. */
  .n6-hero,
  .nox-hero {
    height: auto !important;
    min-height: auto !important;
    overflow: hidden !important;
  }

  .nox-hero .nox-shell {
    height: auto !important;
    padding-top: 100px !important;
    padding-bottom: 34px !important;
  }

  .nox-intro,
  .nox-meta {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  .nox-intro { align-items: start !important; }
  .nox-intro > p { max-width: 100% !important; text-align: left !important; }
  .nox-location { justify-self: start !important; text-align: left !important; }

  .n6-hero .nox-headline,
  .nox-headline {
    max-width: 100% !important;
    font-size: clamp(3.15rem, 14vw, 5rem) !important;
    line-height: .88 !important;
    letter-spacing: -.06em !important;
  }

  .n6-hero .nox-headline-line:nth-child(3) { letter-spacing: -.05em !important; }
  .nox-lead { max-width: 100% !important; font-size: 1rem !important; }
  .nox-actions { width: 100% !important; flex-wrap: wrap !important; }
  .nox-primary-link { width: 100% !important; }

  .n6-hero .nox-system-head {
    min-height: 44px !important;
    padding: 0 14px !important;
  }
  .n6-hero .nox-system-head span:nth-child(n+2) { display: none !important; }
  .n6-hero .nox-flow { grid-template-columns: 1fr !important; }
  .n6-hero .nox-node,
  .n6-hero .nox-node:last-child {
    grid-column: auto !important;
    min-height: 112px !important;
    border-right: 0 !important;
  }
  .n6-hero .nox-node strong { margin-top: 18px !important; }

  /* Homepage chapters */
  .n6-offer,
  .n6-ecosystem,
  .n6-human,
  .n6-proof,
  .n5-industries,
  .n5-faq {
    padding-top: 88px !important;
    padding-bottom: 92px !important;
  }

  .n6-offer .n5-offer-grid { grid-template-columns: 1fr !important; }
  .n6-offer .n5-offer-grid article {
    min-height: 0 !important;
    padding: 30px 20px !important;
    border-right: 0 !important;
    border-bottom: 1px solid rgba(7,9,12,.17) !important;
  }
  .n6-offer .n5-offer-grid h3 { max-width: none !important; margin-top: 38px !important; }
  .n6-offer .n5-offer-grid article > p { max-width: none !important; }

  .n5-journey-intro,
  .n5-industries-intro,
  .n6-proof-head,
  .n6-ecosystem-grid,
  .n6-human-grid {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }

  .n5-journey-intro h2,
  .n5-industries-intro h2,
  .n6-human h2,
  .n6-proof-head h2,
  .n6-ecosystem-core h2 {
    font-size: clamp(2.9rem, 13vw, 4.5rem) !important;
    line-height: .9 !important;
  }

  .n5-moment-theatre { display: block !important; }
  .n5-moment-top {
    min-height: 48px !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
  }
  .n5-moment-top span:last-child { display: none !important; }
  .n5-moment-signal,
  .n5-moment-intelligence,
  .n5-moment-result {
    min-height: 0 !important;
    width: 100% !important;
  }
  .n5-moment-signal { padding: 30px 22px !important; }
  .n5-moment-signal blockquote { margin-top: 70px !important; }
  .n5-moment-intelligence { padding: 30px 20px !important; }
  .n5-moment-intelligence ol { margin: 45px 0 !important; }
  .n5-moment-result { padding: 34px 20px !important; }
  .n5-moment-result h3 { margin-top: 70px !important; }
  .n5-result-grid { grid-template-columns: 1fr !important; }
  .n5-result-grid > div { border-right: 0 !important; }
  .n5-moment-control {
    min-height: 112px !important;
    grid-template-columns: 42px 1fr !important;
    padding: 18px !important;
  }
  .n5-moment-control > span:last-child { display: none !important; }
  .n6-live-cta { flex-direction: column !important; align-items: flex-start !important; }

  .n6-ecosystem-grid { padding-top: 48px !important; }
  .n6-brand-rail > a {
    grid-template-columns: 30px minmax(0,1fr) 20px !important;
    gap: 12px !important;
    min-height: 96px !important;
  }
  .n6-brand-rail > a div strong { font-size: clamp(1.3rem, 6.2vw, 1.8rem) !important; }

  .n6-human-line { grid-template-columns: 1fr !important; justify-items: start !important; }
  .n6-human-line i { display: none !important; }

  .n6-proof-list article {
    grid-template-columns: 32px minmax(0,1fr) !important;
    gap: 14px !important;
    padding: 26px 0 !important;
  }
  .n6-proof-list article > a { grid-column: 2 !important; justify-self: start !important; }

  /* Industry theatre: fully vertical on phones. */
  .n5-industry-tab { min-width: 185px !important; flex-basis: 185px !important; }
  .n5-industry-panel { min-height: 0 !important; padding: 28px 18px 34px !important; }
  .n5-industry-blueprint {
    min-height: 0 !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto !important;
  }
  .n5-industry-index,
  .n5-industry-moment,
  .n5-industry-move,
  .n5-industry-result {
    grid-column: 1 !important;
    grid-row: auto !important;
  }
  .n5-industry-index { min-height: 190px !important; }
  .n5-industry-moment,
  .n5-industry-move,
  .n5-industry-result { min-height: 210px !important; }
  .n5-industry-move > div,
  .n5-industry-thread { display: none !important; }
  .n5-industry-link {
    position: static !important;
    display: inline-flex !important;
    margin-top: 26px !important;
  }

  /* Solutions: convert the orbit into a mobile information graphic. */
  .sol6-hero,
  .ind6-hero,
  .eco6-hero,
  .con6-hero {
    min-height: auto !important;
    padding: 105px 0 70px !important;
  }

  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1 {
    font-size: clamp(3.25rem, 14vw, 5rem) !important;
    line-height: .88 !important;
    letter-spacing: -.06em !important;
  }

  .sol6-orbit {
    aspect-ratio: auto !important;
    min-height: 440px !important;
    padding: 160px 18px 18px !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }
  .sol6-orbit::before,
  .sol6-orbit::after { display: none !important; }
  .sol6-orbit-core {
    top: 82px !important;
    width: 110px !important;
  }
  .sol6-orbit-node {
    position: relative !important;
    inset: auto !important;
    max-width: none !important;
    min-height: 88px !important;
    padding: 14px !important;
    border: 1px solid rgba(255,255,255,.13);
    grid-template-columns: 8px 1fr auto !important;
  }

  .sol6-decision { min-height: 0 !important; }
  .sol6-choice-rail { grid-template-columns: 1fr 1fr !important; }
  .sol6-choice-rail button { min-height: 78px !important; padding: 14px !important; }
  .sol6-stage article { min-height: 0 !important; padding: 36px 20px !important; }
  .sol6-stage h3 { font-size: clamp(2.5rem, 11vw, 3.7rem) !important; }
  .sol6-stage nav { grid-template-columns: 1fr !important; }
  .sol6-stage nav a { border-right: 0 !important; border-bottom: 1px solid rgba(7,9,12,.17) !important; }
  .sol6-service-ledger > a {
    grid-template-columns: 30px minmax(0,1fr) 20px !important;
    gap: 12px !important;
    min-height: 104px !important;
    padding: 18px 0 !important;
  }
  .sol6-service-ledger div strong { font-size: 1.4rem !important; }

  /* Industries page */
  .ind6-context-lines { grid-template-columns: 1fr !important; }
  .ind6-context-lines span { border-right: 0 !important; }
  .ind6-list { grid-template-columns: 1fr !important; }
  .ind6-list article { grid-template-columns: 30px minmax(0,1fr) !important; padding: 24px 18px !important; }
  .ind6-control { grid-template-columns: 1fr !important; }
  .ind6-control i { display: none !important; }
  .ind6-auto-console { min-height: 380px !important; padding: 24px 20px !important; }

  /* Ecosystem network: stack nodes rather than squeezing a desktop diagram. */
  .eco6-network {
    aspect-ratio: auto !important;
    min-height: 0 !important;
    padding: 24px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
  }
  .eco6-network svg,
  .eco6-network-grid { display: none !important; }
  .eco6-core {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 116px !important;
    margin: 8px auto 24px !important;
    flex: 0 0 auto;
  }
  .eco6-node,
  .eco6-network .node-1,
  .eco6-network .node-2,
  .eco6-network .node-3,
  .eco6-network .node-4,
  .eco6-network .node-5 {
    position: relative !important;
    inset: auto !important;
    max-width: none !important;
    min-height: 58px !important;
    padding: 13px 4px !important;
    border-top: 1px solid rgba(255,255,255,.13);
    grid-template-columns: 7px minmax(0,1fr) auto !important;
  }
  .eco6-list > a,
  .about6-brand-list > a {
    grid-template-columns: 30px minmax(0,1fr) 20px !important;
    gap: 12px !important;
    padding: 26px 0 !important;
  }
  .eco6-list > a p,
  .about6-brand-list > a p { grid-column: 2 / -1 !important; }
  .eco6-path { grid-template-columns: 1fr !important; }
  .eco6-path > i { display: none !important; }

  /* About */
  .about6-founder,
  .about6-human,
  .about6-ecosystem,
  .about6-faq { padding: 92px 0 !important; }
  .about6-human h2,
  .about6-place-grid h2,
  .about6-section-head h2 {
    font-size: clamp(2.9rem, 13vw, 4.6rem) !important;
  }
  .about6-place { min-height: 520px !important; }

  /* Contact */
  .con6-form-section,
  .con6-next,
  .con6-faq { padding: 92px 0 !important; }
  .con6-form-panel form { padding: 24px 18px !important; }
  .con6-field-row { grid-template-columns: 1fr !important; }
  .con6-form-panel textarea { min-height: 150px !important; }
  .con6-next-head,
  .con6-next-line { grid-template-columns: 1fr !important; }
  .con6-next-line > i { display: none !important; }

  /* FAQ answers on all redesigned primary pages */
  .sol6-faq-list details p,
  .ind6-faq details p,
  .eco6-faq details p,
  .about6-faq details p,
  .con6-faq details p { padding-left: 0 !important; }

  /* Global footer */
  .nox-footer-top,
  .nox-footer-links,
  .nox-footer-bottom {
    grid-template-columns: 1fr !important;
  }
  .nox-footer-top { gap: 28px !important; }
  .nox-footer-links { gap: 34px !important; }
  .nox-footer-bottom { gap: 10px !important; }
  .nox-footer-cta { width: 100% !important; min-width: 0 !important; }

  /* Shared older service templates */
  .clr-display { font-size: clamp(2.9rem, 13vw, 4.6rem) !important; }
  .clr-title { font-size: clamp(2.5rem, 11vw, 4rem) !important; }
  .clr-problem-grid,
  .clr-industry-grid,
  .clr-card-grid,
  .clr-solution-grid,
  .clr-service-index,
  .clr-capability-grid,
  .clr-usecase-grid,
  .clr-step-grid,
  .clr-platform-grid,
  .clr-related-grid,
  .clr-ecosystem-items {
    grid-template-columns: 1fr !important;
  }
  .clr-flow article { grid-template-columns: 38px minmax(0,1fr) !important; }
  .clr-flow article span { grid-column: 2 !important; }
}

/* ---------- Small phones ---------- */
@media (max-width: 480px) {
  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .clr-shell,
  .nav-shell {
    width: calc(100% - 24px) !important;
  }

  .site-header-nox .brand { width: min(155px, 58vw) !important; }
  .menu-toggle { width: 42px !important; height: 42px !important; }

  .n6-hero .nox-headline,
  .nox-headline,
  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1 {
    font-size: clamp(2.8rem, 13.6vw, 4rem) !important;
  }

  .nox-intro-left { flex-wrap: wrap !important; gap: 8px 12px !important; }
  .nox-actions { flex-direction: column !important; align-items: stretch !important; }
  .nox-secondary-link { min-height: 44px !important; display: flex !important; align-items: center !important; }

  .n5-shift-track { grid-template-columns: 1fr !important; }
  .n5-shift-track > div { min-height: 56px !important; }

  .n5-kicker { display: grid !important; gap: 8px !important; }
  .n5-kicker > span:last-child { text-align: left !important; }

  .n5-result-grid { grid-template-columns: 1fr !important; }
  .n5-industry-tabs { margin-inline: -12px !important; padding-inline: 12px !important; }

  .sol6-choice-rail { grid-template-columns: 1fr !important; }
  .sol6-choice-rail button { min-height: 64px !important; grid-template-columns: 34px 1fr auto !important; }
  .sol6-choice-rail button i { display: block !important; }

  .sol6-orbit { grid-template-columns: 1fr !important; min-height: 600px !important; }
  .sol6-orbit-node { min-height: 70px !important; }

  .ind6-context blockquote { padding: 34px 20px !important; font-size: clamp(1.8rem, 9vw, 2.8rem) !important; }
  .ind6-context > p { padding: 20px !important; }

  .eco6-list div strong,
  .about6-brand-list div strong { font-size: 1.35rem !important; }

  .con6-direct a { font-size: 1.05rem !important; }
  .con6-brief ol { padding: 0 18px !important; }
  .con6-brief li { grid-template-columns: 30px 1fr !important; gap: 12px !important; }

  .sol6-faq summary,
  .ind6-faq summary,
  .eco6-faq summary,
  .about6-faq summary,
  .con6-faq summary,
  .n5-faq-list summary {
    grid-template-columns: 30px minmax(0,1fr) 22px !important;
    gap: 10px !important;
  }

  .nox-footer-brand p,
  .nox-footer-belief strong,
  .nox-footer a,
  .nox-footer span { max-width: 100% !important; }
}

/* ---------- Extra-small devices ---------- */
@media (max-width: 360px) {
  .nox-shell,
  .n5-shell,
  .nox-inner-shell,
  .nox-footer-shell,
  .clr-shell,
  .nav-shell {
    width: calc(100% - 20px) !important;
  }

  .n6-hero .nox-headline,
  .nox-headline,
  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1 {
    font-size: clamp(2.55rem, 13.2vw, 3.5rem) !important;
  }

  .n6-brand-rail > a,
  .sol6-service-ledger > a,
  .eco6-list > a,
  .about6-brand-list > a {
    grid-template-columns: 24px minmax(0,1fr) 16px !important;
  }

  .n5-moment-signal blockquote { font-size: 1.55rem !important; }
  .n5-moment-result h3 { font-size: 2.35rem !important; }
  .sol6-stage h3 { font-size: 2.3rem !important; }
}

/* ---------- Short laptop screens ---------- */
@media (min-width: 901px) and (max-height: 760px) {
  .n6-hero .nox-headline { font-size: clamp(3.8rem, 6.35vw, 6rem) !important; }
  .n6-hero .nox-system { margin-top: 16px !important; }
  .n6-hero .nox-node { min-height: 88px !important; }
  .n6-hero .nox-node strong { margin-top: 20px !important; }

  .sol6-hero,
  .ind6-hero,
  .eco6-hero,
  .con6-hero { padding-top: 96px !important; padding-bottom: 34px !important; }

  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1 { font-size: clamp(3.2rem, 5.2vw, 5.1rem) !important; }

  .sol6-orbit,
  .eco6-network { max-height: 520px !important; }
}

/* ---------- Landscape phones ---------- */
@media (max-height: 560px) and (orientation: landscape) and (max-width: 950px) {
  .site-header-nox .nav-shell { min-height: 56px !important; }
  .primary-nav { inset: 58px 8px 8px !important; max-height: calc(100dvh - 66px) !important; }
  .nox-hero .nox-shell { padding-top: 84px !important; }
  .n6-hero .nox-headline,
  .sol6-hero-copy h1,
  .ind6-hero h1,
  .eco6-hero h1,
  .con6-hero h1 { font-size: clamp(2.7rem, 8.5vw, 4rem) !important; }
}

/* ---------- Touch targets / motion ---------- */
@media (pointer: coarse) {
  a,
  button,
  summary,
  input,
  select {
    min-height: 44px;
  }

  .n6-brand-rail > a,
  .sol6-service-ledger > a,
  .eco6-list > a,
  .about6-brand-list > a {
    min-height: 72px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}
