.header-shop{display:flex;align-items:center;gap:20px;border:1px solid oklch(1 0 0/.5);border-radius:99px;padding:11px 18px;font-size:.8rem;white-space:nowrap;transition:background .25s,color .25s}.header-shop:hover{background:white;color:var(--ink)}.header-shop span{font-size:1.25rem}.product-ribbon{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 5.5vw;border-bottom:1px solid var(--line)}.product-ribbon p{display:flex;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.07em}.stock-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;background:currentColor;border-radius:50%}.product-ribbon a{font-size:.85rem}.product-ribbon a span{margin-left:28px;color:var(--blue)}
.shop{padding-top:40px}.shop-heading,.occasions-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:56px}.shop-heading h2,.occasions-heading h2{font-size:clamp(3.6rem,6.5vw,7.4rem);margin-top:25px}.shop-heading>p,.occasions-heading>p{font-size:.92rem;line-height:1.7;max-width:330px;padding-bottom:5px}.shop-layout{display:grid;grid-template-columns:1.17fr .83fr;align-items:start;gap:7%}.product-gallery{border-radius:28px;overflow:hidden;background:#f4efe9}.product-photo-stage{position:relative;aspect-ratio:1;isolation:isolate}.product-photo-stage img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.product-photo-stage img[hidden]{display:none}.product-photo-caption{display:flex;justify-content:space-between;gap:18px;padding:20px 26px;font-size:.64rem;letter-spacing:.06em;border-top:1px solid oklch(.3 .01 50/.1)}.product-info{padding-top:8px}.product-info h3{font-size:clamp(3.6rem,5.1vw,5.6rem);margin-top:24px}.product-intro{color:oklch(.42 .008 270);font-size:.94rem;line-height:1.7;margin:25px 0 30px;max-width:390px}.pack-options{border:0;padding:0;margin:0;min-width:0}.pack-options legend{font-size:.8rem;font-weight:500;margin-bottom:12px}.pack-option{position:relative;display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--line);border-radius:14px;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s;margin-bottom:10px;min-height:80px}.pack-option input{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.pack-option:has(input:checked){border-color:var(--blue);background:oklch(.975 .012 266);box-shadow:inset 0 0 0 1px var(--blue)}.pack-option:has(input:focus-visible){outline:3px solid var(--blue);outline-offset:4px}.pack-option-mark{width:16px;height:16px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.pack-option:has(input:checked) .pack-option-mark{border-color:var(--blue)}.pack-option:has(input:checked) .pack-option-mark:after{content:'';width:8px;height:8px;border-radius:50%;background:var(--blue)}.pack-option strong{display:block;font-size:.94rem;font-weight:600;line-height:1.5}.pack-option small{display:block;font-size:.75rem;color:oklch(.46 .008 270);line-height:1.5}.pack-option-price{margin-left:auto;flex-shrink:0;font-size:.92rem;font-variant-numeric:tabular-nums}.product-price-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:22px 0}.product-price{display:flex;align-items:baseline;gap:13px}.product-price>span:first-child{font-family:var(--display);font-size:3.5rem;font-weight:700;line-height:1;font-variant-numeric:tabular-nums}.product-price>span:last-child{font-size:.65rem;color:oklch(.46 .008 270)}.sold-out{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:99px;padding:7px 12px;font-size:.7rem;white-space:nowrap}.waitlist-button{display:flex;width:100%;align-items:center;justify-content:space-between;gap:20px;min-height:58px;border-radius:12px;padding:17px 23px;background:var(--blue);color:white;font-size:.94rem;font-weight:500;text-align:left;transition:background .25s,box-shadow .25s,transform .25s}.waitlist-button>span{font-size:1.45rem;line-height:1;transition:transform .25s}.waitlist-button:hover{background:oklch(.43 .22 266);box-shadow:0 8px 24px oklch(.51 .25 266/.18)}.waitlist-button:hover>span{transform:translate(3px,-3px)}.waitlist-button:active{transform:scale(.985)}.product-availability{text-align:center;color:oklch(.46 .008 270);font-size:.72rem;margin-top:14px;line-height:1.6}.pack-inclusions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--line);margin-top:25px;padding-top:19px;font-size:.68rem;color:oklch(.55 .008 270)}.pack-inclusions strong{margin-left:7px;font-size:.76rem;color:var(--ink);font-weight:500}
.occasions{padding-bottom:65px}.occasion-gallery{display:grid;grid-template-columns:1fr 1fr;gap:26px}.occasion-card{position:relative;overflow:hidden;background:var(--ink);color:white;border-radius:26px}.occasion-game{grid-column:1/-1;display:grid;grid-template-columns:1.22fr 1fr;align-items:stretch}.occasion-photo{position:relative;aspect-ratio:3/2;overflow:hidden;background:oklch(.23 .01 270)}.occasion-photo img{width:100%;height:100%;object-fit:cover;will-change:transform}.occasion-game .occasion-photo{aspect-ratio:3/2;min-height:0}.occasion-game .occasion-photo img{position:absolute;inset:0;object-position:center}.occasion-card-shade{display:none}.occasion-caption{position:relative;padding:30px 34px 35px}.occasion-game .occasion-caption{display:flex;flex-direction:column;justify-content:center;padding:46px}.occasion-caption .eyebrow{font-size:.68rem;letter-spacing:.08em;color:oklch(.74 .01 270)}.occasion-caption h3{font-size:clamp(3rem,4.2vw,5rem);margin:22px 0 19px}.occasion-caption p{font-size:.85rem;line-height:1.6;color:oklch(.83 .006 270);padding-right:45px}.occasion-caption a{position:absolute;right:30px;bottom:29px;display:grid;place-items:center;width:38px;height:38px;border:1px solid oklch(1 0 0/.35);border-radius:50%;font-size:1.3rem;transition:background .2s,color .2s,transform .2s}.occasion-caption a:hover{background:white;color:var(--ink);transform:rotate(5deg)}.occasion-caption a:focus-visible{outline-color:white}.occasion-outro{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px}.occasion-outro>p{font-size:.95rem}.questions details a{text-decoration:underline;text-underline-offset:3px;color:var(--blue)}
.waitlist-dialog{position:fixed;border:0;border-radius:26px;padding:48px;width:min(540px,calc(100% - 32px));max-height:calc(100svh - 32px);background:var(--paper);color:var(--ink);overflow-y:auto;overscroll-behavior:contain;box-shadow:0 28px 100px oklch(0 0 0/.22)}.waitlist-dialog::backdrop{background:oklch(.1 .01 270/.68);backdrop-filter:blur(8px)}.dialog-close{position:absolute;top:14px;right:15px;width:40px;height:40px;border-radius:50%;font-size:1.9rem;font-weight:300;line-height:1;display:grid;place-items:center;background:oklch(.94 .005 270)}.dialog-close:hover{background:oklch(.9 .01 270)}.waitlist-dialog>.eyebrow{font-size:.7rem;padding-right:25px}.waitlist-dialog h2{font-size:clamp(3.6rem,9vw,5.1rem);margin:26px 0}.waitlist-selection{display:flex;justify-content:space-between;align-items:center;gap:20px;border-block:1px solid var(--line);padding:17px 0;margin:24px 0;font-size:.8rem}.waitlist-selection strong{white-space:nowrap;font-weight:600}.waitlist-dialog>p:not(.eyebrow){line-height:1.7;font-size:.9rem}.waitlist-dialog>.waitlist-button{margin-top:25px}.waitlist-dialog .waitlist-footnote{color:oklch(.46 .008 270);font-size:.7rem!important;margin-top:17px}.dialog-open{overflow:hidden}
@media(max-width:1050px){.site-header nav{gap:20px;font-size:.8rem}.shop-heading,.occasions-heading{align-items:flex-start;flex-direction:column;gap:25px}.shop-heading>p,.occasions-heading>p{max-width:100%}.shop-layout{gap:5%;grid-template-columns:1fr 1fr}.product-info h3{font-size:3.7rem}.product-intro{margin-block:20px}.pack-option{padding:15px 13px;gap:10px}.product-price{gap:9px}.product-price>span:first-child{font-size:3rem}.product-price-row{gap:10px}.occasion-game .occasion-caption{padding:30px}.occasion-caption h3{font-size:3.5rem}.occasion-caption{padding:27px}.occasion-caption a{right:22px;bottom:22px}.pack-inclusions strong{display:block;margin:5px 0 0}}
@media(max-width:700px){.header-shop{padding:10px 13px;font-size:.72rem;gap:15px}.product-ribbon{padding:20px 6%;gap:13px;align-items:flex-start;flex-direction:column}.product-ribbon p{font-size:.65rem}.product-ribbon a{font-size:.76rem}.product-ribbon a span{display:block;margin:7px 0 0}.shop{padding-top:0}.shop-heading,.occasions-heading{margin-bottom:32px}.shop-heading h2,.occasions-heading h2{font-size:clamp(3.25rem,11.8vw,5rem);margin-top:22px}.shop-heading>p,.occasions-heading>p{font-size:.875rem}.shop-layout{display:block}.product-gallery{border-radius:22px}.product-photo-caption{padding:17px 20px;font-size:.59rem}.product-info{padding-top:34px}.product-info h3{font-size:3.8rem;margin-top:20px}.product-intro{max-width:100%;font-size:.9rem}.pack-option{padding:17px 16px}.pack-option strong{font-size:.92rem}.pack-option small{font-size:.72rem}.product-price-row{margin:24px 0}.product-price>span:first-child{font-size:3.4rem}.pack-inclusions strong{display:inline;margin:0 0 0 5px}.occasions{padding-bottom:35px}.occasion-gallery{display:block}.occasion-card{margin-bottom:24px;border-radius:22px}.occasion-game{display:block}.occasion-game .occasion-photo{min-height:0;aspect-ratio:3/2}.occasion-game .occasion-photo img{position:static}.occasion-caption,.occasion-game .occasion-caption{display:block;padding:28px}.occasion-caption h3{font-size:3.35rem;margin-block:20px 16px}.occasion-caption p{font-size:.82rem}.occasion-outro{align-items:flex-start;flex-direction:column;gap:10px}.occasion-outro>p{font-size:.9rem}.waitlist-dialog{padding:39px 25px 28px;border-radius:22px}.waitlist-dialog h2{font-size:4rem}.waitlist-selection{font-size:.76rem;gap:12px}}
@media(prefers-reduced-motion:reduce){.occasion-photo img{will-change:auto}.waitlist-dialog::backdrop{backdrop-filter:none}}

.waitlist-form{margin-top:25px}.waitlist-form label{display:flex;justify-content:space-between;gap:12px;font-size:.78rem;font-weight:500;margin-bottom:9px}.waitlist-form label span{color:oklch(.46 .008 270);font-size:.7rem;font-weight:400}.waitlist-form input{display:block;width:100%;min-width:0;min-height:52px;border:1px solid var(--line);border-radius:11px;background:oklch(1 0 0/.6);color:var(--ink);font:inherit;font-size:1rem;padding:14px 16px;margin-bottom:20px;transition:border-color .2s,box-shadow .2s,background .2s}.waitlist-form input:focus{outline:0;border-color:var(--blue);background:oklch(1 0 0);box-shadow:0 0 0 3px oklch(.51 .25 266/.12)}.waitlist-form input::placeholder{color:oklch(.5 .008 270)}.waitlist-form input:disabled{opacity:.6}.waitlist-form .waitlist-button{margin-top:25px}.waitlist-button b{font-weight:500}.waitlist-button:disabled{cursor:wait;opacity:.65;transform:none;box-shadow:none}.waitlist-success{padding-top:23px}.waitlist-success[hidden],.waitlist-form[hidden]{display:none}.waitlist-check{display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--blue);color:white;margin-bottom:16px}.waitlist-check svg{width:32px;height:32px}.waitlist-success p{font-size:.8rem;line-height:1.7;overflow-wrap:anywhere;color:oklch(.42 .008 270)}.waitlist-success .waitlist-button{margin-top:25px}.waitlist-preview-tag{display:inline-block;background:oklch(.93 .014 266);color:var(--blue);border-radius:5px;padding:2px 6px;margin-right:5px;font-weight:600}.waitlist-dialog .waitlist-footnote{line-height:1.65}
