/* QJet24 */

@font-face{
  font-family:'Space Grotesk';
  src:url('fonts/space-grotesk-600.woff2') format('woff2');
  font-weight:600; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Space Grotesk';
  src:url('fonts/space-grotesk-700.woff2') format('woff2');
  font-weight:700; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'IBM Plex Sans';
  src:url('fonts/ibm-plex-sans-400.woff2') format('woff2');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'IBM Plex Sans';
  src:url('fonts/ibm-plex-sans-600.woff2') format('woff2');
  font-weight:600; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'IBM Plex Mono';
  src:url('fonts/ibm-plex-mono-400.woff2') format('woff2');
  font-weight:400; font-style:normal; font-display:swap;
}

:root{
  --paper:#FFFFFF;
  --paper-2:#FFFFFF;
  --ink:#0F1E2B;
  --ink-soft:#5B6570;
  --navy:#191E52;
  --navy-2:#262E82;
  --amber:#C79A3D;
  --amber-deep:#A67D2C;
  --teal:#33574F;
  --line:#C6CACE;
  --line-on-navy:rgba(233,236,238,0.18);
  --cream-on-navy:#E9ECEE;
  --radius:2px;
  --maxw:1120px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'IBM Plex Sans', sans-serif;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{
  font-family:'Space Grotesk', sans-serif;
  font-weight:600;
  line-height:1.15;
  margin:0 0 0.5em;
  letter-spacing:-0.01em;
}
p{margin:0 0 1em;}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:var(--maxw); margin:0 auto; padding:0 24px;}
.eyebrow{
  font-family:'IBM Plex Mono', monospace;
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--amber-deep);
  display:inline-block;
  margin-bottom:14px;
  border:none;
  padding-left:0;
}
.eyebrow::before,
.eyebrow::after{
  content:none !important;
  display:none !important;
}
section{padding:88px 0;}
@media (max-width:720px){ section{padding:56px 0;} }

a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible{
  outline:2px solid var(--amber);
  outline-offset:3px;
}

/* ---------- Language suggestion ---------- */
.lang-suggest{
  display:none;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:10px 16px;
  background:#F6F4EF;
  border-bottom:1px solid var(--line);
  padding:10px 20px;
  font-size:14px;
  color:var(--ink);
}
.lang-suggest.is-visible{display:flex;}
.lang-suggest p{margin:0;}
.lang-suggest-actions{display:flex; gap:8px; flex-wrap:wrap;}
.lang-suggest .btn{padding:7px 14px; font-size:13px;}
.lang-suggest .btn-quiet{
  background:transparent;
  border-color:var(--line);
  color:var(--ink);
}
.lang-suggest .btn-quiet:hover{border-color:var(--navy);}

