/* Loudoun Hall theme additions, on top of base.css (the approved v4 demo styles). */

:root{--rv-dec:#8A4B14;--rv-dec-bg:#FCEBD9;--rv-upd:#1F5A7A;--rv-upd-bg:#DDEFF7;--rv-ok:#2F5D3A;--rv-ok-bg:#E1EFE3}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--rv-dec:#F3BE86;--rv-dec-bg:#3A2A18;--rv-upd:#9CCFEA;--rv-upd-bg:#1B2C36;--rv-ok:#A9D1AC;--rv-ok-bg:#1F2E22}}
:root[data-theme="dark"]{--rv-dec:#F3BE86;--rv-dec-bg:#3A2A18;--rv-upd:#9CCFEA;--rv-upd-bg:#1B2C36;--rv-ok:#A9D1AC;--rv-ok-bg:#1F2E22}

html.text-lg{font-size:112.5%}
html.text-lg body{font-size:18px}
html.text-lg .era-card p,html.text-lg .prose p,html.text-lg .ag-text p{font-size:19px}

/* Nav */
.navlinks .menu-main ul{display:flex;gap:18px;list-style:none;margin:0;padding:0}
.navlinks .menu-main a{text-decoration:none}
.navlinks .menu-main a:hover,.navlinks .menu-main .current-menu-item>a{color:var(--rust)}
.navlinks .menu-main .current-menu-item>a{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:2px}
#sizeBtn span{font:700 13px/1 var(--sans)}
#sizeBtn[aria-pressed="true"]{background:var(--moss);border-color:var(--moss);color:var(--on-moss)}
.menu-btn{display:none}
.mobile-menu{border-top:1px solid var(--line);background:var(--paper);padding:10px 0 18px}
.m-menu{list-style:none;margin:0;padding:0}
.m-menu li a{display:block;padding:12px 4px;border-bottom:1px solid var(--line);font:400 24px/1.1 var(--serif);text-decoration:none}
.m-extra li a{font:600 15px/1.2 var(--sans);color:var(--muted)}
.mobile-menu .btn{margin-top:14px;width:100%}
@media(max-width:1060px){.navlinks .menu-main{display:none}.menu-btn{display:grid}}
@media(max-width:560px){.nav-cta{display:none}.navlinks{gap:8px}}

/* Review mode */
.rv-notice{display:flex;gap:8px;justify-content:center;align-items:center;flex-wrap:wrap}
.rv-notice a{color:#F6D89C}
.rv-tag{display:inline-block;vertical-align:middle;font:700 10.5px/1.3 var(--sans);letter-spacing:.02em;text-transform:none;border-radius:999px;padding:2px 8px;margin-left:4px;white-space:nowrap}
.rv-decision{background:var(--rv-dec-bg);color:var(--rv-dec)}
.rv-updated{background:var(--rv-upd-bg);color:var(--rv-upd)}
.rv-sourced,.rv-approved{background:var(--rv-ok-bg);color:var(--rv-ok)}
.rv-sample{background:var(--bubble);color:var(--muted)}
.notice .rv-tag{margin:0}
.fact .rv-tag{margin:6px 0 0;display:table}
.rv-dot{position:absolute;top:10px;right:10px;width:8px;height:8px;border-radius:50%}
.rv-dot.rv-decision{background:var(--rv-dec)}.rv-dot.rv-updated{background:var(--rv-upd)}.rv-dot.rv-sourced,.rv-dot.rv-approved{background:var(--rv-ok)}
.era-btn{position:relative}
.rv-note{background:var(--rv-dec-bg);color:var(--ink);border-left:4px solid var(--rv-dec);padding:12px 14px;border-radius:0 12px 12px 0;margin-top:10px;font-size:14px}
.rv-note strong{display:block;color:var(--rv-dec);margin-bottom:2px}
.rv-table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:16px;overflow:hidden;font-size:14.5px}
.rv-table th,.rv-table td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.rv-table thead th{font:400 16px/1.2 var(--smallcaps);letter-spacing:.06em;color:var(--rust);background:var(--cream)}
.rv-table tbody th{font-weight:700;width:28%}
.two-col{columns:2;column-gap:30px}
.sub{font:400 28px/1.1 var(--serif);margin:28px 0 10px}
@media(max-width:700px){.rv-table thead{display:none}.rv-table tr{display:block;border-bottom:1px solid var(--line);padding:6px 0}.rv-table th,.rv-table td{display:block;border:0;padding:4px 14px;width:auto}.two-col{columns:1}}

/* Page hero for inner pages */
.page-hero{padding:56px 0 46px;background:radial-gradient(1200px 400px at 80% -10%,var(--context),transparent 60%)}
.page-hero h1{font:400 clamp(42px,6.5vw,76px)/1 var(--serif);letter-spacing:-.02em;margin:12px 0 16px;max-width:16ch;text-wrap:balance}
.page-hero h1 em{font-style:italic;color:var(--rust)}
.page-hero .lead{font-size:19px;color:var(--muted);max-width:60ch;margin:0 0 22px}
.page-hero.slim{padding:44px 0 20px}
.page-hero.slim h1{font-size:clamp(36px,5vw,56px)}

.prose{max-width:72ch}
.prose h2{font:400 34px/1.1 var(--serif);margin:28px 0 10px}
.prose h3{font:400 26px/1.1 var(--serif);margin:22px 0 8px}
.prose p,.prose li{font-size:17px}
.prose a{color:var(--rust)}
.wrap.narrow{max-width:760px}
.btn-row{display:flex;gap:8px;flex-wrap:wrap}
.btn-row.center{justify-content:center;margin-top:18px}
.empty{color:var(--muted);font-size:17px}
.linkish{border:0;background:none;padding:0;color:var(--rust);text-decoration:underline;font-weight:700}
.era-stack{min-width:0}
.era-stack .era-card[hidden]{display:none!important}
.outside-btn{margin:12px auto 0;display:flex}
.outside-btn[aria-pressed="true"]{background:var(--moss);border-color:var(--moss);color:var(--on-moss)}

/* FAQ */
.faq{display:grid;gap:10px;max-width:860px}
.faq details{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:4px 18px}
.faq summary{cursor:pointer;font:400 22px/1.2 var(--serif);padding:12px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";color:var(--rust);font-family:var(--sans);font-weight:700}
.faq details[open] summary:after{content:"−"}
.faq p{margin:0 0 14px;color:var(--muted)}

/* Events */
.events{display:grid;gap:14px}
.event{display:grid;grid-template-columns:96px 1fr;gap:18px;background:var(--card);border:1px solid var(--line);border-radius:20px;padding:18px}
.ev-date{background:var(--moss);color:var(--on-moss);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 6px;text-align:center}
.ev-date b{font:400 40px/1 var(--serif)}
.ev-date span{font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:13px}
.ev-date small{opacity:.8;font-size:12px}
.ev-meta{font-size:13px;color:var(--rust);font-weight:700}
.event h3{font:400 28px/1.1 var(--serif);margin:6px 0 6px}
.event h3 a{text-decoration:none}
.event p{color:var(--muted);margin:0 0 12px;font-size:15px}
@media(max-width:560px){.event{grid-template-columns:1fr}.ev-date{flex-direction:row;gap:8px;justify-content:flex-start;padding:8px 12px}.ev-date b{font-size:26px}}

/* Film */
.film{border-radius:22px;overflow:hidden;background:#151310;aspect-ratio:16/9}
.film iframe,.film video{width:100%;height:100%;border:0;display:block}
.film-ph{height:100%;display:grid;place-items:center;align-content:center;gap:10px;color:#EEE7DB;text-align:center;padding:24px}
.film-ph p{max-width:46ch;margin:0;color:#BDB3A5}
.film-ph strong{color:#fff}
.film-ph .ico{width:44px;height:44px;color:#D8B26C}

/* Queen */
.queen-teaser{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;background:linear-gradient(135deg,var(--panel-a),var(--panel-b));border:1px solid var(--panel-line);border-radius:26px;padding:28px 32px}
.queen-teaser h2{font:400 clamp(30px,4vw,44px)/1.05 var(--serif);margin:6px 0 8px}
.queen-teaser h2 em{color:var(--rust)}
.queen-teaser p{margin:0;max-width:62ch}
.qt-icon{width:72px;height:72px;border-radius:50%;background:var(--card);display:grid;place-items:center;color:var(--rust)}
.qt-icon .ico{width:36px;height:36px}
@media(max-width:820px){.queen-teaser{grid-template-columns:1fr;padding:24px}.qt-icon{width:56px;height:56px}}
.route{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;counter-reset:r}
.route li{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;position:relative}
.route .when{font:400 14px/1.2 var(--smallcaps);letter-spacing:.08em;color:var(--rust)}
.route b{display:block;font:400 22px/1.1 var(--serif);margin:6px 0}
.route p{margin:0;font-size:14px;color:var(--muted)}
.route li:nth-child(3){border-color:var(--rust);box-shadow:0 0 0 2px var(--rust) inset}
@media(max-width:1000px){.route{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.route{grid-template-columns:1fr}}
.evidence{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ev-col{border-radius:24px;padding:24px;border:1px solid var(--line)}
.ev-col.for{background:var(--moss-soft)}
.ev-col.against{background:var(--context)}
.ev-col h3{font:400 30px/1.1 var(--serif);margin:0 0 14px;display:flex;gap:10px;align-items:center}
.clue{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px 16px;margin-top:10px}
.clue b{font:400 21px/1.15 var(--serif);display:block}
.clue p{margin:6px 0;font-size:15px}
.clue small{color:var(--muted);font-size:12px}
@media(max-width:820px){.evidence{grid-template-columns:1fr}}
.verdict{text-align:center;max-width:720px;margin:0 auto}
.verdict h2{font:400 clamp(36px,5vw,54px)/1.05 var(--serif);margin:8px 0 12px}
.verdict p{color:var(--muted)}
.vote{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:18px 0 8px}
.vote .btn[aria-pressed="true"]{background:var(--rust);border-color:var(--rust);color:var(--on-rust)}
.vote-msg{min-height:1.6em;font-weight:600;color:var(--ink)!important}

/* Audio guide */
.stop-banner{background:var(--moss);color:var(--on-moss);border-radius:16px;padding:14px 18px;margin-bottom:16px;font-weight:700;display:flex;gap:10px;align-items:center}
.ag{display:grid;grid-template-columns:340px 1fr;gap:22px;align-items:start}
.ag-side{position:sticky;top:96px}
.ag-langs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.ag-langs button{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600}
.ag-langs button[aria-pressed="true"]{background:var(--moss);border-color:var(--moss);color:var(--on-moss)}
.ag-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ag-list button{width:100%;display:flex;gap:12px;align-items:center;text-align:left;border:1px solid var(--line);background:var(--card);border-radius:14px;padding:10px 12px}
.ag-list button[aria-current="true"]{border-color:var(--rust);box-shadow:0 0 0 1px var(--rust) inset}
.ag-list .n{width:30px;height:30px;border-radius:50%;background:var(--moss-soft);color:var(--moss);display:grid;place-items:center;font-weight:800;flex:0 0 auto}
.ag-list button[aria-current="true"] .n{background:var(--rust);color:var(--on-rust)}
.ag-list b{display:block;font:400 19px/1.15 var(--serif)}
.ag-list small{color:var(--muted);font-size:12px}
.ag-main{display:grid;gap:16px}
.ag-now{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:24px}
.ag-now h2{font:400 clamp(30px,4vw,42px)/1.05 var(--serif);margin:6px 0 16px}
.ag-controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
.ag-play{min-width:120px}
.ag-speed{margin-left:auto;font-size:13px;color:var(--muted);display:flex;gap:6px;align-items:center}
.ag-speed select{border:1px solid var(--line);border-radius:10px;padding:6px 8px;background:var(--card)}
.ag-mode{font-size:13px;color:var(--muted);margin:10px 0 0}
.ag-transcript{background:var(--cream);border:1px solid var(--line);border-radius:22px;padding:24px}
.ag-text p{font-size:17px;line-height:1.7;margin:10px 0 0;max-width:70ch}
.ag-trans-note{background:var(--context);border-radius:12px;padding:12px 14px;font-size:14px;margin:14px 0 0}
.stops{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.stop{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:16px;text-decoration:none;transition:transform .2s,border-color .2s}
.stop:hover{transform:translateY(-2px);border-color:var(--gold)}
.stop .ico{color:var(--rust)}
.stop small{display:block;color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.stop b{font:400 22px/1.1 var(--serif)}
@media(max-width:920px){.ag{grid-template-columns:1fr}.ag-side{position:static}.stops{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.stops{grid-template-columns:1fr}.ag-speed{margin-left:0}}

/* Schools */
.act{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px 26px;max-width:860px}
.act ol{margin:0;padding-left:20px}
.act li{margin:6px 0;font-size:16px}
.act a{color:var(--rust)}
.sort-list{list-style:none;margin:0 0 14px;padding:0;display:grid;gap:8px;max-width:760px}
.sort-list li{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px;cursor:grab}
.sort-list li.drag{opacity:.5}
.sort-list li.ok{border-color:var(--moss);background:var(--moss-soft)}
.sort-list li.bad{border-color:var(--rust)}
.sort-list .grip{color:var(--muted);letter-spacing:-2px}
.sort-list b{font:400 19px/1.2 var(--serif)}
.sort-btns{margin-left:auto;display:flex;gap:4px}
.sort-btns button{border:1px solid var(--line);background:var(--cream);border-radius:8px;width:34px;height:34px}
.sort-msg{font-weight:700;min-height:1.5em}
.thennow-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tn-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px}
.tn-card .lvl{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rust)}
.tn-card h3{font:400 28px/1.1 var(--serif);margin:4px 0 12px}
@media(max-width:760px){.thennow-grid{grid-template-columns:1fr}}
.paper{background:#F6F0E2;color:#231F1A;border-radius:6px;padding:28px 32px;box-shadow:var(--shadow);max-width:880px;margin-bottom:18px;font-family:Georgia,serif;position:relative}
.paper-flag{position:absolute;top:-12px;right:18px;background:#8B4F35;color:#fff;font:700 12px/1 var(--sans);padding:7px 12px;border-radius:999px}
.paper-mast{font:400 clamp(34px,6vw,56px)/1 var(--smallcaps);text-align:center;border-bottom:3px double #231F1A;padding-bottom:6px}
.paper-date{text-align:center;font:italic 14px/1 var(--serif);padding:8px 0;border-bottom:1px solid #231F1A;margin-bottom:14px}
.paper h3{font:400 30px/1.1 var(--serif);margin:0 0 12px;text-align:center}
.paper-cols{columns:2;column-gap:28px;font-size:15px;line-height:1.6}
.paper-cols p{margin:0 0 10px}
.paper-quote{font-style:italic}
@media(max-width:700px){.paper{padding:22px 18px}.paper-cols{columns:1}}
.words{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:0}
.words div{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:14px}
.words dt{font:400 22px/1.1 var(--serif);color:var(--moss)}
.words dd{margin:4px 0 0;font-size:14px;color:var(--muted)}

/* Memories */
.memories{columns:3 280px;column-gap:14px}
.memory{break-inside:avoid;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin:0 0 14px}
.memory .ico{color:var(--gold)}
.memory blockquote{margin:8px 0;font:400 20px/1.35 var(--serif)}
.memory figcaption{color:var(--muted);font-size:13px;font-weight:700}

/* Forms */
.lh-form{display:grid;gap:12px}
.lh-form label{display:grid;gap:5px;font-size:14px;font-weight:600}
.lh-form input[type=text],.lh-form input[type=email],.lh-form input[type=tel],.lh-form select,.lh-form textarea{border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:var(--paper);font-weight:400;width:100%}
.lh-form input:focus,.lh-form select:focus,.lh-form textarea:focus{outline:3px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.lh-form .f2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lh-form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:13.5px;color:var(--muted)}
.lh-form .consent input{margin-top:3px;accent-color:var(--moss);width:18px;height:18px;flex:0 0 auto}
.lh-form .consent a{color:var(--rust)}
.lh-form button[type=submit]{justify-self:start}
.lh-form .hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-msg{margin:0;font-weight:700;min-height:1.4em}
.form-msg.ok{color:var(--moss)}
.form-msg.err{color:var(--rust)}
.lh-form.sent>*:not(.form-msg){display:none}
.lh-form.sent .form-msg{font:400 24px/1.3 var(--serif)}
@media(max-width:560px){.lh-form .f2{grid-template-columns:1fr}}
.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:20px;align-items:start}
.contact-form{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:26px}
@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}
.visit dd a{color:var(--rust)}

/* Modal */
.modal{position:fixed;inset:0;z-index:95;background:rgba(15,12,9,.6);display:grid;place-items:center;padding:16px}
.modal-card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:0 30px 80px rgba(0,0,0,.35);width:min(680px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:28px}
.modal-card h2{font:400 34px/1.05 var(--serif);margin:6px 0 16px;padding-right:40px}
.modal-x{position:absolute;top:16px;right:16px}
@media(max-width:560px){.modal{padding:0;place-items:end stretch}.modal-card{border-radius:22px 22px 0 0;max-height:92vh;padding:22px}}

/* Map */
.map-gate{display:grid;place-items:center;align-content:center;gap:10px;text-align:center;padding:24px;background:linear-gradient(135deg,var(--panel-a),var(--panel-b));color:var(--ink)}
.map-gate .ico{width:40px;height:40px;color:var(--rust)}
.map-gate p{margin:0;color:var(--muted);max-width:32ch}
iframe.map{display:block}

/* Sources */
.sources{margin:0;padding-left:20px;max-width:900px}
.sources li{margin:6px 0;color:var(--muted)}

/* Footer */
.site-foot{padding:44px 0 120px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;background:var(--cream)}
.site-foot .footer-grid{grid-template-columns:1fr 1fr 1.2fr}
.foot-brand{font:400 30px/1 var(--serif);color:var(--ink);margin-bottom:10px}
.site-foot a{color:inherit}
.foot-menu{list-style:none;margin:0;padding:0;columns:2;column-gap:20px}
.foot-menu li{margin:0 0 8px}
.foot-menu a{text-decoration:none;color:var(--ink)}
.foot-menu a:hover{color:var(--rust)}
.credit{font-size:12px}
@media(max-width:920px){.site-foot .footer-grid{grid-template-columns:1fr}}

.floor text{paint-order:stroke;stroke:var(--cream);stroke-width:5px;stroke-linejoin:round}
.floor.on text{stroke:var(--moss-soft)}

/* Hall Guide: always fit the visible screen, and clear the WordPress admin bar */
.chat{height:min(690px,calc(100vh - 36px));height:min(690px,calc(100dvh - 36px))}
.admin-bar .chat{height:min(690px,calc(100vh - 68px));height:min(690px,calc(100dvh - 68px))}
@media(max-height:620px) and (min-width:561px){.chat-head{padding:8px 10px}.avatar{width:34px;height:34px}.chat-title b{font-size:19px}.msgs{padding:10px}.chat-foot{display:none}}
.admin-bar .nav{top:32px}
@media(max-width:782px){.admin-bar .nav{top:46px}}
@media(max-width:600px){.admin-bar .nav{top:0}}
@media(max-width:560px){.chat{height:100%}.admin-bar .chat{top:46px;height:auto}}

/* Chat footnote link */
.chat-foot a{color:inherit}

/* Print: the learning pack and any page */
@media print{
	.nav,.notice,.fab,.chat,.modal,.toast,.site-foot,.hero-actions,.btn,.btn-row,#visit-form,.sort-btns,.era-step{display:none!important}
	body{background:#fff;color:#000}
	.section{padding:18px 0;border:0;background:#fff!important}
	.page-hero{padding:0 0 12px;background:none}
	.paper{box-shadow:none;border:1px solid #999}
	a{text-decoration:none}
}

/* v1.2 */
.fact-row{grid-template-columns:1.45fr 1fr 1fr 1fr}
@media(max-width:920px){.fact-row{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.fact-row{grid-template-columns:1fr}}
.era-card .year.long{font-size:clamp(40px,5vw,54px);line-height:1}
.content-note{font-size:13.5px;color:var(--muted);border:1px solid var(--line);border-radius:12px;padding:10px 14px;max-width:70ch;margin:0 0 18px;background:var(--card)}

/* v1.1: feature articles and archive photographs */
.feature-wrap{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}
.feature{max-width:70ch}
.feature h3{font:400 30px/1.1 var(--serif);margin:28px 0 10px;color:var(--moss)}
.feature p{font-size:17px;line-height:1.7;margin:0 0 14px}
.feature-h{font:400 clamp(36px,5vw,56px)/1.03 var(--serif);margin:8px 0 10px}
.feature-lead{font-size:19px;color:var(--muted);margin:0 0 10px}
.feature-side{position:sticky;top:96px;display:grid;gap:14px}
.side-card{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:20px}
.side-card .ico{color:var(--rust)}
.side-card h3{font:400 24px/1.1 var(--serif);margin:6px 0 6px}
.side-card p{font-size:14.5px;color:var(--muted);margin:0 0 12px}
.big-num{display:block;font:400 54px/1 var(--serif);color:var(--rust);font-variant-numeric:lining-nums}
.side-card .big-num+h3{margin-top:0}
@media(max-width:920px){.feature-wrap{grid-template-columns:1fr}.feature-side{position:static;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
.archive{display:grid;grid-template-columns:1.6fr 1fr 1fr;grid-auto-rows:260px;gap:12px}
.arch{margin:0;position:relative;border-radius:18px;overflow:hidden;background:#222}
.arch.wide{grid-row:span 2}
.arch:last-child{grid-column:span 2}
.arch .photo{display:block;width:100%;height:100%;border:0;padding:0;background:#222}
.arch img{width:100%;height:100%;object-fit:cover;filter:sepia(.12) contrast(1.02)}
.arch figcaption{position:absolute;left:12px;bottom:12px;background:rgba(20,16,12,.8);color:#F4EADC;font-size:12px;padding:6px 10px;border-radius:999px}
@media(max-width:820px){.archive{grid-template-columns:1fr 1fr;grid-auto-rows:220px}.arch.wide{grid-column:span 2;grid-row:auto}}
@media(max-width:520px){.archive{grid-template-columns:1fr}.arch.wide,.arch:last-child{grid-column:auto}}
.rv-note+.archive{margin-top:14px}

/* v1.4: story pages */
.stories{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.story-card{display:flex;flex-direction:column;gap:6px;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;min-height:220px}
.story-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--gold)}
.sc-top{display:flex;justify-content:space-between;align-items:center;color:var(--rust)}
.sc-n{font:400 15px/1 var(--smallcaps);color:var(--muted)}
.story-card small{font:400 13px/1.2 var(--smallcaps);letter-spacing:.06em;color:var(--rust);margin-top:6px}
.story-card b{font:400 24px/1.1 var(--serif)}
.sc-t{font-size:13.5px;color:var(--muted);flex:1}
.story-card .go{font-size:13px;font-weight:700;color:var(--moss);display:flex;align-items:center;gap:6px}
@media(max-width:1100px){.stories{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.stories{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.stories{grid-template-columns:1fr}.story-card{min-height:0}}
.story-photo{margin:0 0 24px;border-radius:20px;overflow:hidden;position:relative;background:#222}
.story-photo .photo{display:block;width:100%;border:0;padding:0;background:#222}
.story-photo img{width:100%;max-height:520px;object-fit:cover}
.story-photo figcaption{background:var(--card);color:var(--muted);font-size:13px;padding:10px 14px;border:1px solid var(--line);border-top:0;border-radius:0 0 20px 20px}
.story-photo.wanted{background:var(--context);border:2px dashed var(--gold);display:flex;gap:14px;align-items:flex-start;padding:20px}
.story-photo.wanted .ico{color:var(--gold);flex:0 0 auto}
.story-photo.wanted p{margin:0;font-size:14.5px}
.story-photo.wanted strong{display:block;font:400 22px/1.1 var(--serif);margin-bottom:4px}
.side-btn{justify-self:start}
.story-nav{background:var(--cream)}
.sn-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:stretch}
.sn{display:flex;flex-direction:column;gap:4px;background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 18px;text-decoration:none}
.sn:hover{border-color:var(--gold)}
.sn small{font-size:12px;color:var(--rust);font-weight:700}
.sn b{font:400 22px/1.1 var(--serif)}
.sn.next{text-align:right}
.sn.all{text-align:center;justify-content:center}
@media(max-width:700px){.sn-grid{grid-template-columns:1fr}.sn.next{text-align:left}}

/* v1.4.2: the Queen */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.why-grid .clue{margin:0;padding:20px}
.why-grid .ico{color:var(--rust);margin-bottom:6px}
@media(max-width:1000px){.why-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.why-grid{grid-template-columns:1fr}}
