/* Dark by design, on the same #0F1216 ground as the clinic site. */
:root{
  --bg:#0F1216;
  --surface:#161A20;
  --raised:#1C222A;
  --ink:#F2F3F1;
  --body:#B7BDC6;
  --muted:#868D97;
  --line:#242A32;
  --line-strong:#39414C;
  --navy:#8FB6E8;
  --navy-tint:#172232;
  --warm:#E59279;
  --warm-tint:#2A1E1A;
  --focus:#8FB6E8;
  --serif:"Source Serif 4",Georgia,"Times New Roman",serif;
  --sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  --wrap:1200px; --pad:clamp(20px,5vw,48px);
  color-scheme:dark;
}

*{box-sizing:border-box}
body{background:var(--bg);color:var(--body);font-family:var(--sans);font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{max-width:100%}
a{color:var(--navy);text-decoration:none}
a:hover{color:var(--warm)}
:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:2px}
h1,h2,h3,h4,h5{font-family:var(--serif);color:var(--ink);margin:0;text-wrap:balance;font-weight:600;letter-spacing:-0.01em}
p{margin:0}

.wrap{max-width:var(--wrap);margin:0 auto;padding-inline:var(--pad)}
.vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0}
.lede{font-size:19px;line-height:1.6;max-width:64ch}
.h2{font-size:clamp(26px,3.4vw,34px)}

/* header */
header.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.bar{max-width:var(--wrap);margin:0 auto;padding:14px var(--pad);display:flex;align-items:center;gap:20px}
.mark{display:flex;align-items:center;gap:10px;flex:none;color:var(--navy)}
.mark-txt{display:flex;flex-direction:column;line-height:1.1}
@media (max-width:360px){.menu-btn{font-size:0;gap:0;padding:9px}.mark{gap:8px}}
@media (max-width:400px){.mark b{font-size:16px}.mark-txt small{font-size:9px}.menu-btn{padding:7px 10px}}
.mark-txt small{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:3px}
.mark b{font-family:var(--serif);font-size:19px;color:var(--ink);letter-spacing:-.02em;font-weight:700}
nav.main{margin-left:auto;display:flex;gap:1px;flex-wrap:nowrap}
nav.main a{font-size:13.5px;color:var(--body);padding:7px 9px;border-radius:6px;font-weight:500;white-space:nowrap}
nav.main a:hover{background:var(--navy-tint);color:var(--navy)}
nav.main a[aria-current="page"]{color:var(--ink);background:var(--navy-tint)}
.host{flex:none;font-family:var(--mono);font-size:10.5px;line-height:1.35;color:var(--muted);text-align:right;padding-left:18px;border-left:1px solid var(--line)}
.menu-btn{display:none;margin-left:auto;align-items:center;gap:8px;font-family:var(--sans);font-size:14px;font-weight:500;color:var(--body);background:transparent;border:1px solid var(--line-strong);border-radius:6px;padding:8px 12px;cursor:pointer}
.menu-btn:hover{border-color:var(--navy);color:var(--navy)}
@media (max-width:1640px){.host{display:none}}
@media (max-width:1040px){
  .bar{flex-wrap:wrap}
  .menu-btn{display:inline-flex}
  nav.main{display:none;order:3;width:100%;gap:2px 10px;padding-top:10px;margin-top:6px;border-top:1px solid var(--line)}
  header.site[data-open="true"] nav.main{display:grid;grid-template-columns:1fr 1fr}
  nav.main a{font-size:15px;padding:10px 8px}
}

/* pages */
.page{padding-block:clamp(44px,6vw,80px)}
.stack{display:flex;flex-direction:column;gap:clamp(52px,7vw,96px)}
[id="/"] .stack{gap:clamp(64px,8vw,112px)}
.sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap;margin-bottom:26px}
.head-block{display:flex;flex-direction:column;gap:14px;max-width:72ch}
.page-title{font-size:clamp(34px,5vw,50px);line-height:1.08}

