/* qxork.com — lightweight responsive theme */
:root {
  color-scheme: light dark;
  --bg: #f7f7f2;
  --surface: #ffffff;
  --surface-2: #ecece5;
  --text: #11120f;
  --muted: #5e625b;
  --line: rgba(17,18,15,.14);
  --accent: #2f80ff;
  --accent-2: #6c4cff;
  --accent-text: #ffffff;
  --shadow: 0 18px 55px rgba(17,18,15,.10);
  --radius: 24px;
  --max: 1120px;
  --body-font: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --heading-font: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0c0d0c;
    --surface: #151715;
    --surface-2: #20231f;
    --text: #f4f5ed;
    --muted: #aeb3a8;
    --line: rgba(244,245,237,.14);
    --accent: #2f80ff;
    --accent-2: #8b72ff;
    --accent-text: #ffffff;
    --shadow: 0 18px 60px rgba(0,0,0,.34);
  }
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
  margin:0; background:var(--bg); color:var(--text);
  font-family: var(--body-font);
  line-height:1.65; font-size:17px;
  text-rendering:optimizeLegibility;
}
img { max-width:100%; height:auto; display:block; }
a { color:inherit; }
.container { width:min(calc(100% - 32px),var(--max)); margin-inline:auto; }
.site-header { padding:20px 0; border-bottom:1px solid var(--line); }
.nav { display:flex; align-items:center; justify-content:space-between; gap:18px; min-width:0; }
.brand { font-weight:900; font-size:1.25rem; text-decoration:none; letter-spacing:-.04em; }
.brand-mark { display:inline-block; width:10px; height:10px; background:var(--accent); margin-right:8px; border-radius:50%; box-shadow:0 0 0 5px color-mix(in srgb,var(--accent) 15%,transparent); }
.nav-menu { position:relative; }
.nav-toggle { display:none; }
.nav-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:6px; min-width:0; }
.nav-links a { padding:8px 11px; border-radius:999px; text-decoration:none; color:var(--muted); font-weight:700; font-size:.9rem; }
.nav-links a:hover,.nav-links a[aria-current="page"] { color:var(--text); background:var(--surface-2); }
.hero { padding:clamp(56px,10vw,120px) 0 70px; position:relative; overflow:hidden; }
.hero::after { content:""; position:absolute; width:420px; height:420px; right:-180px; top:-180px; background:radial-gradient(circle,color-mix(in srgb,var(--accent-2) 34%,transparent),transparent 68%); pointer-events:none; }
.eyebrow { text-transform:uppercase; letter-spacing:.13em; font-size:.76rem; font-weight:900; color:var(--muted); margin:0 0 18px; }
h1,h2,h3 { font-family:var(--heading-font); line-height:1.05; letter-spacing:-.055em; margin:0 0 18px; }
h1 { font-size:clamp(3.2rem,9vw,7.5rem); max-width:950px; }
h2 { font-size:clamp(2rem,5vw,4rem); }
h3 { font-size:1.35rem; }
.lede { max-width:760px; color:var(--muted); font-size:clamp(1.1rem,2vw,1.35rem); }
.actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; }
.btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border:1px solid var(--line); border-radius:999px; text-decoration:none; font-weight:850; }
.btn-primary { background:var(--accent); color:var(--accent-text); border-color:var(--accent); }
.btn-secondary { background:var(--surface); }
.section { padding:76px 0; }
.section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:30px; }
.grid { display:grid; gap:18px; }
.grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.card { background:var(--surface); border:1px solid var(--line); border-radius:var(--radius); padding:26px; box-shadow:var(--shadow); }
.card.flat { box-shadow:none; }
.card-accent { background:linear-gradient(135deg,var(--accent),#78b7ff); color:#11120f; }
@media(prefers-color-scheme:dark){.card-accent{background:linear-gradient(135deg,var(--accent),#9b8cff);}}
.tag { display:inline-block; padding:5px 9px; border-radius:999px; background:var(--surface-2); color:var(--muted); font-size:.78rem; font-weight:800; margin:3px; }
.big-number { font-size:clamp(3rem,7vw,6rem); font-weight:950; letter-spacing:-.08em; line-height:.9; }
.media { border-radius:20px; overflow:hidden; border:1px solid var(--line); background:var(--surface-2); }
.media img { width:100%; }
.quote { font-size:1.15rem; font-weight:700; }
.list { padding-left:1.2rem; }
.contact-list { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.contact-list li { display:flex; justify-content:space-between; gap:18px; padding:16px 0; border-bottom:1px solid var(--line); }
.contact-list a { font-weight:800; }
.prose { max-width:760px; }
.prose p { margin:0 0 1.2rem; }
footer { border-top:1px solid var(--line); padding:34px 0 50px; color:var(--muted); font-size:.9rem; }
.footer-inner { display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; }
@media(max-width:760px){
  .site-header { padding:14px 0; }
  .nav { gap:12px; }
  .brand { flex:0 0 auto; }
  .nav-menu { margin-left:auto; }
  .nav-toggle { display:inline-flex; align-items:center; gap:7px; padding:9px 13px; border:1px solid var(--line); border-radius:999px; color:var(--text); background:var(--surface); font:inherit; font-size:.9rem; font-weight:800; cursor:pointer; }
  .nav-toggle:hover,.nav-toggle[aria-expanded="true"] { background:var(--surface-2); }
  .nav-links { position:absolute; top:calc(100% + 10px); right:0; z-index:20; display:none; flex-direction:column; gap:4px; min-width:210px; padding:8px; border:1px solid var(--line); border-radius:16px; background:var(--surface); box-shadow:var(--shadow); }
  .nav-links.is-open { display:flex; }
  .nav-links a { display:block; padding:10px 12px; white-space:nowrap; }
  .grid-2,.grid-3 { grid-template-columns:1fr; }
  .section { padding:56px 0; }
  .hero { padding-top:48px; }
  .contact-list li { flex-direction:column; gap:4px; }
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.card{transition:none}}

/* Media page */
.section-note { margin:0; color:var(--muted); font-size:.9rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.media-list { border-top:1px solid var(--line); }
.media-story { display:grid; grid-template-columns:minmax(145px, .32fr) 1fr auto; align-items:center; gap:24px; padding:22px 8px; border-bottom:1px solid var(--line); text-decoration:none; transition:background .18s ease, padding .18s ease; }
.media-story:hover { background:var(--surface); padding-inline:18px; }
.media-source { font-size:.72rem; font-weight:900; letter-spacing:.09em; color:var(--muted); }
.media-source b { display:block; margin-top:4px; color:var(--accent); font-size:.64rem; }
.media-title { font-size:1.08rem; font-weight:800; letter-spacing:-.02em; }
.media-arrow { font-size:1.35rem; color:var(--accent); }
.media-band { background:color-mix(in srgb,var(--surface-2) 58%,var(--bg)); border-block:1px solid var(--line); }
.media-feature { min-height:100%; }
.media-feature h2 { font-size:clamp(2rem,4vw,3.3rem); }
.media-playlists { display:grid; align-content:center; gap:12px; }
.playlist { display:grid; grid-template-columns:44px 1fr auto; gap:16px; align-items:center; padding:22px; border:1px solid var(--line); border-radius:18px; background:var(--surface); text-decoration:none; box-shadow:var(--shadow); }
.playlist:hover { border-color:var(--accent); }
.playlist-index { font-weight:950; color:var(--accent); }
.playlist strong,.playlist small { display:block; }
.playlist strong { font-size:1.1rem; }
.playlist small { color:var(--muted); margin-top:3px; }
.callout { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:34px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); box-shadow:var(--shadow); }
.callout p:last-child { margin-bottom:0; color:var(--muted); }
@media(max-width:760px){
  .media-story { grid-template-columns:1fr auto; gap:8px 16px; }
  .media-source { grid-column:1/-1; }
  .media-title { grid-column:1; }
  .media-arrow { grid-column:2; grid-row:2; }
  .section-head { align-items:flex-start; flex-direction:column; }
  .callout { align-items:flex-start; flex-direction:column; padding:26px; }
}
.contact-row { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:19px 4px; border-bottom:1px solid var(--line); }
.contact-row a { font-weight:800; text-align:right; }
hr { border:0; border-top:1px solid var(--line); margin:24px 0; }
@media(max-width:760px){.contact-row{align-items:flex-start;flex-direction:column;gap:6px}.contact-row a{text-align:left}}
@media(max-width:760px){
  .testimonial { padding:20px; }
  .testimonial blockquote { line-height:1.42; }
  .testimonial figcaption { margin-top:12px; }
}

/* Shared hero typography */
.hero h1, .hero h1 span { font-family:var(--heading-font); font-weight:950; }

/* Homepage testimonials */
.testimonials-grid { align-items:stretch; }
.testimonial { display:flex; flex-direction:column; }
.testimonial blockquote { margin:0; font-size:clamp(1.08rem,1.7vw,1.28rem); line-height:1.5; font-weight:750; letter-spacing:-.02em; }
.testimonial figcaption { margin-top:16px; color:var(--muted); font-size:.9rem; }
.testimonial figcaption cite { font-style:normal; }


/* Shared typography and utility classes */
.accent-text { color: var(--accent-2); }
.card-top-gap { margin-top: 18px; }
