*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --g:#3ecf6e;
  --g-dark:#1a7a3a;
  --g-light:#e8faf0;
  --g-mid:#b8f0cf;
  --ink:#0f1410;
  --ink2:#2d3530;
  --muted:#6b7870;
  --muted2:#a8b3ae;
  --bg:#f7f8f5;
  --bg2:#eef0eb;
  --white:#ffffff;
  --border:#e0e4dc;
  --border2:#c8cfc4;
  --serif:'Fraunces',Georgia,serif;
  --sans:'DM Sans',system-ui,sans-serif;
  --radius:8px;
}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-weight:300;line-height:1.65;overflow-x:hidden}

/* ── NAV ── */
nav{
  position:fixed;top:0;left:0;right:0;z-index:200;
  height:60px;display:flex;align-items:center;justify-content:space-between;
  padding:0 2.5rem;
  background:rgba(247,248,245,0.94);
  backdrop-filter:blur(16px);
  border-bottom:1px solid var(--border);
}
.nav-logo{display:flex;align-items:center}
.nav-logo img{height:17px;width:auto}
.nav-links{display:flex;gap:2rem}
.nav-links a{font-size:13px;font-weight:400;letter-spacing:0.04em;color:var(--muted);text-decoration:none;transition:color .2s}
.nav-links a:hover{color:var(--ink)}
.nav-right{display:flex;align-items:center;gap:1rem}
.lang-sw{display:flex;border:1px solid var(--border2);border-radius:4px;overflow:hidden}
.lbtn{background:none;border:none;cursor:pointer;font-family:var(--sans);font-size:11px;font-weight:500;letter-spacing:0.1em;text-transform:uppercase;color:var(--muted);padding:.28rem .8rem;transition:all .2s}
.lbtn.on{background:var(--g);color:#fff}
.btn-nav{font-family:var(--sans);font-size:13px;font-weight:500;background:var(--ink);color:#fff;border:none;padding:.55rem 1.35rem;border-radius:4px;cursor:pointer;text-decoration:none;transition:opacity .2s}
.btn-nav:hover{opacity:.85}

/* ── HERO ── */
.hero{
  min-height:100vh;
  display:grid;grid-template-columns:3fr 1.2fr;
  padding-top:60px;
  overflow:hidden;
  position:relative;
}
.hero-l{
  display:flex;flex-direction:column;justify-content:center;
  padding:5rem 4rem 5rem 2.5rem;
  position:relative;
  z-index:1;
}

/* ── BACKGROUND ANIMATION ── */
.hero-canvas{
  position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden;
}
.hero-l > *:not(.hero-canvas){position:relative;z-index:1}

/* floating data nodes */
.hc-node{
  position:absolute;border-radius:50%;
  background:var(--g);opacity:0;
  animation:nodeFloat linear infinite;
}
.hc-node.s{width:4px;height:4px}
.hc-node.m{width:7px;height:7px}
.hc-node.l{width:11px;height:11px}

/* flowing lines */
.hc-line{
  position:absolute;height:1px;
  background:linear-gradient(to right,transparent,var(--g),transparent);
  opacity:0;
  animation:lineSlide linear infinite;
}

/* data labels */
.hc-label{
  position:absolute;
  font-family:var(--sans);font-size:10px;font-weight:500;letter-spacing:.08em;
  color:var(--g-dark);opacity:0;
  animation:labelFade ease-in-out infinite;
  white-space:nowrap;
}

/* decision chip */
.hc-chip{
  position:absolute;
  background:var(--g);color:#0f1410;
  font-family:var(--sans);font-size:9px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  padding:.25rem .65rem;border-radius:100px;
  opacity:0;
  animation:chipPop ease-in-out infinite;
}

@keyframes nodeFloat{
  0%{opacity:0;transform:translateY(0) scale(0.6)}
  15%{opacity:0.2}
  50%{opacity:0.12}
  85%{opacity:0.15}
  100%{opacity:0;transform:translateY(-60px) scale(1)}
}
@keyframes lineSlide{
  0%{opacity:0;transform:scaleX(0);transform-origin:left}
  20%{opacity:0.1}
  60%{opacity:0.07}
  100%{opacity:0;transform:scaleX(1.2);transform-origin:left}
}
@keyframes labelFade{
  0%{opacity:0;transform:translateY(6px)}
  25%{opacity:0.1}
  75%{opacity:0.07}
  100%{opacity:0;transform:translateY(-6px)}
}
@keyframes chipPop{
  0%{opacity:0;transform:scale(0.7)}
  20%{opacity:0.2;transform:scale(1)}
  70%{opacity:0.15;transform:scale(1)}
  100%{opacity:0;transform:scale(0.9)}
}

.hero-r{
  background:var(--white);
  border-left:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;
  padding:3rem 2rem;
  position:relative;
  overflow:hidden;
}
.hero-r::before{
  content:'';position:absolute;
  width:400px;height:400px;border-radius:50%;
  background:radial-gradient(circle,var(--g-light) 0%,transparent 70%);
  top:-100px;right:-100px;pointer-events:none;
}
.hero-desc{font-size:1.05rem;color:var(--muted);line-height:1.8;max-width:64ch;
  margin-bottom:2.5rem;opacity:0;animation:up .7s ease .28s forwards}
.hero-proof{
  margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);
  display:flex;gap:3.5rem;
  opacity:0;animation:up .7s ease .55s forwards;
}

.hero-tag{
  display:inline-flex;align-items:center;gap:.5rem;
  font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;
  color:var(--g-dark);background:var(--g-light);
  border:1px solid var(--g-mid);
  padding:.3rem .85rem;border-radius:100px;
  margin-bottom:2rem;width:fit-content;
  opacity:0;animation:up .7s ease .05s forwards;
}
.hero-tag::before{content:'';width:5px;height:5px;background:var(--g);border-radius:50%}

h1{
  font-family:var(--serif);font-weight:400;
  font-size:clamp(3.2rem,6vw,5.8rem);
  line-height:1.02;letter-spacing:-.02em;
  margin-bottom:1.75rem;
  opacity:0;animation:up .7s ease .15s forwards;
}
h1 em{font-style:italic;color:var(--g-dark)}

.hero-desc strong{color:var(--ink2);font-weight:400}

.hero-btns{display:flex;gap:.75rem;flex-wrap:wrap;opacity:0;animation:up .7s ease .4s forwards}
.btn-primary{
  font-family:var(--sans);font-size:13px;font-weight:500;
  background:var(--ink);color:#fff;border:none;
  padding:.8rem 1.75rem;border-radius:4px;cursor:pointer;text-decoration:none;transition:all .2s;
}
.btn-primary:hover{background:var(--ink2);transform:translateY(-1px)}
.btn-outline{
  font-family:var(--sans);font-size:13px;font-weight:400;
  background:transparent;color:var(--muted);border:1px solid var(--border2);
  padding:.8rem 1.75rem;border-radius:4px;cursor:pointer;text-decoration:none;transition:all .2s;
}
.btn-outline:hover{border-color:var(--muted);color:var(--ink)}

.hero-proof{
  margin-top:3rem;padding-top:2rem;border-top:1px solid var(--border);
  display:flex;gap:4rem;
  opacity:0;animation:up .7s ease .55s forwards;
}
.hp-item{}
.hp-n{font-family:var(--serif);font-size:3rem;color:var(--ink);line-height:1;margin-bottom:.35rem}
.hp-l{font-size:13px;color:var(--muted);line-height:1.6}

/* REPORT MOCK */
.report-mock{
  width:100%;max-width:380px;
  background:var(--white);
  border:1px solid var(--border);
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 8px 40px rgba(0,0,0,.08),0 1px 3px rgba(0,0,0,.05);
  position:relative;z-index:1;
}
.rm-header{
  background:var(--ink);
  padding:1.25rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;
}
.rm-title{font-size:12px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6)}
.rm-badge{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;background:var(--g);color:#fff;padding:.2rem .6rem;border-radius:3px}
.rm-body{padding:1.5rem}
.rm-label{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--muted2);margin-bottom:.6rem}
.rm-q{font-family:var(--serif);font-size:1.1rem;color:var(--ink);line-height:1.4;margin-bottom:1.5rem;font-style:italic}
.rm-stats{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1.25rem}
.rm-stat{background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:.85rem}
.rms-l{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);margin-bottom:.25rem}
.rms-n{font-family:var(--serif);font-size:2rem;color:var(--ink);line-height:1}
.rms-d{font-size:11px;color:var(--g-dark);margin-top:.2rem;font-weight:500}
.rm-bars{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.25rem}
.rm-bar{display:flex;align-items:center;gap:.6rem;font-size:11px;color:var(--muted)}
.rm-track{flex:1;height:5px;background:var(--bg2);border-radius:3px;overflow:hidden}
.rm-fill{height:100%;background:var(--g);border-radius:3px}
.rm-pct{min-width:2.5rem;text-align:right;color:var(--ink2);font-weight:500;font-size:11px}
.rm-rec{background:var(--g-light);border:1px solid var(--g-mid);border-radius:6px;padding:1rem 1.1rem}
.rm-rec-l{font-size:10px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--g-dark);margin-bottom:.35rem}
.rm-rec-t{font-size:12px;color:var(--ink2);line-height:1.65}
.rm-footer{padding:.85rem 1.5rem;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}
.rm-foot-l{font-size:11px;color:var(--muted2)}
.rm-foot-r{font-size:11px;font-weight:500;color:var(--g-dark)}

