/* Dorn's reading and interaction finish. Load after style.css. */
:root{--ink:#f5e5c3;--pale:#f5e5c3;--copper:#efd384;--muted:#dbc69e;--line:#9b7053;--paper:#321017;--rail-width:238px;--reading-width:70ch}
html{scroll-padding-top:86px}
body{font-size:16px;line-height:1.65;overflow-wrap:break-word}
body.nav-open{overflow:hidden}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:#efd38422}
button,input,select{min-height:44px}
button{touch-action:manipulation}
button:disabled{cursor:not-allowed;opacity:.55}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #f7df91;outline-offset:4px}
a:hover{color:#fff1cc}
.topbar{min-height:62px;height:auto;padding-block:9px;position:sticky;top:0;z-index:15;background:#230b11f5;backdrop-filter:blur(8px)}
.search-trigger{min-height:44px;width:210px;font-size:14px}
.search-trigger kbd{font:12px/1.8 var(--sans);min-width:23px;text-align:center}
#breadcrumb{letter-spacing:.7px;line-height:1.4;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.private-label{letter-spacing:1.2px;white-space:nowrap}
.page{max-width:1470px;padding:48px clamp(24px,4vw,64px) 72px}
.page-intro{max-width:890px}
.page-intro p{font-size:20px;line-height:1.7;max-width:63ch;color:var(--ink)}
.eyebrow,.badge,.section-no{color:var(--copper);letter-spacing:1.4px;font-size:11px;line-height:1.6}
.folio-head{gap:18px;font-size:11px;letter-spacing:1.2px;line-height:1.65}
.folio-head>a{padding-block:8px;min-height:44px;display:inline-flex;align-items:center}
h2,h3{line-height:1.25;text-wrap:balance}
.title-picture img{object-fit:contain;object-position:left center}
.title-text-fallback{font-size:clamp(32px,3.6vw,52px);line-height:1.2}
.rail{scrollbar-width:thin;scrollbar-color:#9b7053 #260b12}
.rail nav a{font-size:12px;letter-spacing:.65px;line-height:1.55;min-height:44px;display:flex;align-items:center;padding:10px 7px;border-left:2px solid transparent}
.rail nav a span{flex:none;width:20px;font-size:10px;margin-right:6px}
.rail nav a.active{padding-left:7px;color:#ffe7a6;border-left:2px solid #efd384;background:linear-gradient(90deg,#72303cab,transparent)}
.rail nav a:hover{background:linear-gradient(90deg,#57202aa6,transparent)}
.nav-sub{margin:0 0 8px 23px;padding-left:10px;border-left:1px solid #81513d}
.rail .nav-sub a{font-size:11px;min-height:40px;padding:8px 6px;color:var(--ink);letter-spacing:.4px}
.rail-bottom{padding-top:22px}
.rail-bottom p{display:none}
.rail-bottom a{display:inline-flex;align-items:center;min-height:40px}
.privacy-dot{font-size:11px;line-height:1.6;color:var(--muted)}
.edition{line-height:1.6}
.wordmark small{font-size:9px;line-height:1.8}
.menu-backdrop{display:none;position:fixed;inset:0;background:#100508bb;z-index:19;border:0;padding:0;width:100%;height:100%;min-height:0}
.article-layout{grid-template-columns:minmax(0,1fr) 218px;gap:clamp(28px,3.2vw,52px)}
.article-main{width:100%;max-width:860px;min-width:0}
.article-main h1{margin-top:17px}
.article-meta{font-size:11px;letter-spacing:1px;line-height:1.6;flex-wrap:wrap;margin:25px 0;color:var(--muted)}
.article-main .lede{font-size:22px;line-height:1.7;color:var(--ink);max-width:var(--reading-width);margin:23px 0 34px}
.prose{font-size:19px;line-height:1.85;max-width:var(--reading-width);color:var(--ink)}
.prose p{margin-bottom:1.3em}
.prose ul,.prose ol{padding-left:1.3em}
.prose li{padding-left:.2em;margin:10px 0;line-height:1.85}
.prose h3{font-size:25px;margin:34px 0 14px}
.prose a,.entity-entry a,.entity-facts a,.lede a{color:#ffe3a2;text-decoration:underline;text-decoration-color:#b28b59;text-underline-offset:4px;text-decoration-thickness:1px;border:0}
.prose a:hover,.entity-entry a:hover,.entity-facts a:hover,.lede a:hover{text-decoration-color:#fff1cc}
.reading-section{scroll-margin-top:95px;margin-bottom:48px}
.reading-section h2{font-size:31px;line-height:1.3;margin-bottom:20px;padding-top:8px}
.article-aside{top:92px;padding-top:38px;max-height:calc(100dvh - 108px);min-width:0}
.article-aside h3{font-size:11px;letter-spacing:1.2px;line-height:1.6;margin-bottom:15px}
.article-aside a{font-size:14px;line-height:1.6;padding-block:4px;margin-bottom:8px}
.contents-nav button{font-size:14px;line-height:1.6;min-height:44px;padding:8px 0}
.article-aside .keeper-actions .link-button{font-size:13px;line-height:1.65;text-align:left;min-height:44px}
.mobile-contents{display:none}
.gm-folio,.uncertainty-folio{margin-top:35px}
summary{min-height:44px;line-height:1.6;font-size:15px;padding:7px 0;list-style-position:outside;margin-left:20px}
.gm-folio summary span{font-size:11px;display:inline-block}
.notice{font-size:14px;line-height:1.8;padding:17px 20px;background:#350d17e8;color:var(--ink)}
.notice.secret{background:#350d17e8;color:var(--ink)}
.notice li{margin:8px 0}
.reading-end{line-height:1.7;font-size:13px;align-items:center}
.reading-end a{display:inline-flex;align-items:center;min-height:44px}
.entity-facts{gap:22px 36px;margin:26px 0 44px;padding:24px 0}
.entity-facts dt,.entity-details dt{font-size:11px;line-height:1.6;letter-spacing:1.1px;color:var(--copper)}
.entity-facts dd,.entity-details dd{font-size:18px;line-height:1.8;color:var(--ink)}
.entity-entries{gap:32px 38px}
.entity-entry h3{font-size:28px;line-height:1.3;margin-bottom:12px;color:#f3d991}
.entity-entry p{font-size:18px;line-height:1.85;color:var(--ink)}
.entity-entry .domain-list{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:18px}
.entity-details dd{font-size:17px}
.entity-group>header p{font-size:19px;line-height:1.8;color:var(--ink)}
.entity-group>header h2{font-size:32px;line-height:1.3}
.entity-entry figure{margin:0 0 20px;aspect-ratio:auto;overflow:visible;mask-image:none}
.entity-entry figure img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center}
/* Every important illustration retains the whole composition. Dedicated banners may set --plate-ratio. */
.hero{min-height:0;display:grid;grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr);align-items:center;gap:0;overflow:visible;background:transparent}
.hero>img,.hero>picture{position:relative;inset:auto;grid-column:2;grid-row:1;display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:none;align-self:stretch}
.hero>picture img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.hero:after{display:none}
.hero-copy{grid-column:1;grid-row:1;width:100%;max-width:none;padding:58px 22px 60px clamp(24px,4vw,64px);flex:auto;background:transparent}
.hero .hero-subtitle{font-size:27px;line-height:1.4;letter-spacing:1px}
.hero p{font-size:19px;line-height:1.75;max-width:34ch}
.hero .eyebrow{font-size:11px;letter-spacing:1.4px}
.hero .btn{font-size:12px;line-height:1.6;min-height:48px;padding:14px 19px}
.art-caption{display:none}
.category-art,.category-preamble .category-art,.history-page .category-art{height:auto;max-height:none;aspect-ratio:var(--plate-ratio,auto);overflow:visible;mask-image:none;margin:0 0 36px}
.category-art img,.category-preamble .category-art img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;mask-image:none}
.category-preamble .category-art{margin:0}
.category-art figcaption,.category-preamble .category-art figcaption{position:static;background:transparent;padding:10px 0 0;margin:0;max-width:none;font-size:11px;letter-spacing:.9px;color:var(--muted);line-height:1.7}
.story-spread figure,.map-feature figure,.region-illustration,.illustrated-divider,.article-hero img,.article-hero.portrait img,.library-card figure,.map-card img,.atlas-plate figure,.companion-map img,.companion-art img{mask-image:none;mask-composite:add}
.story-spread img,.map-feature img,.region-illustration img,.illustrated-divider img,.article-hero img,.article-hero.portrait img,.map-card img,.companion-map img,.companion-art img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;filter:none}
.story-spread figure,.map-feature figure,.region-illustration,.illustrated-divider,.article-hero{height:auto;max-height:none;overflow:visible}
.story-spread figcaption,.illustrated-divider figcaption,.article-hero figcaption{position:static;padding:10px 0 0;background:transparent;color:var(--muted);font-size:11px;letter-spacing:.8px;line-height:1.7}
.article-hero{margin:18px 0 38px}
.article-hero.portrait{max-width:440px;margin:22px auto 40px}
.region-illustration{grid-column:1/-1;margin-bottom:10px}
.library-card figure{margin:0 0 19px;aspect-ratio:3/2;overflow:hidden;display:grid;place-items:center;background:transparent}
.library-card figure img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;transition:filter .18s ease}
.library-card:hover figure img{transform:none;filter:brightness(1.06)}
.library-card h3{font-size:27px;line-height:1.3;margin:12px 0 13px}
.library-card p{font-size:18px;line-height:1.75;color:var(--ink);margin-bottom:15px}
.library-grid{gap:0 34px}
.library-card{padding:28px 0 32px;border-bottom:1px solid #8b5945}
.read-entry{font-size:11px;letter-spacing:1px;margin-top:19px;line-height:1.7}
.discovery-grid .library-card h3{font-size:25px}
.tabs{gap:0;margin-bottom:24px;border-bottom:1px solid #9b7053}
.pill{font-size:12px;min-height:44px;padding:11px 13px;letter-spacing:.7px;line-height:1.6;background:transparent}
.pill.active{background:#5b1d2be0;color:#ffe6a6;border-bottom-color:#efd384}
.toolbar{gap:12px;align-items:stretch}
.toolbar input,.toolbar select{font-size:16px;min-height:48px;padding:12px 15px}
.result-count{font-size:13px;letter-spacing:.25px;line-height:1.6;color:var(--muted)}
.section-heading{gap:20px;align-items:end;margin-bottom:30px;flex-wrap:wrap}
.section-heading h2{font-size:33px;line-height:1.3}
.section-heading a{min-height:40px;display:inline-flex;align-items:center;font-size:11px;letter-spacing:.8px;white-space:normal}
.chapter-card h3{font-size:28px;line-height:1.3}
.chapter-card p,.story-spread p,.region-sheet p,.map-feature p{font-size:19px;line-height:1.8;color:var(--ink)}
.story-spread h2{font-size:33px;line-height:1.3}
.map-feature section{padding:20px 0}
.region-sheet{gap:20px 40px}
.region-sheet ul{gap:10px 20px}
.region-sheet li a{display:inline-block;min-height:40px;padding-block:7px}
.region-sheet .btn{min-height:44px}
.atlas-plate p,.atlas-deck{font-size:17px;line-height:1.8;color:var(--ink)}
.atlas-plate h2{font-size:33px;line-height:1.3}
.map-tools{gap:8px}
.map-tools button{min-width:44px}
.map-tools span{font-size:13px;color:var(--muted);line-height:1.5}
.map-stage{height:70dvh;min-height:300px}
.map-stage:focus-visible{outline:3px solid #f7df91;outline-offset:4px}
.map-story-links a{min-height:44px;display:inline-flex;align-items:center;font-size:15px;line-height:1.7}
.chronicle p{font-size:19px;line-height:1.8;color:var(--ink)}
.chronicle time{width:auto;text-align:left;font-size:13px;line-height:1.6;letter-spacing:.8px;color:var(--copper)}
.chronicle h3{font-size:29px;line-height:1.3}
.history-margin{font-size:15px;line-height:1.8;color:var(--ink)}
.history-margin a{padding-block:5px;line-height:1.7}
.eras{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:30px 0 42px}
.era{padding:22px 18px;background:transparent;border-bottom:1px solid #81513d}
.era span{font-size:11px;line-height:1.7;letter-spacing:.5px;color:var(--muted)}
.era strong{font-size:22px;line-height:1.35}
.desk-actions button{font-size:13px;line-height:1.6;min-height:44px;padding:11px 14px}
.desk-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.record{min-width:0;padding:25px;background:#260c13a8;border-top:1px solid #a8754b}
.record h3{font-size:29px;line-height:1.3}
.record .edit{min-height:44px;padding:9px 13px;font-size:13px}
.record .record-meta{font-size:13px;line-height:1.7;color:var(--muted)}
.record .body{font-size:18px;line-height:1.85;color:var(--ink)}
.statblock p{font-size:16px;line-height:1.8}
.stat-top{font-size:14px;gap:12px 20px}
dialog{width:min(760px,calc(100% - 36px));padding:28px;max-height:calc(100dvh - 44px);overflow:auto;border:1px solid #b78e5d;background:#260c13;box-shadow:0 18px 80px #0d020be8;overscroll-behavior:contain}
.dialog-header{font-size:21px;line-height:1.4;gap:15px;margin-bottom:17px}
.dialog-header button{display:grid;place-items:center;min-width:44px;min-height:44px;padding:4px;font-size:28px;flex:none}
#global-search{font-size:17px;min-height:50px}
#search-results{max-height:52dvh;overflow:auto}
.search-result{padding:18px 0}
.search-result strong{font-size:26px;line-height:1.3;display:inline-block}
.search-result p{font-size:17px;line-height:1.75;color:var(--ink)}
form label{font-size:12px;letter-spacing:.65px;line-height:1.7}
form input,form select,form textarea{font-size:16px;line-height:1.6;padding:12px;color:var(--ink)}
form textarea{min-height:100px}
.form-actions{gap:14px;flex-wrap:wrap}
.mention-wrap{align-items:stretch;flex-wrap:wrap}
.mention-wrap select{flex:1 1 230px;max-width:100%;font-size:14px}
.mention-wrap button{min-height:44px;font-size:13px}
.form-grid{gap:18px}
fieldset{padding:17px;min-width:0}
legend{font-size:23px;line-height:1.4}
.ability-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 14px}
.ability-inputs input{padding:10px;font-size:16px}
.stat-inputs{gap:12px}
.small{font-size:14px;line-height:1.75}
.muted{color:var(--muted)}
footer{gap:12px 22px;align-items:center;flex-wrap:wrap;letter-spacing:1.1px;font-size:10px;color:var(--muted)}
footer a{min-height:40px;display:inline-flex;align-items:center}
footer span{font-size:12px;line-height:1.6}
#toast{font-size:15px;line-height:1.6;right:20px;bottom:20px;padding:14px 18px;max-width:calc(100% - 40px)}
@media(min-width:781px) and (max-width:1100px){:root{--rail-width:210px}.rail{width:var(--rail-width);padding-inline:17px}.shell{margin-left:var(--rail-width)}.article-layout{grid-template-columns:minmax(0,1fr);gap:0}.article-aside{position:static;max-height:none;overflow:visible;padding-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;border-top:1px solid #81513d;margin-top:28px}.article-aside .contents-nav{grid-column:1/-1}.hero{grid-template-columns:1fr}.hero>img,.hero>picture{grid-column:1;grid-row:2;width:100%;align-self:auto}.hero-copy{grid-row:1;padding:44px 28px 30px}.hero .hero-subtitle{font-size:25px}.hero p{max-width:45ch}.hero>picture img{height:auto}.category-preamble{display:block}.category-preamble .category-art{max-width:740px;margin-top:24px}.entry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.chapter-card h3{font-size:24px}.chapter-card p{font-size:17px}.history-columns{grid-template-columns:1fr}.story-spread{gap:25px}.story-spread h2{font-size:29px}.story-spread p{font-size:18px}.desk-grid{grid-template-columns:1fr}.private-label{display:none}}
@media(max-width:780px){:root{--reading-width:100%}.page{padding:30px 22px 50px}.topbar{padding:8px 16px;min-height:62px;gap:12px}.mobile-menu{min-width:44px;min-height:44px;padding:6px 10px;font-size:21px}.search-trigger{width:auto;flex:1;font-size:15px}.search-trigger kbd{display:none}.rail{width:min(330px,88vw);padding:37px 23px 22px;visibility:hidden;overflow-y:auto;max-height:100dvh}.rail.open{visibility:visible;box-shadow:none}.rail nav{margin-top:22px}.rail nav a{font-size:13px;min-height:46px;padding-block:10px}.rail .nav-sub a{min-height:42px;font-size:12px}.rail-close{width:44px;height:44px;display:grid;place-items:center;top:8px;right:8px;padding:0;line-height:1}.rail-bottom{margin-top:15px;padding-top:13px}.rail .edition{display:none}.menu-backdrop.visible{display:block}.hero{display:flex;flex-direction:column;align-items:stretch;min-height:0}.hero-copy{padding:35px 22px 28px;max-width:none;order:0}.hero>img,.hero>picture{width:100%;height:auto;position:static;object-fit:contain;order:1;align-self:auto}.hero>picture img{height:auto}.hero .hero-subtitle{font-size:25px;line-height:1.4;max-width:none}.hero p{font-size:18px;line-height:1.8;max-width:45ch}.dragon-hero-title>img{width:min(290px,90%)}.page-intro p{font-size:19px;line-height:1.75}.category-preamble{display:block}.category-preamble .category-art{margin-top:23px}.category-art,.category-preamble .category-art,.history-page .category-art{height:auto;margin-bottom:28px}.section-heading{gap:12px;margin-bottom:25px}.section-heading h2{font-size:29px}.entry-grid{grid-template-columns:1fr;gap:25px}.chapter-card{padding-right:22px}.chapter-card h3{font-size:27px}.library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.library-card h3{font-size:25px}.library-card p{font-size:17px}.article-layout{display:block}.article-main{max-width:none}.article-main .lede{font-size:20px;line-height:1.8}.prose{font-size:19px;line-height:1.85}.article-aside{display:block;position:static;max-height:none;overflow:visible;padding:24px 0 0;margin-top:34px;border-top:1px solid #81513d}.article-aside .contents-nav{display:none}.mobile-contents{display:block;border-block:1px solid #81513d;margin:24px 0;padding:8px 0}.mobile-contents summary{font-size:13px;letter-spacing:.8px}.mobile-contents nav{padding:5px 0 10px}.mobile-contents button{min-height:44px;text-align:left;display:block;width:100%;font-size:14px;line-height:1.6;border:0;background:transparent;padding:9px 0;color:var(--ink)}.reading-section{scroll-margin-top:85px;margin-bottom:38px}.reading-section h2{font-size:29px}.article-hero{margin:22px 0 32px}.article-hero.portrait{max-width:390px}.entity-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 25px}.entity-entries{grid-template-columns:1fr;gap:28px}.entity-group>header h2{font-size:29px}.entity-entry h3{font-size:27px}.story-spread,.story-spread.reverse{gap:16px;margin:36px 0 48px}.story-spread h2{font-size:30px}.story-spread p{font-size:19px}.map-feature{display:block;margin-top:38px}.map-feature figure{height:auto;max-height:none}.region-sheet{padding:30px 0}.region-sheet h2{font-size:29px}.region-sheet p{font-size:19px;line-height:1.8}.region-illustration{height:auto}.discovery-grid{grid-template-columns:1fr;gap:24px}.discovery-grid .library-card{display:grid;grid-template-columns:136px minmax(0,1fr);gap:19px;align-items:start;padding:0 0 25px}.discovery-grid .library-card figure{aspect-ratio:3/4;margin:0;background:transparent}.discovery-grid .library-card h3{font-size:23px;line-height:1.3;margin:9px 0 12px}.discovery-grid .library-card p{font-size:16px;line-height:1.75}.discovery-grid .read-entry{margin-top:13px}.atlas-plate{display:block}.atlas-plate>div{padding-top:16px}.atlas-plate h2{font-size:29px}.atlas-index{gap:42px}.map-tools span{width:100%;margin:4px 0 0}.map-stage{height:65dvh;min-height:280px}.map-story-links h2{font-size:28px}.chronicle{padding-left:26px;margin-left:7px}.chronicle h3{font-size:27px}.chronicle p{font-size:19px;line-height:1.8}.history-columns{display:block}.history-margin{padding-top:22px;margin-top:20px;border-top:1px solid #81513d}.eras{grid-template-columns:repeat(2,minmax(0,1fr));margin:25px 0 35px}.era{padding:20px 12px}.era strong{font-size:22px}.quote-strip{grid-template-columns:1fr;gap:18px;margin-top:42px;padding-top:30px}.quote-strip p{font-size:27px;line-height:1.4}.quote-strip .small{font-size:16px;line-height:1.8}.desk-grid,.two-col{grid-template-columns:1fr;gap:24px}.desk-actions{gap:9px}.desk-actions button{flex:1 1 145px}.record{padding:22px 18px}.record h3{font-size:28px}.abilities{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 8px}.abilities strong{font-size:12px}.ledger-section p,.ledger-section li{font-size:17px;line-height:1.8}.ledger-section h3{font-size:28px}.folio-head{flex-wrap:wrap}.reading-end{display:block;margin-top:38px}.reading-end a{margin-top:12px}.toolbar{flex-wrap:wrap}.toolbar input{min-width:0;flex:1 1 100%}.toolbar select{width:100%}.tabs{gap:0}.pill{font-size:12px;padding-inline:12px}.form-grid{grid-template-columns:1fr;gap:0}.stat-inputs{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}dialog{width:calc(100% - 24px);padding:20px;max-height:calc(100dvh - 24px);margin:auto}.dialog-header{font-size:19px}.form-actions button{flex:1;font-size:13px}.small{font-size:14px;line-height:1.8}footer{margin:0 22px;padding:24px 0;gap:12px 20px}footer span{margin-left:0;flex:1 1 100%}#toast{right:12px;bottom:12px;max-width:calc(100% - 24px)}}
@media(max-width:480px){.library-grid{grid-template-columns:1fr;gap:0}.entity-facts{grid-template-columns:1fr}.entity-facts dd{font-size:18px}.discovery-grid .library-card{grid-template-columns:110px minmax(0,1fr);gap:16px}.discovery-grid .library-card h3{font-size:22px}.discovery-grid .library-card p{font-size:16px}.discovery-grid .badge{font-size:10px;letter-spacing:.8px}.discovery-grid .read-entry{font-size:10px;letter-spacing:.65px}.folio-head{font-size:10px}.era{padding:18px 10px}.stat-inputs{grid-template-columns:1fr;gap:0}.form-actions{display:grid;grid-template-columns:1fr}.mention-wrap select{font-size:16px}.page-intro h1.illustrated-title{margin-bottom:20px}}
@media(max-width:780px){.tabs{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#9b7053 transparent;padding-top:5px;scroll-padding-inline:12px}.tabs .pill{flex:0 0 auto;white-space:nowrap}.tabs .pill:focus-visible{outline-offset:-3px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(forced-colors:active){.rail nav a.active,.pill.active{border:2px solid Highlight}.hero-copy,.notice{background:Canvas}.title-picture img,.dragon-wordmark,.dragon-hero-title img{forced-color-adjust:none}button:focus-visible,a:focus-visible{outline:3px solid Highlight}}

/* Live screenshot correction: bounded frontispiece, not a viewport-sized picture panel. */
@media(min-width:1101px){.hero{max-width:1360px;width:calc(100% - 64px);margin:28px auto 36px;grid-template-columns:minmax(310px,.78fr) minmax(0,1.22fr);gap:12px;align-items:center}.hero>img,.hero>picture{max-width:780px;width:100%;height:auto;align-self:center;justify-self:end;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 98%,transparent),linear-gradient(0deg,transparent,#000 7%,#000 97%,transparent);mask-composite:intersect}.hero-copy{padding:38px 24px 38px 20px;max-width:470px;justify-self:center}.solbera-typefaces .hero h1.dragon-hero-title{font-size:clamp(96px,8vw,130px);margin-bottom:20px}.hero p{max-width:32ch}.hero .hero-subtitle{font-size:26px}}
.people-feature{margin:38px 0 65px}.people-feature .section-heading{margin-bottom:22px;align-items:end}.people-feature .section-heading>div{max-width:760px}.people-feature p{font-size:19px;line-height:1.75;max-width:62ch;margin-bottom:0}.people-feature figure{margin:0}.people-feature figure a{display:block}.people-feature img{display:block;width:100%;height:auto;object-fit:contain;aspect-ratio:3/1}.people-feature h2{font-family:var(--display);font-size:clamp(32px,3.5vw,46px)}
@media(max-width:780px){.hero{margin:0;width:100%;max-width:none}.hero>img,.hero>picture{mask-image:linear-gradient(0deg,transparent,#000 7%,#000 98%,transparent)}.people-feature{margin:35px 0 48px}.people-feature p{font-size:18px}.people-feature .section-heading{gap:12px}.people-feature img{aspect-ratio:3/1}}

/* These roles must survive the later-loaded live font sheet. */
.solbera-typefaces .people-feature h2{font-family:var(--dorn-title);font-weight:700;font-size:clamp(32px,3.5vw,46px)}
@media(min-width:1101px){.solbera-typefaces .hero .hero-copy h1.dragon-hero-title{font-size:clamp(96px,8vw,130px)}}
@media(max-width:780px){.solbera-typefaces .hero .hero-copy h1.dragon-hero-title{font-size:80px}}

.people-feature figcaption{font:400 16px/1.6 var(--dorn-section);color:var(--copper);text-align:center;padding:12px 0 0;letter-spacing:.5px}

/* Biographical identity plates belong to the profile margin. */
.person-heading{max-width:calc(100% - 280px - clamp(28px,3.2vw,52px));margin-bottom:20px}
.person-article{grid-template-columns:minmax(0,1fr) 280px;align-items:start}
.person-article>.article-main{grid-column:1;grid-row:1 / span 2;min-width:0}
.person-profile{grid-column:2;grid-row:1;min-width:0;align-self:start}
.person-article>.article-aside{grid-column:2;grid-row:2;position:static;max-height:none;overflow:visible;margin-top:0;padding-top:12px}
.identity-portrait{margin:0 0 26px;width:100%}
.identity-portrait img{display:block;width:100%;height:auto;object-fit:contain;max-height:none}
.identity-portrait figcaption{color:var(--muted);font-size:15px;text-align:center;line-height:1.5;margin-top:10px}
.person-profile .entity-facts{display:block;padding:0;margin:0 0 25px}
.person-profile .entity-facts>div{padding:0 0 14px;overflow-wrap:anywhere}
@media(max-width:1100px){.person-heading{max-width:none}.person-article{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.person-article>.person-profile{grid-column:1;grid-row:1;display:grid;grid-template-columns:minmax(0,230px) minmax(0,1fr);gap:24px;margin:0 0 26px}.person-article>.article-main{grid-column:1;grid-row:2}.person-article>.article-aside{grid-column:1;grid-row:3;margin-top:28px;padding-top:24px}.person-profile .identity-portrait{margin-bottom:0;max-width:230px}.person-profile .entity-facts{margin:0}}
@media(max-width:520px){.person-article>.person-profile{display:block;max-width:100%;margin:0 0 28px}.person-profile .identity-portrait{max-width:280px;margin:0 auto 22px}.person-profile .entity-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.person-heading h1{overflow-wrap:anywhere}}
@media(min-width:1101px){.person-article{grid-template-rows:max-content 1fr}}
@media(min-width:1101px){.person-article:not(:has(>.person-profile))>.article-aside{grid-row:1 / span 2}}

/* Place accounts open on their landscape, with the complete composition intact. */
.place-heading{max-width:1050px;margin-bottom:22px}
.place-frontispiece{margin:0 auto 38px;max-width:1050px;width:100%}
.place-frontispiece img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;object-position:center;mask-image:none}
.place-frontispiece figcaption{font-size:15px;line-height:1.5;text-align:center;color:var(--muted);margin-top:10px}
@media(max-width:780px){.place-frontispiece{margin:0 0 30px}.place-frontispiece img{max-height:none}.place-heading{margin-bottom:18px}}

.back-to-top{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));z-index:35;min-height:48px;min-width:48px;padding:10px 16px;border:1px solid #bb9760;background:#321017;color:#f4e4b8;box-shadow:0 5px 18px #13030988;font:15px/1.4 var(--sans);cursor:pointer}
.back-to-top[hidden]{display:none}.back-to-top:hover{background:#57222c;color:#fff2ce}.back-to-top:focus-visible{outline:3px solid #efcb7c;outline-offset:4px}.back-to-top span{font-size:20px;margin-right:7px}
@media(max-width:780px){.back-to-top{right:max(14px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));font-size:13px;padding:10px 13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.back-to-top{transition:none}}

/* Portrait-format narrative plates stay attached to their relevant prose. */
.portrait-passage{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(0,1.2fr);gap:25px;align-items:start;margin:20px 0 30px}
.portrait-passage>.section-illustration{margin:0;width:100%;max-width:300px}
.portrait-passage img{display:block;width:100%;height:auto;object-fit:contain;max-height:none}
.portrait-passage .passage-copy{min-width:0}.portrait-passage .passage-copy>:first-child{margin-top:0}
@media(max-width:620px){.portrait-passage{display:block}.portrait-passage>.section-illustration{float:right;width:42%;max-width:220px;margin:0 0 15px 20px}.portrait-passage:after{content:"";display:block;clear:both}}
@media(max-width:380px){.portrait-passage>.section-illustration{float:none;width:min(220px,80%);margin:0 0 20px}}

.entity-entry-portrait{grid-column:1/-1;display:grid;grid-template-columns:minmax(170px,.8fr) minmax(0,1.2fr);gap:0 26px;align-items:start}
.entity-entry-portrait>figure{grid-column:1;grid-row:1/span 8;margin:0!important;max-width:290px}
.entity-entry-portrait>:not(figure){grid-column:2}.entity-entry-portrait>h3{margin-top:0}
@media(max-width:620px){.entity-entry-portrait{display:block}.entity-entry-portrait>figure{float:right;width:42%;margin:0 0 16px 20px!important}.entity-entry-portrait:after{content:"";display:block;clear:both}}
@media(max-width:380px){.entity-entry-portrait>figure{float:none;width:min(220px,80%);margin:0 0 20px!important}}

/* Relationships support the biography rather than dominating its story. */
.entity-entry-related{display:grid;grid-template-columns:84px minmax(0,1fr);gap:0 19px;align-items:start;grid-column:1/-1;padding-top:18px}
.entity-entry-related>figure{grid-column:1;grid-row:1/span 8;width:84px!important;max-width:84px!important;margin:0!important;float:none!important}
.entity-entry-related>figure img{width:84px;height:auto;max-height:126px;object-fit:contain;object-position:top}
.entity-entry-related>:not(figure){grid-column:2}.entity-entry-related:not(:has(figure)){display:block}
body.solbera-typefaces .entity-entry-related h3{font-size:27px;line-height:1.2;margin:0 0 10px}.entity-entry-related p{margin:0 0 14px;font-size:17px;line-height:1.7}
@media(max-width:520px){.entity-entry-related{grid-template-columns:66px minmax(0,1fr);gap:0 15px}.entity-entry-related>figure,.entity-entry-related>figure img{width:66px!important;max-width:66px!important}.entity-entry-related>figure img{max-height:100px}body.solbera-typefaces .entity-entry-related h3{font-size:25px}}

.gm-contents-link span{font-size:10px;letter-spacing:1px;color:#e8c66f;border:1px solid #81513d;padding:1px 4px;margin-left:5px;white-space:nowrap}.gm-folio>.prose>.reading-section:first-child{margin-top:24px}

/* Verse keeps its source wording and stanza rhythm. */
.verse-passage{padding:.25rem 0 .25rem 1.35rem;border-left:2px solid var(--copper,#b88a55);max-width:38rem}.verse-passage p{line-height:1.75;font-style:italic}.verse-passage p:last-child{margin-bottom:0}
