:root{
  --page:#f4efe6;--page-top:#fbf8f2;--ink:#211d19;--muted:#746b61;--surface:#fffdf8;
  --line:rgba(57,43,29,.16);--bronze:#7f6141;--bronze-soft:#b99b75;--paper:#f7f0e4;
}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;min-height:100vh;background:radial-gradient(circle at 50% -10%,rgba(202,176,135,.18),transparent 34rem),linear-gradient(180deg,var(--page-top) 0%,var(--page) 100%);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}.eyebrow{color:#786d61;font-size:10px;font-weight:750;letter-spacing:.27em;margin-bottom:9px}.site-header{text-align:center;padding:42px 22px 16px}.landing-header{padding-bottom:22px}.brand-link{text-decoration:none}.brand-main{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(44px,7vw,78px);font-weight:600;letter-spacing:.07em;line-height:.92;color:#211d19}.brand-sub{margin-top:10px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(18px,2.5vw,27px);letter-spacing:.18em;color:#5e554b;text-transform:uppercase}.section-title{margin-top:16px;display:inline-flex;align-items:center;gap:9px;color:#4c443c;font-size:13px;letter-spacing:.04em}.dot{color:#9a8d7e}

/* persistent search */
.global-search{position:fixed;top:16px;right:18px;z-index:40;width:226px;transition:width .18s ease,opacity .14s ease,transform .14s ease,visibility .14s}.global-search:focus-within{width:320px}.search-shell{height:38px;display:flex;align-items:center;gap:7px;padding:0 10px;border:1px solid rgba(62,48,34,.18);background:rgba(255,252,246,.90);box-shadow:0 4px 16px rgba(46,35,24,.08);backdrop-filter:blur(12px);border-radius:4px}.search-icon{width:16px;height:16px;fill:none;stroke:#71675d;stroke-width:1.8;stroke-linecap:round;flex:0 0 auto}.search-shell input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:#28221d;font:500 13px/1.2 inherit}.search-shell input::placeholder{color:#92877c}.search-clear{display:none;border:0;background:transparent;color:#81766b;font-size:19px;line-height:1;padding:1px 2px;cursor:pointer}.search-clear.visible{display:block}.search-results{margin-top:6px;overflow:hidden;border:1px solid rgba(62,48,34,.16);background:rgba(255,253,249,.98);box-shadow:0 14px 34px rgba(42,31,20,.16);border-radius:4px}.search-result{width:100%;border:0;border-bottom:1px solid rgba(62,48,34,.08);background:transparent;text-align:left;padding:9px 11px;cursor:pointer;display:block}.search-result:last-child{border-bottom:0}.search-result:hover,.search-result.active{background:#f1e8da}.search-result-name{display:block;font-family:Georgia,"Times New Roman",serif;font-size:14px;color:#2c241d}.search-result-meta{display:block;margin-top:2px;font-size:10px;letter-spacing:.04em;color:#81766b}.search-empty{padding:11px;color:#8a7e72;font-size:12px}.viewer-open .global-search{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-7px)}

/* hero landing */
.landing-main{width:min(1240px,calc(100% - 52px));margin:0 auto;padding:0 0 66px}.hero-frame{position:relative;margin:0 auto;width:min(1120px,100%);padding:7px;background:linear-gradient(135deg,#4b3927 0%,#b49369 32%,#5a432c 58%,#c4a479 100%);box-shadow:0 18px 44px rgba(49,34,20,.18),0 0 0 1px rgba(69,47,26,.35)}.hero-frame::after{content:"";position:absolute;inset:11px;border:1px solid rgba(255,235,199,.42);pointer-events:none}.hero-frame img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;background:#392c21}.portal-menu{margin:32px auto 0;width:min(1120px,100%)}.portal-heading{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:0 auto 20px;width:min(720px,92%);color:#675847}.portal-heading span{height:1px;background:linear-gradient(90deg,transparent,#9e8769)}.portal-heading span:last-child{background:linear-gradient(90deg,#9e8769,transparent)}.portal-heading strong{font-family:Georgia,"Times New Roman",serif;font-size:13px;text-transform:uppercase;letter-spacing:.19em;white-space:nowrap}.section-row{display:grid;gap:12px}.section-row-primary{grid-template-columns:repeat(5,minmax(0,1fr))}.section-row-secondary{grid-template-columns:repeat(3,minmax(0,1fr));width:64%;margin:12px auto 0}.section-plaque{--accent:#8b7559;position:relative;min-height:94px;display:flex;align-items:center;gap:13px;padding:13px 14px 13px 12px;text-decoration:none;background:linear-gradient(180deg,#fffaf1,#eee4d4);clip-path:polygon(9px 0,calc(100% - 9px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 9px);box-shadow:0 6px 16px rgba(52,38,24,.10);transition:transform .14s ease,filter .14s ease}.section-plaque::before{content:"";position:absolute;inset:4px;clip-path:inherit;border:1px solid rgba(92,67,43,.30);pointer-events:none}.section-plaque::after{content:"";position:absolute;left:14px;right:14px;bottom:5px;height:2px;background:linear-gradient(90deg,transparent,var(--accent),transparent);opacity:.7}.section-plaque:hover{transform:translateY(-3px);filter:brightness(1.025);box-shadow:0 11px 24px rgba(52,38,24,.15)}.plaque-medallion{--mana-fill:transparent;width:54px;height:54px;flex:0 0 54px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(31,28,25,.24);box-shadow:inset 0 0 0 3px rgba(255,255,255,.34),0 3px 8px rgba(30,24,18,.12);color:#2f2b27}.plaque-medallion .mana-glyph{width:33px;height:33px}.plaque-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.plaque-name{font-family:Georgia,"Times New Roman",serif;font-size:18px;line-height:1.05}.plaque-count{margin-top:5px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#786d61}.set-count{text-align:center;margin-top:17px;color:#8b7e70;font-size:10px;text-transform:uppercase;letter-spacing:.18em}.plaque-w{--accent:#c6ad71}.plaque-u{--accent:#5fa6cf}.plaque-b{--accent:#4b4550}.plaque-r{--accent:#c55b4f}.plaque-g{--accent:#5f936c}.plaque-hy{--accent:#7b9e91}.plaque-gd{--accent:#b79743}.plaque-c{--accent:#8f969a}

/* mana identities */
.w{background:radial-gradient(circle at 35% 28%,#fffdf4,#e7d7ab);color:#4a4230}.u{background:radial-gradient(circle at 35% 28%,#d8f2ff,#75b8dc);color:#18384a}.b{background:radial-gradient(circle at 35% 28%,#67606b,#28262b);color:#f5f0f5}.r{background:radial-gradient(circle at 35% 28%,#f3a18e,#c95649);color:#4b201a}.g{background:radial-gradient(circle at 35% 28%,#abd2ad,#65946d);color:#193b20}.hy{background:conic-gradient(from 45deg,#d8c781,#a4c1d5,#7fa785,#d8c781);color:#2d3b3a}.gd{--mana-fill:#d6bc70;background:radial-gradient(circle at 35% 28%,#f2dd99,#b48d35);color:#493814}.c{background:radial-gradient(circle at 35% 28%,#eceeef,#aeb3b6);color:#363b3e}.mana-orb{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(30,28,25,.18);box-shadow:inset 0 0 0 2px rgba(255,255,255,.28)}.mana-glyph-tiny{width:17px;height:17px}.mana-glyph-small{width:20px;height:20px}

/* refined section navigation */
.mana-nav{width:min(850px,calc(100% - 30px));margin:3px auto 25px;display:flex;align-items:flex-start;justify-content:center;gap:9px;padding:9px 12px 7px;border-top:1px solid rgba(104,80,55,.18);border-bottom:1px solid rgba(104,80,55,.18)}.gate-link,.mana-nav-link{text-decoration:none;color:#655a50;transition:transform .13s ease,opacity .13s ease}.gate-link{height:42px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:42px;font-size:8px;text-transform:uppercase;letter-spacing:.10em}.gate-mark{font-size:18px;line-height:18px;margin-bottom:2px}.mana-nav-link{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:48px}.mana-nav-symbol{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(31,28,25,.18);box-shadow:inset 0 0 0 2px rgba(255,255,255,.25),0 2px 5px rgba(37,27,17,.08)}.mana-nav-label{font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:#796d61}.mana-nav-link:hover,.gate-link:hover{transform:translateY(-2px)}.mana-nav-link.active .mana-nav-symbol{outline:2px solid #715737;outline-offset:2px}.mana-nav-link.active .mana-nav-label{color:#3f3429;font-weight:750}

/* gallery */
.gallery-main{width:min(1020px,calc(100% - 140px));margin:0 auto}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:12px 0 44px}.card-button{appearance:none;border:0;padding:0;margin:0;background:#fff;border-radius:4.75% / 3.4%;cursor:zoom-in;position:relative;overflow:hidden;box-shadow:0 2px 8px rgba(16,24,32,.08),0 0 0 1px rgba(33,42,51,.10);transition:transform 150ms ease,box-shadow 150ms ease}.card-button:hover{transform:translateY(-4px) scale(1.008);box-shadow:0 8px 18px rgba(16,24,32,.14),0 0 0 1px rgba(33,42,51,.14)}.card-button:focus-visible{outline:2px solid #8b6b46;outline-offset:5px}.card-button img{display:block;width:100%;height:auto;aspect-ratio:5/7;object-fit:contain}

/* lightbox */
body.viewer-open{overflow:hidden}.lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(14,19,26,.68);color:#1f2730;overflow:hidden}.lightbox::backdrop{background:rgba(14,19,26,.58);backdrop-filter:blur(3px)}.lightbox[open]{display:block}.stage{position:absolute;inset:0;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:42px 76px 28px;touch-action:none;cursor:default}.stage.zoomed{cursor:grab}.stage.dragging{cursor:grabbing}.full-image{display:block;width:auto;height:auto;max-width:none;max-height:none;object-fit:contain;user-select:none;-webkit-user-drag:none;transform-origin:center center;will-change:transform;filter:drop-shadow(0 22px 38px rgba(0,0,0,.28));border-radius:14px;animation:bf-pop .16s ease-out}@keyframes bf-pop{from{transform:scale(.96);opacity:.6}to{transform:scale(1);opacity:1}}.lightbox-chrome{position:absolute;left:0;right:0;top:0;z-index:4;height:62px;pointer-events:none}.counter{position:absolute;top:18px;left:50%;transform:translateX(-50%);color:#f7fafc;font-size:13px;font-variant-numeric:tabular-nums;background:rgba(16,22,29,.68);padding:6px 10px;border-radius:999px;backdrop-filter:blur(6px)}.icon-btn,.nav-btn{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.92);color:#1f2730;backdrop-filter:blur(10px)}.close-btn{pointer-events:auto;position:absolute;top:14px;right:18px;width:40px;height:40px;border-radius:50%;font-size:28px;line-height:31px;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.14)}.nav-btn{position:absolute;z-index:4;top:50%;transform:translateY(-50%);width:46px;height:64px;border-radius:12px;font-size:46px;line-height:50px;cursor:pointer;opacity:.94;box-shadow:0 8px 18px rgba(0,0,0,.12)}.prev-btn{left:22px}.next-btn{right:22px}.nav-btn:hover,.icon-btn:hover{background:#fff;opacity:1}

@media(max-width:1280px){.gallery-main{width:min(980px,calc(100% - 72px))}.gallery{gap:16px}.landing-main{width:min(1160px,calc(100% - 42px))}}
@media(max-width:1050px){.section-row-primary{grid-template-columns:repeat(3,minmax(0,1fr))}.section-row-secondary{width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-main{width:min(900px,calc(100% - 40px))}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.mana-nav{overflow-x:auto;justify-content:flex-start;scrollbar-width:none}.mana-nav::-webkit-scrollbar{display:none}}
@media(max-width:760px){.global-search{top:10px;right:10px;width:170px}.global-search:focus-within{width:calc(100vw - 20px)}.site-header{padding-top:62px}.landing-main{width:min(100% - 18px,1240px)}.hero-frame{padding:4px}.hero-frame::after{inset:7px}.portal-menu{margin-top:23px}.section-row-primary,.section-row-secondary{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.section-row-secondary{width:100%;margin-top:9px}.section-plaque{min-height:82px;padding:10px;gap:9px}.plaque-medallion{width:45px;height:45px;flex-basis:45px}.plaque-medallion .mana-glyph{width:27px;height:27px}.plaque-name{font-size:16px}.gallery-main{width:min(100% - 18px,1480px)}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.stage{padding:52px 14px 22px}.nav-btn{width:38px;height:54px;border-radius:10px;font-size:40px}.prev-btn{left:8px}.next-btn{right:8px}.lightbox::backdrop{background:rgba(14,19,26,.62)}.mana-nav{width:calc(100% - 12px);gap:7px;padding-left:8px;padding-right:8px}.mana-nav-link{min-width:42px}.mana-nav-label{font-size:7px}}
