/* citeOS — shared solution page styles */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bk:#f6f4ef; --bk2:#ffffff; --bk3:#efece2; --bk4:#e8e3d3;
  --wh:#0f0e0a; --w2:#2e2c26; --w3:#6b6860; --w4:#9a968a;
  --rule:#e3dfd0; --rule2:#ece8d8;
  --p:#0F3D2C; --p2:#0a2d20; --lime:#C8EE3F; --lime-d:#B4D838;
  --ink:#0f0e0a; --ink2:#1a1812; --on-ink:#f6f4ef; --on-ink-2:#a5a195; --on-ink-3:#6b6860;
  --d:'Outfit',sans-serif; --m:'IBM Plex Mono',monospace;
}
html{font-size:16px;scroll-behavior:smooth;}
body{background:var(--bk);color:var(--wh);font-family:var(--d);font-weight:300;line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(246,244,239,0.92);backdrop-filter:saturate(120%) blur(8px);border-bottom:1px solid var(--rule);padding:0 40px;display:flex;align-items:center;justify-content:space-between;height:56px;}
.logo{font-family:var(--d);font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--wh);}
.logo span{font-family:var(--m);font-size:10px;font-weight:500;color:var(--w3);letter-spacing:1.2px;text-transform:none;margin-left:8px;}
.nlinks{display:flex;gap:32px;}
.nlinks a{font-family:var(--m);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--w3);transition:color .12s;}
.nlinks a:hover{color:var(--wh);}
.ncta{background:var(--p);color:var(--on-ink);font-family:var(--m);font-size:11px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:10px 20px;transition:background .12s;}
.ncta:hover{background:var(--p2);}

.container{max-width:1280px;margin:0 auto;padding:0 48px;}

.hero{padding:140px 48px 80px;}
.hero h1{font-family:var(--d);font-size:clamp(56px,7vw,96px);font-weight:700;color:var(--wh);letter-spacing:-3px;line-height:0.95;margin:0 0 28px 0;max-width:880px;}
.hero h1 em{font-style:normal;color:var(--p);}
.hero .eyebrow{font-family:var(--m);font-size:11px;color:var(--p);letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:24px;}
.hero .lead{font-size:19px;color:var(--w2);line-height:1.55;max-width:680px;margin:0 0 40px 0;font-weight:300;}
.hero-acts{display:flex;flex-wrap:wrap;gap:14px;align-items:center;}
.btn-p{background:var(--p);color:var(--on-ink);font-family:var(--m);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;padding:18px 32px;text-decoration:none;display:inline-block;transition:background .12s;}
.btn-p:hover{background:var(--p2);}
.btn-link{font-family:var(--m);font-size:12px;font-weight:600;letter-spacing:1.5px;text-transform:uppercase;color:var(--p);padding:18px 0;border-bottom:1px solid var(--p);}

section.s{border-top:1px solid var(--rule);padding:100px 48px;}
section.s.alt{background:var(--bk2);}
section.s h2{font-family:var(--d);font-size:clamp(34px,4vw,52px);font-weight:700;color:var(--wh);letter-spacing:-1.8px;line-height:1.05;margin:0 0 18px 0;max-width:880px;}
section.s h2 em{font-style:normal;color:var(--p);}
section.s .lead{font-size:16px;line-height:1.6;color:var(--w2);max-width:680px;margin:0 0 56px 0;}
.eyebrow{font-family:var(--m);font-size:11px;color:var(--p);letter-spacing:2px;text-transform:uppercase;font-weight:600;margin-bottom:18px;}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.card{background:var(--bk2);border:1px solid var(--rule);padding:32px 28px;}
.card h3{font-family:var(--d);font-size:22px;font-weight:600;color:var(--wh);letter-spacing:-0.5px;line-height:1.2;margin:0 0 12px 0;}
.card p{font-size:14px;color:var(--w2);line-height:1.55;}
.card .num{font-family:var(--d);font-size:48px;font-weight:700;color:var(--p);letter-spacing:-2px;line-height:1;margin-bottom:16px;}

