
:root{color-scheme:dark;--bg:#101b1c;--panel:#192729;--ink:#f4eee1;--muted:#b4bfba;--gold:#e9bd72}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.9 Tahoma,Arial,sans-serif}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{border-bottom:1px solid #ffffff18}nav{max-width:1080px;margin:auto;padding:23px 24px;display:flex;justify-content:space-between;align-items:center}a{color:inherit;text-decoration:none}.brand{font-weight:bold}.brand span{color:var(--gold);margin-left:12px}.navlink{font-size:13px;color:var(--muted)}main{max-width:1080px;margin:auto;padding:0 24px}.hero{padding:70px 0 45px;display:grid;grid-template-columns:1.5fr 1fr;gap:30px;align-items:center}.eyebrow{color:var(--gold);font-size:13px;letter-spacing:1px}h1{font-size:clamp(32px,5vw,57px);line-height:1.5;margin:16px 0}h1 em{font-style:normal;color:var(--gold)}.intro{color:var(--muted);max-width:520px}.visual{display:grid;place-items:center;min-height:220px;background:radial-gradient(ellipse,#e9bd7214,transparent 68%)}.keyhole{width:145px;height:145px;border:1px solid #e9bd7260;transform:rotate(45deg);display:grid;place-items:center;box-shadow:0 0 0 17px #e9bd7205,0 0 0 18px #e9bd7218}.keyhole svg{width:58px;transform:rotate(-45deg);fill:var(--gold)}.notice{border-right:3px solid var(--gold);padding:12px 18px;background:#e9bd7209;color:#d5c7ad;font-size:13px;margin-bottom:38px}.sectiontop{display:flex;justify-content:space-between;gap:20px;align-items:end;margin-bottom:20px}h2{font-size:25px;margin:0}.subtitle{color:var(--muted);font-size:13px;margin:4px 0}.search{border:1px solid #ffffff25;background:transparent;color:var(--ink);padding:10px 15px;border-radius:8px;width:245px}.puzzle{border:1px solid #ffffff1d;border-radius:12px;margin-bottom:14px;background:var(--panel);overflow:hidden}.puzzle>summary{list-style:none;display:flex;align-items:center;gap:18px;padding:22px;cursor:pointer}.puzzle>summary::-webkit-details-marker{display:none}.number{font:22px Georgia,serif;color:var(--gold);border-left:1px solid #ffffff20;padding-left:18px}.name{flex:1}.name strong{display:block;font-size:17px}.name small{color:var(--muted);font-size:12px}.plus{color:var(--gold);font-size:25px}.puzzle[open] .plus{transform:rotate(45deg)}.inside{padding:0 22px 24px}.steps{display:flex;gap:8px;flex-wrap:wrap;margin:3px 0 18px}.step{background:#ffffff08;border:1px solid #ffffff20;color:var(--ink);padding:9px 16px;border-radius:7px}.step[aria-expanded=true]{border-color:var(--gold);color:var(--gold)}.hint{border:1px dashed #e9bd7250;padding:17px 20px;border-radius:8px;margin-top:10px;color:#ddd9cb}.hint b{display:block;color:var(--gold);font-size:13px}.answer{margin-top:20px;border-top:1px solid #ffffff18;padding-top:16px}.answer summary{cursor:pointer;color:#efb4a6;font-size:14px}.answer p{background:#efb4a609;padding:15px;border-radius:8px}.empty{color:var(--muted);padding:30px 0}.how{margin:55px 0;padding:25px 0;border-top:1px solid #ffffff20}.how p{color:var(--muted);font-size:14px}.how h2{font-size:19px}footer{border-top:1px solid #ffffff18;padding:23px;text-align:center;color:var(--muted);font-size:12px}[hidden]{display:none!important}@media(max-width:640px){.hero{grid-template-columns:1fr;padding-top:40px}.visual{display:none}.sectiontop{align-items:stretch;flex-direction:column}.search{width:100%}.puzzle>summary{padding:17px;gap:12px}.inside{padding:0 17px 20px}.step{padding:8px 12px}nav{padding:18px 24px}.navlink{font-size:11px}}
.hint,.answer p{white-space:pre-line;overflow-wrap:anywhere;line-height:2.1}.answer p{margin-bottom:0}.group{font-size:15px;color:var(--gold);margin:30px 0 13px}.name small{display:block}.answer summary{padding:6px 0}.search{max-width:100%}@media(max-width:640px){.brand{font-size:13px}.name strong{font-size:15px}.hint,.answer p{font-size:14px}.number{font-size:19px}}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;margin:25px 0 65px}.envelope-card{display:block;border:1px solid #ffffff24;border-radius:15px;background:var(--panel);overflow:hidden;transition:transform .2s,border-color .2s}.envelope-card:hover{transform:translateY(-5px);border-color:var(--gold)}.cover{position:relative;overflow:hidden;aspect-ratio:3/2}.cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s}.envelope-card:hover img{transform:scale(1.04)}.badge{position:absolute;right:15px;top:15px;border:1px solid #e9bd7260;background:#101b1ce8;padding:3px 12px;border-radius:30px;font-size:12px;color:var(--gold)}.card-copy{padding:22px}.card-copy h2{font-size:24px}.card-copy .label{color:var(--gold);font-size:12px;margin-bottom:4px}.card-copy p{color:var(--muted);font-size:14px;min-height:55px;margin:12px 0 22px}.card-cta{color:var(--gold);font-size:14px;display:flex;justify-content:space-between;border-top:1px solid #ffffff18;padding-top:15px}.landing-hero{padding:65px 0 28px}.landing-hero h1{margin-bottom:12px}.landing-hero p{max-width:650px;color:var(--muted)}.breadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin:26px 0}.breadcrumb a{color:var(--gold)}.page-hero{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:center;margin:28px 0 32px}.page-hero img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:12px;border:1px solid #ffffff18}.page-hero h1{font-size:42px;margin:10px 0}.page-hero p{color:var(--muted);font-size:14px}.page-nav{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff20;padding:25px 0;margin-top:45px;color:var(--gold);font-size:14px}.home-note{font-size:13px;color:var(--muted);border-top:1px solid #ffffff20;padding:20px 0 40px}@media(max-width:800px){.cards{gap:15px}.card-copy{padding:17px}.card-copy h2{font-size:21px}}@media(max-width:640px){.cards{grid-template-columns:1fr;margin-bottom:35px}.card-copy p{min-height:0}.landing-hero{padding-top:35px}.page-hero{grid-template-columns:1fr;gap:18px}.page-hero img{max-height:220px;order:-1}.page-hero h1{font-size:32px}.navlink{max-width:105px}.card-copy{padding:22px}}