/* Components: header, buttons, intro, dashboard, cards, chips, publications, positions, footer. */

/* ---------- header ---------- */
.site-header {
  position:sticky; top:0; z-index:50;
  background:color-mix(in srgb, var(--paper) 82%, transparent);
  backdrop-filter:saturate(140%) blur(10px);
  border-bottom:1px solid var(--line);
}
.site-header__inner { display:flex; align-items:center; gap:1rem; height:var(--header-h); }
.brand { display:inline-block; line-height:.92; font-family:var(--font-display); font-weight:700; font-size:1.35rem; --ls:.02em; letter-spacing:var(--ls); color:var(--ink); }
.brand:hover { color:var(--ink); }
.brand b { color:var(--indigo); font-weight:700; }
.brand__sub { font-family:var(--font-mono); font-size:.62rem; letter-spacing:.16em; text-transform:uppercase; color:var(--faint); align-self:center; }
.site-nav { margin-left:auto; }
.nav-list { list-style:none; display:flex; align-items:center; gap:.25rem; padding:0; }
.nav-list a { display:inline-block; padding:.5rem .8rem; border-radius:var(--r-sm); font-size:var(--step--1); font-weight:600; color:var(--muted); }
.nav-list a:hover { color:var(--ink); background:var(--surface-2); }
.nav-list a[aria-current="page"] { color:var(--indigo-ink); background:var(--indigo-tint); }
.header-tools { display:flex; align-items:center; gap:.3rem; }
.theme-toggle, .nav-toggle {
  display:inline-grid; place-items:center; width:38px; height:38px; border:1px solid var(--line);
  border-radius:var(--r-sm); background:var(--surface); color:var(--muted); cursor:pointer;
}
.theme-toggle:hover, .nav-toggle:hover { color:var(--ink); border-color:var(--line-strong); }
.theme-toggle .icon { width:18px; height:18px; }
.theme-toggle .moon { display:none; }
:root[data-theme="dark"] .theme-toggle .moon { display:block; }
:root[data-theme="dark"] .theme-toggle .sun { display:none; }
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .theme-toggle .sun{display:none;} :root:not([data-theme="light"]) .theme-toggle .moon{display:block;} }
.nav-toggle { display:none; }

