/* Shared Community font families; Studio's existing layout and copy retained. */
:root {
  --font-ui: "Segoe UI Variable Text", "Segoe UI", Arial, sans-serif;
  --font-display: "Bahnschrift SemiCondensed", "Arial Narrow", "Segoe UI", sans-serif;
  --text: #f2eee6;
  --text2: #d2d2cd;
  --muted: #b9bdbe;
  --soft: #a9b2b5;
  --gold: #74dceb;
  --gold-strong: #a5e8f1;
  --blue: #74dceb;
}
body {font-size:1rem;line-height:1.65;background:#080b0e;color:var(--text);}
h1,h2,h3,.portfolio-grid h3,.bio-card h3 {font-family:var(--font-display);font-weight:650;line-height:1.18;letter-spacing:.015em;}
h1 {font-size:clamp(2rem,3.1vw,2.625rem);max-width:780px;letter-spacing:-.015em;}
h2 {font-size:clamp(1.625rem,2.25vw,2rem);}
h3,.portfolio-grid h3,.bio-card h3 {font-size:1.375rem;}
.lead,.section-intro,.about-copy p {font-size:1rem;line-height:1.65;color:var(--text2);}
.card p,.card .demonstrates,.mini-card p,.mini-card,.bio-card p,.bio-list li,.direct-email-note,.direct-email-note a {font-size:1rem;line-height:1.65;color:var(--text2);}
.mini-card strong {font-family:var(--font-ui);font-size:1rem;line-height:1.45;font-weight:650;}
.eyebrow,.hero .eyebrow,.kicker,.tag,.proof-label,.capability-line {font-family:var(--font-ui);font-size:.875rem;font-weight:650;line-height:1.5;letter-spacing:.075em;color:#a5e8f1;}
.proof-label {display:block;margin-bottom:4px;}
.brand-subtitle {font-size:.75rem;letter-spacing:.075em;color:var(--muted);}
.logo {font-family:var(--font-display);font-size:1.125rem;font-weight:650;}
nav a,.button,.sample-link,label,.form-status,.modal-bar strong,.modal-footer,footer {font-family:var(--font-ui);font-size:.875rem;line-height:1.5;}
nav a,.button,.sample-link {font-weight:650;letter-spacing:.065em;}
.button,.sample-link {min-height:44px;}
.button {border-radius:6px;}
.hero .buttons .button:not(.secondary) {background:#74dceb;color:#061015;border-color:#74dceb;}
.button.secondary {background:rgba(5,8,11,.68);color:var(--text);}
.card,.mini-card,.bio-card {background:#0d1217;border:1px solid #283238;box-shadow:none;}
.card::before,.card::after,.hero-card::before,.hero-card::after {opacity:0;}
.card:hover {transform:none;border-color:#627d85;}
.mini-card {border-radius:6px;}
.hero-card {border-radius:8px;}
.card .system-role {color:var(--text2);}
.system-node,.system-node p {font-size:.875rem;line-height:1.5;}
.system-node strong {font-size:1rem;}
.system-node .layer-number,.system-node small,.system-node span {font-size:.875rem;}
.system-index {font-size:.875rem;line-height:1.5;color:var(--muted);}
input,select,textarea {font-family:var(--font-ui);font-size:1rem;line-height:1.5;}
.modal-footer {text-transform:none;letter-spacing:0;color:var(--muted);}
.modal-bar {gap:12px;}
.modal-bar strong {min-width:0;overflow-wrap:anywhere;}
.modal-close {flex-shrink:0;min-height:44px;}
.modal-viewer::before {content:none;}
.modal-viewer {background:#fff;}
.modal-footer a {min-height:44px;align-items:center;}
:focus-visible {outline:2px solid #a5e8f1;outline-offset:4px;}
@media(max-width:680px){
  h1 {font-size:1.75rem;}
  .capability-line {font-size:.75rem;letter-spacing:.05em;}
  .nav {gap:12px;}
  nav {gap:12px;}
  .hero .buttons {gap:10px;}
  .brand-subtitle {font-size:.75rem;}
  .modal-footer {gap:2px;}
  .modal-footer span {font-size:.75rem;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{transition:none!important;animation:none!important}}
