*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body{
  font-family:Inter,system-ui,sans-serif;
  background:#080706;
  color:#e7e5e4;
}
button,input,textarea,select{font:inherit}
#app{min-height:100vh}

.bg-a,.bg-b,.rail-l,.rail-r{
  position:fixed;inset:0;pointer-events:none;z-index:-10
}
.bg-a{
  background:
    radial-gradient(circle at top left,rgba(251,191,36,0.08),transparent 24%),
    radial-gradient(circle at bottom right,rgba(180,90,20,0.08),transparent 18%),
    linear-gradient(to bottom,#0b0907,#0f0d0a,#090806);
}
.bg-b{
  opacity:.06;
  background-image:
    linear-gradient(rgba(255,255,255,0.12) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,0.12) 1px,transparent 1px);
  background-size:40px 40px;
}
.rail-l,.rail-r{width:1px;top:0;bottom:0;background:linear-gradient(to bottom,transparent,rgba(251,191,36,.2),transparent);height:100vh}
.rail-l{left:24px}
.rail-r{right:24px}
@media (max-width: 1024px){.rail-l,.rail-r{display:none}}

.shell{width:min(100%,1280px);margin:0 auto;padding:0 20px}
.card{
  position:relative;overflow:hidden;border-radius:2px;
  border:1px solid #4a3118;background:#0d0c0a;
  box-shadow:0 0 0 1px rgba(176,97,30,.12),0 24px 70px rgba(0,0,0,.82)
}
.inner-card{
  position:relative;overflow:hidden;border-radius:2px;
  border:1px solid #3c2a18;background:#12110f
}
.section-label{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:10px;letter-spacing:.35em;text-transform:uppercase;color:#fbbf24
}
.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.font-sans{font-family:Inter,system-ui,sans-serif}

