:root{--tgg-ink:#213c40;--tgg-deep:#006a72;--tgg-deep-soft:#127d84;--tgg-aqua:#86cfca;--tgg-mist:#e6f4f2;--tgg-cream:#fdfcf7;--tgg-sun:#f7971b;--tgg-leaf:#cddb35;--tgg-plum:#886aae;--tgg-quiet:#5d7370;--tgg-rule:rgba(33,60,64,.14);--tgg-rule-dark:rgba(255,255,255,.18);--tgg-display:'Bubblegum Sans', system-ui, sans-serif;--tgg-text:'Signika', system-ui, sans-serif}


* { box-sizing: border-box; margin: 0; }
html { scroll-behavior: smooth; }
body.ribwrap {
  font-family: var(--tgg-text);
  color: var(--tgg-ink);
  background: var(--tgg-cream);
  line-height: 1.6;
  font-size: 16px;
  --tgg-sub: var(--tgg-quiet);
  --tgg-line: var(--tgg-rule);
  --tgg-card: #ffffff;
  --tgg-kick: var(--tgg-deep);
  --tgg-price: var(--tgg-deep);
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
h1, h2, h3 { font-family: var(--tgg-text); font-weight: 700; line-height: 1.18; letter-spacing: .002em; }
h1, h2 { text-wrap: balance; }
table { border-collapse: collapse; width: 100%; }
button { font: inherit; cursor: pointer; }

.ribskip {
  position: absolute; left: -999px; top: 0; z-index: 30;
  background: var(--tgg-deep); color: var(--tgg-cream); padding: .6rem 1.1rem; border-radius: 0 0 12px 0;
}
.ribskip:focus { left: 0; }
.ribcrown { background: var(--tgg-cream); border-bottom: 3px solid var(--tgg-aqua); }
.ribbar {
  max-width: 1120px; margin: 0 auto; padding: .7rem 1.35rem;
  display: flex; flex-wrap: wrap; align-items: center; gap: .4rem 1.4rem;
}
.ribbrand { display: inline-flex; align-items: center; }
.ribbrand img { height: 46px; width: auto; }
.ribmenu { display: flex; flex-wrap: wrap; gap: .1rem 1.15rem; font-size: .74rem; font-weight: 700; text-transform: uppercase; letter-spacing: .05em; margin-left: .6rem; }
.ribmenu a { text-decoration: none; color: var(--tgg-quiet); padding: .3rem 0; border-bottom: 2px solid transparent; }
.ribmenu a:hover { color: var(--tgg-deep); }
.ribmenu a[aria-current] { color: var(--tgg-deep); border-bottom-color: var(--tgg-sun); }
.ribbar .hugbtn { margin-left: auto; padding: .45rem .95rem; font-size: .72rem; }
.ribmain { min-height: 60vh; }

.satinband { padding: 3.5rem 1.35rem; }
.satinband > * { max-width: 1120px; margin-left: auto; margin-right: auto; }
.satinplain { background: var(--tgg-cream); }
.satintint { background: var(--tgg-mist); }
.satindark {
  background: var(--tgg-deep); color: var(--tgg-cream);
  --tgg-sub: rgba(255,255,255,.78);
  --tgg-line: var(--tgg-rule-dark);
  --tgg-card: var(--tgg-deep-soft);
  --tgg-kick: var(--tgg-aqua);
  --tgg-price: #ffffff;
}
.satintitle { font-size: clamp(1.5rem, 3vw, 2.05rem); margin-bottom: .7rem; text-align: center; }
.satintitle::after {
  content: ''; display: block; width: 66px; height: 7px; border-radius: 4px; margin: .6rem auto 0;
  background: linear-gradient(90deg, var(--tgg-aqua) 0 34%, var(--tgg-sun) 34% 67%, var(--tgg-plum) 67%);
}
.satinsub { color: var(--tgg-sub); max-width: 700px; margin: 0 auto 1.6rem; text-align: center; }

.satinsub:first-child {
  margin-bottom: .55rem; font-size: .76rem; letter-spacing: .16em;
  text-transform: uppercase; font-weight: 700; color: var(--tgg-kick);
}
.satinsub:has(+ .satintitle) {
  margin-bottom: .55rem; font-size: .76rem; letter-spacing: .16em;
  text-transform: uppercase; font-weight: 700; color: var(--tgg-kick);
}

.hugbtn, .hugghost, .hugbuy {
  display: inline-block; text-decoration: none; border-radius: 8px;
  padding: .72rem 1.55rem; font-size: .8rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .06em; border: 2px solid transparent;
  transition: transform .18s ease, background .18s ease, border-color .18s ease, color .18s ease;
}
.hugbtn { background: var(--tgg-sun); color: var(--tgg-ink); box-shadow: 0 6px 16px rgba(247,151,27,.28); }
.hugbtn:hover { background: #ffa93c; transform: translateY(-1px); }
.hugghost { border-color: var(--tgg-line); color: inherit; }
.hugghost:hover { border-color: var(--tgg-sun); transform: translateY(-1px); }
.hugbuy { background: var(--tgg-deep); color: var(--tgg-cream); border: 0; }
.hugbuy:hover { background: var(--tgg-deep-soft); transform: translateY(-1px); }
.satindark .hugbuy { background: var(--tgg-sun); color: var(--tgg-ink); }
.satindark .hugbuy:hover { background: #ffa93c; }

.cuddlegrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(235px, 1fr)); gap: 1.25rem; }
.cuddlecard {
  position: relative; display: flex; flex-direction: column; min-height: 0;
  background: var(--tgg-card); border: 1px solid var(--tgg-line); border-radius: 12px; overflow: hidden;
  box-shadow: 0 2px 12px rgba(2,48,53,.07);
  transition: transform .18s ease, box-shadow .18s ease;
}
.cuddlecard:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(2,48,53,.16); }
.cuddleshot { display: block; background: #fff; padding: 1.1rem; border-bottom: 1px solid var(--tgg-line); }
.cuddleshot img { aspect-ratio: 1 / 1; object-fit: contain; width: 100%; transition: transform .35s ease; }
.cuddlecard:hover .cuddleshot img { transform: scale(1.05); }
.cuddlebadge {
  position: absolute; top: .7rem; left: .7rem; z-index: 2;
  background: var(--tgg-plum); color: #fff;
  font-size: .68rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em;
  padding: .2rem .7rem; border-radius: 999px;
}
.cuddlename { font-size: .97rem; font-weight: 700; line-height: 1.35; padding: .8rem .95rem 0; }
.cuddlename a { text-decoration: none; }
.cuddlename a:hover { color: var(--tgg-deep); }
.satindark .cuddlename a:hover { color: var(--tgg-aqua); }
.cuddlespec { font-size: .8rem; color: var(--tgg-sub); padding: .25rem .95rem 0; }
.cuddleprice { font-weight: 700; font-size: 1.2rem; color: var(--tgg-price); padding: .3rem .95rem 0; }
.cuddleact { margin-top: auto; padding: .8rem .95rem 1rem; }
.cuddleact .hugbuy, .cuddleact .hugbtn { display: block; width: 100%; text-align: center; }

.blankiehero { text-align: center; }
.blankielede { max-width: 840px; margin: 0 auto; }
.blankielede .satinsub:first-child {
  display: inline-block; border: 1px solid rgba(255,255,255,.4); border-radius: 999px;
  padding: .34rem 1.05rem; color: var(--tgg-cream); margin-bottom: 1.1rem;
}
.blankielede h1 {
  font-size: clamp(2.2rem, 4.8vw, 3.25rem); line-height: 1.08;
  text-transform: uppercase; letter-spacing: .015em; margin: 0 0 .9rem;
}
.blankielede > p { margin: 0 auto 1.4rem; max-width: 640px; font-size: 1.05rem; color: rgba(255,255,255,.88); }
.blankiestat {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 1.2rem 2.6rem;
  margin-top: 2.4rem; font-size: .78rem; text-transform: uppercase; letter-spacing: .09em; color: var(--tgg-sub);
}
.blankiestat b { display: block; font-family: var(--tgg-display); font-weight: 400; font-size: 1.6rem; letter-spacing: 0; text-transform: none; color: var(--tgg-cream); }
.blankiehero .burrowband { grid-template-columns: repeat(5, 1fr); gap: .95rem; margin-top: 1.4rem; text-align: left; }
.blankiehero .burrowitem {
  border: 0; background: #fff; color: var(--tgg-ink);
  box-shadow: 0 14px 30px rgba(1,38,42,.35);
  transition: transform .18s ease;
}
.blankiehero .burrowitem:hover { transform: translateY(-4px); }
.blankiehero .burrowitem span { color: var(--tgg-quiet); }

.ribmain > .satindark:first-child {
  position: relative; overflow: hidden;
  background: linear-gradient(150deg, #01363c 0%, var(--tgg-deep) 55%, var(--tgg-deep-soft) 100%);
}
.ribmain > .satindark:first-child::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background-image: radial-gradient(circle, rgba(255,255,255,.15) 1.5px, transparent 1.5px);
  background-size: 13px 13px;
  -webkit-mask-image: linear-gradient(100deg, transparent 45%, #000 85%);
  mask-image: linear-gradient(100deg, transparent 45%, #000 85%);
}
.ribmain > .satindark:first-child > div { position: relative; }

.tagletband { margin-top: .3rem; }
.tagletrow { display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem; }
.taglet {
  text-decoration: none; border: 1.5px solid var(--tgg-line); background: var(--tgg-card);
  border-radius: 999px; padding: .5rem 1.2rem; font-size: .86rem; font-weight: 600;
  transition: border-color .18s ease, background .18s ease, transform .18s ease;
}
.taglet:hover { border-color: var(--tgg-sun); background: var(--tgg-cream); transform: translateY(-1px); }
.satindark .taglet:hover { background: var(--tgg-deep-soft); }

.toybinrow { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1.25rem; }
.toybin {
  display: flex; flex-direction: column; min-height: 0; text-decoration: none;
  background: var(--tgg-card); border: 1px solid var(--tgg-line); border-radius: 12px; overflow: hidden;
  font-size: .9rem; box-shadow: 0 2px 12px rgba(2,48,53,.07);
  transition: transform .18s ease, box-shadow .18s ease;
}
.toybin:hover { transform: translateY(-4px); box-shadow: 0 12px 28px rgba(2,48,53,.16); }
.toybin img { aspect-ratio: 1 / 1; object-fit: contain; width: 100%; background: #fff; padding: 1rem; border-bottom: 1px solid var(--tgg-line); }
.toybin span { font-weight: 700; padding: .8rem .95rem 0; }
.toybin i { font-style: normal; color: var(--tgg-sub); font-weight: 400; font-size: .82rem; padding: .15rem .95rem .95rem; }

.patchduo { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.patchtile {
  border-radius: 14px; padding: 2.3rem 2.5rem; display: flex; flex-direction: column; gap: .7rem;
  align-items: flex-start; text-align: left;
}
.patchtile .satintitle, .patchtile h3 { text-align: left; }
.patchduo .patchtile:first-child { background: linear-gradient(135deg, var(--tgg-deep-soft), #0a5b62); }
.patchduo .patchtile:last-child {
  background: linear-gradient(135deg, #ffffff, var(--tgg-mist)); color: var(--tgg-ink);
  border: 1px solid var(--tgg-rule);
  --tgg-sub: var(--tgg-quiet); --tgg-line: var(--tgg-rule); --tgg-kick: var(--tgg-deep); --tgg-price: var(--tgg-deep);
}
.patchtile h3 { font-size: 1.4rem; }
.patchtile p { max-width: 460px; }
.patchtile .hugbtn, .patchtile .hugghost { margin-top: .5rem; }

.chimeband { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem; text-align: center; }
.chimeband > p + p { border-left: 1px solid var(--tgg-line); }
.chimenum { display: block; font-family: var(--tgg-display); font-size: 2.5rem; line-height: 1.15; color: inherit; }
.chimelabel { display: block; font-size: .78rem; text-transform: uppercase; letter-spacing: .07em; color: var(--tgg-sub); margin-top: .35rem; }

.kindrow { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1.25rem; }
.kinditem {
  background: var(--tgg-card); border-radius: 12px; padding: 1.4rem 1.5rem;
  border-top: 4px solid var(--tgg-aqua); box-shadow: 0 2px 12px rgba(2,48,53,.07);
}
.kinditem:nth-child(2) { border-top-color: var(--tgg-sun); }
.kinditem:nth-child(3) { border-top-color: var(--tgg-plum); }
.kinditem svg { color: var(--tgg-deep); margin-bottom: .6rem; }
.kinditem h3 { font-size: 1.02rem; margin-bottom: .4rem; }
.kinditem p { font-size: .88rem; color: var(--tgg-sub); }

.stitchlist { list-style: none; padding: 0; }
.stitchlist li { display: flex; gap: .95rem; margin: 1.05rem 0; align-items: baseline; }
.stitchnum {
  flex: none; width: 2rem; height: 2rem; border-radius: 50%;
  background: var(--tgg-sun); color: var(--tgg-ink);
  display: inline-flex; align-items: center; justify-content: center;
  font-family: var(--tgg-display); font-size: 1rem;
}
.swatchtable { font-size: .88rem; margin: 1rem 0 1.4rem; }
.swatchtable caption { font-weight: 700; text-align: left; padding-bottom: .5rem; font-size: 1rem; }
.swatchtable th, .swatchtable td { text-align: left; padding: .55rem .7rem .55rem 0; border-bottom: 1px solid var(--tgg-line); vertical-align: top; }
.swatchtable th { color: var(--tgg-sub); font-weight: 700; font-size: .76rem; text-transform: uppercase; letter-spacing: .05em; }

.glowwrap { display: grid; grid-template-columns: .8fr 1.2fr; gap: 2.6rem; align-items: center; }
.glowwrap .satintitle, .glowwrap .satinsub { text-align: left; margin-left: 0; margin-right: 0; }
.glowwrap .satintitle::after { margin-left: 0; }
.glowframe {
  background: var(--tgg-card); border: 1px solid var(--tgg-line); border-radius: 14px; padding: 1.6rem;
  box-shadow: 0 2px 12px rgba(2,48,53,.07);
}
.glowframe img { aspect-ratio: 1 / 1; object-fit: contain; width: 100%; }
.glowword > p { margin-bottom: .9rem; max-width: 560px; }

.washcare { display: grid; grid-template-columns: 1fr 1fr; gap: 1.25rem; }
.washdo, .washdont {
  background: var(--tgg-card); border-radius: 12px; padding: 1.5rem 1.7rem;
  border: 1px solid var(--tgg-line); box-shadow: 0 2px 12px rgba(2,48,53,.07);
}
.washdo { border-top: 4px solid var(--tgg-aqua); }
.washdont { border-top: 4px solid var(--tgg-plum); }
.washdo h3 { color: var(--tgg-deep); margin-bottom: .7rem; font-size: 1.05rem; }
.washdont h3 { color: var(--tgg-plum); margin-bottom: .7rem; font-size: 1.05rem; }
.washdo ul, .washdont ul { padding-left: 1.15rem; }
.washdo li, .washdont li { margin: .45rem 0; font-size: .92rem; }
.washdo li::marker { color: var(--tgg-aqua); }
.washdont li::marker { color: var(--tgg-plum); }

.quiltblock { max-width: 900px; margin: 0 auto; }
.quilthead { max-width: 740px; margin: 0 auto; text-align: center; }
.quilthead p { margin: .6rem 0 1.2rem; color: var(--tgg-sub); }
.quiltbody { text-align: left; }
.quiltbody p { margin: .8rem 0; }
.quiltbody h3 { margin-top: 1.5rem; margin-bottom: .5rem; font-size: 1.15rem; }
.quiltbody ul { padding-left: 1.15rem; margin: .8rem 0; }
.quiltbody li { margin: .4rem 0; }
.quiltbody li::marker { color: var(--tgg-sun); }

.gigglerow { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.giggleline {
  background: var(--tgg-card); border: 1px solid var(--tgg-line); border-top: 4px solid var(--tgg-sun);
  border-radius: 12px; padding: 1.4rem 1.5rem; box-shadow: 0 2px 12px rgba(2,48,53,.07);
}
.gigglequote { font-size: .93rem; }
.gigglequote::before {
  content: '\201C'; font-family: var(--tgg-display); font-size: 1.9rem;
  color: var(--tgg-sun); display: block; line-height: 1;
}
.gigglename { margin-top: .85rem; font-size: .8rem; color: var(--tgg-sub); }
.gigglename a:hover { color: var(--tgg-deep); }

.bedtimeband { max-width: 740px; margin: 0 auto; text-align: center; }
.bedtimeband p { margin: .6rem 0 1.2rem; color: var(--tgg-sub); }

.burrowband { display: grid; grid-template-columns: repeat(auto-fill, minmax(138px, 1fr)); gap: 1rem; }
.burrowitem {
  display: flex; flex-direction: column; gap: .35rem; min-height: 0; text-decoration: none;
  background: var(--tgg-card); border: 1px solid var(--tgg-line); border-radius: 12px;
  padding: .8rem; font-size: .82rem; box-shadow: 0 2px 12px rgba(2,48,53,.07);
  transition: transform .18s ease, box-shadow .18s ease;
}
.burrowitem:hover { transform: translateY(-3px); box-shadow: 0 10px 22px rgba(2,48,53,.15); }
.burrowitem img { aspect-ratio: 1 / 1; object-fit: contain; width: 100%; border-radius: 8px; background: #fff; }
.burrowitem b { font-weight: 700; }
.burrowitem span { color: var(--tgg-sub); }

.tagtrail { font-size: .8rem; color: var(--tgg-sub); margin-bottom: 1rem; max-width: 1120px; }
.tagtrail a { text-decoration: none; }
.tagtrail a:hover { color: var(--tgg-deep); text-decoration: underline; }
.satindark .tagtrail a:hover { color: var(--tgg-aqua); }

.cribmain { display: grid; grid-template-columns: 1fr 1.1fr; gap: 2.6rem; align-items: start; }
.cribshot {
  background: #fff; border: 1px solid var(--tgg-line); border-radius: 14px; padding: 1.6rem;
  box-shadow: 0 2px 12px rgba(2,48,53,.07);
}
.cribshot img { aspect-ratio: 1 / 1; object-fit: contain; width: 100%; }
.cribwing h1 { font-size: clamp(1.4rem, 2.7vw, 1.85rem); margin-bottom: .6rem; }
.cribwing .cuddleprice { font-size: 1.4rem; margin-bottom: .9rem; padding: 0; }
.cribword { margin-bottom: 1rem; }
.cribwing ul { padding-left: 1.15rem; margin: .8rem 0 1.25rem; }
.cribwing ul li { margin: .45rem 0; }
.cribwing ul li::marker { color: var(--tgg-sun); }
.cribspec { font-size: .88rem; margin-top: 1.5rem; }
.cribspec th, .cribspec td { text-align: left; padding: .5rem .8rem .5rem 0; border-bottom: 1px solid var(--tgg-line); }
.cribspec th { color: var(--tgg-sub); font-weight: 700; width: 34%; font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; }
.cribpath { font-size: .78rem; color: var(--tgg-sub); margin: .5rem 0 0; }

.yarntop { max-width: 740px; }
.yarntop .satinsub { text-align: left; margin-left: 0; margin-right: 0; }
.yarntop h1 { font-size: clamp(1.6rem, 3.4vw, 2.3rem); margin-bottom: .7rem; }
.yarntop p { color: var(--tgg-sub); }
.yarnroll { max-width: 740px; text-align: left; }
.yarnroll > p { margin: .8rem 0; }
.yarnsec { margin: 1.6rem 0; }
.yarnsec h2 { font-size: 1.25rem; margin-bottom: .6rem; text-align: left; }
.yarnsec p { margin: .6rem 0; }
.yarnroll img { max-width: 100%; height: auto; border-radius: 14px; margin: 1rem 0; }
.yarnfacts { background: var(--tgg-mist); border-radius: 12px; padding: 1.4rem 1.7rem; margin: 1.6rem 0; }
.yarnfacts h2 { font-size: 1.1rem; margin-bottom: .5rem; text-align: left; }
.yarnfacts ul { padding-left: 1.15rem; }
.yarnfacts li { margin: .4rem 0; }
.yarnfacts li::marker { color: var(--tgg-sun); }
.yarnclose { color: var(--tgg-sub); border-left: 4px solid var(--tgg-aqua); padding-left: 1.05rem; margin-top: 1.6rem; }

.loveylab { max-width: 1120px; }
.loveystep { display: grid; grid-template-columns: repeat(auto-fit, minmax(195px, 1fr)); gap: .85rem; }
.loveychoice {
  text-align: left; background: var(--tgg-card); border: 2px solid var(--tgg-line);
  border-radius: 12px; padding: 1rem 1.1rem;
  transition: border-color .18s ease, transform .18s ease;
}
.loveychoice b { display: block; font-weight: 700; font-size: .97rem; margin-bottom: .25rem; }
.loveychoice span { font-size: .8rem; color: var(--tgg-sub); }
.loveychoice:hover { border-color: var(--tgg-aqua); transform: translateY(-1px); }
.loveychoice[aria-pressed='true'] { background: var(--tgg-deep); border-color: var(--tgg-deep); color: var(--tgg-cream); }
.loveychoice[aria-pressed='true'] span { color: rgba(255,255,255,.75); }
.loveyyield { display: grid; grid-template-columns: repeat(auto-fill, minmax(235px, 1fr)); gap: 1.25rem; margin-top: 2rem; }
.loveyyield > div { display: flex; min-height: 0; }
.loveyyield > div > .cuddlecard { flex: 1; }
.loveyyield > div[hidden] { display: none; }

.sparkrow { display: inline-block; line-height: 1; font-size: .95em; }
.sparkrow > .sparkfill { position: relative; display: inline-block; color: var(--tgg-line); }
.sparkrow > .sparkfill::before {
  content: '\2605\2605\2605\2605\2605';
  position: absolute; left: 0; top: 0; width: var(--fill, 0%);
  overflow: hidden; white-space: nowrap; color: var(--tgg-sun);
}

.dotfoot { background: #023b40; color: rgba(255,255,255,.82); padding: 2.8rem 1.35rem 1.5rem;
  --tgg-sub: rgba(255,255,255,.62); --tgg-line: var(--tgg-rule-dark); --tgg-kick: var(--tgg-aqua); }
.dotfoot > * { max-width: 1120px; margin-left: auto; margin-right: auto; }
.dotbrand {
  display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 2.5rem;
  padding-bottom: 1.5rem; border-bottom: 1px solid var(--tgg-line);
}
.dotbrand img { height: 52px; width: auto; }
.dotbrand p { font-size: .88rem; color: var(--tgg-sub); max-width: 620px; flex: 1 1 320px; }
.dotrows { padding: 1.1rem 0; border-bottom: 1px solid var(--tgg-line); }
.dotlane { display: flex; flex-wrap: wrap; align-items: baseline; gap: .3rem 1.4rem; padding: .45rem 0; }
.dotlane > span {
  font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .12em;
  color: var(--tgg-kick); flex: 0 0 165px;
}
.dotlane nav { display: flex; flex-wrap: wrap; gap: .2rem 1.1rem; flex: 1; }
.dotlane a { text-decoration: none; font-size: .84rem; color: rgba(255,255,255,.74); }
.dotlane a:hover { color: var(--tgg-aqua); }
.dotnote { padding-top: 1.1rem; font-size: .78rem; color: var(--tgg-sub); }
.dotnote address { font-style: normal; margin-bottom: .35rem; }
.dotnote p { margin: .35rem 0; }
.dotnote a { color: inherit; }
.dotpost { display: none; }

.satindark .cuddleshot, .satindark .toybin img, .satindark .burrowitem img { background: var(--tgg-cream); }

@media (max-width: 900px) {
  .cribmain, .glowwrap, .washcare, .patchduo { grid-template-columns: 1fr; }
  .blankiehero .burrowband {
    display: flex; overflow-x: auto; padding-bottom: .6rem;
    -webkit-overflow-scrolling: touch;
  }
  .blankiehero .burrowitem { flex: 0 0 152px; }
  .chimeband { grid-template-columns: 1fr 1fr; gap: 1.5rem; }
  .chimeband > p + p { border-left: 0; }
  .gigglerow { grid-template-columns: 1fr; }
  .satinband { padding: 2.4rem 1rem; }
  .ribmenu { font-size: .68rem; gap: .1rem .75rem; }
}
@media (max-width: 560px) {
  .cuddlegrid, .loveyyield { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: .8rem; }
  .cuddleshot { padding: .7rem; }
  .cuddlename { padding: .6rem .7rem 0; font-size: .88rem; }
  .cuddlespec, .cuddleprice { padding-left: .7rem; padding-right: .7rem; }
  .cuddleact { padding: .6rem .7rem .8rem; }
  .toybinrow { grid-template-columns: 1fr 1fr; gap: .8rem; }
  .burrowband { grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: .8rem; }
  .patchtile { padding: 1.5rem 1.6rem; }
  .blankielede h1 { font-size: 1.85rem; }
  .dotlane > span { flex-basis: 100%; }
  .ribbar .hugbtn { margin-left: 0; }
}
