:root{color-scheme:dark;--bg:#0c0e0d;--panel:#151815;--ink:#f4efdf;--muted:#acae9f;--gold:#d8bb72;--border:#393c2c;--font:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.5}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{color:var(--ink)}[hidden]{display:none!important}.masthead{max-width:1480px;padding:26px 54px;margin:auto;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--border);gap:25px}.brand{display:flex;align-items:center;gap:15px;font-weight:600;letter-spacing:.22em;font-size:17px}.brand small{display:block;color:var(--muted);font-size:12px;letter-spacing:.17em;margin-top:3px}.monogram{width:47px;height:50px;display:grid;place-items:center;border:1px solid var(--gold);font-family:var(--font);font-size:23px;font-weight:400;color:var(--gold);letter-spacing:-.07em;box-shadow:inset 0 0 0 4px var(--bg),inset 0 0 0 5px #51432a}.nav-link{font-size:14px;color:#d0d0c4;display:flex;gap:20px;align-items:center}.nav-link span{border:1px solid var(--border);padding:4px 9px;font-variant-numeric:tabular-nums;color:var(--gold)}main{max-width:1480px;margin:auto}.intro{display:grid;grid-template-columns:1.15fr .85fr;gap:7%;padding:58px 80px 62px;align-items:center;position:relative;isolation:isolate}.intro:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 79% 42%,#70531e24,transparent 58%)}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.2em;color:var(--gold);margin:0 0 15px;display:flex;gap:10px;align-items:center}.eyebrow span{height:1px;width:28px;background:var(--gold)}h1{font:normal clamp(44px,5.4vw,78px)/1.03 var(--font);letter-spacing:-.045em;margin:0 0 23px}h1 em{color:var(--gold);font-weight:400}h2{font:normal clamp(29px,3vw,39px)/1.13 var(--font);letter-spacing:-.025em;margin:0}.intro-description{max-width:480px;color:#c2c2b3;line-height:1.7;margin:0 0 25px}.explore-link{display:inline-flex;align-items:center;gap:42px;font-size:15px;padding:10px 0;border-bottom:1px solid var(--gold)}.explore-link span{color:var(--gold)}.intro-art{max-width:352px;justify-self:end;width:100%;position:relative}.art-frame{aspect-ratio:1;position:relative;padding:12px;border:1px solid #786338;background:#090b0999;box-shadow:0 14px 65px #0007}.art-frame:after{content:'';position:absolute;inset:-9px;border:1px solid #55472766;pointer-events:none}.art-frame img{width:100%;height:100%;object-fit:contain;display:block;background:#121412}.corner{position:absolute;width:22px;height:22px;border-color:var(--gold);border-style:solid}.tl{left:-3px;top:-3px;border-width:3px 0 0 3px}.tr{right:-3px;top:-3px;border-width:3px 3px 0 0}.bl{left:-3px;bottom:-3px;border-width:0 0 3px 3px}.br{right:-3px;bottom:-3px;border-width:0 3px 3px 0}.art-caption{display:flex;justify-content:space-between;margin-top:20px;font-size:12px;letter-spacing:.12em;color:#c7b687;gap:10px}.roster{padding:38px 54px 74px;border-top:1px solid var(--border)}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin-bottom:29px}.section-top .eyebrow{margin-bottom:10px}.count{margin:0;color:var(--muted);font-size:14px;white-space:nowrap}.tools{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.search{max-width:470px;flex:1;display:flex;align-items:center;gap:12px;border:1px solid var(--border);padding:12px 15px;background:#131612}.search svg{width:20px;flex-shrink:0;fill:none;stroke:var(--gold);stroke-width:1.5}.search input{width:100%;min-width:0;color:var(--ink);background:transparent;border:0;outline:none!important;font-size:15px}.search:focus-within{outline:1px solid var(--gold)}.search input::placeholder{color:#929887}.search kbd{font:13px 'Segoe UI',sans-serif;color:#838c78;border:1px solid var(--border);padding:0 6px}.discover{border:0;background:transparent;color:#d4ccb5;font-size:14px;padding:12px 0;display:flex;align-items:center;gap:15px}.discover span{font-size:19px;color:var(--gold)}.grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:24px 17px}.card{border:0;background:transparent;text-align:left;padding:0;min-width:0}.portrait{aspect-ratio:1;display:block;position:relative;background:#1a201d;border:1px solid #3e4436;overflow:hidden;transition:border-color .18s,transform .18s}.portrait:after{content:'';position:absolute;inset:4px;border:1px solid #d8bb7230;pointer-events:none}.portrait img{width:100%;height:100%;display:block;object-fit:contain;transition:transform .25s ease;image-rendering:auto}.card:hover .portrait,.card:focus-visible .portrait{border-color:var(--gold);transform:translateY(-3px)}.card:hover img{transform:scale(1.045)}.card-info{display:flex;gap:8px;justify-content:space-between;align-items:flex-start;padding:10px 1px}.card h3{font-size:14px;font-weight:500;line-height:1.3;margin:0;overflow-wrap:anywhere}.card-no{font-size:12px;line-height:1.5;color:#9b9b85;font-variant-numeric:tabular-nums}.empty{padding:55px 10px;text-align:center;border:1px solid var(--border);color:var(--muted)}.empty button{border:1px solid var(--border);background:#1a201a;padding:10px 15px;color:var(--ink)}footer{border-top:1px solid var(--border);max-width:1480px;padding:27px 54px 35px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;color:var(--muted);font-size:14px}footer p{margin:0}.footer-brand{font-size:14px;font-weight:600;letter-spacing:.15em;color:var(--gold)}dialog{width:min(1000px,calc(100% - 48px));max-height:calc(100dvh - 48px);padding:0;background:#141813;border:1px solid #6d5f37;color:var(--ink);overflow:auto;box-shadow:0 30px 150px #000d}dialog::backdrop{background:#000c;backdrop-filter:blur(7px)}.close{position:absolute;right:14px;top:14px;z-index:2;width:42px;height:42px;border:1px solid #666147;background:#11170fea;border-radius:50%;color:var(--ink);font-size:28px;line-height:1}.detail{display:grid;grid-template-columns:1.08fr 1fr;min-height:490px}.detail-visual{padding:32px;background:#090c09;display:flex;flex-direction:column;justify-content:center;align-items:center;border-right:1px solid var(--border);gap:20px}.detail-visual>img{display:block;width:100%;max-height:64vh;height:auto;aspect-ratio:1;object-fit:contain}.variant-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.variant-nav button{background:none;border:1px solid var(--border);padding:7px 10px;color:var(--muted);font-size:14px}.variant-nav button[aria-pressed=true]{border-color:var(--gold);color:var(--gold)}.detail-copy{padding:65px 34px 26px;display:flex;flex-direction:column;align-items:flex-start}.detail-copy h2{font-size:clamp(31px,4vw,49px);overflow-wrap:anywhere}.description{color:#bec2b3;margin:22px 0;line-height:1.7}.description:empty{display:none}dl{width:100%;margin:24px 0 0}dl>div{border-top:1px solid var(--border);padding:14px 0}dt{font-size:12px;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}dd{margin:0;font-size:16px;line-height:1.55;color:#d3d5c8}.detail-bottom{margin-top:auto;padding-top:35px;width:100%}.detail-bottom>p{color:#8f9988;font-size:13px}.character-nav{display:flex;gap:12px;border-top:1px solid var(--border);padding-top:18px}.character-nav button{border:1px solid #5a563b;background:transparent;color:#e4d5b2;padding:9px 14px;font-size:14px;flex:1}.character-nav button:hover{background:#302b1c}.no-script{padding:30px;text-align:center;color:var(--gold)}@media(min-width:1450px){.intro{padding-top:68px;padding-bottom:70px}.intro-art{max-width:370px}}@media(max-width:1150px){.grid{grid-template-columns:repeat(5,minmax(0,1fr))}.intro{padding-inline:54px;gap:7%}.intro-art{max-width:300px}}@media(max-width:780px){.masthead{padding:21px 24px}.brand{font-size:14px;letter-spacing:.14em}.nav-link{font-size:13px;gap:8px}.nav-link span{display:none}.intro{padding:42px 28px;gap:25px}.intro-art{max-width:245px}.intro-description{font-size:15px}.intro-description br{display:none}h1{font-size:48px}.roster{padding:32px 24px 50px}.grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 12px}.detail{grid-template-columns:1fr}.detail-visual{padding:30px;border-right:0;border-bottom:1px solid var(--border)}.detail-visual>img{max-height:45vh}.detail-copy{padding:30px}.detail-bottom{padding-top:25px}footer{padding-inline:24px;flex-wrap:wrap}footer p{display:none}}@media(max-width:520px){.masthead{padding:18px 20px;gap:12px}.brand{gap:10px;font-size:13px}.brand small{font-size:10px;letter-spacing:.09em}.monogram{width:37px;height:40px;font-size:21px}.nav-link{font-size:12px;max-width:80px;text-align:right}.intro{padding:33px 24px 35px;gap:22px;grid-template-columns:1fr .72fr;align-items:start}.intro-copy{position:relative;z-index:1}h1{font-size:36px}.eyebrow{font-size:10px;letter-spacing:.14em}.eyebrow span{width:14px}.intro-description{grid-column:1/-1;font-size:14px;line-height:1.5;margin-bottom:17px}.explore-link{font-size:13px;gap:15px}.intro-art{margin-top:33px}.art-frame{padding:5px}.art-frame:after{inset:-5px}.corner{width:13px;height:13px}.art-caption{font-size:10px;letter-spacing:.02em;margin-top:12px;flex-direction:column;gap:2px}.roster{padding:26px 20px 42px}.section-top{align-items:start;gap:15px}.section-top h2{font-size:27px}.count{font-size:12px;padding-top:3px;white-space:normal;text-align:right;max-width:73px}.tools{gap:12px;flex-wrap:wrap;margin-bottom:23px}.search{max-width:none;flex-basis:100%;padding:11px 12px}.discover{font-size:13px;padding:1px 0}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 10px}.card h3{font-size:13px}.card-no{font-size:10px}.card-info{gap:3px}.card-info{padding-top:8px}.card-no{display:none}dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.detail-visual{padding:25px}.detail-copy{padding:25px}.close{right:10px;top:10px}.detail-copy h2{font-size:36px}.detail-copy .eyebrow{font-size:12px}.character-nav button{font-size:14px}footer{font-size:12px}.footer-brand{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}@media(min-width:521px) and (max-width:640px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

.intro:before{background:linear-gradient(90deg,#0c0e0df2 0%,#0c0e0dd9 38%,#0c0e0d5c 100%),url("assets/villa-tumba-background.webp") center/cover no-repeat}.intro{border-bottom:1px solid #81673255}.intro-art{max-width:330px}.art-frame{background:#070a07d9}.card h3{font-size:14px}.brand small{font-size:12px}.nav-link{font-size:14px}@media(max-width:520px){.intro:before{background:linear-gradient(90deg,#0c0e0df2,#0c0e0da1),url("assets/villa-tumba-background.webp") center/cover no-repeat}.intro-art{margin-top:30px}.intro .eyebrow{font-size:12px}.intro .eyebrow span{display:none}.brand small{font-size:10px}.nav-link{font-size:12px}.card h3{font-size:14px}}
