/* Featured NEXUS product, using the site's existing gold identity. */
.main-nav a.nexus-nav-link { color: var(--gold-bright); }
#nexus [hidden] { display: none !important; }
.nexus-section { padding-top: 88px; scroll-margin-top: 20px; }
.nexus-feature {
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  border: 1px solid #d5b27140;
  background: linear-gradient(115deg, #141513f5, #0b0e12fa 66%);
  box-shadow: 0 22px 70px #0003;
}
.nexus-copy { min-width: 0; padding: clamp(28px, 4vw, 58px); }
.nexus-eyebrow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 18px;
  font-size: .875rem;
  letter-spacing: .1em;
}
.nexus-eyebrow > span {
  padding: 4px 9px;
  border: 1px solid #d5b27138;
  font-size: .75rem;
  letter-spacing: .05em;
  color: #bbb8ae;
}
.nexus-copy h2 {
  margin: 23px 0 15px;
  color: var(--gold-bright);
  font-size: clamp(3.8rem, 6.3vw, 6rem);
  line-height: 1.06;
  font-weight: 500;
  letter-spacing: -.045em;
}
.nexus-headline {
  margin: 0;
  font-size: clamp(1.7rem, 2.35vw, 2.3rem);
  line-height: 1.28;
  letter-spacing: -.035em;
}
.nexus-headline > span { color: #bbb9b2; }
.nexus-description { max-width: 450px; margin: 23px 0 28px; color: #b5b7bb; font-size: 1rem; line-height: 1.8; }
.nexus-enquiry { font-size: 1rem; }
.nexus-setup-note { margin: 13px 0 0; font-size: .875rem; color: #a9abb0; }
.nexus-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.nexus-actions .button { gap: 15px; }
.nexus-notes-button { background: transparent; color: var(--gold-bright); border: 1px solid #d5b27165; font-size: 1rem; }
.nexus-notes-button:hover { background: #d5b27114; border-color: var(--gold); }
.nexus-release-line { display: flex; flex-wrap: wrap; gap: 8px 12px; margin: 0 0 24px; font-size: .875rem; color: #bbb9b2; line-height: 1.7; }
.nexus-release-line > span { color: var(--gold-bright); font-family: var(--mono); font-size: .875rem; }
.nexus-identity {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 28px;
  min-width: 0;
  padding: 30px;
  border-left: 1px solid #d5b27124;
  background: radial-gradient(ellipse at 50% 45%, #d5b2710d, transparent 65%);
}
.nexus-identity-top, .nexus-identity-bottom {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  font-family: var(--mono);
  font-size: .75rem;
  letter-spacing: .08em;
  color: #a9a596;
}
.nexus-identity-top { border-bottom: 1px solid #d5b27124; padding-bottom: 18px; }
.nexus-identity-bottom { border-top: 1px solid #d5b27124; padding-top: 18px; }
.nexus-companion-preview { display: flex; flex-direction: column; align-items: center; gap: 0; margin: 0; padding-block: 8px; }
.nexus-orb-shell { width: 206px; height: 206px; position: relative; flex: 0 0 206px; }
#nexus-orb-canvas { display: block; width: 206px; height: 206px; }
.nexus-orb-fallback { width: 144px; height: 144px; margin: 31px auto; }
.nexus-orb-grip { position: absolute; top: 21px; left: 98px; display: grid; grid-template-columns: repeat(2, 2px); gap: 3px; opacity: .72; }
.nexus-orb-grip i { width: 2px; height: 2px; border-radius: 50%; background: #f5d487; box-shadow: 0 0 4px #dca44890; }
.nexus-companion-status {
  display: flex; justify-content: center; align-items: center; gap: 8px;
  min-width: 190px; padding: 6px 13px; margin-top: 3px;
  border: 1px solid #9e7a3d; border-radius: 99px;
  background: linear-gradient(110deg, #16140fe8, #0d0d0cf5 65%, #201a10ed);
  box-shadow: inset 0 1px 1px #ead39512, 0 2px 9px #0006;
  font-size: .875rem; line-height: 1.35; color: #efdeb0;
}
.nexus-companion-status > span:first-child { font-family: var(--mono); font-weight: 500; letter-spacing: .12em; font-size: .75rem; }
.nexus-companion-controls {
  display: flex; align-items: center; justify-content: center; width: 166px; height: 41px; margin-top: 9px;
  border: 1px solid #97733a; border-radius: 99px;
  background: linear-gradient(135deg, #242016ef, #0b0c0cf7 65%);
  box-shadow: inset 0 1px 1px #ffedb21a, 0 3px 12px #0005; color: #efdeb0;
}
.nexus-companion-controls > span { display: grid; place-items: center; width: 49px; height: 33px; }
.nexus-companion-controls > i { width: 1px; height: 18px; background: #8d70375e; }
.nexus-companion-controls .icon { width: 19px; height: 19px; }
.nexus-companion-preview figcaption { font-size: .875rem; color: #aca99f; margin-top: 25px; text-align: center; }
.nexus-motion-toggle { border: 0; background: transparent; color: var(--gold-bright); padding: 11px 16px; margin-top: 3px; font-size: .875rem; min-height: 44px; text-decoration: underline; text-underline-offset: 4px; }
.nexus-motion-toggle:hover { color: #fff1ce; }
.nexus-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-column: 1 / -1; border-top: 1px solid #d5b27130; background: #090c0f88; }
.nexus-features > div { display: flex; gap: 17px; align-items: flex-start; padding: 27px 30px; min-width: 0; }
.nexus-features > div:not(:nth-child(3n + 1)) { border-left: 1px solid #d5b27124; }
.nexus-features > div:nth-child(n + 4) { border-top: 1px solid #d5b27124; }
.nexus-features .icon { color: var(--gold); width: 25px; height: 25px; margin-top: 2px; }
.nexus-features h3 { margin: 0 0 5px; font-size: 1rem; line-height: 1.5; font-weight: 500; }
.nexus-features p { margin: 0; color: #a9abb0; font-size: 1rem; line-height: 1.6; }
html.nexus-notes-open { overflow: hidden; }
.nexus-notes-dialog {
  width: min(920px, calc(100vw - 32px)); max-width: none; max-height: min(90dvh, 960px);
  padding: 0; margin: auto; border: 1px solid #d5b27170; border-radius: 12px;
  color: var(--text); background: #101215; box-shadow: 0 30px 130px #000b;
  overflow: hidden;
}
.nexus-notes-dialog[open] { display: flex; flex-direction: column; }
.nexus-notes-dialog::backdrop { background: #030507d9; backdrop-filter: blur(7px); }
.nexus-notes-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 22px; padding: 28px 30px 24px; border-bottom: 1px solid #d5b27130; flex-shrink: 0; background: linear-gradient(120deg, #232018, #111418 70%); }
.nexus-notes-header > div { min-width: 0; }
.nexus-notes-header .eyebrow { margin: 0 0 9px; font-size: .875rem; letter-spacing: .09em; }
.nexus-notes-header h2 { font-size: clamp(1.6rem, 4vw, 2rem); font-weight: 500; line-height: 1.25; margin: 0; letter-spacing: -.035em; }
#nexus-notes-description { font-size: .875rem; color: #b4b2ab; margin: 10px 0 0; line-height: 1.6; }
.nexus-notes-close { display: grid; place-items: center; width: 44px; height: 44px; flex-shrink: 0; border: 1px solid #d5b27150; border-radius: 50%; background: #ffffff06; color: var(--gold-bright); }
.nexus-notes-close:hover { background: #d5b2711a; border-color: var(--gold); }
.nexus-notes-body { min-height: 0; flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; padding: 28px 32px; font-size: 1rem; line-height: 1.8; overflow-wrap: anywhere; scrollbar-color: #8b754e #101215; scrollbar-width: thin; }
.nexus-notes-body h3 { margin: 0 0 20px; font-size: 1.3rem; line-height: 1.45; font-weight: 500; color: var(--gold-bright); }
.nexus-notes-body p { margin: 16px 0; color: #bcbec1; }
.nexus-notes-body ul { margin: 18px 0 22px; padding-left: 24px; }
.nexus-notes-body li { padding-left: 3px; margin-bottom: 13px; color: #d6d6d2; }
.nexus-notes-body li::marker { color: var(--gold); }
.nexus-notes-body strong { color: #f2e5c7; font-weight: 500; }
.nexus-notes-body code { font-family: var(--mono); font-size: .875em; padding: 2px 5px; border: 1px solid #d5b27122; background: #d5b2710a; border-radius: 3px; color: #eed6a6; white-space: normal; }
.nexus-notes-current { margin-top: 30px; padding-top: 28px; border-top: 1px solid #d5b27130; }
.nexus-notes-history { border: 1px solid #d5b27138; border-radius: 6px; padding: 0 22px; margin-top: 30px; }
.nexus-notes-history summary { cursor: pointer; color: var(--gold-bright); padding: 18px 0; font-size: 1rem; }
.nexus-notes-history section { margin-top: 25px; padding-top: 25px; border-top: 1px solid var(--line); }
.nexus-notes-history section:last-child { padding-bottom: 12px; }
.nexus-notes-footer { flex-shrink: 0; display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; padding: 17px 30px; border-top: 1px solid #d5b27130; font-family: var(--mono); font-size: .75rem; color: #a9a69d; }
@media (min-width: 1041px) {
  .main-nav { gap: clamp(14px, 1.4vw, 23px); }
  .header-inner { gap: 24px; }
}
@media (min-width: 1041px) and (max-width: 1380px) {
  .header-cta { display: none; }
}
@media (max-width: 960px) {
  .nexus-feature { grid-template-columns: 1.2fr 1fr; }
  .nexus-identity { padding: 25px 22px; }
  .nexus-features > div { padding: 24px 22px; gap: 12px; }
}
@media (max-width: 760px) {
  .nexus-section { padding-top: 55px; }
  .nexus-feature { grid-template-columns: minmax(0, 1fr); }
  .nexus-copy { padding: 30px 26px; }
  .nexus-copy h2 { font-size: clamp(3.5rem, 13vw, 5rem); }
  .nexus-headline { font-size: clamp(1.6rem, 6.2vw, 2.2rem); }
  .nexus-identity { border-left: 0; border-top: 1px solid #d5b27124; gap: 16px; }
  .nexus-features { grid-template-columns: minmax(0, 1fr); }
  .nexus-features > div { padding: 22px 26px; gap: 18px; }
  .nexus-features > div:not(:nth-child(3n + 1)) { border-left: 0; }
  .nexus-features > div + div { border-top: 1px solid #d5b27124; }
  .nexus-notes-header { padding: 22px 20px 18px; gap: 12px; }
  .nexus-notes-body { padding: 22px 20px; }
  .nexus-notes-footer { padding: 15px 20px; }
  .nexus-notes-history { padding-inline: 15px; }
}
@media (max-width: 380px) {
  .nexus-copy { padding-inline: 20px; }
  .nexus-enquiry { width: 100%; gap: 12px; padding-inline: 13px; }
  .nexus-identity { padding-inline: 20px; }
}
