:root{--ink:#291c17;--night:#0c1723;--ivory:#f8efdE;--gold:#e7c88d;--serif:"Songti SC","STSong","Noto Serif CJK SC",serif;--sans:-apple-system,BlinkMacSystemFont,"PingFang SC",sans-serif;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:var(--night);color:var(--ivory);font-family:var(--sans);font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:5px}button{color:inherit}a{color:inherit;text-decoration:none}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}main{max-width:760px;margin:auto;overflow:hidden}.hero{position:relative;isolation:isolate;min-height:720px;background:#192d46;overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(#07111b69,#07111b20 32%,#100c0610 63%,#100c07c9)}.topbar{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:#0c172359;position:relative}.icon-button{width:44px;height:44px;border:0;background:none;display:grid;place-items:center}.icon-button svg{width:27px;height:27px}.hero-heading{text-align:center;padding:32px 14px 0;position:relative;z-index:2;pointer-events:none;text-shadow:0 2px 14px #000b}.hero-heading .eyebrow{font-family:Georgia,serif;font-size:10px;letter-spacing:.18em;color:#e2c895;margin:0 0 12px;opacity:.85}.hero-heading .hero-title-spacer{font-family:var(--serif);font-size:clamp(29px,7.5vw,49px);font-weight:500;line-height:1.35;letter-spacing:.01em;margin:0 0 10px}.hero-heading p{font-family:var(--serif);font-size:17px;letter-spacing:.08em;margin:0;color:#f7eddb}.stage-wrap{position:relative;height:clamp(325px,89vw,500px);margin-top:2px}.wand-stage{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;padding:0;background:none;border:none;touch-action:pan-y;cursor:pointer}.wand-stage:focus-visible{outline-offset:-10px;border-radius:20px}canvas{display:block;width:100%;height:100%}.loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--gold);z-index:3;pointer-events:none;font-family:var(--serif)}.loading-star{font-size:48px;animation:breath 2s infinite}.loading progress{width:120px;height:3px;accent-color:var(--gold)}.loading button{pointer-events:auto;background:#1c2835;border:1px solid #e7c88d66;border-radius:6px;padding:10px 20px}.loading[hidden]{display:none}.stage-shadow{position:absolute;bottom:17px;left:23%;width:54%;height:17px;border-radius:100%;background:#0009;filter:blur(11px);opacity:.6}.hero-actions{position:relative;z-index:3;padding:5px 26px 26px;text-align:center}.speech{min-height:49px;display:flex;justify-content:center;align-items:center;gap:9px;margin-bottom:14px;font-family:var(--serif);font-size:17px;color:#ffecd1;text-shadow:0 1px 10px #000;transition:opacity .2s}.speech.speaking{color:#ffe1a0}.speech svg{width:24px;height:24px;flex:none}.primary-button{width:100%;height:56px;border:none;background:linear-gradient(115deg,#fff5df,#edd4a7);border-radius:11px;font-family:var(--serif);font-size:23px;letter-spacing:.08em;color:#352217;box-shadow:0 6px 28px #0003;display:flex;align-items:center;justify-content:center;gap:20px}.primary-button:active{transform:scale(.985)}.shop-link{display:inline-flex;align-items:center;gap:15px;margin-top:23px;padding-bottom:5px;border-bottom:1px solid #e6d5b7;font-family:var(--serif);font-size:18px}.collection{background:var(--ivory);color:var(--ink);padding:30px 18px calc(36px + env(safe-area-inset-bottom))}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:22px}.section-title h2{font-family:var(--serif);font-size:29px;font-weight:600;margin:0}.section-title h2 span{font-size:19px;color:#bc8a47;padding-left:6px}.section-title button{background:none;border:0;padding:10px 0;font-family:var(--serif);font-size:14px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.product{padding:0;border:0;background:transparent;color:var(--ink);text-align:center}.product-image{aspect-ratio:1/1.05;border-radius:6px;background-color:#ebe1ce;background-repeat:no-repeat}.hat-product{background-image:url(./hat-product-Hu44EEB-.webp);background-size:contain;background-position:center;mix-blend-mode:multiply}.book-product{background-image:url(./reference-DfM16vwk.webp);background-size:225.1% 545.6%;background-position:92.4% 86.6%}.product h3{font-family:var(--serif);font-size:18px;font-weight:500;margin:13px 0 6px}.product p{margin:0;font-size:12px;color:#827060}dialog{border:1px solid #d2b078;background:#f8efde;color:var(--ink);border-radius:14px;width:calc(100% - 38px);max-width:380px;padding:30px 25px}dialog::backdrop{background:#060a11b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.close-dialog{position:absolute;right:8px;top:5px;background:none;border:0;font-size:28px;width:40px;height:40px}.dialog-kicker{font-size:12px;letter-spacing:.16em;color:#9a754b}dialog h2{font-family:var(--serif);font-size:28px}dialog p{line-height:1.8}dialog .dialog-action{width:100%;min-height:46px;background:#30251e;color:#f6e7c7;border:0;border-radius:6px}.toast{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,15px);z-index:30;background:#16202bea;color:var(--ivory);border:1px solid #d8bd8355;border-radius:8px;padding:12px 18px;font-size:14px;opacity:0;pointer-events:none;max-width:90%;transition:.25s}.toast.show{opacity:1;transform:translate(-50%)}@keyframes breath{50%{opacity:.4;transform:scale(.92)}}@media (min-width:761px){body{background:#080e15}main{box-shadow:0 0 100px #000}.hero{min-height:930px}.hero-heading{padding-top:45px}.stage-wrap{height:490px}.hero-actions{max-width:540px;margin:auto}.collection{padding:42px 48px calc(48px + env(safe-area-inset-bottom))}.section-title h2{font-size:36px}.product-grid{gap:26px}.topbar{padding:0 26px}}@media (max-width:360px){.hero-heading .hero-title-spacer{font-size:27px}.hero-heading p{font-size:15px}.stage-wrap{height:310px}.hero-actions{padding-left:20px;padding-right:20px}.section-title h2{font-size:25px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}.scene-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;width:100%;height:100%;pointer-events:none}.topbar{z-index:5}.stage-shadow{width:38%;left:31%;opacity:.3}.stage-wrap{z-index:2}.hero-actions{z-index:3}.hero{min-height:0}.product-rows{display:flex;flex-direction:column}.product-row{width:100%;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:204px;gap:4px;padding:15px 0;border:0;border-top:1px solid #ddceb5;background:transparent;color:var(--ink);text-align:left}.product-row:last-child{border-bottom:1px solid #ddceb5}.product-art{min-width:0;display:grid;place-items:center;aspect-ratio:1/1;max-height:285px;overflow:hidden;border-radius:9px}.product-art img{display:block;width:100%;height:100%;max-height:285px;object-fit:contain;mix-blend-mode:multiply;transition:transform .35s ease}.product-copy{padding:12px 6px 12px 20px;min-width:0}.product-row-reverse .product-copy{padding-left:12px;padding-right:8px}.product-copy h3{font-family:Georgia,var(--serif);font-size:clamp(24px,6.6vw,38px);font-weight:500;line-height:1.15;margin:0 0 14px;letter-spacing:0;overflow-wrap:normal}.product-copy h3:last-child{margin-bottom:0}.product-price{margin:0;color:#352217;font-family:var(--sans);font-size:clamp(12px,3.5vw,20px);line-height:1.5;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.product-price .woocommerce-Price-amount{white-space:nowrap}.product-row:active .product-art img{transform:scale(.97)}@media (hover:hover){.product-row:hover .product-art img{transform:translateY(-4px) scale(1.025)}}@media (min-width:761px){.product-row{min-height:300px;gap:24px;padding:22px 0}.product-copy{padding-left:38px}.product-row-reverse .product-copy{padding-left:26px}}@media (max-width:360px){.product-row{min-height:182px}.product-copy{padding-left:13px}.product-copy h3{font-size:26px}}.snitch-stage{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:2;touch-action:pan-y;cursor:grab;border-radius:20px;outline-offset:-6px}.snitch-stage:active{cursor:grabbing}.snitch-stage:focus-visible{outline:2px solid var(--gold)}#snitchCanvasHost canvas{pointer-events:none}.hero{--castle-offset: calc(clamp(25px,4.5vw,40px) - 20px) ;background:linear-gradient(180deg,#15243a,#243b57 35%,#192d46)}.hero:after{content:"";position:absolute;inset:var(--castle-offset) 0 calc(0px - var(--castle-offset));z-index:-2;pointer-events:none;background:url(./hogwarts-castle-BJ2Qwwmy.webp) center top/cover no-repeat;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 50px);mask-image:linear-gradient(to bottom,transparent,#000 50px)}.product-row[data-product=spoon] .product-art img,.product-row[data-product=orb] .product-art img,.product-row[data-product=alley] .product-art img{mix-blend-mode:normal;max-width:285px}.product-price .screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.hero-actions .speech{font-family:Georgia,var(--serif);font-size:clamp(14px,3.8vw,18px);letter-spacing:0}.hero-actions .primary-button{font-family:Georgia,var(--serif);font-size:clamp(19px,5vw,24px);letter-spacing:.015em;gap:0;color:#f0dbb2;background:radial-gradient(ellipse at 28% 0%,#afc6dc20,transparent 62%),linear-gradient(115deg,#162b3da8,#0b17268c 58%,#243b4999);border:1px solid #cfb68080;border-radius:9px;box-shadow:inset 0 1px #fff3cc21,inset 0 -1px #050e1940,0 5px 18px #030a1433;text-shadow:0 1px 5px #03091499;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);transition:border-color .18s,box-shadow .18s}@media (hover:hover){.hero-actions .primary-button:hover{border-color:#e4cb95c9;box-shadow:inset 0 1px #fff3cc30,0 4px 20px #c5a56b16}}.hero-actions .primary-button:focus-visible{outline:2px solid #f0d9a7;outline-offset:4px}.home-footer{display:flex;align-items:center;gap:24px;padding:18px 26px;background:linear-gradient(110deg,#bd914522,#aa784015),var(--ivory);color:var(--ink);border:0;box-shadow:inset 0 1px #b99a6630}.home-footer .hp-site-logo{flex-shrink:0}.home-footer-links{display:flex;flex:1;min-width:0;align-items:center;justify-content:space-between;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#b69a72 #eee2ca;padding:4px 0 8px}.home-footer-links a{display:inline-flex;align-items:center;flex:none;min-height:44px;white-space:nowrap;font-family:Georgia,var(--serif);font-size:14px;color:#5b4632;text-decoration:none}.home-footer-links a:hover{color:#946828}@media (max-width:639px){.home-footer{gap:16px;padding:14px 18px;padding-bottom:max(14px,env(safe-area-inset-bottom))}.home-footer-links{justify-content:flex-start;gap:18px}.home-footer-links a{font-size:13px}}.collection{padding-bottom:0}@media (min-width:761px){.home-footer{padding-left:48px;padding-right:48px}}
