@import url('./play.css');
:root{color-scheme:light;--ink:#172e28;--forest:#152d27;--forest-light:#214338;--paper:#f8f5ee;--cream:#efeadf;--gold:#dab980;--gold-dark:#8a622d;--muted:#626b64;--line:#dcded5;--white:#fffefb;--red:#a14438;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b87b2f;outline-offset:4px}button{color:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(2.3rem,4vw,3.65rem);letter-spacing:-.035em}h2{font-size:2.4rem}p{margin-bottom:1rem}.site-header{height:100px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 max(6vw,24px);background:var(--paper)}.brand{display:flex;gap:13px;align-items:center;white-space:nowrap;font-size:15px;letter-spacing:.18em;font-weight:700;line-height:1.3}.brand em{display:block;font-style:normal;font-size:12px;letter-spacing:.24em}.brand-mark{font-size:32px;line-height:1;width:43px;height:48px;display:grid;place-items:center;border:1px solid #b79965;border-radius:20px 20px 3px 3px;color:#8a622d}.site-header nav{align-self:stretch;display:flex;align-items:center;gap:36px}.nav-link{border:0;background:none;font-size:14px;padding:35px 0;color:var(--muted);position:relative}.nav-link.active{color:var(--ink);font-weight:600}.nav-link.active:after{position:absolute;content:'';height:2px;background:var(--forest);bottom:0;left:0;right:0}.preview-tag{font-size:11px;letter-spacing:.15em;border:1px solid #d2c7b0;padding:5px 10px;color:#73674f}.container{max-width:1320px;margin:auto;padding:50px max(6vw,24px) 60px}.eyebrow{font-size:12px;letter-spacing:.19em;text-transform:uppercase;font-weight:600;margin-bottom:14px;color:var(--gold-dark)}.intro-row{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.intro-row h1{margin-bottom:11px}.intro-row p{color:var(--muted);margin:0}.location-control{min-width:255px}.location-control label{display:block;font-size:11px;font-weight:700;letter-spacing:.15em;margin-bottom:6px;color:var(--muted)}.location-control select{width:100%;border:1px solid #cfd3c8;border-radius:4px;background:var(--white);padding:12px 40px 12px 15px;color:var(--ink);font-size:14px}.feature{display:grid;grid-template-columns:1.13fr 1fr;background:var(--forest);border-radius:8px;overflow:hidden;min-height:430px;box-shadow:0 12px 30px #172e280d}.feature-image{position:relative;min-height:390px;background:url('./assets/crooked-crown.png') center center/cover}.feature-image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#111b1110 30%,#081510c9 100%)}.image-label{position:absolute;left:30px;bottom:26px;color:white;z-index:1}.image-label span{display:block;font-size:11px;letter-spacing:.18em;color:#dfcaaa;margin-bottom:6px}.image-label strong{font:25px var(--serif);font-weight:400}.image-stamp{position:absolute;top:22px;left:24px;z-index:1;background:#f8f5eeee;padding:5px 12px;color:var(--forest);font-size:11px;font-weight:600;letter-spacing:.1em}.feature-content{padding:38px 38px 30px;color:var(--paper);display:flex;flex-direction:column}.feature-content .eyebrow{color:var(--gold);font-size:11px}.feature h2{font-size:clamp(3.4rem,5vw,5rem);line-height:.95;margin:5px 0 24px;letter-spacing:-.025em}.feature h2 em{font-weight:400;color:var(--gold)}.feature-description{color:#c9d5cd;font-size:15px;line-height:1.7;max-width:360px;margin-bottom:25px}.stats-row{display:flex;flex-wrap:wrap;gap:12px 20px;font-size:13px;color:#e1e8df;align-items:center}.stats-row span{display:inline-flex;align-items:center;gap:7px}.icon{width:18px;height:18px;display:inline-block;flex-shrink:0;vertical-align:middle}.feature-bottom{margin-top:auto;padding-top:28px;display:flex;gap:16px;align-items:center;justify-content:space-between}.price{font-size:27px;font-weight:500;line-height:1.1}.price small{font-size:12px;font-weight:400;color:#b4c8bd}.price-caption{display:block;color:#b4c8bd;font-size:11px;margin-top:5px}.button{display:inline-flex;gap:16px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:4px;min-height:48px;padding:12px 21px;background:var(--gold);color:#152d27;font-size:14px;font-weight:650;transition:background .15s,transform .15s}.button:hover{background:#e8cc9f;transform:translateY(-1px)}.button.dark{background:var(--forest);color:white}.button.dark:hover{background:var(--forest-light)}.button.secondary{border-color:var(--line);background:transparent;color:var(--ink)}.button.secondary:hover{background:#eae7df}.button.text-button{border:0;background:transparent;padding:8px;min-height:40px;font-weight:500;color:var(--muted)}.button.wide{width:100%}.section-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:34px 0 16px}.section-row h2{font:22px var(--serif);margin:0}.section-row span{font-size:12px;color:var(--muted)}.coming-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.coming-card{display:flex;gap:18px;align-items:center;padding:20px 24px;border:1px solid var(--line);border-radius:5px;background:#ffffff40}.coming-icon{width:52px;height:52px;display:grid;place-items:center;background:#e8ece2;border-radius:50%;color:#49614e;flex-shrink:0}.coming-icon .icon{width:24px;height:24px}.coming-card h3{font-size:20px;margin:0 0 5px}.coming-card p{font-size:13px;color:var(--muted);margin:0}.soon{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#757b71;white-space:nowrap;margin-left:auto;border:1px solid #d8ddd2;padding:4px 7px}.site-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:25px max(6vw,24px);font-size:11px;color:var(--muted)}.footer-brand{font-family:var(--serif);font-style:italic;font-size:16px;color:#526151}.skip-link{position:fixed;z-index:999;left:16px;top:-100px;background:white;padding:12px}.skip-link:focus{top:8px}.noscript{padding:20px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(100px);opacity:0;background:var(--forest);color:white;padding:12px 22px;border:1px solid var(--gold);border-radius:5px;font-size:14px;z-index:100;transition:.2s;max-width:calc(100vw - 32px)}.toast.show{transform:translateX(-50%) translateY(0);opacity:1}dialog{background:var(--paper);color:var(--ink);border:1px solid #c0bea9;border-radius:8px;width:min(620px,calc(100% - 32px));max-height:85dvh;padding:30px;box-shadow:0 30px 100px #0005}dialog::backdrop{background:#081810ad;backdrop-filter:blur(3px)}.modal-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:18px}.modal-head h2{margin:0;font-size:30px}.close-button{border:1px solid var(--line);background:transparent;width:36px;height:36px;flex-shrink:0;border-radius:50%;font-size:23px;line-height:1}.modal-copy{color:var(--muted);font-size:15px}.instruction-list{padding-left:23px}.instruction-list li{padding:7px}.modal-note{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.empty-state{text-align:center;padding:30px 15px;color:var(--muted)}.empty-state h3{color:var(--ink)}
@media(min-width:1550px){.container{padding-left:40px;padding-right:40px}.feature{min-height:490px}.feature-content{padding:46px 46px 34px}}
@media(max-width:900px){.site-header{height:80px;padding:0 25px}.site-header nav{gap:22px}.nav-link{padding:25px 0}.container{padding:32px 24px 40px}.intro-row{align-items:start}.location-control{min-width:215px}.feature-content{padding:30px 25px}.feature{grid-template-columns:1fr 1fr}.feature-bottom{align-items:start;flex-direction:column}.feature-description{font-size:14px}.coming-card{padding:18px 16px}.soon{display:none}}
@media(max-width:600px){.site-header{height:73px;padding:0 20px;gap:12px}.brand{font-size:13px;gap:9px}.brand-mark{width:35px;height:39px;font-size:27px}.brand em{font-size:10px}.site-header nav{gap:15px}.nav-link{font-size:12px;padding:24px 0}.preview-tag{display:none}.container{padding:28px 20px 36px}.intro-row{display:block;margin-bottom:23px}.intro-row h1{font-size:35px}.intro-row p{font-size:14px}.location-control{margin-top:20px}.location-control label{display:none}.location-control select{padding-top:10px;padding-bottom:10px}.feature{display:block}.feature-image{min-height:215px;background-position:center 52%}.image-label{left:22px;bottom:20px}.image-label strong{font-size:22px}.image-stamp{left:20px;top:18px}.feature-content{padding:26px 24px}.feature h2{font-size:52px;margin-bottom:20px}.feature h2 br{display:none}.feature-description{max-width:none;margin-bottom:20px}.feature-bottom{flex-direction:row;align-items:center;padding-top:27px}.stats-row{gap:12px;font-size:12px}.button{padding:11px 17px;gap:12px}.section-row{margin-top:26px}.section-row span{display:none}.coming-grid{grid-template-columns:1fr;gap:12px}.coming-card h3{font-size:20px}.coming-card p{font-size:13px}.site-footer{padding:22px 20px;flex-direction:column;gap:8px}dialog{padding:24px}.modal-head h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:900px){.coming-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px 14px}.coming-icon{grid-row:span 2}.soon{display:inline-block;grid-column:2;justify-self:start;margin-left:0}}
/* Keep the clue-reading experience comfortable on phones and laptop displays. */
.feature-description,.puzzle-intro,.challenge>p,.story-intro,.hint-note p,.solution-note p{font-size:16px}.stats-row,.coming-card p,.venue-clue strong,.help-row .button,.journey li{font-size:14px}.venue-clue small,.payment-note,.safety-note,.mode-option small,.game-bar-title small{font-size:12px}.field-label,.step-label,.puzzle-heading .eyebrow{font-size:12px}.journey li small,.journey .eyebrow,.timer-label{font-size:11px}.journey li{min-height:56px}.journey li:not(:last-child):after{top:40px;height:25px}
@media(max-width:600px){.stats-row{font-size:13px;gap:12px}.feature-description{font-size:15px}.puzzle-heading .eyebrow{font-size:11px}.game-bar{gap:10px}.timer-label{font-size:10px;width:75px}.game-bar-title span{font-size:20px}.timer{font-size:28px}.help-row>span{font-size:12px}.order-card small{font-size:12px}.step-label{font-size:11px}}
