:root{
  --bg:#050706;
  --panel:rgba(12,18,15,.72);
  --panel-strong:rgba(14,24,19,.92);
  --text:#effff5;
  --muted:#a7b8ad;
  --line:rgba(117,251,158,.18);
  --accent:#75fb9e;
  --accent-2:#b7ffd0;
  --shadow:0 30px 90px rgba(0,0,0,.45);
  --radius:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 75% 10%,rgba(117,251,158,.18),transparent 32%),linear-gradient(135deg,#050706 0%,#07100b 42%,#030403 100%);color:var(--text);font-family:Inter,system-ui,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
#signalCanvas{position:fixed;inset:0;width:100%;height:100%;z-index:-2;opacity:.55}.noise{position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}main{padding:0 clamp(18px,4vw,54px)}.section-grid{display:grid;grid-template-columns:minmax(90px,160px) minmax(0,1fr) minmax(250px,390px);gap:clamp(18px,2.4vw,30px);align-items:start}.hero{min-height:100svh;height:100svh;padding:clamp(18px,2.6vh,28px) 0 clamp(18px,3vh,30px);align-items:center;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden}.hero-nav{grid-column:1/-1;display:flex;justify-content:flex-end;gap:clamp(12px,1.6vw,22px);align-items:center;color:var(--muted);font-size:clamp(10px,1vw,12px);text-transform:uppercase;letter-spacing:.12em}.hero-nav a:hover{color:var(--text)}.hero-nav a:last-child{padding:9px 13px;border:1px solid var(--line);border-radius:999px;color:var(--accent);background:rgba(117,251,158,.07)}.eyebrow{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:clamp(12px,1.6vh,16px);color:var(--muted);text-transform:uppercase;letter-spacing:.16em;font-size:clamp(10px,.9vw,12px)}.kicker{color:var(--accent);font-weight:700;text-transform:uppercase;letter-spacing:.12em;font-size:13px}.hero h1,.section-heading h2,.identity h2,.experiments h2,.contact h2{font-family:"Space Grotesk",Inter,sans-serif;letter-spacing:-.055em}.hero h1{font-size:clamp(34px,5.7vw,74px);line-height:.94;margin:clamp(6px,1.1vh,10px) 0 clamp(10px,1.4vh,14px);max-width:780px}.lead{font-size:clamp(17px,1.65vw,23px);line-height:1.32;max-width:720px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;font-weight:800;border:1px solid var(--line)}.primary{background:var(--accent);color:#021006;border-color:transparent}.ghost{background:rgba(255,255,255,.04);color:var(--text)}.hero-actions,.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:clamp(18px,2.4vh,26px)}.signal-card{background:linear-gradient(180deg,rgba(117,251,158,.12),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:var(--radius);padding:clamp(16px,2vh,20px);box-shadow:var(--shadow);backdrop-filter:blur(20px);align-self:center;justify-self:center;width:min(100%,370px);max-height:calc(100svh - 185px);overflow:hidden}.signal-topline{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;letter-spacing:.14em}.orbital{position:relative;aspect-ratio:1;margin:clamp(16px,2.1vh,22px) auto;max-width:min(260px,31vh);display:grid;place-items:center}.ring,.core{position:absolute;border-radius:50%}.ring{border:1px solid var(--line);animation:spin 18s linear infinite}.ring-one{width:92%;height:92%;border-top-color:var(--accent)}.ring-two{width:68%;height:68%;animation-duration:13s;animation-direction:reverse;border-left-color:var(--accent)}.ring-three{width:40%;height:40%;animation-duration:9s;border-right-color:var(--accent)}.core{width:18%;height:18%;background:var(--accent);box-shadow:0 0 80px var(--accent)}.synth-core{border:0;cursor:pointer;transition:transform .25s ease, box-shadow .25s ease}.synth-core:hover{transform:scale(1.12);box-shadow:0 0 120px var(--accent)}.synth-card.active .synth-core{animation:corePulse 1s ease-in-out infinite}@keyframes corePulse{0%,100%{transform:scale(1);opacity:.78}50%{transform:scale(1.2);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.meter-list{display:grid;gap:14px}.meter-list div,.meter-list label{display:grid;gap:9px;color:var(--muted);font-size:13px}.meter-list span{display:flex;justify-content:space-between;gap:12px}.meter-list b{color:var(--accent);font-weight:800}.meter-list i{display:block;height:6px;border-radius:99px;background:linear-gradient(90deg,var(--accent) var(--w),rgba(255,255,255,.08) var(--w))}.synth-controls input{appearance:none;width:100%;height:7px;border-radius:999px;background:linear-gradient(90deg,var(--accent) var(--p,50%),rgba(255,255,255,.08) var(--p,50%));outline:none;cursor:pointer}.synth-controls input::-webkit-slider-thumb{appearance:none;width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--accent);box-shadow:0 0 24px rgba(117,251,158,.7)}.synth-controls input::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid var(--accent);box-shadow:0 0 24px rgba(117,251,158,.7)}.synth-hint{margin:clamp(12px,1.7vh,16px) 0 0;color:var(--muted);font-size:11px;text-align:center;letter-spacing:.08em;text-transform:uppercase}.compact{padding:92px 0;border-top:1px solid var(--line)}.section-label{color:var(--accent);font-weight:900;letter-spacing:.14em;text-transform:uppercase;font-size:12px}.large-text{font-size:clamp(26px,4vw,54px);line-height:1.02;letter-spacing:-.045em;margin:0}.side-note{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius);padding:24px;color:var(--muted);line-height:1.55}.capabilities{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.capabilities article,.audio-card{border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.035);padding:22px}.capabilities span{color:var(--accent);font-weight:900}.capabilities h3,.audio-card h3,.project-card h3{font-family:"Space Grotesk";font-size:24px;margin:16px 0 10px}.capabilities p,.project-card p,.audio-card p{color:var(--muted);line-height:1.55}.projects{padding:92px 0;border-top:1px solid var(--line)}.section-heading h2{font-size:clamp(42px,6vw,86px);line-height:.94;margin:0}.section-heading p{color:var(--muted);font-size:19px}.project-stack{display:grid;gap:16px;grid-column:2/-1}.project-card{display:grid;grid-template-columns:70px 1fr;gap:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel);padding:28px;backdrop-filter:blur(18px)}.project-card.featured{background:linear-gradient(135deg,rgba(117,251,158,.13),rgba(255,255,255,.045))}.project-index{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:rgba(117,251,158,.12);color:var(--accent);font-weight:900}.project-type{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)!important}.project-card ul{display:flex;gap:10px;flex-wrap:wrap;list-style:none;padding:0;margin:18px 0 0}.project-card li,.tag-cloud span{border:1px solid var(--line);border-radius:99px;padding:8px 12px;color:var(--accent-2);background:rgba(117,251,158,.06);font-size:13px}.listening-room{padding:100px 0;border-top:1px solid var(--line)}.centered{text-align:center;max-width:760px;margin:0 auto 36px}.audio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.wave{height:78px;display:flex;align-items:end;gap:8px;margin-bottom:24px}.wave span{width:100%;border-radius:99px;background:var(--accent);opacity:.8;animation:wave 1.4s ease-in-out infinite}.wave span:nth-child(1){height:34%}.wave span:nth-child(2){height:74%;animation-delay:.1s}.wave span:nth-child(3){height:46%;animation-delay:.2s}.wave span:nth-child(4){height:92%;animation-delay:.3s}.wave span:nth-child(5){height:54%;animation-delay:.4s}.wave span:nth-child(6){height:76%;animation-delay:.5s}.wave span:nth-child(7){height:38%;animation-delay:.6s}@keyframes wave{50%{transform:scaleY(.38);opacity:.35}}.play-button{margin-top:18px;border:1px solid var(--line);background:rgba(117,251,158,.08);color:var(--accent);border-radius:999px;padding:12px 16px;font-weight:800;cursor:pointer}.demo-note{text-align:center;color:var(--muted);font-size:13px}.tag-cloud{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}.pulse{box-shadow:0 0 0 0 rgba(117,251,158,.24);animation:pulse 2.6s infinite}@keyframes pulse{70%{box-shadow:0 0 0 18px rgba(117,251,158,0)}}.manifesto{max-width:980px;margin:40px auto 100px;text-align:center;font-family:"Space Grotesk";font-size:clamp(26px,4vw,54px);line-height:1.05;letter-spacing:-.045em}.manifesto p{margin:28px 0}.contact{border:1px solid var(--line);border-radius:36px;background:linear-gradient(135deg,rgba(117,251,158,.14),rgba(255,255,255,.035));padding:clamp(28px,6vw,76px);margin-bottom:60px}.contact h2{font-size:clamp(36px,6vw,78px);line-height:.98;margin:0;max-width:1100px}footer{display:flex;justify-content:space-between;gap:20px;padding:26px clamp(18px,4vw,54px);color:var(--muted);border-top:1px solid var(--line)}.mini-player{position:fixed;left:50%;bottom:22px;transform:translate(-50%,130%);display:flex;align-items:center;gap:16px;z-index:80;padding:12px 14px 12px 18px;border:1px solid var(--line);border-radius:999px;background:rgba(5,7,6,.82);backdrop-filter:blur(18px);box-shadow:var(--shadow);transition:.35s ease}.mini-player.show{transform:translate(-50%,0)}.mini-player button{border:0;background:rgba(255,255,255,.08);color:var(--text);width:28px;height:28px;border-radius:50%;cursor:pointer}

/* Live Signal reactive animation layer */
.synth-card{--distort-intensity:0;--delay-intensity:.22}.orbital{isolation:isolate}.ring{transition:filter .25s ease, box-shadow .25s ease, opacity .25s ease}.ring::before,.ring::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:1px solid rgba(117,251,158,.32);opacity:0;transform:scale(1);filter:blur(0)}.synth-card.distortion-on.active .ring{filter:drop-shadow(0 0 calc(4px + 18px * var(--distort-intensity)) rgba(117,251,158,.55));box-shadow:0 0 calc(4px + 24px * var(--distort-intensity)) rgba(117,251,158,.18);animation-name:spin,electricRing;animation-duration:18s,calc(.34s - .16s * var(--distort-intensity));animation-timing-function:linear,steps(2,end);animation-iteration-count:infinite,infinite}.synth-card.distortion-on.active .ring-two{animation-duration:13s,calc(.3s - .14s * var(--distort-intensity));animation-direction:reverse,normal}.synth-card.distortion-on.active .ring-three{animation-duration:9s,calc(.26s - .12s * var(--distort-intensity))}@keyframes electricRing{0%,100%{translate:0 0;clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}25%{translate:calc(1px + 4px * var(--distort-intensity)) calc(-1px - 3px * var(--distort-intensity));clip-path:polygon(0 6%,100% 0,94% 100%,5% 92%)}50%{translate:calc(-1px - 3px * var(--distort-intensity)) calc(1px + 3px * var(--distort-intensity));clip-path:polygon(5% 0,93% 8%,100% 94%,0 100%)}75%{translate:calc(1px + 2px * var(--distort-intensity)) calc(1px + 2px * var(--distort-intensity));clip-path:polygon(0 0,96% 5%,100% 100%,8% 96%)}}
.synth-card.delay-on.active .ring::before{opacity:calc(.12 + .38 * var(--delay-intensity));animation:delayRing 1.55s ease-out infinite}.synth-card.delay-on.active .ring::after{opacity:calc(.08 + .25 * var(--delay-intensity));animation:delayRing 1.55s ease-out .42s infinite}.synth-card.delay-on.active .ring-one::before,.synth-card.delay-on.active .ring-one::after{filter:blur(calc(2px + 8px * var(--delay-intensity)))}.synth-card.delay-on.active .ring-two::before,.synth-card.delay-on.active .ring-two::after{filter:blur(calc(1px + 6px * var(--delay-intensity)))}.synth-card.delay-on.active .ring-three::before,.synth-card.delay-on.active .ring-three::after{filter:blur(calc(1px + 4px * var(--delay-intensity)))}@keyframes delayRing{0%{transform:scale(1);opacity:calc(.2 + .32 * var(--delay-intensity))}100%{transform:scale(calc(1.12 + .28 * var(--delay-intensity)));opacity:0}}
.synth-core{overflow:visible;z-index:5}.synth-core::before,.synth-core::after{content:"";position:absolute;inset:0;border-radius:50%;background:var(--accent);box-shadow:0 0 70px rgba(117,251,158,.55);opacity:0;pointer-events:none}.synth-card.delay-on.active .synth-core::before{animation:coreEcho 1.15s ease-out infinite;opacity:calc(.1 + .38 * var(--delay-intensity))}.synth-card.delay-on.active .synth-core::after{animation:coreEcho 1.15s ease-out .38s infinite;opacity:calc(.08 + .28 * var(--delay-intensity))}@keyframes coreEcho{0%{transform:scale(1);opacity:calc(.2 + .38 * var(--delay-intensity));filter:blur(0)}100%{transform:scale(calc(2.1 + 2.4 * var(--delay-intensity)));opacity:0;filter:blur(calc(2px + 8px * var(--delay-intensity)))}}
.synth-card.kick-start .synth-core{animation:kickCore .42s cubic-bezier(.16,1,.3,1) 1!important}.synth-card.kick-start .ring-one{animation:kickRing .42s cubic-bezier(.16,1,.3,1) 1, spin 18s linear infinite}.synth-card.kick-start .ring-two{animation:kickRing .42s cubic-bezier(.16,1,.3,1) .035s 1, spin 13s linear infinite reverse}.synth-card.kick-start .ring-three{animation:kickRing .42s cubic-bezier(.16,1,.3,1) .07s 1, spin 9s linear infinite}@keyframes kickCore{0%{transform:scale(.72);box-shadow:0 0 30px var(--accent)}28%{transform:scale(1.55);box-shadow:0 0 140px var(--accent)}100%{transform:scale(1);box-shadow:0 0 80px var(--accent)}}@keyframes kickRing{0%{transform:scale(.82);filter:brightness(1.4)}42%{transform:scale(1.08);filter:brightness(2.3)}100%{transform:scale(1);filter:brightness(1)}}

