:root {
  --bg: #05070a;
  --bg-soft: #080d14;
  --panel: #0b111a;
  --panel-2: #0e1722;
  --line: rgba(139, 181, 237, .16);
  --line-strong: rgba(139, 181, 237, .30);
  --text: #f1f6fd;
  --muted: #96a8bd;
  --muted-2: #6d8096;
  --accent: #4c93ff;
  --accent-2: #92c4ff;
  --max: 1180px;
  --radius: 18px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--bg); }
body { margin: 0; color: var(--text); background: var(--bg); font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, a { -webkit-tap-highlight-color: transparent; }
.container { width: min(calc(100% - 32px), var(--max)); margin-inline: auto; }
.skip-link { position: fixed; left: 16px; top: -70px; z-index: 100; padding: 12px 18px; background: #fff; color: #05070a; border-radius: 8px; transition: top .2s ease; }
.skip-link:focus { top: 16px; }
.site-header { position: fixed; inset: 0 0 auto; z-index: 40; border-bottom: 1px solid transparent; transition: background .35s ease, border-color .35s ease, backdrop-filter .35s ease; }
.site-header.scrolled { background: rgba(4, 7, 11, .78); border-color: rgba(124, 171, 232, .13); backdrop-filter: blur(18px); }
.header-inner { min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.brand img { width: 142px; height: auto; }
.desktop-nav { display: none; gap: 26px; margin-left: auto; color: var(--muted); font-size: 14px; }
.desktop-nav a, .footer-links a { transition: color .25s ease; }
.desktop-nav a:hover, .footer-links a:hover { color: var(--accent-2); }
.header-cta { padding: 11px 15px; border: 1px solid rgba(116, 170, 247, .34); border-radius: 999px; color: #d9ebff; font-size: 13px; font-weight: 700; background: rgba(24, 70, 133, .13); transition: .25s ease; }
.header-cta:hover { border-color: rgba(116, 170, 247, .70); background: rgba(24, 70, 133, .25); transform: translateY(-1px); }
.hero { position: relative; min-height: 760px; padding: 140px 0 72px; overflow: hidden; display: flex; align-items: flex-end; isolation: isolate; }
.hero-media { position: absolute; inset: 0; z-index: -3; background: url('./assets/hero-engine.webp') center / cover no-repeat; }
.hero-gridlines { position: absolute; inset: 0; z-index: -2; opacity: .55; background-image: linear-gradient(rgba(122,166,222,.055) 1px, transparent 1px), linear-gradient(90deg, rgba(122,166,222,.055) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, rgba(0,0,0,.7), transparent 80%); }
.hero::after { content:""; position:absolute; inset:0; z-index:-1; background: linear-gradient(180deg, rgba(3,5,8,.18), rgba(3,5,8,.34) 56%, #05070a 100%); }
.hero-copy { max-width: 735px; }
.eyebrow { display: inline-flex; align-items: center; gap: 10px; margin: 0 0 18px; color: #9cc6ff; font-size: 11px; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.eyebrow span { width: 28px; height: 1px; background: var(--accent); box-shadow: 0 0 16px var(--accent); }
h1,h2,h3,p { margin-top: 0; }
h1 { max-width: 790px; margin-bottom: 20px; font-size: clamp(42px, 9vw, 80px); line-height: .98; letter-spacing: -.065em; }
h1 em { color: var(--accent-2); font-style: normal; }
h2 { max-width: 760px; margin-bottom: 16px; font-size: clamp(34px, 6.2vw, 62px); line-height: 1; letter-spacing: -.06em; }
h3 { letter-spacing: -.035em; }
.hero-text, .section-head > p, .about-layout p, .final-card > p { max-width: 680px; color: #b0bed0; font-size: clamp(16px, 2.8vw, 19px); line-height: 1.65; }
.hero-actions { display: flex; flex-direction: column; gap: 10px; margin-top: 30px; }
.button { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; gap: 10px; padding: 0 19px; border-radius: 10px; font-size: 14px; font-weight: 800; letter-spacing: .01em; transition: transform .25s ease, border-color .25s ease, background .25s ease, box-shadow .25s ease; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #06101c; background: #70aeff; box-shadow: 0 12px 32px rgba(28, 103, 204, .22); }
.button-primary:hover { background: #91c2ff; box-shadow: 0 16px 44px rgba(28, 103, 204, .34); }
.button-secondary { color: #c8ddf9; border: 1px solid rgba(134, 181, 243, .28); background: rgba(6, 12, 20, .5); }
.button-secondary:hover { border-color: rgba(134, 181, 243, .54); background: rgba(17, 30, 47, .72); }
.hero-note { display: grid; gap: 4px; margin-top: 28px; padding-left: 15px; border-left: 1px solid rgba(117, 174, 255, .64); color: var(--muted); font-size: 13px; line-height: 1.45; }
.hero-note strong { color: #dcecff; }
.hero-status { display:none; }
.section { padding: 86px 0; }
.section-head { margin-bottom: 28px; }
.section-head > p:last-child { color: var(--muted); }
.situations { background: linear-gradient(180deg, #05070a 0%, #070b11 100%); }
.symptom-grid { display:grid; grid-template-columns: 1fr; gap: 10px; }
.symptom-card { min-height: 92px; display:flex; align-items:center; gap: 18px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: rgba(12, 19, 29, .62); transition: border-color .3s ease, transform .3s ease, background .3s ease; }
.symptom-card:hover { transform: translateY(-3px); border-color: var(--line-strong); background: rgba(15, 26, 39, .88); }
.symptom-card b, .case-top b, .result-layout span { color: #6faeff; font-size: 11px; letter-spacing: .16em; }
.symptom-card span { color: #d8e4f3; font-weight: 700; line-height: 1.35; }
.workflow { border-block: 1px solid rgba(116, 165, 226, .09); background: radial-gradient(circle at 90% 10%, rgba(18, 75, 151, .12), transparent 38%), #07101a; }
.workflow-layout { display:grid; gap: 20px; }
.steps { display:grid; gap: 10px; margin:0; padding:0; list-style:none; }
.steps li { display:grid; grid-template-columns: 44px 1fr; gap: 10px; padding: 19px 16px; border-top: 1px solid var(--line); background: linear-gradient(90deg, rgba(15,27,42,.8), rgba(15,27,42,.32)); }
.steps b { color: #6da9fa; font-size: 13px; letter-spacing:.12em; }
.steps h3 { margin:0 0 7px; font-size: 18px; }
.steps p { margin:0; color:var(--muted); font-size:14px; line-height:1.55; }
.results { background:#06090e; }
.result-layout { display:grid; grid-template-columns:1fr; gap:10px; }
.result-layout article { min-height: 134px; padding: 20px; border:1px solid var(--line); background:#0a1018; }
.result-layout h3 { margin:15px 0 0; font-size:18px; line-height:1.24; }
.result-layout .result-main { min-height: 244px; display:flex; flex-direction:column; justify-content:flex-end; background: radial-gradient(circle at 92% 10%, rgba(44,122,231,.28), transparent 42%), #0b131f; }
.result-main h3 { max-width: 460px; margin: 15px 0 8px; font-size: 30px; }
.result-main p { max-width:580px; margin:0; color:var(--muted); line-height:1.6; }
.honest { padding-top: 28px; background:#06090e; }
.honest-card { display:grid; gap:18px; padding:25px 20px; border:1px solid rgba(115,176,255,.27); border-radius:16px; background:linear-gradient(135deg, rgba(18,43,75,.72), rgba(9,17,27,.86)); }
.honest-mark { width:48px; height:48px; display:grid; place-items:center; border:1px solid rgba(133,186,255,.43); border-radius:50%; color:#a4ccff; font-size:23px; font-weight:900; box-shadow:0 0 30px rgba(61,133,229,.2); }
.honest-card h2 { font-size:clamp(30px, 5.4vw, 48px); }
.honest-card p:last-child { margin:0; color:#b5c5d9; font-size:17px; line-height:1.65; }
.cases { background:#070b11; }
.case-grid { display:grid; gap:12px; }
.case-card { display:flex; min-height: 410px; flex-direction:column; padding:20px; border:1px solid var(--line); border-radius:14px; background:linear-gradient(160deg, #0d1621, #090e15); transition: transform .3s ease, border-color .3s ease; }
.case-card:hover { transform:translateY(-5px); border-color:var(--line-strong); }
.case-top { display:flex; justify-content:space-between; gap:14px; color:#9bc8ff; font-size:12px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.case-card h3 { margin:30px 0 28px; font-size:27px; line-height:1.04; }
dl { margin:0; }
dl div { padding:13px 0; border-top:1px solid var(--line); }
dt { margin-bottom:6px; color:#77adf5; font-size:11px; font-weight:900; letter-spacing:.16em; text-transform:uppercase; }
dd { margin:0; color:#aebed0; font-size:14px; line-height:1.55; }
.case-conclusion { margin:auto 0 0; padding-top:18px; color:#d5e3f4; font-size:14px; font-weight:700; line-height:1.55; }
.about { background:#06090e; }
.about-layout { display:grid; gap:30px; }
.about-number { color:#f0f6ff; font-size:clamp(78px, 26vw, 210px); font-weight:900; letter-spacing:-.13em; line-height:.72; opacity:.94; }
.about-number span { color:#4f92ed; font-size:.42em; letter-spacing:.25em; }
.about .section-head { margin-bottom:0; }
.final-cta { background:#06090e; padding-top:40px; }
.final-card { position:relative; overflow:hidden; padding:30px 22px; border:1px solid rgba(120,175,247,.28); border-radius:18px; background:radial-gradient(circle at 90% 10%, rgba(43,116,219,.28), transparent 35%), #0a121d; }
.final-card::after { content:""; position:absolute; right:-70px; bottom:-110px; width:270px; height:270px; border:1px solid rgba(124,180,255,.18); border-radius:50%; box-shadow:0 0 0 40px rgba(124,180,255,.035),0 0 0 80px rgba(124,180,255,.022); }
.final-card h2 { position:relative; z-index:1; }
.final-card > p { position:relative; z-index:1; }
.final-card .hero-actions { position:relative; z-index:1; }
.site-footer { padding:52px 0 22px; border-top:1px solid rgba(119,164,222,.12); background:#040609; }
.footer-layout { display:grid; gap:25px; }
.footer-layout p { max-width:300px; margin:14px 0 0; color:var(--muted-2); font-size:14px; line-height:1.55; }
.footer-links { display:grid; gap:13px; color:#b6c8dc; font-size:14px; }
.footer-bottom { display:flex; justify-content:space-between; gap:16px; margin-top:38px; padding-top:16px; border-top:1px solid rgba(117,162,220,.12); color:#66788d; font-size:12px; }
.reveal, .reveal-stagger > * { opacity:0; transform:translateY(20px); transition:opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1); }
.reveal.visible, .reveal-stagger.visible > * { opacity:1; transform:none; }
.reveal-stagger.visible > *:nth-child(2) { transition-delay:.06s; }
.reveal-stagger.visible > *:nth-child(3) { transition-delay:.12s; }
.reveal-stagger.visible > *:nth-child(4) { transition-delay:.18s; }
.reveal-stagger.visible > *:nth-child(5) { transition-delay:.24s; }
.reveal-stagger.visible > *:nth-child(6) { transition-delay:.30s; }
.reveal-stagger.visible > *:nth-child(7) { transition-delay:.36s; }
.reveal-stagger.visible > *:nth-child(8) { transition-delay:.42s; }
@media (min-width: 680px) {
  .container { width:min(calc(100% - 48px), var(--max)); }
  .desktop-nav { display:flex; }
  .hero { min-height:800px; }
  .hero-actions { flex-direction:row; flex-wrap:wrap; }
  .button { min-width:190px; }
  .symptom-grid { grid-template-columns:repeat(2,1fr); }
  .result-layout { grid-template-columns:repeat(2,1fr); }
  .result-layout .result-main { grid-column:span 2; }
  .honest-card { grid-template-columns:64px 1fr; padding:34px; }
  .footer-layout { grid-template-columns:1fr auto; }
  .footer-links { grid-template-columns:repeat(2,auto); column-gap:30px; }
}
@media (min-width: 960px) {
  .header-inner { min-height:78px; }
  .brand img { width:166px; }
  .hero { min-height:880px; padding-bottom:98px; }
  .hero-status { position:absolute; right:30px; bottom:38px; display:flex; align-items:center; gap:10px; color:#83aee5; font-size:10px; font-weight:800; letter-spacing:.17em; }
  .status-dot { width:8px; height:8px; border-radius:50%; background:#5b9cff; box-shadow:0 0 18px #4d93ff; }
  .section { padding:126px 0; }
  .section-head { margin-bottom:44px; }
  .symptom-grid { grid-template-columns:repeat(4,1fr); }
  .symptom-card.wide { grid-column:span 2; }
  .workflow-layout { grid-template-columns:.9fr 1.1fr; gap:70px; }
  .steps li { padding:23px 18px; }
  .result-layout { grid-template-columns:repeat(3,1fr); }
  .result-layout .result-main { grid-column:span 2; grid-row:span 2; min-height:318px; padding:28px; }
  .result-main h3 { font-size:42px; }
  .honest-card { padding:44px; }
  .case-grid { grid-template-columns:repeat(3,1fr); }
  .case-card { padding:22px; }
  .about-layout { grid-template-columns:.92fr 1.08fr; align-items:center; gap:70px; }
  .final-card { padding:60px 54px; }
  .final-card h2 { max-width:850px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *, *::before, *::after { animation-duration:.01ms!important; transition-duration:.01ms!important; scroll-behavior:auto!important; }
  .reveal, .reveal-stagger > * { opacity:1; transform:none; }
}
