/* Reference corrections: black space, substantial optical edges, consistent copy. */
:root { --copy-size:clamp(14px,1.05vw,19px); --copy-leading:1.52; }
.music-heading > p:not(.brush-copy),.contact-card p,.crew-form .check,.story-grid article p,.downloads-intro > p:not(.brush-copy),.booking-shell > p:not(.brush-copy) {
  font-family:var(--body); font-weight:400; text-transform:none; letter-spacing:0; line-height:var(--copy-leading);
}
.paint-strike { background:none!important; clip-path:none!important; filter:none!important; overflow:visible; }
.paint-visual { display:block; width:100%; height:100%; overflow:visible; }
.download-tray { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
:is(#about,#contact,#about-full) .glass-card {
  border:1px solid #ff96cdc7;
  background:linear-gradient(125deg,#fff1 0%,#ffffff03 28%,transparent 55%,#ff009009 88%),linear-gradient(145deg,#120a1042,#0101018a 58%,#13071050);
  box-shadow:inset 0 1px 1px #fff9,inset 1px 0 1px #ffd2e54d,inset -1px -1px 1px #ff5eb678,inset 0 0 18px #ffffff05,0 0 2px 1px #ff00905c,0 0 15px #ff009028;
  backdrop-filter:blur(12px) saturate(1.18); -webkit-backdrop-filter:blur(12px) saturate(1.18);
}
:is(#about,#contact,#about-full) .glass-card::before {
  inset:0; border-radius:inherit; z-index:-1; opacity:1;
  background:radial-gradient(ellipse 100% 23% at var(--mx,30%) 0%,#fff2,transparent 70%),radial-gradient(ellipse 110% 8% at 20% 100%,#ff009027,transparent 78%);
}
:is(#about,#contact,#about-full) .glass-card::after {
  inset:-1px; height:auto; border-radius:inherit; padding:1.5px; opacity:.95;
  background:linear-gradient(125deg,#fff8 0%,#ff96ce 8%,transparent 21% 53%,#ff0090 76%,#fff9 85%,transparent 96%);
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite:exclude;
}
:is(#about,#contact,#about-full) .glass-card:hover {
  border-color:#ffd5eb; box-shadow:inset 0 1px 2px #fff9,inset 0 -1px 2px #ff0090aa,0 0 3px #ff0090aa,0 0 22px #ff009043;
}
.contact-icon { overflow:visible; fill:none; stroke-linecap:round; stroke-linejoin:round; filter:drop-shadow(1px 3px 1px #000) drop-shadow(0 0 7px #ff009065); }
.contact-card .signal-button,.crew-form .signal-button { background:linear-gradient(180deg,#be006bba,#55002fbb); border:1px solid #ff68b9; box-shadow:inset 0 1px 1px #ffb6db80,0 0 14px #ff009035; }
.contact-card .signal-button:hover,.crew-form .signal-button:hover { background:linear-gradient(180deg,#df007a,#760040); }
.mini-cover { position:absolute; left:13px; top:14px; width:64px; height:64px; border-radius:7px; border:1px solid #fff4; object-fit:cover; box-shadow:0 2px 10px #0009; }
.music-player.mini-player,.music-player.mini-player.is-footer-safe,.route-open .music-player.mini-player {
  right:max(18px,env(safe-area-inset-right)); bottom:max(18px,env(safe-area-inset-bottom)); overflow:visible;
}
.music-player.mini-player { width:68px; height:68px; border-color:#ff64b3b0; background:linear-gradient(130deg,#fff1,transparent 48%),#090509e8; box-shadow:inset 0 1px 1px #fff9,0 0 0 3px #090509,0 0 16px #ff00902e; }
.music-player.mini-player.is-revealed { width:430px; height:100px; max-width:calc(100vw - 36px); border-radius:14px; background:linear-gradient(135deg,#ffffff14,transparent 35%),linear-gradient(155deg,#1e111bdc,#070607ef); }
.mini-player .mini-play { width:54px; height:54px; right:6px; bottom:6px; }
.mini-player .mini-next { right:64px; bottom:8px; }
.mini-player .mini-title { top:13px; left:89px; right:16px; font:500 14px/1.35 var(--body); text-transform:none; letter-spacing:0; }
.mini-player .mini-seek { top:37px; left:89px; width:calc(100% - 168px); }
.mini-player .mini-time { left:89px; bottom:20px; font-size:10px; }
.mini-player .mini-volume { bottom:13px; right:116px; gap:5px; }
.mini-player .mini-volume input { width:54px; }
.mini-player .mini-equalizer { pointer-events:none; position:absolute; width:96px; height:96px; right:-15px; bottom:-15px; opacity:.9; transition:opacity 160ms; }
.mini-player.is-revealed .mini-equalizer { opacity:0; }
.mini-player[data-state=error].is-revealed .mini-status { left:89px; }
@media (min-width:1101px) {
  .about .brand-atmosphere { background:radial-gradient(ellipse at 73% 54%,#ff009019,transparent 43%),#000; opacity:1; }
  .about .ghost-mark { display:block; top:2dvh; left:22vw; right:auto; bottom:auto; width:37vw; height:64dvh; opacity:.1; transform:rotate(-12deg); filter:brightness(.55); }
  .about .ghost-mark img { width:100%; height:100%; object-fit:contain; }
  .about-artists.press-photo { top:auto; bottom:0; right:2.6vw; width:57vw; height:96dvh; max-height:none; object-fit:contain; object-position:right bottom; mask-image:linear-gradient(0deg,transparent,#000 7%); }
  .about__inner { padding-top:4.8dvh; padding-left:5.6vw; }
  .about .eyebrow { margin-bottom:6dvh; }
  .about-copy { width:39vw; }
  .about-copy h1 { font-size:min(10.15vw,18dvh); line-height:.94; }
  .about .paint-strike { width:20vw; height:2.6dvh; margin:1.2dvh 0 2.6dvh; }
  .about-copy > p { max-width:96%; font-size:min(1.2vw,2.15dvh); line-height:1.45; margin-bottom:1.5dvh; }
  .about .kpi-grid { margin-top:3.1dvh; gap:1.1vw; }
  .about .kpi { height:19dvh; padding:1.5dvh .5vw; border-radius:12px; }
  .about .kpi strong { font-size:min(4.5vw,8dvh); }
  .about .kpi span { font-size:min(1.55vw,2.65dvh); line-height:1.08; margin-top:1dvh; }
  .about .kpi span::before { height:1.5dvh; font-size:1.5dvh; margin-bottom:.6dvh; }
  .about .button-row { margin-top:3.7dvh; }
  .about .signal-button--wide { min-height:7.1dvh; font-size:min(1.8vw,3.15dvh); background:#0a0508a6; border-color:#ff0090; box-shadow:inset 0 1px 1px #ff8ecc,0 0 13px #ff00904a; }
  .music .brand-atmosphere { background:url('assets/reference-detail/music-atmosphere.png') center/100% 100% no-repeat; opacity:.36; }
  .music__inner { grid-template-columns:minmax(0,43fr) minmax(0,57fr); column-gap:2.3vw; grid-template-rows:6dvh 26dvh 37dvh 10dvh 5dvh 7dvh; padding-left:3.5vw; padding-right:8vw; }
  .music-heading h2 { font-size:min(7.9vw,14dvh); line-height:.96; letter-spacing:-.02em; }
  .music-heading .brush-copy.spray-copy { --spray-cap:min(2.12vw,3.75dvh); width:100%; height:4.9dvh; margin:.1dvh 0 1.1dvh; }
  .music-heading > p:not(.brush-copy) { font-size:min(1.04vw,1.9dvh); line-height:1.45; font-weight:400; color:#c7c7c7; text-transform:none; }
  .tour { justify-self:start; margin-left:1.1vw; width:78%; padding-top:1dvh; }
  .tour-list a { height:4.4dvh; }
  .tour-list span { font-family:var(--body); text-transform:none; letter-spacing:0; }
  .globe { width:113%; margin-left:-6.5%; height:calc(100% + 5dvh); margin-top:-3dvh; }
  .track-row { grid-template-columns:23px min(3.4vw,6dvh) minmax(0,1fr) 128px; padding:.7dvh .65vw; gap:.6vw; }
  .track-title strong { font-size:min(1.6vw,2.8dvh); }
  .signal-thanks { font-family:var(--body); text-transform:none; font-size:min(.93vw,1.65dvh); letter-spacing:0; }
  .free-downloads { gap:15px; background:#070305a6; }
  .contact .brand-atmosphere { opacity:.45; background-size:100% 100%; }
  .contact__inner { height:81dvh!important; padding:3.4dvh 8.4vw 2dvh 3.3vw; }
  .contact h2 { margin:3.9dvh 0 0 10vw; font-size:min(6.3vw,11.1dvh); line-height:1; }
  .contact .paint-strike { width:38vw; height:2.8dvh; margin:.7dvh auto 2.5dvh; }
  .contact-cards { width:78%; margin:2.5dvh 0 2.8dvh 15%; gap:1.5vw; }
  .contact-card { height:24.7dvh; padding:2.5dvh 1.7vw; grid-template-columns:min(4.1vw,7.2dvh) minmax(0,1fr); grid-template-rows:1fr auto auto; gap:0 1vw; }
  .contact-card .contact-icon { width:min(4.1vw,7.2dvh); height:min(4.1vw,7.2dvh); }
  .contact-card h3 { font-size:min(2.1vw,3.7dvh); }
  .contact-card p { font-size:min(.86vw,1.52dvh); line-height:1.4; white-space:normal; margin-top:.7dvh; }
  .contact-card .signal-button { min-height:5.7dvh; font-size:min(1.8vw,3.1dvh); margin-top:2.8dvh; }
  .crew-form { width:78%; margin-left:15%; height:25.5dvh; min-height:190px; padding:1.6dvh 1.4vw; gap:1.6vw; grid-template-columns:19% 1fr; }
  .crew-form > .press-photo { width:100%; height:21dvh; max-height:none; min-height:0; align-self:center; border:none; border-radius:50%; background:transparent; object-fit:contain; object-position:center; box-shadow:none; }
  .crew-form h3 { font-size:min(1.45vw,2.5dvh); line-height:1.15; margin-bottom:1.5dvh; }
  .crew-fields { gap:1dvh 1vw; }
  .crew-fields input:not([type=checkbox]) { min-height:34px; height:4.5dvh; font-size:min(.85vw,1.5dvh); }
  .crew-form .signal-button { min-height:4.7dvh; margin-top:1.1dvh; font-size:min(1.75vw,3dvh); }
  .contact-fluffy { height:55dvh; width:17vw; bottom:15.7dvh; }
  .site-footer { position:relative; grid-template-columns:1fr 1.4fr 1fr; min-height:19dvh; padding:2dvh 7.5vw 2dvh 3vw; }
  .footer-brand img,.footer-brand span { width:min(12vw,210px); }
  .footer-brand span { font-size:min(.75vw,1.3dvh); margin-top:8px; }
  .site-footer .socials { grid-area:auto; position:absolute; left:50%; top:43%; transform:translate(-50%,-50%); margin:0; justify-content:center; gap:10px; }
  .site-footer > p { grid-area:auto; position:absolute; left:50%; top:69%; transform:translateX(-50%); margin:0; font-size:min(.75vw,1.35dvh); white-space:nowrap; text-align:center; }
  .site-footer .languages { margin:0; align-self:center; }
  .site-footer .legal { justify-self:end; align-self:center; gap:12px; }
  .legal>*+* { padding-left:12px; }
  .legal a,.legal button { font-size:min(.9vw,1.7dvh); }
  .about-full__hero { height:min(72vw,730px); min-height:590px; }
  .about-full__hero > .press-photo { right:0; width:61%; height:100%; object-fit:contain; object-position:right bottom; mask-image:linear-gradient(0deg,transparent,#000 8%); }
  .about-full__hero > div { align-self:center; padding-left:0; }
  .about-full__hero h2 { font-size:clamp(90px,9.5vw,165px); }
  .about-full__hero .paint-strike { width:36%; min-width:300px; height:21px; margin:14px 0 25px; }
  .about-full__hero > div > img { width:min(25vw,370px); }
  .about-full .story-grid { grid-template-columns:minmax(0,1fr) minmax(260px,31%); gap:5vw; align-items:start; }
  .about-full .story-grid article p { font-size:17px; line-height:1.7; margin:0 0 22px; }
  .about-full .press-facts { position:sticky; top:24px; }
  .about-full .kpi-grid--four .kpi { height:150px; }
}
@media (max-width:600px) {
  .music-player.mini-player.is-revealed { width:calc(100vw - 36px); }
  .mini-cover { width:48px; height:48px; top:18px; left:10px; }
  .mini-player .mini-title { left:68px; font-size:12px; }
  .mini-player .mini-seek { left:68px; width:calc(100% - 145px); }
  .mini-player .mini-time { left:68px; bottom:19px; font-size:9px; }
  .mini-player .mini-volume { right:108px; }
  .mini-player .mini-volume input { width:37px; }
  .mini-player .mini-volume svg { display:none; }
  .about-artists.press-photo { object-fit:contain; object-position:right bottom; }
  .crew-form > .press-photo { object-fit:contain; border:0; background:none; border-radius:50%; }
}
@media (prefers-reduced-motion:reduce) { .mini-player .mini-equalizer { display:none; } }

@media (min-width:1101px) {
  .about .brand-atmosphere::after { content:""; position:absolute; inset:0; background:url('assets/reference-detail/music-atmosphere.png') center/100% 100%; opacity:.48; mask-image:linear-gradient(180deg,transparent 20%,#000 52%,transparent 100%); }
  .contact .crew-fields input:not([type=checkbox]) { background:#03030470; border-color:#a18a9659; }
}

/* 2026-09-07: requested KPI, audio ring and Hero detail pass. */
.kpi,.kpi * {
  -webkit-user-select:none;
  user-select:none;
  -webkit-touch-callout:none;
  cursor:default;
}
:is(#about,#about-full) .glass-card.kpi {
  transition:border-color 220ms ease-out,box-shadow 220ms ease-out;
  transform:none;
}
.kpi strong,.kpi span { transition:text-shadow 220ms ease-out; }
@media (hover:hover) and (pointer:fine) {
  :is(#about,#about-full) .glass-card.kpi:hover {
    border-color:#ffe5f3;
    box-shadow:inset 0 1px 2px #fff,inset 0 -1px 3px #ff0090cc,
      inset 0 0 28px #ff00902e,0 0 4px #ff84c9,0 0 22px #ff00907a,0 0 42px #ff009038;
  }
  :is(#about,#about-full) .glass-card.kpi:hover::before {
    background:radial-gradient(ellipse at var(--mx,50%) var(--my,50%),#ff3fa830,transparent 75%);
  }
  .kpi:hover strong { text-shadow:0 0 12px #ffffff70,0 0 25px #ff009085; }
  .kpi:hover span { text-shadow:0 0 14px #ff009080; }
}
#home.hero { background-color:#000; }
#home.hero > .brand-atmosphere,#home.hero > .atmosphere-drift { display:none; background:none; }
#home.hero > .section-video { background:#000; opacity:1; mix-blend-mode:normal; }
.music-player.mini-player,.music-player.mini-player.is-footer-safe,.route-open .music-player.mini-player {
  right:max(22px,env(safe-area-inset-right)); bottom:max(22px,env(safe-area-inset-bottom));
}
.mini-player .mini-equalizer { width:112px; height:112px; right:-23px; bottom:-23px; opacity:1; }
.mini-player.is-revealed .mini-equalizer { opacity:0; }

/* Full Bio: compact composition matched to the user's About Full reference. */
#about-full { --bio-width:1180px; }
#about-full .route-header { height:76px; padding:0 max(5vw,calc((100vw - var(--bio-width))/2)); gap:28px; }
#about-full .route-header a { min-width:156px; min-height:44px; font-size:19px; }
#about-full .route-header p { font-size:25px; }
#about-full .route-content,#about-full .about-full__hero { width:min(90vw,var(--bio-width)); }
#about-full .about-full__hero {
  height:clamp(360px,52dvh,480px); min-height:0; display:block; overflow:hidden;
}
#about-full .about-full__hero > div {
  width:47%; height:100%; padding:18px 0 24px; display:flex; flex-direction:column;
  justify-content:center; align-items:flex-start; z-index:2;
}
#about-full .about-full__hero h2 { font-size:clamp(76px,6.3vw,108px); line-height:1; white-space:nowrap; margin:0; }
#about-full .about-full__hero .paint-strike { width:clamp(276px,23vw,392px); min-width:0; max-width:100%; height:24px; margin:7px 0 14px; flex-shrink:0; }
#about-full .about-full__hero > div > img { width:clamp(230px,20vw,285px); height:auto; margin:0 0 10px; }
#about-full .about-full__hero > div > p { margin:0; font-size:17px; letter-spacing:.22em; line-height:1.3; }
#about-full .about-full__hero > .press-photo {
  top:0; right:-2%; bottom:auto; width:62%; height:100%;
  object-fit:cover; object-position:center top; opacity:1;
  mask-image:linear-gradient(#000 86%,transparent 100%);
}
/* Full Bio shares the main About heading treatment and one responsive KPI system. */
#about-full-title em { color:var(--pink); font-style:normal; }
#about-full-title .white-period { color:#fff; }
#about-full .kpi-grid--four { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:8px 0 36px; }
#about-full .kpi-grid--four .kpi {
  min-width:0; min-height:142px; max-height:none; height:auto; border-radius:9px; padding:20px 14px;
  display:grid; grid-template-columns:46px max-content; grid-template-areas:"icon number" "label label";
  justify-content:center; align-content:center; align-items:center; justify-items:center;
  column-gap:14px; row-gap:14px; text-align:center;
}
#about-full .bio-kpi-icon {
  grid-area:icon; display:block; width:46px; height:46px; color:var(--pink);
  filter:drop-shadow(0 2px 0 #71003f) drop-shadow(0 0 8px #ff009065);
}
#about-full .kpi-grid--four .kpi strong {
  grid-area:number; min-width:0; font-size:clamp(52px,4.2vw,64px); line-height:1;
  text-transform:uppercase; white-space:nowrap; letter-spacing:0;
}
#about-full .kpi-grid--four .kpi span {
  grid-area:label; margin:0; max-width:100%; font-size:18px; line-height:1.2;
  color:#f4e9ef; letter-spacing:.04em; text-wrap:balance;
}
#about-full .kpi-grid--four .kpi span::before { display:none; }
#about-full .bio-kpi-break { display:none; }
#about-full .story-grid { grid-template-columns:minmax(0,1fr) 300px; gap:44px; align-items:start; }
#about-full .story-grid h3,#about-full .timeline h3 { font-size:32px; line-height:1.1; margin:0 0 20px; }
#about-full .story-grid article p { font-family:var(--body); font-size:16px; line-height:1.65; margin:0 0 18px; max-width:78ch; }
#about-full .press-facts {
  align-self:start; display:block; padding:24px; border-radius:9px;
  position:sticky; top:22px; min-height:0; height:fit-content;
}
#about-full .story-grid article > p:last-child { margin-bottom:0; }
#about-full .press-facts dl { display:block; margin:0 0 20px; }
#about-full .press-facts dl > div { display:flex; flex-direction:column; gap:5px; margin:0; padding:12px 0; }
#about-full .press-facts dt { font:500 12px/1.3 var(--body); color:#b9aab3; letter-spacing:.12em; text-transform:uppercase; }
#about-full .press-facts dl > div:last-child { border-bottom:0; }
#about-full .press-facts h3 { font-size:28px; margin:0 0 10px; text-align:left; }
#about-full .press-facts dd { font:500 14px/1.5 var(--body); margin:0; overflow-wrap:anywhere; }
#about-full .press-facts .signal-button { font-size:20px; min-height:46px; }
#about-full .timeline { margin:48px 0; }
#about-full .timeline article { padding:0 18px; }
#about-full .timeline p { font-size:14px; line-height:1.45; }
#about-full .route-cta { padding:28px; margin-bottom:40px; }
#about-full .route-cta h3 { font-size:clamp(30px,3.2vw,46px); }
#about-full .route-cta > p { font-size:15px; margin:12px 0 22px; }
#about-full .route-cta > div { gap:14px; }
#about-full .route-cta .outline-button { min-width:180px; min-height:46px; font-size:20px; padding:10px 18px; }
@media (max-width:1000px) and (min-width:601px) {
  #about-full .about-full__hero { height:390px; }
  #about-full .about-full__hero h2 { font-size:8vw; }
  #about-full .about-full__hero .paint-strike { width:29vw; }
  #about-full .about-full__hero > div > img { width:220px; }
  #about-full .story-grid { grid-template-columns:minmax(0,1fr) 260px; gap:28px; }
}
@media (max-width:600px) {
  #about-full .route-header { height:66px; gap:18px; padding:0 20px; }
  #about-full .route-header a { min-width:110px; min-height:40px; font-size:17px; }
  #about-full .route-header p { font-size:21px; }
  #about-full .route-content,#about-full .about-full__hero { width:calc(100% - 40px); }
  #about-full .about-full__hero { height:auto; min-height:0; padding:0; overflow:visible; }
  #about-full .about-full__hero > div { width:100%; height:auto; justify-content:flex-start; padding:194px 0 0; }
  #about-full .about-full__hero > .press-photo { top:0; right:-20px; width:80%; height:260px; object-position:center 8%; mask-image:linear-gradient(#000 65%,transparent); }
  #about-full .about-full__hero h2 { font-size:clamp(56px,15vw,84px); position:relative; }
  #about-full .about-full__hero .paint-strike { width:70%; height:14px; margin:2px 0 10px; }
  #about-full .about-full__hero > div > img { width:150px; margin-bottom:6px; }
  #about-full .about-full__hero > div > p { font-size:12px; letter-spacing:.16em; }
  #about-full .story-grid { display:flex; flex-direction:column; gap:24px; }
  #about-full .story-grid h3,#about-full .timeline h3 { font-size:28px; }
  #about-full .story-grid article p { font-size:15px; line-height:1.65; }
  #about-full .press-facts { position:static; width:100%; }
  #about-full .timeline { margin:36px 0; }
  #about-full .route-cta { padding:24px 18px; margin-bottom:24px; }
  #about-full .route-cta > div { flex-direction:column; }
  #about-full .route-cta .outline-button { width:100%; min-width:0; }
}

@media (max-width:1000px) {
  #about-full .kpi-grid--four { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  #about-full .kpi-grid--four .kpi { min-height:138px; }
  #about-full .kpi-grid--four .kpi strong { font-size:58px; }
}
@media (max-width:600px) {
  #about-full .kpi-grid--four { gap:12px; margin:18px 0 28px; }
  #about-full .kpi-grid--four .kpi {
    min-height:170px; padding:16px 10px; grid-template-columns:minmax(0,1fr);
    grid-template-areas:"icon" "number" "label"; grid-template-rows:36px 50px 38px;
    row-gap:7px; column-gap:0;
  }
  #about-full .bio-kpi-icon { width:36px; height:36px; }
  #about-full .bio-kpi-break { display:block; }
  #about-full .kpi-grid--four .kpi strong { font-size:50px; }
  #about-full .kpi-grid--four .kpi span { font-size:16px; line-height:1.2; max-width:15ch; }
  #about-full .press-facts dl { grid-template-rows:none; gap:0; margin-bottom:20px; }
  #about-full .press-facts dl > div { padding:18px 0; }
}
@media (max-width:360px) {
  #about-full .kpi-grid--four .kpi strong { font-size:46px; }
  #about-full .kpi-grid--four .kpi span { font-size:15px; }
}

/* Six user-supplied milestones. The image rings intentionally remain empty. */
#about-full .timeline--milestones { margin:54px 0 58px; }
#about-full .timeline--milestones .timeline-heading { display:flex; align-items:baseline; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; margin-bottom:34px; }
#about-full .timeline--milestones .timeline-heading h3 { margin:0; }
#about-full .timeline-range { font:400 23px/1 var(--display); letter-spacing:.09em; color:var(--pink); white-space:nowrap; }
#about-full .timeline-milestones { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:40px 28px; }
#about-full .timeline-milestones > li { min-width:0; position:relative; }
#about-full .timeline-milestones > li::before {
  content:""; position:absolute; top:53px; left:-14px; right:-14px; height:1px;
  background:linear-gradient(90deg,#ff00901a,#ff009078,#ff00901a);
}
#about-full .timeline-milestones > li:nth-child(3n+1)::before { left:50%; }
#about-full .timeline-milestones > li:nth-child(3n)::before { right:50%; }
#about-full .timeline--milestones article {
  display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:auto 1fr;
  justify-items:center; align-items:start; gap:18px; min-width:0; height:100%;
  padding:0 12px; border:0; text-align:center;
}
#about-full .timeline-photo {
  position:relative; width:106px; height:106px; aspect-ratio:1; border:2px solid var(--pink);
  border-radius:50%; overflow:hidden; background:linear-gradient(145deg,#13070f,#020202 65%);
  box-shadow:0 0 0 1px #ffa6d84a,inset 0 0 12px #ff009034,0 0 12px #ff009080,0 0 30px #ff009025;
  transition:box-shadow 220ms ease;
}
#about-full .timeline-photo > img { display:block; width:100%; height:100%; object-fit:cover; border-radius:inherit; }
#about-full .timeline--milestones h4 { margin:0 0 11px; font:400 36px/1 var(--display); letter-spacing:.035em; color:#fff; }
#about-full .timeline.timeline--milestones p { margin:0; max-width:30ch; font:400 16px/1.6 var(--body); letter-spacing:0; color:#d1c9ce; text-transform:none; text-wrap:pretty; }
@media (hover:hover) and (pointer:fine) {
  #about-full .timeline--milestones article:hover .timeline-photo { box-shadow:0 0 0 1px #ffd7ed8c,inset 0 0 15px #ff00904a,0 0 18px #ff0090aa,0 0 38px #ff009044; }
}
@media (min-width:601px) and (max-width:1000px) {
  #about-full .timeline-milestones { grid-template-columns:repeat(2,minmax(0,1fr)); gap:36px 24px; }
  #about-full .timeline-milestones > li:nth-child(n)::before { left:-12px; right:-12px; }
  #about-full .timeline-milestones > li:nth-child(odd)::before { left:50%; }
  #about-full .timeline-milestones > li:nth-child(even)::before { right:50%; }
}
@media (max-width:600px) {
  #about-full .timeline--milestones .timeline-heading { align-items:flex-start; flex-direction:column; gap:14px; margin-bottom:30px; }
  #about-full .timeline-range { font-size:20px; }
  #about-full .timeline-milestones { grid-template-columns:minmax(0,1fr); gap:0; }
  #about-full .timeline-milestones > li:nth-child(n)::before { top:40px; bottom:-40px; left:39px; right:auto; height:auto; width:1px; background:linear-gradient(#ff00906e,#ff009023); }
  #about-full .timeline-milestones > li:last-child::before { display:none; }
  #about-full .timeline--milestones article { grid-template-columns:80px minmax(0,1fr); grid-template-rows:auto; gap:22px; padding:0 0 30px; text-align:left; justify-items:start; }
  #about-full .timeline-milestones > li:last-child article { padding-bottom:0; }
  #about-full .timeline-photo { width:80px; height:80px; }
  #about-full .timeline--milestones h4 { font-size:32px; margin:3px 0 9px; }
  #about-full .timeline.timeline--milestones p { max-width:none; font-size:16px; line-height:1.6; }
}
@media (max-width:360px) {
  #about-full .timeline--milestones article { grid-template-columns:64px minmax(0,1fr); gap:18px; }
  #about-full .timeline-photo { width:64px; height:64px; }
  #about-full .timeline-milestones > li:nth-child(n)::before { top:32px; bottom:-32px; left:31px; }
}
@media (prefers-reduced-motion:reduce) {
  #about-full .timeline-photo { transition:none; }
}
