:root{--ink:#203d4d;--ink-soft:#5e6f77;--pink:#b12270;--coral:#ffa99d;--sand:#fbf6ef;--cream:#fffdfa;--line:#e8e3dc;--warm:#c9966a;--max:1200px;font-family:"DM Sans",system-ui,sans-serif;color:var(--ink);background:var(--cream)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream)}a{color:inherit;text-decoration:none}.wrap{width:min(var(--max),calc(100% - 3rem));margin:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:1rem;top:1rem;z-index:10;background:#fff;padding:.6rem}.site-header{position:relative;background:#fff;z-index:2}.utility-bar{height:132px;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:.55rem;font-family:"Nunito Sans",sans-serif;font-size:2rem;font-weight:900;letter-spacing:-.06em}.brand-mark{width:55px;height:55px;display:grid;place-items:center;border:4px solid var(--coral);border-radius:52% 48% 44% 56%;font-size:3rem;line-height:0;color:var(--pink);transform:rotate(-16deg)}.utility-nav{display:flex;gap:2.5rem;font-weight:700;font-size:1.05rem}.utility-nav a:hover,.main-nav a:hover{color:var(--pink)}.primary-bar{border-top:2px solid #f3f0ed;border-bottom:1px solid var(--line)}.primary-content{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.main-nav{display:flex;align-items:center;gap:2.35rem;font-size:1.15rem;font-weight:700}.main-nav .featured{text-transform:uppercase;letter-spacing:.12em;font-family:"Nunito Sans",sans-serif;font-size:1.28rem;color:#9f6b53}.main-nav .featured::first-letter{color:var(--coral)}.socials{display:flex;gap:.55rem;align-items:center}.socials a,.search{width:38px;height:38px;border:2px solid var(--coral);border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ink);font-weight:900;font-size:1rem}.socials a:nth-child(3){border-color:#74513a}.socials a:nth-child(4){border-color:var(--pink)}.search{font-size:1.65rem;cursor:pointer}.menu-toggle{display:none}
.hero{min-height:447px;position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(90deg,#fffdfb 0%,rgba(255,253,251,.9) 34%,rgba(255,253,251,.15) 70%),url("https://crochet.satisfymeals.com/wp-content/uploads/2026/10/crochet-hero-original-1.png") 50% 66%/cover no-repeat;display:flex;align-items:center}.hero::after{content:none;position:absolute;right:-4%;bottom:-35%;width:61%;height:95%;z-index:-1;border-radius:44% 52% 0 0;background:radial-gradient(circle at 36% 32%,#c9e5ae 0 13%,transparent 13.5%),radial-gradient(circle at 62% 24%,#d9b07a 0 15%,transparent 15.5%),radial-gradient(circle at 85% 46%,#d99776 0 18%,transparent 18.5%),radial-gradient(circle at 62% 76%,#bfa5d4 0 15%,transparent 15.5%),radial-gradient(circle at 37% 75%,#90bda3 0 12%,transparent 12.5%);filter:saturate(.8) blur(.3px)}.hero-copy{max-width:610px;padding:2.25rem 0}.eyebrow{font-family:"Nunito Sans",sans-serif;font-weight:900;letter-spacing:.15em;text-transform:uppercase;color:#a3725b;margin:0 0 .75rem;font-size:.83rem}.hero h1{font-family:"Nunito Sans",sans-serif;font-size:clamp(2.55rem,4vw,4.3rem);line-height:1.12;letter-spacing:-.055em;margin:0 0 1.6rem;max-width:650px}.hero p{font-size:1.18rem;line-height:1.75;max-width:585px;margin:0 0 2.4rem}.button{border:0;display:inline-flex;align-items:center;gap:.65rem;padding:.85rem 1.25rem;border-radius:999px;background:var(--pink);color:#fff;font-weight:800;font-size:1.05rem;cursor:pointer}.button span{font-size:1.4rem;line-height:1}.hero-wave{position:absolute;z-index:1;right:0;bottom:-1px;left:0;height:34px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='34' viewBox='0 0 64 34'%3E%3Cpath fill='%23fffdfa' d='M0 26C11 26 13 5 32 5s21 21 32 21v8H0z'/%3E%3C/svg%3E") repeat-x bottom left/64px 34px;pointer-events:none}
.section{padding:5.5rem 0}.section-heading{text-align:center;max-width:620px;margin:0 auto 2.9rem}.section-heading h2,.intro-card h2,.bundle-copy h2,.video-copy h2{font-family:"Nunito Sans",sans-serif;letter-spacing:-.045em;font-size:clamp(2rem,3vw,3.1rem);line-height:1.15;margin:.2rem 0 0}.section-heading .eyebrow{margin-bottom:.2rem}.subtle-link{font-size:.85rem;text-decoration:underline;text-underline-offset:4px;font-weight:800}.card-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem}.pattern-card{min-height:280px;border-radius:4px;overflow:hidden;background:#fff;border:1px solid var(--line);display:flex;flex-direction:column}.placeholder{height:176px;background:linear-gradient(135deg,#fed9d0,#c1e2b3);position:relative}.placeholder::before,.placeholder::after{content:"";position:absolute;border-radius:50%;background:#fff4e5}.placeholder::before{width:90px;height:90px;left:30%;top:24%}.placeholder::after{width:60px;height:60px;right:15%;bottom:12%;background:#d79bb8}.pattern-card:nth-child(2) .placeholder{background:linear-gradient(135deg,#c5dfe6,#f9dea0)}.pattern-card:nth-child(3) .placeholder{background:linear-gradient(135deg,#d4c7ed,#fec2bb)}.pattern-card:nth-child(4) .placeholder{background:linear-gradient(135deg,#e4d4ba,#abbf9c)}.pattern-card h3{font-family:"Nunito Sans",sans-serif;font-size:1.05rem;line-height:1.35;margin:1rem 1rem .45rem}.card-meta{margin:auto 1rem 1rem;font-size:.77rem;color:#9b775e;letter-spacing:.09em;text-transform:uppercase;font-weight:800}.about-panel{background:var(--sand);padding:6.5rem 0}.about-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:6rem;align-items:center}.portrait{aspect-ratio:1;background:linear-gradient(135deg,#f7bc9c,#f3ddbb);border-radius:50% 50% 8px 8px;position:relative;overflow:hidden}.portrait::before{content:"";position:absolute;width:58%;height:58%;border-radius:50%;left:22%;top:15%;background:#a96e45}.portrait::after{content:"";position:absolute;width:64%;height:50%;border-radius:55% 55% 0 0;left:18%;bottom:-4%;background:#d79a87}.intro-card p,.bundle-copy p,.video-copy p{font-size:1.1rem;line-height:1.75;color:var(--ink-soft)}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.category{min-height:245px;position:relative;overflow:hidden;display:flex;align-items:end;padding:1.25rem;color:#fff;font-family:"Nunito Sans",sans-serif;font-weight:900;letter-spacing:.06em;text-transform:uppercase;background:linear-gradient(145deg,#527f82,#d79a87)}.category:nth-child(2){background:linear-gradient(145deg,#c48f4e,#6b9d8e)}.category:nth-child(3){background:linear-gradient(145deg,#bc846e,#718fb0)}.category:nth-child(4){background:linear-gradient(145deg,#604c73,#ceaf6d)}.category::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.36))}.category span{position:relative;z-index:1}.bundle{background:var(--pink);color:#fff;padding:5.5rem 0}.bundle-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:4rem;align-items:center}.bundle .eyebrow{color:#fbd4c7}.bundle-copy p{color:#fff}.button-light{background:#fff;color:var(--pink)}.bundle-samples{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.bundle-sample{aspect-ratio:.88;background:linear-gradient(145deg,#f8c6a4,#b3d1bd);color:var(--ink);padding:1rem;display:flex;align-items:end;font-family:"Nunito Sans",sans-serif;font-weight:900}.bundle-sample:nth-child(2){background:linear-gradient(145deg,#f5d8a3,#a5c0db)}.bundle-sample:nth-child(3){background:linear-gradient(145deg,#d3b8dc,#f5c7b3)}.video-section{background:var(--sand)}.video-layout{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.video-placeholder{min-height:335px;background:linear-gradient(135deg,#edbb9f,#a3c5ad);display:grid;place-items:center}.play{width:82px;height:82px;border-radius:50%;border:0;background:#fff;color:var(--pink);font-size:2rem;padding-left:8px}.tutorial-list{list-style:none;padding:0;margin:1.5rem 0 0}.tutorial-list li{border-top:1px solid #dbcfc4;padding:1rem 0;font-weight:700}.tutorial-list li::before{content:"→";color:var(--pink);margin-right:.7rem}.page-banner{padding:5rem 0;background:var(--sand);text-align:center}.page-banner h1{font-family:"Nunito Sans",sans-serif;font-size:clamp(2.6rem,6vw,5rem);letter-spacing:-.06em;margin:.5rem 0}.page-content{padding:4rem 0;min-height:50vh}.prose{max-width:760px;margin:auto;font-size:1.12rem;line-height:1.8;color:var(--ink-soft)}.prose h2{font-family:"Nunito Sans",sans-serif;color:var(--ink)}.article-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.article-list .pattern-card{min-height:330px}.site-footer{background:#223c4a;color:#fff}.newsletter{padding:3.4rem 0;display:flex;justify-content:space-between;align-items:center;gap:2rem;border-bottom:1px solid rgba(255,255,255,.22)}.newsletter h2{font-family:"Nunito Sans",sans-serif;font-size:1.8rem;margin:0}.newsletter .eyebrow{color:#f6b9ae}.signup{display:flex;gap:.65rem}.signup input{height:46px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;padding:0 .8rem;min-width:160px}.signup input::placeholder{color:#d4dce0}.footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem;padding:4rem 0}.footer-brand{font-size:1.45rem}.footer-brand .brand-mark{width:38px;height:38px;border-width:3px;font-size:2rem}.footer-main p{line-height:1.7;color:#d7e0e3}.footer-main h3{font-family:"Nunito Sans",sans-serif;margin:0 0 1rem}.footer-main a:not(.brand){display:block;margin:.5rem 0;color:#d7e0e3}.footer-bottom{padding:1.2rem 0;border-top:1px solid rgba(255,255,255,.18);display:flex;justify-content:space-between;color:#c0cdd1;font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);overflow:hidden}
@media(max-width:900px){.utility-bar{height:94px}.brand{font-size:1.55rem}.brand-mark{width:43px;height:43px;font-size:2.3rem}.primary-content{min-height:60px}.main-nav{gap:1.15rem;font-size:.95rem}.main-nav .featured{font-size:1rem}.socials a{display:none}.card-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.about-inner,.bundle-layout,.video-layout{gap:2.5rem}.footer-main{grid-template-columns:2fr 1fr 1fr}.footer-main>div:last-child{display:none}}
@media(max-width:640px){.wrap{width:min(100% - 2rem,var(--max))}.utility-nav{display:none}.utility-bar{height:80px}.primary-content{justify-content:space-between}.menu-toggle{display:block;border:0;background:transparent;color:var(--ink);font:800 .9rem "DM Sans";text-transform:uppercase;letter-spacing:.1em}.main-nav{display:none;position:absolute;top:140px;left:0;right:0;padding:1rem;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.main-nav.open{display:flex}.socials{margin-left:auto}.socials a{display:none}.search{width:34px;height:34px}.hero{min-height:620px;align-items:start;background:linear-gradient(180deg,rgba(255,253,251,.96) 0 45%,rgba(255,253,251,.48) 68%,rgba(255,253,251,.1)),url("https://crochet.satisfymeals.com/wp-content/uploads/2026/10/crochet-hero-original-1.png") 50% 66%/cover no-repeat}.hero::after{width:120%;height:54%;right:-12%;bottom:-5%}.hero-copy{padding:3.7rem 0 2rem}.hero h1{font-size:2.8rem}.hero p{font-size:1.02rem}.section{padding:4rem 0}.card-grid,.category-grid,.article-list{grid-template-columns:1fr}.pattern-card{min-height:250px}.category{min-height:190px}.about-inner,.bundle-layout,.video-layout{grid-template-columns:1fr}.portrait{max-width:300px}.bundle-samples{grid-template-columns:1fr 1fr}.bundle-sample:last-child{display:none}.newsletter{align-items:flex-start;flex-direction:column}.signup{width:100%;flex-direction:column}.signup input{width:100%}.footer-main{grid-template-columns:1fr 1fr}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{gap:1rem;flex-direction:column}.page-banner{padding:3rem 0}.page-content{padding:3rem 0}}

/* Storyland-inspired typography and hero alignment */
body{font-family:-apple-system,system-ui,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.hero h1,.section-heading h2,.intro-card h2,.bundle-copy h2,.video-copy h2,.page-banner h1{font-family:"Jost",sans-serif;font-weight:500}@media(min-width:641px){.hero-copy{transform:translateX(3rem)}}
