/* Habitat: small world, big little lives. All type is served with the site. */
@font-face{font-family:Fredoka;src:url('fonts/fredoka-latin.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:'Nunito Sans';src:url('fonts/nunito-sans-latin.woff2') format('woff2');font-style:normal;font-weight:200 900;font-display:swap}
:root{color-scheme:light;--paper:#fff9ed;--surface:#fffdf8;--soft:#ecf3e4;--ink:#173f3d;--muted:#526760;--line:#c7d7c8;--accent:#ff8669;--accent-ink:#173f3d;--gold:#f5c747;--sky:#c6e9f3;--mint:#c7e8d6;--lilac:#ddd5f2;--coral:#f9b6a1;--yellow:#ffe49b;--focus:#246a8a;--drawing-accent:#ac4f31;--shadow:0 12px 0 #173f3d0b,0 20px 45px #173f3d0c;--serif:Fredoka,'Arial Rounded MT Bold',ui-rounded,sans-serif;--sans:'Nunito Sans',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
:root[data-theme=dark]{color-scheme:dark;--paper:#173b3b;--surface:#204746;--soft:#2b5550;--ink:#fff6df;--muted:#cadbd0;--line:#56746b;--accent:#ff987c;--accent-ink:#173b3b;--gold:#ffdc79;--sky:#285767;--mint:#315e50;--lilac:#514c71;--coral:#775047;--yellow:#615536;--focus:#a7e3fa;--drawing-accent:#ffcf79;--shadow:0 12px 0 #071f261f,0 20px 45px #071f2626}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased}
button,input,select{font:inherit;color:inherit}
input::placeholder{color:var(--muted);opacity:1}
button,a,input,select,summary{-webkit-tap-highlight-color:transparent}
button,summary{cursor:pointer}
button,a,select,input{touch-action:manipulation}
button{border:1.5px solid var(--line);background:var(--surface);border-radius:16px;padding:11px 18px;min-height:46px;font-weight:750}
a{color:inherit;text-decoration-thickness:1.5px;text-underline-offset:5px}
a:hover{text-decoration-thickness:2px}
button:hover,a.button:hover{filter:brightness(.97)}
:focus-visible{outline:3px solid var(--focus);outline-offset:5px}
button:disabled{opacity:.5;cursor:default}
img,video,svg{max-width:100%;display:block}
img{height:auto}
figure{margin:0}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.08;text-wrap:balance}
h1{font-size:clamp(48px,6.5vw,88px);letter-spacing:-.035em}
h2{font-size:clamp(36px,4.2vw,56px);letter-spacing:-.025em}
h3{font-size:29px;letter-spacing:-.015em;line-height:1.18}
p{text-wrap:pretty}
p+p{margin-top:18px}
em{font-weight:650;color:inherit}
.eyebrow{display:block;font-size:12px;font-weight:900;letter-spacing:.12em;line-height:1.6;text-transform:uppercase;color:var(--muted)}
.subtle,.muted,.results-note{color:var(--muted);font-size:15px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;left:20px;top:-90px;z-index:100;background:var(--gold);color:#173f3d;padding:12px 20px;border-radius:16px;font-weight:800}
.skip-link:focus{top:12px}
.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{max-width:1320px;padding:18px 40px;min-height:98px;margin:auto;display:flex;align-items:center;gap:30px}
.brand{display:inline-flex;min-height:44px;align-items:center;gap:10px;font-family:var(--serif);font-weight:550;font-size:38px;line-height:1;text-decoration:none;letter-spacing:-.045em;white-space:nowrap}
.brand-mark{font-family:var(--serif);font-size:45px;font-weight:600;line-height:.9;position:relative;width:34px;letter-spacing:-.1em;color:var(--ink)}
.brand-mark>span{position:absolute;font-size:26px;color:var(--accent);right:-4px;top:-11px;letter-spacing:0}
.brand-note{font:800 11px/1.25 var(--sans);color:var(--muted);letter-spacing:.01em;max-width:85px;white-space:normal;margin-left:8px}
.header-inner nav{display:flex;gap:7px;margin-left:auto;align-items:center}
.header-inner nav a{min-height:44px;display:flex;align-items:center;text-decoration:none;font-size:14px;font-weight:800;white-space:nowrap;padding:10px 14px;border-radius:99px;color:var(--muted);position:relative}
.header-inner nav a:hover{background:var(--soft);color:var(--ink)}
.header-inner nav a[aria-current=page]{background:var(--gold);color:#173f3d}
.header-actions{display:flex;gap:8px;align-items:center}
select{max-width:100%;border:1.5px solid var(--line);border-radius:99px;background:var(--surface);padding:10px 28px 10px 13px;min-height:44px;font-weight:750}
#appearance{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:9px;border-radius:50%;background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}
#appearance[hidden]{display:none}
.appearance-icon{width:24px;height:24px;display:block;flex:none}
html:not(.js) .js-only{display:none}
#menu-toggle{display:none}
main{max-width:1320px;margin:auto;padding:0 40px}
#page{outline:none;min-height:60vh}
.home-hero{display:grid;grid-template-columns:.93fr 1.07fr;column-gap:48px;row-gap:0;align-items:center;background:var(--sky);border-radius:36px 36px 90px 36px;padding:60px 42px 48px;margin-top:30px;position:relative;isolation:isolate}
.home-hero:before{content:'';position:absolute;left:21px;bottom:-16px;width:80px;height:34px;background:var(--paper);border:2px solid var(--ink);border-radius:50%;transform:rotate(-16deg);z-index:-1}
.hero-heading{grid-column:1;grid-row:1;align-self:end;min-width:0}.hero-copy{grid-column:1;grid-row:2;align-self:start;min-width:0}
.hero-heading .eyebrow{display:flex;gap:10px;align-items:center;margin-bottom:22px;font-size:11px;letter-spacing:.1em;color:var(--ink)}
.seed-dot{width:11px;height:15px;border-radius:10px 1px 10px 1px;background:var(--ink);transform:rotate(28deg);display:inline-block;flex-shrink:0}
.hero-heading h1{margin-bottom:25px;font-weight:550;font-size:clamp(52px,5.45vw,78px)}
.hero-intro{font-size:18px;color:var(--ink);max-width:440px;line-height:1.65;margin-bottom:28px}
.hero-actions{display:flex;flex-wrap:wrap;gap:11px;align-items:center}
.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;text-decoration:none;min-height:50px;border-radius:99px;font-size:14px;font-weight:900;padding:13px 21px;border:1.5px solid transparent;line-height:1.4;transition:transform .16s,box-shadow .16s}
.button:hover{transform:translateY(-2px)}
.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);box-shadow:0 4px 0 #173f3d20}
.button.secondary{background:transparent;border-color:var(--ink)}
.hero-actions .button{font-size:13px;padding:13px 17px;gap:13px}
.hero-status{font-size:12px;font-weight:700;color:var(--ink);line-height:1.6;margin-top:24px;max-width:360px;display:flex;align-items:start;gap:8px}
.status-dot{margin-top:6px;display:inline-block;flex:0 0 8px;width:8px;height:8px;border-radius:50%;background:var(--ink)}
.hero-visual{grid-column:2;grid-row:1 / span 2;position:relative;min-width:0;padding-top:13px}
/* A flower doodle lives beside the photograph, never over its evidence pixels. */
.hero-visual:before{content:'';position:absolute;width:68px;height:68px;top:-56px;right:5px;background:radial-gradient(circle at 50% 50%,var(--gold) 0 16%,transparent 17%),radial-gradient(ellipse at 50% 24%,var(--accent) 0 23%,transparent 24%),radial-gradient(ellipse at 50% 76%,var(--accent) 0 23%,transparent 24%),radial-gradient(ellipse at 24% 50%,var(--accent) 0 23%,transparent 24%),radial-gradient(ellipse at 76% 50%,var(--accent) 0 23%,transparent 24%);transform:rotate(13deg)}
.photo{min-width:0}
.image-button{display:block;padding:0;position:relative;overflow:hidden;border:0;border-radius:18px;width:100%;background:var(--soft);text-align:inherit}
.image-button img{width:100%;aspect-ratio:16/10;object-fit:cover}
.hero-photo{background:var(--surface);padding:10px 10px 2px;border-radius:22px;transform:rotate(2deg);box-shadow:var(--shadow)}
.hero-photo .image-button{border-radius:14px;box-shadow:none;border:0}
.hero-photo img{aspect-ratio:1.18;object-fit:cover;object-position:50% 50%}
.image-open{position:absolute;right:12px;bottom:12px;width:33px;height:33px;border-radius:50%;background:#fff9edee;color:#173f3d;text-align:center;font-size:20px;font-weight:800;line-height:33px;opacity:0;transition:opacity .15s}
.image-button:hover .image-open,.image-button:focus-visible .image-open{opacity:1}
.photo figcaption{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);padding:12px 2px;line-height:1.5}
.photo figcaption time{flex-shrink:0;font-weight:750}
.hero-photo figcaption{font-size:12px;gap:8px}
.photo-note{font:500 20px/1.3 var(--serif);text-align:center;color:var(--ink);margin-top:26px;transform:rotate(-3deg)}
.photo-note span{color:var(--ink);font-size:25px;vertical-align:middle;margin-right:7px}
.section{margin:104px 0}
.section:focus{outline:none}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:38px}
.section-heading h2{margin-top:12px;max-width:710px}
.section-heading>p{font-size:16px;color:var(--muted);max-width:350px;line-height:1.7}
.section-heading>.text-link{flex-shrink:0}
.text-link{text-decoration:none;font-size:15px;font-weight:900;display:inline-flex;gap:10px;align-items:center;padding:8px 0;min-height:44px}
.text-link:hover{text-decoration:underline}
.activity-section{position:relative;padding-top:8px}
.activity-section:before{content:"";position:absolute;top:8px;left:15px;width:78px;height:78px;border:10px solid var(--paper);border-radius:50%;background:radial-gradient(circle,var(--gold) 0 31%,transparent 32%),repeating-conic-gradient(from 0deg,var(--ink) 0deg 4deg,transparent 4deg 45deg);transform:rotate(-8deg);pointer-events:none}
.activity-section .section-heading{display:block;max-width:900px;margin:0 auto 42px;text-align:center}
.activity-section .section-heading>p{max-width:700px;margin:22px auto 0;font-size:18px}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:34px 0 18px}
.activity-card{padding:25px 24px 27px;border-radius:28px 28px 46px 28px;background:var(--mint);position:relative;text-align:center;min-width:0;--arrival:0ms}
.activity-card.activity-2{background:var(--sky);border-radius:46px 28px 28px 28px;--arrival:40ms}
.activity-card.activity-3{background:var(--coral);border-radius:28px 46px 28px 28px;--arrival:80ms}
.activity-card.activity-4{background:var(--lilac);border-radius:28px 28px 28px 46px;--arrival:120ms}
.activity-card.activity-5{background:var(--yellow);border-radius:46px 28px 28px 28px;--arrival:160ms}
.activity-card.activity-6{background:var(--mint);border-radius:28px 46px 28px 28px;--arrival:200ms}
.activity-icon{font-family:var(--serif);font-size:45px;line-height:1;color:var(--ink);display:block;margin-bottom:26px}
.activity-card h3{max-width:none;font-size:32px;margin-bottom:8px}
.activity-card p{font-size:16px;line-height:1.55;color:var(--ink);max-width:250px;margin:0 auto}
.activity-section>.text-link{display:flex;justify-content:center;margin-top:24px;text-align:center}
.moments-section{padding:55px 34px 34px;background:var(--yellow);border-radius:40px;position:relative}
/* Small scallops belong to the section edge; screenshots stay unadorned. */
.moments-section:before{content:'';position:absolute;top:-12px;left:30px;right:30px;height:24px;background:radial-gradient(circle at 12px 12px,var(--yellow) 11px,transparent 12px) 0 0/28px 24px repeat-x}
.moments-section .section-heading{gap:34px}
.moments-section .section-heading>p{color:var(--ink)}
.moments-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 28px}
.moment-card{padding:11px 11px 23px;border-radius:18px;background:var(--surface);box-shadow:0 5px 0 #173f3d10;min-width:0;position:relative}
.moment-card:nth-child(odd){transform:rotate(-1.2deg)}
.moment-card:nth-child(even){transform:rotate(1.2deg)}
.moment-card .image-button{border-radius:11px}
.moment-card .image-button img{aspect-ratio:1.6;object-fit:cover}
.moment-card .photo figcaption{padding:9px 7px;font-size:12px}
.moment-copy{padding:8px 12px 0}
.moment-copy h3{font-size:29px;margin-bottom:10px}
.moment-copy p{font-size:16px;line-height:1.65;color:var(--muted)}
.moments-section>.text-link{display:flex;justify-content:center;margin-top:28px;text-align:center}
.character-section{padding:0 0 25px;border:0;position:relative}
.character-section:before{content:"";position:absolute;top:-45px;right:20px;width:70px;height:67px;background:radial-gradient(ellipse at 28% 35%,var(--ink) 0 18%,transparent 19%),radial-gradient(ellipse at 72% 22%,var(--ink) 0 18%,transparent 19%),linear-gradient(var(--ink),var(--ink)) 50% 65%/3px 54% no-repeat;transform:rotate(12deg);pointer-events:none}
.character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:27px}
.character-card{--character-color:var(--mint);min-width:0;position:relative}
.character-card:nth-child(2){--character-color:var(--yellow)}
.character-card:nth-child(3){--character-color:var(--lilac)}
.character-card:nth-child(4){--character-color:var(--coral)}
.character-portrait{border-radius:49% 49% 22px 22px;background:var(--character-color);border:8px solid var(--character-color);box-shadow:0 7px 0 #173f3d0a}
.character-portrait img{aspect-ratio:1;object-fit:contain;border-radius:45% 45% 12px 12px}
.character-card h3{font-size:36px;margin:24px 0 12px;font-weight:500;display:inline-block;position:relative}
.character-card h3:after{content:'';display:block;background:var(--character-color);height:6px;border-radius:50%;margin-top:8px;width:85%;transform:rotate(-3deg)}
.character-card>p{font-size:15px;color:var(--muted);line-height:1.75;max-width:260px}
.character-note{font-size:12px;color:var(--muted);margin:32px 0 0}
.milestones-section{padding:48px 42px;background:var(--mint);border-radius:40px 90px 40px 40px;position:relative}
.milestones-section:after{content:"";position:absolute;bottom:-24px;right:28px;width:53px;height:53px;background:var(--gold);clip-path:polygon(50% 0,61% 39%,100% 50%,61% 61%,50% 100%,39% 61%,0 50%,39% 39%);transform:rotate(12deg);pointer-events:none}
.milestones-section .section-heading>p{color:var(--ink)}
.milestone-list{list-style:none;margin:40px 0 22px;padding:0;position:relative}
.milestone-list:before{content:'';position:absolute;left:26px;top:36px;bottom:90px;border-left:2px dashed var(--ink);opacity:.24}
.milestone-item{display:grid;grid-template-columns:56px 1fr .85fr;gap:30px;position:relative;padding:0 0 34px;margin-bottom:26px;align-items:start}
.milestone-item:last-child{padding-bottom:0;margin-bottom:0}
.milestone-number{width:56px;height:56px;display:flex;align-items:center;justify-content:center;background:var(--gold);border:2px solid var(--ink);font:500 24px/1 var(--serif);color:#173f3d;border-radius:45% 55% 50% 50%;position:relative;z-index:1}
.milestone-item:nth-child(2n) .milestone-number{border-radius:50% 50% 40% 60%;background:var(--surface);color:var(--ink)}
.milestone-date{display:block;font-size:12px;font-weight:900;letter-spacing:.04em;color:var(--muted);margin:5px 0 11px}
.milestone-copy h3{font-size:31px;margin-bottom:15px;max-width:430px}
.milestone-copy p{font-size:16px;line-height:1.75;color:var(--ink);max-width:500px}
.milestone-label{font-size:12px;display:inline-flex;align-items:center;gap:7px;padding:5px 11px;background:var(--surface);border-radius:99px;margin-top:17px;font-weight:850}
.milestone-label:before{content:'✓';font-weight:900}
.milestone-item>.photo{padding:7px 7px 0;background:var(--surface);border-radius:14px;transform:rotate(1deg);box-shadow:0 5px 0 #173f3d0a}
.milestone-item:nth-child(2n)>.photo{transform:rotate(-1deg)}
.milestone-item>.photo img{aspect-ratio:1.65;object-fit:contain;background:var(--soft)}
.milestone-item>.photo .image-button{border-radius:9px}
.milestone-item>.photo figcaption{font-size:12px;padding:9px 5px}
.latest-section .journal-list{margin-bottom:32px}
.actions{display:flex;justify-content:center;gap:27px;align-items:center;flex-wrap:wrap}
.film-section{border-top:2px dashed var(--line);padding-top:50px}
.film-frame{background:#102d2d;border-radius:25px;overflow:hidden;box-shadow:var(--shadow);border:8px solid var(--surface)}
.film-frame video{width:100%;aspect-ratio:16/9;object-fit:contain}
.film-caption{display:flex;justify-content:space-between;align-items:start;gap:35px;color:var(--muted);font-size:13px;margin-top:20px}
.film-caption>span{max-width:650px}
.film-caption details{flex:0 0 270px}
.film-caption details p{margin:15px 0;line-height:1.7}
.film-caption summary{font-size:13px}
.film-caption img{margin-top:16px;border-radius:12px}
summary{min-height:44px;padding:11px 0;font-size:15px;font-weight:850}
summary::marker{color:var(--accent)}
details>p{color:var(--muted);margin:12px 0 20px}
.page-title{padding:66px 0 44px;max-width:950px;position:relative}
.page-title h1{font-size:clamp(44px,5.8vw,76px);margin:18px 0 23px;max-width:920px}
.page-title>p{color:var(--muted);max-width:720px;font-size:19px}
.page-title .eyebrow{display:inline-block;padding:5px 12px;background:var(--yellow);color:var(--ink);border-radius:99px;font-size:11px}
.notes-heading{margin-top:94px}
.journal-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-bottom:35px;align-items:start}
.entry{min-width:0}
.journal-list>.entry{border:1.5px solid var(--line);background:var(--surface);border-radius:25px;padding:30px;box-shadow:0 5px 0 #173f3d06}
.entry>small,.entry>time{font-size:12px;color:var(--muted);display:block;margin-bottom:17px;font-weight:900}
.entry h3{font-size:32px;margin-bottom:17px}
.entry-summary{color:var(--muted);font-size:16px;line-height:1.75}
.journal-media{display:grid;grid-template-columns:1fr;gap:16px;margin-top:24px}
.extra-evidence .journal-visual{margin:16px 0}
.extra-evidence summary{font-size:13px}
.journal-visual{min-width:0}
.journal-visual .image-button img{aspect-ratio:16/10;object-fit:contain;background:var(--soft);max-height:340px}
.journal-visual figcaption{margin-top:13px;font-size:13px;color:var(--muted);line-height:1.7}
.capture-meta{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:12px}
.capture-meta .tag{font-size:11px}
.journal-image-hint{font-size:12px;margin-top:8px;display:block}
.entry-notes{margin-top:21px;border-top:1px dashed var(--line)}
.entry-notes p{font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.entry-notes summary{font-size:13px}
.journal-visual-count{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-top:18px}
.archive-door{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;background:var(--sky);border-radius:30px;padding:40px;margin-top:80px}
.archive-door h2{font-size:40px;margin:15px 0 20px}
.archive-door p{color:var(--ink);font-size:16px}
.archive-links a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding:16px 0;font-size:16px;font-weight:850;text-decoration:none;min-height:52px;gap:20px}
.archive-links a:last-child{border:0}
.archive-links a:hover{text-decoration:underline}
.life-diagram{padding:35px;border:2px solid var(--line);background:var(--surface);border-radius:30px;box-shadow:var(--shadow)}
.diagram-heading{display:flex;justify-content:space-between;gap:16px}
.diagram-heading .subtle{font-size:13px}
.life-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:17px;margin:32px 0}
.life-steps button{background:var(--paper);border:1.5px solid var(--line);padding:22px 10px;display:flex;flex-direction:column;align-items:center;gap:13px;position:relative;font-size:15px;line-height:1.4;min-width:0}
.life-steps button[aria-pressed=true]{background:var(--gold);border-color:var(--ink);color:#173f3d;box-shadow:0 4px 0 var(--ink)}
.step-symbol{font-family:var(--serif);font-size:36px;line-height:1.3}
.life-steps small{font-size:11px;display:block;margin-bottom:5px;opacity:.8}
.life-steps i{font-style:normal;position:absolute;right:-15px;color:var(--muted);font-size:17px;top:44%;z-index:1}
.step-detail{background:var(--sky);border-radius:22px;padding:32px;display:flex;gap:35px;min-height:255px}
.step-count{color:var(--ink);font-size:12px;font-weight:900;white-space:nowrap;padding-top:7px}
.step-detail h2{font-size:36px;margin-bottom:17px}
.step-detail p{max-width:760px;font-size:17px;color:var(--ink)}
.step-detail details{margin-top:17px}
.step-detail summary{font-size:14px}
.step-detail details p{font-size:14px}
.diagram-caption{font-size:12px;color:var(--muted);margin-top:19px;text-align:center}
.principles-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}
.principle-mark{font-size:34px;display:flex;align-items:center;justify-content:center;width:65px;height:65px;border-radius:50% 50% 40% 50%;background:var(--lilac);color:var(--ink);margin-bottom:23px}
.principles-grid article:nth-child(2) .principle-mark{background:var(--mint)}
.principles-grid article:nth-child(3) .principle-mark{background:var(--yellow)}
.principles-grid h3{font-size:31px;margin-bottom:18px}
.principles-grid p{font-size:16px;color:var(--muted)}
.current-and-next{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:42px;background:var(--lilac);border-radius:32px}
.current-and-next h2{font-size:40px;margin:15px 0 22px}
.current-and-next p{color:var(--ink);font-size:17px;max-width:490px}
.current-and-next a{margin-top:17px}
.faq{max-width:850px;margin-left:auto;margin-right:auto}
.faq h2{margin:13px 0 35px}
.faq details{border-bottom:1.5px solid var(--line);padding:10px 0}
.faq summary{font-size:18px;padding:20px 0;line-height:1.6}
.faq details p{font-size:17px;padding:0 0 16px}
.about-intro{display:grid;grid-template-columns:310px 1fr;align-items:center;gap:80px;max-width:1100px;margin:76px auto}
.maker-mark{background:var(--yellow);border-radius:48% 48% 25px 25px;min-height:360px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--ink);position:relative;transform:rotate(-3deg);box-shadow:var(--shadow)}
.maker-mark>span{font:500 210px/.9 var(--serif);position:relative;letter-spacing:-.09em;margin-left:-20px}
.maker-mark>span>span{font-size:76px;color:var(--accent);position:absolute;right:-45px;top:-18px;letter-spacing:0}
.maker-mark>small{font-size:11px;font-weight:900;letter-spacing:.11em;margin-top:31px}
.about-intro h1{font-size:76px;margin:20px 0 28px}
.about-bio{color:var(--muted);font-size:20px;line-height:1.8;max-width:650px}
.maker-location{font-size:14px;margin-top:25px;color:var(--muted);font-weight:800}
.maker-location span{margin:0 8px}
.maker-story{max-width:780px;margin:120px auto}
.maker-story h2{margin:16px 0 30px;font-size:56px}
.maker-story p{color:var(--muted);font-size:20px}
.maker-story a{margin-top:22px}
.creator-links{display:grid;grid-template-columns:1fr 1fr;gap:75px;padding:45px;border-radius:32px;background:var(--mint)}
.creator-links h2{margin:15px 0 24px}
.creator-links p{color:var(--ink);font-size:17px}
.creator-links a{display:flex;justify-content:space-between;align-items:center;text-decoration:none;border-bottom:1px solid var(--line);padding:17px 0;font-size:17px;font-weight:850;min-height:52px;gap:18px}
.creator-links a:hover{text-decoration:underline}
.about-source{font-size:12px;color:var(--muted);max-width:800px;margin-bottom:65px}
.about-source a{display:inline-flex;align-items:center;min-height:44px;vertical-align:middle}
.filters{display:flex;gap:12px;margin:30px 0 21px;flex-wrap:wrap}
.filters input{flex:1;min-width:200px;border:1.5px solid var(--line);border-radius:16px;background:var(--surface);min-height:50px;padding:12px 17px;font-size:16px}
.filters select{flex:0 1 230px;font-size:14px;border-radius:16px}
.back-link{font-size:14px;font-weight:850;color:var(--muted);display:inline-flex;align-items:center;text-decoration:none;min-height:44px}
.results-note{font-size:14px;margin:23px 0}
.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px;margin-bottom:38px}
.capture{min-width:0}
.capture h3{font-size:27px;margin:10px 0 12px}
.capture>p{font-size:13px;color:var(--muted);overflow-wrap:anywhere}
.compare{position:relative;aspect-ratio:16/9;background:var(--soft);overflow:hidden;border-radius:20px;margin:24px 0}
.compare img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.compare .top{clip-path:inset(0 50% 0 0)}
.compare input{position:absolute;inset:auto 20px 20px;width:calc(100% - 40px);min-height:44px;z-index:1;accent-color:var(--accent)}
.panel{padding:30px;border:1.5px solid var(--line);border-radius:23px;background:var(--surface);margin-bottom:28px}
.feature{display:grid;grid-template-columns:1fr auto 75px;gap:24px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);font-size:16px}
.feature:last-child{border:0}
.feature small{display:block;font-size:13px;color:var(--muted);margin-top:6px}
.feature a{font-size:13px;display:inline-flex;align-items:center;min-height:44px}
.tag{display:inline-block;padding:5px 10px;border-radius:99px;background:var(--soft);font-size:12px;font-weight:850;white-space:nowrap}
.tag.verified{background:var(--mint);color:var(--ink)}
.tag.blocked{background:var(--coral);color:var(--ink)}
.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:35px 0}
.stat{border-right:1.5px solid var(--line);padding-right:20px}
.stat:last-child{border:0}
.stat>span,.stat small{font-size:13px;color:var(--muted);display:block}
.stat strong{font:500 36px/1.25 var(--serif);display:block;margin:15px 0}
.table-scroll{overflow:auto;max-width:100%;margin-top:28px}
.table-scroll table{border-collapse:collapse;min-width:660px;width:100%;font-size:14px;text-align:left}
.table-scroll th,.table-scroll td{padding:14px;border-bottom:1px solid var(--line);vertical-align:top}
.table-scroll th{font-weight:900;color:var(--muted);font-size:12px}
.notice{padding:23px 27px;background:var(--yellow);font-size:15px;border-radius:20px;margin-bottom:27px}
.panel h2{font-size:34px}
.docnav{display:flex;flex-wrap:wrap;gap:10px;margin:23px 0}
.docnav button{font-size:14px}
.docnav button[aria-pressed=true]{background:var(--gold);border-color:var(--ink);color:#173f3d}
#doc-version{display:block;max-width:100%;margin:12px 0 27px;font-size:14px;border-radius:15px}
.doc{white-space:pre-wrap;overflow-wrap:anywhere;font:16px/1.9 var(--sans)}
.empty{padding:75px 20px;text-align:center}
.empty p{color:var(--muted);margin-top:22px}
.site-footer{border-top:2px dashed var(--line);margin-top:100px;padding:49px 40px 32px;position:relative}
.footer-inner,.footer-bottom{max-width:1240px;margin:auto;display:flex;justify-content:space-between;gap:40px}
.footer-inner p{font-size:14px;color:var(--muted);margin-top:17px}
.footer-flower{color:var(--accent);font-size:35px;letter-spacing:0}
.footer-links{display:flex;gap:28px;align-items:center;font-size:14px;font-weight:850}
.footer-links a{text-decoration:none;display:inline-flex;align-items:center;min-height:44px}
.footer-links a:hover{text-decoration:underline}
.footer-bottom{align-items:start;border-top:1px solid var(--line);margin-top:38px;padding-top:24px;font-size:12px;color:var(--muted)}
.site-tools{text-align:right;flex-shrink:0}
.site-tools summary{font-size:13px;padding:0;min-height:44px}
.site-tools>div{display:flex;flex-direction:column;align-items:end;gap:10px;margin-top:15px}
.site-tools button{font-size:13px;min-height:44px;padding:8px 12px}
#toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);max-width:calc(100vw - 32px);background:var(--ink);color:var(--paper);padding:15px 23px;border-radius:18px;box-shadow:var(--shadow);font-size:14px;z-index:100;opacity:0;pointer-events:none;transition:opacity .15s}
#toast.visible{opacity:1}
dialog{padding:0;border:1.5px solid var(--line);border-radius:23px;background:var(--surface);color:var(--ink);width:min(1050px,calc(100vw - 36px));max-height:90vh;overflow:auto}
dialog::backdrop{background:#071f26e8;backdrop-filter:blur(4px)}
.lightbox-head{position:sticky;top:0;background:var(--surface);display:flex;align-items:center;justify-content:space-between;padding:15px 22px;z-index:2;border-bottom:1px solid var(--line);gap:15px}
.lightbox-head .eyebrow{font-size:12px}
.lightbox-head button{font-size:14px;flex-shrink:0}
.lightbox-body{padding:28px}
.lightbox-body h2{font-size:33px;margin-bottom:22px}
dialog>img{max-height:60vh;width:100%;object-fit:contain;background:var(--soft)}
#lightbox-details{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:14px;overflow-wrap:anywhere}
#lightbox-details dt{font-size:12px;font-weight:850;color:var(--muted);margin-bottom:6px}
#lightbox-details dd{margin:0}
.static-reading{max-width:820px;margin:45px 0}
.static-reading h2{margin:30px 0 23px}
.static-reading p{color:var(--muted);margin-bottom:18px}
.static-reading .entry{border-bottom:1px solid var(--line);padding:30px 0}
.static-figure{max-width:900px;margin:28px 0}
.static-figure img,.static-figure video{border-radius:20px;width:100%;height:auto}
.static-figure figcaption{font-size:13px;color:var(--muted);margin-top:13px}
.static-steps{padding-left:26px}
.static-steps li{padding:17px 0}
.social-links{padding-left:22px}
.social-links li{margin:18px 0}
.quiet-details{border-top:1px dashed var(--line);margin:45px 0}
.quiet-details>summary{padding:23px 0}
.opening-question{text-align:center;padding:45px 20px;border-top:2px dashed var(--line);border-bottom:2px dashed var(--line)}
.opening-question h2{margin:20px 0 24px}
.opening-question p{max-width:650px;margin:0 auto 25px;color:var(--muted);font-size:18px}
.origin-story{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.story-copy h2{margin:17px 0 25px}
.story-copy>p{font-size:17px;color:var(--muted)}
.story-visual{padding:12px;background:var(--surface);border-radius:23px}
.story-date{display:block;text-align:center;font:500 17px var(--serif);color:var(--muted);margin-top:18px}
/* Subtle variation in the night palette keeps the same playful hierarchy. */
:root[data-theme=dark] .hero-photo,:root[data-theme=dark] .moment-card,:root[data-theme=dark] .milestone-item>.photo{border:1px solid #7d9b8d}
:root[data-theme=dark] .hero-photo{padding:9px 9px 1px}
:root[data-theme=dark] .moment-card{padding:10px 10px 22px}
@media(min-width:1440px){.home-hero{padding:65px 45px 55px;column-gap:55px;row-gap:0}.hero-heading h1{font-size:80px}.hero-visual{margin-right:-5px}}
@media(max-width:1150px){.header-inner{gap:18px;padding:17px 30px}.brand-note{display:none}.header-inner nav{gap:2px}.header-inner nav a{padding:10px 11px}main{padding:0 30px}.home-hero{padding:48px 30px 42px;column-gap:30px;row-gap:0}.hero-heading h1{font-size:clamp(48px,5.75vw,66px)}.hero-intro{font-size:17px}.hero-actions .button{padding:12px 14px}.activity-grid{gap:23px}.activity-card{padding:28px 23px}.activity-card h3{font-size:27px}.milestone-item{grid-template-columns:50px 1fr .85fr;gap:23px}.milestone-number{width:50px;height:50px}.milestone-list:before{left:24px}.milestone-copy h3{font-size:28px}.about-intro{gap:50px;grid-template-columns:280px 1fr}.about-intro h1{font-size:66px}.about-bio{font-size:19px}}
@media(max-width:900px){.header-inner{padding:15px 26px;min-height:86px;gap:12px;flex-wrap:wrap}.header-actions{margin-left:auto}.brand-note{display:block}.header-inner nav{display:grid;width:100%;order:3;grid-template-columns:1fr 1fr;gap:9px;margin:12px 0 4px}#menu-toggle{display:block;font-size:13px;min-width:82px;border-radius:99px}.header-inner nav a{border:1px solid var(--line);border-radius:15px;padding:12px 15px;background:var(--surface);min-height:47px}.header-inner nav a[aria-current=page]{background:var(--gold)}.js .header-inner nav{display:none}.js .site-header.menu-open nav{display:grid}html:not(.js) #menu-toggle,html:not(.js) #appearance{display:none}.home-hero{padding:45px 28px 38px;column-gap:27px;row-gap:0}.hero-heading h1{font-size:clamp(45px,6.7vw,58px)}.hero-intro{font-size:16px;line-height:1.7}.hero-heading .eyebrow{font-size:10px;letter-spacing:.07em}.hero-actions{gap:9px}.hero-actions .button{font-size:13px;min-height:46px}.hero-status{font-size:11px}.hero-photo img{aspect-ratio:.88}.hero-photo figcaption{display:block;font-size:12px}.hero-photo figcaption time{display:block;margin-top:3px}.photo-note{font-size:17px}.section{margin:80px 0}.section-heading{gap:28px;margin-bottom:30px}.section-heading h2{font-size:43px}.section-heading>p{font-size:15px;max-width:280px}.activity-card{padding:25px 19px 30px}.activity-card h3{font-size:29px}.activity-card p{font-size:15px}.activity-icon{font-size:40px}.moments-section{padding:45px 25px 30px}.moment-copy{padding:7px 8px 0}.moment-copy h3{font-size:27px}.moment-copy p{font-size:15px}.character-grid{gap:20px}.character-card h3{font-size:31px}.character-card>p{font-size:14px}.character-portrait{border-width:6px}.milestones-section{padding:38px 28px}.milestone-item{grid-template-columns:48px 1fr;gap:20px 24px;margin-bottom:35px;padding-bottom:12px}.milestone-item>.photo{grid-column:2;max-width:460px;transform:none}.milestone-item:nth-child(2n)>.photo{transform:none}.milestone-number{width:48px;height:48px;font-size:22px}.milestone-list:before{left:23px;bottom:120px}.milestone-copy h3{font-size:32px}.milestone-item>.photo img{aspect-ratio:1.8}.milestone-item>.photo figcaption{font-size:12px}.life-diagram{padding:28px}.life-steps{gap:11px}.life-steps button{padding:18px 6px;font-size:13px}.life-steps i{right:-11px;font-size:13px}.principles-grid{gap:28px}.principles-grid h3{font-size:28px}.current-and-next{padding:33px;gap:33px}.current-and-next h2{font-size:36px}.current-and-next p{font-size:16px}.about-intro{grid-template-columns:225px 1fr;gap:35px;margin:60px 0}.maker-mark{min-height:290px}.maker-mark>span{font-size:170px}.maker-mark>span>span{font-size:60px;right:-35px}.maker-mark>small{font-size:9px}.about-intro h1{font-size:57px}.about-bio{font-size:18px}.creator-links{gap:40px;padding:33px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 25px}.stats{grid-template-columns:1fr 1fr}.stat:nth-child(2){border:0}.film-caption{display:block}.film-caption details{margin-top:15px}.journal-list{gap:22px}.journal-list>.entry{padding:24px}.journal-list h3{font-size:29px}.archive-door{gap:40px;padding:32px}.footer-links{flex-direction:column;align-items:start;gap:5px}.site-footer{padding-left:30px;padding-right:30px}}
@media(max-width:650px){html{scroll-padding-top:100px}.header-inner{padding:15px 21px;min-height:83px}.brand{font-size:32px;gap:8px}.brand-mark{font-size:38px;width:29px}.brand-mark>span{font-size:22px;top:-9px}.brand-note{display:none}.header-actions{gap:7px}#appearance{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:9px;border-radius:50%;background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}#menu-toggle{min-width:74px;font-size:12px;padding:10px 11px}main{padding:0 21px}.home-hero{grid-template-columns:1fr;gap:28px;padding:35px 23px 32px;margin-top:18px;border-radius:26px 26px 52px 26px}.home-hero:before{left:17px;width:64px;height:24px;bottom:-11px}.hero-heading h1{font-size:clamp(48px,10.5vw,68px);line-height:1.04;margin-bottom:0;max-width:460px;letter-spacing:-.025em}.hero-heading .eyebrow{font-size:10px;letter-spacing:.07em;margin-bottom:22px}.hero-intro{font-size:17px;line-height:1.65;max-width:470px;margin-bottom:24px}.hero-actions{align-items:stretch;gap:11px}.hero-actions .button{font-size:13px;min-height:48px;padding:12px 16px;gap:11px}.hero-status{font-size:12px;margin-top:21px;max-width:400px}.hero-heading,.hero-copy,.hero-visual{grid-column:auto;grid-row:auto;align-self:auto}.hero-visual{margin:0;padding-top:0}.hero-visual:before{width:34px;height:34px;top:-27px;right:4px}.hero-photo{padding:7px 7px 1px;border-radius:17px;transform:rotate(1.5deg)}.hero-photo .image-button{border-radius:11px}.hero-photo img{aspect-ratio:1.42;object-position:50% 50%}.hero-photo figcaption{display:flex;flex-wrap:wrap;font-size:12px;gap:3px 10px;padding:11px 3px}.hero-photo figcaption time{margin:0}.photo-note{font-size:18px;margin-top:23px}.photo-note span{font-size:24px}.section{margin:70px 0}.section-heading{display:block;margin-bottom:29px}.section-heading h2{font-size:38px;line-height:1.12}.section-heading>p{margin-top:20px;font-size:16px;max-width:none}.section-heading>.text-link{margin-top:17px}.eyebrow{font-size:11px;letter-spacing:.11em}.activity-section{padding-top:0}.activity-section .section-heading{text-align:left;margin-bottom:30px}.activity-section:before{left:auto;right:-5px;top:-38px;width:54px;height:54px;border-width:7px}.activity-section .section-heading>p{font-size:17px;margin-top:20px}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:30px}.activity-card{padding:18px 15px 22px;border-radius:23px 23px 35px 23px}.activity-card.activity-2{border-radius:40px 23px 23px 23px}.activity-card.activity-3{border-radius:23px 40px 23px 23px}.activity-icon{font-size:36px;float:left;width:37px;margin:0 17px 18px 0;line-height:1.25}.activity-card h3{font-size:27px;max-width:none;margin-bottom:8px;padding-top:0}.activity-card p{font-size:14px;clear:both;line-height:1.55}.activity-section>.text-link{font-size:14px;margin-top:22px}.moments-section{padding:32px 18px 25px;margin-left:0;margin-right:0;border-radius:26px}.moments-section:before{left:22px;right:22px}.moments-section .section-heading{padding:0 3px}.moments-section h2{font-size:37px}.moments-grid{grid-template-columns:1fr;gap:25px;padding:0 2px}.moment-card{padding:8px 8px 21px;border-radius:15px}.moment-card:nth-child(odd){transform:rotate(-1deg)}.moment-card:nth-child(even){transform:rotate(1deg)}.moment-card .image-button img{aspect-ratio:1.42}.moment-card .photo figcaption{font-size:12px;padding:10px 5px;flex-wrap:wrap;gap:3px 10px}.moment-copy{padding:6px 10px 0}.moment-copy h3{font-size:28px;margin-bottom:10px}.moment-copy p{font-size:16px}.moments-section>.text-link{font-size:14px;margin-top:28px}.character-section{padding-bottom:0}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 20px}.character-portrait{border-width:6px;border-radius:48% 48% 16px 16px}.character-portrait img{border-radius:45% 45% 10px 10px}.character-card h3{font-size:31px;margin:20px 0 12px}.character-card>p{font-size:14px;line-height:1.7}.character-note{font-size:12px;line-height:1.7;margin-top:28px}.milestones-section{padding:32px 20px;border-radius:26px 45px 26px 26px}.milestones-section .section-heading h2{font-size:37px}.milestone-list{margin-top:32px}.milestone-item{grid-template-columns:38px minmax(0,1fr);gap:17px 15px;margin-bottom:32px;padding:0}.milestone-number{width:38px;height:38px;font-size:19px;border-width:1.5px}.milestone-list:before{left:18px;top:27px;bottom:90px}.milestone-date{font-size:12px;margin:0 0 12px}.milestone-copy h3{font-size:27px;margin-bottom:15px}.milestone-copy p{font-size:15px;line-height:1.75}.milestone-label{font-size:11px;line-height:1.6;padding:4px 9px;margin-top:15px}.milestone-item>.photo{padding:5px 5px 0;border-radius:12px;width:100%}.milestone-item>.photo img{aspect-ratio:1.3}.milestone-item>.photo figcaption{font-size:12px;display:block;line-height:1.6;padding:8px 5px}.milestone-item>.photo figcaption time{display:block;margin-top:3px}.milestones-section>.text-link{font-size:14px;margin-top:8px}.actions{gap:14px 23px}.actions .button{width:100%}.actions>.text-link{font-size:14px}.film-section{padding-top:32px}.film-section .section-heading h2{font-size:36px}.film-frame{border:5px solid var(--surface);border-radius:18px}.film-caption{font-size:13px;line-height:1.7;margin-top:18px}.film-caption summary{font-size:13px}.page-title{padding:45px 0 30px}.page-title h1{font-size:46px;letter-spacing:-.025em;margin:21px 0}.page-title>p{font-size:18px}.notes-heading{margin-top:65px}.journal-list{display:block;margin-bottom:25px}.journal-list>.entry{margin-bottom:24px;padding:25px 22px;border-radius:22px}.entry h3{font-size:30px;margin-bottom:18px}.entry-summary{font-size:16px}.entry>small,.entry>time{font-size:12px;margin-bottom:15px}.journal-media{margin-top:22px}.journal-visual .image-button img{max-height:290px}.journal-visual figcaption{font-size:13px}.capture-meta{font-size:12px}.capture-meta .tag{font-size:11px}.journal-image-hint{display:none}.entry-notes summary,.extra-evidence summary{font-size:13px}.archive-door{grid-template-columns:1fr;gap:25px;margin-top:60px;padding:29px 25px;border-radius:25px}.archive-door h2{font-size:36px}.archive-door p{font-size:16px}.archive-links a{font-size:16px;padding:15px 0}.life-diagram{padding:25px 18px;border-radius:24px}.diagram-heading{display:block}.diagram-heading .eyebrow{font-size:11px}.diagram-heading .subtle{display:block;margin-top:10px;font-size:13px}.life-steps{grid-template-columns:1fr;gap:10px;margin:25px 0}.life-steps button{flex-direction:row;justify-content:start;gap:17px;padding:12px 18px;min-height:65px;text-align:left;font-size:16px}.life-steps .step-symbol{font-size:30px;width:35px;text-align:center}.life-steps small{display:inline-block;margin:0 11px 0 0;vertical-align:middle;font-size:11px}.life-steps i{right:17px;top:19px;font-size:17px;transform:rotate(90deg)}.step-detail{padding:25px 20px;display:block;min-height:280px;border-radius:18px}.step-count{display:block;margin-bottom:14px;font-size:12px}.step-detail h2{font-size:31px;margin-bottom:20px}.step-detail p{font-size:16px}.step-detail summary{font-size:14px}.step-detail details p{font-size:14px}.diagram-caption{font-size:12px;margin-top:18px}.principles-grid{grid-template-columns:1fr;gap:32px}.principles-grid article{padding-bottom:30px;border-bottom:1px dashed var(--line)}.principle-mark{font-size:28px;float:left;margin:0 19px 25px 0;width:53px;height:53px}.principles-grid h3{font-size:29px;margin:4px 0 20px;min-height:49px;display:flex;align-items:center}.principles-grid p{font-size:16px;clear:both}.current-and-next{grid-template-columns:1fr;gap:37px;padding:29px 25px;border-radius:25px}.current-and-next h2{font-size:35px}.current-and-next p{font-size:16px}.faq h2{font-size:37px;margin-bottom:24px}.faq summary{font-size:17px;line-height:1.6}.faq details p{font-size:16px}.about-intro{display:flex;flex-direction:column;align-items:start;gap:39px;margin:45px 0}.maker-mark{min-height:220px;width:195px;border-radius:48% 48% 20px 20px;margin-left:7px}.maker-mark>span{font-size:140px;margin-left:-12px}.maker-mark>span>span{font-size:50px;right:-29px;top:-10px}.maker-mark>small{font-size:8px;margin-top:25px}.about-intro h1{font-size:56px;margin:19px 0 25px}.about-bio{font-size:18px}.maker-location{font-size:13px}.maker-story{margin:80px 0}.maker-story h2{font-size:42px}.maker-story p{font-size:18px}.creator-links{grid-template-columns:1fr;gap:25px;padding:29px 25px;border-radius:25px}.creator-links h2{font-size:37px}.creator-links p{font-size:16px}.creator-links a{font-size:16px}.about-source{font-size:12px;line-height:1.8}.filters{display:block;margin-top:25px}.filters input,.filters select{width:100%;display:block;margin-bottom:12px;min-height:50px;font-size:16px}.gallery{grid-template-columns:1fr;gap:32px}.gallery .photo figcaption{display:flex;flex-wrap:wrap;font-size:12px;gap:3px 10px}.gallery .photo figcaption time{margin:0}.capture h3{font-size:28px}.capture>p{font-size:13px}.comparison-section .filters select{font-size:14px}.feature{grid-template-columns:minmax(0,1fr) auto;gap:11px;padding:20px 0;font-size:15px}.feature>a{grid-column:1/-1;min-height:44px;display:flex;align-items:center}.feature small{font-size:12px}.feature .tag{font-size:11px}.panel{padding:23px 19px;border-radius:20px}.stats{gap:25px 18px}.stat strong{font-size:32px}.stat>span,.stat small{font-size:12px}.notice{font-size:14px;padding:23px 21px;border-radius:18px}.docnav button{font-size:13px}.doc{font-size:15px}.docnav{gap:9px}.site-footer{margin-top:70px;padding:38px 22px 28px}.footer-inner{gap:25px}.footer-inner p{font-size:13px;max-width:190px}.footer-links{font-size:13px;gap:2px;align-items:end;white-space:nowrap}.footer-bottom{gap:22px;font-size:12px;line-height:1.7;flex-wrap:wrap}.site-tools{text-align:left}.site-tools summary{font-size:13px}.site-tools>div{align-items:start}.site-tools button{min-height:44px}dialog{width:calc(100vw - 24px);max-height:92vh;border-radius:18px}.lightbox-head{padding:12px 14px}.lightbox-head .eyebrow{font-size:11px}.lightbox-body{padding:24px 18px}.lightbox-body h2{font-size:29px}#lightbox-details{grid-template-columns:1fr;font-size:13px;gap:16px}.static-reading{margin:30px 0}.static-figure figcaption{font-size:12px}.origin-story{grid-template-columns:1fr;gap:30px}.opening-question{padding:35px 10px}}
@media(max-width:360px){main{padding:0 15px}.header-inner{padding:13px 15px}.brand{font-size:29px;gap:7px}.brand-mark{font-size:35px;width:26px}.brand-mark>span{font-size:20px;right:-3px;top:-8px}#appearance{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:9px;border-radius:50%;background:var(--surface);color:var(--ink);border:1.5px solid var(--line)}#menu-toggle{font-size:12px;min-width:67px;padding:10px 9px}.header-actions{gap:5px}.home-hero{padding:30px 19px 28px}.hero-heading h1{font-size:45px}.hero-heading .eyebrow{font-size:9px;letter-spacing:.06em}.hero-actions{display:grid;grid-template-columns:1fr}.hero-actions .button{width:100%;font-size:14px;justify-content:space-between;padding:13px 17px}.hero-intro{font-size:16px}.hero-status{font-size:11px}.hero-photo figcaption{font-size:12px}.photo-note{font-size:16px}.section-heading h2{font-size:35px}.moments-section{padding:29px 15px 24px}.moments-section h2,.milestones-section .section-heading h2{font-size:34px}.moment-copy{padding-left:7px;padding-right:7px}.moment-copy h3{font-size:26px}.milestones-section{padding:29px 17px}.milestone-item{grid-template-columns:32px minmax(0,1fr);gap:16px 12px}.milestone-number{width:32px;height:32px;font-size:17px}.milestone-list:before{left:15px}.milestone-copy h3{font-size:26px}.milestone-copy p{font-size:15px}.milestone-label{font-size:11px;white-space:normal}.character-grid{gap:28px 15px}.character-portrait{border-width:5px}.character-card h3{font-size:28px}.character-card>p{font-size:14px}.page-title h1{font-size:41px}.journal-list>.entry{padding:23px 19px}.entry h3{font-size:28px}.footer-inner{display:block}.footer-links{align-items:start;flex-direction:row;flex-wrap:wrap;margin-top:23px;gap:5px 22px}.footer-inner p{max-width:none}.feature .tag{font-size:10px;padding:5px 8px}.life-diagram{padding:23px 16px}}

/* Original activity drawings are illustrations, distinct from the gameplay photographs. */
.activity-drawing{display:block;width:160px;height:120px;max-width:100%;margin:0 auto 14px;overflow:visible;color:var(--ink)}
.activity-drawing .drawing-accent{color:var(--drawing-accent);stroke:var(--drawing-accent);transform-box:fill-box;transform-origin:center}
@keyframes welcome-arrive{from{opacity:.65;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes flower-greeting{from{transform:rotate(-20deg) scale(.78)}70%{transform:rotate(20deg) scale(1.04)}to{transform:rotate(13deg) scale(1)}}
@keyframes drawing-hello{from{opacity:.7;transform:translateY(6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes theme-arrive{from{opacity:.6;transform:rotate(-20deg) scale(.8)}to{opacity:1;transform:rotate(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){
 .hero-heading{animation:welcome-arrive .55s ease-out both}
 .hero-visual:before{animation:flower-greeting .75s cubic-bezier(.2,.7,.3,1) both}
 .activity-drawing{animation:drawing-hello .6s ease-out var(--arrival) both}
 .appearance-icon{animation:theme-arrive .25s ease-out both}
}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .activity-drawing .drawing-accent{transition:transform .25s ease-out}
 .activity-card:hover .drawing-accent{transform:translateY(-3px) rotate(-4deg)}
 #appearance{transition:background .2s ease-out,border-color .2s ease-out}
 #appearance:hover{background:var(--gold);border-color:var(--ink);color:#173f3d}
 .character-section:before{transition:transform .25s ease-out}
 .character-section:hover:before{transform:rotate(5deg)}
}
@media(max-width:900px){.activity-drawing{width:144px;height:108px}.activity-section:before{left:-5px;top:-35px;width:60px;height:60px;border-width:8px}}
@media(max-width:650px){.activity-drawing{width:120px;height:90px;margin-bottom:12px}.activity-section:before{left:auto;right:-5px;top:-38px;width:54px;height:54px;border-width:7px}.character-section:before{top:-34px;right:5px;width:48px;height:46px}.milestones-section:after{width:42px;height:42px;bottom:-20px;right:19px}}
@media(max-width:360px){.activity-grid{gap:13px}.activity-card{padding:17px 12px 20px}.activity-card h3{font-size:25px}.activity-card p{font-size:14px}.activity-drawing{width:107px;height:80px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

@media(prefers-color-scheme:dark){:root:not(.js){color-scheme:dark;--paper:#173b3b;--surface:#204746;--soft:#2b5550;--ink:#fff6df;--muted:#cadbd0;--line:#56746b;--accent:#ff987c;--accent-ink:#173b3b;--gold:#ffdc79;--sky:#285767;--mint:#315e50;--lilac:#514c71;--coral:#775047;--yellow:#615536;--focus:#a7e3fa;--drawing-accent:#ffcf79;--shadow:0 12px 0 #071f261f,0 20px 45px #071f2626}}

/* Native language link shares the header control row at every width. */
.language-toggle{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;border:1.5px solid var(--line);border-radius:50%;background:var(--surface);color:var(--ink);text-decoration:none}
.language-toggle svg{width:22px;height:22px;pointer-events:none}
.language-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.header-actions{flex-wrap:nowrap;flex-shrink:0}
.menu-glyph{display:inline-block}
html[lang=de] h1,html[lang=de] h2,html[lang=de] h3{overflow-wrap:anywhere}
@media(max-width:900px){.header-inner{row-gap:4px}#menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;height:44px;padding:9px 12px}}
@media(max-width:650px){#menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:9px;border-radius:50%;font-size:18px}.menu-label{display:none}}

/* Immediate controls, short transitions; ambient movement only changes transforms. */
:where(button,a,summary){-webkit-tap-highlight-color:transparent}
:where(button:not(:disabled),a.button,summary):active{filter:brightness(.92)}
:where(button:not(:disabled),a.button):focus-visible{outline:3px solid var(--focus);outline-offset:4px}
.hero-visual:before,.activity-section:before,.character-section:before,.milestones-section:after,.brand-mark>span,.footer-flower,.maker-mark>span>span{pointer-events:none}
@keyframes petal-sway{from{transform:translateY(0) rotate(7deg)}to{transform:translateY(-3px) rotate(19deg)}}
@keyframes sunshine-turn{from{transform:rotate(-8deg)}to{transform:rotate(352deg)}}
@keyframes sprout-sway{from{transform:rotate(8deg)}to{transform:rotate(16deg)}}
@keyframes little-spark{from{transform:rotate(6deg) scale(.96)}to{transform:rotate(18deg) scale(1.04)}}
@keyframes detail-arrive{from{opacity:.7;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){
 :where(button:not(:disabled),a.button,.text-link,.language-toggle,.header-inner nav a,summary){transition:transform 120ms ease-out,background-color 140ms ease-out,border-color 140ms ease-out,color 140ms ease-out,box-shadow 120ms ease-out}
 :where(button:not(:disabled),a.button):active,.button:active{transform:translateY(1px) scale(.98);transition-duration:60ms}
 .image-button:active{transform:scale(.99)}
 details[open]>:not(summary){animation:detail-arrive 160ms ease-out}
 .step-detail{animation:detail-arrive 160ms ease-out}
 .js{--ambient-state:running}
 .js[data-motion=paused],.js[data-page-hidden=true]{--ambient-state:paused}
 .js .hero-visual:before{animation:petal-sway 6s ease-in-out infinite alternate;animation-play-state:var(--ambient-state);transform-origin:50% 70%}
 .js .activity-section:before{animation:sunshine-turn 48s linear infinite;animation-play-state:var(--ambient-state)}
 .js .character-section:before{animation:sprout-sway 7s ease-in-out infinite alternate;animation-play-state:var(--ambient-state);transform-origin:50% 100%}
 .js .milestones-section:after,.js .maker-mark>span>span{animation:little-spark 8s ease-in-out infinite alternate;animation-play-state:var(--ambient-state);transform-origin:center}
}
@media(hover:hover){
 :where(button:not(:disabled),.language-toggle,.header-inner nav a,summary):hover{background-color:var(--soft)}
 .button.primary:hover{background-color:var(--accent)}
 .button.secondary:hover{background-color:var(--surface)}
}
@media(max-width:900px){
 .js .header-inner #nav{display:grid;max-height:0;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;margin:0;transform:translateY(-5px)}
 .js .site-header.menu-open #nav{overflow:visible;max-height:190px;opacity:1;visibility:visible;pointer-events:auto;margin:12px 0 4px;transform:translateY(0)}
}
@media(max-width:900px) and (prefers-reduced-motion:no-preference){
 .js .header-inner #nav{transition:max-height 200ms cubic-bezier(.2,.7,.3,1),margin 200ms ease-out,opacity 140ms ease-out,transform 180ms ease-out,visibility 0s linear 200ms}
 .js .site-header.menu-open #nav{transition-delay:0s}
}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}

@media(prefers-reduced-motion:no-preference){dialog[open]{animation:detail-arrive 160ms ease-out}}

/* Public asset guide: the website theme and source material swatches are separate. */
.art-intro{max-width:880px}.art-intro p{margin-top:18px}.art-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.art-reference{min-width:0;border:1.5px solid var(--line);border-radius:26px;overflow:hidden;background:var(--surface)}.art-reference .photo{border:0;border-radius:0}.art-reference .photo img{width:100%;height:320px;object-fit:contain;background:#353535}.art-copy{padding:24px}.art-copy h3{margin:12px 0}.art-copy p{font-size:16px}.art-palette{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:14px}.art-palette li{min-width:0;font-size:14px;font-weight:750}.art-palette code{display:block;font-size:12px;font-weight:400}.art-swatch{display:block;height:76px;border:1px solid var(--line);border-radius:18px;margin-bottom:10px}.art-rules{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px}.art-rules article{padding-top:22px;border-top:2px solid var(--line)}.art-rules p{margin-top:14px;font-size:16px}
@media(max-width:1100px){.art-palette{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:650px){.art-board,.art-rules{grid-template-columns:1fr}.art-reference .photo img{height:260px}.art-copy{padding:20px}.art-palette{gap:12px}.art-swatch{height:58px}}

.swatch-cream{background:#eedec0}.swatch-roof{background:#b96c52}.swatch-wood{background:#815b49}.swatch-leaf{background:#72a375}.swatch-leaflight{background:#a1c185}.swatch-bark{background:#8c7052}.swatch-gold{background:#e4b65d}.swatch-stone{background:#bcc6ad}

body[data-page=art-style] .page-title{padding-bottom:0}.art-board-section{margin-top:45px}.art-provenance{margin-top:18px;font-size:13px}.art-provenance dd{margin:0 0 8px;overflow-wrap:anywhere}.art-provenance dt{font-weight:800}.art-provenance summary{padding:10px 0;min-height:44px}
