@charset "UTF-8";
:root{color-scheme:light;--paper:#f8f5ed;--ink:#453c32;--muted:#786e60;--sea:#3b6966;--line:#ded8cc;--gold:#b18b55;--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%;height:auto}figure{margin:0}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--sea);outline-offset:6px}a:hover{color:var(--sea)}p,h1,h2{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}button{cursor:pointer}::selection{background:#d3e3db;color:#243f3b}.skip-link{position:fixed;top:1rem;left:1rem;z-index:20;transform:translateY(-200%);padding:.8rem 1.2rem;background:var(--ink);color:white}.skip-link:focus{transform:translateY(0)}.small-label{font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);line-height:1.7}.name-dot,.wordmark span{color:var(--gold)}
/* The front door: just Suawi, and somewhere to wander next. */
.home{background:radial-gradient(ellipse at 50% 48%,#fffdf6 0, var(--paper) 64%);min-height:100svh;display:flex;flex-direction:column}.home-main{min-height:calc(100svh - 58px);display:flex;flex-direction:column;align-items:center;padding:32px 24px 24px}.home-heading{text-align:center;z-index:1}.home-heading .small-label{margin:0 0 7px}.home-heading h1{font-size:clamp(44px,5.2vw,66px);letter-spacing:-.045em;margin:0;line-height:1.08}.home-portrait{display:flex;align-items:center;justify-content:center;flex:1;width:min(100%,1080px);min-height:0;padding:12px 0 6px}.home-portrait img{width:auto;height:auto;max-height:calc(100svh - 265px);max-width:100%;object-fit:contain}.home-paths{display:flex;flex-direction:column;align-items:center;gap:15px;padding-top:4px}.story-invitation{font-family:var(--serif);font-size:clamp(21px,2vw,25px);display:flex;align-items:center;gap:28px;padding:7px 0;border-bottom:1px solid #b0bcb1}.link-arrow{font-family:var(--sans);font-size:22px;color:var(--sea)}.quiet-link{font-size:.75rem;color:var(--muted);padding:4px}.home-footer{min-height:58px;display:flex;align-items:center;justify-content:center;gap:25px;font-size:.65rem;color:var(--muted);padding:12px 24px;flex-wrap:wrap}
/* Quiet navigation and long-form reading. */
.site-header{max-width:1424px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:26px 48px}.wordmark{font-family:var(--serif);font-size:34px;letter-spacing:-.06em}.site-header nav{display:flex;gap:30px;font-size:.8rem}.site-header nav a{padding:9px 0;position:relative}.site-header nav a[aria-current=page]:after{content:"";height:1px;background:var(--gold);position:absolute;bottom:1px;left:0;right:0}.story-heading{text-align:center;padding:64px 20px 48px}.story-heading .small-label{margin-bottom:22px}.story-heading h1{font-size:clamp(45px,6.4vw,88px);line-height:1.04;letter-spacing:-.045em;margin-bottom:23px}.story-subtitle{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--muted);margin:0}.story-picture{max-width:1216px;margin:0 auto 64px;padding:0 32px}.story-picture .image-button{border-radius:5px}.image-button{display:block;width:100%;padding:0;border:0;background:#eee5d5;position:relative;overflow:hidden}.image-button img{width:100%}.zoom-mark{position:absolute;bottom:14px;right:14px;width:34px;height:34px;background:#f8f5ede8;border-radius:50%;display:flex;justify-content:center;align-items:center;color:var(--ink);font-size:20px;transition:transform .2s,background .2s}.image-button:hover .zoom-mark{transform:translate(1px,-1px);background:white}.story-picture figcaption{margin-top:13px;font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.5;text-align:center;color:var(--muted)}.reading{max-width:696px;margin:0 auto;padding:0 28px}.reading h2{font-size:clamp(28px,3.5vw,39px);line-height:1.2;letter-spacing:-.028em;margin-bottom:30px}.reading p{font-family:var(--serif);font-size:20px;line-height:1.83;margin-bottom:29px;hyphens:auto}.chapter-label{display:flex;align-items:center;gap:14px;color:var(--gold);font-size:11px;font-weight:500;letter-spacing:.1em;margin-bottom:16px}.chapter-line{width:43px;height:1px;background:#c5b99e}.chapter-opening:first-letter{float:left;font-size:67px;line-height:.87;margin:9px 8px 0 0;color:var(--sea)}.story-pause{font-family:var(--serif);font-size:53px;color:#b1c6bd;text-align:center;line-height:1;margin:54px auto 65px}.chapter-head{margin-bottom:38px}.chapter-head h2{margin:0}.final-picture{margin-top:53px}.story-ending .end-mark{color:var(--sea);font-style:italic;text-align:center;font-size:21px;margin:42px 0 0}.story-ending{padding-bottom:72px}.after-story{max-width:1152px;margin:0 auto;display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:28px 0 64px;font-size:.85rem}.after-story a:last-child{color:var(--sea)}.site-footer{max-width:1328px;margin:auto;padding:26px 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-top:1px solid var(--line);font-size:.72rem;color:var(--muted)}.site-footer> a{font-family:var(--serif);font-size:17px}.site-footer>div{display:flex;gap:24px}
/* An album, with room for each picture to breathe. */
.album{max-width:1328px;margin:auto;padding:0 48px}.album-heading{padding:63px 0 57px}.album-heading .small-label{margin-bottom:17px}.album-heading h1{font-size:clamp(43px,6vw,76px);line-height:1.1;letter-spacing:-.045em;margin:0}.album-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:23px}.album-section-heading h2{font-size:28px;margin:0}.album-section-heading>a{font-size:.78rem;color:var(--sea)}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.gallery-grid .image-button{border-radius:4px}.gallery-grid img{aspect-ratio:4/3;object-fit:cover}.gallery-grid .photo-original img{object-position:center 47%}.gallery-grid figcaption{margin-top:16px;line-height:1.6}.gallery-grid figcaption>span{display:block;font-family:var(--serif);font-size:19px}.gallery-grid figcaption small{display:block;font-size:.65rem;color:var(--muted);margin-top:4px}.album-elsewhere{margin-top:76px}.site-info{max-width:640px;padding:42px 0 70px;margin:82px auto 0;border-top:1px solid var(--line);scroll-margin-top:35px}.site-info h2{font-size:29px;margin-bottom:20px}.site-info p{font-family:var(--serif);font-size:17px;line-height:1.75;margin-bottom:15px}.site-info .privacy-note{font-family:var(--sans);font-size:.73rem;line-height:1.8;color:var(--muted);margin:24px 0}.text-link{font-size:.8rem;color:var(--sea);border-bottom:1px solid #b0bcb1;padding-bottom:3px}
/* Native dialog provides focus containment and Escape to close. */
.lightbox{border:0;padding:64px 22px 20px;color:var(--paper);background:#243231;width:calc(100vw - 44px);max-width:1540px;max-height:calc(100svh - 44px);border-radius:7px;overflow:auto}.lightbox::backdrop{background:#132523e8;backdrop-filter:blur(4px)}.lightbox img{margin:auto;max-height:calc(100svh - 184px);max-width:100%;width:auto;object-fit:contain}.lightbox>p{font-family:var(--serif);font-size:18px;text-align:center;margin:19px 0 2px;line-height:1.4}.lightbox-close{position:absolute;top:13px;right:20px;border:0;background:none;color:white;display:flex;gap:13px;align-items:center;padding:7px;font-size:13px}.lightbox-close span{font-size:27px;line-height:1}.lightbox-close:focus-visible{outline-color:#f2e5cd}.lightbox-open{overflow:hidden}
@media(min-width:1600px){.home-portrait{width:min(100%,1180px)}}
@media(max-width:800px){.site-header{padding:20px 28px}.story-heading{padding-top:40px}.story-picture{padding:0 24px}.after-story{margin:0 28px}.album{padding:0 28px}.album-heading{padding-top:40px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 21px}.site-footer{padding:24px 28px}.home-main{padding-top:29px}.home-portrait{padding:25px 0}.home-portrait img{max-height:calc(100svh - 280px)}}
@media(max-width:520px){.home-main{min-height:calc(100svh - 74px);padding:30px 16px 24px}.home-heading h1{font-size:53px}.home-portrait{padding:27px 0 16px;width:calc(100% + 8px)}.home-portrait img{max-height:none;width:100%}.home-footer{font-size:.6rem;gap:17px;padding:14px 18px;min-height:74px}.home-paths{gap:12px}.story-invitation{font-size:22px;gap:25px}.site-header{padding:20px 20px}.wordmark{font-size:31px}.site-header nav{font-size:.72rem;gap:21px}.story-heading{padding:33px 20px 34px}.story-heading h1{font-size:53px}.story-subtitle{font-size:16px}.story-heading .small-label{margin-bottom:17px}.story-picture{padding:0 14px;margin-bottom:43px}.story-picture figcaption{font-size:13px;padding:0 10px;margin-top:11px}.reading{padding:0 25px}.reading p{font-size:18px;line-height:1.82;margin-bottom:25px}.reading h2{font-size:30px;margin-bottom:24px}.chapter-opening:first-letter{font-size:59px;margin-top:8px}.story-pause{margin:32px auto 41px}.chapter-head{margin-bottom:30px}.chapter-head h2{margin:0}.final-picture{margin-top:34px}.story-ending{padding-bottom:47px}.story-ending .end-mark{font-size:20px;margin-top:32px}.after-story{margin:0 22px;padding:24px 0 44px;font-size:.76rem}.site-footer{padding:24px 22px;flex-direction:column;align-items:flex-start;gap:18px}.site-footer>div{gap:25px}.album{padding:0 22px}.album-heading{padding:35px 0 38px}.album-heading h1{font-size:46px}.album-heading .small-label{font-size:.57rem}.album-section-heading{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:20px}.album-section-heading h2{font-size:27px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid img{aspect-ratio:auto;object-fit:contain}.gallery-grid .photo-original img{max-height:none}.gallery-grid figcaption{margin-top:12px}.gallery-grid figcaption>span{font-size:21px}.gallery-grid figcaption small{font-size:.68rem}.album-elsewhere{margin-top:48px}.site-info{margin-top:49px;padding:32px 0 46px}.site-info h2{font-size:27px}.site-info p{font-size:16px}.lightbox{width:calc(100vw - 18px);max-height:calc(100svh - 30px);padding:59px 10px 16px}.lightbox img{max-height:calc(100svh - 170px)}.lightbox>p{font-size:16px}.lightbox-close{right:12px}.zoom-mark{width:31px;height:31px;bottom:11px;right:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.zoom-mark{transition:none}}
/* A small illustrated invitation; the whole preview opens the story. */
.home-paths{max-width:100%}
.story-invitation{display:grid;grid-template-columns:120px minmax(0,1fr) 20px;gap:18px;max-width:100%;padding:10px 0;line-height:1.25}
.story-thumbnail{width:120px;height:68px;object-fit:cover;border-radius:6px}
@media(max-width:520px){.story-invitation{grid-template-columns:92px minmax(0,1fr) 18px;gap:13px;font-size:20px;max-width:360px}.story-thumbnail{width:92px;height:52px}}
@media print{body{background:white}.site-header,.site-footer,.home-footer,.after-story,.zoom-mark,.skip-link{display:none}.story-heading{padding:25px 0}.reading{max-width:100%;padding:0}.reading p{font-size:12pt;line-height:1.6}.story-picture{max-width:100%;padding:0;break-inside:avoid}.image-button{background:transparent}.story-pause{margin:20px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.lightbox{display:none}}

/* Two small invitations keep Suawi at the centre of the home page. */
.home-paths{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px;row-gap:12px;width:min(100%,780px)}
.home-paths .quiet-link{grid-column:1 / -1;text-align:center}
.home-paths .story-invitation{font-size:22px;gap:14px;grid-template-columns:100px minmax(0,1fr) 20px}
.home-paths .story-thumbnail{width:100px;height:56px}
@media(max-width:660px){.home-paths{display:flex;flex-direction:column;align-items:stretch;max-width:360px}.home-paths .story-invitation{font-size:20px;grid-template-columns:92px minmax(0,1fr) 18px}.home-paths .story-thumbnail{width:92px;height:52px}.home-paths .quiet-link{align-self:center}.home-portrait img{max-height:none}}
@media(max-width:520px){.site-header{gap:16px;align-items:flex-start}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:2px 14px;max-width:200px}.story-subtitle{line-height:1.6}.after-story{line-height:1.6}.after-story a:last-child{text-align:right}}

/* A third story keeps the invitations balanced beneath Suawi. */
.home-paths .forest-invitation{grid-column:1 / -1;justify-self:center;width:min(100%,374px)}
.album-story-link{display:inline-block;margin-top:10px}
@media(max-width:660px){.home-paths .forest-invitation{width:100%}}

/* Forest chapters alternate wide scenes with closer looks at the journey. */
.forest-chapter .story-picture{margin-top:40px;margin-bottom:46px}
.forest-chapter .forest-detail{max-width:880px}
.forest-chapter>.story-picture:last-child{margin-bottom:0}
@media(max-width:520px){.forest-chapter .story-picture{margin-top:30px;margin-bottom:34px}}

/* A quiet language ribbon shared by Suawi's home, album and stories. */
.language-menu{width:100%;max-width:1424px;margin:0 auto;display:flex;justify-content:flex-end;align-items:center;gap:5px;padding:15px 42px 0;flex-shrink:0}
.language-menu a{display:flex;align-items:center;justify-content:center;gap:6px;padding:7px 9px;border:1px solid transparent;border-radius:18px;color:var(--muted);font-size:11px;line-height:1.3;white-space:nowrap}
.language-menu a:hover{background:#ebece3;color:var(--sea)}
.language-menu a[aria-current=true]{border-color:#becdc3;background:#edf1e9;color:var(--sea)}
.language-flag{font-size:18px;line-height:1}
.home-main{min-height:calc(100svh - 110px);padding-top:23px}
.home-portrait img{max-height:calc(100svh - 380px)}
.translation-note{max-width:650px;padding:13px 20px;margin:20px auto 0;text-align:center;font-size:14px;line-height:1.6;background:#edf1e9;border-radius:8px;color:var(--sea)}
.site-info .language-memory-note{margin-top:-15px}
@media(max-width:800px){.language-menu{padding:13px 22px 0}}
@media(max-width:660px){.home-portrait img{max-height:none}.home-main{padding-top:26px}}
@media(max-width:520px){.language-menu{justify-content:center;gap:3px;padding:11px 8px 0}.language-menu a{flex-direction:column;gap:4px;padding:7px 8px;font-size:10px;border-radius:12px;min-width:52px}.language-flag{font-size:20px}.home-main{min-height:calc(100svh - 138px)}.translation-note{margin:18px 16px 0}}
@media print{.language-menu,.translation-note{display:none}}

/* Copenhagen travel chapter */
.copenhagen-story .story-heading h1 {max-width: 900px; margin-left:auto; margin-right:auto; font-size:clamp(2.5rem,5.2vw,4.4rem);}
.copenhagen-story figcaption small, .copenhagen-album-card figcaption small {display:block; font: 12px/1.6 sans-serif; letter-spacing:.04em; opacity:.7; margin-top:6px;}
.copenhagen-originals {max-width:1152px; margin:80px auto; padding:0 24px;}
.copenhagen-originals .reading {padding:0; margin-bottom:30px;}
.copenhagen-originals .gallery-grid {grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px;}
.copenhagen-originals figure {margin:0;}
.copenhagen-originals img {width:100%; height:220px; object-fit:cover;}
.copenhagen-originals figcaption {font-size:14px; line-height:1.5; margin-top:12px;}
.copenhagen-sources {margin:70px auto; font-size:16px;}
.copenhagen-sources summary {cursor:pointer; font-family:system-ui,sans-serif; font-size:15px;}
.copenhagen-sources ul {padding-left:20px;}
.copenhagen-sources a {text-decoration:underline; text-underline-offset:3px;}
@media(max-width:800px){.copenhagen-originals .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.site-header nav{gap:12px;}}
@media(max-width:520px){.copenhagen-originals img{height:180px;}.copenhagen-originals{padding:0 20px;}}
