:root{--ink:#20212B;--cream:#F7F1E8;--pink:#B58D9D;--orange:#93BD96;--lightpink:#B58D9D;--lavender:#DADCE5;--error:#a71632;--radius:24px}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:17px/1.65 'DM Sans',sans-serif}h1,h2,h3{font-family:'Fredoka',sans-serif;font-weight:600;line-height:1.05;letter-spacing:-.035em;margin:0 0 20px}h1{font-size:clamp(52px,6.7vw,104px)}h2{font-size:clamp(35px,4vw,61px)}h3{font-size:28px;letter-spacing:-.02em}p{margin:0 0 22px}a{color:inherit}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button,.button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #444859;outline-offset:5px}button{color:var(--ink);background:var(--cream);border:2px solid var(--ink);border-radius:99px;padding:10px 22px;font-weight:700}button:disabled{opacity:.55;cursor:not-allowed}img{display:block;max-width:100%}.topline{background:var(--ink);color:var(--cream);text-align:center;padding:8px 20px;font-size:12px;letter-spacing:.14em;text-transform:uppercase}header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 4.5%;border-bottom:2px solid var(--ink);background:var(--cream);position:relative;z-index:5}.brand{width:170px;flex-shrink:0}.brand img{height:90px;width:100%;object-fit:contain}nav{display:flex;gap:24px}nav a{text-decoration:none;font-weight:700;font-size:14px;white-space:nowrap}nav a:hover,nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}#menu{display:none}.cart-open{white-space:nowrap;background:var(--lightpink);font-size:14px}.cart-open span{margin-left:10px}.skip{position:absolute;top:-100px;z-index:100;background:white}.skip:focus{top:0}.hero{display:grid;grid-template-columns:1.1fr 1fr;min-height:640px;overflow:hidden;background:var(--orange);padding:65px 6% 55px;gap:4%}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;margin-bottom:23px}.hero h1{font-size:clamp(60px,6.7vw,112px);letter-spacing:-.05em;line-height:.98}.hero h1 span{color:var(--cream);text-shadow:3px 3px 0 var(--ink)}.lead{font-size:20px;max-width:580px;line-height:1.6}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin:30px 0}.button{display:inline-flex;align-items:center;gap:28px;border:2px solid var(--ink);border-radius:100px;padding:15px 26px;text-decoration:none;font-weight:700;box-shadow:4px 4px 0 var(--ink);transition:transform .2s,box-shadow .2s}.dark{background:var(--ink);color:var(--cream);box-shadow:4px 4px 0 var(--pink)}.button:hover{transform:translateY(-3px);box-shadow:5px 7px 0 var(--pink)}.text-link{font-weight:700;text-decoration:underline;text-underline-offset:5px}.tiny,.caption{font-size:13px}.hero-art{position:relative;min-width:0;display:flex;align-items:center;justify-content:center}.hero-photo{width:82%;background:var(--cream);padding:14px 14px 0;border:3px solid var(--ink);box-shadow:12px 12px 0 var(--ink);transform:rotate(7deg);text-decoration:none;position:relative;z-index:1}.hero-photo img{width:100%;height:360px;object-fit:cover;object-position:50% 60%}.hero-photo span{display:block;font-size:13px;font-weight:700;padding:15px 4px}.blob{position:absolute;width:120%;height:90%;background:var(--pink);border:3px solid var(--ink);border-radius:45% 55% 30% 60% / 58% 30% 70% 50%;transform:rotate(-20deg)}.star{position:absolute;left:-25px;top:-20px;z-index:2;font-size:130px;line-height:1;color:var(--cream);text-shadow:3px 3px 0 var(--ink)}.sticker{position:absolute;z-index:2;bottom:10px;right:-5px;background:var(--lavender);border:2px solid var(--ink);border-radius:50%;width:155px;height:155px;display:flex;align-items:center;justify-content:center;text-align:center;font-family:Fredoka,sans-serif;font-size:23px;line-height:1.1;transform:rotate(-12deg);box-shadow:5px 5px 0 var(--ink)}.ticker{overflow:hidden;white-space:nowrap;background:var(--pink);border-block:2px solid var(--ink);font-family:Fredoka,sans-serif;font-size:25px;letter-spacing:.06em;padding:12px 0}.section{padding:70px 6%}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:32px}.section-heading h2{margin-bottom:0}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.card{display:block;border:2px solid var(--ink);border-radius:var(--radius);overflow:hidden;text-decoration:none;background:var(--lightpink);transition:transform .2s,box-shadow .2s;min-width:0}.card:nth-child(3n+2){background:var(--lavender)}.card:nth-child(3n){background:#93BD96}.card:hover{transform:translateY(-5px);box-shadow:6px 7px 0 var(--ink)}.picture{padding:18px;background:#F7F1E8}.picture img{height:300px;width:100%;object-fit:contain;border-radius:12px;background:#E8E3DB}.card-copy{padding:24px}.card-copy h3{margin:6px 0 12px}.card-copy p{font-size:15px;line-height:1.55;margin:0}.card-copy small{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.section>.caption{margin-top:22px}.custom-band{background:var(--pink);border-block:2px solid var(--ink);display:grid;grid-template-columns:1fr 1.4fr;gap:7%;padding:70px 10%;align-items:center}.custom-band h2{font-size:clamp(42px,5.5vw,80px)}.custom-band p{max-width:620px}.big-flower{font-size:clamp(200px,30vw,460px);line-height:1;color:var(--orange);text-shadow:5px 5px 0 var(--ink);transform:rotate(12deg)}.story-teaser{text-align:center;max-width:1000px;margin:auto;padding-block:90px}.story-teaser p{max-width:690px;margin-inline:auto}.page-intro{padding:65px 6%;background:var(--lightpink);border-bottom:2px solid var(--ink)}.page-intro .lead{max-width:800px;margin-bottom:0}.page-intro h1{font-size:clamp(48px,6.2vw,90px)}body[data-page=shop] .page-intro,body[data-page=blog] .page-intro{background:var(--orange)}body[data-page=custom] .page-intro{background:var(--lavender)}footer{background:var(--ink);color:var(--cream);padding:60px 6%;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:35px}footer h2{font-size:48px;color:var(--lightpink)}footer a{display:block;margin-bottom:14px;text-decoration:none}footer a:hover{text-decoration:underline}footer p{font-size:13px}.form-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:9%}.form-layout h2{font-size:38px}.steps{padding-left:30px}.steps li{padding-left:8px;margin:28px 0}.steps li::marker{font:600 26px Fredoka,sans-serif}.steps h3{font-size:25px;margin-bottom:12px}.steps p{font-size:16px}.note{padding:25px;background:var(--lightpink);border:2px solid var(--ink);border-radius:var(--radius)}.note p{margin:8px 0 0}.form-panel{background:white;border:2px solid var(--ink);border-radius:var(--radius);padding:35px;box-shadow:8px 8px 0 var(--pink)}label{display:block;font-size:14px;font-weight:700;margin:16px 0}input,textarea,select{width:100%;border:1.5px solid var(--ink);background:var(--cream);border-radius:10px;padding:12px 14px;color:var(--ink);margin-top:7px}textarea{min-height:130px;resize:vertical}input[type=checkbox]{width:auto;margin-right:10px}.error{color:var(--error);font-size:14px}.empty{grid-column:1/-1;border:2px dashed var(--ink);border-radius:var(--radius);padding:50px;text-align:center;background:#F7F1E8}.empty h2{font-size:36px}.empty p{max-width:630px;margin:0 auto 25px}.shop-tools{display:flex;gap:20px;max-width:700px;margin-bottom:35px}.shop-tools label{flex:1}.about-layout,.detail{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:start}.about-image{position:relative;background:var(--orange);padding:25px;border:2px solid var(--ink);border-radius:44% 44% 25px 25px;transform:rotate(-3deg)}.about-image img{border-radius:42% 42% 10px 10px}.about-image .sticker{bottom:-45px;right:-15px}.prose h2{font-size:35px;margin-top:36px}.prose p{line-height:1.85}.prose h2:first-child{margin-top:0}.detail{margin-top:40px}.detail h1{font-size:clamp(40px,4vw,62px)}.detail>img{width:100%;max-height:650px;object-fit:contain;background:#E8E3DB;border-radius:var(--radius);border:2px solid var(--ink)}.detail .button{margin-top:20px}.post-body{max-width:850px;margin:40px auto}.post-body h1{font-size:60px}.post-body img{border-radius:var(--radius);margin:25px 0}dialog{border:2px solid var(--ink);border-radius:var(--radius);background:var(--cream);color:var(--ink);width:min(600px,92vw);max-height:90vh;padding:35px}dialog::backdrop{background:#20212B99}dialog h2{font-size:38px;margin-right:30px}.close{position:absolute;right:14px;top:14px;padding:0 10px;font-size:27px;border:0;background:transparent}.cart-line{display:grid;grid-template-columns:80px 1fr;gap:18px;border-bottom:1px solid #B58D9D;padding:20px 0}.cart-line img{height:95px;object-fit:contain}.cart-line h3{font-size:23px;margin-bottom:8px}.cart-line input{max-width:80px}.cart-total{margin:20px 0}.choices{display:flex;flex-wrap:wrap;gap:8px}.choices button[aria-pressed=true]{background:var(--ink);color:var(--cream)}[hidden]{display:none!important}
@media(min-width:1500px){.hero,.section,.page-intro,header,footer{padding-left:max(6%,calc((100vw - 1440px)/2));padding-right:max(6%,calc((100vw - 1440px)/2))}}
@media(max-width:1050px){nav{gap:14px}nav a{font-size:12px}.brand{width:140px}.hero{padding:55px 5%;min-height:600px}.hero-photo img{height:310px}.star{font-size:100px}.grid{gap:20px}.picture img{height:240px}.card-copy{padding:20px}.form-layout{gap:5%}}
@media(max-width:760px){header{padding:8px 5%;gap:14px;flex-wrap:wrap}.brand{width:125px}.brand img{height:68px}#menu{display:block;margin-left:auto;font-size:13px;padding:8px 14px}.cart-open{padding:8px 13px}nav{display:none;order:4;flex-basis:100%;padding:15px 0;flex-wrap:wrap;gap:20px}nav.open{display:flex}nav a{font-size:14px}.topline{font-size:9px;letter-spacing:.1em}.hero{grid-template-columns:1fr;padding:45px 6% 60px;gap:45px}.hero h1{font-size:clamp(56px,13vw,85px)}.lead{font-size:18px}.hero-art{min-height:400px;margin:0 5%}.hero-photo{max-width:340px;width:85%}.hero-photo img{height:300px}.star{left:0;top:-15px}.sticker{width:125px;height:125px;font-size:20px;bottom:0;right:0}.blob{width:105%}.actions{gap:22px}.section{padding:45px 6%}.section-heading{display:block}.section-heading .text-link{display:block;margin-top:20px}.grid{grid-template-columns:1fr 1fr;gap:16px}.featured{grid-template-columns:1fr}.featured .picture img{height:320px}.picture{padding:10px}.picture img{height:180px}.card-copy{padding:16px}.card-copy h3{font-size:23px}.card-copy p{font-size:13px}.card-copy small{font-size:9px}.custom-band{grid-template-columns:1fr;padding:45px 7%;gap:0}.big-flower{display:none}.custom-band h2{font-size:54px}.page-intro{padding:45px 6%}.form-layout,.about-layout,.detail{grid-template-columns:1fr;gap:40px}.form-panel{padding:25px}.about-image{max-width:480px;margin:0 20px 30px 0}.prose h2{font-size:32px}.detail h1{font-size:42px}.shop-tools{display:block}.empty{padding:32px 20px}.empty h2{font-size:32px}footer{grid-template-columns:1fr 1fr;padding:45px 6%;gap:25px}footer>div:first-child{grid-column:1/-1}footer h2{font-size:42px}footer a{font-size:14px}.post-body h1{font-size:42px}.ticker{font-size:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Tufting trivia with Brittany */
.tuft-trivia{max-width:1000px;margin:36px auto; padding:20px 32px;display:grid;grid-template-columns:200px minmax(0,1fr);gap:30px;align-items:center}
.tuft-trivia img{width:200px;height:300px;object-fit:contain}
.tuft-bubble{position:relative;background:var(--lightpink);border:2px solid var(--ink);border-radius:28px;padding:30px 34px;box-shadow:6px 6px 0 var(--ink)}
.tuft-bubble:before{content:"";position:absolute;left:-12px;top:60%;width:20px;height:20px;background:inherit;border-left:2px solid var(--ink);border-bottom:2px solid var(--ink);transform:rotate(45deg)}
.tuft-trivia.lavender .tuft-bubble{background:var(--lavender)}
.tuft-trivia.peach .tuft-bubble{background:#93BD96}
.tuft-bubble .eyebrow{font-size:11px;margin-bottom:12px}
.tuft-bubble h2{font-size:clamp(25px,3vw,36px);line-height:1.12;margin-bottom:16px}
.tuft-bubble p{font-size:16px;line-height:1.65;margin-bottom:12px}
.tuft-source{font-size:12px;text-underline-offset:3px}
@media(max-width:600px){.tuft-trivia{margin:24px auto;padding:16px 6%;grid-template-columns:1fr;gap:12px}.tuft-trivia img{width:140px;height:210px;margin:auto}.tuft-bubble{padding:24px;box-shadow:4px 4px 0 var(--ink)}.tuft-bubble:before{left:calc(50% - 10px);top:-12px;transform:rotate(135deg)}.tuft-bubble p{font-size:15px}}

/* Requested visual refinements */
.hero-art>.sticker{top:-20px;left:-25px;right:auto;bottom:auto}
.tuft-bubble .eyebrow{text-transform:none}
.about-image img{width:100%;height:auto}
@media(max-width:760px){.hero-art>.sticker{top:-15px;left:0;right:auto;bottom:auto}}

/* Keep the shortened banner fully visible on small screens. */
.ticker{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;white-space:normal;overflow:visible;text-align:center;padding:12px 16px;font-size:clamp(14px,3.5vw,25px)}
.ticker>span{white-space:nowrap}

/* Dusty blue, mauve, green and parchment palette */
:root{--dusty-blue:#777B91;--mauve:#B58D9D;--green:#93BD96;--parchment:#F7F1E8}
.hero-photo{box-shadow:12px 12px 0 var(--dusty-blue)}.button.dark{box-shadow:4px 4px 0 var(--dusty-blue)}.tuft-bubble{box-shadow:6px 6px 0 var(--dusty-blue)}.form-panel{box-shadow:8px 8px 0 var(--dusty-blue)}

/* Light purple replaces dark background surfaces. */
.topline,.dark,footer,.choices button[aria-pressed=true]{background:var(--lavender);color:var(--ink)}
footer h2{color:var(--ink)}
dialog::backdrop{background:#DADCE5CC}

/* Center Etsy action with balanced space below the shop introduction. */
body[data-page="shop"] .page-intro{padding-bottom:0}
body[data-page="shop"] .page-intro .lead{margin-bottom:0}
.etsy-shop-action{display:flex;justify-content:center;align-items:center;padding:clamp(28px,4vw,40px) 0}