@media(max-width:980px){.hero-nav{justify-content:flex-start;overflow:auto;padding-bottom:6px}.section-grid{grid-template-columns:1fr}.hero{padding-top:54px}.eyebrow{gap:14px;flex-direction:column}.signal-card{max-width:520px}.capabilities,.audio-grid{grid-template-columns:1fr 1fr}.project-stack{grid-column:1}.project-card{grid-template-columns:1fr}.large-text{font-size:34px}}
@media(max-width:640px){.capabilities,.audio-grid{grid-template-columns:1fr}.hero h1{font-size:42px;line-height:.98}.button{width:100%}footer{flex-direction:column}.manifesto{text-align:left}.contact{border-radius:24px}.mini-player{width:calc(100% - 28px);justify-content:space-between}}

/* v5: Vintage valve-console knobs for LIVE SIGNAL */
.tube-console{
  position:relative;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-top:16px;
  padding:16px 14px 14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:
    radial-gradient(circle at 22% 0%, rgba(117,251,158,.13), transparent 34%),
    linear-gradient(180deg, rgba(27,22,16,.58), rgba(5,7,6,.66));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), inset 0 -18px 45px rgba(0,0,0,.28), 0 18px 50px rgba(0,0,0,.2);
}
.tube-console::before{
  content:"VALVE CONTROL MATRIX";
  position:absolute;
  left:16px;
  top:-9px;
  padding:0 9px;
  color:rgba(117,251,158,.74);
  background:#080a09;
  font-size:9px;
  font-weight:900;
  letter-spacing:.16em;
}
.knob-control{display:grid!important;gap:10px!important;place-items:center;color:var(--muted);font-size:11px!important;text-transform:uppercase;letter-spacing:.1em;user-select:none}
.knob-control span{display:grid!important;justify-items:center;gap:2px;line-height:1.15;text-align:center}
.knob-control b{color:var(--accent);font-size:12px;letter-spacing:.02em;text-shadow:0 0 18px rgba(117,251,158,.42)}
.knob-shell{position:relative;width:58px;height:58px;display:grid;place-items:center;touch-action:none;cursor:ns-resize}
.knob-shell::before{
  content:"";
  position:absolute;
  inset:-8px;
  border-radius:50%;
  background:conic-gradient(from 225deg, rgba(117,251,158,.86) 0deg var(--knob-progress,135deg), rgba(255,255,255,.08) var(--knob-progress,135deg) 270deg, transparent 270deg 360deg);
  -webkit-mask:radial-gradient(circle, transparent 58%, #000 61%);
  mask:radial-gradient(circle, transparent 58%, #000 61%);
  filter:drop-shadow(0 0 10px rgba(117,251,158,.22));
  opacity:.95;
}
.knob-shell::after{
  content:"";
  position:absolute;
  inset:-13px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.06);
  box-shadow:inset 0 0 18px rgba(0,0,0,.34);
  pointer-events:none;
}
.knob-shell input{
  appearance:none!important;
  position:absolute!important;
  inset:-8px!important;
  width:calc(100% + 16px)!important;
  height:calc(100% + 16px)!important;
  opacity:0!important;
  cursor:ns-resize!important;
  z-index:3;
}
.knob{
  position:relative;
  width:52px;
  height:52px;
  border-radius:50%;
  transform:rotate(var(--knob-angle,0deg));
  background:
    radial-gradient(circle at 35% 28%, rgba(255,255,255,.32), transparent 18%),
    radial-gradient(circle at 50% 56%, rgba(117,251,158,.16), transparent 42%),
    linear-gradient(145deg, #3c3328, #100f0d 54%, #040504);
  border:1px solid rgba(255,255,255,.16);
  box-shadow:inset 8px 8px 14px rgba(255,255,255,.035), inset -10px -12px 20px rgba(0,0,0,.65), 0 10px 24px rgba(0,0,0,.38), 0 0 22px rgba(117,251,158,.08);
}
.knob i{
  position:absolute;
  top:6px;
  left:50%;
  width:3px;
  height:14px;
  border-radius:99px;
  transform:translateX(-50%);
  background:linear-gradient(180deg, var(--accent), rgba(255,255,255,.42));
  box-shadow:0 0 12px rgba(117,251,158,.75);
}
.knob-control:hover .knob{box-shadow:inset 8px 8px 14px rgba(255,255,255,.04), inset -10px -12px 20px rgba(0,0,0,.65), 0 12px 28px rgba(0,0,0,.42), 0 0 32px rgba(117,251,158,.18)}
.synth-card.active .tube-console{box-shadow:inset 0 1px 0 rgba(255,255,255,.08), inset 0 -18px 45px rgba(0,0,0,.28), 0 0 55px rgba(117,251,158,.08)}
@media (max-width:720px){.tube-console{grid-template-columns:repeat(2,1fr);gap:18px 12px}.knob-shell{width:64px;height:64px}.knob{width:58px;height:58px}}


/* v6: full-screen hero fit */
.hero-copy{align-self:center}
.tube-console{gap:clamp(10px,1.5vh,14px)!important}
.knob-control{min-width:0}
.knob-control span{font-size:clamp(10px,.9vw,12px)!important}
.knob-shell{width:clamp(58px,7.2vh,74px)!important;height:clamp(58px,7.2vh,74px)!important}
.knob{width:clamp(48px,5.8vh,62px)!important;height:clamp(48px,5.8vh,62px)!important}
@media(max-height:760px) and (min-width:981px){.hero h1{font-size:clamp(32px,5vw,64px)}.lead{font-size:clamp(16px,1.45vw,20px)}.button{min-height:42px;padding:0 16px}.signal-card{width:min(100%,345px);max-height:calc(100svh - 150px)}.orbital{max-width:min(220px,29vh)}.synth-hint{display:none}}
@media(max-width:980px){.hero{height:auto;min-height:100svh;overflow:visible}}


/* v8: stacked hero headline with Live Signal on the right */
@media (min-width:981px){
  .hero.section-grid{
    grid-template-columns:minmax(0,1.06fr) minmax(360px,.74fr);
    column-gap:clamp(30px,5vw,82px);
  }
  .hero-copy{
    grid-column:1;
    max-width:760px;
    justify-self:start;
  }
  .signal-card{
    grid-column:2;
    justify-self:end;
    align-self:center;
  }
  .stacked-hero-title{
    max-width:760px;
    font-size:clamp(56px,7.2vw,106px);
    line-height:.84;
    letter-spacing:-.07em;
    margin:clamp(8px,1.3vh,12px) 0 clamp(12px,1.7vh,18px);
  }
  .stacked-hero-title span{
    display:block;
  }
  .lead{
    max-width:610px;
  }
}
@media (max-height:760px) and (min-width:981px){
  .stacked-hero-title{font-size:clamp(48px,6.2vw,86px);line-height:.84}
}
@media (max-width:980px){
  .stacked-hero-title span{display:inline}
  .stacked-hero-title span:not(:last-child)::after{content:" "}
}

/* v9 refinements: stronger hero composition, professional links card and consolidated footer */
@media (min-width:981px){
  main{
    padding-left:clamp(34px,6.2vw,104px);
    padding-right:clamp(34px,6.2vw,104px);
  }
  .hero.section-grid{
    width:min(100%,1260px);
    margin:0 auto;
    grid-template-columns:minmax(0,.98fr) minmax(360px,420px);
    column-gap:clamp(24px,3.4vw,54px);
  }
  .hero-copy{
    justify-self:end;
    max-width:740px;
  }
  .signal-card{
    justify-self:start;
  }
  .stacked-hero-title{
    font-size:clamp(66px,8.15vw,122px);
    line-height:.805;
    max-width:820px;
  }
  .lead{
    max-width:650px;
  }
}

.profile-links-card{
  border:1px solid var(--line);
  background:linear-gradient(180deg,rgba(117,251,158,.105),rgba(255,255,255,.035));
  border-radius:var(--radius);
  padding:22px;
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  backdrop-filter:blur(18px);
  display:grid;
  gap:10px;
}
.profile-links-title{
  margin:0 0 8px;
  color:var(--muted);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:800;
}
.profile-links-card a{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:13px 14px;
  border:1px solid rgba(255,255,255,.095);
  border-radius:16px;
  background:rgba(255,255,255,.035);
  color:var(--text);
  font-weight:800;
  transition:transform .25s ease,border-color .25s ease,background .25s ease;
}
.profile-links-card a span{
  color:var(--muted);
  font-size:12px;
  font-weight:600;
  text-align:right;
}
.profile-links-card a:hover{
  transform:translateY(-2px);
  border-color:rgba(117,251,158,.42);
  background:rgba(117,251,158,.075);
}
.profile-links-card .cv-link{
  color:var(--accent);
  background:rgba(117,251,158,.09);
}

.site-footer{
  display:grid;
  grid-template-columns:1.35fr .8fr .8fr 1fr;
  gap:clamp(22px,4vw,56px);
  padding:46px clamp(18px,4vw,54px) 40px;
  color:var(--muted);
  border-top:1px solid var(--line);
  background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(117,251,158,.035));
}
.footer-brand strong{
  display:block;
  font-family:"Space Grotesk",Inter,sans-serif;
  color:var(--text);
  font-size:clamp(30px,3vw,48px);
  letter-spacing:-.06em;
  margin-bottom:12px;
}
.footer-brand p{
  max-width:390px;
  line-height:1.55;
  margin:0;
}
.footer-column{
  display:grid;
  align-content:start;
  gap:9px;
}
.footer-column span{
  color:var(--accent);
  font-size:11px;
  letter-spacing:.16em;
  text-transform:uppercase;
  font-weight:900;
  margin-bottom:8px;
}
.footer-column a,.footer-column p{
  margin:0;
  color:var(--muted);
  font-size:14px;
}
.footer-column a:hover{color:var(--text)}
.footer-contact small{
  margin-top:18px;
  font-size:12px;
  color:rgba(238,245,239,.48);
}

@media(max-width:980px){
  .profile-links-card{margin-top:4px}
  .site-footer{grid-template-columns:1fr 1fr;padding:36px 18px}
}
@media(max-width:640px){
  .profile-links-card a{align-items:flex-start;flex-direction:column;gap:4px}
  .profile-links-card a span{text-align:left}
  .site-footer{grid-template-columns:1fr}
}

/* Insights editorial section */
.insights {
  padding-top: clamp(3.5rem, 7vw, 7rem);
  padding-bottom: clamp(3.5rem, 7vw, 7rem);
}
.insights-panel {
  grid-column: 2 / -1;
  border: 1px solid rgba(117, 251, 158, 0.18);
  background: linear-gradient(135deg, rgba(255,255,255,0.055), rgba(117,251,158,0.035));
  border-radius: 28px;
  padding: clamp(1rem, 2vw, 1.6rem);
  box-shadow: 0 24px 80px rgba(0,0,0,.32), inset 0 1px 0 rgba(255,255,255,.06);
}
.insights-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap: 1rem;
  padding: .35rem .35rem 1.1rem;
  color: rgba(255,255,255,.62);
  text-transform: uppercase;
  letter-spacing: .18em;
  font-size: .72rem;
  font-weight: 800;
}
.portal-link {
  color: var(--accent);
  text-decoration: none;
  border: 1px solid rgba(117,251,158,.22);
  border-radius: 999px;
  padding: .55rem .8rem;
  background: rgba(117,251,158,.055);
}
.insights-grid {
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1rem;
}
.insight-card {
  min-height: 255px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 22px;
  padding: 1.25rem;
  background: radial-gradient(circle at 20% 0%, rgba(117,251,158,.13), transparent 38%), rgba(5, 7, 9, .62);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
}
.insight-card h3 {
  margin: .85rem 0;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  line-height: .98;
  letter-spacing: -.055em;
}
.insight-card p { color: rgba(255,255,255,.68); }
.insight-meta, .insight-card span {
  color: var(--accent) !important;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-size: .68rem;
  font-weight: 800;
}
.insight-card a {
  color: var(--accent);
  text-decoration:none;
  font-weight:800;
}
@media (max-width: 900px){
  .insights-panel { grid-column: 1 / -1; }
  .insights-grid { grid-template-columns: 1fr; }
}


