*{margin:0;padding:0;box-sizing:border-box}
:root{--ink:#1A1535;--muted:rgba(26,21,53,.54);--soft:rgba(26,21,53,.38);--line:rgba(100,75,180,.12);--leaf:#7B4FC9;--bright:#8B5CF6;--paper:#F8F5EF;--paper2:#F3EFE7;--night:#0C0A1A}
body{background:linear-gradient(to bottom,var(--paper),var(--paper2));font-family:'Inter',system-ui,sans-serif;color:var(--ink);overflow-x:hidden}
h1,h2,h3,h4{font-family:'Space Grotesk',system-ui,sans-serif}
a{color:inherit}
nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 40px;background:rgba(8,6,42,.42);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08)}
.logo{font-family:'Space Grotesk',system-ui,sans-serif;font-size:17px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(135deg,#A08BDE,#C5B0F0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-decoration:none;white-space:nowrap}
.links{display:flex;align-items:center;gap:22px;flex-wrap:wrap;justify-content:flex-end}
.links a{font-size:13.5px;color:rgba(255,255,255,.64);text-decoration:none;transition:color .2s}
.links a:hover{color:#fff}
.cta-nav{padding:9px 20px;background:linear-gradient(135deg,#6D28D9,#8B5CF6);border-radius:8px;font-size:13.5px;font-weight:600;color:#fff;text-decoration:none}
.hero{min-height:48vh;display:flex;align-items:flex-end;padding:120px 80px 64px;background:radial-gradient(ellipse 70% 80% at 76% 22%,rgba(100,75,200,.1),transparent 68%),linear-gradient(to bottom,#F8F5EF,#EDE5FF)}
.hero-content{max-width:760px}
.eyebrow,.tag{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:rgba(160,139,222,.8);margin-bottom:14px}
.hero h1{font-size:clamp(34px,5vw,68px);font-weight:800;letter-spacing:-.02em;line-height:1.03;margin-bottom:18px;background:linear-gradient(140deg,#2D1B69 0%,#5B21B6 52%,#8B5CF6 92%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.hero p{font-size:19px;color:rgba(26,21,53,.55);line-height:1.75;max-width:620px}
main{position:relative}
.section{padding:80px 80px;max-width:1120px;margin:0 auto}
.section.narrow{max-width:860px}
.section-title{font-size:clamp(25px,3.4vw,42px);font-weight:700;letter-spacing:-.01em;margin-bottom:14px;background:linear-gradient(135deg,var(--leaf),var(--bright));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.lede{font-size:18px;color:var(--muted);line-height:1.8;max-width:740px;margin-bottom:34px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.card{border:1px solid var(--line);background:rgba(255,255,255,.66);border-radius:8px;padding:24px}
.card h3{font-size:18px;margin-bottom:10px}
.card p,.card li{font-size:15px;color:var(--muted);line-height:1.72}
.card ul{padding-left:18px;margin-top:10px}
.meta{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(120,95,190,.68);margin-bottom:12px}
.pill-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.pill{border:1px solid rgba(100,75,180,.16);border-radius:999px;padding:6px 12px;font-size:12.5px;color:rgba(26,21,53,0.75);background:rgba(255,255,255,.55)}
.divider{height:1px;background:linear-gradient(to right,transparent,var(--line),transparent)}
.score{height:8px;border-radius:999px;background:rgba(100,75,180,.1);overflow:hidden;margin:16px 0 10px}
.score span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--leaf),var(--bright))}
.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:22px}
.search,.select,.textarea,.input{border:1px solid rgba(100,75,180,.18);background:rgba(255,255,255,.72);border-radius:8px;padding:12px 14px;font:inherit;color:var(--ink);outline:none}
.search{flex:1;min-width:240px}
.select{min-width:190px}
.textarea{width:100%;min-height:140px;resize:vertical;line-height:1.6}
.input{width:100%}
.button{border:none;border-radius:8px;padding:12px 18px;background:linear-gradient(135deg,#6D28D9,#8B5CF6);color:white;font:inherit;font-size:14.5px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.button.secondary{background:rgba(255,255,255,.7);border:1px solid rgba(100,75,180,.18);color:var(--ink)}
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:22px;align-items:start}
.rail{position:sticky;top:92px}
.timeline{display:flex;flex-direction:column;gap:16px}
.event{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;padding:22px;border:1px solid var(--line);background:rgba(255,255,255,.62);border-radius:8px}
.year{font-size:22px;font-weight:700;color:var(--leaf);font-family:'Space Grotesk',system-ui,sans-serif}
.footer{padding:34px 80px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:rgba(26,21,53,0.65);font-size:13.5px}
.footer a{text-decoration:none;color:rgba(26,21,53,0.75)}
@media(max-width:760px){nav{padding:16px 24px;align-items:flex-start}.links{gap:12px}.cta-nav{display:none}.hero{padding:110px 28px 48px}.section{padding:58px 28px}.split{grid-template-columns:1fr}.rail{position:static}.event{grid-template-columns:1fr;gap:8px}.footer{padding:28px 28px;flex-direction:column}.links a{font-size:13px}}

/* nav-icon-btn styles live in theme.css */

/* ── Dark mode overrides ── */
[data-theme="dark"]{
  --ink:rgba(237,232,224,.92);
  --muted:rgba(175,168,225,.88);
  --soft:rgba(148,140,210,.75);
  --line:rgba(110,85,190,.18);
  --paper:#0C0A1A;
  --paper2:#100D22;
}
[data-theme="dark"] body{background:linear-gradient(to bottom,#0C0A1A,#100D22)!important;}
[data-theme="dark"] .filter-strip{background:#120E24;border-color:rgba(110,85,190,.14);}
[data-theme="dark"] .chip{background:rgba(16,13,32,.75);border-color:rgba(110,85,190,.2);color:rgba(155,148,205,.6);}
[data-theme="dark"] .chip:hover{background:#1A1630;color:rgba(237,232,224,.85);}
[data-theme="dark"] .chip.active{background:rgba(100,75,180,.22);border-color:rgba(120,95,200,.4);color:#A08BDE;}
[data-theme="dark"] .researcher-card,
[data-theme="dark"] .phenom-card,
[data-theme="dark"] .card{background:#141228;border-color:rgba(110,85,190,.16);}
[data-theme="dark"] .researcher-card:hover,
[data-theme="dark"] .phenom-card:hover{border-color:rgba(110,85,190,.3);box-shadow:0 8px 32px rgba(0,0,0,.3);}
[data-theme="dark"] .researcher-card-top,
[data-theme="dark"] .researcher-card-bottom,
[data-theme="dark"] .phenom-card-bottom{border-color:rgba(110,85,190,.1);}
[data-theme="dark"] .researcher-name,
[data-theme="dark"] .phenom-name{color:rgba(237,232,224,.9);}
[data-theme="dark"] .researcher-role,
[data-theme="dark"] .researcher-inst,
[data-theme="dark"] .researcher-headline,
[data-theme="dark"] .phenom-desc,
[data-theme="dark"] .freq-note,
[data-theme="dark"] .results-count{color:rgba(180,172,225,.82);}
[data-theme="dark"] .freq-label{color:rgba(125,118,185,.42);}
[data-theme="dark"] .freq-bar{background:rgba(110,85,190,.14);}
[data-theme="dark"] .cross-cultural-badge{color:rgba(125,118,185,.45);}
[data-theme="dark"] .theory-card{background:#141228!important;}
[data-theme="dark"] .theory-card-name{color:rgba(237,232,224,.9);}
[data-theme="dark"] .theory-card-core{color:rgba(180,172,225,.82);}
[data-theme="dark"] .matrix-section .matrix-title{color:rgba(237,232,224,.9);}
[data-theme="dark"] .matrix-lede{color:rgba(145,135,200,.55);}
[data-theme="dark"] .mtab{background:rgba(16,13,32,.75);border-color:rgba(110,85,190,.2);color:rgba(145,135,200,.6);}
[data-theme="dark"] .mtab:hover{background:#1A1630;color:rgba(237,232,224,.85);}
[data-theme="dark"] .mtab.active{background:#1A1535;border-color:#1A1535;color:#fff;}
[data-theme="dark"] .matrix-table-wrap{border-color:rgba(110,85,190,.14);}
[data-theme="dark"] .matrix-table th:first-child,
[data-theme="dark"] .matrix-table td:first-child{background:#130E25;}
[data-theme="dark"] .matrix-table th{border-color:rgba(110,85,190,.12);}
[data-theme="dark"] .matrix-table td{color:rgba(180,172,225,.82);border-color:rgba(110,85,190,.08);}
[data-theme="dark"] .matrix-table tbody tr:hover td{background:rgba(20,40,22,.4);}
[data-theme="dark"] .matrix-table tbody tr:hover td:first-child{background:rgba(20,40,22,.6);}
[data-theme="dark"] .modal{background:#141228;}
[data-theme="dark"] .modal-header{border-color:rgba(110,85,190,.1);}
[data-theme="dark"] .modal-name{color:rgba(237,232,224,.9);}
[data-theme="dark"] .modal-sub,
[data-theme="dark"] .modal-text{color:rgba(180,172,225,.82);}
[data-theme="dark"] .modal-label{color:rgba(115,105,175,.65);}
[data-theme="dark"] .modal-section{border:none;}
[data-theme="dark"] .modal-controversy{background:rgba(109,40,217,.07);border-color:rgba(109,40,217,.14);}
[data-theme="dark"] .modal-tag,
[data-theme="dark"] .modal-case-item,
[data-theme="dark"] .list-item{background:rgba(22,18,42,.6);border-color:rgba(110,85,190,.12);color:rgba(180,172,225,.82);}
[data-theme="dark"] .weakness-item{background:rgba(120,40,40,.1);border-color:rgba(120,40,40,.18);}
[data-theme="dark"] .proponent-tag{background:rgba(22,18,42,.6);border-color:rgba(110,85,190,.12);color:rgba(135,125,195,.65);}
[data-theme="dark"] .modal-close{border-color:rgba(110,85,190,.2);color:rgba(125,118,185,.5);}
[data-theme="dark"] .modal-close:hover{background:rgba(100,75,180,.12);}
[data-theme="dark"] .intro-block,
[data-theme="dark"] .form-card{background:#141228;border-color:rgba(110,85,190,.15);}
[data-theme="dark"] .intro-block p{color:rgba(145,135,200,.68);}
[data-theme="dark"] .form-section{border-color:rgba(110,85,190,.1);}
[data-theme="dark"] .form-section-title{color:rgba(237,232,224,.9);}
[data-theme="dark"] .form-section-sub,
[data-theme="dark"] .form-note,
[data-theme="dark"] .consent-text,
[data-theme="dark"] .form-label{color:rgba(135,125,195,.62);}
[data-theme="dark"] .form-input,
[data-theme="dark"] .form-select,
[data-theme="dark"] .form-textarea{background:rgba(10,8,22,.85);border-color:rgba(110,85,190,.25);color:rgba(237,232,224,.9);}
[data-theme="dark"] .form-footer{background:#120E24;border-color:rgba(110,85,190,.1);}
[data-theme="dark"] .type-label{border-color:rgba(110,85,190,.18);}
[data-theme="dark"] .type-label:hover{border-color:rgba(110,85,190,.35);background:rgba(20,40,22,.5);}
[data-theme="dark"] .type-option:checked+.type-label{border-color:rgba(120,95,200,.5);background:rgba(20,40,22,.7);}
[data-theme="dark"] .type-name{color:rgba(237,232,224,.85);}
[data-theme="dark"] .type-desc{color:rgba(130,120,190,.55);}
[data-theme="dark"] .verify-label{border-color:rgba(110,85,190,.18);color:rgba(130,120,190,.58);}
[data-theme="dark"] .rai-suggest{background:rgba(22,18,42,.5);border-color:rgba(110,85,190,.15);}
[data-theme="dark"] .rai-suggest-text strong{color:rgba(237,232,224,.9);}
[data-theme="dark"] .rai-suggest-text span{color:rgba(130,120,190,.58);}
[data-theme="dark"] .footer{border-color:rgba(110,85,190,.1);color:rgba(110,100,165,.35);}
[data-theme="dark"] .footer a{color:rgba(110,100,165,.55);}

/* ── Dark mode: hero restore ── */
[data-theme="dark"] .hero{background:radial-gradient(ellipse 70% 80% at 76% 22%,rgba(100,75,200,.2),transparent 68%),linear-gradient(to bottom,#080615,#0D0B1F)!important;}
[data-theme="dark"] .hero h1{background:linear-gradient(140deg,#fff 0%,#D4C8F5 52%,#A08BDE 92%)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important;}
[data-theme="dark"] .hero p{color:rgba(255,255,255,.48)!important;}