.table{width:100%;border-collapse:collapse;font-size:14px;}
.table th{text-align:left;padding:14px 8px;font-family:var(--m);font-size:10px;color:var(--w3);letter-spacing:1.2px;text-transform:uppercase;font-weight:600;border-bottom:2px solid var(--p);}
.table td{padding:14px 8px;border-bottom:1px solid var(--rule);color:var(--wh);}
.table tr:last-child td{border-bottom:none;}
.weight{font-weight:700;color:var(--p);text-align:right;}

.shot{background:var(--ink2);border:1px solid var(--p);padding:60px 40px;text-align:center;color:var(--on-ink-2);font-family:var(--m);font-size:11px;letter-spacing:1.5px;text-transform:uppercase;}
.shot strong{display:block;color:var(--lime);font-size:14px;margin-bottom:8px;}

.price-tier{background:var(--bk2);padding:36px 32px;border:1px solid var(--rule);position:relative;}
.price-tier.featured{border:2px solid var(--p);}
.price-tier .label{font-family:var(--m);font-size:10px;color:var(--w3);letter-spacing:1.5px;text-transform:uppercase;font-weight:700;margin-bottom:12px;}
.price-tier h3{font-family:var(--d);font-size:28px;font-weight:700;color:var(--wh);letter-spacing:-1px;line-height:1.1;margin:0 0 8px 0;}
.price-tier .price{display:flex;align-items:baseline;gap:6px;margin:18px 0 16px;}
.price-tier .price .amt{font-family:var(--d);font-size:48px;font-weight:700;color:var(--p);letter-spacing:-2px;line-height:1;}
.price-tier .price .unit{font-size:13px;color:var(--w3);}
.price-tier .desc{font-size:13px;color:var(--w2);line-height:1.5;margin-bottom:24px;}
.price-tier ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule);}
.price-tier li{padding:12px 0;font-size:13px;color:var(--wh);border-bottom:1px solid var(--rule);}
.price-tier li:last-child{border-bottom:none;}
.price-tier li small{display:block;font-size:11.5px;color:var(--w3);margin-top:3px;line-height:1.4;}
.most-popular{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:var(--lime);color:var(--p);font-family:var(--m);font-size:10px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;padding:6px 16px;}

.cta{background:var(--p);color:var(--on-ink);padding:120px 48px;text-align:center;}
.cta h2{font-family:var(--d);font-size:clamp(40px,5vw,72px);font-weight:700;letter-spacing:-2px;line-height:1.05;margin:0 0 24px 0;color:var(--on-ink);}
.cta p{font-size:18px;line-height:1.6;opacity:0.85;max-width:620px;margin:0 auto 40px;font-weight:300;}
.cta a{display:inline-block;background:var(--lime);color:var(--p);font-family:var(--m);font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;padding:22px 44px;text-decoration:none;transition:background .12s;}
.cta a:hover{background:var(--lime-d);}

footer{padding:48px 48px;display:grid;grid-template-columns:1fr 1fr 1fr;gap:32px;border-top:1px solid var(--rule);align-items:center;}
.flogo{font-family:var(--d);font-size:14px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:var(--wh);}
.flogo span{font-family:var(--m);font-size:10px;font-weight:500;color:var(--w3);letter-spacing:1.2px;text-transform:none;margin-left:8px;}
.fmeta{font-family:var(--m);font-size:11px;color:var(--w3);margin-top:8px;letter-spacing:0.5px;}
.flinks{display:flex;justify-content:center;gap:24px;}
.flinks a{font-family:var(--m);font-size:11px;color:var(--w3);letter-spacing:1.2px;text-transform:uppercase;transition:color .12s;}
.flinks a:hover{color:var(--wh);}

@media (max-width: 900px) {
  nav { padding: 0 20px; }
  .nlinks { display: none; }
  .ncta { font-size: 9px; padding: 8px 12px; }
  .hero { padding: 100px 24px 60px; }
  section.s { padding: 60px 24px; }
  .container { padding: 0 24px; }
  .grid-3, .grid-2 { grid-template-columns: 1fr; }
  .cta { padding: 60px 24px; }
  footer { grid-template-columns: 1fr; gap: 16px; }
  .flinks { justify-content: flex-start; }
}
