/* The root page (four doors) and the Cloud Kingdom page */
.eyebrow{font-weight:700;font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:6px}
.lead{max-width:680px}
.play{font:inherit;font-weight:700;letter-spacing:.04em;padding:10px 22px;border:0;border-radius:999px;color:#fff;cursor:pointer;background:linear-gradient(90deg,#b9a3d9,#e3a6c9);box-shadow:0 8px 20px rgba(169,120,190,.35)}
.play:disabled{opacity:.6;cursor:default}

/* the four doors */
.gate-hero{height:min(62vh,560px)}
.doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:-30px;position:relative;z-index:2}
.door{position:relative;display:block;border-radius:22px;overflow:hidden;text-decoration:none;aspect-ratio:16/10;background:#2d2240;box-shadow:0 14px 34px rgba(74,53,96,.25);transition:transform .3s,box-shadow .3s}
.door img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.door:hover,.door:focus-visible{transform:translateY(-4px);box-shadow:0 0 0 3px var(--gold),0 18px 40px rgba(74,53,96,.32);outline:none}
.door:hover img{transform:scale(1.05)}
.door .lbl{position:absolute;left:0;right:0;bottom:0;padding:40px 22px 18px;background:linear-gradient(180deg,transparent,rgba(45,34,64,.85));color:#fff}
.door b{display:block;font-family:'Cinzel','GFS Didot',serif;font-size:1.45rem;letter-spacing:.04em}
.door i{font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-size:1.1rem;color:#ffe9c4}

/* the Cloud Kingdom */
.ck-hero{position:relative;background:#1c1528;overflow:hidden}
.ck-hero>img{display:block;width:100%;height:auto;max-height:80vh;object-fit:cover}
.ck-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(45,34,64,.25) 0%,rgba(45,34,64,0) 35%,rgba(247,238,246,.55) 85%,#f7eef6 100%);pointer-events:none}
.ck-hero .back{position:absolute;z-index:2;top:16px;left:18px;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:#fff;text-decoration:none;background:rgba(45,34,64,.45);padding:7px 14px;border-radius:999px}
.ck-hero .back.right{left:auto;right:18px}
.ck-title{position:absolute;z-index:1;left:0;right:0;bottom:8%;text-align:center;padding:0 16px}
.ck-title h1{font-size:clamp(2.2rem,7vw,4.6rem);line-height:1.05;color:var(--dusk);text-shadow:0 0 26px rgba(255,250,245,.95),0 0 8px rgba(255,250,245,.9)}
.ck-title .kicker{color:var(--plum);text-shadow:0 0 12px rgba(255,250,245,.9)}

.ck-about{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:22px;align-items:center}
.ck-about>img{display:block;width:100%;height:auto;border-radius:20px;box-shadow:0 14px 34px rgba(74,53,96,.22)}
.ck-about .card p+p{margin-top:10px}
.ck-head{text-align:center;margin-bottom:18px}
.ck-head .lead{margin:0 auto}

.table-wrap{display:flex;justify-content:center}
.roundtable{width:min(380px,86vw);height:auto;overflow:visible}
.roundtable .seat{fill:#b9a3d9;stroke:#fffaf5;stroke-width:3}
.roundtable .seat.new{fill:#fffaf5;stroke:var(--gold);stroke-width:3;stroke-dasharray:5 4;cursor:pointer}
.roundtable .halo{fill:url(#glow)}
@media (prefers-reduced-motion:no-preference){.roundtable .halo{animation:halo 2.6s ease-in-out infinite}}
@keyframes halo{50%{opacity:.35}}

.qa{max-width:760px;margin:18px auto 0;display:grid;gap:10px}
.qa details{background:rgba(255,250,245,.88);border:1px solid rgba(217,168,91,.35);border-radius:16px;padding:12px 18px;box-shadow:0 6px 18px rgba(74,53,96,.08)}
.qa summary{cursor:pointer;font-family:'Cinzel','GFS Didot',serif;font-weight:700;color:var(--ink);list-style:none}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"✦";color:var(--gold);margin-right:10px}
.qa details p{margin-top:8px}

.chair{max-width:760px;margin:20px auto 0;padding:20px 22px;border-radius:18px;border:1px dashed rgba(217,168,91,.85);background:linear-gradient(120deg,rgba(233,216,251,.5),rgba(251,215,227,.5))}
.chair h3{margin-bottom:6px}
.chair label{display:block;margin-bottom:10px}
.chair textarea{width:100%;font:inherit;padding:12px 14px;border-radius:14px;border:1px solid rgba(214,180,232,.9);background:#fff;color:var(--ink);resize:vertical}
.chair .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.chair .note{font-size:.84rem;font-style:italic;margin:6px 0 12px}
.chair .msg{margin-top:10px;font-weight:700;color:var(--plum);min-height:1.3em}

.places{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
@media (max-width:1000px) and (min-width:761px){.places{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pl{position:relative;display:block;border-radius:18px;overflow:hidden;aspect-ratio:4/3;background:#2d2240;text-decoration:none;box-shadow:0 10px 24px rgba(74,53,96,.18)}
.pl img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pl .pn{position:absolute;left:0;right:0;bottom:0;padding:30px 14px 12px;background:linear-gradient(180deg,transparent,rgba(45,34,64,.88));color:#fff;font-family:'Cinzel','GFS Didot',serif;font-weight:700;font-size:.95rem;line-height:1.25}
.pl .pn small{font-weight:500;font-size:.8em}
.pl .st{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-weight:700;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}
.pl.open .st{background:linear-gradient(90deg,#f3d08a,#e9a3c9);color:#fff}
.pl.open:hover,.pl.open:focus-visible{box-shadow:0 0 0 3px var(--gold),0 14px 30px rgba(74,53,96,.3);outline:none}
.pl.locked img{filter:grayscale(1) brightness(.85) contrast(.9)}
.pl.locked .st{background:rgba(45,34,64,.78);color:#f3d08a}
.pl.locked .st::before{content:"";width:11px;height:12px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V8a5 5 0 0 1 10 0v2' fill='none' stroke='black' stroke-width='2.4'/%3E%3Crect x='5' y='10' width='14' height='11' rx='2.5'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 10V8a5 5 0 0 1 10 0v2' fill='none' stroke='black' stroke-width='2.4'/%3E%3Crect x='5' y='10' width='14' height='11' rx='2.5'/%3E%3C/svg%3E") center/contain no-repeat}

@media (max-width:760px){
  .doors{grid-template-columns:minmax(0,1fr);margin-top:-16px}
}
@media (min-width:761px) and (max-width:1000px){
  .doors{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ck-about{grid-template-columns:minmax(0,1fr)}
  .ck-hero .back{top:auto;bottom:10px;font-size:.66rem;padding:5px 10px}
  .ck-hero>img{height:min(62vh,440px);object-position:50% 40%}
  .ck-title{bottom:20%}
  .ck-title .kicker{font-size:.6rem;letter-spacing:.14em}
  .places{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .pl .pn{font-size:.8rem;padding:24px 10px 10px}
}

/* Creatures of the Kingdom */
.creatures{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}
.creature{display:flex;flex-direction:column;padding:18px;border-radius:20px;background:rgba(255,250,245,.9);border:1px solid rgba(217,168,91,.35);box-shadow:0 10px 26px rgba(74,53,96,.1)}
.creature .cpic{width:120px;height:120px;margin:0 auto 10px;border-radius:50%;overflow:hidden;border:4px solid #fffaf5;box-shadow:0 0 0 2px var(--gold),0 8px 18px rgba(74,53,96,.22)}
.creature .cpic img{width:100%;height:100%;object-fit:cover;display:block}
.creature.unknown .cpic img{filter:brightness(.55) saturate(.6)}
.creature h3{text-align:center;font-size:1.1rem}
.creature .seen{text-align:center;font-weight:700;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:2px 0 10px}
.creature .colors{list-style:none;display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-bottom:10px}
.creature .colors li{display:inline-flex;align-items:center;gap:6px;padding:3px 10px 3px 4px;border-radius:999px;background:rgba(233,216,251,.45);font-size:.78rem;color:var(--plum)}
.creature .colors i{width:14px;height:14px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(74,53,96,.25)}
.creature dl{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;font-size:.86rem;margin-bottom:8px}
.creature dt{font-weight:700;color:var(--ink)}
.creature .story{font-size:.9rem}
.creature.mystery{align-items:center;justify-content:center;text-align:center;background:linear-gradient(150deg,rgba(45,34,64,.92),rgba(74,53,96,.9));border-color:rgba(217,168,91,.6);color:#e9dcf5}
.creature.mystery h3{color:#f3d08a;margin-top:12px}
.creature.mystery .story{color:#d9cbe8;margin-top:6px}
.mbox{position:relative;width:110px;height:96px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#c9a6ec,#e9a3c9);box-shadow:0 0 0 3px #f3d08a,0 0 26px rgba(243,208,138,.55)}
.mbox::before{content:"";position:absolute;left:50%;top:-3px;bottom:-3px;width:14px;transform:translateX(-50%);background:#f3d08a}
.mbox::after{content:"";position:absolute;top:-16px;left:50%;width:44px;height:22px;transform:translateX(-50%);border:5px solid #f3d08a;border-bottom:0;border-radius:24px 24px 0 0}
.mbox span{position:relative;z-index:1;font-family:'Cinzel',serif;font-weight:700;font-size:2.4rem;color:#fffaf5;text-shadow:0 2px 6px rgba(45,34,64,.5)}
@media (prefers-reduced-motion:no-preference){.creature.mystery:hover .mbox{animation:wiggle .6s ease}}
@keyframes wiggle{25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}

.phantoms{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center;margin-top:18px}
.phantoms .pics{display:flex;gap:10px}
.phantoms .pics img{width:110px;height:110px;border-radius:50%;object-fit:cover;border:4px solid #fffaf5;box-shadow:0 0 0 2px #8f86c9,0 8px 18px rgba(74,53,96,.25)}
.phantoms h3{margin-bottom:6px}
.phantoms .count{margin-top:8px;font-weight:700;color:var(--gold)}
@media (max-width:760px){.phantoms{grid-template-columns:1fr;justify-items:center;text-align:center}}

/* the album */
.album-page{padding-top:30px}
.album-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:28px;align-items:center}
.cover-lg{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 20px 50px rgba(45,34,64,.35)}
.album-hero h1{font-size:clamp(2rem,5vw,3rem)}
.album-hero .sub{font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.4rem;color:var(--plum);margin-bottom:12px}

/* the archives */
.arch-intro{margin:10px auto 0;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.35rem;color:var(--plum)}
.chapter{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:center;padding:28px 0}
.chapter>img{display:block;width:100%;height:auto;border-radius:20px;box-shadow:0 14px 34px rgba(74,53,96,.22)}
.chapter.flip>img{order:2}
.chapter .card p+p{margin-top:10px}
.arch-more{margin:20px 0 10px}
.arch-more .play{display:inline-block;text-decoration:none}

@media (max-width:760px){
  .album-hero,.chapter{grid-template-columns:minmax(0,1fr)}
  .chapter.flip>img{order:0}
}
.arch-link{margin-top:16px}.arch-link .play{display:inline-block;text-decoration:none}
.pageback{position:absolute;top:16px;left:18px;z-index:5;font-weight:700;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--plum);text-decoration:none;background:rgba(255,250,245,.75);padding:7px 14px;border-radius:999px;box-shadow:0 4px 12px rgba(74,53,96,.15)}
.album-page{padding-top:64px}

/* the home page: two columns, the Archives beneath the Cloud Kingdom, the Dragon Games across, the Album a full square */
.doors{grid-template-columns:repeat(2,minmax(0,1fr))}
.d-profile{grid-column:1;grid-row:1}.d-kingdom{grid-column:2;grid-row:1}
.d-academy{grid-column:1;grid-row:2}.d-archives{grid-column:2;grid-row:2}
.d-games{grid-column:1/3;grid-row:5;aspect-ratio:21/9}
.d-album{grid-column:1/3;grid-row:6;justify-self:center;width:min(620px,100%);aspect-ratio:1/1}
.d-album .lbl{background:linear-gradient(180deg,transparent,rgba(20,18,50,.75))}
@media (max-width:760px){
  .doors{grid-template-columns:minmax(0,1fr)}
  .doors>.door{grid-column:auto;grid-row:auto;aspect-ratio:16/10}
  .doors>.d-album{aspect-ratio:1/1;width:100%}
}
.tracks{list-style:none;margin-top:14px;border-top:1px solid var(--line)}
.tracks li{display:flex;align-items:center;gap:12px;padding:9px 4px;border-bottom:1px solid var(--line)}
.tracks .tp{width:34px;height:34px;flex:none;border:0;border-radius:50%;cursor:pointer;color:#fff;background:linear-gradient(135deg,#c9a6ec,#f0a9cf);font-size:.8rem}
.tracks .tn{width:16px;color:var(--gold);font-weight:700}
.tracks .tt{flex:1;font-family:'Cinzel','GFS Didot',serif;font-weight:700;color:var(--ink)}
.tracks .tl{color:var(--soft);font-variant-numeric:tabular-nums}
.tracks li.on .tt{color:var(--plum)}

/* the archives' atlas */
.atlas{padding-top:18px}
.wings{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:16px}
.wing{font:inherit;cursor:pointer;text-align:center;padding:12px 8px;border-radius:16px;border:1px solid rgba(185,138,61,.45);background:linear-gradient(160deg,#fbf3e2,#f1e3c8);color:#5a4528;box-shadow:0 6px 14px rgba(90,69,40,.12)}
.wing b{display:block;font-family:'Cinzel','GFS Didot',serif;font-size:.95rem}
.wing span{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:.95rem;color:#7a6343}
.wing.on{background:linear-gradient(160deg,#5a4528,#3d2f1b);color:#f8e7c4;border-color:#d9a85b}
.wing.on span{color:#e9cf9b}
.desk{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start;padding:18px;border-radius:22px;background:radial-gradient(ellipse at 30% 20%,#7a5a36,#4a3520 70%);box-shadow:inset 0 0 0 6px rgba(43,30,16,.35),0 18px 40px rgba(43,30,16,.3)}
.viewer{margin:0}
.frame{position:relative;overflow:hidden;border-radius:10px;cursor:zoom-in;touch-action:pan-y;background:#e9dcc0;box-shadow:0 10px 24px rgba(0,0,0,.35);outline:none}
.frame.zoomed{cursor:grab;touch-action:none}
.frame img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:transform .35s ease;user-select:none;-webkit-user-drag:none}
.frame:focus-visible{box-shadow:0 0 0 3px #f3d08a,0 10px 24px rgba(0,0,0,.35)}
.reveal{display:flex;align-items:center;gap:10px;margin-top:10px;color:#f8e7c4;font-weight:700;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase}
.reveal input{flex:1;accent-color:#d9a85b}
.zoomtip{margin-top:8px;font-size:.8rem;color:#e9cf9b;font-style:italic;text-align:center}
.legend h2{font-size:1.3rem;margin-bottom:8px}
.paths-h{margin-top:14px;font-weight:700;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.paths{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.chip.path{text-decoration:none;border-style:dashed}
.chip.path.go{background:linear-gradient(90deg,#c9a6ec,#f0a9cf);color:#fff;border-color:transparent}
.steps{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px;padding-top:12px;border-top:1px solid var(--line);font-size:.82rem;color:var(--soft)}
.drawer{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:16px}
.thumb{font:inherit;cursor:pointer;padding:6px;border-radius:12px;border:1px solid rgba(185,138,61,.35);background:#fbf3e2;text-align:center;opacity:.72;transition:opacity .2s,transform .2s}
.thumb img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px}
.thumb span{display:block;margin-top:5px;font-size:.74rem;line-height:1.2;color:#5a4528}
.thumb.near{opacity:1}
.thumb.on{opacity:1;box-shadow:0 0 0 2px #d9a85b;transform:translateY(-2px)}
.chronicle{padding-top:40px}
@media (max-width:860px){
  .desk{grid-template-columns:minmax(0,1fr);padding:12px}
  .wings{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:480px){.wings{grid-template-columns:repeat(2,minmax(0,1fr))}.wing span{display:none}}
.atlas .chip{font:inherit;font-weight:700;font-size:.78rem;letter-spacing:.04em;padding:6px 14px;border-radius:999px;border:1px solid rgba(185,138,61,.7);background:rgba(255,250,245,.9);color:#5a4528;cursor:pointer;text-decoration:none;display:inline-block}
.atlas .chip:hover,.atlas .chip:focus-visible{background:#f8e7c4;outline:none}
.atlas .chip.path{border-style:dashed}
.atlas .chip.path.go{background:linear-gradient(90deg,#c9a6ec,#f0a9cf);color:#fff;border-color:transparent}
.reveal[hidden],.frame img[hidden]{display:none}

/* every map in the atlas the same height, shown at its own proportions */
.frame{aspect-ratio:4/3 !important}
.frame img{object-fit:contain}
.reveal label{white-space:nowrap}
.card .songline{display:flex;align-items:center;gap:12px;margin-top:14px;padding:10px 14px;border-radius:14px;background:linear-gradient(120deg,rgba(233,216,251,.55),rgba(251,215,227,.55))}
.card .songline .play{padding:8px 16px}
.card .songline b{font-family:'Cinzel','GFS Didot',serif;color:var(--ink)}
.card .songline .time{margin:0}
.hallbanner{display:block;width:100%;height:auto;margin:-4px 0 12px}
.tablesong{max-width:760px;margin:20px auto 0;padding:16px 22px}
.tablesong .songline{margin-top:6px}

/* ---- the Archives: five rooms on one dotted path ---- */
body.ck.arc{background:radial-gradient(1200px 600px at 10% 20%,rgba(201,166,236,.22),transparent 60%),radial-gradient(900px 600px at 90% 60%,rgba(240,169,207,.18),transparent 60%),linear-gradient(180deg,#f7eef6 0%,#efe6f6 45%,#f9ede4 100%)}
.arc .arch-intro{max-width:720px;margin:12px auto 0;text-align:center;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.35rem;color:var(--plum)}
.stations{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;margin:22px auto 6px}
.stations a{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--plum);font-weight:700;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase}
.stations b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-family:'Cinzel',serif;font-size:.85rem;color:var(--plum);background:linear-gradient(135deg,#fff6e0,#f3d08a);border:2px solid #fffaf5;box-shadow:0 4px 10px rgba(74,53,96,.2)}
.stations a:hover b{box-shadow:0 0 0 3px rgba(243,208,138,.6),0 4px 10px rgba(74,53,96,.2)}
.journey{position:relative;padding:10px 0 20px}
.jpath{position:absolute;left:0;top:0;z-index:0;pointer-events:none;overflow:visible}
.jpath path{fill:none;stroke-linecap:round}
.jpath .glow{stroke:rgba(243,208,138,.3);stroke-width:16}
.jpath .line{stroke:#c99a4b;stroke-width:5;stroke-dasharray:.1 14}
.room{position:relative;z-index:1;display:grid;grid-template-columns:90px minmax(0,1fr);gap:8px 26px;padding:46px 0;scroll-margin-top:20px}
.room:nth-of-type(even){grid-template-columns:minmax(0,1fr) 90px}
.room:nth-of-type(even) .mark{grid-column:2;grid-row:1}
.room:nth-of-type(even) .words,.room:nth-of-type(even) .maps,.room:nth-of-type(even) .thennow{grid-column:1}
.room .words,.room .maps,.room .thennow{grid-column:2}
.mark{grid-row:1;align-self:start;display:grid;place-items:center;width:78px;height:78px;margin:6px auto 0;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff8e6,#f3d08a 60%,#d9a85b);border:4px solid #fffaf5;box-shadow:0 0 0 2px #d9a85b,0 0 26px rgba(243,208,138,.7),0 10px 22px rgba(74,53,96,.25)}
.mark span{font-family:'Cinzel',serif;font-weight:700;font-size:1.5rem;color:var(--plum)}
.room .words{max-width:720px}
.room:nth-of-type(even) .words{justify-self:end;text-align:right}
.room h2{font-size:clamp(1.35rem,3vw,1.8rem);margin-bottom:10px}
.room .words p+p{margin-top:10px}
.room .golink{margin-top:16px}.room .golink .play{display:inline-block;text-decoration:none}
.maps{display:flex;flex-wrap:wrap;gap:22px;margin-top:18px}
.room:nth-of-type(even) .maps{justify-content:flex-end}
.doc{font:inherit;cursor:zoom-in;padding:0;border:0;background:transparent;text-align:center;transform:rotate(var(--tilt,0deg));transition:transform .3s}
.doc img{display:block;height:220px;width:auto;max-width:100%;border-radius:4px;box-shadow:0 2px 0 rgba(255,250,245,.9),0 14px 30px rgba(74,53,96,.28)}
.doc span{display:block;margin-top:10px;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-weight:600;font-size:1.05rem;color:var(--plum)}
.doc:hover,.doc:focus-visible{transform:rotate(0deg) translateY(-4px) scale(1.03);outline:none}
.thennow{margin-top:18px;max-width:760px}
.room:nth-of-type(even) .thennow{justify-self:end}
.tnframe{position:relative;aspect-ratio:854/537;border-radius:6px;overflow:hidden;box-shadow:0 18px 40px rgba(74,53,96,.3)}
.tnframe img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tnline{position:absolute;top:0;bottom:0;width:3px;margin-left:-1.5px;background:#fffaf5;box-shadow:0 0 12px rgba(243,208,138,.95)}
.thennow .reveal{color:var(--plum)}
.thennow .reveal input{accent-color:#c99a4b}
.lightbox{width:min(1100px,calc(100vw - 24px));max-height:calc(100vh - 24px);padding:0;border:0;border-radius:20px;background:#fbf6fb;box-shadow:0 30px 80px rgba(45,34,64,.45);overflow:auto}
.lightbox::backdrop{background:rgba(45,34,64,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.lightbox[open]{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.lbx{position:absolute;top:10px;right:12px;z-index:3;width:36px;height:36px;border-radius:50%;border:0;background:rgba(45,34,64,.75);color:#fff;font-size:1.3rem;cursor:pointer}
.lbframe{position:relative;overflow:hidden;min-height:420px;background:linear-gradient(160deg,#efe6f6,#f6ece2);cursor:zoom-in;touch-action:pan-y;outline:none}
.lbframe.zoomed{cursor:grab;touch-action:none}
.lbframe img{position:absolute;inset:14px;width:calc(100% - 28px);height:calc(100% - 28px);object-fit:contain;transition:transform .35s ease;user-select:none;-webkit-user-drag:none}
.lbtext{padding:26px 24px}
.lbtext h2{font-size:1.4rem;margin-bottom:8px}
.lightbox .chip{font:inherit;font-weight:700;font-size:.78rem;padding:6px 14px;border-radius:999px;border:1px solid rgba(214,180,232,.9);background:#fff;color:var(--plum);cursor:pointer;text-decoration:none;display:inline-block}
.lightbox .chip.path{border-style:dashed}
.lightbox .chip.path.go{background:linear-gradient(90deg,#c9a6ec,#f0a9cf);color:#fff;border-color:transparent}
@media (max-width:760px){
  .room,.room:nth-of-type(even){grid-template-columns:56px minmax(0,1fr);gap:6px 14px;padding:30px 0}
  .room:nth-of-type(even) .mark{grid-column:1}
  .room:nth-of-type(even) .words,.room:nth-of-type(even) .maps,.room:nth-of-type(even) .thennow{grid-column:2}
  .room:nth-of-type(even) .words{text-align:left;justify-self:start}
  .room:nth-of-type(even) .maps{justify-content:flex-start}
  .mark{width:52px;height:52px;border-width:3px}.mark span{font-size:1.05rem}
  .maps{gap:14px}
  .doc img{height:150px}
  .lightbox[open]{grid-template-columns:minmax(0,1fr)}
  .lbframe{min-height:300px}
}

.album-head>img{height:min(70vh,640px);object-position:50% 4%}
.album-head::after{background:linear-gradient(180deg,rgba(45,34,64,.15) 0%,rgba(45,34,64,0) 40%,rgba(247,238,246,.6) 85%,#f7eef6 100%)}
.album-head+.album-page{padding-top:10px}
.ck-hall{padding-top:20px}
@media (max-width:760px){.thennow .reveal{gap:6px;font-size:.66rem;letter-spacing:.04em}.thennow .reveal small{display:none}.thennow .reveal input{min-width:0}}

/* the Castle */
.castle-hero video{display:block;width:100%;height:min(80vh,720px);object-fit:cover;background:#1c1528}
.castle-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:10px 0 40px}
.castle-gallery img{display:block;width:100%;height:auto;border-radius:18px;box-shadow:0 14px 34px rgba(74,53,96,.22)}
@media (max-width:760px){.castle-gallery{grid-template-columns:minmax(0,1fr)}.castle-hero video{height:min(62vh,440px)}}
.castle-stair{max-width:760px;margin:0 auto;padding:28px 0 50px;text-align:center}
.castle-stair .card p+p{margin-top:10px}
.d-castle{grid-column:1;grid-row:3}.d-trials{grid-column:2;grid-row:3}.d-ledger{grid-column:1/3;grid-row:4;aspect-ratio:21/9}
@media (max-width:760px){.doors>.d-ledger{aspect-ratio:16/10}}

/* creature spotting */
.spotting{padding-top:30px}
.emberstory{max-width:820px;margin:0 auto 18px}
.emberstory p+p{margin-top:10px}
.sightings{display:grid;grid-auto-flow:column;grid-auto-columns:min(220px,62vw);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 4px 16px}
.sight{font:inherit;scroll-snap-align:start;padding:0;border:0;background:transparent;cursor:zoom-in;text-align:left}
.sight img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:14px;border:3px solid #fffaf5;box-shadow:0 0 0 1px rgba(224,120,42,.5),0 10px 22px rgba(74,53,96,.22);transition:transform .25s}
.sight:hover img,.sight:focus-visible img{transform:translateY(-3px)}
.sight span{display:block;margin-top:8px;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-weight:600;font-size:1rem;line-height:1.3;color:var(--plum)}
.sightbox{width:min(560px,calc(100vw - 24px));padding:0;border:0;border-radius:18px;background:#fbf6fb;overflow:hidden;box-shadow:0 30px 80px rgba(45,34,64,.45)}
.sightbox::backdrop{background:rgba(45,34,64,.6)}
.sightbox img{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;background:#2d2240}
.sightbox p{padding:14px 18px;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.15rem;color:var(--plum)}
.spotlink{display:inline-block;margin-top:8px;font-weight:700;font-size:.82rem;color:#c8641d;text-decoration:none}

/* the Star Ledger */
.ledger-page{max-width:980px}
.soft{color:var(--soft)}
.posts{display:grid;gap:16px;max-width:760px;margin:0 auto}
.post{padding:20px 24px;border-radius:18px;background:rgba(255,250,245,.92);border:1px solid rgba(217,168,91,.4);box-shadow:0 10px 26px rgba(74,53,96,.1)}
.post .date{font-weight:700;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.post h3{margin:4px 0 8px}
.post p+p{margin-top:8px}
.lampbook{padding-top:40px}
.lampform{max-width:620px;margin:0 auto}
.lampform label{display:block;font-weight:700;color:var(--ink);margin-bottom:8px}
.lampform .row{display:flex;gap:10px}
.lampform input{flex:1;min-width:0;font:inherit;letter-spacing:.08em;padding:10px 14px;border-radius:999px;border:1px solid rgba(214,180,232,.9);background:#fff;color:var(--ink)}
.lampform .msg{margin-top:8px;font-weight:700;color:var(--plum);min-height:1.3em}
.record{display:grid;gap:14px;max-width:760px;margin:18px auto 0}
.rhead{display:flex;align-items:center;gap:16px}
.rhead .swatch{width:46px;height:46px;flex:none;border-radius:50%;box-shadow:inset 0 0 0 2px rgba(255,250,245,.8),0 0 0 2px var(--gold)}
.record .facts{display:grid;grid-template-columns:auto 1fr;gap:6px 18px}
.record .facts dt{font-weight:700;color:var(--ink)}
.record .facts dd{word-break:break-word}
.journey-rec h4{margin:12px 0 4px;font-size:.95rem;color:var(--plum)}
.journey-rec ul{list-style:none;display:grid;gap:4px;font-size:.92rem}
.journey-rec li b{color:var(--gold)}
.record .acts{display:flex;flex-wrap:wrap;gap:10px}
.play.ghost{background:transparent;color:var(--plum);box-shadow:none;border:1px solid rgba(185,138,61,.6)}
.keeps{max-width:760px;margin:18px auto 0}
.keeps ul{margin:8px 0 8px 20px}
.elders{padding:40px 0 20px}
.elderbox{max-width:760px;margin:0 auto;text-align:center;border:2px solid rgba(217,168,91,.7);background:linear-gradient(160deg,rgba(45,34,64,.94),rgba(74,53,96,.92));color:#e9dcf5}
.elderbox h2{color:#fff6e0}
.elderbox .eyebrow{color:#f3d08a}
.elderline{margin:10px auto 16px;max-width:560px;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.3rem;color:#fff6e0}
.elderbox .play{display:inline-block;text-decoration:none}
@media print{.ck-hero,.news,.lampform,.keeps,.elders,footer,.record .acts,.minip{display:none!important}body{background:#fff}.record{display:block!important}.card{box-shadow:none;border:1px solid #ccc}}

/* the archive's star of five rooms */
.starnav{position:relative;width:min(360px,82vw);aspect-ratio:1;margin:20px auto 10px}
.starnav svg{position:absolute;inset:0;width:100%;height:100%;filter:drop-shadow(0 0 10px rgba(243,208,138,.45))}
.starnav a{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:4px;text-decoration:none;color:var(--plum);font-weight:700;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}
.starnav a b{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-family:'Cinzel',serif;font-size:.95rem;color:var(--plum);background:radial-gradient(circle at 35% 30%,#fff8e6,#f3d08a 60%,#d9a85b);border:3px solid #fffaf5;box-shadow:0 0 0 1px #d9a85b,0 0 16px rgba(243,208,138,.6)}
.starnav a:hover b,.starnav a:focus-visible b{box-shadow:0 0 0 3px rgba(243,208,138,.7),0 0 22px rgba(243,208,138,.9)}
.starnav .pt0 span{order:-1}
.starnav .pt2,.starnav .pt3{flex-direction:column}
@media (max-width:480px){.starnav a{font-size:.6rem;letter-spacing:.04em}.starnav a b{width:34px;height:34px;font-size:.8rem}}

/* the map viewer on phones: a full-height sheet whose buttons sit clear of the browser's bottom bar */
@media (max-width:760px){
  .lightbox{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border-radius:0}
  .lightbox[open]{display:flex;flex-direction:column}
  .lbframe{flex:none;height:46dvh;min-height:0}
  .lbtext{flex:1;overflow:auto;padding:18px 18px calc(110px + env(safe-area-inset-bottom))}
  .lightbox .steps{position:static}
}
.arch-more{padding-bottom:calc(40px + env(safe-area-inset-bottom))}

/* page titles: storybook gold over plum, in place of black */
.ck-title h1{font-family:'Cinzel Decorative','Cinzel','GFS Didot',serif;font-weight:700;color:#5b3a8f;background:linear-gradient(180deg,#7a4fb5 0%,#5b3a8f 45%,#b5527f 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none;filter:drop-shadow(0 0 2px rgba(255,250,245,1)) drop-shadow(0 0 6px rgba(255,250,245,.95)) drop-shadow(0 0 16px rgba(255,250,245,.85)) drop-shadow(0 2px 2px rgba(243,208,138,.55))}
.ck-title .kicker{color:#8a5a1f;text-shadow:0 0 4px #fffaf5,0 0 10px rgba(255,250,245,.95),0 0 20px rgba(255,250,245,.8)}

/* the field-guide profile */
.spotting{padding-top:46px}
.sheet{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:"main card" "expr yoyo" "pose yoyo";gap:12px;padding:12px;border-radius:20px;background:linear-gradient(160deg,#2a1f45,#1f1838);border:2px solid #d9a85b;box-shadow:inset 0 0 0 4px #1f1838,inset 0 0 0 5px rgba(243,208,138,.5),0 20px 50px rgba(45,34,64,.35)}
.sheet .zoomable{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}
.sheet .zoomable img{display:block;width:100%;height:100%;object-fit:cover;border-radius:8px;border:1px solid rgba(243,208,138,.45)}
.sheet-main{grid-area:main;margin:0}
.sheet-main .zoomable,.sheet-main img{height:100%}
.sheet-card{grid-area:card;padding:18px 20px;border-radius:10px;border:1px solid rgba(243,208,138,.45);background:linear-gradient(180deg,#1d1633,#251c40);color:#e9dcf5}
.sheet-card .compass{text-align:center;font-size:1.6rem;color:#f3d08a;line-height:1}
.sc-title{text-align:center;font-family:'Cinzel',serif;font-size:1.35rem;letter-spacing:.08em;color:#f3d08a;margin-top:4px}
.sc-sub{text-align:center;font-family:'Cormorant Garamond',Georgia,serif;font-size:1.05rem;color:#e9cf9b;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid rgba(243,208,138,.3)}
.sheet-card dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:.92rem}
.sheet-card dt{font-family:'Cormorant Garamond',Georgia,serif;font-size:1.05rem;color:#e9cf9b}
.sheet-card dd{color:#fff6e0}
.sc-story{margin-top:14px;padding-top:12px;border-top:1px solid rgba(243,208,138,.3);font-size:.9rem;color:#d9cbe8}
.sc-story p+p{margin-top:8px}
.sheet-panel{padding:10px;border-radius:10px;border:1px solid rgba(243,208,138,.45);background:rgba(29,22,51,.8)}
.sp-h{font-family:'Cinzel',serif;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:#f3d08a;margin-bottom:8px}
.sightings-h{color:var(--gold);margin:22px 0 4px}
.expressions{grid-area:expr}.yoyo{grid-area:yoyo}.poses{grid-area:pose}
.row4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.row4 img{aspect-ratio:1}
.row3{display:grid;grid-template-columns:1fr 1.5fr 1.4fr;gap:8px}
.row3 img{aspect-ratio:auto;height:150px}
.ygrid{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:auto auto;gap:8px}
.ygrid .y3{grid-column:2;grid-row:1/3}
.ygrid .y1 img,.ygrid .y2 img{aspect-ratio:1.1}
.record .dot{display:inline-block;width:14px;height:14px;border-radius:50%;margin-right:8px;vertical-align:-2px;box-shadow:inset 0 0 0 1px rgba(74,53,96,.3)}
@media (max-width:760px){
  .sheet{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "card" "expr" "pose" "yoyo"}
  .row4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .row3{grid-template-columns:minmax(0,1fr)}
  .row3 img{height:auto}
}
.d-ledger img{object-position:50% 62%}
.sheet{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-areas:"main card" "expr expr" "pose yoyo"}
.row3 img{height:170px}
.ygrid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto}
.ygrid .y3{grid-column:auto;grid-row:auto}
.ygrid img,.ygrid .y1 img,.ygrid .y2 img{height:170px;aspect-ratio:auto}
@media (max-width:760px){.sheet{grid-template-areas:"main" "card" "expr" "pose" "yoyo"}.ygrid img,.ygrid .y1 img,.ygrid .y2 img{height:150px}}
.sheet .row3 .zoomable img,.sheet .ygrid .zoomable img{height:180px;aspect-ratio:auto}
.sheet .row4 .zoomable img{height:auto;aspect-ratio:1}
.sheet .poses,.sheet .yoyo{align-self:start}
@media (max-width:760px){.sheet .row3 .zoomable img{height:auto}.sheet .ygrid .zoomable img{height:150px}}

/* profile sheet, final layout: one column on phones */
@media (max-width:760px){
  .sheet{grid-template-columns:minmax(0,1fr)!important;grid-template-areas:"main" "card" "expr" "pose" "yoyo"!important;padding:8px;gap:8px}
  .sheet-main .zoomable,.sheet-main img{height:auto}
  .sheet-card{padding:16px}
  .sheet .ygrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .sheet .ygrid .zoomable img{height:110px}
}
/* sightings: a wrapping grid, no scroll bar */
.sightings{align-items:start;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(5,minmax(0,1fr));overflow:visible;scroll-snap-type:none;gap:16px 14px}
.sight span{font-size:.95rem}
@media (max-width:760px){.sightings{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}.sight span{font-size:.9rem}}
/* the next creatures to be spotted */
.nextspots{margin-top:26px}
.nexts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:8px}
.nextspot{display:flex;align-items:center;gap:14px;padding:12px;border-radius:16px;border:2px dashed rgba(217,168,91,.7);background:linear-gradient(160deg,rgba(42,31,69,.92),rgba(31,24,56,.92));color:#e9dcf5}
.nextspot img{flex:none;width:92px;height:92px;border-radius:50%;object-fit:cover;border:3px solid #f3d08a;box-shadow:0 0 18px rgba(243,208,138,.45)}
.nextspot h3{font-size:1.05rem;color:#fff6e0;margin-bottom:4px}
.nextspot p{font-size:.9rem;color:#d9cbe8;font-style:italic}
@media (max-width:760px){.nexts{grid-template-columns:minmax(0,1fr)}.nextspot img{width:72px;height:72px}}
.sightings-h,.nextspots>.sp-h{color:#8a5a1f;font-weight:700}
.ck-title .kicker{font-weight:800}
/* the field guide: a profile with picture and card only, and the index of creatures */
.sheet.lite{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"main card"}
.sheet.lite .sheet-main img{aspect-ratio:4/5}
@media (max-width:760px){.sheet.lite{grid-template-areas:"main" "card"!important}}
.fieldguide{display:flex;justify-content:center;flex-wrap:wrap;gap:22px;margin:34px auto 0}
.fieldguide a{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;font-weight:700;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--plum)}
.fieldguide img{width:84px;height:84px;border-radius:50%;object-fit:cover;border:3px solid #f3d08a;box-shadow:0 0 0 1px #d9a85b,0 0 18px rgba(243,208,138,.5);transition:transform .25s}
.fieldguide a:hover img,.fieldguide a:focus-visible img{transform:translateY(-3px)}
#cat .sight img{box-shadow:0 0 0 1px rgba(240,140,190,.6),0 10px 22px rgba(74,53,96,.22)}
#bear .sight img{box-shadow:0 0 0 1px rgba(120,180,230,.6),0 10px 22px rgba(74,53,96,.22)}
@media (max-width:760px){.fieldguide{gap:14px}.fieldguide img{width:64px;height:64px}.fieldguide a{font-size:.62rem;letter-spacing:.06em}}
.sheet-main.twin{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;align-content:center}
.sheet-main.twin .zoomable,.sheet-main.twin img{height:auto}
.sheet-main.twin img{aspect-ratio:4/5}
.sheet-main.twin figcaption{grid-column:1/3;text-align:center;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.25rem;color:#f3d08a}
/* seeing double: the two bear pictures overlap, one offset behind the other */
.sheet-main.twin{display:block;min-height:620px}
.sheet-main.twin .zoomable{position:absolute;width:72%;height:auto}
.sheet-main.twin .zoomable:first-child{top:4%;left:2%;transform:rotate(-3deg)}
.sheet-main.twin .zoomable:nth-child(2){right:2%;bottom:11%;transform:rotate(3deg);box-shadow:0 18px 40px rgba(0,0,0,.55);border-radius:8px}
.sheet-main.twin figcaption{position:absolute;left:0;right:0;bottom:1%}
@media (max-width:760px){.sheet-main.twin{min-height:0;aspect-ratio:5/6.4}}
#cat-sightings,#bear-sightings{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:760px){#cat-sightings,#bear-sightings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.sheet-main.twin{aspect-ratio:5/8}.sheet-main.twin .zoomable{width:66%}.sheet-main.twin .zoomable:nth-child(2){bottom:9%}}
.d-course{grid-column:1;grid-row:4}.d-cloudfall{grid-column:2;grid-row:4}
.doors>.d-ledger{grid-row:5}.doors>.d-games{grid-row:6}.doors>.d-album{grid-row:7}
@media (max-width:760px){.doors>.d-ledger,.doors>.d-games,.doors>.d-album,.doors>.d-course,.doors>.d-cloudfall{grid-column:auto;grid-row:auto}}
/* the line above each page title sits on a soft frosted ribbon, so it reads over bright pictures and films */
.ck-title .kicker{display:inline-block;padding:5px 14px;border-radius:999px;background:rgba(255,250,245,.72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#6b3f8f;font-size:.82rem;text-shadow:none;box-shadow:0 2px 14px rgba(74,53,96,.18)}
@media (max-width:760px){.ck-title .kicker{font-size:.62rem;padding:4px 10px}}
/* the kingdom map: the map first and large, its open places glowing and clickable, the words beneath */
.kingdom-map{display:block}
.kmap{margin:0 auto;max-width:980px}
.kmap-frame{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 0 0 2px rgba(217,168,91,.7),0 0 0 8px rgba(255,250,245,.8),0 0 0 9px rgba(217,168,91,.45),0 24px 60px rgba(74,53,96,.3)}
.kmap-frame img{display:block;width:100%;height:auto}
.kmap .hot{position:absolute;display:block;border-radius:10px;border:2px solid #f3d08a;box-shadow:0 0 0 2px rgba(255,250,245,.6),0 0 18px rgba(243,208,138,.95),inset 0 0 12px rgba(243,208,138,.5);animation:hotglow 2.6s ease-in-out infinite;text-decoration:none}
.kmap .hot span{position:absolute;left:50%;bottom:calc(100% + 6px);transform:translateX(-50%);white-space:nowrap;padding:3px 10px;border-radius:999px;background:rgba(45,34,64,.88);color:#fff6e0;font-weight:700;font-size:.72rem;letter-spacing:.06em;opacity:0;transition:opacity .25s;pointer-events:none}
.kmap .hot:hover span,.kmap .hot:focus-visible span{opacity:1}
.kmap .hot:hover,.kmap .hot:focus-visible{outline:none;box-shadow:0 0 0 3px #fffaf5,0 0 26px rgba(243,208,138,1),inset 0 0 14px rgba(243,208,138,.6)}
@keyframes hotglow{0%,100%{box-shadow:0 0 0 2px rgba(255,250,245,.5),0 0 10px rgba(243,208,138,.6),inset 0 0 8px rgba(243,208,138,.35)}50%{box-shadow:0 0 0 2px rgba(255,250,245,.8),0 0 24px rgba(243,208,138,1),inset 0 0 14px rgba(243,208,138,.6)}}
@media (prefers-reduced-motion:reduce){.kmap .hot{animation:none}}
.kmap figcaption{margin-top:12px;text-align:center;font-family:'Cormorant Garamond','GFS Didot',Georgia,serif;font-style:italic;font-size:1.1rem;color:var(--plum)}
.kwords{max-width:980px;margin:22px auto 0;columns:2;column-gap:34px}
.kwords p{break-inside:avoid}
.kwords .arch-link{column-span:all;text-align:center;margin-top:16px}
@media (max-width:760px){
  .kmap-frame{border-radius:14px;box-shadow:0 0 0 2px rgba(217,168,91,.7),0 0 0 5px rgba(255,250,245,.8),0 14px 30px rgba(74,53,96,.25)}
  .kmap .hot{border-width:1.5px;border-radius:6px}
  .kwords{columns:1;margin-top:16px}
}
.kmap .hot{border:2px solid #fff6e0;background:rgba(255,236,170,.16)}
@keyframes hotglow{0%,100%{box-shadow:0 0 0 2px rgba(243,208,138,.9),0 0 14px 2px rgba(255,214,120,.75)}50%{box-shadow:0 0 0 3px rgba(243,208,138,1),0 0 30px 6px rgba(255,214,120,1)}}
/* Cloud Kingdom: the scoreboard card on its own, the ledger picture inside its card */
.chapter.solo{display:block;max-width:900px;margin-left:auto;margin-right:auto}
.ledgercard{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:24px;align-items:center}
.ledgercard .lc-pic{display:block;border-radius:14px;overflow:hidden;box-shadow:0 0 0 1px rgba(217,168,91,.5),0 10px 24px rgba(74,53,96,.2)}
.ledgercard .lc-pic img{display:block;width:100%;height:100%;min-height:260px;object-fit:cover;transition:transform .6s}
.ledgercard .lc-pic:hover img{transform:scale(1.04)}
.ledgercard .lc-words p+p{margin-top:10px}
@media (max-width:760px){.ledgercard{grid-template-columns:minmax(0,1fr);gap:16px}.ledgercard .lc-pic img{min-height:0;height:auto}}
/* the Castle's plans */
.castle-plans{align-items:center}
.castle-plans .thennow{margin-top:0;max-width:none}
.ck-title .kicker.plain{background:none;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;padding:0;color:#6b3f8f;text-shadow:0 0 3px #fffaf5,0 0 8px #fffaf5,0 0 16px rgba(255,250,245,.95),0 0 28px rgba(255,250,245,.8)}
