/* raw-molecular-systems-page.html → /
   Scoped to <main class="page page--home">; colours normalised to the RAW brand tokens in site.css.
   Edit freely — this file is now the source. */
.page--home{--navy:#081043; --navy-alt:#0a1452; --navy-deep:#060c33;
  --blue:#0c1864; --cyan:#0cbae1; --cyan-light:#2ccff4; --cyan-hover:#0992b1; --indigo:#13269e;
  --white:#ffffff; --muted:#d6e4ed; --muted-2:#9fb0cf;
  --line:rgba(214,228,237,.16); --panel:rgba(255,255,255,.045); --panel-line:rgba(214,228,237,.14);
  --wrap:1120px; --measure:64ch;}
.page--home *{box-sizing:border-box;margin:0;padding:0}
.page--home{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
.page--home{background:var(--navy);color:var(--muted);font-family:"Roboto",Helvetica,Arial,sans-serif;font-size:1.06rem;line-height:1.72;font-weight:300;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.page--home h1, .page--home h2, .page--home h3, .page--home h4, .page--home .font-display{font-family:"Montserrat",Helvetica,Arial,sans-serif}
.page--home a{color:var(--cyan);text-decoration:none}
.page--home img{max-width:100%;display:block}
.page--home .wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px}
.page--home .eyebrow{font-family:"Montserrat";font-size:.72rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--cyan)}
.page--home .btn{display:inline-flex;align-items:center;gap:.5em;font-family:"Montserrat";font-weight:600;font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;padding:14px 26px;border-radius:4px;border:1.5px solid transparent;transition:background .2s,color .2s,border-color .2s;cursor:pointer}
.page--home .btn-primary{background:var(--cyan);color:var(--navy)}
.page--home .btn-primary:hover{background:var(--cyan-light)}
.page--home .btn-ghost{background:transparent;color:var(--white);border-color:rgba(214,228,237,.4)}
.page--home .btn-ghost:hover{border-color:var(--cyan);color:var(--cyan)}
.page--home .hero{position:relative;overflow:hidden;background:
   radial-gradient(1100px 520px at 78% -8%, rgba(12,186,225,.20), transparent 60%),
   radial-gradient(900px 500px at 8% 110%, rgba(12,24,100,.55), transparent 55%),
   linear-gradient(180deg,#081043 0%, #0a1452 55%, #081043 100%)}
.page--home .hero-inner{max-width:var(--wrap);margin:0 auto;padding:96px 26px 104px}
.page--home .hero h1{font-weight:700;font-size:clamp(2.4rem,5.6vw,4.3rem);line-height:1.05;letter-spacing:-.01em;color:var(--white);max-width:16ch;margin:22px 0 0}
.page--home .hero h1 .cy{color:var(--cyan)}
.page--home .hero-sub{font-size:clamp(1.05rem,2vw,1.32rem);font-weight:300;color:var(--muted);max-width:52ch;margin:24px 0 34px;line-height:1.6}
.page--home .hero-cta{display:flex;flex-wrap:wrap;gap:14px}
.page--home .seqstrip{position:absolute;left:0;right:0;bottom:0;overflow:hidden;opacity:.5;pointer-events:none;border-top:1px solid var(--line)}
.page--home .seqstrip span{display:block;font-family:"Roboto Mono","Courier New",monospace;font-size:.82rem;letter-spacing:.32em;color:rgba(12,186,225,.45);white-space:nowrap;padding:10px 0}
.page--home .section{padding:78px 0}
.page--home .section.alt{background:var(--navy-alt)}
.page--home .section.deep{background:var(--navy-deep)}
.page--home .sec-head{max-width:720px;margin-bottom:44px}
.page--home .sec-head h2{font-weight:700;font-size:clamp(1.8rem,3.6vw,2.7rem);line-height:1.14;letter-spacing:-.01em;color:var(--white);margin:14px 0 0}
.page--home .sec-head p{margin-top:16px;font-size:1.1rem;color:var(--muted);line-height:1.65}
.page--home .prose{max-width:var(--measure)}
.page--home .prose p{margin-bottom:1.05em;color:var(--muted)}
.page--home .prose p:last-child{margin-bottom:0}
.page--home .prose strong{color:var(--white);font-weight:500}
.page--home .prose em{color:var(--cyan);font-style:normal}
.page--home .svc-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:52px;align-items:center}
.page--home .kits{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;margin-top:34px}
.page--home .kit{background:var(--panel);border:1px solid var(--panel-line);border-top:2px solid var(--cyan);border-radius:6px;padding:22px 20px}
.page--home .kit h4{font-family:"Montserrat";font-weight:600;font-size:1.05rem;color:var(--white);letter-spacing:.02em;margin-bottom:8px}
.page--home .kit p{font-size:.92rem;color:var(--muted-2);line-height:1.55}
.page--home .svc-visual{position:relative;background:radial-gradient(600px 500px at 60% 40%, rgba(12,186,225,.16), transparent 62%);border-radius:14px;padding:12px}
.page--home .svc-visual img{margin:0 auto;filter:drop-shadow(0 24px 50px rgba(0,0,0,.45))}
.page--home .pointlist{list-style:none;margin-top:26px;display:grid;gap:14px}
.page--home .pointlist li{position:relative;padding-left:30px;color:var(--muted);font-size:1.02rem}
.page--home .pointlist li::before{content:"";position:absolute;left:0;top:.55em;width:12px;height:12px;border:2px solid var(--cyan);border-radius:50%}
.page--home .diffs{display:grid;grid-template-columns:1fr 1fr;gap:30px 44px;margin-top:8px}
.page--home .diff{border-top:1px solid var(--line);padding-top:22px}
.page--home .diff .ix{font-family:"Roboto Mono","Courier New",monospace;font-size:.85rem;color:var(--cyan);letter-spacing:.1em}
.page--home .diff h3{font-family:"Montserrat";font-weight:600;font-size:1.24rem;line-height:1.25;color:var(--white);margin:10px 0 10px}
.page--home .diff p{font-size:.99rem;color:var(--muted);line-height:1.62}
.page--home .diff p strong{color:var(--white);font-weight:500}
.page--home .tabwrap{margin-top:46px}
.page--home .scrollhint{display:none;font-family:"Roboto Mono",monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);margin-bottom:10px}
.page--home .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--panel-line);border-radius:10px;background:rgba(255,255,255,.02)}
.page--home table.cmp{border-collapse:collapse;width:100%;min-width:940px}
.page--home .cmp th, .page--home .cmp td{text-align:left;vertical-align:top;padding:14px 16px;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}
.page--home .cmp th:last-child, .page--home .cmp td:last-child{border-right:none}
.page--home .cmp thead th{font-family:"Montserrat";font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);font-weight:600;background:rgba(12,24,100,.5)}
.page--home .cmp td{font-size:.93rem;color:var(--muted);line-height:1.45}
.page--home .cmp td.co{font-family:"Montserrat";font-weight:600;color:var(--white);font-size:.93rem}
.page--home .cmp tr.grouphead td{background:rgba(12,186,225,.10);font-family:"Montserrat";font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);font-weight:700;padding:9px 16px;border-right:none}
.page--home .cmp tr.us-row td{background:var(--cyan);color:var(--navy);font-weight:500}
.page--home .cmp tr.us-row td.co{color:var(--navy);font-weight:800}
.page--home .cmp tbody tr:last-child td{border-bottom:none}
.page--home .tnote{font-family:"Roboto Mono","Courier New",monospace;font-size:.72rem;line-height:1.55;color:var(--muted-2);margin-top:15px;max-width:84ch}
.page--home .founder-grid{display:grid;grid-template-columns:1fr;gap:26px}
.page--home .stat-row{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--panel-line);border-radius:8px;overflow:hidden;margin:6px 0 30px}
.page--home .stat-row li{padding:22px 18px;border-left:1px solid var(--panel-line);background:var(--panel)}
.page--home .stat-row li:first-child{border-left:none}
.page--home .stat-row .fig{display:block;font-family:"Montserrat";font-weight:700;font-size:clamp(1.5rem,2.5vw,2rem);color:var(--white);letter-spacing:-.01em}
.page--home .stat-row .lab{display:block;margin-top:7px;font-family:"Montserrat";font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);line-height:1.35}
.page--home .ctaband{background:linear-gradient(120deg,#0c1864,#081043);border:1px solid var(--panel-line);border-radius:14px;padding:44px 40px;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}
.page--home .ctaband h3{font-family:"Montserrat";font-weight:700;font-size:clamp(1.4rem,2.6vw,1.9rem);color:var(--white);line-height:1.2;max-width:22ch}
@media (max-width:900px){
  .page--home .svc-grid{grid-template-columns:1fr;gap:34px}
  .page--home .diffs{grid-template-columns:1fr;gap:6px}
  .page--home .stat-row{grid-template-columns:repeat(2,1fr)}
  .page--home .stat-row li:nth-child(odd){border-left:none}
  .page--home .stat-row li:nth-child(n/**/+3){border-top:1px solid var(--panel-line)}
  .page--home .scrollhint{display:block}
  .page--home .ctaband{padding:32px 26px}
}
@media (prefers-reduced-motion:reduce){
  .page--home{scroll-behavior:auto}
}

/* ---- brand harmonisation (added during migration) ---- */
.page--home .btn{border-radius:30px}
.page--home .btn-primary, .page--home .btn-primary:hover, .page--home .btn.primary, .page--home .btn.primary:hover{color:#081043}

.page--home .kits{grid-template-columns:repeat(2,minmax(0,1fr))}
.page--home a.kit{display:block;color:inherit;text-decoration:none;transition:border-color .18s,background-color .18s}
.page--home a.kit:hover{border-color:#0cbae1;background:rgba(12,186,225,.06)}
.page--home a.kit h4::after{content:" \2192";color:#0cbae1}
.page--home .ctaband .hero-cta{margin:0}
.page--home img{max-width:100%;height:auto}
