/* The Party Print Co. — shared stylesheet. RESTYLE 2026-10-22 (Matthew: "make it
   POP — one to buy celebration"): Confetti Bright at full saturation, confetti
   sprinkle system (data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FF6B5E%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%232BB3A3%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%23FF6B5E%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23C9A227%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%232BB3A3%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23FFC53D%22%2F%3E%3C%2Fsvg%3E / data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%235B7553%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%23E8B4B8%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23A8B79A%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%235B7553%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23A8B79A%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23E8B4B8%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23C9A227%22%2F%3E%3C%2Fsvg%3E SVG tiles substituted at
   build time), alternating saturated bands, Ink header/footer, lifted cards.
   Presentation only — no copy, link, or analytics changes. No inline styles. */
:root{
  --cream:#FDFBF7; --ink:#2E2A26; --ink-soft:rgba(46,42,38,.9); --soft:#8A8175;
  --sand:#E8DFD3; --gold:#C9A227; --white:#FFFFFF;
  --coral:#FF6B5E; --teal:#2BB3A3; --sunny:#FFC53D; --sky:#4EA8DE; --bubblegum:#EF7AA8;
  --sage-deep:#5B7553; --sage:#A8B79A; --sage-wash:#E6EBDD; --blush:#E8B4B8; --blush-wash:#F7E3E8;
  --sunny-wash:#FFF3D0; --teal-wash:#E2F2F0; --coral-wash:#FDECEA;
  --accent:#C9A227; --accent-deep:#2E2A26; --accent-hover:#1E1B18; --accent-wash:#FDFBF7;
  --display:'Playfair Display',Georgia,serif;
  --body:'Montserrat',Helvetica,Arial,sans-serif;
  --shadow-card:0 2px 6px rgba(46,42,38,.06),0 14px 30px rgba(46,42,38,.08);
  --shadow-lift:0 4px 10px rgba(46,42,38,.08),0 20px 40px rgba(46,42,38,.13);
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:24px; --s6:32px; --s7:48px; --s8:64px; --s9:96px;
}
body[data-collection="baby"]{--accent:#5B7553; --accent-deep:#5B7553; --accent-hover:#4C6445;
  --accent-wash:#E6EBDD; --display:'Playfair Display',Georgia,serif}
body[data-collection="birthday"]{--accent:#FF6B5E; --accent-deep:#FF6B5E; --accent-hover:#F05547;
  --accent-wash:#FDECEA; --display:'Fredoka','Montserrat',Helvetica,Arial,sans-serif}
/* element-scoped collection theming (homepage tiles, flagship, print notes) */
[data-collection="baby"]{--accent:#5B7553; --accent-deep:#5B7553; --accent-hover:#4C6445;
  --accent-wash:#E6EBDD; --display:'Playfair Display',Georgia,serif}
[data-collection="birthday"]{--accent:#FF6B5E; --accent-deep:#FF6B5E; --accent-hover:#F05547;
  --accent-wash:#FDECEA; --display:'Fredoka','Montserrat',Helvetica,Arial,sans-serif}
[data-collection="birthday"] h2{font-size:28px}
.collection-hero h1{font-size:30px;line-height:1.2}
body[data-collection="baby"] .dots span:nth-child(1){background:#5B7553}
body[data-collection="baby"] .dots span:nth-child(2){background:#A8B79A}
body[data-collection="baby"] .dots span:nth-child(3){background:#E6EBDD}
body[data-collection="baby"] .dots span:nth-child(4){background:#E8B4B8}
body[data-collection="baby"] .dots span:nth-child(5){background:#C9A227}
body[data-collection="birthday"] .dots span:nth-child(1){background:#FF6B5E}
body[data-collection="birthday"] .dots span:nth-child(2){background:#FFC53D}
body[data-collection="birthday"] .dots span:nth-child(3){background:#2BB3A3}
body[data-collection="birthday"] .dots span:nth-child(4){background:#4EA8DE}
body[data-collection="birthday"] .dots span:nth-child(5){background:#EF7AA8}
*{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);
  font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:var(--ink)}
h1,h2,h3{margin:0;font-weight:600}
p{margin:0}
.container{max-width:1120px;margin:0 auto;padding:0 var(--s5)}
.container-wide{max-width:1200px;margin:0 auto;padding:0 var(--s5)}
.reading{max-width:760px}
/* confetti system — sprinkled SVG tile + reusable strip (shapes only, no emoji) */
.confetti-strip{height:18px;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FF6B5E%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%232BB3A3%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%23FF6B5E%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23C9A227%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%232BB3A3%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23FFC53D%22%2F%3E%3C%2Fsvg%3E");
  background-repeat:repeat-x;background-position:center;background-size:90px 45px}
.confetti-strip.baby{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%235B7553%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%23E8B4B8%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23A8B79A%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%235B7553%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23A8B79A%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23E8B4B8%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23C9A227%22%2F%3E%3C%2Fsvg%3E")}
/* header — deep Ink bar, reversed logo, confetti strip under it */
.site-header{background:var(--ink);display:flex;align-items:center;padding:14px 0}
.site-header .container{display:flex;align-items:center;justify-content:space-between;width:100%}
.site-header .logo img{width:184px;height:auto}
.main-nav{display:flex;gap:var(--s6)}
.main-nav a{font-weight:600;font-size:14px;text-decoration:none;color:var(--cream);padding:var(--s3) 0}
.main-nav a:hover{color:var(--sunny);text-decoration:underline}
/* type */
.kicker{font-family:var(--body);font-weight:700;font-size:11.5px;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gold);margin:0 0 var(--s3)}
.kicker.accent{color:var(--accent)}
h1{font-family:var(--display);font-weight:700;font-size:44px;line-height:1.12}
h2{font-family:var(--display);font-weight:600;font-size:30px;line-height:1.2}
body[data-collection="birthday"] h2{font-size:28px}
h3{font-family:var(--body);font-weight:600;font-size:19px;line-height:1.3}
.gold-rule{width:56px;height:3px;border-radius:2px;background:var(--gold);margin-top:var(--s4)}
.gold-rule.center{margin-left:auto;margin-right:auto}
.meta{font-weight:500;font-size:13px;line-height:1.5;color:var(--soft)}
section{padding:var(--s8) 0 0}
.section-head{margin-bottom:var(--s6)}
/* bands — each homepage stretch reads as its own saturated band */
.band-deep{position:relative;background:var(--sage-deep);padding:var(--s8) 0;margin-top:var(--s8)}
.band-deep::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%235B7553%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%23E8B4B8%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23A8B79A%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%235B7553%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23A8B79A%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23E8B4B8%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23C9A227%22%2F%3E%3C%2Fsvg%3E");
  background-size:150px 75px;opacity:.45;pointer-events:none}
.band-deep .container{position:relative}
.band-deep h2{color:var(--cream)}
.band-deep .kicker{color:var(--sunny)}
.band-how{background:var(--teal);padding:var(--s8) 0;margin-top:var(--s8)}
.band-how h2{color:var(--white)}
.band-favorites{background:var(--sunny-wash);padding:var(--s8) 0;margin-top:var(--s8)}
.band-faq{background:var(--sage-wash);padding:var(--s8) 0;margin-top:var(--s8)}
.band-prod{background:var(--accent-wash);padding:var(--s8) 0;margin-top:var(--s8)}
/* hero — celebration moment: confetti field, Fredoka headline, framed media */
.hero{position:relative;text-align:center;padding-top:var(--s9)}
.hero::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FF6B5E%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%232BB3A3%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%23FF6B5E%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23C9A227%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%232BB3A3%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23FFC53D%22%2F%3E%3C%2Fsvg%3E");
  background-size:170px 85px;opacity:.4;pointer-events:none}
.hero .container{position:relative}
.hero h1{font-family:'Fredoka','Montserrat',Helvetica,Arial,sans-serif;font-weight:600;
  font-size:56px;line-height:1.08;letter-spacing:.01em}
.pop-coral{color:var(--coral)}
.pop-teal{color:var(--teal)}
.hl-sunny{background:linear-gradient(transparent 58%,rgba(255,197,61,.8) 58%)}
.hero .sub{font-size:18px;max-width:560px;margin:var(--s4) auto 0;color:var(--ink-soft)}
.hero-actions{display:flex;gap:var(--s4);justify-content:center;flex-wrap:wrap;margin-top:var(--s6)}
.hero-media{position:relative;margin-top:var(--s7);border-radius:16px;overflow:hidden;
  background:var(--sand);border:3px solid var(--coral);box-shadow:var(--shadow-lift)}
.hero-media::before,.hero-media::after{content:"";position:absolute;left:0;right:0;height:16px;
  background-color:var(--cream);background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FF6B5E%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%232BB3A3%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%23FF6B5E%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23C9A227%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%232BB3A3%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23FFC53D%22%2F%3E%3C%2Fsvg%3E");
  background-repeat:repeat-x;background-position:center;background-size:80px 40px;z-index:2}
.hero-media::before{top:0}
.hero-media::after{bottom:0}
.hero-media img{width:100%;height:auto}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.fade-up{animation:fadeUp .5s ease both}
.fade-up.d1{animation-delay:80ms}.fade-up.d2{animation-delay:160ms}
/* buttons — gold stays; sunny + coral join as primary party CTAs */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;
  padding:15px 30px;border-radius:999px;font-family:var(--body);font-weight:700;font-size:15.5px;
  text-decoration:none;border:1px solid transparent;cursor:pointer;
  transition:background-color 160ms ease,transform 160ms ease}
.btn-primary{background:var(--ink);color:var(--cream)}
.btn-primary:hover{background:#1E1B18;transform:translateY(-1px)}
.btn-collection{background:var(--accent-deep);color:var(--white)}
.btn-collection:hover{background:var(--accent-hover);transform:translateY(-1px)}
.btn-sunny{background:var(--sunny);color:var(--ink)}
.btn-sunny:hover{background:#F5B921;transform:translateY(-1px)}
.btn-coral{background:var(--coral);color:var(--white)}
.btn-coral:hover{background:#F05547;transform:translateY(-1px)}
.btn-secondary{background:transparent;border-color:var(--ink);color:var(--ink)}
.btn-block{width:100%}
.btn:active{transform:translateY(0)}
.text-link{font-weight:600;text-decoration:none}
.text-link:hover{text-decoration:underline}
/* collection tiles — saturated color bar on each, lifted cards */
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5)}
.tile{background:var(--white);border:1px solid #DED3C2;border-radius:16px;overflow:hidden;
  padding-bottom:var(--s6);box-shadow:var(--shadow-card)}
.tile::before{content:"";display:block;height:12px}
.tile-baby::before{background:linear-gradient(90deg,#5B7553,#A8B79A,#E8B4B8,#C9A227)}
.tile-bday::before{background:linear-gradient(90deg,#FF6B5E,#FFC53D,#2BB3A3,#4EA8DE,#EF7AA8)}
.tile .frame{display:block;overflow:hidden;background:var(--accent-wash)}
.tile .frame img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.tile .kicker{margin:var(--s5) var(--s6) var(--s2)}
.tile h2{margin:0 var(--s6)}
.tile p{margin:var(--s3) var(--s6) var(--s5);color:var(--ink-soft)}
.tile .btn{margin:0 var(--s6)}
/* flagship feature — sits inside the deep-sage band, text flips to cream */
.feature{display:grid;grid-template-columns:1fr 1fr;gap:var(--s7);align-items:center}
.feature .frame{border-radius:16px;overflow:hidden;box-shadow:0 0 0 3px rgba(253,251,247,.35)}
.feature .frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.feature .price{margin:var(--s4) 0;color:var(--sunny)}
.feature .benefit{margin-top:var(--s4);color:rgba(253,251,247,.92)}
.feature .contents-line{margin-top:var(--s3);color:rgba(253,251,247,.75)}
/* steps + trust — on the teal band; trust becomes lifted white cards */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s6)}
.step .num{font-family:var(--display);font-weight:700;font-size:30px;color:var(--sunny)}
.step h3{font-size:16px;margin:var(--s2) 0 var(--s1);color:var(--white)}
.step p{color:rgba(253,251,247,.88)}
.band-how .gold-rule{background:var(--sunny)}
.trust{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--s4);margin-top:var(--s7)}
.trust div{background:var(--white);border-radius:12px;box-shadow:var(--shadow-card);
  padding:var(--s5) var(--s4);text-align:center;font-weight:600;font-size:14.5px;color:var(--ink)}
/* cards + grids — white cards with real lift on tinted grounds */
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5)}
.card{background:var(--white);border:1px solid #DED3C2;border-radius:16px;padding:20px;
  box-shadow:var(--shadow-card);display:flex;flex-direction:column;
  transition:box-shadow 220ms ease,transform 220ms ease}
.card .frame{border-radius:12px;overflow:hidden;background:var(--accent-wash);
  box-shadow:inset 0 0 0 1px var(--sand);margin-bottom:var(--s4)}
.card .frame img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;
  transition:transform 220ms ease}
@media (hover:hover){.card:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}
  .card:hover .frame img{transform:scale(1.02)}}
.card .kicker{color:var(--soft);margin-bottom:var(--s2)}
.card .benefit{margin-top:var(--s2);display:-webkit-box;-webkit-line-clamp:2;
  -webkit-box-orient:vertical;overflow:hidden}
.card .teaser{margin-top:var(--s2);font-size:13.5px;color:var(--soft);line-height:1.5}
.card .price-row{display:flex;align-items:center;justify-content:space-between;
  margin-top:auto;padding-top:var(--s4)}
.price{font-weight:700;font-size:20px}
.price.large{font-size:28px}
/* master bundle band — Ink night-sky with confetti, gold cards */
.master-band{position:relative;background:var(--ink);padding:var(--s8) 0;margin-top:var(--s8)}
.master-band::before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22120%22%20height%3D%2260%22%20viewBox%3D%220%200%20120%2060%22%3E%3Crect%20x%3D%228%22%20y%3D%2210%22%20width%3D%2211%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FF6B5E%22%20transform%3D%22rotate%2824%2013.5%2012.25%29%22%2F%3E%3Ccircle%20cx%3D%2234%22%20cy%3D%2220%22%20r%3D%223.6%22%20fill%3D%22%232BB3A3%22%2F%3E%3Crect%20x%3D%2252%22%20y%3D%226%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%28-18%2057%208.25%29%22%2F%3E%3Crect%20x%3D%2276%22%20y%3D%2224%22%20width%3D%223.2%22%20height%3D%2212%22%20rx%3D%221.6%22%20fill%3D%22%23C9A227%22%20transform%3D%22rotate%2814%2077.6%2030%29%22%2F%3E%3Ccircle%20cx%3D%22100%22%20cy%3D%2212%22%20r%3D%223%22%20fill%3D%22%23FF6B5E%22%2F%3E%3Crect%20x%3D%2220%22%20y%3D%2240%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%23FFC53D%22%20transform%3D%22rotate%2842%2025%2042.25%29%22%2F%3E%3Ccircle%20cx%3D%2262%22%20cy%3D%2244%22%20r%3D%223.2%22%20fill%3D%22%23C9A227%22%2F%3E%3Crect%20x%3D%2292%22%20y%3D%2238%22%20width%3D%2210%22%20height%3D%224.5%22%20rx%3D%221.5%22%20fill%3D%22%232BB3A3%22%20transform%3D%22rotate%28-28%2097%2040.25%29%22%2F%3E%3Ccircle%20cx%3D%22112%22%20cy%3D%2248%22%20r%3D%222.4%22%20fill%3D%22%23FFC53D%22%2F%3E%3C%2Fsvg%3E");
  background-size:150px 75px;opacity:.5;pointer-events:none}
.master-band .container{position:relative}
.master-band h2{color:var(--cream)}
.master-band .kicker{color:var(--sunny)}
.master-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5)}
.master-card{background:var(--gold);border-radius:20px;padding:28px;color:var(--ink);
  box-shadow:var(--shadow-lift);display:flex;flex-direction:column}
.master-card .frame{border-radius:12px;overflow:hidden;margin-bottom:var(--s4);
  box-shadow:inset 0 0 0 1px rgba(46,42,38,.18)}
.master-card .frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.master-card .kicker{color:rgba(46,42,38,.75)}
.master-card h3{font-family:var(--display);font-size:24px;margin-bottom:var(--s2)}
.master-card .benefit{color:rgba(46,42,38,.88)}
.master-card .meta{color:rgba(46,42,38,.7);margin-top:var(--s3)}
.master-card .price{margin:var(--s4) 0}
.master-card .btn{margin-top:auto;align-self:flex-start}
/* collection pages — saturated banded heroes */
.coll-band{padding:0 0 var(--s7);margin-top:0;position:relative}
.coll-band::before{content:"";display:block;height:10px;margin-bottom:var(--s6)}
.coll-baby{background:var(--blush-wash)}
.coll-baby::before{background:linear-gradient(90deg,#5B7553,#A8B79A,#E8B4B8,#C9A227)}
.coll-bday{background:var(--teal-wash)}
.coll-bday::before{background:linear-gradient(90deg,#FF6B5E,#FFC53D,#2BB3A3,#4EA8DE,#EF7AA8)}
.coll-band .breadcrumb{padding-top:0}
.breadcrumb{font-size:13px;color:var(--soft);padding-top:var(--s6)}
.breadcrumb a{color:var(--soft);text-decoration:none}
.collection-hero{padding:var(--s4) 0 0}
.collection-hero p{margin-top:var(--s3);max-width:640px;color:var(--ink-soft)}
.coll-baby .collection-hero h1{color:var(--sage-deep)}
.dots{display:flex;gap:var(--s2);margin-top:var(--s4)}
.dots span{width:12px;height:12px;border-radius:50%;display:block}
.bundle-banner{background:var(--white);border:2px solid var(--accent);border-radius:16px;
  padding:var(--s6);display:grid;grid-template-columns:1fr 1fr;gap:var(--s6);align-items:center;
  box-shadow:var(--shadow-card);margin-bottom:var(--s5)}
.bundle-banner .frame{border-radius:12px;overflow:hidden;background:var(--accent-wash);
  box-shadow:inset 0 0 0 1px var(--sand)}
.bundle-banner .frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.bundle-banner p{margin:var(--s3) 0 var(--s5);color:var(--ink-soft)}
.mini-steps{margin-top:var(--s8);border-top:2px solid var(--accent);padding-top:var(--s6);
  display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s6)}
.mini-steps p{color:var(--ink-soft);font-size:14.5px}
.mini-steps strong{display:block;font-size:15px;color:var(--accent-deep);margin-bottom:var(--s1)}
.cross-tile{margin-top:var(--s7);background:var(--ink);border-radius:16px;
  padding:var(--s6);display:flex;align-items:center;justify-content:space-between;gap:var(--s5)}
.cross-tile h3{color:var(--cream)}
.cross-tile .meta{color:rgba(253,251,247,.7)}
/* product page — tinted gallery ground, buy column as a standing card */
.product-head{padding-top:var(--s5)}
.product-layout{display:grid;grid-template-columns:55fr 45fr;gap:var(--s7);margin-top:var(--s5);align-items:start}
.gallery{background:var(--accent-wash);border:1px solid var(--sand);border-radius:20px;padding:18px}
.gallery .main-frame{border-radius:12px;overflow:hidden;background:var(--white);
  box-shadow:inset 0 0 0 1px var(--sand)}
.gallery .main-frame img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.thumbs{display:flex;gap:var(--s3);margin-top:var(--s3)}
.thumbs button{width:64px;height:64px;padding:0;border:1px solid var(--sand);border-radius:8px;
  overflow:hidden;background:var(--white);cursor:pointer;flex:none}
.thumbs button img{width:100%;height:100%;object-fit:cover}
.thumbs button.active{border:2px solid var(--accent)}
.buy-col{position:sticky;top:96px;background:var(--white);border:1px solid #DED3C2;
  border-radius:20px;padding:28px;box-shadow:var(--shadow-card);overflow:hidden}
.buy-col::before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:var(--accent-deep)}
.buy-col .subhead{font-size:17px;color:var(--ink-soft);margin-top:var(--s2)}
.facts{list-style:none;margin:var(--s5) 0;padding:0}
.facts li{padding:var(--s1) 0 var(--s1) var(--s5);position:relative}
.facts li::before{content:"";position:absolute;left:2px;top:14px;width:7px;height:7px;
  border-radius:50%;background:var(--accent)}
.buy-note{font-size:13px;color:var(--soft);margin-top:var(--s3)}
.designed-by{display:flex;align-items:center;gap:var(--s4);margin-top:var(--s6)}
.designed-by img{width:64px;height:64px}
.designed-by p{font-size:13.5px;color:var(--soft)}
.spec-rows,.contents-rows{border-top:1px solid var(--sand)}
.spec-row,.contents-row{display:flex;justify-content:space-between;gap:var(--s5);
  padding:var(--s3) 0;border-bottom:1px solid var(--sand)}
.spec-row .label{font-weight:600;flex:none}
.spec-row .value{text-align:right;color:var(--ink-soft)}
.contents-row .item{font-weight:500}
.contents-row .cmeta{color:var(--soft);font-size:13.5px;text-align:right;flex:none}
.band-prod .contents-rows{background:var(--white);border:1px solid var(--sand);
  border-radius:16px;padding:var(--s2) var(--s5) var(--s3);box-shadow:var(--shadow-card)}
.contents-total{font-weight:700;padding-top:var(--s4)}
.print-note{background:var(--ink);color:var(--cream);border-radius:16px;
  padding:var(--s6);margin-top:var(--s7);box-shadow:var(--shadow-card)}
.print-note .kicker{color:var(--sunny)}
.print-note h3{color:var(--cream)}
.print-note p{margin-top:var(--s3);color:rgba(253,251,247,.88);max-width:760px}
.delivery ol{margin:var(--s4) 0;padding-left:20px;color:var(--ink-soft)}
.delivery li{margin:var(--s2) 0}
.license{font-size:13.5px;color:var(--soft);max-width:760px}
/* FAQ — white cards lifted on the soft tint band */
.faq-list{display:grid;gap:var(--s3)}
details.faq{background:var(--white);border:1px solid var(--sand);border-radius:12px;
  box-shadow:0 1px 3px rgba(46,42,38,.05)}
details.faq summary{font-weight:600;padding:16px var(--s5);cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;min-height:48px}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{content:"+";color:var(--gold);font-weight:700;font-size:20px;flex:none;margin-left:var(--s4)}
details.faq[open ] summary::after{content:"\2013"}
details.faq .answer{padding:0 var(--s5) var(--s5);font-size:15.5px;color:var(--ink-soft)}
/* sticky buy bar (mobile) */
.buy-bar{position:fixed;left:0;right:0;bottom:0;background:var(--white);
  border-top:3px solid var(--gold);padding:10px 16px calc(10px + env(safe-area-inset-bottom));
  display:none;align-items:center;justify-content:space-between;gap:var(--s4);z-index:40}
.buy-bar .price{font-size:18px}
.buy-bar .btn{min-height:48px;padding:12px 22px}
.buy-bar.visible{display:flex}
/* footer — deep Ink with rainbow edge + confetti along the top */
.site-footer{background:var(--ink);color:var(--cream);margin-top:var(--s9);padding:0 0 var(--s6)}
.site-footer::before{content:"";display:block;height:8px;
  background:linear-gradient(90deg,#FF6B5E,#FFC53D,#2BB3A3,#4EA8DE,#EF7AA8)}
.footer-cols{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s7);align-items:start;
  padding-top:var(--s7)}
.footer-cols .badge{width:84px;height:84px}
.footer-cols p{max-width:420px;color:rgba(253,251,247,.85)}
.footer-links{display:flex;flex-direction:column;gap:var(--s2)}
.footer-links a{color:var(--cream);text-decoration:none;font-weight:500}
.footer-links a:hover{color:var(--sunny)}
.footer-bottom{border-top:1px solid rgba(201,162,39,.4);margin-top:var(--s7);padding-top:var(--s5);
  font-size:13px;color:rgba(253,251,247,.65)}
/* get pages — Ink header/footer (shared), download on a lifted white card */
body.get-page .site-header .container{justify-content:center}
body.get-page{background:var(--accent-wash)}
.get-wrap{max-width:560px;margin:var(--s8) auto 0;padding:var(--s7) var(--s6);text-align:center;
  background:var(--white);border:1px solid #DED3C2;border-radius:20px;box-shadow:var(--shadow-lift)}
.get-wrap .badge{width:72px;height:72px;margin:0 auto var(--s5)}
.get-wrap h2{margin-bottom:var(--s3)}
.get-wrap .product-name{font-weight:600;font-size:18px;margin-bottom:var(--s5)}
.get-lines{margin-top:var(--s6);display:grid;gap:var(--s3);color:var(--ink-soft)}
.get-next{margin-top:var(--s6)}
/* responsive */
@media (max-width:1024px){
  .grid{grid-template-columns:repeat(2,1fr)}
  .trust{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:720px){
  h1{font-size:32px}
  .hero h1{font-size:38px}
  h2{font-size:26px}
  body[data-collection="birthday"] h2{font-size:26px}
  section{padding-top:var(--s7)}
  .band-deep,.band-how,.band-favorites,.band-faq,.band-prod,.master-band{padding:var(--s7) 0;margin-top:var(--s7)}
  .site-header .logo img{width:140px}
  .main-nav{gap:var(--s4)}
  .main-nav a{font-size:13px}
  .hero{padding-top:var(--s8)}
  .tiles{grid-template-columns:1fr}
  .feature{grid-template-columns:1fr;gap:var(--s5)}
  .steps{grid-template-columns:1fr}
  .grid{grid-template-columns:1fr}
  .master-grid{grid-template-columns:1fr}
  .bundle-banner{grid-template-columns:1fr}
  .mini-steps{grid-template-columns:1fr}
  .product-layout{grid-template-columns:1fr}
  .buy-col{position:static}
  .footer-cols{grid-template-columns:1fr}
  .cross-tile{flex-direction:column;align-items:flex-start}
  .spec-row,.contents-row{flex-direction:column;gap:2px}
  .spec-row .value,.contents-row .cmeta{text-align:left}
  .get-wrap{margin:var(--s6) var(--s4) 0;padding:var(--s6) var(--s5)}
}
@media (min-width:721px){.buy-bar{display:none !important}}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none !important;transition:none !important}
}