/* v13: Mobile sandwich menu for the portfolio home */
.mobile-menu-toggle{
  display:none;
  position:fixed;
  top:16px;
  right:16px;
  z-index:130;
  width:48px;
  height:48px;
  border:1px solid rgba(117,251,158,.28);
  border-radius:999px;
  background:rgba(5,7,6,.72);
  box-shadow:0 18px 50px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(18px);
  cursor:pointer;
}
.mobile-menu-toggle span{
  position:absolute;
  left:14px;
  width:18px;
  height:2px;
  border-radius:99px;
  background:var(--accent);
  box-shadow:0 0 14px rgba(117,251,158,.65);
  transition:transform .25s ease, opacity .2s ease, top .25s ease;
}
.mobile-menu-toggle span:nth-child(1){top:16px}
.mobile-menu-toggle span:nth-child(2){top:23px}
.mobile-menu-toggle span:nth-child(3){top:30px}
.mobile-menu-open .mobile-menu-toggle span:nth-child(1){top:23px;transform:rotate(45deg)}
.mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0;transform:translateX(6px)}
.mobile-menu-open .mobile-menu-toggle span:nth-child(3){top:23px;transform:rotate(-45deg)}

@media(max-width:980px){
  .mobile-menu-toggle{display:block}
  .hero-nav{
    position:fixed;
    inset:0;
    z-index:120;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:stretch;
    gap:10px;
    padding:86px 24px 28px;
    overflow:hidden;
    background:
      radial-gradient(circle at 80% 18%, rgba(117,251,158,.18), transparent 30%),
      linear-gradient(180deg, rgba(5,7,6,.96), rgba(5,7,6,.91));
    border:0;
    transform:translateY(-102%);
    opacity:0;
    pointer-events:none;
    transition:transform .38s cubic-bezier(.16,1,.3,1), opacity .25s ease;
    backdrop-filter:blur(24px);
  }
  .mobile-menu-open .hero-nav{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .hero-nav a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:52px;
    padding:0 2px;
    border-bottom:1px solid rgba(255,255,255,.09);
    color:var(--text);
    font-size:clamp(19px,5vw,28px);
    letter-spacing:-.02em;
    text-transform:none;
    font-family:"Space Grotesk",Inter,sans-serif;
  }
  .hero-nav a::after{
    content:"→";
    color:var(--accent);
    font-size:.9em;
    opacity:.72;
  }
  .hero-nav a:last-child{
    margin-top:14px;
    min-height:56px;
    justify-content:center;
    border:1px solid rgba(117,251,158,.28);
    border-radius:999px;
    padding:0 18px;
    color:#021006;
    background:var(--accent);
    font-size:18px;
    font-family:Inter,sans-serif;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .hero-nav a:last-child::after{content:""}
  body.mobile-menu-open{overflow:hidden}
}

@media(max-width:640px){
  main{padding:0 18px}
  .hero{padding-top:78px}
  .mobile-menu-toggle{top:14px;right:14px}
}

/* v14: corrected mobile sandwich menu visibility */
@media(max-width:980px){
  .mobile-menu-toggle{
    display:flex !important;
    position:fixed !important;
    top:16px !important;
    right:16px !important;
    z-index:999 !important;
    width:58px !important;
    height:46px !important;
    padding:0 !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:column !important;
    gap:5px !important;
    border:1px solid rgba(117,251,158,.42) !important;
    border-radius:999px !important;
    background:rgba(5,7,6,.88) !important;
    box-shadow:0 18px 55px rgba(0,0,0,.42),0 0 22px rgba(117,251,158,.10),inset 0 1px 0 rgba(255,255,255,.08) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
    cursor:pointer !important;
  }
  .mobile-menu-toggle span{
    position:static !important;
    display:block !important;
    width:22px !important;
    height:2px !important;
    min-height:2px !important;
    border-radius:99px !important;
    background:#75fb9e !important;
    box-shadow:0 0 12px rgba(117,251,158,.78) !important;
    opacity:1 !important;
    transform:none !important;
    transition:transform .25s ease, opacity .2s ease, width .25s ease !important;
  }
  .mobile-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg) !important;}
  .mobile-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0 !important;width:8px !important;}
  .mobile-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg) !important;}

  .hero-nav{
    position:fixed !important;
    inset:0 !important;
    z-index:920 !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:10px !important;
    padding:92px 24px 30px !important;
    overflow:hidden !important;
    transform:translateY(-104%) !important;
    opacity:0 !important;
    pointer-events:none !important;
    background:radial-gradient(circle at 78% 18%,rgba(117,251,158,.19),transparent 32%),linear-gradient(180deg,rgba(5,7,6,.98),rgba(5,7,6,.94)) !important;
    transition:transform .36s cubic-bezier(.16,1,.3,1),opacity .22s ease !important;
    backdrop-filter:blur(24px) !important;
    -webkit-backdrop-filter:blur(24px) !important;
  }
  .mobile-menu-open .hero-nav{
    transform:translateY(0) !important;
    opacity:1 !important;
    pointer-events:auto !important;
  }
  .hero{padding-top:72px !important;}
}

