@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#18352c;--cream:#fffaf0;--yellow:#ffd43f;--peach:#f7dfcb;--line:#deded0;--green:#dbe8ce;--font:'DM Sans',sans-serif;--display:'Outfit',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.5}button,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a,summary{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #d34f36;outline-offset:5px}img{display:block;max-width:100%}.wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}.announcement{padding:10px 20px;background:var(--ink);color:var(--cream);font-size:10px;font-weight:700;letter-spacing:.13em;text-align:center}.announcement span{padding:0 26px;color:var(--yellow)}.header{width:min(1360px,calc(100% - 72px));margin:auto;height:112px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:10px;font:900 24px/.82 var(--display);letter-spacing:-1px}.brand-mark{font-size:40px;transform:rotate(-13deg)}.brand-dot{font:10px var(--font);vertical-align:top;margin-left:2px}.header nav{display:flex;gap:35px;align-items:center;font-size:13px;font-weight:600}.text-button{border:0;background:none;padding:0;font-size:inherit;font-weight:inherit}.pack-button{border:1px solid var(--ink);border-radius:30px;background:transparent;padding:10px 15px;display:flex;gap:15px;align-items:center;font-size:12px;font-weight:700}.pack-button span{display:grid;place-items:center;background:var(--ink);color:var(--cream);width:23px;height:23px;border-radius:50%;font-size:11px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:38px;padding:25px 0 70px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;margin:0 0 18px}.little-star{font-size:17px;padding-right:6px;vertical-align:-1px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);letter-spacing:-.045em}h1{font-weight:800;font-size:clamp(54px,5.7vw,85px);line-height:1.01;margin-bottom:27px}.underlined{position:relative;white-space:nowrap}.underlined:after{content:'';position:absolute;left:0;right:-3px;height:10px;bottom:0;background:var(--yellow);z-index:-1;transform:rotate(-2deg)}.hero-description{font-size:16px;line-height:1.8;color:#536356;max-width:450px;margin-bottom:28px}.hero-actions{display:flex;align-items:center;gap:24px}.button{border-radius:30px;min-height:49px;padding:13px 22px;font-weight:700;font-size:12px;display:inline-flex;align-items:center;justify-content:center;gap:23px;border:1px solid var(--ink);transition:transform .15s,background .15s}.button:hover{transform:translateY(-2px)}.button-dark{color:var(--cream);background:var(--ink)}.button-dark:hover{background:#2b5342}.button-outline{background:transparent}.button-outline:hover{background:var(--ink);color:var(--cream)}.button span{font-size:17px}.play-link{background:none;border:0;padding:0;display:flex;gap:10px;align-items:center;font-size:11px;font-weight:700;white-space:nowrap}.play-circle{border:1px solid var(--ink);width:31px;height:31px;border-radius:50%;display:grid;place-items:center;font-size:10px}.hero-note{margin-top:32px;font-size:10px;display:flex;align-items:center;gap:10px}.mini-taco{font-size:25px;color:#c75c3a}.hero-art{position:relative;background:var(--peach);border-radius:48% 48% 7px 7px;overflow:visible;align-self:stretch;min-height:420px;display:grid;align-items:center}.hero-art>img{width:100%;height:100%;min-height:420px;object-fit:cover;border-radius:48% 48% 7px 7px}.sticker{position:absolute;right:-15px;top:20px;width:111px;height:111px;border-radius:50%;background:var(--yellow);font:800 14px/1.1 var(--display);display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(12deg);box-shadow:0 0 0 7px var(--cream);text-align:center;letter-spacing:-.02em}.sticker span{font-size:24px;line-height:1.1}.art-caption{position:absolute;bottom:15px;left:20px;font-size:8px;font-weight:700;letter-spacing:.15em;color:#6b655c}.ribbon{background:var(--yellow);padding:17px 24px;display:flex;justify-content:center;align-items:center;gap:48px;overflow:hidden;white-space:nowrap;font:800 15px var(--display);letter-spacing:.02em}.ribbon b{font-size:23px;font-weight:400}.shop{padding:88px 0 72px}.section-intro{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:36px;gap:25px}h2{font-size:clamp(38px,4vw,58px);font-weight:700;line-height:1.06;margin-bottom:0}.section-intro>p{font-size:13px;color:#59695d;margin:0 0 4px}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.product-image{position:relative;aspect-ratio:1.2;overflow:hidden;border-radius:14px;background:var(--peach);margin-bottom:22px}.product-image img{position:absolute;width:200%;max-width:none;height:100%;object-fit:cover;left:0;top:0}.product-image .original-crop{left:-100%}.product-tag{position:absolute;z-index:1;top:19px;left:20px;background:var(--cream);font-size:8px;font-weight:800;letter-spacing:.1em;border-radius:20px;padding:7px 12px}.image-spark{position:absolute;right:22px;bottom:9px;font-size:48px;color:var(--ink);transform:rotate(10deg)}.product-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.product h3{font-size:30px;font-weight:700;margin-bottom:8px}.availability{font-size:7px;font-weight:700;letter-spacing:.07em;white-space:nowrap}.product>p{font-size:12px;line-height:1.8;color:#59695d;max-width:440px;min-height:44px;margin-bottom:21px}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.price{font-size:12px;font-weight:700}.product .button{font-size:10px;min-height:41px;padding:9px 16px;gap:15px}.concept-note{font-size:10px;line-height:1.7;color:#67736a;margin:29px 0 0;max-width:850px}.story{background:var(--green);padding:70px 0}.story-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story h2{font-size:61px;line-height:1.02}.story h2 span{color:#5c7655}.story-copy>p:not(.eyebrow){font-size:13px;color:#4b624c;line-height:1.85;max-width:350px;margin:24px 0}.video-card{padding:0;background:none;border:0;text-align:left;width:100%;transform:rotate(2deg)}.video-frame{position:relative;background:#0c110d;border-radius:12px;overflow:hidden;aspect-ratio:1.05}.video-frame video{width:100%;height:100%;object-fit:contain;pointer-events:none}.large-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;background:var(--cream);width:59px;height:59px;border-radius:50%;font-size:18px;padding-left:4px;box-shadow:0 2px 15px #0002}.video-card:hover .large-play{background:var(--yellow)}.video-caption{font-size:9px;font-weight:700;letter-spacing:.07em;display:flex;justify-content:space-between;padding:13px 3px}.faq{padding:85px 0;display:grid;grid-template-columns:.8fr 1fr;gap:100px}.faq h2{font-size:43px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:13px;font-weight:700;padding:21px 0;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{font-size:19px;font-weight:400;line-height:1}details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;color:#59695d;line-height:1.9;margin:0 0 20px;padding-right:24px}.inline-link{border:0;background:none;padding:0;text-decoration:underline}.closing{border-radius:16px;background:var(--yellow);padding:50px 30px 54px;text-align:center;position:relative}.closing h2{font-size:48px;margin-bottom:25px}.closing-spark{position:absolute;top:45px;left:12%;font-size:70px;transform:rotate(-15deg)}.footer{padding:50px 0 38px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px}.footer-brand{font:900 26px var(--display);letter-spacing:-.04em}.footer-brand span{font-size:31px;margin-left:8px;vertical-align:-1px}.footer p{margin:0}.footer>span{font-size:9px;color:#66766a}.skip-link{position:fixed;z-index:9;top:-60px;left:20px;background:var(--ink);color:white;padding:10px}.skip-link:focus{top:10px}dialog{border:0;color:var(--ink);background:var(--cream);padding:28px;box-shadow:0 15px 80px #0003}dialog::backdrop{background:#13291f88;backdrop-filter:blur(3px)}#pack-dialog{margin:0 0 0 auto;height:100%;max-height:100%;width:min(460px,100%);max-width:100%;border-radius:20px 0 0 20px}.drawer-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:35px}.drawer-header h2{font-size:42px}.drawer-header .eyebrow{margin-bottom:8px}.icon-button{background:none;border:0;font-size:31px;line-height:1;width:33px;height:33px}.pack-item{display:grid;grid-template-columns:1fr auto;gap:10px;border-bottom:1px solid var(--line);padding:18px 0}.pack-item h3{font-size:23px;margin:0}.quantity-controls{display:flex;align-items:center;gap:15px}.quantity-controls button{background:transparent;border:1px solid var(--line);border-radius:50%;width:30px;height:30px}.remove-item{border:0;background:transparent;text-decoration:underline;font-size:10px;padding:0;text-align:left;width:max-content}.empty-state{font-size:14px;color:#59695d;line-height:1.8;padding:25px 0}.drawer-note{font-size:11px;color:#67736a;line-height:1.8;margin:28px 0 20px}.full-width{width:100%}.continue{display:block;font-size:12px;font-weight:700;margin:22px auto}.feedback{font-size:11px;min-height:20px;text-align:center}.empty-feedback{color:#536356}#video-dialog{padding:18px;border-radius:14px;width:min(490px,94vw);max-height:94vh}.video-dialog-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px}.video-dialog-head h2{font-size:23px;letter-spacing:-.02em}#full-video{display:block;width:100%;max-height:78vh;background:black;border-radius:7px}[hidden]{display:none!important}body:has(dialog[open]){overflow:hidden}
@media(min-width:1450px){.hero{min-height:620px}.hero-art{min-height:480px}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header{width:calc(100% - 64px)}.hero{gap:25px}.hero-actions{align-items:flex-start;flex-direction:column;gap:18px}h1{font-size:65px}.hero-art,.hero-art>img{min-height:405px}.ribbon{gap:30px}.story-inner{gap:50px}.story h2{font-size:53px}.faq{gap:50px}.closing-spark{left:7%}.product-bottom{align-items:flex-start;flex-direction:column}.product-top{align-items:flex-start;flex-direction:column;gap:0;margin-bottom:10px}.availability{font-size:8px}.product h3{margin-bottom:3px}}
@media(max-width:700px){.wrap,.header{width:calc(100% - 40px)}.announcement{font-size:7px;padding:9px 12px;letter-spacing:.07em}.announcement span{padding:0 10px}.header{height:85px;gap:10px}.brand{font-size:20px;gap:7px}.brand-mark{font-size:30px}.header nav{display:none}.pack-button{font-size:10px;padding:7px 10px;gap:10px}.pack-button span{width:22px;height:22px}.hero{grid-template-columns:1fr;padding:20px 0 40px;gap:32px}.eyebrow{font-size:8px;margin-bottom:15px}h1{font-size:clamp(49px,12vw,76px);max-width:600px;margin-bottom:20px}.hero-description{font-size:13px;line-height:1.8;margin-bottom:23px}.hero-actions{flex-direction:row;align-items:center;gap:16px}.button{padding:12px 17px;font-size:10px;gap:13px}.play-link{font-size:9px;gap:7px}.play-circle{width:27px;height:27px;font-size:8px}.hero-note{font-size:8px;margin-top:23px}.mini-taco{font-size:20px}.hero-art{min-height:320px;max-height:430px;border-radius:45% 45% 8px 8px}.hero-art>img{min-height:320px;max-height:430px;border-radius:45% 45% 8px 8px}.sticker{width:86px;height:86px;font-size:11px;right:1px;top:17px;box-shadow:0 0 0 5px var(--cream)}.sticker span{font-size:19px}.art-caption{font-size:7px;bottom:13px;left:17px}.ribbon{justify-content:flex-start;gap:22px;font-size:11px;padding:13px 20px}.ribbon b{font-size:18px}.shop{padding:52px 0 45px}.section-intro{display:block;margin-bottom:27px}.section-intro>p{font-size:11px;margin-top:17px}.section-intro h2{font-size:43px}.product-grid{grid-template-columns:1fr;gap:39px}.product-image{aspect-ratio:1.22;margin-bottom:18px}.product-top{flex-direction:row;align-items:center;margin-bottom:8px}.product h3{font-size:28px}.availability{font-size:7px}.product>p{font-size:11px;min-height:0;margin-bottom:18px}.product-bottom{flex-direction:row;align-items:center}.price{font-size:10px}.concept-note{font-size:9px;margin-top:25px}.story{padding:45px 0}.story-inner{grid-template-columns:1fr;gap:30px}.story h2{font-size:48px}.story-copy>p:not(.eyebrow){font-size:12px;max-width:100%;margin:20px 0}.video-card{max-width:430px;justify-self:center;transform:rotate(1deg);width:96%}.video-frame{aspect-ratio:1.15}.faq{padding:50px 0;grid-template-columns:1fr;gap:26px}.faq h2{font-size:38px}summary{font-size:12px;padding:19px 0}details p{font-size:11px}.closing{padding:36px 20px 40px}.closing h2{font-size:35px}.closing-spark{font-size:29px;left:6%;top:22px}.footer{padding:35px 0;flex-wrap:wrap;gap:12px}.footer-brand{font-size:24px}.footer>p{font-size:9px}.footer>span{width:100%;text-align:center;border-top:1px solid var(--line);padding-top:18px;margin-top:10px}#pack-dialog{padding:24px;border-radius:14px 0 0 14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

/* Individual product portraits keep each toy fully visible. */
.product-image img{width:100%;height:100%;object-fit:cover;left:0;top:0}.product-image .original-crop{left:0}.hero-art>img{object-fit:contain}

/* Product colorways: one generated contact sheet, framed as eight native CSS portraits. */
.product-portrait{position:absolute;inset:0;background-image:url('assets/plush-colorways.png');background-size:400% 200%;background-repeat:no-repeat;background-position:0% 100%}
[data-portrait="original"]{background-position:0% 0%}.color-options{border:0;padding:0;margin:0 0 22px;display:flex;align-items:center;gap:10px;min-inline-size:0}.color-options legend{float:left;width:100%;font-size:11px;margin-bottom:10px;color:#536356}.color-options legend span{font-weight:700;color:var(--ink)}.color-options:after{content:'';display:block;clear:both}.color-swatch{position:relative;display:inline-grid;place-items:center;width:34px;height:34px;cursor:pointer;flex-shrink:0}.color-swatch input{position:absolute;width:1px;height:1px;margin:0;padding:0;opacity:0}.swatch-dot{display:block;width:27px;height:27px;background:var(--swatch);border:1px solid #18352c33;border-radius:50%;outline-offset:3px}.color-swatch input:checked+.swatch-dot{outline:2px solid var(--ink)}.color-swatch input:focus-visible+.swatch-dot{outline:3px solid #c54a2f}.pack-color{display:flex;align-items:center;gap:6px;font-size:10px;margin:5px 0 0;color:#536356}.pack-color span{width:11px;height:11px;border:1px solid #18352c33;border-radius:50%;display:inline-block}.hero-description strong{font-weight:700;color:var(--ink)}.closing h2{font-size:clamp(30px,3.6vw,47px);max-width:850px;margin-inline:auto}.closing-spark{left:5%;top:30px}.announcement{font-size:9px}.color-options{flex-wrap:wrap}.color-options legend{float:none;margin-bottom:12px}
@media(max-width:700px){.announcement{font-size:6px;letter-spacing:.02em;padding-inline:8px}.announcement span{padding:0 5px}.color-options{gap:12px;margin-bottom:22px}.color-options legend{font-size:11px}.color-swatch{width:38px;height:38px}.swatch-dot{width:29px;height:29px}.closing h2{font-size:29px}.closing-spark{font-size:22px;left:4%;top:15px}}

.product-image{aspect-ratio:1}

/* The complete plush family. */
.family-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.family-grid .product h3{font-size:29px}.family-grid .product-top{display:block;margin-bottom:11px}.family-grid .availability{font-size:7px}.family-grid .product>p{min-height:64px}.family-grid .product-bottom{flex-direction:column;align-items:flex-start;gap:12px}.family-grid .product .button{width:100%;justify-content:space-between}.product-portrait[data-portrait="mommy"],.product-portrait[data-portrait="daddy"]{background-image:url('assets/parents-colorways.png')}.product-portrait[data-portrait="mommy"]{background-position:0% 0%}.product-portrait[data-portrait="daddy"]{background-position:0% 100%}.hero-art>img{object-fit:contain}.hero-art{overflow:hidden}
@media(max-width:700px){.family-grid{grid-template-columns:1fr;gap:39px}.family-grid .product h3{font-size:29px}.family-grid .product-top{display:flex;align-items:center;justify-content:space-between}.family-grid .product>p{min-height:0}.family-grid .product-bottom{flex-direction:row;align-items:center}.family-grid .product .button{width:auto;gap:15px}}

.hero-art .sticker{right:12px;top:18px;box-shadow:none}

/* A no-payment interest card, with a real server receipt. */
.interest-form{display:grid;gap:16px;margin:25px 0 18px}.interest-form>label:not(.interest-consent){display:grid;gap:7px;font-size:12px;font-weight:700}.interest-form>label>span{font-weight:400;color:#67736a}.interest-form input:not([type="checkbox"]){width:100%;border:1px solid #bcc7bb;border-radius:9px;background:#fffefa;padding:12px 13px;color:var(--ink);font:14px var(--font)}.interest-form input:focus-visible{outline:2px solid #3e7453;outline-offset:2px}.interest-consent{display:flex;align-items:flex-start;gap:9px;font-size:11px;line-height:1.7;cursor:pointer}.interest-consent input{width:17px;height:17px;flex-shrink:0;accent-color:var(--ink);margin:2px 0 0}.privacy-note{font-size:10px;line-height:1.8;color:#67736a;margin:0}.interest-success{margin:24px 0;padding:23px;background:#dbe8ce;border-radius:12px}.interest-success>span{font-size:28px}.interest-success h3{font-size:27px;margin:5px 0 12px}.interest-success p{font-size:12px;line-height:1.8;margin:0 0 8px}#interest-reference{font-weight:700;overflow-wrap:anywhere}.form-honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.feedback.error{color:#a33222;font-weight:600}.button:disabled{cursor:wait;opacity:.65;transform:none}#copy-pack{margin-top:18px;background:transparent;color:var(--ink)}.drawer-header h2{font-size:36px}.drawer-note{margin-bottom:16px}#pack-items:empty{display:none}

/* Class-based colors support a strict no-inline-style Content Security Policy. */
.swatch-golden{background:#ffd43f}.swatch-blue{background:#86cbea}.swatch-pink{background:#f4a5bc}.swatch-mint{background:#a7d9bc}
.product-portrait[data-color="golden"]{background-position-x:0%}.product-portrait[data-color="blue"]{background-position-x:33.333333%}.product-portrait[data-color="pink"]{background-position-x:66.666667%}.product-portrait[data-color="mint"]{background-position-x:100%}
.feedback{white-space:pre-line}
