@import url('assets/fonts.css');
:root{--green:#173c30;--paper:#fafbf7;--ink:#21372c;--line:#d5dcd2;--muted:#586858;--serif:Georgia,'Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans JP',sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #a47625;outline-offset:6px}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}header{display:flex;align-items:center;justify-content:space-between;padding:20px 5%;background:var(--paper);border-bottom:1px solid var(--line)}.logo{font:32px/1 var(--serif);letter-spacing:.12em}.logo span{display:block;font:9px/1.3 Arial,sans-serif;letter-spacing:.21em;margin-top:8px}nav{display:flex;gap:32px;font-family:var(--serif);font-size:17px}nav a:hover{color:#718047}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:43% 57%;background:var(--green);color:#f7f8ee;min-height:640px}.hero-copy{padding:65px 9% 36px 12%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-label>span{font:12px/1.6 Arial,sans-serif;letter-spacing:.17em}.hero h1{font:clamp(36px,4.1vw,64px)/1.55 var(--serif);letter-spacing:.12em;margin:40px 0 15px;font-weight:400}.hero-en{font:italic 23px/1.4 var(--serif);color:#cbd7b6}.intro{font-size:14px;line-height:2.2;margin:28px 0}.line-link{font-size:14px;border-bottom:1px solid #a9ba90;padding:7px 0}.hero-foot{font:10px/1.5 Arial;letter-spacing:.18em;margin-top:auto;padding-top:40px;color:#b7c8b3}.hero-art{position:relative;display:flex;align-items:center;background:#284a2c;padding:0}.hero-art img{width:100%;height:100%;object-fit:cover}.hero-art figcaption{position:absolute;bottom:12px;right:16px;font:11px/1.4 Arial;color:white;text-shadow:0 1px 4px #132615;background:#173c30b8;padding:5px 8px}.section{padding:110px 8%;scroll-margin-top:10px}h2{font:400 clamp(30px,3.4vw,46px)/1.5 var(--serif)}.about{display:grid;grid-template-columns:1fr 1.25fr;gap:9%}.section-label h2{margin-top:25px}.lead{font:25px/1.8 var(--serif);margin-bottom:25px}.about-copy>p:not(.lead){margin-bottom:20px}.instrument-list{display:flex;gap:25px;font:italic 20px var(--serif);border-top:1px solid var(--line);padding-top:26px;margin-top:35px}.music{background:#edf1e9}.section-top{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:48px}.section-top h2{margin-top:12px}.section-top>p{font-size:14px;color:var(--muted)}.albums{display:grid;grid-template-columns:repeat(3,1fr);gap:44px 32px}.album{border:0;background:none;text-align:left;padding:0;width:100%;display:block}.cover{position:relative;display:block;overflow:hidden;background:#dae0d1}.cover img{width:100%;aspect-ratio:1;object-fit:cover;transition:transform .5s}.album:hover img{transform:scale(1.035)}.open{position:absolute;bottom:0;left:0;right:0;background:#173c30eb;color:white;padding:10px 16px;font-size:13px;text-align:right;opacity:0;transition:opacity .2s}.album:hover .open,.album:focus-visible .open{opacity:1}.meta{display:block;font:10px/1.5 Arial;letter-spacing:.15em;color:var(--muted);margin:18px 0 6px}.album h3{font:22px/1.3 var(--serif)}.archive{margin-top:50px;border-top:1px solid #cbd4c4;border-bottom:1px solid #cbd4c4}.archive summary{padding:22px 0;cursor:pointer;font:23px/1.5 var(--serif)}.archive summary span{font:13px sans-serif;margin-left:18px}.archive>div{padding:5px 0 25px}.archive h3{font:22px/1.5 var(--serif);margin-top:20px}.archive p{font-size:14px}.scenes-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:8%;align-items:start}.scenes-grid figure{margin-top:10px}.scenes-grid img{width:100%}.scenes-grid figcaption{font:12px Arial;letter-spacing:.08em;margin-top:14px;color:var(--muted)}.credits{margin-top:26px}.credits>div{border-top:1px solid var(--line);padding:18px 0}.credits small{font:10px Arial;letter-spacing:.12em;color:var(--muted)}.credits p{margin-top:5px;font-size:15px}.credits span{display:block;font-size:13px;color:var(--muted)}.note{font-size:12px;line-height:1.8;color:var(--muted);margin-top:14px}.listen{background:var(--green);color:var(--paper);display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.listen h2{margin-top:20px}.listen-options{display:grid;gap:40px}.listen article+article{border-top:1px solid #59715d;padding-top:35px}.listen h3{font:35px var(--serif);margin:12px 0 18px}.listen p{font-size:14px;color:#d5dfcd}.badge{display:inline-block;border:1px solid #77896b;font-size:13px;padding:5px 15px;margin-top:22px}.button{display:inline-block;border:1px solid var(--green);padding:13px 28px;font-size:14px;transition:background .2s,color .2s}.button:hover{background:var(--green);color:white}.button.light{border-color:#c6d4b5;margin-top:24px}.button.light:hover{background:#f4f5ec;color:var(--green)}.listen .note{font-size:12px;color:#c1ceb8}.contact{text-align:center}.contact h2{margin:25px 0}.contact p{margin-bottom:30px}footer{border-top:1px solid var(--line);margin:0 5%;padding:35px 0;display:flex;gap:30px;align-items:center}footer p,footer small,footer>a:last-child{font:12px/1.8 Arial}footer small{margin-left:auto}.skip{position:fixed;top:-100px;left:10px;background:white;padding:10px;z-index:30}.skip:focus{top:10px}dialog{border:0;padding:60px 45px 45px;background:var(--paper);color:var(--ink);max-width:900px;width:90%;max-height:90vh;overflow:auto}dialog::backdrop{background:#09251bd9}.close-dialog{position:absolute;top:15px;right:20px;background:none;border:0;font-size:14px;padding:5px}.dialog-content{display:grid;grid-template-columns:1fr 1.15fr;gap:35px;align-items:start}.dialog-content h2{font-size:32px;margin:15px 0}.dialog-content p{margin-bottom:16px}.dialog-content .button{margin-top:10px}.dialog-content img{width:100%}body.modal-open{overflow:hidden}@media(min-width:1600px){.hero{min-height:750px}.hero-art img{object-fit:contain}.hero-copy{padding-left:18%}}@media(max-width:800px){header{padding:20px 6%;position:relative;z-index:5}.logo{font-size:28px}.menu-toggle{display:block;border:1px solid var(--line);background:none;font:12px Arial;letter-spacing:.1em;padding:12px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;border-bottom:1px solid var(--line);flex-wrap:wrap;gap:18px 25px}nav.visible{display:flex}.hero{grid-template-columns:1fr;min-height:0}.hero-art{order:-1}.hero-art img{height:auto;max-height:none;object-fit:contain}.hero-art figcaption{font-size:9px;right:8px;bottom:8px}.hero-copy{padding:38px 8% 40px}.hero h1{font-size:36px;margin:22px 0 12px}.hero h1 br{display:none}.hero-en{font-size:22px}.intro{margin:22px 0}.hero-foot{padding-top:30px}.section{padding:65px 7%}.about,.listen,.scenes-grid{grid-template-columns:1fr;gap:36px}.about h2 br{display:none}.section-top{display:block;margin-bottom:32px}.section-top>p{margin-top:18px}.albums{grid-template-columns:repeat(2,1fr);gap:28px 18px}.album h3{font-size:19px}.meta{font-size:9px;margin-top:12px}.open{position:static;opacity:1;background:none;color:var(--muted);font-size:11px;padding:7px 0}.album .meta{margin-top:3px}.lead{font-size:23px}.instrument-list{gap:20px;font-size:18px}.contact p br{display:none}footer{flex-wrap:wrap;gap:20px}footer small{margin:0}.dialog-content{grid-template-columns:1fr}.dialog-content img{max-width:260px;margin:auto}dialog{padding:55px 25px 30px}.dialog-content h2{font-size:29px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:800px){.hero h1 br,.about h2 br{display:block}}

.cover img[src="assets/beautiful-love-covers.webp"]{object-fit:contain;background:#fff}

.members{grid-column:1 / -1;width:100%;max-width:880px;margin:16px auto 0}.members img{width:100%;height:auto}.members figcaption{display:grid;grid-template-columns:1fr 1fr;padding-top:20px;gap:20px}.members figcaption>span{font:24px/1.5 var(--serif)}.members small{display:block;font:12px/1.6 Arial,sans-serif;letter-spacing:.12em;color:var(--muted);margin-bottom:5px}@media(max-width:800px){.members{margin-top:4px}.members figcaption{gap:12px;padding-top:14px}.members figcaption>span{font-size:19px}.members small{font-size:12px}}

.album-stream{display:inline-block;margin-top:15px;padding:7px 0;border-bottom:1px solid var(--green);font-size:14px}.album-stream:hover{color:#536742}.stream-button{background:var(--green);color:white;margin-right:10px}.stream-button[hidden]{display:none}