@media(max-width:640px){
  .mobile-menu-toggle{top:14px !important;right:14px !important;width:56px !important;height:44px !important;}
}

/* v15: remove the divider line under the mobile sandwich area only */
@media(max-width:980px){
  .eyebrow{
    border-top:0 !important;
  }
}


/* v16: definitive mobile-only removal of the divider between menu button and hero content */
@media (max-width: 980px){
  .hero,
  .hero.section-grid,
  .eyebrow,
  .hero-nav{
    border-top: 0 !important;
  }

  .hero::before,
  .hero::after,
  .hero.section-grid::before,
  .hero.section-grid::after,
  .eyebrow::before,
  .eyebrow::after{
    content: none !important;
    display: none !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .eyebrow{
    padding-top: 0 !important;
    margin-top: 0 !important;
    background-image: none !important;
    box-shadow: none !important;
  }
}

/* Listening Room audio player controls - v17 */
.audio-card{position:relative;overflow:hidden;transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease}.audio-card.is-playing{border-color:rgba(117,251,158,.58);background:linear-gradient(180deg,rgba(117,251,158,.105),rgba(255,255,255,.035));box-shadow:0 24px 80px rgba(0,0,0,.32),0 0 0 1px rgba(117,251,158,.08) inset}.audio-card.is-playing .wave span{animation-duration:.72s;opacity:1}.audio-card.is-paused{border-color:rgba(255,255,255,.18)}.audio-console{margin-top:22px;display:grid;grid-template-columns:auto 1fr;gap:13px 14px;align-items:center}.audio-play{margin:0;min-width:112px;min-height:46px;display:inline-flex;gap:10px;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(117,251,158,.18),rgba(255,255,255,.045));border-color:rgba(117,251,158,.28);box-shadow:0 10px 28px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .22s ease,background .22s ease,border-color .22s ease}.audio-play:hover{transform:translateY(-1px);border-color:rgba(117,251,158,.68);background:linear-gradient(135deg,rgba(117,251,158,.28),rgba(255,255,255,.06))}.play-icon{width:21px;height:21px;border-radius:50%;border:1px solid rgba(117,251,158,.45);background:rgba(117,251,158,.12);position:relative;box-shadow:0 0 24px rgba(117,251,158,.22)}.play-icon::before{content:"";position:absolute;left:8px;top:5px;border-left:7px solid var(--accent);border-top:5px solid transparent;border-bottom:5px solid transparent}.audio-card.is-playing .play-icon::before{left:6px;top:5px;width:3px;height:10px;border:0;background:var(--accent);box-shadow:6px 0 0 var(--accent)}.audio-status{display:flex;justify-content:space-between;gap:10px;align-items:center;min-width:0;color:var(--muted);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.status-text{color:var(--accent);font-weight:800;white-space:nowrap}.time-text{font-variant-numeric:tabular-nums;white-space:nowrap}.audio-progress{grid-column:1/-1;height:7px;border-radius:999px;background:rgba(255,255,255,.075);overflow:hidden;border:1px solid rgba(255,255,255,.06)}.audio-progress span{display:block;width:var(--progress,0%);height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),rgba(232,255,239,.9));box-shadow:0 0 24px rgba(117,251,158,.5);transition:width .12s linear}.audio-card.audio-error{border-color:rgba(255,150,120,.38)}.audio-card.audio-error .status-text{color:#ffb39c}.demo-note strong{color:var(--accent);font-weight:800}@media(max-width:760px){.audio-console{grid-template-columns:1fr}.audio-play{width:100%}.audio-status{font-size:11px}.audio-progress{grid-column:auto}}


/* Listening Room language badges */
.audio-badges{
  display:flex;
  align-items:center;
  gap:8px;
  margin:8px 0 14px;
}
.audio-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:36px;
  height:24px;
  padding:0 10px;
  border:1px solid rgba(117,251,158,.36);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(117,251,158,.13),rgba(255,255,255,.035));
  color:var(--accent);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  box-shadow:0 0 22px rgba(117,251,158,.08), inset 0 1px 0 rgba(255,255,255,.08);
}