/* ── STATS BAND ── */
.stats-band{background:var(--white);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.stats-inner{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr)}
.stat-item{padding:2.5rem 2.5rem;border-right:1px solid var(--border);position:relative}
.stat-item:last-child{border-right:none}
.stat-n{font-family:var(--serif);font-size:3.8rem;color:var(--ink);line-height:1;display:block;margin-bottom:.3rem}
.stat-l{font-size:13px;color:var(--muted);line-height:1.5}
.stat-l strong{color:var(--ink2);font-weight:400}

/* ── SECTIONS ── */
.section{padding:7rem 2.5rem;max-width:1100px;margin:0 auto}
.section-white{background:var(--white)}
.section-white .section{padding:7rem 2.5rem}

.eyebrow{font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--g-dark);margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}
.eyebrow::before{content:'';width:16px;height:1px;background:var(--g)}

h2.sec-h{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.08;letter-spacing:-.02em;margin-bottom:.75rem}
h2.sec-h em{font-style:italic;color:var(--g-dark)}
.sec-sub{font-size:.95rem;color:var(--muted);max-width:52ch;line-height:1.8;margin-bottom:4rem}

/* ── USE CASES ── */
.cases-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.case-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  padding:2rem 1.75rem;position:relative;overflow:hidden;
  transition:border-color .2s,box-shadow .2s;
}
.case-card:hover{border-color:var(--g-mid);box-shadow:0 4px 20px rgba(0,0,0,.06)}
.case-card::after{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--g);opacity:0;transition:opacity .2s}
.case-card:hover::after{opacity:1}
.cc-num{font-family:var(--serif);font-style:italic;font-size:3rem;color:var(--g-mid);line-height:1;margin-bottom:1.25rem;display:block}
.case-card h3{font-family:var(--sans);font-size:.95rem;font-weight:500;letter-spacing:.02em;margin-bottom:.6rem;color:var(--ink)}
.case-card p{font-size:13px;color:var(--muted);line-height:1.7}
.cc-examples{margin-top:1.25rem;display:flex;flex-direction:column;gap:.35rem}
.cc-ex{font-size:12px;color:var(--muted2);display:flex;align-items:baseline;gap:.4rem}
.cc-ex::before{content:'→';color:var(--g);font-size:11px}