/* ---------- buttons ---------- */
.btn {
  display:inline-flex; align-items:center; gap:.5rem; padding:.7rem 1.15rem;
  border-radius:var(--r-sm); font-weight:600; font-size:var(--step--1);
  border:1px solid transparent; cursor:pointer; transition:transform .12s ease, background .12s ease, border-color .12s ease;
  line-height:1;
}
.btn:active { transform:translateY(1px); }
.btn--primary { background:var(--indigo); color:#fff; box-shadow:var(--shadow-sm); }
.btn--primary:hover { background:var(--indigo-hover); color:#fff; }
.btn--ghost { background:var(--surface); color:var(--ink); border-color:var(--line-strong); }
.btn--ghost:hover { color:var(--ink); border-color:var(--indigo); background:var(--surface-2); }
.btn--sm { padding:.45rem .8rem; }
.btn .icon { width:16px; height:16px; }

.icon { width:1em; height:1em; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; vertical-align:-.125em; }
.icon--fill { fill:currentColor; stroke:none; }

/* ---------- intro ---------- */
.intro { position:relative; min-height:calc(100svh - var(--header-h)); display:flex; align-items:center; overflow:hidden; }
.intro__inner { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(1.5rem,1rem + 3vw,4rem); align-items:center; padding-block:clamp(1.25rem,2.5vh,2.5rem); }
.intro__content { display:flex; flex-direction:column; gap:1rem; }
.intro__wordmark { font-family:var(--font-display); font-weight:700; font-size:var(--step-5); line-height:.92; --ls:-.02em; letter-spacing:var(--ls); color:var(--ink); }
/* the I in every SEIZURE wordmark carries a coral dot (a tittle) that echoes the
   epileptogenic zone marker in the fusion visual */
/* zero the I's own trailing letter-spacing and re-add the gap as a margin, so the dot's box is the
   bare glyph. left:50% then centers on the stroke identically in every browser (letter-spacing is
   included in the inline box inconsistently across engines). */
.intro__wordmark b, .brand b { color:var(--indigo); position:relative; letter-spacing:0; margin-right:var(--ls); }
.intro__wordmark b::after, .brand b::after {
  content:""; position:absolute; left:50%; top:.26em; transform:translate(-50%, -100%);
  width:.14em; height:.14em; border-radius:50%; background:var(--focus);
}
.intro__acrostic { font-size:var(--step-1); line-height:1.4; color:var(--ink); max-width:36ch; }
.intro__acrostic .cap { color:var(--indigo); font-weight:600; font-family:var(--font-display); }
.intro__tagline { color:var(--muted); font-size:var(--step-0); max-width:46ch; }
.intro__facts { display:flex; flex-wrap:wrap; gap:.5rem; }
.fact { display:inline-flex; align-items:center; gap:.45rem; font-family:var(--font-mono); font-size:var(--step--1); color:var(--ink); background:var(--surface); border:1px solid var(--line); border-radius:var(--r-pill); padding:.35rem .8rem; }
.fact b { color:var(--indigo-ink); font-weight:500; }
.intro__cta { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:.2rem; }
.intro__partners { margin-top:.4rem; }

/* fusion visual */
.intro__visual { position:relative; }
.fusion { width:100%; height:auto; }
.fusion .lane { fill:none; stroke-width:2.2; opacity:.9; }
.fusion .lane--mri { stroke:var(--mri); } .fusion .lane--pet { stroke:var(--pet); } .fusion .lane--meg { stroke:var(--meg); }
.fusion .edge { stroke:var(--line-strong); stroke-width:1.4; fill:none; }
.fusion .node { fill:var(--surface); stroke:var(--indigo); stroke-width:2; }
.fusion .focus-ring { fill:none; stroke:var(--focus); stroke-width:2.4; }
.fusion .focus-dot { fill:var(--focus); }
.fusion .tile { fill:var(--surface); stroke:var(--line); stroke-width:1.5; }
.fusion .lbl { font-family:var(--font-mono); font-size:11px; letter-spacing:.08em; fill:var(--muted); text-transform:uppercase; }
.fusion .lbl--focus { fill:var(--focus); }
@media (prefers-reduced-motion: no-preference){
  .fusion .lane { stroke-dasharray:1400; stroke-dashoffset:1400; animation:draw 1.6s ease forwards; }
  .fusion .lane--pet { animation-delay:.18s; } .fusion .lane--meg { animation-delay:.36s; }
  .fusion .focus-dot { transform-box:fill-box; transform-origin:center; animation:pulse 2.6s ease-in-out 1.4s infinite; }
  .fusion .focus-ring { opacity:0; animation:ringin .6s ease 1.2s forwards; }
}
@keyframes draw { to { stroke-dashoffset:0; } }
@keyframes ringin { to { opacity:1; } }
@keyframes pulse { 0%,100%{ opacity:1; } 50%{ opacity:.35; transform:scale(1.25); } }

/* full width signal divider (baseline that spikes) */
.signal-strip { width:100%; height:26px; color:var(--line-strong); overflow:hidden; }
.signal-strip svg { width:100%; height:100%; }
.signal-strip .base { fill:none; stroke:currentColor; stroke-width:1.4; }
.signal-strip .spike { stroke:var(--focus); }

/* ---------- dashboard ---------- */
.dashboard { grid-template-columns:repeat(3, 1fr); }
.panel { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); padding:1.3rem; display:flex; flex-direction:column; box-shadow:var(--shadow-sm); }
.panel__head { display:flex; align-items:center; justify-content:space-between; margin-bottom:1rem; }
.panel__link { font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.08em; text-transform:uppercase; color:var(--muted); display:inline-flex; align-items:center; gap:.3rem; }
.panel__link:hover { color:var(--indigo-ink); }
.panel__body { display:flex; flex-direction:column; gap:.85rem; }

/* news */
.news__item { display:block; padding-bottom:.85rem; border-bottom:1px solid var(--line); }
.news__item:last-child { border-bottom:0; padding-bottom:0; }
.news__meta { display:flex; align-items:center; gap:.5rem; margin-bottom:.3rem; }
.news__date { font-family:var(--font-mono); font-size:var(--step--2); color:var(--faint); }
.news__title { font-weight:600; color:var(--ink); font-size:var(--step-0); line-height:1.3; }
a.news__item:hover .news__title { color:var(--indigo-ink); }
.news__blurb { color:var(--muted); font-size:var(--step--1); margin-top:.15rem; }
.tag { font-family:var(--font-mono); font-size:var(--step--2); font-weight:500; letter-spacing:.06em; text-transform:uppercase; padding:.15rem .5rem; border-radius:var(--r-xs); border:1px solid; }
.tag--Publication { color:var(--meg); border-color:color-mix(in srgb,var(--meg) 40%,transparent); background:color-mix(in srgb,var(--meg) 10%,transparent); }
.tag--Hiring { color:var(--focus); border-color:color-mix(in srgb,var(--focus) 40%,transparent); background:color-mix(in srgb,var(--focus) 10%,transparent); }
.tag--Milestone { color:var(--indigo-ink); border-color:color-mix(in srgb,var(--indigo) 35%,transparent); background:var(--indigo-tint); }
.tag--Event { color:var(--pet); border-color:color-mix(in srgb,var(--pet) 40%,transparent); background:color-mix(in srgb,var(--pet) 10%,transparent); }

/* compact feed item, shared by the publications and positions dashboard panels */
.mini { display:block; padding-bottom:.85rem; border-bottom:1px solid var(--line); }
.mini:last-child { border-bottom:0; padding-bottom:0; }
.mini__meta { display:flex; align-items:center; gap:.5rem; font-family:var(--font-mono); font-size:var(--step--2); color:var(--faint); text-transform:uppercase; letter-spacing:.06em; margin-bottom:.25rem; }
.mini__meta .dot--journal { color:var(--indigo); } .mini__meta .dot--conference { color:var(--meg); } .mini__meta .dot--preprint { color:var(--focus); }
.mini__title { font-weight:600; font-size:var(--step-0); line-height:1.3; color:var(--ink); }
a.mini:hover .mini__title { color:var(--indigo-ink); }
.mini__sub { color:var(--muted); font-size:var(--step--1); margin-top:.15rem; }

/* ---------- generic card grid ---------- */
.cards { grid-template-columns:repeat(auto-fit, minmax(320px,1fr)); }
.lab-section + .lab-section { margin-top:clamp(2rem, 1.2rem + 3vw, 3.4rem); }
.op-list { display:flex; flex-direction:column; gap:1.1rem; max-width:820px; }

/* ---------- institution chip ---------- */
.chip { display:inline-flex; align-items:center; gap:.45rem; font-size:var(--step--1); font-weight:600; color:var(--ink);
  background:var(--surface-2); border:1px solid var(--line); border-radius:var(--r-pill); padding:.22rem .7rem; }
.chip:hover { color:var(--ink); border-color:var(--inst,var(--line-strong)); }
.chip__dot { width:9px; height:9px; border-radius:50%; background:var(--inst,#888); flex:none; }

/* ---------- member card ---------- */
.member { position:relative; display:grid; grid-template-columns:auto 1fr; gap:1rem; background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); padding:1.1rem; box-shadow:var(--shadow-sm); transition:border-color .15s ease, box-shadow .15s ease, transform .15s ease; border-top:3px solid var(--inst,var(--indigo)); }
.member:hover { box-shadow:var(--shadow-md); border-color:var(--line-strong); transform:translateY(-2px); }
.member__photo { width:76px; height:76px; border-radius:14px; object-fit:cover; background:var(--surface-2); }
.member__photo--ph { display:grid; place-items:center; font-family:var(--font-display); font-weight:700; font-size:1.4rem; color:#fff; background:var(--inst,var(--indigo)); }
.member__body { min-width:0; display:flex; flex-direction:column; gap:.4rem; }
.member__name { font-family:var(--font-display); font-weight:700; font-size:var(--step-1); line-height:1.1; }
.member__role { display:inline-flex; align-items:center; gap:.4rem; font-size:var(--step--1); color:var(--muted); }
.member__lead { color:var(--focus); font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.06em; text-transform:uppercase; }
.member__insts { display:flex; flex-wrap:wrap; gap:.35rem; margin-top:.1rem; }
.member__thesis { font-size:var(--step--1); color:var(--muted); border-left:2px solid var(--inst,var(--line-strong)); padding-left:.6rem; }
.member__thesis b { color:var(--ink); font-weight:600; }
.member__interests { font-size:var(--step--1); color:var(--muted); }
.member__links { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.15rem; }
.iconlink { display:inline-grid; place-items:center; width:32px; height:32px; border-radius:var(--r-sm); border:1px solid var(--line); color:var(--muted); background:var(--surface); }
.iconlink:hover { color:var(--indigo-ink); border-color:var(--indigo); }
.iconlink .icon { width:16px; height:16px; }
.member__pubs { margin-top:.35rem; border-top:1px dashed var(--line); padding-top:.5rem; }
.member__pubs summary { cursor:pointer; font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); }
.member__pubs ul { list-style:none; padding:0; margin:.5rem 0 0; display:flex; flex-direction:column; gap:.4rem; }
.member__pubs li { font-size:var(--step--1); line-height:1.35; }
.member__pubs .py { font-family:var(--font-mono); font-size:var(--step--2); color:var(--faint); }

/* lab section heading */
.lab-head { display:flex; align-items:baseline; gap:.8rem; margin-bottom:1.1rem; padding-bottom:.5rem; border-bottom:2px solid var(--inst,var(--line)); }
.lab-head h2 { font-size:var(--step-2); }
.lab-head .lab-full { font-size:var(--step--1); color:var(--muted); }

/* ---------- publications ---------- */
.pub-filter { display:flex; flex-wrap:wrap; gap:.4rem; margin-bottom:1.5rem; }
.pub-filter button { font-family:var(--font-mono); font-size:var(--step--1); letter-spacing:.04em; padding:.4rem .85rem; border-radius:var(--r-pill); border:1px solid var(--line-strong); background:var(--surface); color:var(--muted); cursor:pointer; }
.pub-filter button[aria-pressed="true"] { background:var(--ink); color:var(--paper); border-color:var(--ink); }
.pub-filter .count { opacity:.6; margin-left:.35rem; }
.year-group { margin-bottom:1.8rem; }
.year-group__label { font-family:var(--font-mono); font-size:var(--step-1); color:var(--faint); font-weight:500; margin-bottom:.7rem; }
.pub-list { display:flex; flex-direction:column; gap:.9rem; }
.pub { display:flex; gap:1.2rem; background:var(--surface); border:1px solid var(--line); border-left:4px solid var(--type-color,var(--indigo)); border-radius:var(--r-md); padding:1.1rem 1.2rem; box-shadow:var(--shadow-sm); }
.pub__main { min-width:0; flex:1; }
.pub__figure { width:120px; height:90px; object-fit:cover; border-radius:var(--r-sm); border:1px solid var(--line); flex:none; }
.pub__type { font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.08em; text-transform:uppercase; color:var(--type-color,var(--indigo)); font-weight:500; }
.pub__title { font-weight:600; font-size:var(--step-0); line-height:1.35; margin:.15rem 0; }
.pub__authors { font-size:var(--step--1); color:var(--muted); }
.pub__authors b { color:var(--ink); font-weight:600; }
.pub__venue { font-size:var(--step--1); color:var(--faint); font-style:italic; }
.pub__links { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.5rem; }
.pill-link { display:inline-flex; align-items:center; gap:.3rem; font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.04em; padding:.25rem .6rem; border-radius:var(--r-pill); border:1px solid var(--line-strong); color:var(--muted); }
.pill-link:hover { color:var(--indigo-ink); border-color:var(--indigo); }
.pub[data-type="journal"] { --type-color:var(--indigo); }
.pub[data-type="conference"] { --type-color:var(--meg); }
.pub[data-type="preprint"] { --type-color:var(--focus); }

/* ---------- positions ---------- */
.opening { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); padding:1.4rem; box-shadow:var(--shadow-sm); border-left:4px solid var(--lvl,var(--indigo)); display:flex; flex-direction:column; gap:.7rem; }
.opening[data-status="closed"] { opacity:.62; }
.opening__top { display:flex; align-items:center; gap:.6rem; flex-wrap:wrap; }
.level-badge { font-family:var(--font-mono); font-size:var(--step--2); font-weight:500; letter-spacing:.08em; text-transform:uppercase; color:#fff; background:var(--lvl,var(--indigo)); padding:.22rem .6rem; border-radius:var(--r-xs); }
.opening[data-level="Master"] { --lvl:var(--meg); }
.opening[data-level="PhD"] { --lvl:var(--indigo); }
.opening[data-level="Postdoc"] { --lvl:var(--pet); }
.opening[data-level="Engineer"] { --lvl:var(--mri); }
.wp-tag { font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.06em; color:var(--muted); border:1px solid var(--line-strong); border-radius:var(--r-xs); padding:.18rem .45rem; }
.status-pill { margin-left:auto; display:inline-flex; align-items:center; gap:.4rem; font-family:var(--font-mono); font-size:var(--step--2); text-transform:uppercase; letter-spacing:.06em; }
.status-pill::before { content:""; width:8px; height:8px; border-radius:50%; }
.status-pill--open { color:var(--meg); } .status-pill--open::before { background:var(--meg); box-shadow:0 0 0 0 color-mix(in srgb,var(--meg) 60%,transparent); animation:blip 2s ease-out infinite; }
.status-pill--closed { color:var(--faint); } .status-pill--closed::before { background:var(--faint); }
@keyframes blip { 0%{ box-shadow:0 0 0 0 color-mix(in srgb,var(--meg) 60%,transparent);} 70%{ box-shadow:0 0 0 7px transparent;} 100%{ box-shadow:0 0 0 0 transparent;} }
.opening__title { font-family:var(--font-display); font-weight:700; font-size:var(--step-1); line-height:1.15; }
.opening__meta { display:flex; flex-wrap:wrap; gap:.4rem .9rem; font-size:var(--step--1); color:var(--muted); }
.opening__meta span { display:inline-flex; align-items:center; gap:.35rem; }
.opening__body { font-size:var(--step--1); color:var(--muted); }
.opening__body b { color:var(--ink); }
.opening__foot { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; margin-top:.2rem; }
.positions-empty { text-align:center; background:var(--surface); border:1px dashed var(--line-strong); border-radius:var(--r-lg); padding:3rem 1.5rem; }

/* ---------- overview ---------- */
.figure-card { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); padding:1rem; box-shadow:var(--shadow-sm); }
.figure-card figcaption { font-size:var(--step--1); color:var(--muted); margin-top:.6rem; text-align:center; }
.split { display:grid; grid-template-columns:1.1fr .9fr; gap:clamp(1.5rem,3vw,3rem); align-items:start; }
.prose p { margin-top:1rem; color:var(--ink); }
.prose p:first-child { margin-top:0; }
.stats { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.stat { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); padding:1.15rem 1.2rem; box-shadow:var(--shadow-sm); border-top:3px solid var(--indigo); }
.stat__num { font-family:var(--font-display); font-weight:700; font-size:var(--step-3); line-height:1; color:var(--indigo); }
.stat__label { font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.06em; text-transform:uppercase; color:var(--muted); margin-top:.45rem; }
.wp-grid { grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); }
.wp-card { background:var(--surface); border:1px solid var(--line); border-radius:var(--r-md); padding:1.2rem; box-shadow:var(--shadow-sm); border-top:4px solid var(--wp,var(--indigo)); }
.wp-card__id { font-family:var(--font-mono); font-weight:500; font-size:var(--step--1); color:var(--wp,var(--indigo)); letter-spacing:.06em; }
.wp-card__title { font-family:var(--font-display); font-weight:700; font-size:var(--step-1); margin:.25rem 0 .5rem; line-height:1.12; }
.wp-card__lead { font-size:var(--step--2); font-family:var(--font-mono); color:var(--faint); margin-bottom:.5rem; }
.wp-card__goal { font-size:var(--step--1); color:var(--muted); }
.timeline { position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:1rem; margin-top:1.5rem; padding-top:1.5rem; }
.timeline::before { content:""; position:absolute; top:1.5rem; left:0; right:0; height:2px; background:linear-gradient(90deg,var(--indigo),var(--meg)); }
.tl-item { position:relative; padding-top:1rem; }
.tl-item::before { content:""; position:absolute; top:-1.5rem; left:0; width:11px; height:11px; border-radius:50%; background:var(--indigo); border:2px solid var(--paper); }
.tl-year { font-family:var(--font-mono); font-weight:500; color:var(--ink); }
.tl-label { font-size:var(--step--1); color:var(--muted); }

