/* Motion added to the earlier modern design */
.hero-art{overflow:hidden}.hero-art img{animation:hero-breathe 14s ease-in-out infinite;transform-origin:50% 40%}.hero-copy .eyebrow{animation:entrance .65s both}.hero-copy h1{animation:entrance .85s .1s both}.hero-copy .tagline{animation:entrance .85s .2s both}.hero-copy>p:not(.eyebrow):not(.tagline){animation:entrance .85s .3s both}.hero-purchase,.hero-copy>.caption{animation:entrance .85s .4s both}
@keyframes entrance{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.035)}}
.motion-ready .reveal{opacity:0;transform:translateY(30px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}
.hero-art figcaption{z-index:2}.format-cover{height:200px;max-width:100%;width:auto;object-fit:contain;margin:8px auto 25px;filter:drop-shadow(8px 14px 10px #3a241625);animation:cover-float 8s ease-in-out infinite}.print-cover{animation-delay:-3s}.cover-collection{height:233px;display:flex;align-items:center;justify-content:center;position:relative}.cover-collection img{width:45%;height:180px;object-fit:contain;position:absolute;transition:transform .7s cubic-bezier(.2,.7,.2,1)}.cover-collection img:nth-child(1){left:0;transform:rotate(-12deg)}.cover-collection img:nth-child(2){width:52%;height:205px;z-index:2;animation:cover-float 9s ease-in-out infinite}.cover-collection img:nth-child(3){right:0;transform:rotate(12deg)}.featured:hover .cover-collection img:nth-child(1){transform:translateX(-7px) rotate(-16deg)}.featured:hover .cover-collection img:nth-child(3){transform:translateX(7px) rotate(16deg)}@keyframes cover-float{0%,100%{transform:translateY(0) rotate(-3deg)}50%{transform:translateY(-9px) rotate(0deg)}}
.format-grid article{transition:box-shadow .35s,transform .35s}.format-grid article:hover{transform:translateY(-6px);box-shadow:0 20px 35px #0002}.gallery img{transition:opacity .24s,transform .5s}.gallery.changing img{opacity:.35;transform:translateX(6px)}.books img{transition:transform .6s cubic-bezier(.2,.7,.2,1)}.books article:hover img{transform:translateY(-10px) rotate(-3deg)}.occasions article{transition:background .3s,transform .3s}.occasions article:hover{transform:translateY(-5px)}.final-image{overflow:hidden}.final-image img{transition:transform 1.4s ease}.final:hover .final-image img{transform:scale(1.025)}
dialog{inset:0 0 0 auto;margin:0;height:100dvh;max-height:100dvh;width:min(520px,100%);max-width:100%;border-radius:24px 0 0 24px;padding:65px 35px 35px;border-left:1px solid #8b5a3c30;overflow:auto}dialog[open]{animation:cart-enter .4s cubic-bezier(.2,.7,.2,1)}dialog[open]::backdrop{animation:backdrop-enter .4s ease}@keyframes cart-enter{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
@media(max-width:640px){.hero-art img{animation-duration:18s}.format-cover{height:210px}.cover-collection{height:235px}.format-grid article:hover,.occasions article:hover{transform:none}dialog{border-radius:20px 0 0 20px;padding:65px 24px 30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
.movie{grid-template-columns:1.2fr 1fr;gap:65px}.story-book-area{width:100%;min-width:0}.story-book{position:relative;width:100%;aspect-ratio:830/588;perspective:1500px;background:var(--cream);border-radius:3px;box-shadow:0 2px 0 #f5ede2,0 5px 0 #d8c8b6,0 8px 0 #f5ede2,0 20px 35px #3a241630}.story-spread{width:100%;height:100%;object-fit:contain;border-radius:3px}.book-spine{position:absolute;left:49.5%;top:0;width:1%;height:100%;background:linear-gradient(90deg,transparent,#3a241633,transparent);z-index:2;pointer-events:none}.turning-page{position:absolute;left:50%;top:0;width:50%;height:100%;transform-origin:left center;transform-style:preserve-3d;z-index:3;visibility:hidden}.page-front,.page-back{position:absolute;inset:0;background-size:200% 100%;backface-visibility:hidden;background-color:var(--cream);border-radius:0 3px 3px 0}.page-front{background-position:right center}.page-back{background-position:left center;transform:rotateY(180deg)}.turning-page.flipping{visibility:visible;animation:page-turn 1.15s cubic-bezier(.35,.1,.25,1) forwards}.page-front:after,.page-back:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#3a24161a,transparent 30%,#fff2)}@keyframes page-turn{0%{transform:rotateY(0)}50%{transform:rotateY(-90deg) translateZ(5px)}100%{transform:rotateY(-180deg)}}.book-controls{display:flex;justify-content:center;align-items:center;gap:15px;margin-top:30px;font-size:14px}.book-controls button{border:1px solid #8b5a3c45;background:var(--cream);color:var(--ink);border-radius:40px;min-width:40px;height:40px}.book-prev,.book-next{font-size:28px;line-height:1}.book-auto{font-size:13px;padding:0 15px}.book-controls button:hover{background:var(--ink);color:var(--cream)}@media(max-width:640px){.movie{gap:28px}.story-book-area{margin:10px 0}.book-controls{gap:12px;margin-top:25px}}@media(prefers-reduced-motion:reduce){.turning-page.flipping{display:none}}
.book-counter{white-space:nowrap;min-width:36px;text-align:center}.book-controls{flex-wrap:wrap}.book-controls button{flex-shrink:0}
/* Consistent occasion cards with a rich hover state. */
.occasions article,.occasions article:nth-child(2),.occasions article:nth-child(4){background:var(--cream);color:var(--ink);border-color:#8b5a3c30;transition:background-color .35s ease,color .35s ease,border-color .35s ease,transform .35s ease}
.occasions article>span,.occasions article:nth-child(4)>span{color:var(--sage);transition:color .35s ease,border-color .35s ease}
@media(hover:hover){.occasions article:hover{background:var(--sage);color:var(--cream);border-color:var(--sage)}.occasions article:hover>span{color:var(--cream)}}
.decorative-book{height:420px;display:grid;place-items:center}.book-scene{width:215px;height:305px;perspective:1400px}.book-object{position:relative;width:100%;height:100%;transform-style:preserve-3d;transform:rotateX(32deg) rotateY(-24deg) rotateZ(-17deg);animation:book-float 10s ease-in-out infinite}.book-bottom,.fan-cover,.fan-leaf{position:absolute;inset:0;border-radius:2px 6px 6px 2px;transform-origin:left center}.book-bottom{background:var(--ink);transform:translateZ(-20px);box-shadow:20px 40px 40px #3a241640}.fan-leaf{inset:3px 4px 3px 2px;background:linear-gradient(90deg,#d3bea3,#fff9ef 15%,#f5ede2 80%,#d7c2a6);border:1px solid #c9b69c;transform:translateZ(calc(var(--i)*.8px));animation:fan-turn 8s ease-in-out infinite;animation-delay:calc(var(--i)*.14s);box-shadow:0 1px 2px #3a241625}.fan-cover{background:var(--ink);transform:translateZ(15px) rotateY(-25deg);animation:fan-cover-turn 8s ease-in-out infinite;transform-style:preserve-3d}.fan-cover img{width:100%;height:100%;border-radius:inherit;backface-visibility:hidden}.movie{overflow:hidden}.book-object{translate:30px 0}@keyframes fan-turn{0%,12%,95%,100%{transform:translateZ(calc(var(--i)*.8px)) rotateY(-8deg)}45%,65%{transform:translateZ(calc(var(--i)*.8px)) rotateY(calc(-145deg + var(--i)*5deg))}}@keyframes fan-cover-turn{0%,12%,95%,100%{transform:translateZ(15px) rotateY(-25deg)}45%,65%{transform:translateZ(15px) rotateY(-155deg)}}@keyframes book-float{0%,100%{transform:translateY(0) rotateX(32deg) rotateY(-24deg) rotateZ(-17deg)}50%{transform:translateY(-10px) rotateX(35deg) rotateY(-20deg) rotateZ(-15deg)}}@media(max-width:640px){.decorative-book{height:300px}.book-scene{width:155px;height:220px}.book-object{translate:35px 0}}@media(prefers-reduced-motion:reduce){.fan-leaf{transform:translateZ(calc(var(--i)*.8px)) rotateY(calc(-140deg + var(--i)*6deg))}.fan-cover{transform:translateZ(15px) rotateY(-155deg)}}
.family-about{width:100%;height:auto;border-radius:22px}.portraits>.caption{text-align:center;margin-top:16px}
#formats .format-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:900px;margin-left:auto;margin-right:auto}.bundle-bottom{grid-template-columns:1fr;margin-top:55px}.bundle-bottom article.featured{display:grid;grid-template-columns:1fr 1fr;column-gap:45px;align-items:center;padding:35px 45px;transform:none}.bundle-bottom .cover-collection{grid-column:1;grid-row:1/6;height:300px;max-width:360px;width:100%;justify-self:center}.bundle-bottom .eyebrow,.bundle-bottom h3,.bundle-bottom article>p,.bundle-bottom .button{grid-column:2}.bundle-bottom .price{padding-top:15px;margin-top:0}.bundle-bottom h3{margin:10px 0 18px}.bundle-bottom .ribbon{top:-16px;right:24px}.bundle-bottom .cover-collection img{height:240px}.bundle-bottom .cover-collection img:nth-child(2){height:265px}
@media(max-width:640px){#formats .format-grid{grid-template-columns:1fr}.bundle-bottom article.featured{display:flex;padding:30px 25px}.bundle-bottom .cover-collection{height:260px;flex-shrink:0}.bundle-bottom .cover-collection img{height:200px}.bundle-bottom .cover-collection img:nth-child(2){height:230px}.bundle-bottom .price{align-self:flex-start}.bundle-bottom .ribbon{right:24px}}

[data-buy]:disabled{opacity:.55;cursor:default;transform:none;box-shadow:none}

.print-counter{display:flex;align-items:center;justify-content:center;gap:20px;margin:0 0 16px;color:var(--chocolate,#3A2416)}
.print-counter[hidden]{display:none}
.print-counter span{font-weight:700;min-width:140px;text-align:center}
.print-counter button{width:42px;height:42px;border:1px solid #C2555E;border-radius:50%;background:transparent;color:#3A2416;font-size:25px;cursor:pointer;transition:background .2s,color .2s}
.print-counter button:hover:not(:disabled){background:#C2555E;color:#fff}
.print-counter button:disabled{opacity:.35;cursor:default}

footer{flex-wrap:wrap;gap:24px}.footer-support p{margin:0 0 8px}.footer-documents{flex-basis:100%;display:flex;flex-wrap:wrap;gap:12px 26px;font-size:14px}.footer-documents a,.footer-support a{text-decoration:underline;text-underline-offset:4px}.footer-copyright{flex-basis:100%;font-size:13px;opacity:.7}

.care-block{display:flex;align-items:center;gap:40px;padding:30px 34px;margin-top:40px;margin-bottom:60px;border:1px solid #8B5A3C55;border-radius:24px;background:#EBD9C244}.care-block>div{flex:1}.care-block p{margin:0;font-size:17px;line-height:1.65}.care-block p a{font-weight:700;text-decoration:underline;text-underline-offset:3px}.care-block>.button{flex-shrink:0;text-align:center}@media(max-width:760px){.care-block{flex-direction:column;align-items:stretch;gap:22px;padding:24px}.care-block p{font-size:16px}}

.dish-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin-top:44px;margin-bottom:32px}.dish-gallery figure{margin:0}.dish-photo{position:relative;aspect-ratio:1/1.15;overflow:hidden;border-radius:24px;background:#EBD9C2}.dish-photo img{position:absolute;left:0;top:0;width:200%;max-width:none;height:100%;object-fit:fill;transition:transform .6s}.dish-gallery figure:hover img{transform:scale(1.035);transform-origin:25% 50%}.dish-gallery figcaption{font-family:'Cormorant Garamond',serif;font-size:28px;line-height:1.15;padding:18px 4px;color:#3A2416}@media(max-width:760px){.dish-gallery{grid-template-columns:1fr;gap:28px}.dish-photo{aspect-ratio:1.1}.dish-gallery figcaption{font-size:26px}}

.dish-photo.full-photo img{width:100%;height:100%;object-fit:cover}.dish-gallery figure:hover .full-photo img{transform-origin:center}
