/* Product preview: original artwork on a fixed hand; supplied packaging panels. */
.hero-card-wrap.product-hero { display:flex;flex-direction:column;align-items:center;width:100%;max-width:640px;justify-self:center;gap:0; }
.product-stage { position:relative;isolation:isolate;width:100%;aspect-ratio:1 / 1.13;animation:productFloat 7s ease-in-out infinite; }
.held-scene { position:absolute;left:-13%;bottom:0;width:104%;aspect-ratio:1122 / 1402;overflow:hidden;z-index:2;mask-image:linear-gradient(to right,transparent,black 7%,black 96%,transparent),linear-gradient(to bottom,black 90%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent,black 7%,black 96%,transparent),linear-gradient(to bottom,black 90%,transparent 100%);-webkit-mask-composite:source-in; }
.held-canvas { position:absolute;width:1122px;height:1402px;transform-origin:top left; }
.held-base,.held-thumb { position:absolute;inset:0;width:1122px;height:1402px;max-width:none; }
.held-faces { position:absolute;inset:0; }
.held-face { position:absolute;left:0;top:0;width:827px;height:1122px;max-width:none;transform-origin:0 0;opacity:0;transition:opacity 1.1s ease;will-change:opacity; }
.held-face.is-active { opacity:1; }
/* Restore the single physical thumb in front of each original card face. */
.held-thumb { clip-path:polygon(0 100%,0 75%,12% 73%,18% 68%,21% 66.3%,24% 65.2%,27% 65.3%,30% 66.5%,32.5% 68.5%,33.8% 71%,33.2% 74%,30% 79%,25% 84%,19% 90%,15% 100%);pointer-events:none; }
.product-box { position:absolute;isolation:isolate;filter:drop-shadow(12px 22px 20px rgba(0,0,0,.5));transform:rotate(7deg); }
.box-front { position:relative;display:block;width:100%;height:auto;z-index:2;box-shadow:inset 0 0 0 1px #fff2; }
.box-side { position:absolute;display:block;left:99.6%;top:0;width:15%;height:100%;object-fit:fill;transform:skewY(-21deg);transform-origin:left top;filter:brightness(.72);z-index:1; }
.hero-box { width:36%;right:4%;top:12%;z-index:1; }
.held-caption { display:flex;align-items:center;justify-content:center;gap:.7rem;flex-wrap:wrap;font-family:Syne,sans-serif;font-size:1.05rem;min-height:3rem;text-align:center; }
.held-rarity { color:var(--gold);font:500 .65rem Outfit,sans-serif;letter-spacing:.1em;text-transform:uppercase;border:1px solid #d4952a55;padding:.35rem .6rem; }
.held-controls { display:flex;gap:.5rem;align-items:center;justify-content:center;color:#ede8e099;font:400 .75rem Outfit,sans-serif; }
.held-controls button { border:1px solid #d4952a45;background:transparent;color:#ede8e0;min-height:44px;min-width:44px;padding:.5rem .8rem;cursor:pointer; }
.held-controls button:hover,.held-controls button:focus-visible { border-color:var(--gold);background:#d4952a14; }
.held-controls span { min-width:3rem;text-align:center; }
.product-note { font:400 .7rem Outfit,sans-serif;color:#ede8e077;text-align:center;margin:.8rem 0 0; }
.drop-product-layout { display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1080px;margin:auto; }
.drop-product-layout .packs-grid.drop-single { max-width:460px;margin:0; }
.pack-product-view { position:relative;width:100%;aspect-ratio:1.1;max-width:520px;isolation:isolate; }
.pack-box { width:48%;left:9%;top:9%;transform:rotate(-8deg);z-index:3; }
.pack-preview-card { position:absolute;width:34%;height:auto;filter:drop-shadow(4px 10px 10px #0008); }
.pack-preview-back { left:54%;top:14%;transform:rotate(13deg);z-index:1; }
.pack-preview-front { left:57%;top:33%;transform:rotate(21deg);z-index:2; }
.preview-group-title { max-width:1120px;margin:0 auto 1.6rem;color:var(--gold);font:500 .78rem Outfit,sans-serif;letter-spacing:.15em;text-transform:uppercase; }
.cards-grid.preview-grid { grid-template-columns:repeat(4,minmax(0,1fr));max-width:1120px;margin-bottom:3.5rem;gap:clamp(.8rem,2vw,1.5rem); }
.preview-grid .kcard-name { font-size:clamp(.85rem,1.2vw,1.15rem); }
.preview-grid .kcard-meta { flex-wrap:wrap;gap:.5rem; }
.kcard-rarity-katha { color:#e5ddc9;border:1px solid #e5ddc950;background:#e5ddc908; }
.preview-note { text-align:center;color:#ede8e099;font:400 1rem Outfit,sans-serif;margin:0 auto 2rem;line-height:1.6; }
@keyframes productFloat { 0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)} }
@media(max-width:960px) { .hero-card-wrap.product-hero{max-width:510px}.drop-product-layout{max-width:800px;gap:2rem}.cards-grid.preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:680px}.preview-group-title{max-width:680px}.preview-grid .kcard-name{font-size:1.05rem} }
@media(max-width:600px) { .hero-card-wrap.product-hero{width:100%;max-width:390px}.hero{gap:1.5rem}.product-stage{aspect-ratio:1 / 1.15}.held-caption{font-size:.9rem}.drop-product-layout{grid-template-columns:minmax(0,1fr);gap:1rem}.pack-product-view{max-width:360px;margin:auto}.drop-product-layout .packs-grid.drop-single{margin:auto}.cards-grid.preview-grid{max-width:100%;gap:.8rem}.preview-grid .kcard-info{padding:.85rem .2rem}.preview-grid .kcard-name{font-size:.87rem}.preview-grid .kcard-deva{font-size:.8rem}.preview-grid .kcard-rarity{font-size:.5rem;letter-spacing:.04em;padding:.3rem}.preview-grid .kcard-series{font-size:.55rem}.preview-group-title{font-size:.7rem;line-height:1.6}.product-note{font-size:.65rem}.hero-box{right:3%;width:36%} }
@media(prefers-reduced-motion:reduce){.product-stage{animation:none}.held-face{transition:none}.hero-fc{animation:none}}
/* Keep the packaging clear of the fixed hand photograph. */
.hero-card-wrap.product-hero { max-width:540px; }
.held-scene { width:94%;left:-22%; }
.hero-box { z-index:3;right:3%;top:15%;width:36%; }
@media(max-width:960px){.hero-card-wrap.product-hero{max-width:510px}}
@media(max-width:600px){.hero-card-wrap.product-hero{max-width:390px}.held-scene{left:-19%;width:94%}.hero-box{right:1%;top:16%;width:34%}}
.held-scene { mask-image:linear-gradient(to right,transparent,black 7%,black 96%,transparent),linear-gradient(to bottom,transparent,black 6%,black 90%,transparent 100%);-webkit-mask-image:linear-gradient(to right,transparent,black 7%,black 96%,transparent),linear-gradient(to bottom,transparent,black 6%,black 90%,transparent 100%); }
.held-face { object-fit:contain;background:#080b1a; }
.preview-grid .kcard-art { aspect-ratio:827 / 1122; }
.preview-grid .kcard-img { width:100%;height:100%;object-fit:contain; }
.preview-grid .kcard-art { position:relative; }
.preview-grid .kcard-img { position:absolute;inset:0; }
@media(max-width:600px){.hero-box{right:7%;width:31%}}

/* Revision: one hand in the opening; product reveal and class guide below. */
.hero-card-wrap.product-hero { max-width:500px; }
.product-stage { aspect-ratio:1122 / 1402; }
.held-scene { left:0;width:100%;bottom:0; }
.pack-product-column { min-width:0; }
.pack-product-view { max-width:430px;margin:auto;aspect-ratio:1.05; }
.pack-box { width:58%;left:17%;top:4%;transform:rotate(-7deg); }
.box-contents { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0 auto 1rem;max-width:430px;gap:1rem;text-align:center; }
.box-contents li { position:relative;display:flex;flex-direction:column;align-items:center;gap:.35rem; }
.box-contents li:not(:last-child)::after { content:'→';position:absolute;right:-.7rem;top:.55rem;color:#d4952a70; }
.box-contents strong { color:var(--gold);font:500 2rem 'Cormorant Garamond',serif; }
.box-contents span { color:#ede8e0b3;font:400 .78rem Outfit,sans-serif; }
.collection-preview-block { max-width:1080px;margin:3.5rem auto 0;padding-top:2rem;border-top:1px solid #d4952a26; }
.collection-preview-heading { display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.7rem;margin-bottom:1.8rem; }
.collection-preview-heading h3 { font:500 1.7rem 'Cormorant Garamond',serif;color:var(--cream,#ede8e0); }
.collection-preview-heading>span { font:400 .75rem Outfit,sans-serif;color:#ede8e080; }
.collection-preview-group { display:grid;grid-template-columns:160px minmax(0,1fr);align-items:center;gap:1.5rem;padding:1.5rem 0; }
.collection-preview-group+.collection-preview-group { border-top:1px solid #d4952a15; }
.collection-preview-group h4 { font:500 .73rem Outfit,sans-serif;color:var(--gold);letter-spacing:.1em;text-transform:uppercase;line-height:1.8; }
.collection-preview-row { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.3rem; }
.collection-preview { margin:0;min-width:0; }
.collection-preview img { display:block;width:100%;height:180px;object-fit:contain;filter:drop-shadow(0 5px 12px #0005); }
.collection-preview figcaption { color:#ede8e0;font:400 .78rem Outfit,sans-serif;text-align:center;line-height:1.6;margin-top:.6rem; }
.collection-preview small { display:block;font-size:.6rem;color:#ede8e080; }
.collection-preview-note { color:#ede8e080;text-align:center;font:400 .78rem/1.7 Outfit,sans-serif;max-width:650px;margin:1.5rem auto 0; }
.class-guide { padding-block:clamp(3rem,6vw,6rem); }
.class-guide .sec-header { margin-bottom:2.5rem; }
.class-guide-intro { font:400 1rem/1.8 Outfit,sans-serif;color:#ede8e0a6;margin:1rem auto 0; }
.class-map { display:grid;grid-template-columns:minmax(0,3fr) minmax(0,1fr);max-width:1180px;margin:0 auto;gap:2rem; }
.class-branch-label { color:var(--gold);font:500 .7rem Outfit,sans-serif;text-transform:uppercase;letter-spacing:.13em;margin:0 0 1.5rem; }
.story-class-flow { list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:0;padding:0; }
.class-node { position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;text-align:center; }
.class-node img { width:100%;max-width:88px;height:122px;object-fit:contain;display:block;margin-bottom:1.2rem; }
.story-class-flow>.class-node:not(:last-child)::after { content:'→';position:absolute;right:-1.1rem;top:52px;color:#d4952a88;font-size:1.1rem; }
.class-node h3 { font:600 1rem Syne,sans-serif;line-height:1.6;margin:.3rem 0 .7rem; }
.class-node h3 span { display:block;color:#d4952a88;font:400 .85rem 'Tiro Devanagari',serif; }
.class-node p { color:#ede8e0a6;font:400 .86rem/1.7 Outfit,sans-serif;max-width:235px; }
.class-node small { display:block;color:#ede8e066;font:400 .66rem/1.7 Outfit,sans-serif;margin-top:.8rem; }
.class-tier { color:#ede8e080;font:400 .58rem Outfit,sans-serif;text-transform:uppercase;letter-spacing:.14em; }
.echo-class-branch { border-left:1px solid #7fd8d035;padding-left:2rem; }
.echo-class-branch .class-branch-label,.echo-class-node .class-tier { color:#7fd8d0; }
.class-guarantees { max-width:900px;margin:2.7rem auto 0;text-align:center;border-top:1px solid #d4952a26;padding-top:2rem; }
.class-guarantees p { color:#ede8e0c9;font:400 .95rem/1.8 Outfit,sans-serif; }
.class-guarantees strong { color:var(--gold);font-weight:500; }
.class-guarantees p.class-footnote { color:#ede8e066;font-size:.75rem;margin-top:.6rem; }
.class-guarantees .collection-tab-btn { display:inline-flex;margin-top:1.2rem; }
.class-guide>.product-note { margin-top:2rem; }
@media(max-width:960px){.hero-card-wrap.product-hero{max-width:440px}.held-scene{left:0;width:100%}.collection-preview-group{grid-template-columns:130px minmax(0,1fr);gap:1rem}.collection-preview img{height:150px}.class-map{grid-template-columns:minmax(0,1fr)}.echo-class-branch{border-left:0;border-top:1px solid #7fd8d035;padding:1.5rem 0 0}.echo-class-node{flex-direction:row;gap:1.5rem;text-align:left;max-width:520px;margin:auto}.echo-class-node img{margin:0}.echo-class-node p{max-width:none}.class-map{gap:1.8rem}}
@media(max-width:600px){.hero-card-wrap.product-hero{max-width:340px}.product-stage{aspect-ratio:1122 / 1402}.held-scene{left:0;width:100%}.pack-box{width:58%;left:17%;top:4%}.pack-product-view{max-width:330px}.box-contents{margin-bottom:1.2rem}.box-contents span{font-size:.68rem}.collection-preview-block{margin-top:2.5rem}.collection-preview-heading{margin-bottom:.7rem}.collection-preview-heading h3{font-size:1.5rem}.collection-preview-group{grid-template-columns:minmax(0,1fr);gap:.7rem}.collection-preview-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem .8rem}.collection-preview img{height:154px}.collection-preview-group h4{font-size:.68rem}.collection-preview figcaption{font-size:.72rem}.collection-preview-note{text-align:left;font-size:.72rem}.story-class-flow{grid-template-columns:minmax(0,1fr);gap:1.8rem}.story-class-flow .class-node{flex-direction:row;gap:1.1rem;text-align:left;padding-bottom:1rem}.class-node img{flex:0 0 75px;width:75px;height:105px;margin:0}.class-node p{max-width:none;font-size:.83rem}.class-node h3{font-size:.95rem;margin-bottom:.4rem}.class-node h3 span{display:inline;margin-left:.5rem;font-size:.8rem}.story-class-flow>.class-node:not(:last-child)::after{content:'↓';left:31px;right:auto;top:auto;bottom:-1.1rem}.class-node small{margin-top:.45rem}.class-guide-intro{font-size:.9rem}.echo-class-node{gap:1.1rem}.echo-class-node h3{font-size:.9rem}.class-guarantees p{font-size:.84rem}.class-guarantees p.class-footnote{font-size:.7rem}.class-map{gap:1.5rem}}

/* Pack details: larger uppercase copy and unambiguous Arabic numerals. */
.drop-product-layout .pack-name { text-transform:uppercase;font-size:clamp(1.35rem,2.1vw,1.8rem);line-height:1.35; }
.drop-product-layout .pack-feats li { text-transform:uppercase;font-size:clamp(.95rem,1.25vw,1.1rem);line-height:1.65;letter-spacing:.025em; }
.drop-product-layout .pack-btn { text-transform:uppercase;font-size:1rem;letter-spacing:.12em; }
.box-contents strong { font-family:Outfit,Arial,sans-serif;font-size:2rem;font-weight:500;font-variant-numeric:lining-nums tabular-nums; }
@media(max-width:600px){.drop-product-layout .pack-name{font-size:1.35rem}.drop-product-layout .pack-feats li{font-size:.95rem;letter-spacing:.015em}.drop-product-layout .pack-btn{font-size:.88rem;letter-spacing:.08em}}

/* Pointer tilt is limited to the box, leaving the contents and CTA stable. */
.pack-product-view { perspective:900px; }
.pack-box { transform:rotate(-7deg) rotateX(var(--box-x,0deg)) rotateY(var(--box-y,0deg));transition:transform .25s ease-out;transform-style:preserve-3d; }
@media(max-width:600px){
 nav{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 .6rem;padding:.65rem var(--page-gutter);}
 .nav-logo{grid-column:1;grid-row:1;}.nav-logo-img{height:25px;max-width:100%;object-fit:contain;}
 .nav-links{display:contents;}.nav-cta{grid-column:2;grid-row:1;font-size:.6rem;letter-spacing:.04em;padding:.5rem .7rem;min-height:44px;}
 .nav-link{grid-row:2;font-size:.6rem;min-height:44px;}
 nav{grid-template-columns:repeat(3,minmax(0,1fr));}.nav-logo{grid-column:1 / 3;}.nav-cta{grid-column:3;white-space:normal;text-align:center;}
 .hero{padding-top:9rem;padding-bottom:3rem;gap:1.5rem;}
 .drop-product-layout .pack-feats li{font-size:1rem;line-height:1.6;}
 .drop-product-layout .pack{padding:1.6rem 1.2rem;}
 .drop-product-layout .pack-btn{min-height:52px;width:100%;}
 section[id]{scroll-margin-top:120px;}
}
@media(prefers-reduced-motion:reduce){.pack-box{transition:none;transform:rotate(-7deg);}}

@media(min-width:601px) and (max-width:960px){.drop-product-layout{grid-template-columns:minmax(0,1fr);max-width:600px}.drop-product-layout .packs-grid.drop-single{width:100%;max-width:600px;margin:auto}}

/* October QC: close the heading-to-details gap without shifting the whole panel. */
.drop-product-layout .pack-deva{margin-bottom:.5rem;}
.drop-product-layout .pack-feats{margin-top:.8rem;}
.drop-product-layout .pack-feats li{align-items:flex-start;}
.drop-product-layout .pack-feats li::before{margin-top:.75em;}
.drop-product-layout .pack:hover{transform:none;}
.platform-touch{display:none;}
@media(pointer:coarse){.platform-desktop{display:none}.platform-touch{display:inline}}
@media(max-width:600px){
 .class-guarantees .collection-tab-btn{max-width:100%;white-space:normal;justify-content:center;text-align:center;line-height:1.6;padding:1rem;}
 .game-platform-note{line-height:1.7;}
 .hero-ctas,.hero-cta-primary{max-width:100%;}
 .held-controls button,.foot-link{min-height:44px;}
 .foot-link{display:inline-flex;align-items:center;}
 #waitlistBox{scroll-margin-top:125px;}
}

/* Phone section transition: avoid stacking desktop breathing room. */
@media(max-width:600px){
 .hero{min-height:auto;padding-bottom:1.5rem;}
 .hero-scroll-cue{display:none;}
 .packs-sec{padding-top:2rem;}
 .packs-sec>.sec-header{margin-bottom:2rem;}
}
