:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#fff7e6;background:#142d35;font-synthesis:none;--cream:#fff1d5;--dim:#d4d8cc;--gold:#efc783;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}button:disabled{opacity:.3;cursor:default}[hidden]{display:none!important}.story-shell{position:relative;width:100%;height:100svh;min-height:540px;isolation:isolate;overflow:hidden}.experience{position:absolute;inset:0;overflow:hidden;background:#15313a;z-index:0}.experience:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#061b3055 0%,transparent 22%,transparent 51%,#051c3055 70%,#061a2adb 100%)}#world,#world canvas{position:absolute;inset:0;width:100%;height:100%;display:block}#world canvas{touch-action:pan-y}.site-header{position:absolute;z-index:4;top:32px;left:44px;right:44px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.site-header>*{pointer-events:auto}.wordmark{text-decoration:none;color:#fff4dc;font-size:14px;font-weight:500;letter-spacing:.3px;text-shadow:0 2px 14px #0006}.wordmark em{font:italic 22px var(--serif);margin-left:6px}.header-actions{display:flex;gap:10px}.quiet-button{border:1px solid #ecf0dd30;background:#112c3a55;backdrop-filter:blur(12px);color:#f1efdf;border-radius:30px;padding:10px 15px;min-height:40px;font-size:13px;display:flex;gap:7px;align-items:center}.quiet-button[aria-pressed=true]{background:#46646a9c;border-color:#e7dda868}.quiet-button span[aria-hidden]{font-size:19px;line-height:16px}.stage-heading{position:absolute;inset:105px 45px auto;z-index:2;display:flex;justify-content:space-between;font-size:12px;color:#e2e1cd;letter-spacing:2.3px;pointer-events:none}#chapter-kicker{opacity:0}#date-card{margin-left:auto;letter-spacing:1.5px;text-shadow:0 2px 12px #000}.split-line{position:absolute;top:0;bottom:0;left:50%;width:1px;background:linear-gradient(transparent,#e5e6c938,transparent);transition:opacity 1.1s;pointer-events:none;z-index:1}.stage-note{position:absolute;left:50%;top:25%;transform:translateX(-50%);font:italic 45px var(--serif);text-shadow:0 3px 30px #0008;color:#fff7e1;opacity:0;transition:opacity .7s;pointer-events:none;z-index:2}.stage-note.show{opacity:1}.explore-button{position:absolute;right:46px;bottom:240px;z-index:4;border:0;border-bottom:1px solid #efe5c85c;background:transparent;color:#ece7d3;padding:11px 0;font-size:13px;display:flex;align-items:center;gap:20px;text-shadow:0 2px 15px #000}.explore-button span{font-size:22px;line-height:1}.explore-button:hover{color:white;border-bottom-color:white}.detail-card{position:absolute;right:44px;bottom:291px;width:330px;max-width:calc(100% - 40px);padding:28px;border:1px solid #e8e5c329;background:#102d36f0;backdrop-filter:blur(16px);color:#f5edda;border-radius:7px;box-shadow:0 20px 50px #00142044;z-index:8;animation:card-in .25s ease-out}.detail-card h2{font:30px/1.1 var(--serif);margin:13px 0}.detail-card p{font-size:16px;line-height:1.6;margin:0;color:#dadfd2}.detail-close{position:absolute;right:8px;top:5px;font-size:28px;width:36px;height:36px;border:0;background:transparent;color:#e8e8d8}.scene-toast{position:absolute;z-index:6;bottom:270px;left:50%;transform:translateX(-50%);max-width:80%;padding:13px 22px;background:#102d38e6;color:#fff0d2;border:1px solid #f3e2b63d;border-radius:12px;font-size:15px;text-align:center}.story-panel{position:absolute;z-index:3;left:54px;right:54px;bottom:88px;display:grid;grid-template-columns:minmax(0,800px) auto;gap:50px;align-items:end;pointer-events:none}.story-panel>*{pointer-events:auto}.eyebrow{font-size:12px;font-weight:500;letter-spacing:2.6px;color:#dbc89f;text-transform:uppercase}.story-copy{max-width:850px;text-shadow:0 3px 24px #0317288c}.story-copy h1{font:400 clamp(39px,4.3vw,70px)/1.04 var(--serif);letter-spacing:-1.4px;margin:13px 0 16px;color:#fff4dc}.story-copy p{font-size:clamp(16px,1.23vw,19px);line-height:1.6;margin:0;color:#e3e7de;max-width:720px;font-weight:400}.story-copy.changing{animation:copy-in .6s ease-out}.story-navigation{display:flex;gap:24px;align-items:center;justify-content:flex-end;min-width:310px;padding-bottom:4px}.small-controls{display:flex;gap:12px;align-items:center}.icon-button{width:34px;height:44px;border:0;background:transparent;color:#eee7d3;font-size:24px}.replay-button{display:flex;gap:6px;align-items:center;border:0;background:transparent;color:#dddccb;font-size:13px}.replay-button span{font-size:22px}.next-button{display:flex;align-items:center;justify-content:space-between;gap:22px;min-width:190px;min-height:54px;padding:16px 22px;border:1px solid #e7cd9f8c;border-radius:4px;background:#f1d298;color:#183840;font-size:14px;font-weight:600;transition:background .2s,transform .2s;box-shadow:0 5px 25px #0a202f3d}.next-button:hover{background:#ffe0a7;transform:translateY(-2px)}.next-button:active{transform:translateY(1px)}.next-button span:last-child{font-size:24px;line-height:1}.story-footer{position:absolute;left:54px;right:54px;bottom:25px;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:16px}.chapter-tabs{display:flex;gap:25px}.chapter-tabs button{display:flex;gap:9px;align-items:center;border:0;background:transparent;color:#b3c3bdbb;padding:10px 0;font-size:12px}.chapter-tabs button span{font-size:12px;color:#d1c8ae8c}.chapter-tabs button[aria-current=step]{color:#ffe5af}.chapter-tabs button[aria-current=step] span{color:#eac789}.step-count{font-size:12px;letter-spacing:1.5px;color:#becfc084}.load-screen{position:absolute;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#183741;color:#f3dfb9;transition:opacity .6s}.load-screen.done{opacity:0;pointer-events:none}.load-mark{font:62px var(--serif);letter-spacing:2px}.load-mark span{font-style:italic;font-size:29px;color:#d2b484}.load-screen p{font-size:14px}.no-script{position:absolute;top:30%;padding:30px;color:white;z-index:2}.no-webgl #world{background-position:center 25%;background-size:contain;background-repeat:no-repeat}.reduced-motion *{animation:none!important;transition:none!important}@keyframes copy-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
body[data-scene=intro] .story-panel{bottom:16%;max-width:640px;display:flex;flex-direction:column;align-items:stretch;gap:28px}body[data-scene=intro] .story-copy h1{font-size:clamp(45px,4.8vw,78px)}body[data-scene=intro] .story-navigation{justify-content:flex-start;min-width:0;flex-direction:row-reverse;align-self:flex-start}body[data-scene=intro] .explore-button{bottom:115px}body[data-scene=intro] .experience:after{background:linear-gradient(90deg,#091f2adb 0%,#091f2a91 30%,#091f2a15 58%,transparent 100%),linear-gradient(0deg,#071d2bbb,transparent 30%)}
@media(max-width:1100px){.site-header{left:28px;right:28px;top:25px}.story-panel{left:32px;right:32px;bottom:91px;gap:28px;grid-template-columns:minmax(0,1fr) auto}.story-copy h1{font-size:46px}.story-navigation{flex-direction:column-reverse;align-items:flex-end;min-width:180px;gap:14px}.story-copy p{font-size:16px;max-width:620px}.stage-heading{inset:85px 30px auto}.story-footer{left:32px;right:32px}.explore-button{right:30px;bottom:275px}.detail-card{right:30px;bottom:322px}body[data-scene=intro] .story-panel{max-width:48%;gap:23px}body[data-scene=intro] .story-copy h1{font-size:55px}body[data-scene=intro] .story-navigation{flex-direction:row-reverse;gap:20px}.quiet-button{font-size:12px}}
@media(max-width:650px){.story-shell{min-height:640px}.site-header{left:20px;right:20px;top:20px}.wordmark{font-size:12px;line-height:1.4;max-width:116px}.wordmark em{display:block;font-size:21px;margin:0}.header-actions{gap:7px}.quiet-button{font-size:12px;padding:8px 10px;min-height:37px}.quiet-button span[aria-hidden]{font-size:17px}.stage-heading{inset:85px 21px auto;font-size:12px;letter-spacing:.6px}#date-card{font-size:12px;letter-spacing:1px}.split-line{left:0;right:0;top:32%;bottom:auto;height:1px;width:100%;background:linear-gradient(90deg,transparent,#e6e6cb45,transparent)}.story-panel{left:23px;right:23px;bottom:66px;display:flex;flex-direction:column;align-items:stretch;gap:18px}.eyebrow{font-size:12px;letter-spacing:2px}.story-copy h1{font-size:35px;line-height:1.07;letter-spacing:-.7px;margin:9px 0 12px}.story-copy p{font-size:16px;line-height:1.5}.story-navigation{flex-direction:row;align-items:center;justify-content:space-between;align-self:stretch;gap:10px;padding-bottom:0}.next-button{font-size:13px;min-width:180px;min-height:48px;padding:13px 16px}.small-controls{gap:4px}.replay-button{font-size:12px;gap:4px}.icon-button{width:30px}.story-footer{left:23px;right:23px;bottom:12px}.chapter-tabs{gap:10px;justify-content:space-between;width:100%}.chapter-tabs button{font-size:12px;gap:5px}.step-count{display:none}.explore-button{right:22px;bottom:318px;font-size:12px;gap:12px;padding:8px 0}.detail-card{right:20px;bottom:365px;padding:22px}.detail-card h2{font-size:26px}.scene-toast{bottom:325px;max-width:90%;width:90%;font-size:13px}.stage-note{top:25%;font-size:34px}body[data-scene=intro] .story-panel{left:23px;right:23px;max-width:none;bottom:74px;gap:21px}body[data-scene=intro] .story-copy h1{font-size:43px}body[data-scene=intro] .story-copy p{max-width:94%}body[data-scene=intro] .story-navigation{flex-direction:row;align-self:stretch;justify-content:space-between}body[data-scene=intro] .explore-button{bottom:345px}body[data-scene=intro] .experience:after{background:linear-gradient(0deg,#061d2cf2 0%,#071e2ab5 26%,#071e2a20 50%,transparent 75%),linear-gradient(180deg,#061d3044,transparent 22%)}.experience:after{background:linear-gradient(180deg,#061b3044 0%,transparent 18%,transparent 43%,#061e2b99 60%,#061b2cf2 83%,#061b2c 100%)}}
@media(max-height:700px) and (min-width:651px){.story-shell{min-height:500px}.site-header{top:20px}.story-panel{bottom:72px}.story-copy h1{font-size:40px;margin-bottom:10px}.story-copy p{font-size:16px}.explore-button{bottom:217px}.story-footer{bottom:17px}body[data-scene=intro] .story-panel{bottom:17%;max-width:46%}body[data-scene=intro] .story-copy h1{font-size:50px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
.footer-meta{display:flex;align-items:center;gap:22px}#photo-credits{border:0;background:transparent;padding:8px 0;color:#c1cbbb;font-size:12px}#credits-dialog{color:#f5edda;background:#132f39;border:1px solid #e8e5c329;padding:36px;width:420px;max-width:calc(100% - 40px);border-radius:8px}#credits-dialog::backdrop{background:#051824ba;backdrop-filter:blur(6px)}#credits-dialog h2{font:31px var(--serif);margin:15px 0}#credits-dialog p{font-size:16px;line-height:1.6;color:#dce0d4}#credits-dialog a{color:#f1d398}.story-shell{min-height:0}
@media(max-width:650px){.footer-meta{gap:0;margin-left:4px}.chapter-tabs{gap:8px}.chapter-tabs button{gap:4px;font-size:12px}.chapter-tabs button span{display:none}#photo-credits{font-size:12px}.story-footer{gap:8px}}
@media(max-height:700px) and (max-width:650px){body[data-scene=intro] .story-copy h1{font-size:34px}.story-copy h1{font-size:31px}.story-copy p{line-height:1.4}.story-panel,body[data-scene=intro] .story-panel{bottom:62px;gap:16px}.site-header{top:15px}.explore-button,body[data-scene=intro] .explore-button{bottom:300px}.detail-card{bottom:350px}}
@media(max-height:480px){html,body{overflow:auto}.story-shell{height:600px;min-height:600px}}
/* Keep all chapters within the same footer on small screens. */
.chapter-tabs{position:relative;min-width:0;flex:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#c5b47c55 transparent;justify-content:flex-start;scroll-behavior:smooth;gap:22px}.chapter-tabs button{white-space:nowrap;flex-shrink:0;font-size:13px;min-height:36px}.footer-meta{flex-shrink:0}.chapter-tabs button span{font-size:12px}.detail-card.with-photo{top:15%;bottom:auto;max-height:72svh;overflow:auto;width:420px}.detail-card img{display:block;width:100%;max-height:43svh;object-fit:contain;margin-top:18px;border-radius:3px}.detail-card.with-photo .detail-close{position:sticky;float:right;top:0;margin:-17px -17px 0 0;background:#17333ddd;border-radius:50%}
@media(max-width:650px){.chapter-tabs{gap:22px;width:auto}.chapter-tabs button{font-size:12px}.detail-card.with-photo{top:14%;max-height:74svh}.detail-card img{max-height:40svh}.story-footer{gap:16px}.footer-meta{margin-left:0}}

/* The question is optional. Its controls stay on this device. */
#reflection{grid-column:1/-1;max-width:860px;pointer-events:auto;background:#102d36ee;border:1px solid #e8e5c329;border-radius:8px;padding:20px 24px}
#reflection-options{border:0;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}
#reflection-options legend{padding:0 0 14px;font-size:17px;color:#fff1d5}
#reflection-options label{display:flex;align-items:center;gap:10px;font-size:15px;line-height:1.4;min-height:40px;padding:6px 9px;border:1px solid #e9d8b333;border-radius:4px;cursor:pointer}
#reflection-options label:has(input:checked){background:#4a6262;border-color:#efc783}
#reflection-options input{accent-color:#dfb76f;width:17px;height:17px;flex-shrink:0}
.reflection-help{font-size:13px;color:#c9d8cf;line-height:1.5;margin:16px 0 0}
#reflection-response{margin:12px 0 0;font-size:16px;color:#fff0cc;line-height:1.5;min-height:24px}
body.has-question .story-panel{grid-template-columns:1fr;gap:18px;max-width:870px;max-height:calc(100svh - 185px);overflow:auto;padding-right:6px}
body.has-question .story-copy h1{font-size:42px}body.has-question .story-copy p{font-size:16px}body.has-question .story-navigation{justify-content:space-between;flex-direction:row}body.has-question .explore-button{display:none}
#memories-dialog{color:#f5edda;background:#132f39;border:1px solid #e8e5c329;padding:34px;width:600px;max-width:calc(100% - 32px);max-height:80svh;border-radius:8px}
#memories-dialog::backdrop{background:#051824ba;backdrop-filter:blur(6px)}#memories-dialog h2{font:34px var(--serif);margin:14px 0 22px}
#memory-list{display:grid;grid-template-columns:1fr 1fr;gap:10px}#memory-list button{border:1px solid #e3cf9c55;background:#29464c;color:#f2e7cd;font-size:15px;min-height:47px;padding:10px 14px;text-align:left;border-radius:4px}#memory-list button:hover{background:#3b5960}
body[data-scene=ending] .story-navigation{flex-wrap:wrap;max-width:430px;gap:16px}
@media(max-width:650px){#reflection{padding:16px}#reflection-options{grid-template-columns:1fr;gap:6px}#reflection-options label{font-size:15px}body.has-question .story-panel{top:110px;bottom:66px;max-height:none;gap:15px;display:block}body.has-question .story-copy{margin-bottom:18px}body.has-question .story-copy h1{font-size:32px}body.has-question .story-navigation{position:sticky;bottom:0;background:#102d36;padding:14px 0 4px;margin-top:8px}#memory-list{grid-template-columns:1fr 1fr}body[data-scene=ending] .story-navigation{max-width:none;gap:10px}body[data-scene=ending] #stay-here{order:3;width:100%;justify-content:center}}

.music-loading{color:#d5c5a7}#music-error{max-width:340px;text-align:center}#music-error button{padding:12px 16px;margin:8px;border:1px solid #ddc698;border-radius:4px;background:#edd09b;color:#193740;font-size:15px}

body.centred-story .story-panel{inset:120px 32px 105px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:32px;text-align:center}
body.centred-story .story-copy{width:100%;max-width:820px;text-shadow:0 2px 18px #061724cc}
body.centred-story .story-copy h1{font-size:clamp(44px,5vw,70px);line-height:1.08;text-wrap:balance}
body.centred-story .story-copy p{max-width:660px;margin-inline:auto;font-size:19px;text-wrap:pretty}
body.centred-story .story-navigation{flex-direction:row;justify-content:center;align-items:center;align-self:center;min-width:0;gap:24px}
body.centred-story .next-button{max-width:270px;text-align:left}
body.centred-story .experience:after{background:linear-gradient(180deg,#071c2855,#071c2866 25%,#071c28b5 52%,#071c288c 76%,#071c28d9)}
body.centred-story .explore-button{display:none}
body.has-question .experience:after{background:linear-gradient(180deg,#071c2844,#071c2885 24%,#071c28bd 55%,#071c28e6)}
body.has-question .story-panel{left:50%;right:auto;width:calc(100% - 64px);transform:translateX(-50%)}
@media(max-width:650px){
  body.centred-story .story-panel{inset:105px 23px 80px;gap:26px}
  body.centred-story .story-copy h1{font-size:39px;letter-spacing:-.7px}
  body.centred-story .story-copy p{font-size:17px;line-height:1.55}
  body.centred-story .story-navigation{width:100%;gap:12px;justify-content:space-between}
  body.centred-story .next-button{min-width:0;max-width:220px;flex:1}
  body.centred-story .experience:after{background:linear-gradient(180deg,#071c2855,#071c2870 25%,#071c28bd 52%,#071c289c 76%,#071c28e6)}
  body.has-question .story-panel{width:calc(100% - 46px)}
  body.has-question .story-copy{margin-bottom:12px}
  #reflection{padding:14px}
  #reflection-options{gap:5px}
  #reflection-options legend{padding-bottom:10px}
  #reflection-options label{min-height:38px;padding:5px 8px}
  .reflection-help{margin-top:12px}
  #reflection-response{margin-top:10px;line-height:1.45}
}
@media(max-height:650px){
  body.centred-story .story-panel{top:90px;bottom:65px;gap:18px}
  body.centred-story .story-copy h1{font-size:34px;margin:10px 0}
  body.centred-story .story-copy p{font-size:16px;line-height:1.45}
}
