:root{color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#070707;color:#f5f5f5}body{font-family:Arial,Helvetica,sans-serif}a{color:inherit}button{font:inherit}.hero{position:relative;isolation:isolate;min-height:100svh;display:flex;flex-direction:column;background:#050505 url('assets/vinyl-background.webp') center center/cover no-repeat}.hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.42) 0%,transparent 65%),linear-gradient(180deg,rgba(0,0,0,.28),transparent 28%,transparent 75%,rgba(0,0,0,.2))}.site-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:clamp(26px,4vw,58px) clamp(25px,5vw,78px);position:relative;z-index:2}.brand{display:flex;flex-direction:column;align-items:flex-start;color:#fff;text-decoration:none;font-size:clamp(25px,2.55vw,40px);font-weight:750;letter-spacing:-.055em;line-height:1.04}.header-nav{display:flex;align-items:center;gap:clamp(18px,2.3vw,36px);padding-top:18px}.header-nav a,.header-nav button{font-size:12px;letter-spacing:.2em;text-decoration:none;border:0;background:transparent;color:#fff;cursor:pointer;padding:0 0 7px}.header-nav a[aria-current="page"]{border-bottom:1px solid #fff}.nav-divider{height:24px;width:1px;background:#aaa;margin:0 5px}.icon-social{display:flex;gap:15px}.icon-social a{letter-spacing:.02em;font-weight:bold}.hero-message{margin:auto 0 auto clamp(45px,10.3vw,160px);padding:45px 20px 0 0;max-width:570px}.hero-message h1{font:400 clamp(34px,3.35vw,53px)/1.11 Georgia,'Times New Roman',serif;letter-spacing:-.025em;margin:0}.rule{height:1px;background:#fff;width:54px;margin:36px 0 33px}.hero-message p,.home-footer{font-size:11px;letter-spacing:.36em}.hero-message p{margin:0}.home-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:0 clamp(25px,5vw,78px) 32px}.home-footer nav{display:flex;gap:27px}.home-footer a{font-size:11px;letter-spacing:.16em;text-decoration:none}.home-footer nav:empty{display:none}[hidden]{display:none!important}a:focus-visible,button:focus-visible{outline:2px solid white;outline-offset:6px}dialog{position:fixed;background:#111;color:#fff;border:1px solid #555;width:min(480px,calc(100% - 32px));padding:44px 36px 36px;box-shadow:0 20px 100px #000b}dialog::backdrop{background:#000c}dialog h2{font:400 36px Georgia,serif;margin:0 0 25px}dialog p{font-size:16px;line-height:1.65;color:#ddd}dialog a{text-underline-offset:5px}#close-dialog{position:absolute;top:10px;right:17px;color:#fff;background:none;border:0;font-size:32px;cursor:pointer}
.about-page{min-height:100svh}.about-main{position:relative;isolation:isolate;min-height:calc(100svh - 115px);padding:clamp(65px,8vw,105px) clamp(25px,16vw,230px) 330px;overflow:hidden}.about-copy{position:relative;z-index:1;max-width:760px}.about-copy h1{font:400 clamp(32px,3.6vw,49px)/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.018em;margin:0 0 46px;color:#f5f5f5}.about-copy p{font:400 clamp(19px,1.8vw,25px)/1.56 Georgia,'Times New Roman',serif;margin:0 0 28px}.about-vinyl{position:absolute;z-index:0;left:0;right:0;bottom:0;height:350px;background:linear-gradient(to bottom,#070707 0%,rgba(7,7,7,.05) 75%),url('assets/about-vinyl.webp') center 60%/cover no-repeat;pointer-events:none}
@media(max-width:700px){.site-header{padding:28px 24px;gap:14px}.brand{font-size:25px}.header-nav{gap:16px;padding-top:6px}.header-nav a,.header-nav button{font-size:10px;letter-spacing:.09em}.nav-divider,.icon-social{display:none}.hero{min-height:100svh;background-position:60% center}.hero:before{background:linear-gradient(180deg,rgba(0,0,0,.38),rgba(0,0,0,.43) 40%,rgba(0,0,0,.08) 78%,rgba(0,0,0,.5))}.hero-message{margin:auto 24px;padding:30px 0;max-width:420px}.hero-message h1{font-size:clamp(33px,8.2vw,48px)}.rule{margin:27px 0 22px}.hero-message p{font-size:10px}.home-footer{padding:0 24px 25px}.home-footer>span{display:none}.home-footer nav{gap:17px;flex-wrap:wrap}.home-footer a{font-size:10px}.about-main{padding:80px 25px 260px}.about-copy h1{font-size:clamp(33px,8vw,43px);margin-bottom:37px}.about-copy p{font-size:clamp(19px,5vw,23px);line-height:1.55}.about-vinyl{height:290px;background-position:center 65%}}

/* v3: visible social icons, inactive until their URLs are configured. */
.icon-social{display:flex;align-items:center;gap:18px}
.icon-social a{display:inline-flex;width:23px;height:23px;align-items:center;justify-content:center;color:white;text-decoration:none}
.icon-social svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.icon-social svg.filled{fill:currentColor;stroke:none}
.icon-social .dot{fill:currentColor;stroke:none}
.icon-social a[aria-disabled="true"]{opacity:.7;cursor:default}
/* Compact, viewport-conscious About composition. Keep body copy as real text. */
.about-page{min-height:100svh;display:flex;flex-direction:column}
.about-page .site-header{flex:0 0 auto;padding-top:clamp(22px,3vw,42px);padding-bottom:16px}
.about-main{flex:1;min-height:0;padding:clamp(24px,4vh,52px) clamp(25px,12vw,190px) clamp(155px,22vh,220px);display:flex;align-items:flex-start}
.about-copy{max-width:810px}
.about-copy h1{font-size:clamp(29px,2.65vw,39px);margin:0 0 clamp(20px,3vh,34px)}
.about-copy p{font-size:clamp(17px,1.35vw,20px);line-height:1.48;margin:0 0 clamp(14px,2.2vh,22px)}
.about-vinyl{height:clamp(145px,25vh,240px);background-position:center 62%}
@media (min-width:701px) and (max-height:800px){.about-main{padding-top:15px;padding-bottom:135px}.about-copy h1{margin-bottom:17px}.about-copy p{font-size:clamp(16px,1.2vw,18px);line-height:1.4;margin-bottom:13px}.about-vinyl{height:165px}}
@media (max-width:700px){.icon-social{display:flex;gap:11px}.icon-social a{width:19px;height:19px}.icon-social svg{width:18px;height:18px}.header-nav{flex-wrap:wrap;justify-content:flex-end;row-gap:10px}.about-main{display:block;padding:45px 25px 180px}.about-copy h1{font-size:clamp(29px,7.2vw,37px);margin-bottom:24px}.about-copy p{font-size:clamp(17px,4.3vw,20px);line-height:1.48;margin-bottom:19px}.about-vinyl{height:185px}}
@media (max-width:390px){.site-header{gap:8px}.brand{font-size:22px}.header-nav{gap:11px}.icon-social{width:100%;justify-content:flex-end}}
