*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#080808;color:#f5f5f5;font:15px/1.7 Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}h1,h2,h3,h4,.button,.eyebrow,.section-top span,.nav-label,.text-link,.link-row a,.brand-text{font-family:'Bebas Neue',Impact,sans-serif;font-weight:400;letter-spacing:.045em;line-height:1.05}h1{font-size:clamp(64px,11vw,145px);margin:0}h2{font-size:clamp(56px,9vw,104px);margin:0}h3{font-size:clamp(29px,4vw,46px);margin:0 0 14px}p{margin:0 0 16px}.muted,.small-note{color:#aaa}.small-note{font-size:12px}.eyebrow{font-size:17px;letter-spacing:.15em;color:#bcbcbc}.site-header{height:94px;padding:14px 5%;display:flex;align-items:center;justify-content:flex-end;gap:30px;border-bottom:1px solid #292929;position:sticky;top:0;z-index:20;background:rgba(8,8,8,.96);backdrop-filter:blur(14px)}.brand img{width:180px;max-height:65px;object-fit:contain}.site-header nav{display:flex;gap:24px;align-items:center;flex-wrap:wrap}.site-header nav a{font-family:'Bebas Neue',sans-serif;font-size:19px;letter-spacing:.07em;color:#bbb}.site-header nav a:hover,.site-header nav a.active{color:white}.menu-toggle{display:none;background:none;border:1px solid #666;color:white;padding:5px 12px;font-size:24px}.hero{min-height:75vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:90px 7%;position:relative;background:radial-gradient(ellipse at center,#262626,#080808 65%)}.hero-mark img{width:min(420px,75vw);max-height:220px;object-fit:contain;margin-bottom:25px}.hero h1{font-size:clamp(54px,9vw,118px)}.hero-content>p:not(.eyebrow){color:#bbb}.hero-scroll{position:absolute;bottom:28px;font:16px 'Bebas Neue';letter-spacing:.15em;color:#888}.button,.text-link,.link-row a{display:inline-flex;gap:15px;align-items:center;justify-content:center;padding:13px 21px;border:1px solid #ddd;background:transparent;color:white;font-size:21px;transition:.2s}.button:hover,.link-row a:hover{background:white;color:black}.text-link{border:0;border-bottom:1px solid #aaa;padding:8px 0;margin-top:20px}.section{padding:100px max(5%,calc((100vw - 1400px)/2));scroll-margin-top:94px}.alternate{background:#121212}.section-top{border-bottom:1px solid #3d3d3d;padding-bottom:20px;margin-bottom:45px}.section-top span{color:#aaa;font-size:18px}.feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:7%}.record-art{aspect-ratio:1;background:#191919;display:grid;place-items:center;border:1px solid #303030;overflow:hidden}.record-art img{max-width:100%;max-height:100%;object-fit:contain}.feature-copy h3{font-size:clamp(38px,5vw,64px)}.link-row{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.link-row a{font-size:19px;padding:10px 14px}.media-scroller{display:flex;overflow-x:auto;gap:20px;scroll-snap-type:x mandatory;padding:4px 0 20px;scrollbar-color:#888 #222}.media-card{flex:0 0 min(75vw,430px);scroll-snap-align:start}.media-frame{aspect-ratio:16/9;background:#1d1d1d;border:1px solid #333;display:grid;place-items:center;overflow:hidden}.media-frame iframe{width:100%;height:100%;border:0}.media-card h3{font-size:29px;margin-top:12px}.placeholder{padding:24px;color:#777;text-align:center;font-size:13px}.scroll-controls{display:flex;gap:10px;justify-content:flex-end;margin-bottom:18px}.scroll-controls button,.gallery-arrows button{background:#151515;color:white;border:1px solid #666;padding:8px 15px}.scroll-controls button:hover,.gallery-arrows button:hover{background:#444}.gallery-slider{display:flex;align-items:center;gap:15px}.gallery-stage{width:100%;min-height:280px;aspect-ratio:16/9;background:#181818;display:grid;place-items:center;border:1px solid #444;overflow:hidden}.gallery-stage img{height:100%;width:100%;object-fit:contain}.gallery-arrows{display:flex;gap:8px}.grid-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.tile{background:#171717;border:1px solid #333;padding:16px;min-width:0}.tile-cover{aspect-ratio:1;background:#242424;display:grid;place-items:center;overflow:hidden;margin-bottom:14px}.tile-cover img{width:100%;height:100%;object-fit:contain}.tile h3{font-size:32px}.tile:hover{border-color:#aaa}.tile .eyebrow{font-size:15px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gallery-grid img{width:100%;aspect-ratio:1;object-fit:cover;cursor:pointer}.page-title{padding:80px 5% 35px;border-bottom:1px solid #333}.page-title h1{font-size:clamp(60px,9vw,105px)}.inner-page{min-height:55vh;padding:55px 5% 110px;max-width:1500px;margin:auto}.back{display:inline-block;margin-bottom:25px;color:#bbb;font-family:'Bebas Neue';font-size:21px}.track-list{padding-left:24px}.track-list li{padding:12px 4px;border-bottom:1px solid #333}.post-body{max-width:750px;font-size:17px;line-height:1.95}.post-body p{margin-bottom:25px}.post-date{color:#aaa;font-size:13px}.empty{border:1px dashed #555;padding:30px;color:#aaa;background:#141414}.audio-player{width:100%;margin:20px 0;filter:grayscale(1)}footer{border-top:1px solid #333;padding:32px 5%;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#aaa;font-size:12px}footer img{width:100px;max-height:45px;object-fit:contain}footer a{font-family:'Bebas Neue';font-size:19px}a:focus-visible,button:focus-visible{outline:2px solid white;outline-offset:3px}@media(max-width:850px){.site-header{height:78px}.brand img{width:135px}.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:77px;left:0;right:0;background:#111;padding:24px 5%;border-bottom:1px solid #444;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.section{padding:65px 5%;scroll-margin-top:78px}.feature-grid{grid-template-columns:1fr;gap:35px}.grid-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.grid-cards{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-card{flex-basis:86vw}footer{flex-wrap:wrap}.gallery-slider{gap:5px}.gallery-arrows button{padding:8px}}
/* V3 homepage and media refinements */
.hero{min-height:calc(100vh - 94px);gap:0}.hero-mark img{width:min(820px,88vw);max-height:none;margin-bottom:12px}.hero-content .eyebrow{font-size:15px}.hero-tagline{font-family:'Bebas Neue',Impact,sans-serif;font-size:clamp(28px,4vw,48px);letter-spacing:.085em;color:#f5f5f5!important;margin:4px 0 30px!important}.gallery-stage img{object-fit:contain}@media(max-width:850px){.hero{min-height:calc(100vh - 78px)}}

/* V4: logo crop, uncropped portrait galleries */
.hero-mark img{width:min(1040px,92vw);max-height:none;height:auto;object-fit:contain}
.brand img{width:180px;height:auto;max-height:65px;object-fit:contain}
.gallery-stage{aspect-ratio:auto;min-height:0;height:min(78vh,850px);padding:12px}
.gallery-stage img{width:100%;height:100%;object-fit:contain}
.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
.gallery-grid a{display:flex;align-items:center;justify-content:center;background:#151515;border:1px solid #303030;min-height:150px}
.gallery-grid img{width:100%;height:auto;max-height:85vh;aspect-ratio:auto;object-fit:contain;display:block}
@media(max-width:850px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gallery-stage{height:min(72vh,680px)}}
@media(max-width:540px){.gallery-grid{grid-template-columns:1fr}.gallery-stage{height:min(68vh,620px);padding:4px}}

/* V5 layout refinements */
.hero-content .hero-tagline{margin-bottom:0!important}
.video-carousel{display:flex;align-items:center;gap:18px}
.video-viewport{flex:1;min-width:0}
#video-reel{gap:0;scrollbar-width:none;padding:0;scroll-snap-type:x mandatory}
#video-reel::-webkit-scrollbar{display:none}
#video-reel .video-card{flex:0 0 100%;scroll-snap-align:center;padding:0 4px}
#video-reel .media-frame{width:100%;aspect-ratio:16/9}
#video-reel .video-card h3{margin:16px 0 0;font-size:34px}
.video-arrow{background:#151515;color:white;border:1px solid #777;font-size:25px;padding:12px 17px;flex:0 0 auto}
.video-arrow:hover{background:#444}
.gallery-stage{height:auto;min-height:0;aspect-ratio:auto;padding:0;background:#111;overflow:visible}
.gallery-stage img{display:block;width:auto;max-width:100%;height:auto;max-height:none;object-fit:contain;margin:auto}
.gallery-slider{align-items:center}
@media(max-width:850px){.gallery-stage{height:auto}.video-carousel{gap:8px}.video-arrow{padding:9px 12px}}
@media(max-width:540px){.video-arrow{padding:8px;font-size:19px}.gallery-stage{height:auto}}

/* V6: smaller, fully visible portrait featured photos */
.gallery-slider{max-width:720px;margin-inline:auto;justify-content:center}
.gallery-stage{width:min(100%,560px);height:min(68vh,660px);min-height:0;aspect-ratio:auto;flex:1 1 auto}
.gallery-stage img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-arrows{flex:0 0 auto}
/* Vinyl side-based track listings */
.vinyl-side{margin:18px 0 26px}
.vinyl-side h4{font-size:25px;margin:0 0 8px;color:#fff}
.side-track{display:grid;grid-template-columns:24px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #333}
.track-number{color:#aaa;font-variant-numeric:tabular-nums}
@media(max-width:540px){.gallery-slider{max-width:100%}.gallery-stage{height:min(66vh,560px);width:100%}.gallery-arrows button{padding:7px}}

/* V7: featured photo 15% smaller than V6, with original aspect ratio preserved */
.gallery-slider{max-width:612px}
.gallery-stage{width:min(100%,476px);height:min(57.8vh,561px)}
.gallery-stage img{object-fit:contain}
.about-copy{max-width:790px;font-size:19px;line-height:1.9}
.about-copy p{margin-bottom:22px}
.catalogue-number{border-top:1px solid #333;padding-top:16px;margin-top:28px;font:20px "Bebas Neue",Impact,sans-serif;letter-spacing:.08em}
@media(max-width:540px){.gallery-slider{max-width:100%}.gallery-stage{width:100%;height:min(56vh,476px)}.about-copy{font-size:17px}}

/* V8: Bebas Neue throughout; simplified vinyl track listings */
/* V9: Bebas Neue remains for headings/navigation; Inter restores mixed-case reading text. */
body,button,input,textarea,select{font-family:'Inter',Arial,sans-serif}
body{font-size:15px;letter-spacing:normal}
.side-track{border-bottom:0}
.track-list li{border-bottom:0}
.catalogue-number{border-top:0;padding-top:0;margin-top:calc(3 * 1.7em);font-size:15px;letter-spacing:.08em;color:#aaa}

/* v10 refinements */
.section-top > span{display:none!important}
.all-music-wrap{display:flex;justify-content:center;margin-top:18px}
.about-copy{max-width:none;width:100%;font-size:19px;line-height:1.85}
.stream-unavailable{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border:1px solid #555;color:#999;font-family:'Bebas Neue',Impact,sans-serif;font-size:19px;letter-spacing:.045em;cursor:not-allowed}

/* v12: gallery images stay in the gallery; video director credit */
.gallery-grid .gallery-photo{display:flex;align-items:center;justify-content:center;background:#151515;border:1px solid #303030;min-height:150px}
.gallery-grid .gallery-photo img{cursor:default}
.video-credit{color:#aaa;font-size:14px;margin:0 0 12px}

#shop .shop-description{margin-bottom:30px;}

/* v19: smaller About copy on mobile; clearer separation before track listings */
@media (max-width:850px){.about-copy{font-size:16px;line-height:1.75}}
@media (max-width:540px){.about-copy{font-size:15px;line-height:1.7}}
.release-track-heading{margin-top:32px}

/* v20: release cover and information above a full-width streaming row */
.release-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7%;align-items:start}
.release-detail-layout>.record-art{width:100%}
.release-streaming{grid-column:1/-1;margin-top:8px}
.release-streaming .link-row{margin-top:16px}
@media(max-width:850px){.release-detail-layout{grid-template-columns:1fr;gap:28px}.release-streaming{grid-column:1;margin-top:4px}}
/* Keep the catalogue number directly below the track listing without an extra separator. */
.catalogue-number{border:0;padding:0;margin-top:14px}
@media(max-width:850px){}
@media(max-width:850px){}

/* v57: Align release date/format with the top edge of the cover artwork. */
.release-detail-layout > div:nth-child(2) > .eyebrow:first-child{margin-top:0}

/* v30: quieter editorial gallery, progressive reveal */
.gallery-intro{max-width:1050px;margin:8px auto 24px;border-bottom:1px solid #363636;padding-bottom:12px}
.gallery-intro p{font-family:'Bebas Neue',sans-serif;font-size:20px;letter-spacing:.1em;color:#bfbfbf;display:flex;justify-content:space-between;margin:0}
.gallery-intro span{color:#777}
.gallery-editorial{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 24px;align-items:start}
.gallery-editorial-photo{margin:0;min-width:0}
.gallery-editorial-photo[hidden]{display:none!important}
.gallery-editorial-photo img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background:#191919}
.gallery-editorial-photo figcaption{font:15px 'Bebas Neue',sans-serif;letter-spacing:.1em;color:#888;margin-top:9px;text-align:right}
.gallery-more-wrap{text-align:center;margin:48px auto 0}
.gallery-more-wrap .button{cursor:pointer}
@media(min-width:900px){.gallery-editorial-photo:nth-child(4n+2){margin-top:65px}.gallery-editorial-photo:nth-child(4n+3){margin-top:-65px}}
@media(max-width:600px){.gallery-editorial{gap:17px 12px}.gallery-editorial-photo figcaption{font-size:12px}.gallery-editorial-photo:nth-child(2n){margin-top:35px}.gallery-more-wrap{margin-top:35px}}

/* v31: aligned editorial columns; preserve entire photo within portrait frame. */
.gallery-editorial-photo:nth-child(n){margin-top:0}
.gallery-editorial-photo img{object-fit:contain}
@media(min-width:900px){.gallery-editorial-photo:nth-child(4n+2),.gallery-editorial-photo:nth-child(4n+3){margin-top:0}}
@media(max-width:600px){.gallery-editorial-photo:nth-child(2n){margin-top:0}}

/* v32: all photographs visible; crop only 6.1 to fill the portrait frame. */
.gallery-editorial-photo.gallery-photo-6-1 img{object-fit:cover}

#socials .socials-description{margin-bottom:30px;}

/* v36: tighter transition between Shop and Socials only. */
#shop{padding-bottom:55px}
#socials{padding-top:55px}
@media(max-width:850px){#shop{padding-bottom:35px}#socials{padding-top:35px}}

/* v37: slightly tighter transition between About and Videos. */
#about{padding-bottom:75px}
#videos{padding-top:75px}
@media(max-width:850px){#about{padding-bottom:50px}#videos{padding-top:50px}}

/* v38: a further 25% reduction in the About–Videos transition. */
#about{padding-bottom:56px}
#videos{padding-top:56px}
@media(max-width:850px){#about{padding-bottom:38px}#videos{padding-top:38px}}
/* Keep navigation on the homepage, but not on standalone archive/detail pages. */
body.subpage .site-header{display:none}

/* v42: Subtle publication date above each full blog post. */
.inner-page>.post-date{font:400 13px/1.5 Inter,Arial,sans-serif;color:#999;letter-spacing:.02em;margin:0 0 22px}

/* Release-page recording and songwriting credits */
.release-credits { margin-top: 1.15rem; font-size: .8rem; line-height: 1.7; color: var(--muted, #aaa); }
.release-credits > div { display: block; }

/* Release metadata refinements — v52 */
.release-credits { font-size: .72rem; line-height: 1.65; }
.artwork-credits { margin-top: .65rem; }
.side-track { grid-template-columns: 24px minmax(0,1fr) auto; align-items: baseline; }
.track-title { min-width: 0; }
.track-duration { text-align: right; font-variant-numeric: tabular-nums; color: #aaa; white-space: nowrap; padding-left: 12px; font-size: .9em; }
.archive-identifier { margin: 7px 0 16px; font-size: .68rem; letter-spacing: .16em; color: #aaa; font-weight: 600; }
.archive-diamond { font-size: .55rem; vertical-align: 1px; margin-right: 4px; }
.archive-separator { color: #666; margin: 0 7px; }

/* v58: full gallery, one horizontal row per photoshoot */
.shoot-row{margin:28px 0 62px;min-width:0}
.shoot-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #444;padding-bottom:12px;margin-bottom:18px}
.shoot-heading h2{font-size:clamp(24px,3vw,36px);margin:0}
.shoot-controls{display:flex;align-items:center;gap:9px}.shoot-controls span{font:15px 'Bebas Neue',sans-serif;color:#aaa;letter-spacing:.08em;margin-right:8px}
.shoot-controls button{background:#151515;color:#fff;border:1px solid #666;padding:8px 14px;cursor:pointer}.shoot-controls button:hover{background:#444}
.shoot-scroller{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-color:#777 #222;padding:0 0 12px}
.shoot-photo{margin:0;flex:0 0 clamp(210px,28vw,360px);scroll-snap-align:start;min-width:0}
.shoot-photo img{width:100%;height:clamp(270px,35vw,440px);object-fit:contain;background:#171717;display:block}
.shoot-photo figcaption{font:15px 'Bebas Neue',sans-serif;letter-spacing:.1em;color:#999;text-align:right;margin-top:8px}
@media(max-width:600px){.shoot-photo{flex-basis:76vw}.shoot-photo img{height:420px}.shoot-controls span{display:none}.shoot-row{margin-bottom:42px}}

/* v59: edge-to-edge uniform portrait thumbnails, unlabelled rows and modal viewer */
.shoot-heading{justify-content:flex-end;border:0;margin-bottom:10px;padding:0}
.shoot-controls span,.shoot-heading h2,.shoot-photo figcaption{display:none}
.shoot-photo{flex-basis:clamp(210px,28vw,360px)}
.shoot-photo .photo-open{display:block;width:100%;padding:0;margin:0;border:0;background:transparent;cursor:zoom-in}
.shoot-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;background:transparent;display:block}
.photo-lightbox{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.94);display:flex;align-items:center;justify-content:center;padding:35px;cursor:zoom-out}
.photo-lightbox img{max-width:100%;max-height:calc(100dvh - 70px);width:auto;height:auto;object-fit:contain;box-shadow:0 10px 45px #000;cursor:default}
.photo-close{position:absolute;top:12px;right:20px;background:transparent;color:#fff;border:0;font-size:42px;cursor:pointer;z-index:1;line-height:1}
body.lightbox-open{overflow:hidden}
@media(max-width:600px){.shoot-photo{flex-basis:76vw}.shoot-photo img{height:auto;aspect-ratio:3/4}.photo-lightbox{padding:14px}.photo-lightbox img{max-height:calc(100dvh - 45px)}}

.photo-lightbox-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:flex;align-items:center;justify-content:center;width:48px;height:64px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.28);color:#fff;font-size:48px;line-height:1;cursor:pointer;border-radius:3px}.photo-lightbox-prev{left:12px}.photo-lightbox-next{right:12px}.photo-lightbox-arrow:disabled{opacity:0;pointer-events:none}.photo-lightbox-arrow:not(:disabled):hover{background:rgba(255,255,255,.16)}@media(max-width:600px){.photo-lightbox-arrow{width:36px;height:52px;font-size:36px}.photo-lightbox-prev{left:4px}.photo-lightbox-next{right:4px}}

/* v61: understated gallery photography credit */
.gallery-photography-credit{margin:32px 0 0;color:var(--muted,#999);font-size:.72rem;line-height:1.6}

/* V63: release-blog links and contact styling */
.release-read-more a,#contact a[href^="mailto:"]{text-decoration:underline;text-underline-offset:3px}
#contact{background:#080808}


/* v64: release links, contact contrast and blog release artwork */
.release-read-more a{color:#b5b5b5;text-decoration:underline;text-underline-offset:3px}
.release-read-more a:hover,.release-read-more a:focus-visible{color:#fff}
#contact a[href^="mailto:"]{color:#fff;text-decoration:underline;text-underline-offset:3px}
#contact a[href^="mailto:"]:hover{color:#ddd}
.post-release-aside{float:right;width:min(34%,255px);margin:0 0 22px 30px;text-align:center}
.post-release-art{display:block;width:100%;aspect-ratio:1;overflow:hidden}
.post-release-art img{display:block;width:100%;height:100%;object-fit:cover}
.post-release-button{display:flex;margin-top:12px;width:100%;box-sizing:border-box;min-height:44px}
.post-body::after{content:"";display:block;clear:both}
@media(max-width:600px){.post-release-aside{float:none;width:min(100%,290px);margin:0 auto 28px}}

/* v65: independent sidebar, preserving normal article alignment and width */
.post-layout{display:grid;grid-template-columns:minmax(0,750px) minmax(0,255px);column-gap:clamp(30px,5vw,90px);align-items:start;max-width:1095px}
.post-layout .post-body{width:100%;max-width:750px;min-width:0}
.post-layout .post-release-aside{float:none;width:100%;margin:0;text-align:center;grid-column:2;grid-row:1}
@media(max-width:760px){.post-layout{grid-template-columns:minmax(0,1fr)}.post-layout .post-release-aside{grid-column:1;grid-row:1;width:min(100%,290px);margin:0 0 28px}.post-layout .post-body{grid-column:1;grid-row:2}}

/* v71: Netlify contact form */
.contact-intro{max-width:640px;margin-bottom:28px}
.contact-form{max-width:640px;display:grid;gap:19px}
.contact-field{display:flex;flex-direction:column;gap:8px}
.contact-field label{font-family:Inter,Arial,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.12em;color:#dedede}
.contact-field input,.contact-field textarea{width:100%;box-sizing:border-box;min-width:0;border:1px solid #505050;border-radius:2px;background:#101010;color:#f5f5f5;padding:13px 14px;font:inherit;line-height:1.5}
.contact-field textarea{resize:vertical;min-height:145px}
.contact-field input:focus-visible,.contact-field textarea:focus-visible{outline:2px solid #fff;outline-offset:2px;border-color:#fff}
.contact-submit{justify-self:start;cursor:pointer;font:inherit}
.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