/* ---------- footer ---------- */
.site-footer { border-top:1px solid var(--line); background:var(--surface); margin-top:var(--pad-section); }
.footer__inner { display:grid; grid-template-columns:1.4fr 1fr; gap:2rem; padding-block:2.5rem; }
.footer__brand .brand { font-size:1.5rem; }
.footer__tagline { color:var(--muted); font-size:var(--step--1); margin-top:.6rem; max-width:44ch; }
.footer__meta { font-family:var(--font-mono); font-size:var(--step--2); color:var(--faint); margin-top:.8rem; }
.footer__col h4 { font-family:var(--font-mono); font-size:var(--step--2); letter-spacing:.1em; text-transform:uppercase; color:var(--faint); font-weight:500; margin-bottom:.7rem; }
.footer__links { list-style:none; padding:0; display:flex; flex-direction:column; gap:.4rem; }
.footer__links a { color:var(--muted); font-size:var(--step--1); }
.footer__links a:hover { color:var(--indigo-ink); }
.footer__bottom { border-top:1px solid var(--line); padding-block:1.2rem; display:flex; flex-wrap:wrap; gap:.8rem; justify-content:space-between; align-items:center; font-size:var(--step--2); color:var(--faint); }

/* partner strip: color logos on light tiles, theme safe */
.partner-strip { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; }
.partner-strip--sm { gap:.5rem; }
.partner-tile { display:grid; place-items:center; height:54px; padding:.4rem .9rem; background:#fff; border:1px solid var(--line); border-radius:var(--r-sm); box-shadow:var(--shadow-sm); }
/* a definite height (not max-height) so viewBox only SVGs, which have no intrinsic size, still render */
.partner-tile img { height:30px; width:auto; max-width:116px; object-fit:contain; }
.partner-strip--sm { gap:.5rem; }
.partner-strip--sm .partner-tile { height:42px; padding:.28rem .6rem; }
.partner-strip--sm .partner-tile img { height:22px; max-width:88px; }

/* ---------- responsive ---------- */
@media (max-width: 900px){
  .intro__inner { grid-template-columns:1fr; gap:1.5rem; }
  .intro__visual { order:-1; max-width:460px; }
  .dashboard { grid-template-columns:1fr; }
  .split { grid-template-columns:1fr; }
  .footer__inner { grid-template-columns:1fr; }
  .pub__figure { display:none; }
}
@media (max-width: 720px){
  .site-nav { position:fixed; inset:var(--header-h) 0 auto 0; background:var(--surface); border-bottom:1px solid var(--line); transform:translateY(-120%); transition:transform .2s ease; }
  .site-nav[data-open="true"] { transform:none; }
  .nav-list { flex-direction:column; align-items:stretch; padding:.6rem; gap:.15rem; }
  .nav-list a { padding:.8rem 1rem; }
  .nav-toggle { display:inline-grid; }
  .intro__wordmark { font-size:clamp(3rem,14vw,4.2rem); }
}
