:root{--yk-forest:#173c31;--yk-moss:#76a66d;--yk-blue:#006d9b;--yk-sea:#072d43;--yk-mist:#eef3ed;--yk-ink:#172d32}
*{box-sizing:border-box}
body.yakushima-page{margin:0;background:#fff;color:var(--yk-ink);font-family:"Noto Sans JP",sans-serif}
.yk-header{height:82px;padding:0 clamp(20px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:#fff}
.yk-header .back-link{color:var(--yk-forest);font-weight:700;text-decoration:none;border-bottom:1px solid #9db3a8;padding-bottom:4px}
.yk-hero{min-height:calc(100vh - 82px);position:relative;display:flex;align-items:flex-end;background:url("yakushima/hero.webp") center/cover no-repeat}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,24,32,.88),rgba(5,47,65,.42) 60%,rgba(0,0,0,.08))}
.hero-copy{position:relative;z-index:1;color:#fff;padding:clamp(80px,12vh,150px) clamp(24px,8vw,120px);max-width:1120px}
.eyebrow{font-family:Oswald,sans-serif;letter-spacing:.18em;font-size:.9rem;font-weight:600;text-transform:uppercase;color:#a7dcac}
.eyebrow.dark{color:var(--yk-blue)}
.hero-copy h1{font-size:clamp(3.1rem,7.8vw,7.2rem);line-height:1.08;margin:.16em 0 .25em;font-weight:900;letter-spacing:-.045em}
.hero-copy h1 em{display:inline-block;font-style:normal;color:#bdecb5;white-space:nowrap}
.hero-copy>p:not(.eyebrow){font-size:clamp(1rem,2vw,1.25rem);line-height:2}
.hero-copy>a{display:inline-block;margin-top:22px;padding:15px 25px;background:#fff;color:var(--yk-forest);font-weight:800;text-decoration:none}
figure{margin:0}img{display:block;width:100%;height:100%;object-fit:cover}figcaption{font-size:.82rem;color:#687b78;margin-top:10px}
.split{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(36px,7vw,100px);padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px)}
.split figure img{aspect-ratio:4/3}
h2{font-size:clamp(2.15rem,4.7vw,4.7rem);line-height:1.23;margin:.2em 0 .42em;letter-spacing:-.04em}
.two-line-heading span{display:block;white-space:nowrap}.yk-about .two-line-heading{font-size:clamp(1.55rem,3.6vw,3.65rem)}
.split p:not(.eyebrow),.sea-copy p:not(.eyebrow),.section-heading>p:not(.eyebrow),.forest-copy p:not(.eyebrow),.yk-ending>div p:not(.eyebrow){font-size:1.05rem;line-height:2.05}
.yk-sea{background:var(--yk-sea);color:#fff;padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px)}
.sea-copy{max-width:850px;margin-bottom:54px}.sea-copy p:not(.eyebrow){color:#d8e8ee}
.sea-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:18px}.sea-grid .wide{grid-row:span 2}.sea-grid img{aspect-ratio:4/3}.sea-grid .wide img{height:100%}.yk-sea figcaption,.yk-story figcaption,.yk-forest figcaption{color:#cbd9d4}
.yk-diving{padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px);background:#fff}
.section-heading{max-width:850px;margin-bottom:52px}.section-heading>p:not(.eyebrow){max-width:760px;word-break:normal;line-break:strict}.yk-diving .section-heading{max-width:none}.yk-diving .section-heading>p:not(.eyebrow){max-width:none;font-size:clamp(.9rem,1.2vw,1.05rem);white-space:nowrap}.dive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dive-grid img{aspect-ratio:4/3}
.yk-diving h2{font-size:clamp(1.15rem,3.7vw,3.7rem);white-space:nowrap}
.yk-story{background:linear-gradient(125deg,#12382e,#0a2a36);color:#fff}.yk-story figure{order:2}.yk-story h2{white-space:nowrap;font-size:clamp(2rem,4vw,4.1rem)}
.story-photos{display:grid;gap:18px;order:2}.story-photos figure{order:initial}.story-photos .moriyama-photo img{aspect-ratio:4/3}.story-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.story-photo-pair img{aspect-ratio:4/3}.story-photo-pair figcaption{line-height:1.6}
.memory-note{margin-top:24px;padding:20px 22px;border-left:4px solid #9bd39e;background:#ffffff10;color:#e4efe9;font-weight:500}
.yk-people{padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px);background:#f4f8f7}
.people-copy{max-width:900px;margin-bottom:52px}.people-copy p:not(.eyebrow){font-size:1.05rem;line-height:2.05}.people-copy h2{white-space:nowrap;font-size:clamp(1.35rem,4vw,4.1rem)}
.people-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:18px}.people-grid .wide{grid-row:span 2}.people-grid img{aspect-ratio:4/3}.people-grid .wide img{height:100%}
.yk-forest{padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px);background:var(--yk-forest);color:#fff}
.forest-copy{max-width:910px;margin-bottom:54px}.forest-copy p:not(.eyebrow){color:#d8e5dc}
.forest-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:18px}.forest-grid .large{grid-row:span 2}.forest-grid img{aspect-ratio:4/3}.forest-grid .large img{height:100%}
.yk-ending{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(36px,7vw,100px);padding:clamp(72px,10vw,140px) clamp(22px,8vw,120px);background:var(--yk-mist)}
.yk-ending img{aspect-ratio:16/10}
.yk-note{text-align:center;padding:24px;background:#e4ece6;color:#52675f;font-size:.9rem}
.yk-cta{text-align:center;padding:clamp(85px,12vw,160px) 22px;background:linear-gradient(rgba(3,31,42,.63),rgba(3,31,42,.88)),url("yakushima/mountains-harbor.webp") center/cover;color:#fff}
.yk-cta h2{margin:.2em auto;max-width:900px}.yk-cta>p:not(.eyebrow){font-size:1.05rem}.yk-cta>div{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:30px}
.button{padding:15px 25px;text-decoration:none;font-weight:800}.button.primary{background:#fff;color:var(--yk-forest)}.button.secondary{color:#fff;border:1px solid rgba(255,255,255,.65)}
footer{padding:34px clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff}footer>p{font-size:.78rem;color:#70838b}footer>a:last-child{color:var(--yk-forest);font-weight:700;text-decoration:none}
@media(max-width:760px){.yk-header{height:68px}.yk-header .brand small{display:none}.yk-header .back-link{font-size:.78rem}.yk-hero{min-height:680px}.hero-copy{padding:90px 22px 64px}.hero-copy h1{font-size:clamp(2.45rem,12vw,3.2rem)}.split,.yk-ending{grid-template-columns:1fr}.yk-about figure{order:2}.sea-grid,.dive-grid,.people-grid,.forest-grid{grid-template-columns:1fr}.sea-grid .wide,.people-grid .wide,.forest-grid .large{grid-row:auto}.sea-grid img,.sea-grid .wide img,.dive-grid img,.people-grid img,.people-grid .wide img,.forest-grid img,.forest-grid .large img{height:auto;aspect-ratio:4/3}.yk-diving .section-heading>p:not(.eyebrow){font-size:1rem;white-space:normal}.yk-story h2{white-space:normal;font-size:clamp(1.75rem,8vw,2.45rem)}.yk-story figure{order:2}.story-photo-pair{grid-template-columns:1fr}.yk-ending figure{order:2}footer{flex-direction:column;text-align:center}}
