*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f8f6f1;color:#183143;font:16px/1.7 "Open Sans",Arial,sans-serif}button{font:inherit;cursor:pointer}a{color:inherit}button,a{touch-action:manipulation}:focus-visible{outline:3px solid #e2ac55;outline-offset:4px}.skip{position:absolute;top:-100px;left:10px;z-index:30;background:#fff;padding:10px}.skip:focus{top:10px}.topbar{position:absolute;top:0;left:0;right:0;z-index:5;padding:22px clamp(20px,5vw,70px);display:flex;justify-content:space-between;gap:18px;color:white}.brand,.footer-title{font-weight:750;letter-spacing:.12em;font-size:.82rem;text-decoration:none}.top-link{text-decoration:none;font-size:.9rem;white-space:nowrap}.hero{min-height:700px;min-height:100svh;display:flex;align-items:end;position:relative;isolation:isolate;color:white;background:#132d42}.hero-image,.hero-image img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{z-index:-2}.hero-image img{object-fit:cover}.hero-shade{z-index:-1;background:linear-gradient(180deg,#061a2d88,#061a2d16 33%,#061a2d88 70%,#061a2ded)}.hero-content{width:min(1120px,100%);margin:auto auto 0;padding:150px 24px 55px}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-weight:750;font-size:.74rem;color:#ead7ad;margin:0 0 16px}.eyebrow.ink{color:#8b6534}h1,h2,h3{font-family:"Open Sans",Arial,sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.03em}h1{font-size:clamp(3.6rem,10vw,8rem);margin:0 0 16px}h2{font-size:clamp(2.2rem,5vw,4rem);margin:0 0 24px}h3{font-size:2rem;margin:0 0 6px}.hero-lede{max-width:520px;font-size:clamp(1.04rem,2vw,1.24rem);margin:0 0 30px}.actions,.media-actions,.share-actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:11px 19px;border:1px solid transparent;border-radius:5px;text-decoration:none;font-weight:650;font-size:.94rem;transition:background .18s}.primary{background:#f2e1bf;color:#193144}.primary:hover{background:white}.secondary{background:#10283a44;border-color:#fff;color:white}.secondary:hover{background:#ffffff33}.outline{border-color:#91a6b4;background:transparent;color:white}.outline:hover{background:#31526a}.dark{background:#16394f;color:white}.dark:hover{background:#2b556a}.light{background:transparent;border-color:#a6aaab;color:#183143}.light:hover{background:white}.scroll-cue{display:inline-block;margin-top:42px;text-decoration:none;font-size:.86rem}.section{padding:clamp(65px,9vw,116px) 24px}.content{max-width:1100px;margin:auto}.listen{background:#102b3f;color:white}.section-intro{max-width:650px;color:#d4e0e6;margin-bottom:35px}.media-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:start}.video-shell{position:relative;aspect-ratio:16/9;background:#071b2b;overflow:hidden;border-radius:7px}.video-shell>img,.video-shell>iframe{width:100%;height:100%;display:block;object-fit:cover;border:0}.video-shell:has(img):after{content:"";position:absolute;inset:0;background:#00152755;pointer-events:none}.video-play{position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);background:#f0e2c4;color:#173143;border:0;border-radius:6px;padding:15px 22px;white-space:nowrap;font-weight:750}.video-play span{margin-left:8px}.media-caption{font-size:.88rem;color:#d4e0e6}.audio-panel{padding:30px;background:#1c3b50;border:1px solid #3d5b70;border-radius:7px}.audio-panel>p:not(.eyebrow){color:#d4e0e6}.audio-panel audio{width:100%;margin:15px 0 22px}.media-actions{align-items:center}.subtle-link{font-size:.9rem;text-underline-offset:4px}.small-muted{font-size:.8rem!important;color:#b5c8d2!important;margin-bottom:0}.story{background:#f8f6f1}.story-container{display:grid;grid-template-columns:1fr 1.35fr;gap:clamp(24px,6vw,90px)}.story-body{font-size:1.05rem;line-height:1.85}.story-body p{margin:0 0 19px}.story-toggle{margin-top:8px;padding:11px 16px;background:transparent;border:1px solid #6f8290;border-radius:5px;color:#173b50;font-weight:700}.story-toggle:hover{background:#e9e5db}.share{background:#eae5da}.share-grid{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:center}.share-grid p:not(.eyebrow){max-width:580px}.share-actions{margin-top:25px}.share-status{font-size:.9rem;min-height:1.5em}.qr-card{background:white;border-radius:8px;text-align:center;padding:22px 25px;box-shadow:0 8px 32px #1a35421a}.qr-card button{border:0;background:white;padding:0;display:block;margin:auto}.qr-card img{display:block;width:190px;height:190px}.qr-card p{margin:8px 0 0;font-weight:650;font-size:.9rem}.qr-card span{font-size:.78rem;color:#5f6e78}footer{background:linear-gradient(120deg,#173c5c,#0b2840);color:white;padding:45px 24px}.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px}.footer-inner p{margin:8px 0;color:#d5e0e9}.footer-inner small{color:#bdcbd5}.footer-inner>a{text-decoration:none}dialog{border:0;border-radius:9px;padding:0;width:min(700px,calc(100% - 24px));max-height:92dvh;background:#faf9f5;color:#172d3c;box-shadow:0 20px 90px #0008}dialog::backdrop{background:#061724d9}.dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:start;padding:24px 24px 12px;border-bottom:1px solid #dedbd4}.dialog-head h2{font-size:clamp(1.8rem,5vw,2.8rem);margin:0 0 8px}.dialog-head .eyebrow{margin:0 0 6px}.close{background:#e8e6e0;border:0;border-radius:50%;height:44px;width:44px;font-size:2rem;line-height:1}.dialog-scroll{padding:18px 24px;overflow:auto;max-height:55dvh}.dialog-scroll h3{font:750 .79rem "Open Sans",Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:#86612e;margin:25px 0 9px}.dialog-scroll p{line-height:1.9;margin:0 0 18px}.dialog-foot{display:flex;gap:12px;flex-wrap:wrap;padding:14px 24px 22px;border-top:1px solid #dedbd4}.qr-dialog-content{text-align:center;padding:18px 24px 28px}.qr-dialog-content img{width:min(100%,440px);height:auto;display:block;margin:auto}.qr-dialog-content p{font-weight:650;overflow-wrap:anywhere}@media(max-width:760px){.media-grid,.story-container{grid-template-columns:1fr}.share-grid{grid-template-columns:1fr;gap:24px}.qr-card{max-width:280px}.audio-panel{padding:22px}.story-container{gap:0}}@media(max-width:520px){.topbar{padding:18px}.brand{max-width:170px;line-height:1.4}.hero{min-height:650px;min-height:100svh}.hero-content{padding:145px 20px 38px}.hero .actions{display:grid;max-width:340px}.section{padding:65px 20px}.share-actions .btn{flex:1 1 125px}.video-play{font-size:.8rem;padding:12px}.dialog-head{padding:17px}.dialog-scroll{padding:15px}.dialog-foot{padding:15px}.qr-card{margin:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Personal photographs support the story without overwhelming the music. */
.story-photos{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:24px 0 20px}.story-photos figure{margin:0;min-width:0}.story-photos img{display:block;width:100%;height:clamp(170px,21vw,245px);object-fit:cover;border-radius:6px}.story-photos figure:first-child img{object-position:center 36%}.story-photos figure:nth-child(2) img{object-position:center 38%}.story-photos figcaption{font-size:.78rem;line-height:1.4;color:#63717a;margin-top:8px}@media(max-width:520px){.story-photos{gap:10px}.story-photos img{height:170px}.story-photos figcaption{font-size:.72rem}}

/* Keep the QR code behind a share action, not visible in the page layout. */
.share-grid{grid-template-columns:1fr;gap:0}

/* Balanced footer: title left, legal centre, creator mark right. */
.footer-inner{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:28px}
.footer-legal{justify-self:center}
.footer-logo-link{justify-self:end;display:inline-flex;align-items:center;opacity:.88;transition:opacity .2s ease}
.footer-logo-link:hover,.footer-logo-link:focus-visible{opacity:1}
.footer-logo-link img{display:block;width:170px;max-width:100%;height:auto;object-fit:contain}
@media(max-width:640px){.footer-inner{grid-template-columns:minmax(0,1fr) auto;gap:18px}.footer-legal{grid-column:1;grid-row:2;justify-self:start}.footer-logo-link{grid-column:2;grid-row:1 / span 2}.footer-logo-link img{width:130px}}
