/* Jay Bones — edit these colours to change the site's palette. */
:root{--ink:#17241d;--paper:#f1ecdf;--green:#bce65c;--purple:#b398d1;--muted:#b8c2b7;--line:#4b574d;--mono:'Courier New',Courier,monospace;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.65}
a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid var(--purple);outline-offset:6px}
img{display:block;max-width:100%;height:auto}p,h1,h2,h3,figure{margin:0}p+p{margin-top:18px}
.wrap{width:min(1120px,calc(100% - 72px));margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:20px;padding:12px;background:var(--paper);color:var(--ink);z-index:10}.skip-link:focus{top:10px}
.site-header{min-height:100px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}
.wordmark{font-size:22px;font-weight:900;letter-spacing:-1px;white-space:nowrap}.wordmark span{color:var(--green);margin-left:10px;font-size:30px;vertical-align:middle}
nav{display:flex;gap:30px;font:12px var(--mono);text-transform:uppercase;letter-spacing:1px}nav a{padding:12px 0}nav a:hover{text-decoration:underline;text-underline-offset:6px}
.hero{display:grid;grid-template-columns:1fr 1fr;gap:76px;padding-block:64px 65px;align-items:center}
.cover-column{min-width:0;padding-top:20px}.cover-frame{position:relative;transform:rotate(-3deg);border:9px solid var(--paper);box-shadow:13px 15px 0 #0d1711}.album-cover{width:100%;aspect-ratio:1;object-fit:cover}
.album-sticker{position:absolute;bottom:-24px;right:-19px;background:var(--purple);color:var(--ink);border:2px solid var(--ink);padding:12px 19px;transform:rotate(7deg);font:700 12px/1.35 var(--mono);box-shadow:4px 4px 0 var(--ink)}
.cover-caption{display:flex;justify-content:space-between;gap:12px;margin-top:43px;font:10px var(--mono);letter-spacing:1px;color:var(--muted)}
.eyebrow{font:700 11px/1.5 var(--mono);letter-spacing:1.7px;text-transform:uppercase}.little-star{color:var(--green);font-size:18px;margin-right:6px;vertical-align:middle}
h1{font-size:clamp(70px,7.6vw,108px);line-height:.83;letter-spacing:-6px;font-weight:900;margin-top:22px}.bones{display:inline-block;margin-top:5px}.title-dot{color:var(--green)}
.intro{font-size:20px;line-height:1.45;margin-top:23px}.album-intro{color:var(--muted);font-size:14px;line-height:1.6;max-width:410px;margin-top:12px}.album-intro em{color:var(--paper);font-style:normal}
.link-list{display:grid;gap:9px;margin-top:25px}.link-button{display:flex;justify-content:space-between;align-items:center;gap:16px;border:1px solid #667360;padding:13px 19px;transition:background .16s,transform .16s;color:var(--paper)}
.link-button strong{display:block;font-size:15px;line-height:1.5}.link-button small{display:block;font:11px/1.5 var(--mono);color:var(--muted);margin-top:1px}.link-button:hover{background:#29392d;transform:translateX(4px)}.arrow{font-size:27px;line-height:1}
.bandcamp{background:var(--green);color:var(--ink);border-color:var(--green)}.bandcamp small{color:#344627}.bandcamp:hover{background:#c9f570;color:var(--ink)}.press-link{border-color:#9e88b3}.press-link .arrow{color:var(--purple)}
.streaming-note{display:flex;gap:8px;font:10px/1.7 var(--mono);color:var(--muted);margin-top:15px}.streaming-note span{color:var(--green);font-size:15px;line-height:1}
.ticker {
  position: relative;
  overflow: hidden;
  background: var(--purple);
  color: var(--ink);
  border-block: 2px solid var(--ink);
  padding: 13px 0;
}
.ticker-track {
  display: flex;
  width: max-content;
  animation: ticker-scroll 30s linear infinite;
}
.ticker-group {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: space-around;
  width: max(100vw, 800px);
  white-space: nowrap;
  font: 700 13px var(--mono);
  letter-spacing: 2px;
}
.ticker-toggle {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  clip-path: inset(50%);
  overflow: hidden;
}
.ticker-control {
  position: absolute;
  right: 8px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
  cursor: pointer;
  padding: 5px 9px;
  border: 1px solid var(--ink);
  background: var(--paper);
  color: var(--ink);
  font: 700 10px/1.5 var(--mono);
}
.ticker-toggle:focus-visible + .ticker-control {
  outline: 3px solid var(--ink);
  outline-offset: 2px;
}
.resume-label,
.ticker-toggle:checked + .ticker-control .pause-label { display: none; }
.ticker-toggle:checked + .ticker-control .resume-label { display: inline; }
.ticker-toggle:checked ~ .ticker-track { animation-play-state: paused; }
@keyframes ticker-scroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .ticker-track { animation: none; }
  .ticker-toggle, .ticker-control { display: none; }
}

.press-section{background:var(--paper);color:var(--ink);padding:72px 0 70px;scroll-margin-top:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;padding-bottom:32px;border-bottom:2px solid var(--ink)}
h2{font-size:clamp(38px,4vw,56px);line-height:1.15;font-weight:900;letter-spacing:-2px;margin-top:9px}.section-heading h2 span{color:#597933}.text-link{font:700 12px/1.5 var(--mono);border-bottom:1px solid currentColor;padding:10px 0;display:inline-block}.text-link span{margin-left:14px}.text-link:hover{color:#5b3874}
.bio-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;padding:45px 0 50px}.bio-copy h3,.download-section h3{font-size:28px;letter-spacing:-1px;line-height:1.2;margin-bottom:18px}.bio-copy p{font-size:17px;line-height:1.8}.bio-copy .text-link{margin-top:15px}
.record-card{border:1px solid #a7ab97;background:#e5e8d6;padding:26px 28px;align-self:start}.record-card h3{font-family:Georgia,serif;font-size:34px;font-style:italic;line-height:1.3;margin:6px 0 18px}dl{margin:0}dl>div{display:grid;grid-template-columns:1fr 1.4fr;gap:14px;padding:10px 0;border-top:1px solid #b9bdab;font-size:12px}dt{font-family:var(--mono)}dd{margin:0;font-weight:700}
.album-story{display:grid;grid-template-columns:1fr 2fr;gap:60px;border-block:1px solid #a5aa98;padding:40px 0}.story-heading h3{font-size:29px;letter-spacing:-1px;line-height:1.3;margin-top:10px}.story-heading h3 em{display:block;font-family:Georgia,serif;font-weight:normal;font-size:38px}.story-lead{font:italic 29px/1.4 Georgia,serif;margin-bottom:20px}.story-copy p{line-height:1.85}.story-expanded p{margin-top:20px}.signature{font:italic 26px Georgia,serif}
details{margin-top:24px}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;font:700 12px/1.5 var(--mono);padding:15px 0;border-block:1px solid #b6baa8}summary::-webkit-details-marker{display:none}.toggle-icon{font-size:24px;font-weight:normal;transition:transform .15s}details[open] .toggle-icon{transform:rotate(45deg)}.when-open,details[open] .when-closed{display:none}details[open] .when-open{display:inline}
.download-section{display:grid;grid-template-columns:1fr 2fr;gap:60px;padding-top:44px}.download-section h3{margin:8px 0 8px}.download-section p:not(.eyebrow){font-size:14px}.download-list a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #a5aa98;font-weight:700}.download-list a:first-child{padding-top:0}.download-list small{display:block;font:11px/1.6 var(--mono);font-weight:normal;margin-top:3px;color:#515d50}.download-list a>span:last-child{font-size:25px}.download-list a:hover{color:#5b3874}
.contact-section{display:flex;align-items:center;justify-content:center;gap:90px;padding-block:55px}.contact-section img{width:250px;transform:rotate(-5deg)}.contact-section h2{font-size:60px}.contact-section h2 span{color:var(--green)}.email-link{display:inline-block;font-size:23px;border-bottom:1px solid var(--green);padding:10px 0;overflow-wrap:anywhere}.email-link span{margin-left:20px;color:var(--green)}.email-link:hover{color:var(--green)}
.site-footer{display:flex;justify-content:space-between;gap:20px;padding-block:24px;border-top:1px solid var(--line);font:10px/1.5 var(--mono);color:var(--muted)}.site-footer p+p{margin:0}.site-footer a:hover{color:var(--green)}
@media(min-width:1500px){.hero{padding-block:90px}.site-header{min-height:110px}}
@media(max-width:900px){.hero{gap:40px}.wrap{width:calc(100% - 48px)}h1{font-size:78px}.bio-grid{gap:40px}.contact-section{gap:40px}.cover-caption{font-size:9px;letter-spacing:0}.album-sticker{right:-10px}}
@media(max-width:640px){.wrap{width:calc(100% - 40px)}.site-header{min-height:76px}.wordmark{font-size:18px}.wordmark span{font-size:23px;margin-left:5px}nav{gap:17px;font-size:10px;letter-spacing:0}nav a{padding:14px 0}.hero{display:flex;flex-direction:column;gap:36px;padding-block:32px 36px}.cover-column{width:min(350px,calc(100% - 20px));padding-top:0}.cover-frame{border-width:7px;box-shadow:8px 9px 0 #0d1711;transform:rotate(-2deg)}.album-sticker{font-size:10px;padding:9px 12px;bottom:-16px;right:-11px}.cover-caption{margin-top:29px}.hero-content{width:100%}h1{font-size:clamp(46px,14vw,80px);letter-spacing:-3px;line-height:1;margin-top:12px}h1 br{display:none}.bones{margin-left:12px;margin-top:0}.hero-content .eyebrow{font-size:10px}.intro{font-size:19px;margin-top:11px}.intro br{display:none}.album-intro{font-size:14px;max-width:none}.link-list{margin-top:22px}.link-button{padding:14px 17px;min-height:72px}.streaming-note{font-size:10px}.press-section{padding-block:42px}.section-heading{display:block;padding-bottom:23px}.section-heading .text-link{margin-top:14px}h2{font-size:42px}.bio-grid{grid-template-columns:1fr;gap:27px;padding-block:29px}.bio-copy p{font-size:16px}.record-card{padding:22px}.album-story{grid-template-columns:1fr;gap:20px;padding-block:30px}.story-heading h3 em{display:inline;font-size:29px}.story-lead{font-size:26px}.story-copy p{font-size:16px}.download-section{grid-template-columns:1fr;gap:25px;padding-top:30px}.contact-section{flex-direction:column;gap:18px;padding-block:38px;text-align:center}.contact-section img{width:190px}.contact-section h2{font-size:48px}.email-link{font-size:21px}.site-footer{flex-wrap:wrap;gap:12px;font-size:9px}.site-footer p:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
@media print{body,.press-section{background:white;color:black}.site-header,.hero,.ticker,.contact-section,.site-footer,.download-section,.skip-link,.text-link,summary{display:none}.wrap{width:100%}.press-section{padding:0}.bio-grid{gap:30px}.album-story{display:block}.story-heading{margin-bottom:20px}details:not([open])>.story-expanded{display:block!important}details::details-content{content-visibility:visible}.record-card{break-inside:avoid}h2,h3{break-after:avoid}}

/* One-minute song previews: native controls keep playback familiar. */
.preview-section {
  padding-block: 0 56px;
}
.preview-heading {
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 20px;
  padding-top: 30px;
  border-top: 1px solid var(--line);
  margin-bottom: 26px;
}
.preview-heading h2 {
  font-size: clamp(32px, 3.5vw, 44px);
}
.preview-heading h2 span {
  color: var(--green);
}
.preview-heading > p {
  color: var(--muted);
  font: 12px/1.6 var(--mono);
}
.preview-tracks {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.preview-track {
  min-width: 0;
  padding: 20px;
  border: 1px solid var(--line);
  background: #1d2d23;
}
.preview-track-label h3 {
  font-size: 17px;
  line-height: 1.4;
}
.preview-track-label > span {
  display: block;
  margin-top: 6px;
  color: var(--muted);
  font: 11px/1.5 var(--mono);
}
.preview-track audio {
  display: block;
  width: 100%;
  min-width: 0;
  height: 44px;
  margin-top: 18px;
}
.preview-track audio:focus-visible {
  outline: 3px solid var(--purple);
  outline-offset: 5px;
}
.audio-error {
  margin-top: 12px;
  font-size: 12px;
  color: var(--paper);
}
.audio-error a {
  text-decoration: underline;
}
@media (max-width: 900px) {
  .preview-tracks { grid-template-columns: 1fr; }
  .preview-track {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.5fr);
    align-items: center;
    gap: 12px 24px;
  }
  .preview-track audio { margin-top: 0; }
  .audio-error { grid-column: 1 / -1; }
}
@media (max-width: 640px) {
  .preview-section { padding-bottom: 36px; }
  .preview-heading { display: block; }
  .preview-heading > p { margin-top: 10px; }
  .preview-track { display: block; padding: 18px; }
  .preview-track audio { margin-top: 14px; }
}
@media print {
  .preview-section { display: none; }
}

/* Press photos: preserve the complete portrait without cropping. */
.press-photos {
  padding: 36px 0 46px;
  border-top: 1px solid #a5aa98;
}
.photos-heading {
  margin-bottom: 26px;
}
.photos-heading h3 {
  margin: 8px 0 12px;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: -1px;
}
.photos-heading > p:last-child {
  font-size: 14px;
}
.photo-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 30px;
}
.press-photo {
  min-width: 0;
}
.press-photo img {
  width: 100%;
  height: auto;
  border: 1px solid #a5aa98;
}
.press-photo figcaption {
  padding-top: 16px;
}
.press-photo h4 {
  margin: 0 0 4px;
  font-size: 18px;
  line-height: 1.4;
}
.photo-specs {
  color: #515d50;
  font: 11px/1.6 var(--mono);
}
.photo-links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 24px;
  margin-top: 12px;
}
.photo-links a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid currentColor;
  font: 700 12px/1.5 var(--mono);
}
.photo-links a:hover {
  color: #5b3874;
}
@media (max-width: 640px) {
  .press-photos { padding: 28px 0 32px; }
  .photo-grid { grid-template-columns: 1fr; gap: 32px; }
}
@media print {
  .press-photos { display: none; }
}