.header{
  position:sticky;top:0;z-index:40;border-bottom:1px solid #332313;background:rgba(9,9,8,.95);backdrop-filter:blur(8px)
}
.header-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding:16px 20px}
.brand-top{font-size:10px;letter-spacing:.4em;color:#fbbf24}
.brand-sub{font-size:12px;color:#78716c;margin-top:2px}
.nav{display:flex;flex-wrap:wrap;gap:8px}
.nav button{
  position:relative;display:flex;align-items:center;gap:8px;
  border-radius:2px;border:1px solid #2f2317;padding:8px 12px;
  font-size:12px;background:#100f0d;color:#a8a29e;cursor:pointer;transition:.2s
}
.nav button:hover{border-color:#f59e0b;color:#e7e5e4}
.nav button.active{
  border-color:#fbbf24;color:#fcd34d;background:#15120e;
  box-shadow:0 0 16px rgba(251,191,36,.08)
}
.nav .icon{width:14px;display:inline-block;text-align:center}

.main{padding:40px 0 56px}
.grid-2{display:grid;grid-template-columns:1.05fr .95fr;gap:24px}
.grid-2b{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
.grid-cases{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.grid-strengths{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.grid-cred{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.two-col{display:grid;grid-template-columns:180px 1fr;gap:20px}
@media (max-width: 1024px){
  .grid-2,.grid-2b,.grid-cases,.grid-strengths,.grid-cred,.two-col{grid-template-columns:1fr}
}

.p-outer{padding:24px}
.p-inner{padding:20px}
.pad-lg{padding:28px 32px}
.mt-4{margin-top:16px}.mt-5{margin-top:20px}.mt-6{margin-top:24px}.mt-7{margin-top:28px}.mt-8{margin-top:32px}
.mb-5{margin-bottom:20px}
.space-3 > * + *{margin-top:12px}
.space-4 > * + *{margin-top:16px}

.hero-title{
  max-width:900px;font-size:clamp(2.2rem,5vw,4.3rem);font-weight:800;line-height:.98;letter-spacing:-.04em;color:#fafaf9
}
.h2{
  font-size:clamp(1.8rem,4vw,2.4rem);font-weight:700;letter-spacing:-.02em;color:#fafaf9
}
.h3{font-size:1.125rem;font-weight:700;color:#f5f5f4}
.h4{font-size:1rem;font-weight:700;color:#f5f5f4}
.copy-lg{font-size:17px;line-height:1.9;color:#b8b0a8}
.copy{font-size:16px;line-height:1.9;color:#a8a29e}
.copy-sm{font-size:14px;line-height:1.8;color:#b8b0a8}
.muted{color:#78716c}
.amber{color:#fbbf24}
.border-left{border-left:2px solid #fbbf24}
.border-soft{border:1px solid #3b2b1b}
.shadow-inset{box-shadow:inset 0 0 0 1px rgba(120,72,28,.14)}

.pill{
  display:inline-flex;border:1px solid rgba(251,191,36,.2);background:rgba(251,191,36,.1);
  padding:8px 16px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:#fcd34d
}
.badge{
  border:1px solid #54351a;background:#1a1713;padding:8px 16px;border-radius:2px;
  font-size:14px;color:#e7e5e4;box-shadow:inset 0 0 0 1px rgba(120,72,28,.15)
}
.btn-row{display:flex;flex-wrap:wrap;gap:12px}
.btn{
  border-radius:2px;padding:12px 20px;font-size:14px;font-weight:700;cursor:pointer;transition:.2s
}
.btn-primary{background:#fbbf24;color:#1c1917;border:none;box-shadow:0 0 18px rgba(255,170,50,.25)}
.btn-primary:hover{filter:brightness(.96)}
.btn-secondary{border:1px solid #3a2b1b;background:#181512;color:#f5f5f4}
.btn-secondary:hover{background:#1d1915}

.rowline{display:flex;align-items:center;gap:12px;color:rgba(251,191,36,.9)}
.rowline hr{flex:1;border:none;border-top:1px solid rgba(245,158,11,.45)}
.iconline{display:flex;align-items:center;gap:12px}
.dot{
  width:10px;height:10px;border-radius:999px;border:1px solid #8a5a2b;background:#1b1712;box-shadow:0 0 0 1px rgba(0,0,0,.45)
}
.dot-sm{width:12px;height:12px;border-radius:999px;background:#fbbf24;box-shadow:0 0 10px rgba(255,180,70,.35)}
.bullet{
  margin-top:10px;width:10px;height:10px;border-radius:999px;background:#fbbf24;box-shadow:0 0 10px rgba(255,180,70,.45);flex:0 0 auto
}
.list-item{display:flex;gap:12px;align-items:flex-start}
.chev{color:#fbbf24;flex:0 0 auto;margin-top:4px}

.panel-rivets .rivet{position:absolute;width:10px;height:10px;border-radius:999px;border:1px solid #8a5a2b;background:#1b1712;box-shadow:0 0 0 1px rgba(0,0,0,.45)}
.panel-rivets .tl{left:12px;top:12px}.panel-rivets .tr{right:12px;top:12px}.panel-rivets .bl{left:12px;bottom:12px}.panel-rivets .br{right:12px;bottom:12px}
.gear-accent{
  pointer-events:none;position:absolute;right:-16px;top:-16px
}
.gear-accent.small{right:-8px;top:-8px;transform:scale(.75)}
.gear-ring{
  width:56px;height:56px;border-radius:999px;border:1px solid rgba(124,77,34,.7);
  background:radial-gradient(circle,#231a12,#0e0c0a);opacity:.7;
  display:flex;align-items:center;justify-content:center;font-size:28px;color:rgba(251,191,36,.7)
}

.terminal-wrap{
  pointer-events:none;position:fixed;inset:0;z-index:80;display:flex;justify-content:center;align-items:flex-start;padding:96px 16px 0;transition:.2s
}
.terminal-wrap.hidden{opacity:0}
.terminal{
  position:relative;width:min(100%,800px);border:1px solid rgba(251,191,36,.6);background:rgba(10,9,8,.96);
  box-shadow:0 0 0 1px rgba(255,140,0,.18),0 30px 80px rgba(0,0,0,.85);
  transition:.2s;border-radius:2px
}
.terminal.hidden{transform:translateY(-8px) scale(.985)}
.terminal-head{
  display:flex;justify-content:space-between;align-items:center;
  padding:8px 16px;border-bottom:1px solid #2a1f14;
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:#fbbf24
}
.terminal-body{
  min-height:140px;padding:16px;background:linear-gradient(180deg,rgba(255,160,60,.03),transparent);
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;color:#d6d3d1
}
.term-line{display:flex;gap:8px;animation:pulseone .25s ease-in-out 1}
.term-prompt{color:#fbbf24}
.cursor{display:inline-block;width:8px;height:16px;background:#fbbf24;animation:blink 1s infinite;vertical-align:middle}
@keyframes blink{50%{opacity:0}}
@keyframes pulseone{50%{opacity:.7}}

.contact-grid{display:grid;gap:12px;align-self:end}
.contact-link{
  width:100%;border:1px solid #4a2f18;background:#181512;padding:16px 20px;border-radius:2px;
  color:#f5f5f4;text-decoration:none;display:block
}
.contact-link:hover{background:#1d1813}

.hidden{display:none}
