:root{color-scheme:dark;--gold:#d7b572;--ivory:#f4e7cb;--navy:#071522;--muted:#c7baa3}*{box-sizing:border-box}body{margin:0;color:var(--ivory);font-family:Georgia,'Times New Roman',serif;background:var(--navy);min-height:100vh}body:before{content:'';position:fixed;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(7,21,34,.35),rgba(7,21,34,.98) 28%,rgba(7,21,34,.98) 72%,rgba(7,21,34,.35)),linear-gradient(0deg,rgba(7,21,34,.45),rgba(7,21,34,.8)),url('assets/scene.png') center/cover no-repeat}button,a,select{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:default}a{color:inherit;text-decoration:none}header{max-width:1390px;margin:auto;padding:22px 0 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #947244;gap:20px}.brand{font-size:30px}.brand span{color:var(--gold);font-size:43px;vertical-align:middle;margin-right:10px}nav{display:flex;gap:30px}nav button,.text-button{background:none;color:var(--ivory);border:0;padding:10px}nav button:hover,.text-button:hover{color:var(--gold);text-decoration:underline}main{max-width:1300px;margin:auto;outline:none;text-align:center;padding:30px 20px 20px}section[hidden]{display:none}.eyebrow{text-transform:uppercase;letter-spacing:3px;color:var(--gold);font-size:12px;margin:8px 0 18px}h1{font-weight:400;font-size:clamp(36px,5vw,68px);line-height:1.06;margin:0 0 18px}h2{font-size:28px;font-weight:400;margin:0 0 14px}.subtitle{font-size:clamp(17px,1.8vw,23px);margin:0 0 22px;line-height:1.45}.home-cards{display:flex;justify-content:center;gap:34px;margin:26px auto 28px}.back{background:url('assets/back.png') center/100% 100%;aspect-ratio:2/3;border-radius:5px;box-shadow:0 8px 35px #0008}.home-cards .back{width:clamp(90px,14vw,180px)}.gold{border:1px solid #ad803e;outline:2px solid #d6ad67;outline-offset:3px;border-radius:3px;padding:13px 45px;background:linear-gradient(120deg,#e7c386,#f2deb0,#d3a465);color:#211609;font-size:25px;box-shadow:0 3px 15px #0005;transition:transform .15s}.gold:hover{transform:translateY(-2px);filter:brightness(1.08)}.gold:disabled{opacity:.7}.small{font-size:15px;color:var(--muted);margin:18px 0 26px}.parchment{color:#241b13;background:radial-gradient(ellipse at center,#f6ead0,#e6cca0);border:2px solid #b18b4d;outline:1px solid #e8c786;outline-offset:3px;border-radius:8px;padding:22px 28px;box-shadow:0 5px 24px #0005}.how{margin:28px auto 10px;max-width:1150px}.how ol{display:flex;list-style:none;justify-content:space-around;padding:0;gap:15px;margin:0}.how li{font-size:18px;display:flex;align-items:center;gap:15px}.how span{display:inline-grid;place-items:center;width:35px;height:35px;background:#715027;color:#fff0cc;border:2px solid #bb975f;border-radius:50%}.progress{color:var(--gold);margin:22px 0;font-size:19px}.grid{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:12px;max-width:1110px;margin:0 auto 28px}.pick{width:100%;border:0;padding:0;position:relative;transition:transform .18s,filter .18s;min-width:0}.pick:hover:not(:disabled){transform:translateY(-5px);filter:brightness(1.18)}.pick.chosen{outline:3px solid #f5d894;outline-offset:2px;filter:brightness(1.12)}.pick span{position:absolute;inset:0;display:grid;place-items:center;font:bold 26px Georgia;color:#201609;background:#f2d59fcc;border-radius:5px}.hint{font-size:18px;max-width:830px;margin:24px auto}.result-cards{display:flex;justify-content:center;gap:44px;margin:28px auto}.result-item{width:min(24vw,218px)}.face{background-repeat:no-repeat;aspect-ratio:2/3;width:100%;border-radius:4px;box-shadow:0 8px 30px #0009}.face.inverted{transform:rotate(180deg)}.result-item h2{font-size:21px;margin:15px 0 8px}.badge{display:inline-block;border:1px solid #c9a967;border-radius:20px;padding:4px 15px;font-size:14px;background:#143534}.badge.inverted-badge{background:#56251c}.reading{text-align:center;max-width:1050px;margin:30px auto}.reading p{font-size:21px;line-height:1.6;margin:0}details{max-width:1100px;text-align:left;margin:25px auto;border:1px solid #665439;border-radius:8px;padding:15px}summary{cursor:pointer;color:var(--gold);font-size:17px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;margin-top:15px;font:15px/1.5 Georgia}th,td{padding:12px;border-bottom:1px solid #544a39;vertical-align:top}th{color:var(--gold);text-align:left}footer{text-align:center;margin:20px auto 0;padding:20px;color:var(--muted);font-size:13px}footer span{margin:0 12px;color:var(--gold)}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:3px solid #fff0b0;outline-offset:5px}dialog{max-width:620px;width:90%;border:1px solid #b58d4d;border-radius:10px;background:#0a1d2c;color:var(--ivory);padding:35px;box-shadow:0 20px 70px #0009}dialog::backdrop{background:#000b}dialog p,dialog li{font-size:17px;line-height:1.6}dialog li{margin:8px 0}.close{position:absolute;right:12px;top:8px;border:0;color:var(--ivory);background:none;font-size:30px}.close-help{font-size:18px;margin:15px 0 0}.catalog-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:22px;margin:28px auto}.catalog-item{text-align:center}.catalog-item h2{font-size:17px;margin:10px 0}.catalog-item p{font-size:13px;line-height:1.5;color:var(--muted)}.filter{display:block;margin:22px}.filter select{background:#132d40;color:var(--ivory);border:1px solid #8e7046;border-radius:5px;padding:10px;font:16px Georgia;margin-left:10px}#error{color:#ffbcaa}
@media(min-width:1450px){main{padding-top:36px}}@media(max-width:1450px){header{margin:0 30px}}@media(max-width:800px){.grid{gap:8px;grid-template-columns:repeat(6,minmax(0,1fr))}.catalog-grid{grid-template-columns:repeat(4,1fr)}.brand{font-size:23px}nav{gap:8px}.home-cards{gap:20px}.result-cards{gap:20px}.how li{font-size:15px;gap:8px}.reading p{font-size:18px}}@media(max-width:480px){header{margin:0 16px;padding:12px 0;gap:8px}.brand{font-size:20px}.brand span{font-size:29px;margin-right:3px}nav{gap:0}nav button{font-size:13px;padding:8px}main{padding:25px 14px}.eyebrow{letter-spacing:2px;font-size:10px}.gold{font-size:21px;padding:12px 32px}.how{padding:20px}.how ol{flex-direction:column;align-items:flex-start;gap:12px}.how li{font-size:17px}.grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.hint{font-size:16px;padding:16px}.result-cards{gap:12px}.result-item{width:30%}.result-item h2{font-size:15px}.badge{font-size:12px;padding:4px 9px}.reading{padding:20px 16px}.reading h2{font-size:24px}.catalog-grid{grid-template-columns:repeat(3,1fr);gap:15px}.catalog-item h2{font-size:14px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
/* Keep reference art confined to the castle margins; never reuse its UI text. */
body:before{background:linear-gradient(90deg,rgba(7,21,34,.45),#071522 20%,#071522 80%,rgba(7,21,34,.45)),linear-gradient(0deg,#071522 0%,#071522 25%,transparent 40%,transparent 65%,#071522 80%,#071522 100%),url('assets/scene.png') center/cover no-repeat}
@media(max-width:800px){body:before{background:radial-gradient(ellipse at 50% 25%,#15314a 0%,#071522 65%);}}

nav{align-items:center}nav .explore-nav{padding:10px;line-height:1.4}nav .explore-nav:hover{color:var(--gold);text-decoration:underline}.content-invitation{max-width:1050px;margin:32px auto;padding:22px 16px;border-top:1px solid #665439}.content-invitation h2{font-size:clamp(21px,3vw,28px);line-height:1.35}.content-link{display:inline-block;color:var(--gold);border:1px solid #ad803e;border-radius:4px;padding:12px 24px;line-height:1.4}.content-link:hover{background:#d7b57218}.content-link span{margin-left:8px}@media(max-width:800px){header{flex-wrap:wrap}header nav{flex-wrap:wrap;justify-content:flex-end}}@media(max-width:480px){header nav{width:100%;justify-content:space-between}nav .explore-nav{font-size:13px;padding:8px}.content-invitation{margin:26px auto}}