/* ── HOW IT WORKS ── */
.how-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}
.steps{display:flex;flex-direction:column}
.step{display:flex;gap:1.5rem;padding:1.75rem 0;border-bottom:1px solid var(--border)}
.step:first-child{padding-top:0}.step:last-child{border-bottom:none}
.step-n{font-family:var(--serif);font-style:italic;font-size:1.4rem;color:var(--g-mid);min-width:2rem;line-height:1;margin-top:.15rem}
.step h4{font-size:.9rem;font-weight:500;margin-bottom:.35rem;color:var(--ink)}
.step p{font-size:13px;color:var(--muted);line-height:1.7}

.what-you-get{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  padding:2rem;position:sticky;top:4.5rem;
  box-shadow:0 4px 24px rgba(0,0,0,.05);
}
.wyg-header{margin-bottom:1.5rem}
.wyg-title{font-family:var(--serif);font-size:1.5rem;font-style:italic;color:var(--ink);margin-bottom:.25rem}
.wyg-sub{font-size:12px;color:var(--muted)}
.wyg-items{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.5rem}
.wyg-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem;background:var(--bg);border-radius:5px}
.wyg-icon{font-size:1.1rem;flex-shrink:0;margin-top:.05rem}
.wyg-item h5{font-size:13px;font-weight:500;color:var(--ink);margin-bottom:.2rem}
.wyg-item p{font-size:12px;color:var(--muted);line-height:1.55}
.wyg-note{
  background:var(--g-light);border:1px solid var(--g-mid);border-radius:5px;
  padding:.85rem 1rem;font-size:12px;color:var(--ink2);line-height:1.6;
}
.wyg-note strong{color:var(--g-dark);font-weight:500}

