:root{--pink:#f35ba8;--purple:#7c3aed;--plum:#45205c;--soft:#ffe3f1;--cream:#fff8ee;--yellow:#ffd85a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--plum);font:18px/1.55 ui-rounded,'Trebuchet MS',Arial,sans-serif}h1,h2,h3,.brand{font-family:'Trebuchet MS',ui-rounded,sans-serif;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(3rem,7vw,6.7rem);margin:.12em 0}h2{font-size:clamp(2rem,4vw,3.5rem);margin:.1em 0 .4em}h3{font-size:1.5rem;margin:.3em 0}a{color:inherit}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:4px solid var(--purple);outline-offset:4px}.skip{position:absolute;top:-100px;left:1rem;background:white;padding:.5rem;z-index:10}.skip:focus{top:1rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:13px max(4%,calc((100vw - 1320px)/2));background:#fff0f8;box-shadow:0 3px 15px #45205c15;position:relative;z-index:2}.brand{font-size:2rem;font-weight:1000;text-decoration:none;font-style:italic;white-space:nowrap}.brand span,h1 span{color:#df1685}.site-header nav,footer nav{display:flex;flex-wrap:wrap;gap:clamp(.5rem,2vw,2rem);align-items:center}.site-header nav a,footer nav a{text-decoration:none;font-weight:700;font-size:1rem}.site-header nav a:hover,.site-header nav a[aria-current]{color:#b80070;text-decoration:underline;text-underline-offset:7px}.menu-toggle{display:none}.hero{background:radial-gradient(circle at 75% 15%,#f5b2db,transparent 48%),linear-gradient(135deg,#fff6e9,#ffe0f0);min-height:590px;display:grid;grid-template-columns:42% 58%;align-items:center;overflow:hidden;padding-left:max(5%,calc((100vw - 1300px)/2))}.hero-copy{position:relative;z-index:1;padding:4rem 0}.hero-copy h1{font-style:italic}.hero-line{font-weight:900;font-size:clamp(1.5rem,2.5vw,2.3rem);line-height:1.2}.hero-copy>p:not(.hero-line){max-width:540px}.hero-art{width:100%;height:590px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 20px #45205c25)}.eyebrow{font-weight:900;text-transform:uppercase;letter-spacing:.11em;color:#a00c69;font-size:.8rem}.actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:1.5rem}.button{display:inline-block;border:0;border-radius:100px;padding:.8rem 1.4rem;background:linear-gradient(120deg,#e61683,#f35ba8);color:white;text-decoration:none;font-weight:900;box-shadow:0 5px 0 #a31966,0 8px 18px #84246444;text-align:center}.button:hover{transform:translateY(-2px)}.button.secondary{background:linear-gradient(120deg,#6b21ca,#9c53f5);box-shadow:0 5px 0 #4f1d84,0 8px 18px #4f1d8444}.section{max-width:1300px;margin:auto;padding:4rem 5%}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.section-heading>a{font-weight:900;color:#b80070}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}.recipe-card{display:block;border:5px solid white;border-radius:18px;background:#fff;padding:1.4rem;text-decoration:none;box-shadow:0 8px 22px #45205c22;transition:transform .2s}.recipe-card:hover{transform:rotate(-1deg) translateY(-5px)}.recipe-icon{display:grid;place-items:center;font-size:4.5rem;height:170px;background:linear-gradient(135deg,#ffdbed,#fff4d3);border-radius:12px}.recipe-card p{margin:.3rem 0}.card-more{font-weight:900;color:#b80070}.draft-note{background:#fff1cd;border-left:5px solid #bb7613;padding:.7rem 1rem;border-radius:5px;font-size:.9rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem}.note,.game{padding:2rem;border-radius:18px;background:#ffe0f0;box-shadow:0 7px 20px #45205c16}.note.yellow,.game.yellow{background:#fff0b3}.note p{font-size:1.4rem;font-weight:800;min-height:3.5em}.play-feature{background:#ffdded;border-radius:24px;display:flex;justify-content:space-between;align-items:center;gap:2rem}.doodle{font-size:clamp(3rem,6vw,7rem);text-align:center;line-height:1.2}.scrapbook{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;align-items:center;background:linear-gradient(130deg,#bbb,#f8f8f8 30%,#aaa 60%,#eee);border:12px solid #999;border-radius:24px;margin:3rem auto;box-shadow:inset 0 0 18px #5558,0 10px 20px #45205c3b}.polaroid,.shopping{background:white;padding:1rem;box-shadow:3px 8px 12px #3335;transform:rotate(-4deg);text-align:center}.rainbow{font-size:5rem;background:#e8f3ff}.shopping{background:#fffcef;text-align:left;transform:rotate(3deg)}.shopping ul{margin:0;padding-left:1.5rem}.adventures{background:linear-gradient(90deg,#ecf8ff,#fff1f8);max-width:none;padding-left:max(5%,calc((100vw - 1170px)/2));padding-right:max(5%,calc((100vw - 1170px)/2))}.adventures blockquote{font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;font-weight:900;margin:1rem 0}.page-intro{text-align:center;background:#ffe4f0;padding:4rem 5%}.page-intro h1{font-size:clamp(2.8rem,6vw,5rem)}.page-intro p{font-size:1.25rem}.recipe-detail{max-width:1000px;margin:auto;padding:3rem 5%}.recipe-detail h1{font-size:clamp(3rem,6vw,5rem)}.back{display:block;margin-bottom:2rem}.lead{font-size:1.45rem}.recipe-meta{display:flex;gap:1rem;flex-wrap:wrap}.recipe-meta span{background:var(--soft);padding:.5rem 1rem;border-radius:30px;font-weight:800}.recipe-columns{display:grid;grid-template-columns:1fr 1.5fr;gap:2rem;margin:2rem 0}.recipe-columns section,.tip{background:white;border-radius:16px;padding:1.5rem;box-shadow:0 5px 20px #45205c15}.recipe-columns li{margin:.5rem 0}.tip{background:#fff0bb;margin-bottom:2rem}.cupcakes{font-size:2.4rem;letter-spacing:.2rem;min-height:100px;overflow-wrap:anywhere}.answer-buttons{display:flex;gap:10px;flex-wrap:wrap}.answer-buttons button{font-size:1.5rem;font-weight:900;border:3px solid var(--plum);border-radius:16px;background:white;min-width:70px;min-height:65px}.answer-buttons button:hover{background:var(--soft)}.feedback{min-height:2em;font-weight:900}.sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.sheet-card{background:white;border-radius:15px;padding:1rem;box-shadow:0 8px 20px #45205c22}.sheet-card img{width:100%;aspect-ratio:210/297;object-fit:contain;border:1px solid #ddd}.sheet-card .button{font-size:.9rem}.about-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:2rem}.about-layout img{width:100%}footer{background:#ffe3f1;padding:3rem 5%;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}footer .brand{font-size:1.5rem}footer p,footer small{margin:0}footer nav{width:100%;justify-content:center}details{background:white;border-radius:10px;padding:.8rem}summary{cursor:pointer;font-weight:900}@media(max-width:800px){.site-header{flex-wrap:wrap}.menu-toggle{display:block;background:white;border:2px solid var(--plum);border-radius:12px;padding:.4rem .7rem}.site-header nav{display:none;width:100%;flex-direction:column;align-items:stretch}.site-header nav.open{display:flex}.site-header nav a{padding:.5rem}.hero{grid-template-columns:1fr;padding:1.5rem 5% 0}.hero-copy{padding:2rem 0}.hero-art{height:auto;max-height:500px}.cards,.sheet-grid{grid-template-columns:repeat(2,1fr)}.scrapbook{margin:2rem 5%}.about-layout{grid-template-columns:1fr}}@media(max-width:600px){body{font-size:16px}.cards,.split,.sheet-grid,.scrapbook,.recipe-columns{grid-template-columns:1fr}.section{padding:3rem 5%}.play-feature{display:block}.doodle{padding-top:1rem}.recipe-icon{height:120px}.recipe-meta{gap:.5rem}.sheet-card .actions{display:grid}footer{display:block;text-align:center}footer nav{margin:1rem 0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media print{.site-header,footer,.skip,.print-button,.back,.draft-note{display:none!important}body{color:black;background:white;font:12pt Georgia,serif}.recipe-detail{max-width:none;padding:0}.recipe-columns{grid-template-columns:1fr 1.3fr;gap:1cm}.recipe-columns section,.tip{box-shadow:none;border:1px solid #aaa;break-inside:avoid}h1{font-size:30pt}h2{font-size:18pt}}
.activity-links{display:flex;gap:1rem;align-items:center}.activity-links a{display:grid;place-items:center;min-height:170px;min-width:150px;font-size:1.4rem;font-weight:900;text-decoration:none;background:#fff9c9}.activity-links a:last-child{transform:rotate(4deg);background:#fff}.activity-links a:hover,.polaroid:hover{outline:3px solid var(--purple)}.scrapbook>a.polaroid{display:block;text-decoration:none}.split.section:has(#saying){max-width:none;background:#57216f;padding-left:max(5%,calc((100vw - 1170px)/2));padding-right:max(5%,calc((100vw - 1170px)/2))}.split.section:has(#saying) .note{background:#fff9d9;transform:rotate(-1deg)}.split.section:has(#saying) .note.yellow{transform:rotate(1deg)}@media(max-width:600px){.activity-links{flex-wrap:wrap}.activity-links a{min-width:130px;min-height:130px}}
/* The review copy frames Craig's original concept PNG; it does not redraw it. */
.concept-crop{display:block;width:100%;height:auto;overflow:hidden}
.hero .hero-art{width:100%;height:auto;min-height:0;filter:drop-shadow(0 12px 20px #45205c25)}
.recipe-card .recipe-concept{height:150px;border-radius:12px;object-fit:cover;margin-bottom:.5rem}
.activity-links a{min-width:230px;padding:.6rem;gap:.5rem;text-align:center}
.activity-concept{width:100%;height:145px;border-radius:6px}
.fridge-concept{height:100px;margin-bottom:.6rem}
.adventures-concept{max-width:650px;margin:1.5rem 0;border-radius:18px}
@media(max-width:800px){.hero .hero-art{max-height:none}.activity-links{flex-wrap:wrap}}
/* Destination pages carry the same kitchen art and scrapbook palette as the exact-image home. */
.page-intro{min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.7rem;background:linear-gradient(90deg,#ffe3f1d9,#fff8eec7),url('/assets/approved-concept.png') center 19% / cover;border-bottom:12px solid #7c3aed}
.page-intro h1,.page-intro p,.page-intro .eyebrow{display:inline-block;max-width:1000px;margin:.15rem 0;padding:.25rem 1rem;background:#fff8eeeb;border-radius:14px;box-shadow:0 4px 0 #df16854d}
.page-intro h1{font-style:italic;text-shadow:2px 2px 0 #f7bfdc}
.recipe-card,.sheet-card,.game,.recipe-columns section,.tip{border:3px solid white;box-shadow:0 9px 22px #45205c29}
.recipe-card:nth-child(2),.sheet-card:nth-child(2){transform:rotate(1deg)}
.recipe-card:nth-child(3),.sheet-card:nth-child(3){transform:rotate(-1deg)}
.recipe-card:hover,.sheet-card:hover{transform:translateY(-4px)}
.recipe-detail{background:#fff8ee;border-radius:20px;margin-top:2rem;margin-bottom:2rem;box-shadow:0 12px 30px #45205c22}
.recipe-photo{max-width:560px;margin:1rem auto 1.5rem;border:10px solid white;border-radius:12px;box-shadow:0 9px 22px #45205c30}
@media(max-width:600px){.page-intro{min-height:280px;padding:2rem 5%}.page-intro h1{font-size:2.5rem}.recipe-card:nth-child(2),.sheet-card:nth-child(2),.recipe-card:nth-child(3),.sheet-card:nth-child(3){transform:none}}
.subpage{min-height:100vh;display:flex;flex-direction:column;background:linear-gradient(#fff8ee,#fff3f9)}
.subpage main{flex:1}
.subpage footer{margin-top:auto}
.page-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);grid-template-rows:auto auto auto;align-content:center;align-items:center;gap:.7rem 2rem;min-height:370px;padding:2rem max(5%,calc((100vw - 1280px)/2));text-align:left;background:linear-gradient(120deg,#ffe3f1,#fff8ee 70%);overflow:hidden}
.page-intro .eyebrow,.page-intro h1,.page-intro p{grid-column:1;max-width:100%;justify-self:start}
.page-intro .page-intro-art{grid-column:2;grid-row:1 / span 3;width:100%;height:auto;align-self:center;border:8px solid white;border-radius:20px;box-shadow:0 13px 28px #45205c38}
.page-intro h1{font-size:clamp(2.5rem,4.7vw,4.8rem)}
@media(max-width:800px){.page-intro{grid-template-columns:1fr;min-height:0;text-align:center}.page-intro .eyebrow,.page-intro h1,.page-intro p{grid-column:1;justify-self:center}.page-intro .page-intro-art{grid-column:1;grid-row:auto;max-width:650px;justify-self:center}}
@media print{.subpage{display:block}}