/* ---------- Header ---------- */
.skip-link{
  position:absolute;
  left:-9999px;
  top:0;
  z-index:100;
  background:var(--amber);
  color:var(--navy);
  padding:12px 20px;
  font-weight:600;
  text-decoration:none;
  border-radius:0 0 4px 0;
}
.skip-link:focus{left:0;}
header{
  position:sticky; top:0; z-index:50;
  background:var(--paper);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 24px;
  max-width:var(--maxw); margin:0 auto;
  gap:16px;
}
.logo{
  font-family:'Space Grotesk', sans-serif;
  font-weight:700;
  font-size:19px;
  letter-spacing:-0.01em;
  text-decoration:none;
  color:var(--navy);
  display:flex; align-items:center; gap:8px;
  flex-shrink:0;
}
.logo-img{height:40px; width:auto; display:block;}
header .logo.brand{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:4px;
  width:fit-content;
}
header .logo.brand .logo-img{display:block;}
header .logo.brand .logo-tag{
  display:block;
  box-sizing:border-box;
  width:100%;
  padding-left:34%;
  font-family:'IBM Plex Mono',monospace;
  font-size:9px;
  letter-spacing:0.22em;
  text-transform:uppercase;
  color:var(--amber);
  font-weight:400;
  line-height:1;
  white-space:nowrap;
}
.footer-logo-img{height:36px; width:auto; display:block;}
nav.links{display:flex; gap:14px; align-items:center; flex-wrap:wrap; justify-content:flex-end;}
nav.links a{
  font-size:13.5px;
  text-decoration:none;
  color:var(--navy);
  font-weight:400;
  transition:color .15s ease;
  white-space:nowrap;
}
nav.links a:hover{color:var(--amber-deep);}
nav.links a.btn-primary{color:#fff; font-weight:600;}
nav.links a.btn-primary:hover{color:#fff;}
.lang-switch{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  font-size:16px !important;
  line-height:1;
  padding:0;
  border:1px solid var(--line);
  border-radius:50%;
  color:inherit !important;
  text-decoration:none;
  transition:border-color .15s ease, transform .15s ease;
}
.lang-switch:hover{border-color:var(--navy); transform:scale(1.08);}
.flag-icon{border-radius:50%; display:block;}
.btn{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'IBM Plex Sans', sans-serif;
  font-weight:600;
  font-size:14px;
  padding:11px 20px;
  border-radius:var(--radius);
  text-decoration:none;
  border:1px solid transparent;
  cursor:pointer;
  transition:transform .12s ease, background .15s ease, border-color .15s ease;
}
.btn-primary{background:var(--amber); color:#fff;}
.btn-primary:hover{background:var(--amber-deep);}
.menu-toggle{display:none;}

@media (max-width:860px){
  .logo-img{height:34px;}
  nav.links{
    position:fixed; inset:68px 0 0 0;
    background:var(--paper);
    flex-direction:column;
    align-items:flex-start;
    padding:24px;
    gap:18px;
    display:none;
    border-top:1px solid var(--line);
    overflow-y:auto;
  }
  nav.links.open{display:flex;}
  nav.links a{font-size:16px;}
  .menu-toggle{
    display:inline-flex;
    background:none; border:1px solid var(--navy); color:var(--navy);
    width:38px; height:38px; align-items:center; justify-content:center;
    border-radius:var(--radius); cursor:pointer;
  }
}

/* ---------- Hero ---------- */
.hero{
  background-color:var(--navy);
  background-image:url('assets/hero-field.svg');
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  color:var(--cream-on-navy);
  position:relative;
  overflow:hidden;
  padding:72px 0 64px;
}
.hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 55% 70% at 88% 36%, rgba(199,154,61,0.14), transparent 58%),
    linear-gradient(105deg, rgba(25,30,82,0.42) 0%, rgba(25,30,82,0.12) 46%, transparent 72%);
  pointer-events:none;
  z-index:0;
}
.hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(to bottom, transparent 72%, rgba(25,30,82,0.28));
  pointer-events:none;
  z-index:0;
}
.hero-grid{
  position:relative; z-index:1;
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, 0.95fr);
  gap:36px;
  align-items:start;
}
@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr; gap:36px;}
}
.hero-copy{max-width:560px;}
.hero-proof{
  width:100%;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.hero h1{
  font-size:clamp(30px, 4.6vw, 46px);
  color:#fff;
}
.hero .lead{
  font-size:17.5px;
  color:rgba(233,236,238,0.82);
  max-width:520px;
}
.hero-kicker{
  margin:0 0 12px;
  font-family:'IBM Plex Mono',monospace;
  font-size:12px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:var(--amber);
  line-height:1.45;
  max-width:28em;
}
.hero-copy .hero-badge{margin-bottom:18px;}
.hero-badge{
  display:inline-flex; align-items:center; gap:8px;
  font-family:'IBM Plex Mono', monospace;
  font-size:12px;
  letter-spacing:0.08em;
  color:var(--cream-on-navy);
  background:rgba(233,236,238,0.08);
  border:1px solid var(--line-on-navy);
  padding:6px 12px;
  border-radius:20px;
  margin-bottom:20px;
}
.hero-badge .pulse{
  width:7px; height:7px; border-radius:50%;
  background:#8CBF9A;
  box-shadow:0 0 0 rgba(140,191,154,0.5);
  animation:pulse 2.2s infinite;
}
@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(140,191,154,0.5);}
  70%{box-shadow:0 0 0 8px rgba(140,191,154,0);}
  100%{box-shadow:0 0 0 0 rgba(140,191,154,0);}
}
.hero-actions{display:flex; gap:14px; margin-top:28px; flex-wrap:wrap;}
.hero-alongside{
  display:inline-block;
  max-width:min(100%, 34em);
  width:auto;
  font-family:'Space Grotesk',sans-serif;
  font-size:14.5px;
  font-weight:600;
  line-height:1.4;
  color:#fff;
  padding:12px 16px;
  border-radius:10px;
  background:rgba(12, 18, 48, 0.55);
  border:1px solid transparent;
  background-clip:padding-box;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow:
    0 0 0 1px rgba(199,154,61,0.35),
    inset 0 1px 0 rgba(255,255,255,0.08),
    0 7px 20px rgba(0,0,0,0.22);
  position:relative;
}
.hero-alongside::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:10px;
  padding:1px;
  background:linear-gradient(
    135deg,
    rgba(232, 196, 110, 0.95) 0%,
    rgba(199, 154, 61, 0.55) 42%,
    rgba(255,255,255,0.12) 70%,
    rgba(199, 154, 61, 0.25) 100%
  );
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  mask-composite:exclude;
  pointer-events:none;
}
@media (max-width:720px){
  .hero-alongside{
    font-size:14px;
    padding:11px 14px;
    border-radius:9px;
  }
}
/* ---------- Preview cards ---------- */
.preview-cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  width:100%;
}
@media (max-width:720px){
  .preview-cards{grid-template-columns:1fr;}
}
.preview-card{
  position:relative;
  background:rgba(10, 16, 42, 0.35);
  border:1px solid rgba(255,255,255,0.22);
  border-radius:8px;
  padding:14px 12px 12px;
  min-height:138px;
  display:flex;
  flex-direction:column;
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.preview-card.highlight{
  border-color:rgba(199,154,61,0.6);
  background:rgba(199,154,61,0.08);
  box-shadow:0 0 0 1px rgba(199,154,61,0.16);
}
.preview-num{
  position:absolute;
  top:10px; right:10px;
  width:20px; height:20px;
  border-radius:50%;
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.28);
  font-family:'Space Grotesk', sans-serif;
  font-size:11px;
  font-weight:700;
  display:flex; align-items:center; justify-content:center;
  color:rgba(233,236,238,0.9);
  line-height:1;
}
.preview-tag{
  display:block;
  font-family:'IBM Plex Mono', monospace;
  font-size:10px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--amber);
  margin-bottom:8px;
  padding-right:26px;
}
.preview-card h3{
  font-size:14px;
  color:#fff;
  margin:0 0 4px;
}
.preview-card p{
  margin:0 0 10px;
  font-size:12.5px;
  color:rgba(233,236,238,0.78);
}
.preview-meta{
  list-style:none;
  margin:auto 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}
