/* LUFFY56 reading edition. Native document flow; GSAP decorates the reading rhythm.
   Layers: artwork 0; sticky chapter rail 2; chapter locator 8; shared header 10. */
.landscape-edition { --paper:#f3f0e7; --surface:#e9e8df; --elevated:#faf7ee; --ink:#193b3b; --muted:#536762; --line:#c9cec1; --accent:#ad422e; --accent-soft:#eadfd3; --hero-ink:#193b3b; --hero-number-fill:#ad422e; }
[data-theme="dark"] .landscape-edition { --paper:#122321; --surface:#192e2c; --elevated:#203a36; --ink:#ebeadd; --muted:#afc2b8; --line:#3d534a; --accent:#eea482; --accent-soft:#3e342c; --hero-ink:#ebeadd; --hero-number-fill:#eea482; }
@media(prefers-color-scheme:dark) { :root:not([data-theme]) .landscape-edition { --paper:#122321; --surface:#192e2c; --elevated:#203a36; --ink:#ebeadd; --muted:#afc2b8; --line:#3d534a; --accent:#eea482; --accent-soft:#3e342c; --hero-ink:#ebeadd; --hero-number-fill:#eea482; } }
.landscape-edition { --page-gutter:64px; --reading-width:1280px; --column-gap:clamp(40px,6vw,88px); --section-space:clamp(80px,7vw,104px); font-size:15px; line-height:1.85; }
.landscape-edition .container { width:min(var(--reading-width),calc(100% - 2 * var(--page-gutter))); }
.landscape-edition .section { padding-block:var(--section-space); }
.landscape-edition .site-header { background:color-mix(in srgb,var(--paper) 94%,transparent); backdrop-filter:blur(16px); }
.landscape-edition .header-inner { height:70px; width:min(var(--reading-width),calc(100% - 2 * var(--page-gutter))); display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:24px; }
.landscape-edition .header-inner>.wordmark { justify-self:start; transform:translateY(-.5px); }
.landscape-edition .header-actions { justify-self:end; }
.landscape-edition .desktop-nav { gap:28px; }
@media(min-width:768px) {
 .landscape-edition .desktop-nav { height:100%; min-height:0; }
 .landscape-edition .desktop-nav a { display:flex; align-items:center; height:100%; padding-block:0; line-height:1; }
}
.landscape-edition .header-actions { min-height:44px; align-items:center; }
.landscape-edition .menu-button:not([hidden]) { display:grid; place-items:center; width:44px; height:44px; min-height:44px; padding:0; border-radius:50%; line-height:0; transition:background-color .2s var(--ease),color .2s var(--ease); }
.landscape-edition .menu-button:hover,.landscape-edition .menu-button[aria-expanded="true"] { background:var(--surface); color:var(--accent); }
.landscape-edition .menu-button .menu-icon { display:block; width:20px; height:20px; }
.menu-line { transform-origin:10px 10px; transition:transform .25s var(--ease),opacity .2s var(--ease); }
.menu-line:first-child { transform:translateY(-6px); }
.menu-line:last-child { transform:translateY(6px); }
.menu-button[aria-expanded="true"] .menu-line:first-child { transform:rotate(45deg); }
.menu-button[aria-expanded="true"] .menu-line:nth-child(2) { opacity:0; transform:scaleX(0); }
.menu-button[aria-expanded="true"] .menu-line:last-child { transform:rotate(-45deg); }
.landscape-edition .theme-options button { align-items:center; }
.landscape-edition h2,.landscape-edition h3,.landscape-edition h4 { text-wrap:pretty; }
.landscape-edition .text-link { min-height:40px; gap:14px; font-size:12px; }
.landscape-edition .text-link:focus-visible,.landscape-edition .arc-source:focus-visible,.landscape-edition .crew-source:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.landscape-edition .editorial-note { font-size:11px; color:var(--muted); max-width:70ch; line-height:1.8; margin-top:24px; }
.landscape-edition .chapter-label { font-size:11px; color:var(--accent); letter-spacing:.08em; }
.landscape-edition .section-heading,.landscape-edition .archive-heading { margin-bottom:44px; }
.landscape-edition .section-heading h2,.landscape-edition .archive-heading h2 { font-size:clamp(36px,4.6vw,66px); line-height:1.23; letter-spacing:-.055em; font-weight:750; }
.landscape-edition .section-heading>p,.landscape-edition .archive-heading>p { max-width:48ch; margin-top:24px; font-size:15px; line-height:1.9; color:var(--muted); }
.heading-translation { display:block; font-family:var(--display); letter-spacing:.015em; font-size:12px; color:var(--muted); margin-top:18px; }
.editorial-art { position:relative; overflow:hidden; background:var(--surface); pointer-events:none; }
.editorial-art img { display:block; width:100%; height:100%; object-fit:cover; }
/* Cover: one headline crosses from paper into a panoramic sea. */
.landscape-edition .kinetic-hero { --cover-title:clamp(48px,6.1vw,86px); --cover-leading:1.17; --cover-bleed:12px; position:relative; isolation:isolate; width:min(var(--reading-width),calc(100% - 2 * var(--page-gutter))); margin:auto; container-type:inline-size; display:grid; grid-template-columns:1.05fr 1fr; grid-template-rows:auto auto 1fr; gap:22px var(--column-gap); padding:24px 0 40px; min-height:min(820px,calc(100svh - 70px)); overflow:clip; }
.landscape-edition .poster-top { grid-column:1/-1; grid-row:1; padding:0; border:0; color:var(--muted); font-size:10px; letter-spacing:.12em; }
/* Size the intact wordmark to the full cover rail, including its final dot. */
.landscape-edition .poster-name { grid-column:1/-1; grid-row:2; z-index:1; color:var(--ink); font-size:21.85cqi; line-height:.94; letter-spacing:-.085em; padding-bottom:.03em; }
.landscape-edition .poster-name>span { color:var(--accent); -webkit-text-stroke:0; letter-spacing:-.045em; }
.landscape-edition .poster-name .masthead-dot { color:var(--ink); }
/* Align visible strokes, rather than font boxes. Keep these offsets separate
   from the vertical transforms owned by the cover animation. */
.landscape-edition .poster-name { left:-.065em; }
.landscape-edition .kinetic-hero h1>.title-window:first-child { position:relative; left:-.09em; }
/* Align the upper body of 总; let its thin lower stroke hang into the margin. */
.landscape-edition .kinetic-hero h1>.title-window:nth-child(2) { position:relative; left:-.12em; }
.landscape-edition .kinetic-hero { overflow-clip-margin:12px; }
.landscape-edition .hero-copy { grid-column:1/-1; grid-row:3; padding:0; align-self:start; z-index:2; }
.landscape-edition .kinetic-hero h1 { font-size:var(--cover-title); line-height:var(--cover-leading); letter-spacing:-.065em; }
.landscape-edition .kinetic-hero .title-accent { color:#fff8e6; }
.landscape-edition .poster-sea { position:relative; grid-column:1/-1; grid-row:3; width:calc(100% + 2 * var(--cover-bleed)); height:auto; min-height:300px; max-width:none; margin:calc(var(--cover-title) * var(--cover-leading)) calc(-1 * var(--cover-bleed)) 0; align-self:stretch; justify-self:center; aspect-ratio:auto; overflow:hidden; background:#153b40; }
.landscape-edition .poster-sea img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 44%; transform:none; }
.landscape-edition .poster-sea::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#102e3480,transparent 65%),linear-gradient(0deg,#102e34b3,transparent 48%); pointer-events:none; }
.landscape-edition .poster-bottom { grid-column:1/-1; grid-row:3; align-self:end; justify-self:start; width:min(52%,640px); padding:0 0 28px; gap:24px; display:flex; flex-direction:row; align-items:flex-end; justify-content:space-between; flex-wrap:wrap; }
.landscape-edition .poster-bottom>p { color:#fff8e6; font-size:14px; line-height:1.85; }
.landscape-edition .poster-bottom .button { background:#fff8e6; color:#193b3b; padding:0 0 0 22px; gap:24px; min-height:54px; margin:0; box-shadow:none; flex-shrink:0; }
.landscape-edition .poster-bottom .button::before { display:none; }
.landscape-edition .poster-bottom .button>span { display:grid; place-items:center; flex-shrink:0; width:54px; height:54px; padding:0; border-left:1px solid #193b3b40; font-size:22px; }
.landscape-edition .poster-bottom .button:focus-visible { outline:2px solid #fff8e6; outline-offset:5px; }
.gsap-scroll-ready .hero-copy .title-line { animation:none; }
.landscape-edition .poster-bottom .button:hover,.landscape-edition .poster-bottom .button:hover>span { transform:none; }
/* Contents and a discreet chapter locator. */
.voyage-directory { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); padding-block:32px 44px; gap:0 30px; }
.voyage-directory>p { grid-column:1/-1; margin-bottom:18px; color:var(--muted); font-size:11px; }
.voyage-directory>a { display:grid; grid-template-columns:24px 1fr 18px; align-items:center; gap:10px; min-height:50px; border-bottom:1px solid var(--line); font-size:13px; transition:color .2s; }
.voyage-directory>a>span:first-child { font-family:var(--display); font-size:9px; color:var(--muted); }
.voyage-directory>a:hover { color:var(--accent); }
.voyage-position { --chapter-active:0; --chapter-row:32px; position:fixed; right:10px; top:calc(var(--header-height,70px) + (100dvh - var(--header-height,70px))/2); transform:translateY(-50%); z-index:8; width:44px; color:var(--muted); }
.voyage-track { position:relative; width:44px; touch-action:none; user-select:none; }
.voyage-position a { --chapter-hover:0; position:relative; display:flex; align-items:center; justify-content:flex-end; width:44px; height:var(--chapter-row); color:var(--muted); cursor:pointer; }
.voyage-position a b { display:block; width:28px; text-align:center; font:10px/1 var(--display); font-variant-numeric:tabular-nums; transform:translateX(calc(var(--chapter-hover) * -5px)) scale(calc(1 + var(--chapter-hover) * .18)); transition:color .2s,transform .25s var(--ease); }
.voyage-position a[aria-current] b { color:var(--accent); font-size:16px; letter-spacing:-.04em; }
.voyage-position a:hover b,.voyage-position a:focus-visible b,.voyage-position a.is-preview b { color:var(--accent); }
.voyage-marker { position:absolute; left:0; top:calc(var(--chapter-row)/2 - 1px); width:9px; height:2px; background:var(--accent); transform:translateY(calc(var(--chapter-active) * var(--chapter-row))); transition:transform .4s cubic-bezier(.22,1,.36,1); pointer-events:none; }
.voyage-position a:focus-visible { outline:2px solid var(--accent); outline-offset:-1px; }
.voyage-position a span { position:absolute; right:44px; display:flex; align-items:center; gap:12px; min-height:32px; padding:6px 12px; border-left:2px solid var(--accent); font:12px/1.5 var(--font); white-space:nowrap; color:var(--ink); background:var(--paper); opacity:0; pointer-events:none; transform:translateX(8px); transition:opacity .18s,transform .25s var(--ease); }
.voyage-position a:hover span,.voyage-position a:focus-visible span,.voyage-position a.is-preview span { opacity:1; transform:none; pointer-events:auto; }
.voyage-position.is-dragging a:not(.is-preview) span { opacity:0; pointer-events:none; }
.is-chapter-dragging,.is-chapter-dragging * { cursor:grabbing!important; user-select:none!important; }
@media(max-height:600px) { .voyage-position { --chapter-row:26px; } }
@media(max-height:420px) { .voyage-position { display:none; } }
@media(prefers-reduced-motion:reduce) { .voyage-position a b,.voyage-position a span,.voyage-marker { transition:none; } .voyage-position a b { transform:none; } }
/* The name, followed by a compact character dossier. */
.landscape-edition .lore-section { grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:var(--column-gap); padding-block:var(--section-space); min-height:0; }
.landscape-edition .lore-content { padding-top:0; }
.landscape-edition .lore-heading h2 { font-size:clamp(34px,3.6vw,52px); line-height:1.3; }
.landscape-edition .lore-heading>p { margin-top:24px; font-size:15px; }
.landscape-edition .gomu-button { min-height:230px; padding:0 0 38px; gap:12%; background:transparent; border:0; border-bottom:1px solid var(--line); }
.landscape-edition .gomu-digit { font-size:clamp(120px,13vw,185px); }
.landscape-edition .gomu-hint { bottom:10px; font-size:10px; }
.landscape-edition .lore-note { padding-top:20px; }
.landscape-edition .lore-note h3 { font-size:12px; letter-spacing:.04em; }
.landscape-edition .lore-note p { font-size:12px; line-height:1.85; margin-top:9px; max-width:52ch; }
.landscape-edition .profile-section { border-top:1px solid var(--line); padding-block:var(--section-space); }
.profile-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:var(--column-gap); }
.profile-lead h3 { font-size:26px; line-height:1.5; margin-bottom:22px; }
.profile-lead>p { color:var(--muted); max-width:42ch; font-size:15px; line-height:1.95; margin-bottom:16px; }
.profile-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 24px; }
.profile-facts>div { border-top:1px solid var(--line); padding:17px 0; }
.profile-facts dt { color:var(--muted); font-size:11px; margin-bottom:6px; }
.profile-facts dd { margin:0; font-size:18px; font-weight:650; line-height:1.6; }
.profile-facts dd span { display:block; font-size:11px; font-weight:400; color:var(--muted); margin-top:5px; }
.profile-facts .profile-fact-wide { grid-column:1/-1; }
.profile-facts .profile-fact-wide dd { font-size:17px; }
.profile-facts .profile-fact-copy { font-size:13px!important; font-weight:400; }
/* Essays: an image margin, open paragraphs, no decorative card containers. */
.landscape-edition .stories-section { background:var(--surface); }
.essay-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); align-items:start; gap:var(--column-gap); }
.essay-art-column { position:sticky; top:calc(var(--header-height) + 28px); padding-bottom:24px; }
.essay-landscape { width:88%; aspect-ratio:4/5; max-height:48svh; }
.essay-inset { width:56%; aspect-ratio:4/3; margin:-55px 0 0 auto; border:8px solid var(--surface); }
.essay-sideword { font-size:clamp(58px,7.7vw,112px); font-weight:800; line-height:1.1; letter-spacing:-.07em; color:var(--accent); margin-top:-12px; }
.essay { padding:0 0 34px; margin:0 0 30px; border-bottom:1px solid var(--line); }
.essay:last-child { margin-bottom:0; }
.essay-topic { display:flex; align-items:center; gap:18px; color:var(--accent); font-size:11px; margin-bottom:14px; }
.essay-topic span { font-family:var(--display); font-size:10px; }
.essay h3 { font-size:clamp(21px,2.1vw,28px); line-height:1.5; letter-spacing:-.025em; margin-bottom:17px; }
.essay-copy { color:var(--muted); font-size:15px; line-height:2; max-width:45ch; }
.essay .source-link { margin-top:12px; font-size:11px; }
/* Chronology: four chapters and a sticky index, all prose remains in normal flow. */
.journey-layout { display:grid; grid-template-columns:minmax(220px, .75fr) minmax(0,1.75fr); align-items:start; gap:var(--column-gap); }
.journey-atlas { position:sticky; top:100px; }
.atlas-counter { display:flex; align-items:baseline; gap:16px; line-height:1; }
.atlas-counter>span { font:clamp(88px,9vw,130px)/1 var(--display); letter-spacing:-.07em; color:var(--accent); }
.atlas-counter small { font:13px var(--display); color:var(--muted); }
#atlasLabel { font-size:11px; letter-spacing:.12em; color:var(--muted); margin:12px 0 22px; }
.atlas-art { aspect-ratio:1.6; margin-bottom:22px; }
.phase-nav { display:grid; gap:4px; }
.phase-nav a { display:flex; align-items:center; gap:18px; min-height:40px; font-size:13px; color:var(--muted); transition:color .2s; }
.phase-nav a span { font:10px var(--display); }
.phase-nav a.is-active,.phase-nav a:hover { color:var(--accent); }
.atlas-source { max-width:30ch; color:var(--muted); font-size:10px; line-height:1.8; margin-top:22px; }
.journey-phase { scroll-margin-top:100px; padding-bottom:60px; }
.journey-phase:last-child { padding-bottom:0; }
.phase-heading { display:flex; gap:24px; padding-bottom:22px; border-bottom:2px solid var(--ink); }
.phase-heading>span { color:var(--accent); font:20px/1.7 var(--display); }
.phase-heading h3 { font-size:28px; line-height:1.4; }
.phase-heading p { font-size:12px; color:var(--muted); margin-top:8px; }
.arc-list { list-style:none; margin:0; padding:0; }
.arc-entry { display:grid; grid-template-columns:175px minmax(0,1fr); gap:28px; padding:27px 0; border-bottom:1px solid var(--line); }
.arc-title h4 { display:flex; justify-content:space-between; align-items:center; gap:6px; font-size:18px; line-height:1.5; margin:0 0 8px; }
.arc-source { display:grid; place-items:center; flex-shrink:0; min-width:30px; min-height:32px; font-size:16px; color:var(--muted); }
.arc-source:hover { color:var(--accent); }
.arc-title p { color:var(--muted); font-size:10px; font-variant-numeric:tabular-nums; line-height:1.9; }
.arc-copy p { color:var(--muted); font-size:14px; line-height:1.95; }
.arc-status { font-size:9px; color:var(--accent); white-space:nowrap; font-weight:400; }
/* Ability scale: the large numeral mirrors the chapter currently being read. */
.landscape-edition .abilities-section { border-top:1px solid var(--line); }
.ability-intro { display:flex; align-items:baseline; gap:40px; padding:22px 0; border-block:1px solid var(--line); margin-bottom:45px; }
.ability-intro h3 { font-size:16px; white-space:nowrap; }
.ability-intro p { max-width:65ch; font-size:14px; color:var(--muted); }
.ability-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); align-items:start; gap:var(--column-gap); }
.gear-stage { position:sticky; top:110px; padding-bottom:25px; }
.gear-stage-label { font:14px var(--display); letter-spacing:.18em; }
.gear-stage-number { display:block; font:clamp(160px,23vw,320px)/.95 var(--display); letter-spacing:-.09em; color:var(--accent); margin:22px 0 26px; }
.gear-stage-line { display:block; height:2px; background:var(--accent); transform-origin:left; }
.gear-stage p { font-size:12px; color:var(--muted); margin-top:18px; letter-spacing:.12em; }
.gear-list { display:block; }
.gear-entry { display:grid; grid-template-columns:38px minmax(0,1fr); gap:20px; padding:35px 0; border-bottom:1px solid var(--line); min-height:235px; }
.gear-entry:first-child { padding-top:0; }
.gear-number { font:16px/1.8 var(--display); color:var(--accent); }
.gear-entry .reading-overline { font-size:10px; color:var(--muted); margin-bottom:10px; }
.gear-entry h3 { font-size:36px; line-height:1.3; margin-bottom:16px; }
.gear-entry p:not(.reading-overline) { font-size:15px; line-height:1.95; color:var(--muted); }
.gear-entry .text-link { margin-top:12px; font-size:11px; }
.haki-layout { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:var(--column-gap); margin-top:75px; }
.haki-layout h3 { font-size:29px; line-height:1.4; margin-bottom:20px; }
.haki-layout>div>p { color:var(--muted); font-size:14px; margin-bottom:14px; }
.haki-list>div { display:grid; grid-template-columns:76px 1fr; gap:22px; border-top:1px solid var(--line); padding:20px 0; }
.haki-list dt { font-size:15px; font-weight:650; }
.haki-list dd { margin:0; color:var(--muted); font-size:14px; line-height:1.9; }
/* The crew is a roster, not nine boxed biographies. */
.landscape-edition .crew-section { background:var(--surface); }
.crew-heading { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.crew-heading>div>p { max-width:40ch; margin-top:22px; font-size:15px; color:var(--muted); }
.crew-total { font:clamp(100px,17vw,230px)/.95 var(--display); letter-spacing:-.08em; color:var(--accent); }
.crew-landscape { height:180px; margin:0 0 48px; }
.crew-landscape img { object-position:50% 60%; }
.crew-list { display:block; }
.crew-entry { display:grid; grid-template-columns:80px 160px minmax(160px,.8fr) minmax(0,1.5fr); align-items:baseline; gap:25px; border-top:1px solid var(--line); padding:26px 0; }
.crew-index { color:var(--accent); font-size:10px; font-variant-numeric:tabular-nums; }
.crew-entry h3 { display:flex; align-items:center; justify-content:space-between; font-size:24px; gap:10px; line-height:1.4; }
.crew-source { min-height:36px; min-width:28px; display:grid; place-items:center; font-size:16px; color:var(--muted); }
.crew-source:hover { color:var(--accent); }
.crew-entry p { font-size:13px; line-height:1.85; color:var(--muted); }
.crew-entry .crew-dream { color:var(--ink); font-size:13px; }
.ships-note { display:grid; grid-template-columns:1fr 2fr; gap:50px; border-top:2px solid var(--ink); margin-top:40px; padding-top:30px; }
.ships-note h3 { font-size:23px; max-width:10ch; line-height:1.5; }
.ships-note p { color:var(--muted); font-size:14px; margin-bottom:18px; }
.ships-note strong { color:var(--ink); }
.ships-note .text-link { display:block; width:fit-content; margin-top:6px; font-size:11px; }
/* Seven entries, one record, no duplicated table or photograph controls. */
.landscape-edition .bounty-layout { grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:var(--column-gap); align-items:start; }
.landscape-edition .bounty-display { border:0; padding:0; background:transparent; box-shadow:none; }
.landscape-edition .bounty-display:hover { transform:none; box-shadow:none; }
.landscape-edition .bounty-display::after { display:none; }
.landscape-edition .bounty-card-top { border:0; margin:0 0 20px; padding:0; min-height:44px; align-items:center; }
.landscape-edition .bounty-card-title { font-size:14px; letter-spacing:.06em; }
.landscape-edition .bounty-card-index { position:static; font:11px var(--display); color:var(--muted); }
.landscape-edition .bounty-landscape { position:static; width:100%; margin:0 0 24px; }
.landscape-edition .bounty-landscape>img { width:100%; height:150px; object-fit:cover; object-position:50% 55%; }
.landscape-edition .bounty-amount { margin:0; font-size:clamp(35px,4.3vw,62px); min-height:1.1em; }
.landscape-edition .bounty-amount>span { font:clamp(35px,4.3vw,62px)/1.1 var(--display); color:var(--accent); letter-spacing:-.05em; }
.landscape-edition .bounty-currency { font-size:10px; letter-spacing:.12em; margin-top:12px; }
.landscape-edition .bounty-caption { padding-top:22px; margin-top:24px; }
.bounty-caption-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:12px; }
.landscape-edition .bounty-caption h3 { font-size:26px; }
.landscape-edition .bounty-caption-heading .text-link { min-height:32px; font-size:12px; white-space:nowrap; align-self:start; }
.landscape-edition .bounty-caption .bounty-summary { font-size:14px; }
.bounty-description { font-size:14px; line-height:1.85; color:var(--muted); margin-top:10px; max-width:65ch; }
.landscape-edition .bounty-toolbar { margin-bottom:20px; min-height:26px; }
.landscape-edition .bounty-navigation { padding:0; box-shadow:none; }
.landscape-edition .bounty-stop { padding:18px 12px; min-height:66px; }
.landscape-edition .bounty-stop::before { font-size:10px; }
.landscape-edition .bounty-stop>span:last-child { font-size:12px; font-variant-numeric:tabular-nums; }
.landscape-edition .bounty-stop[aria-pressed="true"] { background:var(--surface); color:var(--ink); box-shadow:inset 3px 0 var(--accent); }
.landscape-edition .bounty-stop[aria-pressed="true"]>span:last-child { color:var(--ink); }
.landscape-edition .bounty-progress { display:none; }
.bounty-static { list-style:none; padding:0; margin:0; width:100%; }
.bounty-static li { border-top:1px solid var(--line); }
.bounty-static a { display:flex; justify-content:space-between; gap:15px; padding:16px 0; font-size:12px; }
.bounty-static strong { font-variant-numeric:tabular-nums; }
/* Reference exits are short, functional, and grouped once. */
.landscape-edition .reading-guide { display:grid; grid-template-columns:1fr 3fr; align-items:start; gap:50px; min-height:0; border-top:1px solid var(--line); padding-block:64px 72px; }
.reading-guide>h2 { font-size:clamp(26px,2.3vw,34px); line-height:1.4; margin:0; letter-spacing:-.04em; }
.guide-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; }
.guide-links article { display:flex; flex-direction:column; align-items:flex-start; }
.guide-links .text-link { margin-top:auto; }
.guide-links h3 { font-size:18px; margin-bottom:14px; }
.guide-links p { font-size:13px; color:var(--muted); max-width:30ch; line-height:1.9; margin-bottom:14px; }
/* The closing horizon is a background, never a destination of its own. */
.landscape-edition .closing-section { min-height:580px; display:flex; align-items:center; position:relative; isolation:isolate; padding-block:80px; overflow:hidden; background:#153b40; color:#fff8e6; }
.landscape-edition .closing-sea { position:absolute; inset:0; z-index:-2; overflow:hidden; }
.landscape-edition .closing-sea img { width:100%; height:100%; object-fit:cover; object-position:50% 55%; }
.landscape-edition .closing-section::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg,#0c292fdd 0%,#0c292fbd 38%,#0c292f54 70%,#0c292f24 100%); }
.landscape-edition .closing-section h2 { color:#fff8e6; text-shadow:0 2px 24px #0c292f30; font-size:clamp(50px,6.7vw,96px); line-height:1.2; letter-spacing:-.065em; }
.landscape-edition .closing-outline { color:#f3d29a; -webkit-text-stroke:0; }
.landscape-edition .closing-section h2>.title-window:first-child { position:relative; left:-.05em; }
.landscape-edition .closing-bottom { display:block; border:0; padding:0; margin-top:30px; width:50%; }
.landscape-edition .closing-bottom>p { font-size:15px; color:#fff8e6; }
.landscape-edition .closing-links { margin-top:18px; }
.landscape-edition .closing-links .text-link { color:#fff8e6; font-size:13px; }
.landscape-edition .closing-links .text-link:hover { color:#f3d29a; }
.landscape-edition .closing-section :focus-visible { outline-color:#fff8e6; }
.landscape-edition .site-footer { padding-block:50px 28px; }
.landscape-edition .footer-main>.wordmark { font-size:42px; }
/* A quiet typographic return link belongs to the footer's reading hierarchy. */
.back-to-top { display:inline-flex; align-items:center; justify-content:flex-end; min-height:44px; margin-left:auto; flex:none; color:var(--muted); font-size:12px; font-weight:500; line-height:1.5; transition:color .2s var(--ease); }
.back-to-top>span { padding-block:3px; border-bottom:1px solid var(--line); transition:border-color .2s var(--ease); }
.back-to-top:hover,.back-to-top:focus-visible { color:var(--ink); }
.back-to-top:hover>span,.back-to-top:focus-visible>span { border-color:currentColor; }
.back-to-top:active { color:var(--accent); }
@media(max-width:767px) {
 .landscape-edition .footer-main { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:20px 12px; }
 .landscape-edition .footer-main>.wordmark { grid-column:1; grid-row:1; justify-self:start; }
 .landscape-edition .footer-main>p { grid-column:1/-1; grid-row:2; margin:0; }
 .back-to-top { grid-column:2; grid-row:1; }
}
.lost-voyage { min-height:100svh; display:flex; flex-direction:column; justify-content:center; padding-block:60px; }
.lost-voyage .wordmark { align-self:start; margin-bottom:50px; }
.lost-voyage .lost-number { font-family:var(--display); font-size:clamp(120px,24vw,340px); line-height:1; letter-spacing:-.08em; color:var(--accent); }
.lost-voyage h1 { margin-top:22px; font-size:clamp(28px,4vw,54px); }
.lost-voyage .lost-copy { margin-block:22px 30px; color:var(--muted); max-width:36ch; }
.lost-voyage .button { align-self:start; background:var(--ink); color:var(--paper); }
@media(min-width:768px) and (max-height:820px) {
 .landscape-edition .kinetic-hero { --cover-title:clamp(44px,5vw,68px); gap:10px 6%; padding-block:18px 25px; }
 .landscape-edition .poster-sea { min-height:270px; }
}
@media(min-width:768px) and (max-height:760px) {
 .journey-atlas,.gear-stage { top:90px; }
 .atlas-counter>span { font-size:90px; }
 .atlas-art { max-height:140px; }
 .gear-stage-number { font-size:230px; }
}
@media(max-width:1100px) {
 .landscape-edition { --page-gutter:40px; --column-gap:40px; }
 .landscape-edition .desktop-nav { gap:20px; font-size:12px; }
 .landscape-edition .kinetic-hero { padding-inline:0; min-height:0; }
 .essay-layout,.journey-layout,.ability-layout { gap:var(--column-gap); }
 .arc-entry { grid-template-columns:140px 1fr; gap:20px; }
 .profile-layout,.haki-layout { gap:var(--column-gap); }
 .crew-entry { grid-template-columns:80px 115px .8fr 1.3fr; gap:20px; }
 .crew-entry h3 { font-size:21px; }
 .voyage-position { right:3px; }
 .landscape-edition .reading-guide { grid-template-columns:1fr; gap:28px; }
 .guide-links { gap:35px; }
}
@media(max-width:900px) and (min-width:768px) {
 .landscape-edition .desktop-nav { gap:15px; font-size:11px; }
 .landscape-edition .header-inner { gap:15px; }
 .profile-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .journey-layout { grid-template-columns:220px minmax(0,1fr); gap:40px; }
 .arc-entry { display:block; }
 .arc-title { margin-bottom:12px; }
 .arc-title h4 { justify-content:start; gap:16px; }
 .arc-title p br { display:none; }
 .arc-title p { word-spacing:4px; }
 .crew-entry { grid-template-columns:70px 130px 1fr; }
 .crew-entry>p:last-child { grid-column:2/-1; }
 .gear-stage-number { font-size:190px; }
}
@media(max-width:1279px) { .voyage-position { display:none; } }
@media(min-width:768px) and (max-width:1023px) {
 .landscape-edition .poster-sea { min-height:300px; }
 .landscape-edition .poster-bottom { width:65%; gap:18px; }
 .landscape-edition .poster-bottom .button { min-height:48px; padding-left:14px; gap:14px; }
 .landscape-edition .poster-bottom .button>span { width:40px; height:48px; }
 .essay-layout { grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr); }
 .ability-layout { grid-template-columns:200px minmax(0,1fr); }
 .gear-stage-number { font-size:170px; }
 .landscape-edition .bounty-layout { grid-template-columns:1fr; gap:30px; }
 .landscape-edition .bounty-navigation { grid-row:1; position:static; }
 .landscape-edition .bounty-display { grid-row:2; }
 .bounty-stops { display:flex; gap:8px; overflow-x:auto; scrollbar-width:thin; padding-bottom:8px; }
 .landscape-edition .bounty-stop { flex:0 0 120px; width:120px; flex-direction:column; justify-content:center; align-items:center; gap:4px; border:1px solid var(--line); min-height:64px; padding:10px 6px; }
 .bounty-stop::before { display:none; }
 .bounty-stop>span:first-child { flex:0; }
 .landscape-edition .bounty-landscape>img { height:190px; }
 .landscape-edition .bounty-amount,.landscape-edition .bounty-amount>span { font-size:56px; }
 .landscape-edition .bounty-toolbar { margin-bottom:10px; }
 .bounty-navigation-note { display:none; }
}
.landscape-edition .ships-note h3,.landscape-edition .bounty-caption h3 { text-wrap:balance; }
/* About: a quiet reading column, with the same anchor gap for every chapter. */
/* Direct fragments settle immediately; directory clicks animate explicitly in JS. */
.about-document { --about-anchor-gap:28px; scroll-behavior:auto; scroll-padding-top:calc(var(--header-height,71px) + var(--about-anchor-gap)); }
.about-document .about-intro h1 { margin-top:0; }
.about-document .about-intro>p { font-size:15px; line-height:2; }
.about-directory { padding-block:0; top:calc(var(--header-height,71px) + var(--about-anchor-gap)); }
.about-directory a { min-height:52px; font-size:14px; }
.about-directory a:focus-visible { outline-offset:-3px; }
.about-directory a:active { background:var(--accent-soft); }
.about-reading { max-width:48rem; }
.about-reading .about-section { padding-top:0; }
.about-reading .about-section + .about-section { margin-top:64px; }
.about-reading .about-section h2 { margin-bottom:24px; line-height:1.4; }
.about-reading .about-section h3 { font-size:18px; margin-block:32px 12px; line-height:1.5; }
.about-reading .about-section p { font-size:15px; line-height:2; margin-bottom:18px; }
.about-reading .about-section p:last-child { margin-bottom:0; }
.about-reading .about-section a:hover { color:var(--ink); }
.about-reading .source-list { gap:0; margin-block:24px 32px; }
.about-reading .source-list li { margin:0; padding-block:12px 18px; }
.about-reading .source-list a { display:flex; align-items:center; width:fit-content; min-height:44px; font-size:15px; line-height:1.7; }
.about-reading .source-list span { font-size:13px; line-height:1.85; margin-top:0; }
.about-reading .source-list a>span { display:inline; font-size:inherit; margin-left:6px; }
@media(max-width:767px) {
 .about-document { --about-anchor-gap:20px; scroll-padding-top:calc(var(--header-height,69px) + 59px + var(--about-anchor-gap)); }
 .about-document .about-intro { padding-bottom:30px; margin-bottom:0; }
 .about-document .about-intro h1 { margin-top:0; font-size:clamp(30px,8.8vw,38px); line-height:1.3; }
 .about-document .about-intro>p { font-size:14px; line-height:1.95; }
 .about-directory { top:var(--header-height,69px); gap:0; padding-block:7px; box-shadow:none; }
 .about-directory a { flex:1 0 auto; justify-content:center; min-height:44px; padding:9px 8px; font-size:12px; gap:6px; }
 .about-reading { padding-top:32px; }
 .about-reading .about-section + .about-section { margin-top:48px; }
 .about-reading .about-section h2 { font-size:25px; margin-bottom:20px; }
 .about-reading .about-section p { font-size:15px; line-height:1.95; }
}
/* Supporting pages share the same text and outer alignment as the reading edition. */
@media(min-width:1024px) {
 .about-intro { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); column-gap:var(--column-gap); row-gap:24px; align-items:start; }
 .about-document .about-intro h1 { margin:0; font-size:clamp(40px,4.3vw,60px); }
 .about-document .about-intro>p { margin:0; max-width:none; }
 .lost-voyage { display:grid; grid-template-columns:1fr 1fr; gap:24px var(--column-gap); align-content:center; }
 .lost-voyage .wordmark { grid-column:1/-1; justify-self:start; margin-bottom:36px; }
 .lost-voyage .lost-number { grid-column:1; grid-row:2/5; font-size:clamp(180px,22vw,300px); align-self:center; }
 .lost-voyage h1 { grid-column:2; margin:0; align-self:end; font-size:clamp(28px,2.9vw,40px); }
 .lost-voyage .lost-copy { grid-column:2; margin:0; max-width:36ch; }
 .lost-voyage .button { grid-column:2; justify-self:start; }
}
@media(max-width:767px) {
 .landscape-edition { --page-gutter:20px; --column-gap:28px; --section-space:64px; }
 .landscape-edition .section { padding-block:var(--section-space); }
 .landscape-edition .header-inner { display:flex; width:calc(100% - 40px); height:64px; }
 .landscape-edition .header-actions { gap:8px; }
 .landscape-edition .section-heading,.landscape-edition .archive-heading { margin-bottom:34px; }
 .landscape-edition .section-heading h2,.landscape-edition .archive-heading h2 { font-size:clamp(30px,8.8vw,43px); line-height:1.3; }
 .landscape-edition .section-heading>p,.landscape-edition .archive-heading>p { font-size:13px; margin-top:20px; }
 .landscape-edition .kinetic-hero { --cover-title:clamp(34px,10vw,54px); --cover-leading:1.3; padding:20px 0 26px; grid-template-columns:1fr; grid-template-rows:auto auto 1fr; gap:20px 0; min-height:0; }
 .landscape-edition .poster-top { font-size:8px; letter-spacing:.03em; }
 .landscape-edition .poster-name { line-height:1; }
 .landscape-edition .poster-sea { min-height:270px; }
 .landscape-edition .poster-sea img { object-position:65% 47%; }
 .landscape-edition .poster-bottom { width:100%; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:14px; padding:0 0 20px; }
 .landscape-edition .poster-bottom>p { font-size:11px; max-width:none; }
 .landscape-edition .poster-bottom .button { min-height:48px; padding:0 0 0 12px; gap:9px; font-size:11px; }
 .landscape-edition .poster-bottom .button>span { width:32px; height:48px; font-size:18px; }
 .voyage-directory { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 20px; padding-block:22px 30px; }
 .voyage-directory>p { margin-bottom:10px; }
 .voyage-directory>a { font-size:12px; min-height:46px; gap:5px; }
 .voyage-position { display:none; }
 .landscape-edition .lore-section { grid-template-columns:1fr; gap:32px; padding-block:65px; }
 .landscape-edition .lore-heading h2 { font-size:34px; }
 .landscape-edition .lore-heading>p { margin-top:18px; font-size:13px; }
 .landscape-edition .gomu-button { min-height:220px; gap:clamp(20px,6vw,40px); }
 .landscape-edition .gomu-digit { font-size:clamp(96px,34vw,140px); }
 .landscape-edition .gomu-hint { font-size:10px; }
 .landscape-edition .profile-section { padding-block:60px; }
 .profile-layout { grid-template-columns:1fr; gap:28px; }
 .profile-lead h3 { font-size:23px; margin-bottom:16px; }
 .profile-lead>p { max-width:none; font-size:14px; }
 .profile-facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; }
 .profile-facts dd { font-size:17px; }
 .heading-translation { font-size:10px; }
 .essay-layout { grid-template-columns:1fr; gap:38px; }
 .essay-art-column { position:relative; top:auto; display:grid; grid-template-columns:1.3fr 1fr; gap:16px; align-items:end; padding:0; }
 .essay-landscape { width:100%; aspect-ratio:1; }
 .essay-inset { width:100%; aspect-ratio:1.1; margin:0 0 35px; border:0; }
 .essay-sideword { position:absolute; bottom:0; right:0; font-size:48px; margin:0; background:var(--surface); padding:7px 0 0 14px; }
 .essay { padding-bottom:24px; margin-bottom:25px; }
 .essay h3 { font-size:22px; }
 .essay-copy { max-width:none; font-size:14px; line-height:2; }
 .journey-layout { grid-template-columns:1fr; gap:32px; }
 .journey-atlas { position:relative; top:auto; display:grid; grid-template-columns:1fr 1fr; gap:18px; }
 .atlas-counter,#atlasLabel { display:none; }
 .atlas-art { grid-column:1; grid-row:1; margin:0; aspect-ratio:1; }
 .phase-nav { grid-column:2; grid-row:1; align-self:center; }
 .phase-nav a { font-size:11px; gap:10px; min-height:35px; }
 .atlas-source { grid-column:1/-1; max-width:none; margin:0; font-size:10px; }
 .atlas-source br { display:none; }
 .journey-phase { padding-bottom:40px; scroll-margin-top:85px; }
 .phase-heading { gap:16px; padding-bottom:18px; }
 .phase-heading h3 { font-size:24px; }
 .phase-heading>span { font-size:17px; }
 .arc-entry { display:block; padding:23px 0; }
 .arc-title h4 { font-size:20px; margin-bottom:8px; }
 .arc-title p { margin-bottom:12px; font-size:10px; }
 .arc-title p br { display:none; }
 .arc-copy p { font-size:13px; line-height:1.95; }
 .ability-intro { display:block; padding:20px 0; margin-bottom:30px; }
 .ability-intro h3 { margin-bottom:12px; }
 .ability-intro p { font-size:13px; }
 .ability-layout { grid-template-columns:1fr; gap:25px; }
 .gear-stage { position:relative; top:auto; display:grid; grid-template-columns:1fr 1fr; align-items:end; padding:0 0 20px; }
 .gear-stage-label { align-self:start; font-size:12px; }
 .gear-stage-number { grid-column:2; grid-row:1/3; font-size:115px; text-align:right; margin:0; }
 .gear-stage p { grid-column:1; grid-row:2; font-size:10px; margin:0; letter-spacing:.05em; }
 .gear-stage-line { grid-column:1/-1; margin-top:20px; }
 .gear-entry { min-height:0; padding:28px 0; gap:15px; grid-template-columns:32px minmax(0,1fr); }
 .gear-entry h3 { font-size:30px; }
 .gear-entry p:not(.reading-overline) { font-size:14px; }
 .haki-layout { grid-template-columns:1fr; gap:22px; margin-top:45px; }
 .haki-layout h3 { font-size:27px; }
 .haki-list>div { grid-template-columns:62px 1fr; gap:15px; }
 .haki-list dd { font-size:13px; }
 .crew-heading { gap:20px; align-items:start; }
 .crew-heading>div>p { font-size:13px; }
 .crew-total { font-size:70px; padding-top:4px; }
 .crew-landscape { height:130px; margin-bottom:28px; }
 .crew-entry { grid-template-columns:75px 1fr; gap:8px 16px; padding:24px 0; }
 .crew-entry h3 { font-size:25px; }
 .crew-entry .crew-dream { grid-column:2; font-size:12px; }
 .crew-entry>p:last-child { grid-column:2; font-size:13px; }
 .crew-entry .crew-index { font-size:10px; }
 .ships-note { grid-template-columns:1fr; gap:20px; margin-top:25px; padding-top:25px; }
 .ships-note h3 { max-width:none; font-size:22px; }
 .ships-note p { font-size:13px; }
 .landscape-edition .bounty-layout { grid-template-columns:1fr; gap:25px; }
 .landscape-edition .bounty-navigation { position:static; padding:0; background:transparent; box-shadow:none; }
 .landscape-edition .bounty-display { padding:0; grid-row:2; }
 .landscape-edition .bounty-stop { min-width:115px; width:115px; flex-basis:115px; min-height:60px; padding:10px 6px; }
 .landscape-edition .bounty-stop>span:last-child { font-size:10px; }
 .landscape-edition .bounty-landscape>img { height:130px; }
 .landscape-edition .bounty-amount { font-size:clamp(32px,9.5vw,52px); }
 .landscape-edition .bounty-amount>span { font-size:clamp(32px,9.5vw,52px); }
 .landscape-edition .bounty-caption h3 { font-size:24px; }
 .landscape-edition .bounty-card-top { min-height:26px; margin-bottom:15px; }
 .landscape-edition .bounty-caption { margin-top:20px; padding-top:18px; }
 .landscape-edition .reading-guide { padding-block:42px; gap:24px; }
 .reading-guide>h2 { font-size:30px; margin:0; }
 .guide-links { grid-template-columns:1fr; gap:25px; }
 .guide-links article { border-top:1px solid var(--line); padding-top:22px; }
 .guide-links p { max-width:none; margin-bottom:8px; }
 .landscape-edition .closing-section { min-height:510px; padding-block:60px; align-items:center; }
 .landscape-edition .closing-sea { inset:0; }
 .landscape-edition .closing-section::before { background:linear-gradient(90deg,#0c292fd9,#0c292f85 80%,#0c292f66); }
 .landscape-edition .closing-section h2 { font-size:clamp(40px,10.5vw,60px); }
 .landscape-edition .closing-bottom { width:90%; margin-top:30px; }
 .landscape-edition .closing-bottom>p { font-size:13px; }
 .landscape-edition .footer-main>.wordmark { font-size:36px; }
}
@media(max-width:360px) {
 .landscape-edition .footer-main>.wordmark { font-size:30px; }
 .landscape-edition .poster-bottom>p br { display:none; }
 .landscape-edition .poster-bottom>p { text-wrap:pretty; }
}
@media(prefers-reduced-motion:reduce) {
 .landscape-edition *, .landscape-edition *::before,.landscape-edition *::after { scroll-behavior:auto!important; }
 .journey-atlas,.gear-stage,.essay-art-column { position:relative; top:auto; }
}
@media print {
 .landscape-edition .section { padding-block:24px; }
 .voyage-directory,.phase-nav,.gear-stage { display:none; }
 .journey-atlas,.essay-art-column { position:relative; top:auto; }
 .essay,.arc-entry,.gear-entry,.crew-entry { break-inside:avoid; }
}
