:root{color-scheme:dark;--bg:#191d20;--panel:#22272a;--panel2:#292e31;--line:#454a4a;--text:#e9e6df;--muted:#a3a8a7;--dim:#747d7e;--gold:#c3b18c;--focus:#e9d6a7;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 18% 18%,#2b3133 0%,var(--bg) 58%,#15191c 100%);color:var(--text);min-height:100vh}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.site-shell{max-width:1320px;margin:auto;padding:0 clamp(18px,4vw,58px)}.masthead{min-height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #4a4d4a}.brand{text-decoration:none;color:var(--text);display:flex;align-items:center;gap:13px}.brand-symbol{color:var(--gold);font-size:30px;line-height:1}.brand strong{display:block;font-weight:600;font-size:13px;letter-spacing:.23em}.brand strong span{font-weight:300}.brand small{display:block;font-size:8px;letter-spacing:.19em;color:var(--muted);margin-top:7px}.header-edition,.eyebrow,.minor-label,.section-header,.panel-top,.deck-caption,.deck-topline,.deck-bottomline,.quality-tag,.selector-section label,.track-list-heading,footer,.playback-status{font-size:10px;letter-spacing:.18em}.header-edition{color:var(--muted)}.header-dot{color:var(--gold)}.intro{padding:55px 0 46px}.eyebrow{color:var(--gold);margin:0 0 10px}.intro h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(62px,8vw,108px);font-weight:400;letter-spacing:-.068em;line-height:1.02;margin:0}.title-mark{color:var(--gold)}.intro-line{font-family:Georgia,serif;color:#b8bab5;font-style:italic;font-size:clamp(16px,2vw,21px);margin:15px 0 0}.site-message{padding:13px 17px;border:1px solid #a7865b;background:#352f29;color:#f6d6a4;margin-bottom:20px;line-height:1.5}.player-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(350px,.94fr);gap:clamp(32px,4.5vw,70px);align-items:start;padding-bottom:90px}.turntable-area{position:sticky;top:24px}.deck{width:100%;position:relative;aspect-ratio:1/1.06;overflow:hidden;border:1px solid #6e7270;border-radius:12px;background:linear-gradient(138deg,#4a4f50 0%,#323738 49%,#272c2e 100%);box-shadow:0 21px 50px #090d0e66,inset 0 2px 1px #ffffff23,inset 0 -2px 1px #0008}.deck:after{content:"";position:absolute;inset:7px;border:1px solid #ffffff0c;border-radius:8px;pointer-events:none}.deck-topline,.deck-bottomline{position:absolute;z-index:4;left:6%;right:6%;display:flex;justify-content:space-between;align-items:center;color:#d6d6d0}.deck-topline{top:4%;letter-spacing:.17em}.deck-topline b{font-weight:300}.deck-bottomline{bottom:4.2%;font-size:9px;color:#c9cfcc}.selected-speed{display:inline-block;border:1px solid var(--gold);padding:5px 6px;color:#eee3cc;margin-left:10px;font-weight:500}.power-led,.tiny-led{width:6px;height:6px;display:inline-block;border-radius:50%;background:#b2c68a;box-shadow:0 0 8px #acc08b80;margin-right:9px}.platter{position:absolute;width:83%;aspect-ratio:1;left:4.2%;top:9%;border-radius:50%;background:repeating-conic-gradient(#858a89 0deg 2deg,#595e5e 2.2deg 4deg);box-shadow:0 5px 11px #05060699,inset 0 0 0 2px #9fa2a0;display:grid;place-items:center}.vinyl{position:relative;width:95%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 46% 42%,#383c3e 0%,#17191a 24%,#090b0d 52%,#1e2224 72%,#090b0c 98%);box-shadow:0 4px 13px #000b,inset 0 0 3px #5b6061;animation:record-spin 1.333333s linear infinite;animation-play-state:paused;display:grid;place-items:center}.deck.is-playing .vinyl{animation-play-state:running}.vinyl:before{content:"";position:absolute;inset:2%;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0,transparent 3px,#ffffff09 3.2px,#00000044 4px);mask-image:radial-gradient(circle,transparent 0 32%,black 33% 95%,transparent 97%)}.grooves{position:absolute;inset:14%;border-radius:50%;border:1px solid #ffffff10;box-shadow:0 0 0 7px #ffffff05,0 0 0 16px #00000022,0 0 0 24px #ffffff05}.record-label{width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 33% 26%,#e2d6bb,#c5b590 77%,#ab9872);box-shadow:inset 0 0 0 2px #827052aa,inset 0 0 0 6px #e2d4b31c,0 0 0 1px #070809;position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#34332c;padding:13% 8% 9%;gap:7%;overflow:hidden}.label-top{font-size:clamp(5px,.82vw,10px);font-weight:700;letter-spacing:.12em;white-space:nowrap}.label-rule{width:78%;height:1px;background:#7b6a4e}.label-title{font-family:Georgia,serif;font-size:clamp(11px,1.75vw,22px);line-height:1.05;overflow-wrap:anywhere;max-width:100%;max-height:40%;overflow:hidden}.label-bottom{font-size:clamp(4px,.68vw,8px);letter-spacing:.06em;line-height:1.3}.spindle{position:absolute;top:50%;left:50%;width:6px;height:6px;transform:translate(-50%,-50%);background:linear-gradient(#c9d0ce,#6c7170);border:1px solid #565c5b;border-radius:50%;box-shadow:0 1px 2px #0008}.tonearm{position:absolute;inset:0;z-index:3;pointer-events:none}.arm-pivot{position:absolute;right:7%;top:13%;width:10%;aspect-ratio:1;border:4px solid #838989;border-radius:50%;background:radial-gradient(circle,#353a3d 18%,#898e8f 23%,#43494b 50%,#abb0ac 55%,#555b5b 80%);box-shadow:0 3px 5px #0009}.arm-rod{position:absolute;right:11.4%;top:17%;width:5px;height:49%;background:linear-gradient(90deg,#626b6b,#e0e3df,#798282);transform-origin:top center;transform:rotate(19deg);border-radius:8px;box-shadow:2px 3px 3px #0008;transition:transform 1.1s ease}.arm-head{position:absolute;right:24%;top:59%;width:14px;height:34px;border-radius:3px;background:linear-gradient(90deg,#0c1011,#3c4143,#111);transform:rotate(19deg);box-shadow:2px 2px 3px #0008;transition:top 1.1s ease,right 1.1s ease,transform 1.1s ease}.deck.is-playing .arm-rod{transform:rotate(34deg)}.deck.is-playing .arm-head{right:31%;top:57%;transform:rotate(34deg)}.deck-caption{display:flex;justify-content:space-between;gap:8px;align-items:center;color:var(--dim);margin:18px 3px}.tiny-led{width:5px;height:5px;margin:0}.listening-panel{padding-top:3px}.panel-top,.section-header,.track-list-heading{display:flex;justify-content:space-between;align-items:center;color:var(--gold);font-weight:600}.panel-top{padding:0 0 23px;border-bottom:1px solid var(--line)}.quality-tag{font-weight:400;color:var(--muted)}.now-playing{display:flex;gap:20px;align-items:center;padding:25px 0}.cover-frame{width:103px;height:103px;flex-shrink:0;background:linear-gradient(135deg,#404443,#1b1e20);border:1px solid #5a5b55;display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 17px #0005}.cover-frame img{width:100%;height:100%;object-fit:cover}.cover-frame:has(img:not([hidden])) #cover-placeholder{display:none}#cover-placeholder{font-family:Georgia,serif;font-size:62px;color:var(--gold)}.minor-label{color:var(--gold);margin:0 0 8px}.now-copy h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(24px,2.6vw,37px);line-height:1.12;margin:0 0 9px;overflow-wrap:anywhere}.now-copy p:not(.minor-label){margin:0 0 5px;color:#d2d3cc;font-size:13px}.now-copy .album-subtitle{color:var(--dim)!important;font-style:italic}.audio-controls{border:1px solid #535958;background:linear-gradient(150deg,#303638,#252a2d);padding:18px 20px 12px;box-shadow:inset 0 1px 1px #ffffff18,0 8px 18px #0002}.progress-line{display:flex;align-items:center;gap:13px;font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}.progress-line span{min-width:35px}.progress-line span:last-child{text-align:right}input[type=range]{accent-color:var(--gold);cursor:pointer}#seek{width:100%;min-width:20px;height:4px}#seek:disabled{cursor:default}.transport-row{display:flex;align-items:center;justify-content:space-between;margin-top:21px;gap:10px}.transport{display:flex;align-items:center;gap:20px}.transport-button,.play-button{background:transparent;border:0;color:var(--text);display:grid;place-items:center;padding:0}.transport-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.play-button{background:#d9ceba;border:1px solid #eadfc8;border-radius:50%;width:54px;height:54px;color:#272b2c;box-shadow:0 2px 5px #0007,inset 0 2px 1px #fff6}.play-button svg{width:25px;height:25px;fill:currentColor;stroke:none}.volume-control{display:flex;align-items:center;gap:8px}.volume-control svg{width:19px;height:19px;fill:none;stroke:var(--muted);stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}.volume-control input{width:75px}.playback-status{min-height:12px;letter-spacing:.09em;color:var(--dim);margin:15px 0 0;font-size:9px}.selector-section{margin-top:34px}.section-header{border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:24px}.selector-section label{color:var(--muted);display:block;margin:0 0 9px}.select-wrap{position:relative}.select-wrap:after{content:"⌄";position:absolute;right:15px;top:12px;pointer-events:none;color:var(--gold);font-size:19px}.selector-section select{appearance:none;background:#292f31;border:1px solid #596060;border-radius:0;color:var(--text);width:100%;padding:15px 42px 15px 15px;font-size:14px}.track-list-heading{color:var(--muted);font-size:10px;margin-top:26px;margin-bottom:9px}.track-list{list-style:none;padding:0;margin:0}.track-list li{border-bottom:1px solid #393f40}.track-button{width:100%;display:flex;align-items:center;text-align:left;gap:15px;padding:15px 8px;background:none;border:0;color:var(--text)}.track-button:hover{background:#ffffff08}.track-button[aria-current=true]{background:#c3b18c12;color:#ebd6aa}.track-number{font-size:11px;color:var(--dim);width:23px;flex-shrink:0;font-variant-numeric:tabular-nums}.track-name{flex:1;font-size:14px}.track-duration{font-size:11px;color:var(--dim)}.notes{margin-top:37px}.notes .section-header{margin-bottom:17px}.notes h3{font-family:Georgia,serif;font-size:23px;font-weight:400;margin:0 0 11px}.notes p{font-size:14px;line-height:1.85;color:#b7bab5;margin:0}.album-description{border-top:1px solid #3d4344;margin-top:23px;padding-top:18px;color:#959e9b;font-size:12px;line-height:1.7}.album-description:empty{display:none}footer{border-top:1px solid #4a4d4a;min-height:130px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:var(--dim);font-size:9px}footer div{display:flex;flex-direction:column;gap:8px}footer strong{color:var(--gold);font-size:11px}footer div span{letter-spacing:.02em;text-transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes record-spin{to{transform:rotate(360deg)}}@media(max-width:920px){.player-layout{grid-template-columns:1fr;max-width:650px;margin:auto}.turntable-area{position:static}.intro{text-align:center}.deck{max-width:610px;margin:auto}.header-edition{display:none}.deck-caption{max-width:610px;margin:18px auto}.listening-panel{padding:0 0 20px}}@media(max-width:520px){.masthead{min-height:80px}.intro{padding:36px 0}.player-layout{gap:28px;padding-bottom:45px}.deck{aspect-ratio:1/1.09}.label-top{font-size:6px}.label-title{font-size:12px}.label-bottom{font-size:5px}.deck-caption{font-size:7px}.now-playing{gap:14px}.cover-frame{height:83px;width:83px}.now-copy h2{font-size:26px}.panel-top{font-size:9px}.audio-controls{padding:15px 12px}.transport{gap:13px}.volume-control input{width:55px}.section-header{font-size:9px}footer{flex-wrap:wrap;padding:25px 0;min-height:0;justify-content:flex-start}footer>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){.vinyl{animation:none!important}.arm-rod,.arm-head{transition:none}}

/* V1.1: unobtrusive artwork carousel alongside the isonome heading */
.intro-title-row{display:flex;align-items:center;gap:clamp(18px,3vw,42px);justify-content:flex-start}
.intro-title-row h1{margin-right:0}
.logo-slideshow{width:clamp(92px,11vw,148px);height:clamp(72px,8.5vw,108px);flex:none;border:1px solid #4a5050;background:linear-gradient(145deg,#313638,#1a1f21);display:grid;place-items:center;overflow:hidden;box-shadow:0 8px 22px #0004}
.logo-slideshow img{width:100%;height:100%;object-fit:contain;display:block;transition:opacity .5s ease}
.logo-slideshow img[hidden]{display:none}
#logo-fallback{font:italic 42px Georgia,serif;color:var(--gold)}
#logo-fallback[hidden]{display:none}
.contact-link{display:inline-block;margin-top:15px;color:var(--gold);font-size:12px;text-decoration:none;letter-spacing:.04em;border-bottom:1px solid #7b715c;padding-bottom:3px}
.contact-link:hover{color:var(--text);border-color:var(--text)}
@media(max-width:920px){.intro-title-row{justify-content:center}}
@media(max-width:520px){.intro-title-row{gap:16px}.logo-slideshow{width:86px;height:76px}.contact-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){.logo-slideshow img{transition:none}}


/* V1.3 — Fixed gallery viewport. Images must never resize the layout. */
.intro-title-row { min-width: 0; }
.logo-slideshow {
  position: relative;
  display: block;
  flex: 0 0 220px;
  width: 220px;
  min-width: 0;
  height: 160px;
  min-height: 0;
  max-width: 220px;
  max-height: 300px;
  overflow: hidden;
  isolation: isolate;
}
.logo-slideshow #logo-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
.logo-slideshow #logo-slide[hidden] { display: none; }
.logo-slideshow #logo-fallback {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (max-width: 650px) {
  .logo-slideshow {
    flex-basis: 110px;
    width: 110px;
    height: 90px;
    max-width: 110px;
  }
}
@media (max-width: 390px) {
  .logo-slideshow {
    flex-basis: 76px;
    width: 76px;
    height: 70px;
    max-width: 76px;
  }
}

/* V1.4: lock slideshow geometry, regardless of image intrinsic dimensions */
#logo-slideshow { box-sizing:border-box; position:relative; display:block; flex:0 0 220px; width:220px; min-width:220px; max-width:220px; height:160px; min-height:160px; max-height:160px; overflow:hidden; }
#logo-slideshow > img#logo-slide { box-sizing:border-box; display:block; position:absolute; inset:0; width:100%; height:100%; min-width:0; min-height:0; max-width:100%; max-height:100%; object-fit:contain; object-position:center; }
#logo-slideshow > img#logo-slide[hidden] { display:none; }
@media(max-width:520px) { #logo-slideshow { flex-basis:110px; width:110px; min-width:110px; max-width:110px; height:90px; min-height:90px; max-height:90px; } }
@media(max-width:390px) { #logo-slideshow { flex-basis:76px; width:76px; min-width:76px; max-width:76px; height:70px; min-height:70px; max-height:70px; } }

/* V1.5 — Align the gallery precisely with the listening-panel column.
   The right column is fluid; its actual width depends on the visitor's screen. */
.intro-title-row {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(350px, .94fr);
  column-gap: clamp(32px, 4.5vw, 70px);
  align-items: center;
  min-width: 0;
}
.intro-title-row > h1 { min-width:0; }
#logo-slideshow {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  max-width: none;
  height: 220px;
  min-height: 220px;
  max-height: 300px;
  overflow: hidden;
}
#logo-slideshow > img#logo-slide {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  object-position: center;
}
#logo-slideshow > img#logo-slide[hidden] { display: none; }
@media (max-width: 920px) {
  .intro-title-row {
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    gap: 24px;
    max-width: 650px;
    margin-inline: auto;
  }
  #logo-slideshow { width: 100%; height: 200px; min-height: 200px; }
}
@media (max-width: 520px) {
  .intro-title-row { gap: 16px; }
  #logo-slideshow { height: 150px; min-height: 150px; }
}
