/* Mint & Peach Cat Garden customer theme. */
body.campaign-page[data-website-theme=cat-pastel]{background:#fff8ed;overflow-x:clip}
.pastel-garden-hero{position:relative;isolation:isolate;overflow:hidden;border-radius:24px;background:#cce6d8;min-height:450px;display:grid;place-items:center;margin:0 auto 24px;color:#204d45}
.pastel-garden-scene{position:absolute;inset:0;z-index:-1}.pastel-garden-scene img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.pastel-garden-copy{width:60%;max-width:700px;text-align:center;padding:42px 15px 100px;box-sizing:border-box}
.pastel-garden-copy .pastel-garden-eyebrow{font:600 10px Arial;letter-spacing:.16em;color:#315b50;margin:0 0 14px}
body .pastel-garden-copy #pastel-garden-title{font:500 clamp(35px,4.5vw,62px)/1.07 Georgia,serif;letter-spacing:-.025em;margin:0 0 20px;color:#1c493f}
.pastel-garden-copy>p:not(.pastel-garden-eyebrow){font-size:16px;line-height:1.6;color:#254b43;margin:0 0 24px}
body[data-website-theme=cat-pastel] .pastel-garden-claim{display:inline-flex;align-items:center;gap:25px;border-radius:30px;background:#f8b58f;color:#204b42;border:1px solid #e6a27a;padding:13px 25px;box-shadow:0 4px 12px #5d71552b;text-decoration:none}
.pastel-garden-replay{position:absolute;right:14px;bottom:12px;border:1px solid #92b7a4;background:#fff9e9e8;border-radius:25px;color:#31594b;padding:6px 12px;font:600 11px Arial;cursor:pointer}
.pastel-garden-hero :is(a,button):focus-visible{outline:3px solid #315b50;outline-offset:4px}
.pastel-garden-petals{position:absolute;inset:0;pointer-events:none;z-index:0}.pastel-garden-petals i{position:absolute;top:8%;left:var(--x);width:11px;height:17px;border-radius:75% 10% 75% 15%;background:linear-gradient(135deg,#ffe2c5,#eeae8b);opacity:0;animation:pastel-petal 13s ease-in-out var(--d) infinite;box-shadow:1px 2px 3px #66774c22}
@keyframes pastel-petal{0%{opacity:0;transform:translate(0,-15px) rotate(0)}15%{opacity:.7}75%{opacity:.6}100%{opacity:0;transform:translate(45px,230px) rotate(210deg)}}
.pastel-garden-entering .pastel-garden-scene{animation:pastel-scene-in 1.6s cubic-bezier(.2,.65,.3,1) both}
.pastel-garden-entering .pastel-garden-copy>*{animation:pastel-copy-in .85s ease both}
.pastel-garden-entering .pastel-garden-copy>:nth-child(1){animation-delay:.35s}.pastel-garden-entering .pastel-garden-copy>:nth-child(2){animation-delay:.65s}.pastel-garden-entering .pastel-garden-copy>:nth-child(3){animation-delay:1s}.pastel-garden-entering .pastel-garden-copy>:nth-child(4){animation-delay:1.25s}
@keyframes pastel-scene-in{from{opacity:.2;transform:translateY(15px) scale(1.025)}to{opacity:1;transform:none}}
@keyframes pastel-copy-in{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.pastel-riverside-footer{position:relative;isolation:isolate;width:100vw;margin:0 calc(50% - 50vw);aspect-ratio:5/1;min-height:230px;background:#315b54;overflow:hidden;color:#fff1d4}
.pastel-riverside-footer picture{position:absolute;inset:0;z-index:-1}.pastel-riverside-footer img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.pastel-riverside-copy{position:absolute;left:30%;top:12%;width:40%;text-align:center;font-family:Georgia,serif;text-shadow:0 1px 3px #254a44}
.pastel-riverside-copy p{font-size:clamp(15px,1.5vw,21px);line-height:1.5;color:#fff4db;margin:0 0 10px}.pastel-riverside-copy span{display:block;color:#e0c58a;margin:0 0 10px}.pastel-riverside-copy small{font-size:12px;color:#f4dba6;overflow-wrap:anywhere}
@media(max-width:760px){.pastel-garden-hero{min-height:0;aspect-ratio:3/4;display:block;border-radius:18px}.pastel-garden-scene img{object-fit:fill}.pastel-garden-copy{position:absolute;top:15%;width:100%;max-width:none;padding:0 12px}.pastel-garden-copy .pastel-garden-eyebrow{font-size:8px;letter-spacing:.07em;margin-bottom:10px}body .pastel-garden-copy #pastel-garden-title{font-size:clamp(25px,7vw,46px);margin-bottom:12px}.pastel-garden-copy>p:not(.pastel-garden-eyebrow){font-size:clamp(11px,2.8vw,16px);margin-bottom:15px}.pastel-garden-claim{font-size:12px}.pastel-garden-replay{font-size:9px;padding:5px 9px}.pastel-riverside-footer{aspect-ratio:3/4;min-height:0}.pastel-riverside-footer img{object-fit:fill}.pastel-riverside-copy{top:30%;left:8%;width:84%}.pastel-riverside-copy p{font-size:clamp(17px,4.7vw,26px)}.pastel-riverside-copy small{font-size:12px}}
@media(prefers-reduced-motion:reduce){.pastel-garden-hero *{animation:none!important}.pastel-garden-replay,.pastel-garden-petals{display:none}}

/* Burgundy-and-gold navigation, scoped to the CNY customer website. */
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header{background:linear-gradient(110deg,#214b45,#37695d 48%,#214b45);border:1px solid #c8b78e;border-radius:28px;min-height:88px;padding:18px 32px;gap:20px;box-shadow:inset 0 0 0 2px #f8de8c33,0 5px 18px #214b451a;color:#fff1ca;flex-wrap:nowrap}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:before,body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:after{content:'✿ · ✿';position:absolute;top:auto;bottom:5px;width:auto;height:auto;background:none;color:#dfbf72;font-size:10px;line-height:1;pointer-events:none}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:before{left:10px;right:auto}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:after{right:10px;left:auto}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .brand{color:#fff7e8;font-family:Georgia,serif;font-size:22px;letter-spacing:.025em;gap:13px;min-width:0}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .brand>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header svg.brand-mark{background:linear-gradient(#fff0bc,#d8b45e);color:#264d44;border:2px solid #e2bf70;box-shadow:0 0 0 2px #ffe9ad33;width:50px;height:50px;padding:9px;flex-shrink:0}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav{background:transparent;border:0;border-radius:0;padding:0;gap:19px;flex-shrink:0}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .nav-link{color:#fff0ce;font-size:13px;background:transparent;text-decoration:none}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .nav-link:hover,body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .nav-link[aria-current]{color:#ffe09b}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .header-credit{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:linear-gradient(#ffd3b5,#f2b48c);color:#264d44;border:1px solid #f0d17f;border-radius:30px;padding:9px 17px;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:0 3px 7px #3e071b26}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav form{margin:0}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav form .nav-link{border:1px solid #e8ce8d;border-radius:30px;padding:9px 18px;white-space:nowrap;cursor:pointer}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .theme-toggle{background:#ffffff0a;color:#fff0ce;border:1px solid #d5b973;border-radius:24px}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .header-desktop-claim,body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .mobile-header-claim{background:linear-gradient(#ffe5a1,#dbb45b);color:#264d44;border-color:#e6c77c;border-radius:25px;box-shadow:none}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header.is-scrolled{min-height:72px;padding:10px 28px;border-radius:0 0 20px 20px;background:linear-gradient(110deg,#214b45,#37695d 48%,#214b45)}
body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header :is(a,button):focus-visible{outline:2px solid #ffe6a0;outline-offset:4px}
@media(min-width:761px) and (max-width:1100px){body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header{padding:16px 23px;gap:14px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .brand{font-size:18px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav{gap:11px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .nav-link{font-size:12px}}
@media(max-width:760px){body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header,body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header.is-scrolled{min-height:74px;padding:12px 14px;gap:10px;border-radius:18px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .brand{font-size:13px;letter-spacing:.015em;gap:8px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header svg.brand-mark{width:35px;height:35px;padding:6px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .mobile-menu-toggle{background:#ffffff0d;color:#ffe9b1;border-color:#dbbc79}html.sticky-header-enhanced body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav{background:#315b50;border:1px solid #d3af65;border-radius:16px;padding:14px;gap:8px;box-shadow:0 12px 24px #4c061b40}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header nav .nav-link{padding:10px}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header .header-credit{align-self:flex-start}body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:before,body.campaign-page[data-website-theme=cat-pastel] .frontend-sticky-header:after{display:none}}

/* Separate paper layers and integrated riverside footer. */
.pastel-garden-art{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.pastel-garden-copy{position:relative;z-index:2}.pastel-garden-replay{z-index:3}
.pastel-garden-stage{position:absolute;inset:0;background:url('pastel-garden-stage.png') center/cover no-repeat}
.pastel-branch-layer,.pastel-branch-idle{position:absolute;inset:0}.pastel-branch-idle{background:url('pastel-garden-branches.png') center top/100% auto no-repeat;transform-origin:50% 0;animation:pastel-branch-sway 10s ease-in-out infinite alternate}
.pastel-cat-layer{position:absolute;bottom:5%;width:28%;aspect-ratio:1.5}.pastel-cat-left{left:0}.pastel-cat-right{right:0}
.pastel-cat-idle{width:100%;height:100%;background:url('pastel-garden-cats-clean.png') left center/200% 100% no-repeat;transform-origin:50% 96%;animation:pastel-cat-breathe 5.5s ease-in-out infinite alternate}.pastel-cat-right .pastel-cat-idle{background-position:right center;animation-duration:6.7s;animation-delay:-2s}
.pastel-butterfly{position:absolute;width:5%;aspect-ratio:1.5;animation:pastel-butterfly-drift 7s ease-in-out infinite alternate}.pastel-butterfly-one{left:23%;top:30%}.pastel-butterfly-two{right:21%;top:35%;animation-delay:-3s;animation-duration:9s}.pastel-butterfly img{width:100%;height:100%;object-fit:contain;animation:pastel-wing .9s ease-in-out infinite alternate}
@keyframes pastel-branch-sway{from{transform:rotate(-.35deg)}to{transform:rotate(.35deg)}}
@keyframes pastel-cat-breathe{from{transform:translateY(0) rotate(-.3deg)}to{transform:translateY(-3px) rotate(.3deg)}}
@keyframes pastel-butterfly-drift{from{transform:translate(-6px,4px) rotate(-7deg)}to{transform:translate(10px,-9px) rotate(7deg)}}
@keyframes pastel-wing{from{transform:scaleX(.68)}to{transform:scaleX(1)}}
.pastel-garden-entering .pastel-garden-stage{animation:pastel-layer-stage 1.1s ease both}
.pastel-garden-entering .pastel-branch-layer{animation:pastel-layer-branches 1.1s cubic-bezier(.2,.7,.3,1) .65s both}
.pastel-garden-entering .pastel-cat-left{animation:pastel-layer-left 1.2s cubic-bezier(.2,.7,.3,1) 1.25s both}
.pastel-garden-entering .pastel-cat-right{animation:pastel-layer-right 1.2s cubic-bezier(.2,.7,.3,1) 1.65s both}
.pastel-garden-entering .pastel-butterfly{opacity:0}
.pastel-garden-entering .pastel-garden-copy>:nth-child(1){animation-delay:1.4s}.pastel-garden-entering .pastel-garden-copy>:nth-child(2){animation-delay:1.65s}.pastel-garden-entering .pastel-garden-copy>:nth-child(3){animation-delay:1.9s}.pastel-garden-entering .pastel-garden-copy>:nth-child(4){animation-delay:2.1s}
@keyframes pastel-layer-stage{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@keyframes pastel-layer-branches{0%{opacity:0;transform:translateY(-65px) rotate(-2deg)}80%{opacity:1;transform:translateY(3px) rotate(.2deg)}100%{opacity:1;transform:none}}
@keyframes pastel-layer-left{0%{opacity:0;transform:translate(-90px,30px) rotate(-6deg)}80%{opacity:1;transform:translate(3px,-2px) rotate(.4deg)}100%{opacity:1;transform:none}}
@keyframes pastel-layer-right{0%{opacity:0;transform:translate(90px,30px) rotate(6deg)}80%{opacity:1;transform:translate(-3px,-2px) rotate(-.4deg)}100%{opacity:1;transform:none}}
body[data-website-theme=cat-pastel] .pastel-riverside-footer{background:transparent;margin-top:0;min-height:290px;aspect-ratio:4.5/1;padding-top:55px;box-sizing:border-box}
.pastel-riverside-footer picture{mask-image:linear-gradient(to bottom,transparent,#0004 14%,#000b 28%,#000 45%);-webkit-mask-image:linear-gradient(to bottom,transparent,#0004 14%,#000b 28%,#000 45%)}
.pastel-riverside-copy{top:28%}.pastel-footer-access{display:block;color:#fff0ce;text-decoration:underline;font:11px Arial;margin-top:14px;text-underline-offset:3px}.pastel-footer-access:focus-visible{outline:2px solid #fff0ce;outline-offset:3px}
@media(max-width:760px){.pastel-garden-stage{background-size:auto 100%;background-position:center bottom}.pastel-branch-idle{background-size:160% auto}.pastel-cat-layer{width:47%;bottom:2%}.pastel-butterfly{width:10%}.pastel-butterfly-one{left:13%;top:52%}.pastel-butterfly-two{right:10%;top:57%}.pastel-garden-copy{top:18%}body[data-website-theme=cat-pastel] .pastel-riverside-footer{min-height:0;aspect-ratio:3/4;padding-top:0}.pastel-riverside-copy{top:31%}}
@media(prefers-reduced-motion:reduce){.pastel-garden-art *{animation:none!important}.pastel-garden-entering .pastel-butterfly{opacity:1}}

/* Clean kitten silhouettes sit on the background wall; no duplicate masonry. */
@media(min-width:761px){.pastel-cat-layer{bottom:20%}}
