:root{color:#20302e;background:#f8f8f5;font:16px/1.75 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{min-width:320px;margin:0}
img{display:block;max-width:100%}
a{color:inherit}
.wrap{width:min(1100px,calc(100% - 32px));margin-inline:auto}
.narrow{width:min(760px,calc(100% - 32px));margin-inline:auto}
.skip-link{position:absolute;top:-80px;left:12px;z-index:10;padding:9px 15px;background:#fff}
.skip-link:focus{top:12px}
:focus-visible{outline:3px solid #a96b4d;outline-offset:4px}
#watch{scroll-margin-top:80px}
.site-header{position:sticky;top:0;z-index:5;border-bottom:1px solid #d9dfdd;background:rgba(248,248,245,.95);backdrop-filter:blur(14px)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px}
.brand{text-decoration:none;font-size:.96rem;font-weight:850;line-height:1.1}
.brand small{display:block;margin-top:5px;color:#6e7871;font-size:.61rem;letter-spacing:.12em}
.back-link{text-decoration:none;font-size:.8rem;font-weight:800;white-space:nowrap}
.back-link:hover,.text-link:hover,.video-fallback a:hover{color:#985338}
.hero{padding:46px 0 54px;background:#eaf0f1}
.hero-grid{display:grid;gap:30px}
.eyebrow{margin:0 0 12px;color:#915139;font-size:.78rem;font-weight:850}
h1,h2,p{overflow-wrap:anywhere}
h1{margin:0;font-size:clamp(2.5rem,9vw,4.4rem);font-weight:850;line-height:1.23;letter-spacing:-.055em}
.hero-copy>p:not(.eyebrow){max-width:550px;margin:20px 0 25px;color:#4c5d5c;font-size:.96rem}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:50px;padding:11px 19px;color:#fff;background:#203a32;text-decoration:none;font-size:.86rem;font-weight:850}
.button:hover{background:#31564a}
.hero-image{padding:9px;background:#fff;box-shadow:0 13px 28px rgba(25,42,48,.12)}
.hero-image img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.watch{padding:66px 0 74px;background:#fff}
.watch h2,.explain h2{margin:0;font-size:clamp(1.8rem,5.8vw,2.8rem);line-height:1.4;letter-spacing:-.05em}
.watch p,.explain p{color:#4c5d5c;font-size:.94rem;line-height:1.9}
.watch>div>p{margin:17px 0 26px}
.video-frame{position:relative;overflow:hidden;width:100%;aspect-ratio:16/9;background:#203a32}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.watch .video-fallback{margin:12px 0 0;font-size:.78rem}
.video-fallback a,.text-link{text-underline-offset:4px}
.explain{padding:62px 0 66px;background:#f1efe9}
.explain-grid{display:grid;gap:20px}
.explain p{margin:0 0 16px}
.actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 25px;margin-top:25px}
.text-link{color:#89492f;font-size:.85rem;font-weight:800}
.story-note{margin-block:0;padding-block:23px 30px;color:#6a716d;font-size:.76rem;line-height:1.8}
footer{border-top:1px solid #d9dfdd;padding:23px 0;color:#68716c;font-size:.75rem}
footer .wrap{display:flex;justify-content:space-between;gap:16px}
footer a{text-decoration:none}
@media(min-width:760px){
  .wrap{width:min(1100px,calc(100% - 64px))}
  .hero{padding:74px 0 78px}
  .hero-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:center;gap:6%}
  .watch{padding:88px 0 96px}
  .explain{padding:82px 0}
  .explain-grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:8%}
}
@media(max-width:390px){.back-link{font-size:.72rem}.hero{padding-top:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
