:root{--pink:#f6a9cc;--hot:#ef5ba5;--ink:#171417;--blush:#fff4f9;--line:#ebe5e8;--muted:#756e73;--shadow:0 20px 55px rgba(38,18,30,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}img,svg{display:block;max-width:100%}button,input,select{font:inherit}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.8rem}
.page-width{width:min(1420px,calc(100% - 2rem));margin-inline:auto}.announcement{background:var(--pink);text-align:center;padding:.68rem 1rem;font-size:.76rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase}.site-header{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1rem clamp(1rem,4vw,4rem);border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(15px);z-index:20}.wordmark{text-decoration:none;text-align:center;line-height:.9}.wordmark img{max-height:62px;width:auto}.wordmark strong{font:700 clamp(1.6rem,4vw,2.5rem) Georgia,serif;letter-spacing:-.07em}.wordmark em{display:block;color:var(--hot);font:700 1rem "Brush Script MT",cursive;letter-spacing:.14em;transform:rotate(-3deg)}.main-nav{display:flex;gap:1.35rem;font-weight:750}.main-nav a{text-decoration:none}
.hero{min-height:620px;margin-top:2rem;background:linear-gradient(135deg,#fff4f9 0%,#ffd7e9 56%,#f3a5cb 100%);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;border-radius:8px}.hero-copy{padding:clamp(2.2rem,7vw,7rem);align-self:center}.eyebrow{color:var(--hot);font-size:.75rem;letter-spacing:.18em;text-transform:uppercase;font-weight:900;margin:0 0 .6rem}.hero h1,.collection-title h1{font:700 clamp(3rem,7vw,6.7rem)/.92 Georgia,serif;letter-spacing:-.06em;margin:.2rem 0 1rem;max-width:760px}.hero-copy>p:not(.eyebrow){font-size:1.1rem;color:#6d5360;max-width:540px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:.75rem 1.2rem;border:2px solid var(--ink);background:#fff;text-decoration:none;font-weight:900;letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.button-dark{background:var(--ink);color:#fff}.hero .button{margin-top:1rem}.hero-art{position:relative;display:grid;place-items:center;min-height:430px}.bag-shape{width:min(76%,430px);aspect-ratio:1.14;background:linear-gradient(150deg,#111,#3b2630);border-radius:12% 12% 18% 18%;box-shadow:var(--shadow);border:5px solid #fff;display:grid;place-items:center;transform:rotate(4deg);position:relative}.bag-shape:after{content:"";position:absolute;inset:12px;border:2px solid var(--pink);border-radius:inherit}.bag-shape span{font:700 5rem Georgia,serif;color:var(--pink);z-index:1}.bag-handle{position:absolute;bottom:86%;width:52%;height:45%;border:18px solid #171417;border-bottom:0;border-radius:100px 100px 0 0}.sparkle{position:absolute;color:#fff;font-size:3rem}.s1{top:13%;right:14%}.s2{bottom:13%;left:9%;font-size:2rem}
.collection-section{padding-block:clamp(3rem,7vw,7rem)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:2rem}.section-heading h2{font:700 clamp(2.2rem,5vw,4.6rem)/1 Georgia,serif;letter-spacing:-.055em;margin:0}.section-heading>a{font-weight:850;text-decoration-thickness:2px}.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem 1.2rem}.product-card{min-width:0}.product-media{background:#fff;aspect-ratio:1/1.1;display:block;position:relative;overflow:hidden;text-decoration:none}.product-media img,.product-media .placeholder{width:100%;height:100%;object-fit:contain;object-position:center;padding:.35rem;transition:.35s}.product-card:hover .product-media img{transform:scale(1.025)}.badge{position:absolute;left:.75rem;top:.75rem;background:#fff;padding:.4rem .6rem;font-size:.68rem;font-weight:900;text-transform:uppercase;box-shadow:0 4px 14px rgba(0,0,0,.08)}.product-info{text-align:center;padding:.85rem .2rem}.vendor{color:#999;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;margin:0}.product-info h3{font:600 1.05rem Georgia,serif;margin:.2rem 0}.product-info h3 a{text-decoration:none}.price{font-weight:850;margin:.25rem 0}.price s{color:#999;font-weight:500}.add-button{width:100%}.add-button:hover,.button:hover{background:var(--pink);border-color:var(--pink);color:var(--ink)}button[disabled]{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;background:var(--blush);padding:clamp(2rem,7vw,6rem);grid-column:1/-1}.empty-state h3{font:700 2rem Georgia,serif;margin:0}.empty-state p{color:var(--muted)}
.product-page{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(2rem,7vw,7rem);padding-block:clamp(2rem,6vw,6rem)}.product-gallery{background:#fff}.product-gallery img{width:100%;max-height:780px;object-fit:contain}.product-details{align-self:center}.product-details h1{font:700 clamp(2.4rem,5vw,5rem)/1 Georgia,serif;letter-spacing:-.05em;margin:.2rem 0}.product-price{font-size:1.35rem;font-weight:900}.product-details label{display:block;font-weight:800;margin-top:1rem}.product-details select,.product-details input,.search-page input{width:100%;max-width:480px;padding:.85rem;border:1px solid var(--line)}.product-add{display:flex;width:100%;max-width:480px;margin-top:1.2rem}.rte{color:#625b60}.collection-title{padding-top:clamp(2.2rem,6vw,5rem)}.collection-title h1{font-size:clamp(2.8rem,6vw,5.8rem)}.pagination{text-align:center;margin-top:3rem}.pagination span,.pagination a{display:inline-block;padding:.5rem}.cart-page,.page-content,.search-page{padding-block:clamp(2rem,6vw,6rem)}.cart-page h1,.page-content h1,.search-page h1{font:700 clamp(2.5rem,6vw,5rem) Georgia,serif}.cart-item{display:grid;grid-template-columns:120px 1fr auto;gap:1rem;align-items:center;border-bottom:1px solid var(--line);padding:1rem 0}.cart-item img{width:120px;height:130px;object-fit:contain}.cart-item input{width:80px;padding:.6rem}.cart-total{display:flex;justify-content:space-between;font-size:1.25rem;padding:1.5rem 0}.cart-actions{display:flex;justify-content:flex-end;gap:.8rem}.search-page form{display:flex;gap:.6rem}.search-results{margin-top:3rem}
.site-footer{background:var(--ink);color:#fff;padding:clamp(2rem,6vw,5rem) clamp(1rem,5vw,5rem);display:grid;grid-template-columns:1fr auto;gap:1.5rem}.site-footer strong{font:700 1.7rem Georgia,serif}.site-footer p,.site-footer small{color:#cfc4ca}.site-footer nav{display:flex;gap:1rem}.site-footer small{grid-column:1/-1}
@media(max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{padding-bottom:1rem}.hero-art{min-height:410px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-page{grid-template-columns:1fr}.main-nav{gap:.7rem}.main-nav a:nth-child(2){display:none}}
@media(max-width:520px){.site-header{min-height:74px;padding:.8rem 1rem}.wordmark strong{font-size:1.35rem}.wordmark em{font-size:.75rem}.main-nav{font-size:.86rem}.hero{margin-top:1rem;min-height:0}.hero h1{font-size:3rem}.hero-art{min-height:330px}.bag-shape{width:72%}.bag-handle{border-width:13px}.section-heading{align-items:start}.product-grid{gap:1.7rem .6rem}.add-button{font-size:.76rem;padding:.6rem}.cart-item{grid-template-columns:80px 1fr}.cart-item img{width:80px;height:90px}.cart-item label{grid-column:2}.site-footer{grid-template-columns:1fr}}
