/* More portraits, more play. All section heights follow their content. */
.photo-duo{display:grid;gap:16px}.taste-image.photo-duo>img{aspect-ratio:1.52;transform:rotate(-1.5deg)}.taste-image.photo-duo>img+img{transform:rotate(1.5deg)}.photo-duo .image-sticker{bottom:28px;right:-15px}.formula-photo-duo{display:grid;grid-template-columns:1fr 1fr;gap:4px}.formula-photo-duo img{width:100%;height:auto;aspect-ratio:1.08;object-fit:cover}.facts-photo-duo{display:grid;grid-template-columns:1.4fr 1fr;gap:12px;align-items:stretch}.facts-visual .facts-photo-duo>img{height:100%;aspect-ratio:.86;object-fit:cover}.facts-visual .facts-photo-duo>img+img{aspect-ratio:.62}.play-layout{display:grid;grid-template-columns:.88fr 1.12fr;gap:60px;align-items:start}.play-intro h2{font-size:clamp(42px,4.5vw,65px)}.play-intro>p{font-size:17px;margin-top:24px}.play-intro>p.micro{font-size:13px;margin-top:15px}.play-photo{margin-top:29px}.play-photo>img{aspect-ratio:1.24;object-fit:cover}.play-panel{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:26px;min-width:0}.play-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px}.play-primary,.play-secondary{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;border-radius:28px;font-size:15px;line-height:1.35;font-weight:700;padding:12px 22px;transition:background .2s,transform .2s}.play-primary{background:var(--green);color:#fff}.play-primary:hover:not(:disabled){background:#1e5126;transform:translateY(-2px)}.play-secondary{background:transparent;border:1px solid var(--line)}.play-secondary:hover:not(:disabled){background:var(--peach)}.play-primary:disabled,.play-secondary:disabled{opacity:.45;cursor:default}.play-reset{background:transparent;padding:12px 4px;font-size:13px;text-decoration:underline;text-underline-offset:4px}.game-status{font-size:13px;line-height:1.55;margin-top:15px;min-height:40px;max-width:100%;color:var(--muted)}.game-meter{height:5px;background:#dedfce;border-radius:10px;overflow:hidden}.game-meter>span{display:block;width:100%;height:100%;background:var(--green)}
.catch-section{background:#ffe4cf}.catch-section h2 em{color:#ad4f34}.catch-panel{box-shadow:8px 8px 0 #9b593e14}.play-scoreboard{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px;padding:0 3px 18px}.play-scoreboard>div{display:flex;flex-direction:column;gap:4px}.play-scoreboard>div:not(:first-child){border-left:1px solid var(--line);padding-left:20px}.play-scoreboard span{font-size:13px}.play-scoreboard strong{font-size:37px;line-height:1.2;letter-spacing:-.04em}.play-scoreboard small{font-size:18px;font-weight:400}.catch-arena{position:relative;height:355px;border:1px solid #c77c532b;border-radius:17px;margin-top:18px;background:radial-gradient(ellipse at 20% 10%,#fff9d3 0,transparent 55%),radial-gradient(ellipse at 90% 95%,#ffd0de 0,transparent 65%),#fff0dc;overflow:hidden;isolation:isolate}.catch-fruits,.confetti-layer{position:absolute;inset:0}.catch-fruit{position:absolute;width:66px;height:66px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#ffffffbd;box-shadow:0 5px 12px #9356301c;border:1px solid #fff;transform:translate(-50%,-50%) rotate(var(--fruit-rotation,0deg));padding:5px;touch-action:manipulation;user-select:none;-webkit-user-select:none}.catch-fruit img{width:100%;height:100%;object-fit:contain;pointer-events:none;border-radius:50%}.catch-fruit:hover,.catch-fruit:focus-visible{background:var(--lime);box-shadow:0 0 0 3px var(--green)}.catch-fruit:active{scale:.9}.catch-overlay{position:absolute;inset:0;z-index:2;background:#fff5eada;backdrop-filter:blur(6px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:25px;gap:18px;pointer-events:none}.catch-overlay h3{font-size:35px;max-width:13ch}.catch-overlay p{font-size:16px;max-width:29ch}.catch-overlay .eyebrow{color:var(--green)}.quiet-mode{display:flex;align-items:flex-start;gap:10px;font-size:13px;margin-top:18px;cursor:pointer}.quiet-mode input{width:18px;height:18px;accent-color:var(--green);flex-shrink:0;margin:1px 0 0}.confetti-layer{z-index:4;pointer-events:none;overflow:hidden}.confetti-bit{position:absolute;top:-20px;width:8px;height:15px;border-radius:2px;animation:confetti-fall var(--confetti-duration,1.8s) ease-in var(--confetti-delay,0s) forwards;background:var(--coral)}
.can-motion{position:absolute;inset:11.5%;z-index:1;perspective:850px;touch-action:pan-y;cursor:grab;border-radius:40px}.can-motion:active{cursor:grabbing}.can-tilt{width:100%;height:100%;position:relative;transform:rotateX(var(--can-rx,0deg)) rotateY(var(--can-ry,0deg)) rotateZ(-3deg);transition:transform .16s ease-out;transform-style:preserve-3d}.can-motion .product-cutout{position:relative;width:100%;height:auto;top:auto;left:auto;aspect-ratio:1;animation:none;transform:none;filter:drop-shadow(0 18px 15px #3d482629);pointer-events:none}.can-shine{position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 29%,#ffffff00 39%,#ffffffb0 46%,#ffffff08 54%,transparent 67%);background-position:var(--shine-x,50%) 50%;background-size:200% 100%;mask:url('product-transparent.png') center/contain no-repeat;-webkit-mask:url('product-transparent.png') center/contain no-repeat;mix-blend-mode:soft-light;opacity:.7;transform:translateZ(2px)}.ingredient-buttons{position:relative;z-index:2;width:100%;height:100%;pointer-events:none}.ingredient-node{pointer-events:auto}.can-motion:focus-visible{outline-offset:-25px}.motion-paused .can-tilt{transition:none}
.memory-section{background:#f7f0ff}.memory-section h2 em{color:#785c96}.memory-layout{grid-template-columns:.8fr 1.2fr;gap:50px}.memory-panel{padding:26px}.memory-top{display:flex;align-items:center;gap:28px;padding-bottom:23px}.memory-top>div{display:flex;flex-direction:column;gap:7px}.memory-top strong{font-size:29px;line-height:1;letter-spacing:-.04em}.memory-top .eyebrow{font-size:11px}.memory-top button{margin-left:auto;font-size:13px;padding:11px 16px}.memory-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.memory-card{min-width:0;height:156px;padding:0;background:transparent;border-radius:12px;perspective:600px;text-align:center}.memory-card-inner{position:relative;width:100%;height:100%;transform-style:preserve-3d;transition:transform .4s var(--ease);border-radius:12px}.memory-card.is-open .memory-card-inner{transform:rotateY(180deg)}.memory-card-face{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;border-radius:12px;padding:10px 6px;backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow-wrap:anywhere;border:1px solid #a289b43b;line-height:1.35}.memory-card-back{background:#ede3f7;background-image:radial-gradient(#ffffff90 1px,transparent 1px);background-size:13px 13px}.memory-card-back strong{font-size:33px;font-style:italic;letter-spacing:-.12em;padding-right:5px}.memory-card-back span{font-size:11px;letter-spacing:.07em}.memory-card-front{transform:rotateY(180deg);background:var(--paper);font-size:14px;font-weight:700}.memory-card-front small{font-size:9px;letter-spacing:.03em;font-weight:400;color:var(--muted)}.memory-card.matched .memory-card-front{background:#e0efbb;border:2px solid #598842}.memory-card.matched .memory-card-front:after{content:'✓';font-size:16px;color:var(--green)}.memory-card:hover:not(:disabled) .memory-card-back{background-color:#dac9ec}.memory-fact{margin-top:21px;background:#eee9f3;border-radius:14px;padding:18px;min-height:126px}.memory-fact .eyebrow{font-size:11px;color:#76508b}.memory-fact p{font-size:14px;line-height:1.6;margin-top:9px}.memory-panel.is-complete{border-color:#64964c}.memory-panel.is-complete .memory-fact{background:#e2f0c1}
.break-section{background:#edf3df}.break-layout{align-items:center;gap:70px}.break-layout .play-intro h2{font-size:clamp(39px,4.4vw,64px)}.break-layout .play-photo>img{aspect-ratio:1.5}.breath-panel{padding:10px 5px 0;min-width:0}.breath-stage{position:relative;width:min(440px,100%);aspect-ratio:1;margin:0 auto;display:grid;place-items:center;isolation:isolate}.breath-orbit{position:absolute;inset:3%;border:1px dashed #507d314f;border-radius:50%;animation:rotate 80s linear infinite}.breath-orbit:after{content:'';position:absolute;left:50%;top:-5px;width:9px;height:9px;background:var(--green);border-radius:50%}.breath-circle{position:absolute;inset:10%;border-radius:50%;background:radial-gradient(circle at 32% 27%,#edfbb4,#c9e79b 55%,#b4d082);box-shadow:0 0 0 17px #c3de9724,0 0 0 34px #c3de9714;transform:scale(.74);will-change:transform}.breath-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;pointer-events:none}.breath-copy .eyebrow{font-size:11px;letter-spacing:.08em}.breath-copy strong{font-size:clamp(27px,3.2vw,42px);line-height:1.1;letter-spacing:-.045em}.breath-copy>span:last-child{font-size:14px}.breath-progress{width:80%;margin:14px auto 0;height:4px;border-radius:10px;background:#bbcda645;overflow:hidden}.breath-progress>span{display:block;background:var(--green);height:100%;width:0}.breath-panel .play-controls{justify-content:center;margin-top:27px}.breath-panel .game-status{text-align:center;max-width:none}.breath-stage[data-state=paused] .breath-orbit{animation-play-state:paused}
@keyframes confetti-fall{from{transform:translateY(-20px) rotate(0deg);opacity:1}to{transform:translateY(460px) rotate(580deg);opacity:0}}
@media(max-width:1100px){.play-layout{gap:36px}.play-intro h2{font-size:48px}.play-panel{padding:21px}.memory-layout{grid-template-columns:.75fr 1.25fr;gap:28px}.memory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.memory-card{height:140px}.memory-top{gap:20px}.memory-top button{font-size:12px;padding:9px 13px}.memory-card-front{font-size:13px}.memory-top strong{font-size:26px}.break-layout{gap:40px}.play-controls{gap:8px}.play-primary,.play-secondary{font-size:14px;padding:12px 19px}.play-reset{font-size:12px}}
@media(max-width:850px){.play-layout{grid-template-columns:.85fr 1.15fr;gap:26px}.play-intro h2{font-size:38px}.play-intro>p{font-size:15px}.play-panel{padding:18px}.play-photo>img{aspect-ratio:.87}.catch-arena{height:330px}.play-scoreboard>div:not(:first-child){padding-left:12px}.play-scoreboard strong{font-size:31px}.play-scoreboard span{font-size:12px}.play-primary,.play-secondary{font-size:13px;padding:11px 15px;min-height:44px}.play-controls{gap:8px}.quiet-mode,.game-status{font-size:12px}.catch-overlay h3{font-size:29px}.catch-overlay p{font-size:14px}.memory-layout{grid-template-columns:.75fr 1.25fr}.memory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.memory-card{height:136px}.memory-top{gap:18px;flex-wrap:wrap}.memory-top button{margin-left:0}.memory-top .eyebrow{font-size:10px}.memory-card-front{font-size:13px}.memory-fact{padding:16px}.memory-fact p{font-size:13px}.break-layout{gap:25px}.break-layout .play-intro h2{font-size:38px}.breath-copy strong{font-size:31px}.breath-copy .eyebrow{font-size:9px}.breath-copy>span:last-child{font-size:12px}.breath-copy{gap:10px}.breath-panel .play-controls{gap:8px}.facts-visual .facts-photo-duo>img{aspect-ratio:.7}.facts-visual .facts-photo-duo>img+img{aspect-ratio:.51}}
@media(max-width:640px){.play-layout,.memory-layout{grid-template-columns:1fr;gap:28px}.play-intro h2,.break-layout .play-intro h2{font-size:clamp(38px,10vw,56px);overflow-wrap:normal}.play-intro>p{font-size:16px;margin-top:20px}.play-intro>p.micro{font-size:12px;margin-top:12px}.play-photo{margin-top:23px}.play-photo>img{aspect-ratio:1.58}.play-panel{padding:20px 17px;border-radius:19px}.play-primary,.play-secondary{font-size:14px;padding:12px 17px;min-height:47px}.play-controls{gap:9px;margin-top:20px}.play-reset{font-size:12px}.game-status{font-size:13px;margin-top:14px;min-height:39px}.play-scoreboard strong{font-size:32px}.play-scoreboard span{font-size:12px}.play-scoreboard>div:not(:first-child){padding-left:15px}.catch-arena{height:330px;margin-top:15px}.catch-overlay h3{font-size:31px}.catch-overlay p{font-size:15px}.catch-overlay{gap:16px;padding:21px}.catch-fruit{width:62px;height:62px}.quiet-mode{font-size:12px}.taste-image.photo-duo{grid-template-columns:1fr 1fr;gap:11px;padding:0}.taste-image.photo-duo>img{aspect-ratio:.9;transform:none;border-radius:16px}.taste-image.photo-duo>img+img{transform:none}.photo-duo .image-sticker{width:87px;height:87px;bottom:-10px;right:7px;font-size:17px}.photo-duo .image-sticker em{font-size:23px}.formula-photo-duo img{aspect-ratio:1.1}.facts-photo-duo{grid-template-columns:1.2fr 1fr;gap:12px}.facts-visual .facts-photo-duo>img,.facts-visual .facts-photo-duo>img+img{aspect-ratio:1.02}.memory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.memory-card{height:133px}.memory-card-front{font-size:15px;padding:12px;overflow-wrap:normal;hyphens:auto}.memory-card-front small{font-size:10px}.memory-top{flex-wrap:nowrap;gap:20px;justify-content:space-between}.memory-top .eyebrow{font-size:9px;letter-spacing:.035em}.memory-top strong{font-size:27px}.memory-top button{font-size:12px;padding:10px 14px;min-height:44px}.memory-card-back strong{font-size:38px}.memory-fact{min-height:134px;padding:17px}.memory-fact p{font-size:14px}.break-layout{gap:20px}.breath-panel{padding-top:0}.breath-stage{width:min(385px,100%)}.breath-copy strong{font-size:35px}.breath-copy .eyebrow{font-size:11px}.breath-copy>span:last-child{font-size:14px}.breath-copy{gap:13px}.breath-panel .play-controls{gap:8px}.breath-panel .game-status{min-height:20px}.break-layout .play-photo>img{aspect-ratio:1.6}.can-motion{touch-action:pan-y}}
@media(max-width:360px){.play-intro h2,.break-layout .play-intro h2{font-size:35px}.play-panel{padding:18px 13px}.catch-fruit{width:58px;height:58px}.play-primary,.play-secondary{font-size:12px;padding:11px 13px}.play-reset{font-size:11px}.memory-top{gap:13px}.memory-top button{font-size:11px;padding:10px}.memory-card{height:135px}.memory-card-front{font-size:14px;padding:10px}.breath-copy strong{font-size:31px}.breath-copy .eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){.can-tilt,.memory-card-inner{transition:none}.breath-circle{will-change:auto}.confetti-bit{display:none}}
@media print{.play-controls,.quiet-mode,.can-shine{display:none}.memory-card-inner{transform:rotateY(180deg)!important}.catch-arena{height:260px}}

.play-jumps{display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;padding:20px 25px;background:var(--paper);border-bottom:1px solid var(--line)}.play-jumps>span{font-size:11px;font-weight:700;letter-spacing:.1em;margin-right:9px}.play-jumps a{font-size:13px;line-height:1.3;border:1px solid var(--line);border-radius:25px;padding:10px 15px;text-decoration:none}.play-jumps a:hover{background:var(--lime)}.memory-card-front{overflow-wrap:anywhere;hyphens:auto}@media(max-width:640px){.play-jumps{padding:17px 18px;gap:7px}.play-jumps>span{width:100%;text-align:center;margin-bottom:3px}.play-jumps a{font-size:12px;padding:9px 12px}}

.memory-card.matched .memory-card-front{box-shadow:0 0 18px #90c65d55}.memory-card-front{font-size:14px}@media(max-width:640px){.memory-card-front{font-size:15px}}
