:root{--ink:#25221e;--surface:#35312b;--paper:#fbf7f0;--muted:#c5bdb1;--line:#5b554d;--vermillion:#b93a2c;--gold:#dec89d;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;line-height:1.75}.wrap{max-width:var(--max);margin:auto;padding:0 34px}.skip{position:absolute;top:-80px;left:20px;background:var(--gold);color:#111;padding:8px 14px;z-index:9}.skip:focus{top:15px}.header{position:sticky;top:0;z-index:5;background:rgba(37,34,30,.93);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header .wrap{height:74px;display:flex;align-items:center;justify-content:space-between}.logo{color:var(--paper);font-size:12px;font-weight:900;letter-spacing:.14em;text-decoration:none}.nav{display:flex;gap:24px;font-size:11px;font-weight:800;letter-spacing:.08em}.nav a{color:var(--muted);text-decoration:none}.nav a:hover{color:var(--gold)}.hero{min-height:calc(100vh - 74px);display:flex;align-items:flex-end;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(25,22,18,.86) 0%,rgba(25,22,18,.57) 46%,rgba(25,22,18,.12) 100%),url(/assets/images/kyoto-ink-hero.png) center/cover}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,13,11,.36),transparent 55%)}.hero:after{content:"京都 / BASS / COMPOSE";position:absolute;right:30px;bottom:34px;color:var(--gold);writing-mode:vertical-rl;letter-spacing:.28em;font-size:10px;font-weight:800}.hero-content{position:relative;z-index:1;padding:100px 0 88px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.2em;color:var(--gold);margin:0 0 18px}.hero h1{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(70px,12vw,182px);line-height:.78;letter-spacing:-.1em;margin:0;text-shadow:0 2px 18px rgba(0,0,0,.38)}.hero h1 small{display:block;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN",sans-serif;font-size:12px;letter-spacing:.31em;margin:38px 0 0}.hero p{max-width:440px;margin:36px 0 0;color:#f3ede5;font-size:16px}.section{padding:120px 0;border-top:1px solid var(--line);background:#2c2823}.section-dark{background:var(--surface)}h2{font-family:"Hiragino Mincho ProN","Yu Mincho",serif;font-size:clamp(38px,6vw,82px);line-height:1.05;letter-spacing:-.07em;margin:0}.lead{font-size:19px;max-width:760px;color:#ede4d9}.grid{display:grid;gap:24px}.two{grid-template-columns:repeat(2,1fr)}.album{display:grid;grid-template-columns:.8fr 1.2fr;gap:64px;align-items:center;margin-top:52px}.album img{width:100%;height:auto;display:block;box-shadow:18px 18px 0 var(--vermillion)}.tracklist{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px;padding:0;list-style-position:inside;color:#ede4d9}.button{display:inline-block;background:var(--gold);color:#151312;padding:13px 19px;text-decoration:none;font-size:12px;font-weight:900;letter-spacing:.08em}.button:hover{background:var(--paper)}.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:42px}.video-card{display:flex;flex-direction:column;color:var(--paper);text-decoration:none;background:#1f1c18;border:1px solid #6b6254;transition:transform .2s ease,background .2s ease}.video-card:hover{transform:translateY(-5px);background:#28231e}.video-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.video-card__label,.video-card strong,.video-card small{padding:0 18px}.video-card__label{padding-top:16px;color:var(--gold);font-size:10px;letter-spacing:.16em;font-weight:900}.video-card strong{padding-top:7px;font-size:15px;line-height:1.45}.video-card small{padding-top:12px;padding-bottom:18px;color:var(--muted);font-size:11px}.photo-section{background:#40382f}.photo-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-auto-rows:190px;gap:14px;margin-top:44px}.photo-slot{position:relative;overflow:hidden;margin:0;border:1px solid #82745f;background:#302a23;cursor:zoom-in}.photo-slot:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.photo-slot img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.86) contrast(1.04);transition:transform .35s ease,filter .35s ease}.photo-slot:hover img{transform:scale(1.04);filter:saturate(1) contrast(1.05)}.photo-slot figcaption{position:absolute;left:0;right:0;bottom:0;padding:20px 16px 12px;background:linear-gradient(transparent,rgba(15,12,10,.8));color:#fff8ed;font-size:10px;font-weight:900;letter-spacing:.14em}.photo-slot--large{grid-row:span 2}.gallery-controls{display:flex;justify-content:center;margin-top:38px}.gallery-more{appearance:none;border:1px solid var(--gold);background:transparent;color:var(--paper);padding:14px 22px;cursor:pointer;font:900 12px/1 -apple-system,BlinkMacSystemFont,"Hiragino Sans",sans-serif;letter-spacing:.08em}.gallery-more:hover{background:var(--gold);color:#1d1915}.lightbox{width:min(1080px,94vw);max-height:92vh;padding:16px;background:#151310;border:1px solid #70644f;color:var(--paper)}.lightbox::backdrop{background:rgba(8,7,6,.88);backdrop-filter:blur(8px)}.lightbox img{display:block;max-width:100%;max-height:78vh;margin:auto;object-fit:contain}.lightbox p{margin:10px 4px 0;color:var(--gold);font-size:11px;font-weight:900;letter-spacing:.15em}.lightbox-close{position:absolute;right:6px;top:5px;border:0;background:rgba(20,17,14,.82);color:#fff;font-size:34px;line-height:1;padding:5px 11px;cursor:pointer}.contact{background:var(--vermillion);color:#fff}.contact .eyebrow{color:#ffe8c6}.contact .lead{color:#ffe5df}.contact-button{display:inline-flex;align-items:center;gap:28px;background:#fff8ee;color:#6d2219;padding:17px 22px;text-decoration:none;font-size:14px;font-weight:900;letter-spacing:.05em}.contact-button:hover{background:#1d1915;color:#fff}.contact-button span{font-size:20px}.notice{font-size:12px;color:var(--muted)}.footer{padding:35px 0;color:#a59e94;font-size:11px;letter-spacing:.04em}@media(max-width:700px){.wrap{padding:0 20px}.header .wrap{height:62px}.nav{gap:10px;font-size:9px}.nav a:nth-child(3),.nav a:nth-child(4){display:none}.hero{min-height:calc(100vh - 62px);background-position:57% center}.hero-content{padding:80px 0 56px}.hero h1{font-size:76px}.section{padding:75px 0}.two,.album,.video-grid{grid-template-columns:1fr;gap:25px}.tracklist{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr 1fr;grid-auto-rows:145px}.photo-slot--large{grid-row:span 2}.hero:after{right:14px;bottom:18px}}