/* ── COMPARE ── */
.compare-wrap{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}
.cmp-col{padding:2.5rem;background:var(--white)}
.cmp-col.f{background:var(--ink)}
.cmp-ttl{font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:2rem}
.cmp-col.f .cmp-ttl{color:rgba(255,255,255,.5)}
.cmp-item{display:flex;align-items:flex-start;gap:.75rem;padding:.6rem 0;border-bottom:1px solid var(--border);font-size:14px;color:var(--muted)}
.cmp-col.f .cmp-item{border-bottom-color:rgba(255,255,255,.08);color:rgba(255,255,255,.8)}
.cmp-item:last-child{border-bottom:none}
.ci{width:17px;height:17px;border-radius:50%;flex-shrink:0;margin-top:.1rem;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}
.ci.n{background:var(--bg2);color:var(--muted2)}
.ci.y{background:var(--g);color:#fff}

/* ── GATE ── */
.gate-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;max-width:1100px;margin:0 auto;padding:7rem 2.5rem}
.gate-l h2{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,3.5vw,3rem);line-height:1.08;letter-spacing:-.02em;margin-bottom:1rem}
.gate-l h2 em{font-style:italic;color:var(--g-dark)}
.gate-l p{font-size:.9rem;color:var(--muted);line-height:1.8;margin-bottom:1.75rem;max-width:40ch}
.gate-perks{display:flex;flex-direction:column;gap:.5rem}
.gperk{display:flex;align-items:center;gap:.6rem;font-size:13px;color:var(--muted)}
.gperk::before{content:'✓';color:var(--g);font-size:11px;font-weight:700}

.gate-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.06)}
.gc-top{background:var(--bg);border-bottom:1px solid var(--border);padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between}
.gct-l{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.gct-b{font-size:10px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:var(--g-light);border:1px solid var(--g-mid);color:var(--g-dark);padding:.2rem .6rem;border-radius:3px}
.gc-preview{padding:1.5rem;border-bottom:1px solid var(--border);position:relative;min-height:120px}
.gp-inner{filter:blur(4px);opacity:.25;user-select:none;pointer-events:none}
.gp-lines{display:flex;flex-direction:column;gap:.5rem}
.gpl{height:8px;border-radius:3px;background:var(--bg2)}
.gc-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.75))}
.glock{font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:var(--white);border:1px solid var(--border2);color:var(--muted);padding:.4rem 1rem;border-radius:3px;box-shadow:0 2px 8px rgba(0,0,0,.06)}
.gc-form{padding:1.25rem 1.5rem}

/* forms */
.frow{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:.6rem}
input,select,textarea{
  display:block;width:100%;
  background:var(--bg);border:1px solid var(--border);
  color:var(--ink);font-family:var(--sans);font-size:13px;
  padding:.7rem .9rem;border-radius:4px;outline:none;
  transition:border-color .2s;margin-bottom:.6rem;
}
input::placeholder,textarea::placeholder{color:var(--muted2)}
input:focus,textarea:focus,select:focus{border-color:var(--g);background:var(--white)}
select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23a8b3ae'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .85rem center;background-color:var(--bg)}
textarea{resize:vertical;min-height:100px}
.btn-submit{
  display:block;width:100%;font-family:var(--sans);font-size:13px;font-weight:500;
  background:var(--ink);color:#fff;border:none;
  padding:.85rem;border-radius:4px;cursor:pointer;transition:opacity .2s;margin-bottom:.6rem;
}
.btn-submit:hover{opacity:.85}
.fnote{font-size:11px;color:var(--muted2);text-align:center}
.consent{display:flex;align-items:flex-start;gap:.6rem;font-size:12px;color:var(--muted);cursor:pointer;margin-bottom:.6rem}
.consent input{width:auto;display:inline;margin:0;padding:0;border:none;background:none;accent-color:var(--g);flex-shrink:0;margin-top:1px}
.gsuccess{display:none;flex-direction:column;align-items:center;text-align:center;gap:.6rem;padding:1rem 0}
.gcheck{width:44px;height:44px;border-radius:50%;background:var(--g-light);border:1px solid var(--g-mid);display:flex;align-items:center;justify-content:center;color:var(--g-dark);font-size:1.1rem}
.gsuccess h4{font-family:var(--serif);font-size:1.3rem}
.gsuccess p{font-size:13px;color:var(--muted)}

/* ── CONTACT ── */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}
.contact-l p{font-size:.9rem;color:var(--muted);line-height:1.8;margin-bottom:1.75rem;max-width:40ch}
.cpromises{display:flex;flex-direction:column;gap:.7rem}
.cp{display:flex;align-items:flex-start;gap:.6rem;font-size:13px;color:var(--muted)}
.cp::before{content:'—';color:var(--g);font-size:11px;margin-top:.15rem;flex-shrink:0}

