@font-face{font-family:Longhorn;src:url('demo/catalogue/fonts/OldStandardTT-Regular.ttf') format('truetype');font-display:swap}
@font-face{font-family:Longhorn;src:url('demo/catalogue/fonts/OldStandardTT-Bold.ttf') format('truetype');font-weight:700;font-display:swap}
:root{color-scheme:dark;--cream:#f4eedb;--muted:#c4bba7;--gold:#b79b6d;--red:#7b2018;--panel:#191817;--line:#665946;font-family:Longhorn,Georgia,serif;color:var(--cream);background:#10100f}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #f3ca7f;outline-offset:5px}button:disabled{cursor:default}a{color:inherit}button{border-radius:0}img{max-width:100%}[hidden]{display:none!important}.review-bar{height:38px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #443b2f;font:10px/1.2 Arial,sans-serif;letter-spacing:1.6px;color:#d3c6ac;background:#151412}.review-bar i{display:inline-block;width:5px;height:5px;background:#bb9f73;border-radius:50%;margin-right:8px}.review-bar small{letter-spacing:.3px;font-size:10px;color:#9e9586}.view-switch{display:flex;gap:3px}.view-switch button{border:0;background:none;padding:7px 12px;font:11px Arial,sans-serif;letter-spacing:.3px;color:#bfb4a1}.view-switch button[aria-pressed=true]{background:#34302a;color:#fff2d5}.preview-shell{width:100%;margin:auto;container-type:inline-size}.preview-shell.mobile-preview{width:min(390px,100%);box-shadow:0 0 0 1px #5d5042;margin-block:18px}.town{position:relative;isolation:isolate;overflow:hidden;height:max(710px,calc(100svh - 38px));max-height:1100px;container-type:size}.world{position:absolute;width:max(100cqw,159.8cqh);aspect-ratio:1940/1214;bottom:0;left:50%;transform:translateX(-50%)}.sky,.street{display:block;position:absolute;width:100%;height:auto;pointer-events:none}.sky{top:0;height:15.1565%}.street{top:15.1565%;height:84.8435%}.scene-shading{pointer-events:none;position:absolute;inset:0;background:linear-gradient(180deg,#060b1380,transparent 22%,transparent 69%,#100f0c9c);z-index:1}.site-header{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:26px 4.4%;text-shadow:0 1px 7px #0008}.wordmark{text-decoration:none;font-size:clamp(24px,2.5cqw,40px);letter-spacing:.19em;line-height:1;white-space:nowrap}.wordmark small{display:block;font:11px/1.7 Longhorn,Georgia,serif;letter-spacing:.55em;margin-top:7px}.site-header nav{display:flex;align-items:center;gap:clamp(16px,2cqw,32px)}.site-header nav button,.account-actions>button{border:0;background:transparent;font-size:16px;padding:10px 0;white-space:nowrap}.site-header nav button:hover{text-decoration:underline;text-underline-offset:6px}.account-actions{display:flex;gap:22px;align-items:center}.account-actions .basket{background:#79231c;border:1px solid #bc7f5e;padding:12px 20px;text-shadow:none;box-shadow:0 3px 12px #0003}.basket span{font-size:23px;vertical-align:-2px;margin-right:6px}.shopkeeper{position:absolute;left:81.7%;bottom:27%;height:28%;width:15%;padding:0;border:0;background:transparent;transform:translateX(-50%);z-index:2}.shopkeeper>img{height:100%;width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(2px 3px 2px #0002);transition:filter .25s ease}.shopkeeper-shadow{position:absolute;background:radial-gradient(ellipse,#291b128a,transparent 70%);width:58%;height:5%;bottom:1%;left:19%;transform:skewX(-30deg)}.shopkeeper:hover>img,.shopkeeper:focus-visible>img{filter:drop-shadow(0 0 7px #ffe5ad7a)}.hotspot{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;background:#171610ee;border:1px solid #a38b65;padding:9px 13px;white-space:nowrap;box-shadow:0 3px 12px #0005;font-size:15px}.diamond{color:#ebd4a5;font-size:21px;line-height:14px;animation:beacon 3s ease-in-out infinite}.hotspot>span:last-child{font-size:13px;color:#c8b58e}.shopkeeper:hover .hotspot{background:#272218}.welcome{position:absolute;z-index:2;left:4.4%;bottom:48px;max-width:64%;text-shadow:0 2px 10px #0009;pointer-events:none}.eyebrow{font:10px/1.5 Arial,sans-serif;letter-spacing:2.8px;color:#ccb183;margin:0 0 14px}.welcome h2{font-size:clamp(34px,4cqw,62px);line-height:1.06;margin:0 0 10px;letter-spacing:-1px}.welcome>p:not(.eyebrow){font-size:17px;line-height:1.5;margin:0 0 12px}.welcome-link{pointer-events:auto;background:transparent;border:0;border-bottom:1px solid #c6b08b;padding:3px 0 5px;font:13px Arial,sans-serif;letter-spacing:.3px}.welcome-link span{margin-left:18px}.town-caption{position:absolute;z-index:2;right:4.4%;bottom:29px;font:9px Arial,sans-serif;letter-spacing:2px;color:#e8d6b1}.product-panel{position:absolute;z-index:4;left:5.8%;top:14.4%;width:min(44%,650px);padding:clamp(22px,2.2cqw,32px);background:linear-gradient(135deg,#1e1c19fa,#10100ffb);border:1px solid #b09362;box-shadow:0 14px 45px #0006,0 0 0 4px #0f0d0b30;max-height:calc(100% - 215px);overflow:auto;scrollbar-color:#716045 #171613;animation:panel-in .22s ease-out}.close-button{position:absolute;top:9px;right:9px;width:36px;height:36px;border:0;background:transparent;color:#d8bd8f;font:29px/1 Arial,sans-serif}.close-button:hover{background:#ffffff0d}.product-panel h1{font-size:clamp(24px,2.65cqw,42px);line-height:1.06;letter-spacing:-.7px;margin:0 12px 9px 0}.product-panel .eyebrow{font-size:9px;letter-spacing:2.4px;margin-bottom:13px}.product-subtitle{font-size:clamp(15px,1.4cqw,21px);margin:0 0 17px;color:#c9ab7c}.screenshot-button{position:relative;display:block;width:100%;padding:0;border:1px solid #6b5d45;background:#13110e;overflow:hidden}.screenshot-button img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}.screenshot-button>span{position:absolute;right:7px;bottom:7px;background:#161411e8;border:1px solid #7f6947;padding:5px 8px;font:10px Arial,sans-serif;opacity:0;transition:opacity .15s}.screenshot-button:hover>span,.screenshot-button:focus-visible>span{opacity:1}.features{padding:0;margin:17px 0 19px;list-style:none;font-size:15px;line-height:1.6}.features li:before{content:'◇';color:#d1ac75;margin-right:14px}.product-actions{display:flex;gap:12px}.primary,.secondary{padding:12px 17px;border:1px solid #a8997b;background:transparent;font-size:17px;font-weight:700;line-height:1.2;transition:background .15s}.primary{background:linear-gradient(#82251b,#651b16);border-color:#c28263}.primary:hover{background:#963126}.secondary:hover{background:#ffffff0d}.product-actions button{flex:1;padding:11px 8px}.product-actions .primary span{font-family:Arial,sans-serif;font-size:13px;margin-left:8px}.prices{font-size:13px;margin:14px 0 0;text-align:center;letter-spacing:.5px}.prices span{padding:0 13px;color:#ad956f}.town.panel-open .welcome .eyebrow,.town.panel-open .welcome>p:not(.eyebrow),.town.panel-open .welcome-link{display:none}.town.panel-open .welcome{bottom:37px}.town.panel-open .welcome h2{font-size:clamp(30px,3.6cqw,54px)}.review-footer{padding:20px 4.4%;display:flex;gap:20px;justify-content:space-between;align-items:center;background:#141310;border-top:1px solid #3b3328}.review-footer span{font-size:12px;letter-spacing:2px;white-space:nowrap}.review-footer p{font:11px/1.6 Arial,sans-serif;color:#a69d8d;margin:0;text-align:right}
dialog{color:var(--cream);background:#171614;border:1px solid #9d835b;padding:28px;box-shadow:0 25px 90px #000b;max-width:calc(100% - 24px);max-height:calc(100svh - 24px);scrollbar-color:#716045 #171613}dialog::backdrop{background:#100d09a8;backdrop-filter:blur(5px)}dialog h2{font-size:34px;line-height:1.1;margin:0 24px 13px 0}dialog p{line-height:1.55}dialog .eyebrow{margin:0 0 10px}.demo-dialog{width:1480px;height:calc(100svh - 36px);padding:0;overflow:hidden}.demo-dialog[open]{display:flex;flex-direction:column}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:15px 24px;border-bottom:1px solid #4e4232;flex:none}.dialog-header .eyebrow{font-size:9px;margin-bottom:6px}.dialog-header h2{font-size:25px;margin:0}.dialog-header .secondary{font:13px Arial,sans-serif}.demo-dialog iframe{width:100%;flex:1;min-height:0;border:0;background:#11110f}.dialog-footnote{flex:none;text-align:center;font:10px/1.4 Arial,sans-serif;letter-spacing:.2px;color:#c1b397;margin:0;padding:11px 14px;border-top:1px solid #4e4232;background:#151411}.demo-loading{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:20px;background:#1a1916;pointer-events:none}.editions-dialog{width:820px;padding:36px}.muted{color:var(--muted)}.edition-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:23px}.edition-grid article{padding:24px;border:1px solid #67573d;background:#211f1b}.edition-grid .eyebrow{font-size:9px;letter-spacing:1.7px}.edition-grid h3{font-size:27px;line-height:1.15;margin:0}.edition-price{font-size:35px;margin:13px 0}.edition-price small{font:12px Arial,sans-serif;color:#b8ac95}.edition-grid article>p:not(.eyebrow):not(.edition-price){min-height:48px;color:var(--muted);font-size:15px}.edition-grid button{width:100%;font-size:15px}.included{font-size:16px;margin-top:23px}.selection-note{font:12px/1.6 Arial,sans-serif;color:#d8c9ac;background:#24211c;padding:13px;border-left:2px solid #b39665}.text-button{border:0;background:transparent;padding:8px 0;text-decoration:underline;text-underline-offset:5px}.image-dialog{width:1500px;padding:0}.image-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:10px}.image-toolbar>span{font:10px Arial,sans-serif;letter-spacing:1.5px}.image-toolbar button{font:12px Arial,sans-serif}.image-scroll{overflow:auto;max-height:calc(100svh - 150px);background:#171411}.image-scroll img{width:100%;display:block}.info-dialog{width:520px;padding:36px}.info-dialog p,.info-dialog li{font-size:17px;line-height:1.6;color:var(--muted)}.info-dialog a{color:#e3c18e}.noscript{position:fixed;top:40%;left:10%;right:10%;padding:30px;background:#191714;border:1px solid #c5a573;z-index:9}.mobile-mode .demo-dialog,.mobile-mode .editions-dialog,.mobile-mode .info-dialog{width:390px}.mobile-mode .edition-grid{grid-template-columns:1fr}.mobile-mode .dialog-header{padding:15px 12px}.mobile-mode .dialog-header h2{font-size:20px}.mobile-mode .dialog-header .secondary{font-size:11px;padding:10px}.mobile-mode .editions-dialog{padding:26px}.mobile-mode .dialog-footnote{font-size:9px}
@container (max-width:1000px){.site-header{flex-wrap:wrap;padding:23px 4.4%;gap:13px}.site-header nav{order:3;justify-content:center;width:100%;gap:25px}.site-header nav button{font-size:15px;padding:8px 0}.wordmark{font-size:29px}.account-actions{gap:16px}.site-header .basket{padding:10px 15px}.product-panel{top:21%;width:48%;max-height:calc(100% - 240px);left:4.4%;padding:23px}.product-panel h1{font-size:28px}.product-subtitle{font-size:16px}.features{font-size:13px;margin:14px 0}.product-actions button{font-size:15px}.product-panel .eyebrow{font-size:8px}.welcome{max-width:70%}.hotspot{font-size:14px}}
@container (max-width:650px){.town{height:770px;max-height:none}.world{left:63%;transform:translateX(-79%)}.scene-shading{background:linear-gradient(180deg,#060b13ad,transparent 31%,transparent 59%,#100f0cd9)}.site-header{padding:24px 22px;gap:12px}.wordmark{font-size:24px;letter-spacing:.1em}.wordmark small{font-size:8px;letter-spacing:.38em}.account-actions{gap:0}.account-actions>button:first-child{display:none}.account-actions .basket{font-size:13px;padding:9px 11px}.basket span{font-size:18px}.site-header nav{gap:22px;justify-content:flex-start;overflow-x:auto;white-space:nowrap}.site-header nav button{font-size:14px}.shopkeeper{bottom:27%;height:28%}.hotspot{font-size:13px;padding:8px 10px;gap:6px}.welcome{left:24px;right:24px;bottom:55px;max-width:none}.welcome h2{font-size:37px;letter-spacing:-.8px}.welcome>p:not(.eyebrow){font-size:15px;line-height:1.5}.welcome .eyebrow{font-size:9px}.town-caption{left:24px;right:auto;bottom:23px;font-size:8px;letter-spacing:1.7px}.product-panel{top:156px;left:15px;right:15px;width:auto;max-height:calc(100% - 235px);padding:24px 20px}.product-panel h1{font-size:31px;max-width:260px}.product-subtitle{font-size:16px;margin-bottom:16px}.features{font-size:13px;margin:17px 0}.prices{font-size:12px}.product-actions{gap:9px}.product-actions button{font-size:15px}.town.panel-open .welcome{bottom:31px}.town.panel-open .welcome h2{font-size:28px}.town.panel-open .town-caption{display:none}.town.panel-open .shopkeeper{visibility:hidden}.review-footer{flex-direction:column;align-items:flex-start;padding:20px 24px;gap:9px}.review-footer p{text-align:left}.review-footer span{font-size:11px}.screenshot-button>span{opacity:1;font-size:9px}}
@media(max-width:600px){.review-bar{padding:0 12px;font-size:9px;letter-spacing:1px}.review-bar small{display:none}.view-switch button{padding:7px 9px;font-size:10px}.edition-grid{grid-template-columns:1fr}.editions-dialog,.info-dialog{padding:27px}.dialog-header{padding:13px 12px}.dialog-header h2{font-size:20px}.dialog-header .secondary{font-size:11px;padding:10px}.dialog-footnote{font-size:9px}.image-toolbar>span{font-size:8px}.image-toolbar{padding:10px}.image-scroll img{max-width:none;width:1100px}.edition-grid article>p:not(.eyebrow):not(.edition-price){min-height:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep the entire product action row above the fold in shorter browser panels. */
.world{width:max(100cqw,177.6833cqh);aspect-ratio:1672/941}
.town-art{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
.basket svg{vertical-align:-3px;margin-right:7px}
.screenshot-button img{height:clamp(150px,24cqh,285px);aspect-ratio:auto;object-fit:contain}
.product-panel{padding:22px 26px}
.features{margin:13px 0 15px}
@container (min-width:651px) and (max-width:1100px){.world{left:82%;transform:translateX(-81.7%)}}
@container (max-width:650px){.product-panel{padding:23px 20px}.screenshot-button img{height:180px}}
@keyframes beacon{0%,100%{opacity:.65}50%{opacity:1}}@keyframes panel-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