/* hero */
.hero{padding-top:clamp(24px,4vw,48px);padding-bottom:clamp(4px,1vw,12px)}
.hero h1{font-size:clamp(36px,5.6vw,58px);line-height:1.05;letter-spacing:-.025em}
.hero .lede{max-width:58ch}
.hero .eyebrow,.hero .lede,.hero .cta{max-width:58ch}
.cta{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:6px;font-size:15px;font-weight:500;border:1px solid var(--navy);background:var(--navy);color:var(--bg)}
.btn:hover{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.btn.ghost{background:transparent;color:var(--navy);border-color:var(--line-strong)}
.btn.ghost:hover{background:var(--navy-tint);color:var(--navy);border-color:var(--navy)}
.band{margin:0;display:flex;flex-direction:column;gap:10px}
.band img{display:block;width:100%;border-radius:12px;border:1px solid var(--line)}
.band figcaption{font-size:13.5px;color:var(--muted);line-height:1.5}

/* affiliation strip */
.affil{display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;padding-block:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.affil span{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;color:var(--muted)}
.affil .k{color:var(--ink);font-weight:500}

/* impact */
.impact{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (max-width:900px){.impact{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.impact{grid-template-columns:1fr}}
.impact div{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:24px 22px;display:flex;flex-direction:column;gap:5px}
.impact b{font-family:var(--serif);font-size:clamp(28px,3.6vw,38px);line-height:1;color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}
.impact small{font-size:13.5px;color:var(--muted);line-height:1.45}
.impact em{font-style:normal;font-family:var(--mono);font-size:10.5px;color:var(--muted);opacity:.8}

/* pillars */
.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:26px 40px}
.pillars .pillar:last-child{grid-column:1 / -1}
.pillars .pillar:last-child ul{display:grid;grid-template-columns:repeat(2,1fr);gap:7px 40px}
.pillars .pillar:last-child > p{max-width:72ch}
@media (max-width:760px){.pillars{grid-template-columns:1fr}.pillars .pillar:last-child ul{grid-template-columns:1fr}}
.pillar{display:flex;flex-direction:column;gap:11px;padding-top:18px;border-top:2px solid var(--navy)}
.pillar h3{font-size:23px}
.verb{font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--warm)}
.pillar ul{list-style:none;padding:0;margin:4px 0 0;display:flex;flex-direction:column;gap:7px}
.pillar li{font-size:14px;color:var(--muted);padding-left:15px;position:relative;line-height:1.5}
.pillar li::before{content:"";position:absolute;left:0;top:.62em;width:5px;height:1px;background:var(--line-strong)}

/* deployed systems */
.systems{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (max-width:620px){.systems{grid-template-columns:1fr}}
.sys{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:24px 22px;display:flex;flex-direction:column;gap:9px}
.sys h3{font-size:19px}
.sys .yrs{font-family:var(--mono);font-size:11px;color:var(--muted);letter-spacing:.05em}
.sys p{font-size:14px;line-height:1.5}
.sys .st{margin-top:auto;padding-top:10px;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--warm)}

/* feed */
.feed{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bg);border-block:1px solid var(--line);overflow:hidden}
@media (max-width:880px){.feed{grid-template-columns:1fr}}
.item{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:24px 22px;display:flex;flex-direction:column;gap:9px}
.item .meta{display:flex;align-items:center;gap:10px}
.tag{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:3px 7px;border-radius:3px;background:var(--navy-tint);color:var(--navy)}
.tag.award{background:var(--warm-tint);color:var(--warm)}
.item img.logo{background:#fff;padding:14px 22px;max-width:260px;box-sizing:border-box}
.item img{display:block;width:100%;height:auto;border-radius:8px;border:1px solid var(--line);margin-bottom:6px}
.yr{font-family:var(--mono);font-size:11.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.item h3{font-size:18px;line-height:1.3}
.item p{font-size:14.5px;line-height:1.5}
.more{font-size:13.5px;font-weight:500;margin-top:auto;padding-top:6px;color:var(--navy)}

/* a faint ground, to lift one section off the page */
.tinted{background:color-mix(in srgb,var(--navy-tint) 62%,var(--bg));border-radius:14px;padding:clamp(24px,3.4vw,38px)}
.tinted .systems{background:transparent;border-color:color-mix(in srgb,var(--navy) 14%,transparent)}
.tinted .sys{background:transparent;box-shadow:0 0 0 1px color-mix(in srgb,var(--navy) 14%,transparent)}
@media (max-width:620px){.tinted{padding:20px 16px;border-radius:10px}}

/* research deep */
.deep{display:grid;grid-template-columns:220px 1fr;gap:clamp(20px,4vw,56px);align-items:start;padding-top:32px;border-top:1px solid var(--line)}
@media (max-width:820px){.deep{grid-template-columns:1fr;gap:16px}}
.deep .side{display:flex;flex-direction:column;gap:8px;position:sticky;top:96px}
@media (max-width:820px){.deep .side{position:static}}
.deep h2{font-size:27px}
.caps{display:grid;grid-template-columns:repeat(2,1fr);gap:9px 26px;list-style:none;padding:0;margin:18px 0 0}
@media (max-width:620px){.caps{grid-template-columns:1fr}}
.caps li{font-size:14.5px;color:var(--body);padding-left:16px;position:relative}
.caps li::before{content:"";position:absolute;left:0;top:.66em;width:6px;height:6px;border-radius:50%;border:1px solid var(--navy)}
.repr{margin-top:22px;display:flex;flex-direction:column;gap:10px}
.repr .p{padding:13px 16px;background:var(--raised);border:1px solid var(--line);border-radius:8px}
.repr .p i{font-style:normal;font-family:var(--serif);color:var(--ink);font-size:16px;display:block;line-height:1.35}
.repr .p em{font-family:var(--mono);font-size:11.5px;color:var(--muted);font-style:normal;letter-spacing:.03em}

/* grids */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media (max-width:980px){.grid3{grid-template-columns:repeat(2,1fr)}}
@media (max-width:660px){.grid3{grid-template-columns:1fr}}
.proj{border:1px solid var(--line);border-radius:10px;padding:22px;display:flex;flex-direction:column;gap:9px;background:var(--raised)}
.proj h3{font-size:19px}
.proj p{font-size:14.5px;line-height:1.5}
.proj .facts{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:4px;font-family:var(--mono);font-size:11.5px;color:var(--muted)}
.status{align-self:flex-start;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:3px}
.status.live{background:var(--warm-tint);color:var(--warm)}
.status.active{background:var(--navy-tint);color:var(--navy)}
.status.done{background:var(--line);color:var(--muted)}

/* industry */
.partners{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
@media (max-width:820px){.partners{grid-template-columns:1fr}}
.partner{border:1px solid var(--line);border-radius:10px;background:var(--raised);padding:24px;display:flex;flex-direction:column;gap:10px}
.partner .top{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.partner h3{font-size:20px}
.partner .amt{font-family:var(--mono);font-size:12.5px;color:var(--warm);white-space:nowrap;font-variant-numeric:tabular-nums}
.partner p{font-size:14.5px;line-height:1.55}
.partner .kind{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.money{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (max-width:760px){.money{grid-template-columns:1fr}}
.money div{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:22px;display:flex;flex-direction:column;gap:5px}
.money b{font-family:var(--serif);font-size:30px;color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}
.money small{font-size:13.5px;color:var(--muted);line-height:1.45}

/* why adelaide */
.brag{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (max-width:620px){.brag{grid-template-columns:1fr}}
.brag div{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:26px 22px;display:flex;flex-direction:column;gap:7px}
.brag b{font-family:var(--serif);font-size:23px;line-height:1.15;color:var(--ink);font-weight:600}
.brag span{font-size:14.5px;color:var(--body)}
.brag small{font-size:12px;color:var(--muted);margin-top:auto;padding-top:10px;line-height:1.45}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:26px}
.facts h3{font-size:18px;margin-bottom:8px}
.facts p{font-size:14.5px;line-height:1.55}
.facts .fig{font-family:var(--mono);font-size:12px;color:var(--warm);display:block;margin-top:8px}
.facts p a{color:var(--body);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
.facts p a:hover{color:var(--navy);text-decoration-color:var(--navy)}
.facts img{border-radius:8px;border:1px solid var(--line);margin-bottom:12px;display:block;aspect-ratio:3/2;object-fit:cover;width:100%}

/* resources */
.res{display:flex;flex-direction:column;gap:0}
.res .r{display:grid;grid-template-columns:190px 1fr auto;gap:18px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline}
.res .r:first-child{border-top:1px solid var(--line)}
@media (max-width:760px){.res .r{grid-template-columns:1fr;gap:6px}}
.res .nm{font-family:var(--mono);font-size:13.5px;color:var(--ink)}
.res .ds{font-size:14.5px;line-height:1.5}
.res .vn{font-family:var(--mono);font-size:11.5px;color:var(--warm);white-space:nowrap}

/* publications */
.filters{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding-block:18px;border-block:1px solid var(--line);position:sticky;top:64px;z-index:20;background:var(--bg)}
.chip{font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;padding:7px 13px;border-radius:999px;border:1px solid var(--line-strong);background:transparent;color:var(--body);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:var(--bg)}
.check{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;padding:6px 13px 6px 10px;border-radius:999px;border:1px solid var(--line-strong);color:var(--body);cursor:pointer;user-select:none}
.check:hover{border-color:var(--navy);color:var(--navy)}
.check:has(input:checked){background:var(--navy-tint);border-color:var(--navy);color:var(--navy)}
.check input{accent-color:var(--navy);margin:0;cursor:pointer}
input.search{margin-left:auto;font-family:var(--sans);font-size:14px;padding:8px 12px;border-radius:6px;border:1px solid var(--line-strong);background:var(--raised);color:var(--ink);min-width:210px}
input.search::placeholder{color:var(--muted)}
.pubyear{display:grid;grid-template-columns:80px 1fr;gap:20px;padding-block:22px;border-bottom:1px solid var(--line)}
@media (max-width:700px){.pubyear{grid-template-columns:1fr;gap:10px}}
.pubyear .y{font-family:var(--mono);font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums;padding-top:3px}
.publist{display:flex;flex-direction:column;gap:18px}
.pub{display:flex;flex-direction:column;gap:4px}
.pub .t{font-family:var(--serif);font-size:17.5px;color:var(--ink);line-height:1.35}
a.t{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px}
a.t:hover{color:var(--navy);text-decoration-color:var(--navy)}
.pub .a{font-size:13.5px;color:var(--muted);line-height:1.5}
.pub .a b{color:var(--body);font-weight:600}
.pub .v{font-family:var(--mono);font-size:12px;color:var(--warm);letter-spacing:.03em}
.pub .v i{font-style:normal;color:var(--muted)}
.count{font-family:var(--mono);font-size:12px;color:var(--muted);padding-top:14px}

/* people */
.lead{display:grid;grid-template-columns:150px 1fr;gap:clamp(20px,3vw,34px);align-items:start;padding:clamp(22px,3vw,30px);border:1px solid var(--line);border-radius:12px;background:var(--raised)}
@media (max-width:700px){.lead{grid-template-columns:1fr}}
.avatar img{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}
.slot .headshot{width:64px;height:64px;border-radius:50%;object-fit:cover;border:1px solid var(--line);margin-bottom:6px}
.avatar{aspect-ratio:1;border-radius:10px;background:var(--navy-tint);border:1px solid var(--line);display:grid;place-items:center;font-family:var(--serif);font-size:40px;color:var(--navy);font-weight:600}
.lead h3{font-size:25px}
.role{font-family:var(--mono);font-size:12px;color:var(--warm);letter-spacing:.04em;margin-top:6px;display:block;line-height:1.5}
.lead p{font-size:15.5px;margin-top:13px;line-height:1.62}
.links{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}
.links a{font-family:var(--mono);font-size:11.5px;padding:6px 11px;border:1px solid var(--line-strong);border-radius:999px;color:var(--body)}
.links a:hover{border-color:var(--navy);color:var(--navy)}
.jump{display:flex;flex-wrap:wrap;gap:8px;padding-block:14px;border-block:1px solid var(--line);position:sticky;top:64px;z-index:20;background:var(--bg)}
.jump a{font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;padding:6px 12px;border:1px solid var(--line-strong);border-radius:999px;color:var(--body)}
.jump a:hover{border-color:var(--navy);color:var(--navy)}
.people-sec{scroll-margin-top:120px}
.roster{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--bg);border:1px solid var(--line);border-radius:10px;overflow:hidden}
@media (max-width:900px){.roster{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.roster{grid-template-columns:1fr}}
.slot{background:var(--bg);box-shadow:0 0 0 1px var(--line);padding:20px;display:flex;flex-direction:column;gap:5px}
.slot .n{font-family:var(--serif);font-size:17px;color:var(--ink)}
.slot .r{font-size:13.5px;color:var(--muted);line-height:1.45}
.slot .meta2{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}

/* join / contact */
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,52px)}
@media (max-width:820px){.two{grid-template-columns:1fr}}
.box{border:1px solid var(--line);border-radius:10px;padding:24px;background:var(--raised);display:flex;flex-direction:column;gap:12px}
.box h3{font-size:19px}
.box ul{padding-left:18px;display:flex;flex-direction:column;gap:7px;font-size:15px;margin:0}
.open .o{display:grid;grid-template-columns:1fr auto;gap:16px;padding:18px 0;border-bottom:1px solid var(--line);align-items:start}
.open .o:first-child{border-top:1px solid var(--line)}
.open .o h3{font-size:18px}
.open .o p{font-size:14.5px;margin-top:4px}
.dl{display:grid;grid-template-columns:150px 1fr;gap:10px 20px;font-size:15px;margin:0}
@media (max-width:600px){.dl{grid-template-columns:1fr;gap:2px 0}.dl dt{margin-top:12px}}
.dl dt{font-family:var(--mono);font-size:12px;color:var(--muted);letter-spacing:.05em;text-transform:uppercase;padding-top:4px}
.dl dd{margin:0;color:var(--ink)}
.note{font-size:13.5px;color:var(--muted);border-left:2px solid var(--warm);padding-left:14px;line-height:1.55}

/* footer */
footer.site{border-top:1px solid var(--line);margin-top:clamp(52px,7vw,88px);padding-block:44px;background:var(--surface)}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:34px}
@media (max-width:820px){.fgrid{grid-template-columns:1fr}}
footer.site h5{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 12px;font-weight:400}
footer.site p,footer.site li{font-size:14px;line-height:1.6}
footer.site ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:7px;margin:0}
.ack{margin-top:34px;padding-top:22px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
/* the open menu needs an opaque ground, not the translucent sticky one */
header.site[data-open="true"]{background:var(--bg)}

/* phones: same content, less scrolling */
@media (max-width:620px){
  .stack{gap:clamp(40px,9vw,64px)}
  [id="/"] .stack{gap:clamp(44px,10vw,72px)}
  .page{padding-block:clamp(28px,6vw,44px)}
  .sys,.item,.impact div,.brag div,.slot,.money div{padding:18px 16px}
  .proj,.partner,.box{padding:18px 16px}
  .sys h3,.item h3,.proj h3,.partner h3,.facts h3,.box h3{font-size:17px}
  .impact b{font-size:27px}
  .facts{gap:20px}
  .repr .p{padding:11px 13px}
  .lead{padding:18px 16px}
  .page-title{font-size:clamp(30px,8vw,38px)}
  .h2{font-size:clamp(23px,6vw,28px)}
  .lede{font-size:17px}
}


/* hero: the AIML building as a point cloud, behind the text at top right */
.hero{position:relative;isolation:isolate}
.hero > div{position:relative;z-index:1}
.hero h1,.hero .lede{text-shadow:0 0 14px var(--bg),0 0 28px var(--bg)}
#hero3d{position:absolute;z-index:0;top:-70px;right:calc(var(--pad) * -0.6);width:54%;height:470px;pointer-events:none;
  -webkit-mask-image:radial-gradient(ellipse 70% 68% at 55% 50%,#000 60%,transparent 100%);mask-image:radial-gradient(ellipse 70% 68% at 55% 50%,#000 60%,transparent 100%)}
.hero .caption3d{position:absolute;z-index:1;top:370px;right:0;font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;color:var(--muted);opacity:.7}
@media (max-width:900px){#hero3d{top:-40px;right:-10px;width:82%;height:330px;opacity:.5}.hero .caption3d{display:none}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