/* ── FOOTER ── */
footer{background:var(--ink);color:rgba(255,255,255,.5);padding:2rem 2.5rem;display:flex;align-items:center;justify-content:space-between}
.fcopy{font-size:12px}
.flinks{display:flex;gap:1.5rem}
.flinks a{font-size:12px;color:rgba(255,255,255,.4);text-decoration:none;transition:color .2s}
.flinks a:hover{color:rgba(255,255,255,.7)}

/* ── LANG ── */
.L{display:none}.L.on{display:block}
span.L.on{display:inline}
a.L.on{display:block}
.hero-tag.L{display:none}.hero-tag.L.on{display:inline-flex}
h1.L{display:none}h1.L.on{display:block}
h2.L{display:none}h2.L.on{display:block}
.hero-btns.L{display:none}.hero-btns.L.on{display:flex}
.hero-proof.L{display:none}.hero-proof.L.on{display:flex}
.eyebrow.L{display:none}.eyebrow.L.on{display:flex}
.sec-sub.L{display:none}.sec-sub.L.on{display:block}
.cases-grid.L{display:none}.cases-grid.L.on{display:grid}
.how-grid.L{display:none}.how-grid.L.on{display:grid}
.compare-wrap.L{display:none}.compare-wrap.L.on{display:grid}
.gate-grid.L{display:none}.gate-grid.L.on{display:grid}
.contact-grid.L{display:none}.contact-grid.L.on{display:grid}
.stats-band.L{display:none}.stats-band.L.on{display:block}

/* ── ANIM ── */
@keyframes up{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

@media(max-width:900px){
  nav{padding:0 1.25rem}.nav-links{display:none}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-l{padding:4rem 1.25rem 3rem}
  .hero-r{display:none}
  .stats-inner{grid-template-columns:1fr}
  .stat-item{border-right:none;border-bottom:1px solid var(--border)}
  .section{padding:4rem 1.25rem}
  .cases-grid{grid-template-columns:1fr}
  .how-grid{grid-template-columns:1fr;gap:3rem}.what-you-get{position:static}
  .compare-wrap{grid-template-columns:1fr}
  .gate-grid,.contact-grid{grid-template-columns:1fr;gap:3rem;padding:4rem 1.25rem}
  footer{flex-direction:column;gap:1rem;text-align:center;padding:1.5rem}
  .flinks{justify-content:center}
}

/* ── CASE STUDY ── */
.cs-section{padding:7rem 2.5rem;max-width:1100px;margin:0 auto}
.cs-intro{text-align:center;max-width:52ch;margin:0 auto 3.5rem}
.cs-intro p{font-size:.95rem;color:var(--muted);line-height:1.8;margin-top:.75rem}
.cs-tabs{display:flex;gap:.5rem;justify-content:center;margin-bottom:2.5rem;flex-wrap:wrap}
.cs-tab{
  font-family:var(--sans);font-size:15px;font-weight:500;letter-spacing:.02em;
  background:none;border:1px solid var(--border2);color:var(--muted);
  padding:.85rem 2rem;border-radius:6px;cursor:pointer;transition:all .2s;
}
.cs-tab.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.cs-tab:hover:not(.active){border-color:var(--muted);color:var(--ink)}
.cs-panel{display:none}.cs-panel.active{display:grid}
.cs-panel{grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.cs-info h3{font-family:var(--serif);font-weight:400;font-size:2.4rem;line-height:1.1;margin-bottom:.75rem}
.cs-info h3 em{font-style:italic;color:var(--g-dark)}
.cs-tag{display:inline-block;font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;background:var(--g-light);border:1px solid var(--g-mid);color:var(--g-dark);padding:.2rem .65rem;border-radius:3px;margin-bottom:1rem}
.cs-info p{font-size:.9rem;color:var(--muted);line-height:1.8;margin-bottom:1.5rem;max-width:40ch}
.cs-facts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1.75rem}
.cs-fact{background:var(--bg);border:1px solid var(--border);border-radius:5px;padding:.75rem .9rem}
.cf-l{font-size:10px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--muted2);margin-bottom:.25rem}
.cf-v{font-size:.95rem;font-weight:400;color:var(--ink)}
.cs-quote{background:var(--g-light);border-left:3px solid var(--g);border-radius:0 5px 5px 0;padding:1rem 1.25rem;margin-bottom:1.75rem}
.cs-quote p{font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--ink2);line-height:1.6;margin:0}
.cs-quote cite{display:block;font-family:var(--sans);font-style:normal;font-size:11px;color:var(--muted);margin-top:.5rem}
@media(max-width:900px){.cs-panel{grid-template-columns:1fr;gap:2.5rem}.cs-section{padding:4rem 1.25rem}}
