/* QueryKey Splash Page Styles */
:root {
  --qk-bg: #0f1115;
  --qk-bg-alt: #171a21;
  --qk-surface: #1f242b;
  --qk-border: #2a3038;
  --qk-text: #eef2f7;
  --qk-text-dim: #b3bcc9;
  --qk-accent: #ff7a18;
  --qk-accent-rgb: 255,122,24;
  --qk-focus: 210 100% 62%;
  --qk-radius-sm: 4px;
  --qk-radius-md: 8px;
  --qk-radius-lg: 16px;
  --qk-font-stack: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', Arial, sans-serif;
  --qk-gradient-accent: linear-gradient(135deg,#ff7a18,#ffae3d);
  --qk-shadow-soft: 0 4px 18px -4px rgba(0,0,0,.4),0 2px 6px -1px rgba(0,0,0,.3);
}

* { box-sizing: border-box; }
html,body { padding:0; margin:0; font-family: var(--qk-font-stack); background: var(--qk-bg); color: var(--qk-text); -webkit-font-smoothing: antialiased; }
body { line-height:1.5; }

img { max-width:100%; display:block; }

/* Layout */
.site-header, .site-footer { background: var(--qk-bg-alt); border-bottom:1px solid var(--qk-border); }
.site-footer { border-top:1px solid var(--qk-border); border-bottom:none; }
.site-header .inner, .site-footer .inner, .hero-inner, .section-inner { width:100%; max-width:1180px; margin:0 auto; padding: clamp(1rem,2vw,2rem); }
.brand { font-weight:700; font-size:1.15rem; letter-spacing:.5px; }
.primary-nav a, .footer-nav a { color: var(--qk-text-dim); text-decoration:none; font-size:.9rem; padding:.5rem .9rem; border-radius:var(--qk-radius-sm); display:inline-block; }
.primary-nav a:hover, .footer-nav a:hover, .primary-nav a:focus-visible { color: var(--qk-text); background: var(--qk-surface); }
.primary-nav { display:flex; gap:.25rem; }
.footer-nav { display:flex; gap:.75rem; flex-wrap:wrap; }
.site-header .inner { display:flex; align-items:center; justify-content:space-between; }

/* Hero */
.hero { position:relative; padding: clamp(4rem,10vw,7rem) 0 4rem; background: radial-gradient(circle at 30% 20%, rgba(255,122,24,.18), transparent 60%), var(--qk-bg); }
.hero-title { font-size: clamp(2.1rem,5vw,3.4rem); line-height:1.1; font-weight:700; max-width:980px; margin:0 0 1.15rem; }
.hero-title .accent { background: linear-gradient(120deg,#ffb347,#ff7a18 60%,#ffb347); -webkit-background-clip:text; background-clip:text; color:transparent; }
.hero-sub { max-width:880px; font-size: clamp(1.05rem,1.5vw,1.3rem); margin:0 0 2rem; color: var(--qk-text-dim); }
.hero-ctas { display:flex; gap:.9rem; flex-wrap:wrap; }

/* Buttons */
.btn { --_pad-y:.75rem; --_pad-x:1.25rem; --_fs:.95rem; font-weight:600; border-radius: var(--qk-radius-md); padding: var(--_pad-y) var(--_pad-x); border:1px solid var(--qk-border); cursor:pointer; text-decoration:none; line-height:1; display:inline-flex; align-items:center; justify-content:center; gap:.5rem; position:relative; transition:.25s background,color,border,box-shadow; }
.btn.primary { background: var(--qk-gradient-accent); color:#1b140b; border:1px solid rgba(var(--qk-accent-rgb),.5); box-shadow:0 2px 8px -2px rgba(var(--qk-accent-rgb),.5),0 0 0 1px #000 inset; }
.btn.primary:hover, .btn.primary:focus-visible { box-shadow:0 4px 18px -4px rgba(var(--qk-accent-rgb),.55),0 0 0 1.5px rgba(0,0,0,.7) inset; }
.btn.ghost { background: rgba(255,255,255,.04); color: var(--qk-text); }
.btn.ghost:hover, .btn.ghost:focus-visible { background: rgba(255,255,255,.08); }
.btn:focus-visible { outline:2px solid hsl(var(--qk-focus)); outline-offset:2px; }

/* Cred points */
.cred-points { list-style:none; padding:0; margin:1.5rem 0 0; display:grid; gap:.4rem; font-size:.8rem; color: var(--qk-text-dim); max-width:680px; }
.cred-points li { display:flex; gap:.4rem; align-items:flex-start; }

/* Pillars */
.pillars { background: var(--qk-bg-alt); border-top:1px solid var(--qk-border); border-bottom:1px solid var(--qk-border); }
.pillar-grid { display:grid; gap:1.35rem; grid-template-columns: repeat(auto-fit,minmax(230px,1fr)); margin-top:1.5rem; }
.pillar { background: var(--qk-surface); padding:1.1rem 1rem 1.15rem; border:1px solid var(--qk-border); border-radius:var(--qk-radius-md); position:relative; overflow:hidden; box-shadow: var(--qk-shadow-soft); }
.pillar h3 { margin:.2rem 0 .7rem; font-size:1.05rem; }
.pillar p { margin:0; font-size:.85rem; color: var(--qk-text-dim); }

/* Model */
.model { padding:3.2rem 0; }
.model-grid { display:grid; gap:1.25rem; grid-template-columns: repeat(auto-fit,minmax(230px,1fr)); margin-top:1.5rem; }
.model-block { background: var(--qk-surface); padding:1rem 1rem 1.05rem; border:1px solid var(--qk-border); border-radius:var(--qk-radius-md); }
.model-block h3 { margin:.15rem 0 .6rem; font-size:1rem; }
.model-block ul { margin:0; padding:0 0 0 1.05rem; display:flex; flex-direction:column; gap:.35rem; font-size:.8rem; color: var(--qk-text-dim); }

/* Notice */
.notice { background: linear-gradient(120deg, rgba(var(--qk-accent-rgb),.12), transparent 55%), var(--qk-bg-alt); padding:3.2rem 0; border-top:1px solid var(--qk-border); border-bottom:1px solid var(--qk-border); }
.notice-lead { font-size:.95rem; max-width:880px; }
.notice p { max-width:880px; font-size:.8rem; color: var(--qk-text-dim); }

/* Brand Defense */
.brand-defense { padding:3rem 0 3.25rem; background: var(--qk-bg); border-top:1px solid var(--qk-border); }
.brand-defense p { max-width:900px; font-size:.8rem; color: var(--qk-text-dim); }
.def-list { margin:1.25rem 0 1.5rem; padding:0; list-style:none; display:grid; gap:.65rem; max-width:900px; }
.def-list li { background: var(--qk-surface); border:1px solid var(--qk-border); padding:.75rem .85rem .8rem; border-radius:var(--qk-radius-sm); font-size:.72rem; line-height:1.35; }
.def-list strong { color: var(--qk-text); font-weight:600; }

/* Contact */
.contact { padding:3.25rem 0 4rem; }
.contact-form { max-width:560px; display:grid; gap:1rem; margin-top:1.5rem; }
.form-row { display:flex; flex-direction:column; gap:.35rem; }
label { font-size:.75rem; font-weight:600; text-transform:uppercase; letter-spacing:.5px; color: var(--qk-text-dim); }
input, textarea { background: var(--qk-surface); border:1px solid var(--qk-border); border-radius:var(--qk-radius-sm); padding:.7rem .75rem; color: var(--qk-text); font: inherit; resize:vertical; }
input:focus-visible, textarea:focus-visible { outline:2px solid hsl(var(--qk-focus)); outline-offset:1px; }
textarea { min-height:140px; }
.form-status { font-size:.75rem; min-height:1.1rem; color: var(--qk-text-dim); }

/* Footer */
.site-footer { padding:1.75rem 0; }
.site-footer p { margin:0 0 .5rem; font-size:.7rem; color: var(--qk-text-dim); }
.site-footer .footer-nav a { font-size:.7rem; }

/* Typography utilities */
h1,h2,h3 { font-weight:600; letter-spacing:.5px; }
h2 { font-size: clamp(1.6rem,3.2vw,2.1rem); margin:0 0 1rem; }

/* Maintenance Banner */
.maintenance-banner { background: linear-gradient(90deg, rgba(var(--qk-accent-rgb),.18), rgba(var(--qk-accent-rgb),.04)); border-bottom:1px solid var(--qk-border); font-size:.72rem; letter-spacing:.5px; text-transform:uppercase; -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); position:relative; z-index:60; }
.maintenance-banner .mb-inner { max-width:1180px; margin:0 auto; padding:.55rem clamp(.75rem,2vw,1.25rem); display:flex; gap:.5rem; align-items:center; flex-wrap:wrap; color: var(--qk-text-dim); }
.maintenance-banner strong { color: var(--qk-text); font-weight:600; }
.maintenance-hero { padding-top: clamp(3.2rem,8vw,6rem); }

/* Responsive tweaks */
@media (max-width: 680px) {
  .hero-ctas { flex-direction:column; align-items:stretch; }
  .primary-nav { display:none; }
  .site-header { position:sticky; top:0; z-index:40; }
}

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration:0.01ms !important; }
}
