/* ===== NEXACORE PUBLIC TYPOGRAPHY V6.4.3 START ===== */

:root{
  --nx-font-ui:"Space Grotesk","Segoe UI Variable","Segoe UI",system-ui,-apple-system,sans-serif;
  --nx-font-display:"Oxanium","Space Grotesk","Segoe UI Variable","Segoe UI",system-ui,sans-serif;
}

/* Global readability */
html{
  font-size:16px;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  font-family:var(--nx-font-ui)!important;
  font-size:16px!important;
  line-height:1.58!important;
  letter-spacing:.002em;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Futuristic display language */
h1,h2,h3,
.brand b,
.eyebrow,
.btn,
button,
.topbar nav a,
.console-head,
.demochip,
.project-card h3,
.services article>b,
.wsbrand b,
.wsnav button,
.sidebtn{
  font-family:var(--nx-font-display)!important;
}

h1,h2,h3{
  letter-spacing:-.025em;
  font-weight:650!important;
}

.hero h1{
  font-size:clamp(42px,5.7vw,74px)!important;
  line-height:1.02!important;
}
.hero-copy>p{
  font-size:17px!important;
  line-height:1.65!important;
  max-width:760px;
}
.eyebrow{
  font-size:12px!important;
  letter-spacing:.13em!important;
  font-weight:650!important;
}

/* Header and navigation */
.topbar .brand b{
  font-size:17px!important;
  letter-spacing:.06em!important;
}
.topbar .brand small{
  font-size:11px!important;
  line-height:1.35!important;
  letter-spacing:.055em!important;
}
.topbar nav a{
  font-size:13px!important;
  font-weight:600!important;
  letter-spacing:.025em!important;
}
.topbar .lang button,
.nx-action{
  font-size:11px!important;
  font-weight:650!important;
}

/* Hero console */
.hero-console{
  font-size:14px!important;
}
.console-head{
  font-size:11px!important;
  letter-spacing:.09em!important;
}
.console-flow b{
  font-size:15px!important;
}
.console-flow span{
  font-size:12px!important;
  line-height:1.4!important;
}

/* Sections */
.section-head h2,
.contact-copy h2,
.worktop h2{
  font-size:clamp(31px,3.5vw,49px)!important;
  line-height:1.08!important;
}
.section-head p,
.contact-copy>p{
  font-size:16px!important;
  line-height:1.65!important;
}

/* Project cards */
.project-card{
  font-size:15px!important;
}
.project-card h3{
  font-size:19px!important;
  line-height:1.2!important;
}
.project-card p{
  font-size:14.5px!important;
  line-height:1.58!important;
}
.project-card .tags span,
.project-card .tag,
.project-card small{
  font-size:11.5px!important;
}
.project-card button,
.project-card .btn{
  font-size:12.5px!important;
}

/* Filters / search */
.filters button{
  font-family:var(--nx-font-display)!important;
  font-size:12px!important;
  font-weight:600!important;
}
#search{
  font-size:15px!important;
  min-height:44px!important;
}

/* Services */
.services article{
  font-size:15px!important;
}
.services article>b{
  font-size:17px!important;
  line-height:1.25!important;
}
.services article>p{
  font-size:14.5px!important;
  line-height:1.6!important;
}
.services article>span{
  font-size:12px!important;
}
.infra-note,
.solutions-note,
.private-note{
  font-size:12.5px!important;
  line-height:1.5!important;
}

/* Buttons */
.btn{
  min-height:44px!important;
  padding:11px 16px!important;
  font-size:13px!important;
  font-weight:650!important;
  letter-spacing:.035em!important;
}

/* Workspace */
.workspace-shell{
  font-size:15px!important;
}
.wsbrand b{
  font-size:15px!important;
}
.wsbrand small,
#wsStatus{
  font-size:11.5px!important;
}
.wsnav button,
.sidebtn{
  font-size:12.5px!important;
}
#wsBody{
  font-size:14.5px!important;
  line-height:1.55!important;
}
.demochip{
  font-size:11.5px!important;
}
.workspace-cta p{
  font-size:15px!important;
}

/* Forms */
.contact-form label span,
.formgrid label>span{
  font-size:12.5px!important;
  line-height:1.35!important;
}
.contact-form input,
.contact-form select,
.contact-form textarea{
  font-family:var(--nx-font-ui)!important;
  font-size:15px!important;
  line-height:1.45!important;
}
.contact-form input,
.contact-form select{
  min-height:45px!important;
}
.contact-form textarea{
  min-height:150px!important;
}
.lead-status,
#contactPreview{
  font-size:12.5px!important;
  line-height:1.5!important;
}

/* Proof / status chips */
.proof span{
  font-size:12px!important;
}
.badge,.chip,.pill,.status{
  font-size:11.5px!important;
}

/* V6 generator / architecture should inherit the new body size cleanly */
.nx60-generator,
.nx60-arch-card,
.nx60-palette-card{
  font-family:var(--nx-font-ui)!important;
}
.nx60-generator h2,
.nx60-modal-head h2{
  font-family:var(--nx-font-display)!important;
}
.nx60-gen-head p{
  font-size:15px!important;
}
#nx60Brief{
  font-size:14px!important;
}
.nx60-examples button,
.nx60-module,
.nx60-flow span,
.nx60-result-actions button,
.nx60-cmd b{
  font-size:12px!important;
}
.nx60-smart-badge,
.nx60-result-top,
.nx60-flow-title,
.nx60-cmd span{
  font-size:11px!important;
}
.nx60-detected small{
  font-size:10.5px!important;
}
.nx60-detected b{
  font-size:16px!important;
}

/* Traffic public counter if installed */
.nx-traffic-widget,
.nx-traffic-v64,
[id*="traffic"]{
  font-family:var(--nx-font-ui);
}
.nx-traffic-widget b,
.nx-traffic-v64 b{
  font-family:var(--nx-font-display);
}

/* Mobile: slightly larger than before, but still compact */
@media(max-width:720px){
  html{font-size:16px}
  body{
    font-size:16px!important;
    line-height:1.6!important;
  }
  .hero h1{
    font-size:clamp(38px,11vw,54px)!important;
  }
  .hero-copy>p,
  .section-head p,
  .contact-copy>p{
    font-size:16px!important;
  }
  .section-head h2,
  .contact-copy h2,
  .worktop h2{
    font-size:clamp(29px,8vw,40px)!important;
  }
  .topbar nav a{
    font-size:11.5px!important;
  }
  .project-card h3{
    font-size:18px!important;
  }
  .project-card p,
  .services article>p{
    font-size:14.5px!important;
  }
  .btn{
    font-size:12.5px!important;
  }
  .proof span{
    font-size:11.5px!important;
  }
}

/* Respect accessibility preference */
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important}
}

/* ===== NEXACORE PUBLIC TYPOGRAPHY V6.4.3 END ===== */