.preview-meta li{
  font-family:'IBM Plex Mono', monospace;
  font-size:10px;
  letter-spacing:0.04em;
  color:rgba(233,236,238,0.78);
  border:1px solid rgba(255,255,255,0.22);
  background:transparent;
  padding:3px 7px;
  border-radius:2px;
}

.dash-mock{
  background:rgba(10, 16, 42, 0.35);
  border:1px solid rgba(255,255,255,0.22);
  border-radius:8px;
  padding:14px;
  width:100%;
  box-sizing:border-box;
  color:var(--cream-on-navy);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.dash-top{
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:12px;
}
.dash-brand{
  font-family:'Space Grotesk', sans-serif;
  font-weight:600;
  font-size:13px;
}
.dash-live{
  display:inline-flex; align-items:center; gap:7px;
  font-family:'IBM Plex Mono', monospace;
  font-size:11px;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:#8CBF9A;
}
.dash-metrics{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
  align-items:stretch;
}
@media (max-width:720px){
  .dash-metrics{grid-template-columns:repeat(2, minmax(0, 1fr));}
}
.dash-metric{
  background:transparent;
  border:1px solid rgba(255,255,255,0.18);
  border-radius:6px;
  padding:10px 8px;
  display:flex;
  flex-direction:column;
  min-width:0;
}
.dash-label{
  display:block;
  font-family:'IBM Plex Mono', monospace;
  font-size:8.5px;
  letter-spacing:0.04em;
  text-transform:uppercase;
  color:rgba(233,236,238,0.55);
  margin-bottom:8px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.25;
  min-height:1.25em;
}
.dash-value{
  font-family:'Space Grotesk', sans-serif;
  font-size:20px;
  font-weight:600;
  color:#fff;
  line-height:1;
  margin-top:auto;
}
.dash-value.amber{color:var(--amber);}
.dash-value.teal{color:#8CBF9A;}

/* ---------- Manual vs QJet24 ---------- */
.compare{background:var(--paper);}
.compare-head{max-width:720px; margin-bottom:32px;}
.compare-head h2{font-size:clamp(26px,3.4vw,36px);}
.compare-sheet{
  display:grid;
  grid-template-columns:1fr 1fr;
  border:1px solid var(--line);
  overflow:hidden;
}
.compare-head-manual,
.compare-head-qjet{
  font-family:'IBM Plex Mono', monospace;
  font-size:11px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  padding:16px 22px 14px;
}
.compare-head-manual{
  background:#F4F1EA;
  color:var(--ink-soft);
  border-bottom:1px solid var(--line);
}
.compare-head-qjet{
  background:var(--navy);
  color:var(--amber);
  border-bottom:1px solid rgba(199,154,61,0.28);
}
.compare-cell-manual,
.compare-cell-qjet{
  margin:0;
  padding:16px 22px;
  font-size:15px;
  line-height:1.45;
}
.compare-cell-manual{
  background:#FBF9F4;
  color:var(--ink-soft);
  border-bottom:1px solid var(--line);
  border-right:1px solid var(--line);
}
.compare-cell-qjet{
  background:var(--navy);
  color:var(--cream-on-navy);
  border-bottom:1px solid var(--line-on-navy);
  padding-left:20px;
  box-shadow:inset 3px 0 0 var(--amber);
}
.compare-cell-manual:nth-last-child(2),
.compare-cell-qjet:last-child{border-bottom:none;}
@media (max-width:720px){
  .compare-sheet{grid-template-columns:1fr;}
  .compare-cell-manual{border-right:none;}
  .compare-head-qjet{border-top:1px solid rgba(199,154,61,0.28);}
}

/* ---------- The real work ---------- */
.problem{background:var(--paper);}
.section-head{max-width:640px; margin-bottom:48px;}
.section-head h2{font-size:clamp(26px,3.4vw,36px);}
.section-head p{color:var(--ink-soft); font-size:17px;}
.insight-layout{
  display:grid;
  grid-template-columns:minmax(0, 0.92fr) minmax(0, 1.08fr);
  gap:28px 56px;
  align-items:start;
}
.insight-intro{
  padding-top:4px;
  border-top:2px solid var(--amber);
}
.insight-intro h2{margin-bottom:0;}
.insight-copy p{
  margin:0 0 1.15em;
  color:var(--ink-soft);
  font-size:17px;
  line-height:1.7;
  max-width:38em;
}
.insight-copy p:last-child{margin-bottom:0;}
@media (max-width:860px){
  .insight-layout{
    grid-template-columns:1fr;
    gap:20px;
  }
}

/* ---------- How it works ---------- */
.how{
  background:var(--paper);
  border-top:1px solid var(--line);
}
.cockpit{
  --cycle:16s;
  background:#191E52;
  color:#fff;
  border-radius:14px;
  padding:28px 28px 32px;
  margin:0;
}
.cockpit-route{
  list-style:none;
  margin:0;
  padding:0;
  position:relative;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.wp{
  display:grid;
  grid-template-columns:56px 1fr;
  gap:18px;
  align-items:stretch;
  position:relative;
  z-index:1;
}
.wp-meta{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  padding-top:18px;
}
.wp-num{
  font-family:'IBM Plex Mono',monospace;
  font-size:22px;
  font-weight:400;
  color:#C79A3D;
  line-height:1;
}
.wp-role{
  font-family:'IBM Plex Mono',monospace;
  font-size:10px;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:rgba(233,236,238,0.55);
  margin-top:6px;
}
.wp-card{
  position:relative;
  background:rgba(255,255,255,0.04);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:20px 22px 18px;
}
.wp-tag{
  display:block;
  font-family:'IBM Plex Mono',monospace;
  font-size:11px;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#C79A3D;
  margin-bottom:8px;
}
.wp-card h3{
  font-family:'Space Grotesk',sans-serif;
  font-size:22px;
  font-weight:600;
  margin:0 0 8px;
  color:#fff;
}
.wp-card p{
  margin:0;
  font-size:15px;
  line-height:1.5;
  color:rgba(233,236,238,0.72);
}
.lamp{
  position:absolute;
  top:18px;
  right:18px;
  width:10px;
  height:10px;
  border-radius:50%;
  background:rgba(255,255,255,0.2);
  animation:lamp var(--cycle) infinite;
}
.wp-checks{
  list-style:none;
  margin:16px 0 0;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.wp-checks li{
  display:flex;
  align-items:center;
  gap:8px;
  background:rgba(10,16,42,0.45);
  border:1px solid rgba(255,255,255,0.1);
  border-radius:8px;
  padding:10px 12px;
  font-size:13.5px;
  color:rgba(233,236,238,0.38);
  animation:checkOff var(--cycle) infinite;
}
.wp-checks li::before{
  content:"✓";
  display:flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:50%;
  flex-shrink:0;
  font-size:11px;
  line-height:1;
  color:transparent;
  border:1.5px solid rgba(255,255,255,0.22);
  background:transparent;
}
.wp-checks li:nth-child(1){animation-name:check1;}
.wp-checks li:nth-child(2){animation-name:check2;}
.wp-checks li:nth-child(3){animation-name:check3;}
.wp-checks li:nth-child(4){animation-name:check4;}
.wp-checks li:nth-child(5){animation-name:check5;}
.wp-1 .wp-card{animation:card1 var(--cycle) infinite;}
.wp-2 .wp-card{animation:card2 var(--cycle) infinite;}
.wp-3 .wp-card{animation:card3 var(--cycle) infinite;}
.wp-card-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:8px;
}
.wp-card-top .wp-tag{margin-bottom:0;}
.wp-card-top .pdf-chip{margin-top:0;}
.wp-modes{margin-top:14px;display:flex;flex-direction:column;gap:10px;}
.wp-modes p{margin:0;}
.wp-modes strong{
  display:block;
  font-family:'Space Grotesk',sans-serif;
  font-size:15px;
  font-weight:600;
  color:#fff;
  margin-bottom:2px;
}
.pdf-chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:16px;
  background:#fff;
  color:#191E52;
  border-radius:999px;
  padding:6px 12px 6px 6px;
  font-family:'IBM Plex Sans',sans-serif;
  font-size:13px;
  font-weight:400;
  animation:pdfIn var(--cycle) infinite;
}
.pdf-mark{
  display:inline-block;
  background:#C0392B;
  color:#fff;
  font-family:'IBM Plex Mono',monospace;
  font-size:9px;
  font-weight:400;
  letter-spacing:0.04em;
  padding:4px 6px;
  border-radius:4px;
}
@keyframes lamp{
  0%,6%{background:rgba(255,255,255,0.2);box-shadow:none;}
  8%,14%{background:#5BA88A;box-shadow:0 0 0 6px rgba(91,168,138,0.28),0 0 14px #5BA88A;}
  16%,100%{background:#5BA88A;box-shadow:0 0 8px rgba(91,168,138,0.45);}
}
@keyframes card1{
  0%,6%{border-color:rgba(255,255,255,0.12);box-shadow:none;}
  8%,22%{border-color:#C79A3D;box-shadow:0 0 0 1px rgba(199,154,61,0.35);}
  24%,100%{border-color:rgba(255,255,255,0.12);box-shadow:none;}
}
@keyframes card2{
  0%,22%{border-color:rgba(255,255,255,0.12);box-shadow:none;}
  24%,68%{border-color:#C79A3D;box-shadow:0 0 0 1px rgba(199,154,61,0.35);}
  70%,100%{border-color:rgba(255,255,255,0.12);box-shadow:none;}
}
@keyframes card3{
  0%,68%{border-color:rgba(255,255,255,0.12);box-shadow:none;opacity:0.55;}
  72%,100%{border-color:#C79A3D;box-shadow:0 0 0 1px rgba(199,154,61,0.45);opacity:1;}
}
@keyframes checkOff{
  0%,100%{color:rgba(233,236,238,0.38);}
}
@keyframes check1{
  0%,26%{color:rgba(233,236,238,0.38);}
  28%,100%{color:#8CBF9A;}
}
@keyframes check2{
  0%,34%{color:rgba(233,236,238,0.38);}
  36%,100%{color:#8CBF9A;}
}
@keyframes check3{
  0%,42%{color:rgba(233,236,238,0.38);}
  44%,100%{color:#8CBF9A;}
}
@keyframes check4{
  0%,50%{color:rgba(233,236,238,0.38);}
  52%,100%{color:#8CBF9A;}
}
@keyframes check5{
  0%,58%{color:rgba(233,236,238,0.38);}
  60%,100%{color:#8CBF9A;}
}
.wp-checks li:nth-child(1)::before{animation:mark1 var(--cycle) infinite;}
.wp-checks li:nth-child(2)::before{animation:mark2 var(--cycle) infinite;}
.wp-checks li:nth-child(3)::before{animation:mark3 var(--cycle) infinite;}
.wp-checks li:nth-child(4)::before{animation:mark4 var(--cycle) infinite;}
.wp-checks li:nth-child(5)::before{animation:mark5 var(--cycle) infinite;}
@keyframes mark1{
  0%,26%{border-color:rgba(255,255,255,0.22);background:transparent;color:transparent;}
  28%,100%{border-color:#5BA88A;background:#5BA88A;color:#fff;}
}
@keyframes mark2{
  0%,34%{border-color:rgba(255,255,255,0.22);background:transparent;color:transparent;}
  36%,100%{border-color:#5BA88A;background:#5BA88A;color:#fff;}
}
@keyframes mark3{
  0%,42%{border-color:rgba(255,255,255,0.22);background:transparent;color:transparent;}
  44%,100%{border-color:#5BA88A;background:#5BA88A;color:#fff;}
}
@keyframes mark4{
  0%,50%{border-color:rgba(255,255,255,0.22);background:transparent;color:transparent;}
  52%,100%{border-color:#5BA88A;background:#5BA88A;color:#fff;}
}
@keyframes mark5{
  0%,58%{border-color:rgba(255,255,255,0.22);background:transparent;color:transparent;}
  60%,100%{border-color:#5BA88A;background:#5BA88A;color:#fff;}
}
@keyframes pdfIn{
  0%,70%{opacity:0.25;transform:translateY(4px);}
  76%,100%{opacity:1;transform:none;}
}
@media (max-width:720px){
  .cockpit{padding:20px 16px 24px;}
  .wp{grid-template-columns:40px 1fr;gap:10px;}
  .wp-num{font-size:16px;}
  .wp-checks{grid-template-columns:1fr;}
  .wp-card{padding:18px 16px 16px;}
}
@media (prefers-reduced-motion:reduce){
  .lamp,.wp-card,.wp-checks li,.wp-checks li::before,.pdf-chip{animation:none !important;}
  .lamp{background:#5BA88A;box-shadow:0 0 8px rgba(91,168,138,0.45);}
  .wp-3 .wp-card{border-color:#C79A3D;opacity:1;}
  .wp-checks li{color:#8CBF9A;}
  .wp-checks li::before{border-color:#5BA88A;background:#5BA88A;color:#fff;}
  .pdf-chip{opacity:1;transform:none;}
}

/* ---------- About ---------- */
.about{background:var(--paper-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.about-inner{max-width:680px;}
.about h2{font-size:clamp(24px,3vw,32px);}
.about p{color:var(--ink-soft); font-size:16.5px;}
.about p strong{color:var(--ink); font-weight:600;}

/* ---------- Contact ---------- */
.contact{background:var(--paper);}
.pass{
  background:var(--navy);
  color:var(--cream-on-navy);
  border-radius:var(--radius);
  display:grid;
  grid-template-columns:1.4fr 1fr;
  position:relative;
  overflow:hidden;
  border:1px solid var(--navy-2);
}
@media (max-width:780px){ .pass{grid-template-columns:1fr;} }
.pass-main{padding:48px 44px;}
.pass .eyebrow{color:var(--amber);}
.pass-side{
  padding:48px 36px;
  border-left:1px dashed var(--line-on-navy);
  display:flex; flex-direction:column; justify-content:center; gap:22px;
  position:relative;
}
@media (max-width:780px){
  .pass-side{border-left:none; border-top:1px dashed var(--line-on-navy);}
}
.pass-side::before, .pass-side::after{
  content:"";
  position:absolute;
  width:20px; height:20px;
  background:var(--paper);
  border-radius:50%;
  left:-10px;
}
.pass-side::before{top:-10px;}
.pass-side::after{bottom:-10px;}
@media (max-width:780px){
  .pass-side::before{left:-10px; top:-10px;}
  .pass-side::after{left:calc(100% - 10px);}
}
.pass h2{color:#fff; font-size:clamp(24px,3vw,30px);}
.pass-main p{color:rgba(233,236,238,0.78); font-size:16px;}
.contact-item .label{
  font-family:'IBM Plex Mono', monospace;
  font-size:11px;
  letter-spacing:0.1em;
  text-transform:uppercase;
  color:var(--amber);
  display:block;
  margin-bottom:6px;
}
.contact-item a{
  font-size:17px;
  text-decoration:none;
  color:#fff;
  font-weight:400;
  border-bottom:1px solid transparent;
}
.contact-item a:hover{border-bottom-color:var(--amber);}
.privacy-note{
  margin-top:36px;
  font-size:13.5px;
  color:var(--ink-soft);
  display:flex; gap:10px; align-items:flex-start;
  max-width:640px;
}
.privacy-note svg{flex-shrink:0; margin-top:2px;}
.privacy-note a{text-decoration:underline;}

/* ---------- Footer ---------- */
footer{
  background:var(--navy);
  color:rgba(233,236,238,0.6);
  padding:40px 0 28px;
  font-size:13.5px;
  border-top:1px solid var(--navy-2);
}
.footer-inner{
  display:flex; justify-content:space-between; align-items:flex-start;
  flex-wrap:wrap; gap:24px;
}
.footer-copy{margin-top:6px; opacity:0.7;}
.footer-links{display:flex; gap:20px; flex-wrap:wrap;}
.footer-links a{text-decoration:none; color:rgba(233,236,238,0.7);}
.footer-links a:hover{color:#fff;}
.footer-brand{
  font-family:'Space Grotesk', sans-serif;
  color:#fff; font-weight:600; font-size:16px; margin-bottom:6px;
}
