/* Lantern & Ink: the same storybook and humanist faces used by the game. */
@font-face {font-family:Alegreya;src:url('/fonts/Alegreya-SemiBold.woff2') format('woff2');font-style:normal;font-weight:600;font-display:swap}
@font-face {font-family:Alegreya;src:url('/fonts/Alegreya-SemiBoldItalic.woff2') format('woff2');font-style:italic;font-weight:600;font-display:swap}
@font-face {font-family:"Alegreya Sans";src:url('/fonts/AlegreyaSans-Medium.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face {font-family:"Alegreya Sans";src:url('/fonts/AlegreyaSans-Bold.woff2') format('woff2');font-style:normal;font-weight:650 900;font-display:swap}
@font-face {font-family:"Alegreya Sans";src:url('/fonts/AlegreyaSans-MediumItalic.woff2') format('woff2');font-style:italic;font-weight:400 600;font-display:swap}
@font-face {font-family:"Alegreya Sans";src:url('/fonts/AlegreyaSans-BoldItalic.woff2') format('woff2');font-style:italic;font-weight:650 900;font-display:swap}
:root {--serif:Alegreya,Georgia,serif;--reading:"Alegreya Sans","Trebuchet MS",sans-serif;--hand:var(--serif);--cream:#fff0d0;--gold:#f1c77e;--letter-edge:#082735;--letter-shadow:0 2px 1px #041a27,0 5px 14px #041a27a6}
html body {font-family:var(--reading);font-size:20px;font-weight:500;line-height:1.6;color:var(--cream);font-synthesis:none}
button,input,select,textarea,summary {font-family:var(--reading)}
button,input,select,textarea {font-size:inherit}
html :is(h1,h2,h3),.world-trails strong,.next-shore {font-family:var(--serif);font-weight:600;letter-spacing:-.018em}
h1 em,h2 em,h3 em {font-weight:600;color:var(--gold)}
.top nav {font-family:var(--reading);font-weight:700;font-size:18px;letter-spacing:.01em;gap:25px}
.top nav a {text-shadow:0 2px 3px #041a27,0 0 12px #041a27}
.top::before {content:"";position:absolute;inset:0 -16px;z-index:-1;background:linear-gradient(#062532c9,#06253270 65%,transparent);pointer-events:none}
.top .nav-play {background:#082e3dd9;border-color:#f1c77e99;text-shadow:0 1px 2px #041a27}
.hero-art .painting-window::after {background:radial-gradient(ellipse 55% 47% at 50% 31%,#05232f99,transparent 100%),linear-gradient(180deg,#05232f38,transparent 72%,#0d2935)}
.art-led .hero-copy {max-width:900px;text-shadow:var(--letter-shadow);isolation:isolate}
.art-led h1 {font-size:clamp(57px,7.2vw,98px);font-weight:600;line-height:1.02;letter-spacing:-.028em;text-shadow:var(--letter-shadow);-webkit-text-stroke:1px var(--letter-edge);paint-order:stroke fill}
.art-led h1 em {padding:.02em .04em .08em;color:#f5d08c}
.art-led .lead {font:500 clamp(22px,2.2vw,27px)/1.45 var(--reading);color:#fff5df;max-width:40ch;margin-top:23px;text-shadow:0 2px 2px #041a27,0 0 12px #041a27}
.art-led .kicker {font-family:var(--reading);font-size:15px;font-weight:700;letter-spacing:.12em;color:#ffe0a4}
.art-led .actions .ink-link,.ink-link {font-family:var(--reading);font-weight:700;font-size:21px;letter-spacing:.01em;text-underline-offset:.22em;text-decoration-thickness:1px}
.art-led .actions .ink-link {text-shadow:0 2px 2px #041a27,0 0 12px #041a27}
.plank,.art-led .plank,.download-ticket strong {font:700 20px/1.35 var(--reading);letter-spacing:.015em}
.plank,.art-led .plank {color:#16333b;background:#f1c77e;text-shadow:none;box-shadow:inset 0 1px #fff0c4,inset 0 -3px #80572866,0 5px 16px #041a274d}
.world-trails strong {font-size:clamp(26px,2.6vw,34px);text-shadow:var(--letter-shadow)}
.world-trails>a {background:linear-gradient(90deg,transparent,#05232f60,transparent)}
.chapter-copy h2,.horizon-heading h2,.harbor-departure h2,.shore-heading h1 {font-weight:600;line-height:1.08;letter-spacing:-.02em}
.chapter-copy h2,.horizon-heading h2,.live-invitation h2,.dream-pause>p:last-child,.harbor-departure h2 {text-shadow:0 2px 1px #041a27,0 5px 14px #041a2766}
.chapter-copy p,.horizon-heading p,.live-invitation>p:not(.kicker),.shore-heading>p:last-child,.story-pair p,.journal-entry p {font-family:var(--reading);font-size:21px;line-height:1.6;color:inherit;max-width:54ch}
.chapter-tree .chapter-copy>div:last-child,.horizon-heading>div:last-child,.live-invitation>p:not(.kicker) {color:#f3e8ce}
.chapter-copy .ink-link,.horizon-heading .ink-link,.story-pair .ink-link {font:700 22px/1.4 var(--reading)}
.paper-story,.journal,.account-card {--gold:#78521c;color:#213d3d;text-shadow:none}
.paper-story h2,.journal h2,.account-card h2 {text-shadow:0 1px #fff8df99}
.paper-story em,.journal em {color:#285e5c}
.pet-meadow p,.practice-copy p {font-size:20px;line-height:1.55;color:#f3e8ce}
.dream-pause>p:last-child {font-weight:600;line-height:1.35}
.horizon-scenes h3 {font-weight:600;line-height:1.2}
.account-story h1 {font-family:var(--serif);font-weight:600;line-height:1.1;text-shadow:var(--letter-shadow)}
.account-story>p {color:#fff2d7;text-shadow:0 2px 3px #041a27}
.account-card {transform:none}
.account-card h2 {font-family:var(--serif);font-weight:600;font-size:36px;line-height:1.15}
.account-tabs a,.account-card label {font-family:var(--reading);font-size:18px;font-weight:700}
.account-card input {font-size:20px}
.account-card .note,.account-card .account-details dt,.account-card .security-box p {font-size:17px;line-height:1.5}
.account-card .account-button {font-size:20px;font-weight:700}
.painting-path>span {font:600 20px/1.3 var(--serif)}
.painting-path small {font:500 16px/1.45 var(--reading);color:#f5d9a3}
.shore-heading .kicker,.entry-date {font-family:var(--reading);font-size:16px;font-weight:700;letter-spacing:.075em}
footer {font-family:var(--reading);font-size:17px;color:#e3e5d6}
footer .footer-brand {font-family:var(--serif);font-weight:600}
.harbor-departure .departure-inner {text-shadow:var(--letter-shadow)}
.harbor-departure .travel-notes {background:#082735ed;color:#fff0d0;border-color:#e8c18480;text-shadow:none;font-size:18px}
@media(max-width:850px) {
  .top nav {font-size:18px;gap:17px}
  .harbor-ready .harbor-menu,.harbor-ready .nav-play {font-family:var(--reading);font-size:18px;font-weight:700}
  .art-led h1 {font-size:clamp(56px,8.5vw,78px)}
}
@media(max-width:560px) {
  html body {font-size:19px}
  .art-led h1 {font-size:clamp(44px,11.4vw,64px);line-height:1.04;-webkit-text-stroke:.7px var(--letter-edge)}
  .art-led .lead {font-size:22px;line-height:1.4;max-width:29ch}
  .art-led .kicker {font-size:13px;letter-spacing:.075em}
  .art-led .actions .ink-link,.art-led .plank {font-size:19px}
  .world-trails strong {font-size:27px}
  .chapter-copy h2,.horizon-heading h2,.harbor-departure h2,.shore-heading h1 {font-size:43px}
  .chapter-copy p,.horizon-heading p,.shore-heading>p:last-child,.story-pair p {font-size:20px}
  .account-story h1 {font-size:43px}
  .account-story>img:not(.account-logo) {display:none}
  .account-story .account-logo {width:190px;margin:6px auto 18px}
  .account-card {padding:24px}
}
@media(forced-colors:active) {
  .art-led h1 {-webkit-text-stroke:0;text-shadow:none}
  .top::before {display:none}
  .plank,.art-led .plank {border:2px solid ButtonText}
}
