:root{--red:#df0b13;--red-deep:#ae070e;--brand:#f10207;--ink:#281b1b;--muted:#776a6a;--cream:#fff9f7;--blush:#fff0ef;--line:#f1e3e0;--shadow:0 16px 42px rgba(86,35,35,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}[hidden]{display:none!important}.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.announcement{background:#d70911;color:#fff;text-align:center;padding:9px 12px;font-size:12px;font-weight:700;letter-spacing:.03em}.announcement span{padding:0 8px}.site-header{height:78px;background:rgba(255,249,247,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(240,223,220,.8);position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.wordmark{display:inline-flex;align-items:center;position:relative;color:var(--brand);font-family:Nunito,sans-serif;font-weight:900;letter-spacing:-.07em;font-size:31px;line-height:1}.mark-dot{font-size:15px;align-self:flex-start;transform:translate(3px,-4px) rotate(-22deg);letter-spacing:0}.wordmark-sub{font-family:'DM Sans',sans-serif;font-size:7px;letter-spacing:.23em;position:absolute;left:23px;bottom:-10px;white-space:nowrap;color:#ac0b12}.header-nav{display:flex;gap:35px;font-size:14px;font-weight:700}.header-nav a:hover,.footer-links a:hover{color:var(--red)}.bag-button{border:1px solid var(--line);background:#fff;border-radius:100px;display:flex;align-items:center;gap:9px;padding:10px 13px 10px 17px;color:var(--ink);font-weight:800;box-shadow:0 5px 15px rgba(50,10,10,.04)}.bag-button span:first-child{font-size:25px;line-height:16px;transform:rotate(180deg)}.bag-button strong{background:var(--red);color:#fff;width:23px;height:23px;display:grid;place-items:center;border-radius:50%;font-size:11px}.hero{display:grid;grid-template-columns:1fr 1.08fr;gap:24px;align-items:stretch;padding-top:46px;padding-bottom:32px}.hero-copy{background:#ffedea;border-radius:34px;padding:65px 52px 48px;min-height:520px;position:relative;overflow:hidden}.hero-copy:after{content:'✦';position:absolute;color:#f9d0c9;font-size:140px;right:24px;bottom:-50px;transform:rotate(20deg)}.eyebrow{font-size:12px;color:#b21e25;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.eyebrow-star{font-size:17px;margin-right:5px}.hero h1,.section-heading h2,.steps-intro h2,.contact-card h2{font-family:Nunito,sans-serif;font-weight:900;letter-spacing:-.052em}.hero h1{font-size:clamp(45px,5.6vw,78px);line-height:1.03;margin:28px 0 22px}.hero h1 em,.steps-intro h2 em{font-style:normal;color:var(--red)}.hero-copy>p{max-width:450px;line-height:1.75;color:#685a5a;font-size:17px}.hero-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:31px}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;border:0;border-radius:16px;min-height:52px;padding:14px 23px;font-weight:800;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px)}.button-red{background:var(--red);color:white;box-shadow:0 10px 20px rgba(202,10,20,.18)}.button-red:hover{background:var(--red-deep)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.text-link{font-size:14px;font-weight:800;border-bottom:1px solid #c9aaa6;padding-bottom:5px}.hero-note{display:flex;align-items:center;gap:10px;color:#805c5c;font-size:13px;font-weight:700;margin-top:44px}.smile{display:grid;place-items:center;width:31px;height:31px;background:#ffe0a5;border-radius:50%;font-size:25px;color:#8f5d13}.hero-art{position:relative;border-radius:34px;overflow:hidden;min-height:520px;background:#260000}.hero-art img{width:100%;height:100%;position:absolute;inset:0;object-fit:contain;object-position:center}.hero-sticker{position:absolute;right:24px;top:24px;background:#fff7e2;color:#982829;border:4px solid #fff;border-radius:50%;width:112px;height:112px;display:grid;place-items:center;text-align:center;transform:rotate(13deg);font-family:Nunito,sans-serif;font-weight:900;font-size:15px;line-height:1.1;box-shadow:0 8px 18px rgba(0,0,0,.18)}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:4px auto 95px}.benefit{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px 22px}.benefit-icon{width:44px;height:44px;flex:0 0 auto;display:grid;place-items:center;border-radius:15px;font-size:25px;font-family:Nunito}.benefit-icon.pink{background:#ffe4e5;color:#d60913}.benefit-icon.yellow{background:#fff0bf;color:#b17b06}.benefit-icon.mint{background:#e0f7ee;color:#34856a}.benefit strong{font:900 15px Nunito,sans-serif}.benefit p{margin:3px 0 0;color:var(--muted);font-size:12px}.shop-section{padding-bottom:110px;scroll-margin-top:100px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading h2{font-size:clamp(35px,4.4vw,55px);line-height:1.1;margin:12px 0 0}.section-heading h2 span,.contact-card h2 span{color:var(--red)}.section-heading>p{color:var(--muted);font-size:15px;margin-bottom:5px}.shop-tools{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:35px 0 20px}.chips{display:flex;gap:8px;overflow:auto;padding-bottom:4px}.chip{border:1px solid #ecd8d5;color:#594a4a;background:#fff;border-radius:100px;padding:10px 17px;white-space:nowrap;font-size:13px;font-weight:800}.chip:hover,.chip.active{border-color:var(--red);background:var(--red);color:#fff}.search-box{display:flex;align-items:center;gap:8px;border:1px solid #ecd8d5;background:#fff;border-radius:100px;padding:0 15px;min-width:240px}.search-box span{font-size:25px;color:#a49a9a}.search-box input{border:0;background:transparent;outline:0;width:100%;padding:11px 0;font-size:13px}.status{color:var(--muted);font-size:14px;min-height:18px}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:21px}.product-card{background:#fff;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:0 6px 22px rgba(88,33,33,.04);transition:transform .2s,box-shadow .2s}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.product-image{height:210px;position:relative;background:#fce9e7;display:grid;place-items:center;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.product-image.no-image:before{content:'✦';font-size:86px;color:#e9b4b6}.stock-badge{position:absolute;left:12px;top:12px;background:#fff8f5;border-radius:100px;padding:6px 10px;font-size:10px;font-weight:800;color:#bc111c}.product-body{padding:17px}.product-category{font-size:10px;font-weight:900;color:#c72f37;letter-spacing:.1em;text-transform:uppercase}.product-body h3{font:900 19px Nunito,sans-serif;margin:7px 0 5px;line-height:1.3}.product-body p{color:var(--muted);font-size:12px;line-height:1.5;min-height:38px;margin:0}.product-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:18px}.product-bottom strong{font:900 18px Nunito,sans-serif}.add-button{border:0;background:#ffe8e7;color:#b90a12;border-radius:13px;padding:9px 13px;font-size:12px;font-weight:900}.add-button:hover{background:var(--red);color:#fff}.add-button:disabled{background:#eee;color:#777;cursor:not-allowed}.empty-state{grid-column:1/-1;background:#fff;border:1px dashed #eab9b5;border-radius:28px;text-align:center;padding:54px 20px}.empty-illustration{font-size:64px;color:#e93e47;line-height:1}.empty-state h3{font:900 27px Nunito,sans-serif;margin:8px 0}.empty-state p{color:var(--muted);margin:0 auto 20px;max-width:400px;line-height:1.6}.empty-state a{color:var(--red);font-weight:800;text-decoration:underline}.steps-wrap{background:#fff0ec;padding:85px 0}.steps-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.steps-intro h2{font-size:clamp(38px,5vw,60px);line-height:1.05;margin:15px 0 20px}.steps-intro p{color:#746464;line-height:1.7;max-width:370px}.steps{display:grid;gap:15px}.step{display:flex;align-items:center;gap:19px;background:#fff;border-radius:22px;padding:21px 24px;box-shadow:0 6px 20px rgba(91,30,30,.04)}.step>span{display:grid;place-items:center;width:48px;height:48px;border-radius:16px;background:#ffe3e2;color:var(--red);font:900 18px Nunito,sans-serif;flex:0 0 auto}.step strong{font:900 18px Nunito,sans-serif}.step p{color:var(--muted);font-size:13px;margin:4px 0 0}.contact-section{padding-top:95px;padding-bottom:95px;scroll-margin-top:100px}.contact-card{background:#bf0b14;color:#fff;border-radius:32px;padding:54px 64px;display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;overflow:hidden}.contact-card .eyebrow{color:#ffd5d5}.contact-card h2{font-size:clamp(34px,4vw,51px);line-height:1.1;margin:12px 0}.contact-card h2 span{color:#ffd4c8}.contact-card p{font-size:14px;color:#ffe3e3;margin:0}.button-white{background:#fff;color:#ad0610;white-space:nowrap;position:relative;z-index:1}.button-white:hover{background:#fff0ed}.contact-doodle{position:absolute;right:75px;top:-90px;font-size:260px;color:rgba(255,255,255,.08);transform:rotate(20deg)}.site-footer{background:#fff;border-top:1px solid var(--line)}.footer-inner{padding:47px 0;display:flex;justify-content:space-between;gap:30px}.footer-wordmark{font-size:28px}.footer-inner p{color:var(--muted);font-size:13px}.footer-links{display:flex;gap:25px;font-size:13px;font-weight:700}.footer-bottom{border-top:1px solid var(--line);padding:18px 0;color:#9d9191;font-size:12px}.drawer-backdrop{position:fixed;inset:0;background:rgba(34,11,11,.5);z-index:39}.cart-drawer{position:fixed;right:0;top:0;bottom:0;z-index:40;width:min(460px,100%);background:#fffaf8;box-shadow:-15px 0 45px rgba(32,7,7,.18);display:flex;flex-direction:column;transform:translateX(110%);transition:transform .25s}.cart-drawer.open{transform:translateX(0)}.drawer-head{padding:25px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.drawer-head h2{font:900 26px Nunito,sans-serif;margin:3px 0 0}.drawer-head h2 span{color:var(--red)}.icon-button{border:0;background:#f7e8e5;border-radius:50%;width:36px;height:36px;font-size:26px;line-height:1}.cart-items{padding:8px 25px;overflow-y:auto;flex:1}.cart-row{display:flex;gap:12px;padding:15px 0;border-bottom:1px solid var(--line)}.cart-thumb{width:68px;height:68px;border-radius:14px;object-fit:cover;background:#fce6e3}.cart-row-main{flex:1;min-width:0}.cart-row-title{font-weight:800;font-size:14px}.cart-row-price{color:var(--muted);font-size:12px;margin:3px 0 8px}.qty-controls{display:flex;align-items:center;gap:11px}.qty-controls button{width:25px;height:25px;border:1px solid #e8ceca;background:#fff;border-radius:8px}.qty-controls button:disabled{opacity:.4}.cart-checkout{border-top:1px solid var(--line);background:#fff;padding:20px 25px;max-height:70vh;overflow:auto}.total-line{display:flex;justify-content:space-between;font-size:17px;font-weight:800}.checkout-note{font-size:11px;color:var(--muted);line-height:1.5;margin:7px 0 18px}.cart-checkout form{display:grid;gap:10px}.cart-checkout label,.admin-form label,.login-card label{display:grid;gap:5px;font-size:12px;font-weight:800}.cart-checkout input,.cart-checkout textarea,.admin-form input,.admin-form textarea,.login-card input{width:100%;border:1px solid #e5d5d2;background:#fff;border-radius:12px;padding:11px 12px;outline-color:var(--red);font-size:13px}.checkout-button{width:100%;margin-top:3px}.checkout-result{color:#795454;font-size:12px;line-height:1.5;margin-top:10px}.checkout-result a{color:var(--red);text-decoration:underline;font-weight:800}.cart-empty{text-align:center;padding:45px 10px;color:var(--muted)}.cart-empty span{display:block;font-size:54px;color:#e75c61}.cart-empty strong{display:block;font:900 23px Nunito,sans-serif;color:var(--ink)}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:45px 35px}.benefits{margin-bottom:70px}.product-grid{grid-template-columns:repeat(3,1fr)}.steps-inner{gap:35px}}
@media(max-width:740px){.container{width:min(100% - 28px,1180px)}.site-header{height:68px}.header-nav{display:none}.hero{grid-template-columns:1fr;padding-top:20px}.hero-copy{min-height:unset;padding:42px 30px 38px}.hero h1{font-size:50px}.hero-art{min-height:380px}.benefits{grid-template-columns:1fr;gap:8px;margin-bottom:70px}.benefit{padding:14px 17px}.section-heading{display:block}.section-heading>p{margin-top:12px}.shop-tools{display:block}.chips{margin-bottom:14px}.search-box{width:100%}.product-grid{grid-template-columns:repeat(2,1fr);gap:12px}.product-image{height:180px}.product-body{padding:13px}.steps-inner{grid-template-columns:1fr}.steps-wrap{padding:65px 0}.contact-section{padding:70px 0}.contact-card{display:block;padding:36px 30px}.contact-card .button{margin-top:25px}.footer-inner{display:block}.footer-links{flex-wrap:wrap;margin-top:28px}.cart-drawer{width:min(430px,100%)}}
@media(max-width:440px){.announcement{font-size:10px}.hero h1{font-size:43px}.hero-art{min-height:290px}.hero-sticker{width:82px;height:82px;font-size:11px;right:12px;top:12px}.hero-actions{gap:16px}.text-link{font-size:12px}.product-grid{grid-template-columns:1fr 1fr}.product-image{height:145px}.product-body h3{font-size:16px}.product-body p{font-size:11px;min-height:48px}.product-bottom{display:block}.add-button{margin-top:10px;width:100%}.footer-links{gap:16px}}

/* The supplied artwork is the logo; use its image in brand slots, not a text imitation. */
.header-logo{display:block;position:relative;flex:0 0 auto;width:150px;height:62px;overflow:hidden;background:transparent}
.header-logo img{position:absolute;width:100%;height:auto;max-width:none;left:0;top:50%;transform:translateY(-50%)}
.footer-logo{width:150px;height:62px}

/* A playful shop illustration replaces the oversized homepage logo. */
.hero-art{background:radial-gradient(circle at 52% 43%,#fff4ec 0 28%,#ffd9d5 29% 58%,#ffc5bf 100%);isolation:isolate}
.hero-orbit{position:absolute;border:2px solid rgba(255,255,255,.55);border-radius:50%;left:50%;top:52%;transform:translate(-50%,-50%)}
.hero-orbit-one{width:410px;height:410px}.hero-orbit-two{width:580px;height:580px}
.hero-bag{position:absolute;left:50%;top:54%;width:240px;height:255px;transform:translate(-50%,-50%) rotate(-8deg);border-radius:22px 22px 38px 38px;background:linear-gradient(135deg,#ff5356 0%,#f00c1b 53%,#b20815 100%);box-shadow:inset 12px 9px 20px rgba(255,255,255,.46),inset -12px -10px 18px rgba(110,0,0,.24),0 35px 45px rgba(143,20,26,.25)}
.hero-bag:before{content:'';position:absolute;left:17px;right:17px;top:13px;height:12px;border-radius:100%;background:rgba(255,255,255,.54);filter:blur(3px)}
.hero-bag-handle{position:absolute;left:67px;top:-59px;width:106px;height:97px;border:16px solid #c20d1a;border-bottom:0;border-radius:60px 60px 0 0;box-shadow:inset 6px 0 4px rgba(255,255,255,.25),4px -3px 5px rgba(120,0,0,.13)}
.hero-bag-heart{position:absolute;inset:0;display:grid;place-items:center;color:#fff5eb;font:900 118px Nunito,sans-serif;text-shadow:0 5px 10px rgba(112,0,0,.13);transform:rotate(8deg)}
.hero-art-heart{position:absolute;left:15%;bottom:16%;color:#e21123;font-size:83px;transform:rotate(-23deg);text-shadow:0 12px 15px rgba(141,15,28,.16)}
.hero-sparkle{position:absolute;color:#f13745;font-family:Nunito,sans-serif;line-height:1}.hero-sparkle-one{font-size:88px;right:14%;top:12%;transform:rotate(14deg)}.hero-sparkle-two{font-size:45px;right:18%;bottom:14%;color:#ff8d4b;transform:rotate(-12deg)}
@media(max-width:740px){.header-logo{width:132px;height:54px;border-radius:11px}.hero-art{min-height:360px}.hero-bag{transform:translate(-50%,-50%) rotate(-8deg) scale(.78)}.hero-orbit-one{width:320px;height:320px}.hero-orbit-two{width:480px;height:480px}.hero-art-heart{font-size:60px}.hero-sparkle-one{font-size:70px}}
@media(max-width:440px){.hero-art{min-height:300px}.hero-bag{transform:translate(-50%,-50%) rotate(-8deg) scale(.65)}.hero-sparkle-one{right:10%;font-size:56px}.hero-art-heart{left:10%;bottom:12%;font-size:49px}}
.checkout-preview{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}.checkout-preview img{width:58px;height:58px;object-fit:cover;border-radius:10px;background:#ffe8e5}
