:root{
  --pink:#ec4f91; --pink-deep:#b82e70; --purple:#7345a0; --ink:#2f2130;
  --muted:#746a73; --cream:#fffaf8; --blush:#fff0f6; --lavender:#f3edfb;
  --line:#eadfe6; --white:#fff; --shadow:0 20px 55px rgba(75,43,70,.12);
  --radius:24px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",system-ui,sans-serif;line-height:1.5}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}button,input,select{font:inherit}
.announcement{background:var(--purple);color:white;text-align:center;padding:9px 20px;font-size:13px;font-weight:600;letter-spacing:.02em}
.site-header{position:sticky;top:0;z-index:20;height:82px;padding:0 clamp(22px,5vw,72px);display:flex;align-items:center;gap:30px;background:rgba(255,250,248,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(234,223,230,.8)}
.brand{display:flex;align-items:center;gap:11px;margin-right:auto}.brand img{width:54px;height:54px;border-radius:50%;object-fit:cover}.brand span{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:Pacifico,cursive;font-size:20px;font-weight:400}.brand small{font-size:9px;letter-spacing:.32em;margin-top:7px}.desktop-nav{display:flex;gap:28px;font-size:14px;font-weight:600}.desktop-nav a:hover{color:var(--pink-deep)}
.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-weight:700;transition:.2s ease;border:0;cursor:pointer}.header-cta{background:var(--ink);color:white;padding:12px 20px;font-size:14px}.header-cta:hover,.button-primary:hover{transform:translateY(-2px)}
main{overflow:hidden}.hero{max-width:1440px;margin:auto;min-height:700px;padding:76px clamp(24px,7vw,100px) 70px;display:grid;grid-template-columns:1.03fr .97fr;align-items:center;gap:70px;position:relative}.hero:before{content:"";position:absolute;width:400px;height:400px;border-radius:50%;background:#f9c9dc;filter:blur(120px);opacity:.36;left:-220px;top:90px;z-index:-1}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:var(--pink-deep);margin-bottom:14px}.hero h1,.section-heading h2,.how-to-order h2{margin:0;font-size:clamp(42px,5vw,72px);line-height:1.03;letter-spacing:-.045em}.hero h1 span{font-family:Pacifico,cursive;color:var(--pink-deep);font-weight:400}.hero-copy>p{max-width:620px;color:var(--muted);font-size:18px;margin:24px 0 28px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{padding:14px 22px}.button-primary{background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:white;box-shadow:0 12px 30px rgba(236,79,145,.25)}.button-secondary{background:white;border:1px solid var(--line)}.hero-points{display:flex;gap:20px;flex-wrap:wrap;margin-top:28px;color:var(--muted);font-size:13px}.hero-points span:before{content:"✓";color:var(--pink-deep);font-weight:800;margin-right:7px}
.hero-visual{min-height:560px;position:relative}.hero-card{position:absolute;margin:0;border:9px solid white;border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:white}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card-main{width:min(78%,470px);height:530px;right:2%;top:0;transform:rotate(2.5deg)}.hero-card-small{width:240px;height:300px;left:0;bottom:-10px;transform:rotate(-6deg)}.hero-badge{position:absolute;background:white;box-shadow:var(--shadow);border-radius:18px;padding:16px 19px;right:0;bottom:18px;display:flex;flex-direction:column}.hero-badge span{font-size:12px;color:var(--muted)}.hero-badge strong{font-family:Pacifico,cursive;color:var(--pink-deep);font-weight:400;font-size:20px}.hero-orb{position:absolute;border-radius:50%}.orb-one{width:400px;height:400px;background:linear-gradient(135deg,#f7a4c5,#e8d4fa);right:-80px;top:60px}.orb-two{width:180px;height:180px;background:#f6d9ec;left:10%;top:28px}
.category-strip{max-width:1240px;margin:0 auto 30px;padding:0 24px;display:flex;gap:10px;flex-wrap:wrap}.category-chip{border:1px solid var(--line);background:white;color:var(--ink);border-radius:999px;padding:10px 16px;cursor:pointer}.category-chip.active,.category-chip:hover{background:var(--ink);color:white;border-color:var(--ink)}
.products-section{max-width:1240px;margin:auto;padding:64px 24px 96px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2,.how-to-order h2{font-size:clamp(32px,4vw,52px)}.product-tools{display:flex;gap:10px}.search-box input,.product-tools select{height:46px;border:1px solid var(--line);background:white;border-radius:14px;padding:0 14px;color:var(--ink);outline:none}.search-box input{width:min(34vw,270px)}.search-box input:focus,.product-tools select:focus{border-color:#c37aac;box-shadow:0 0 0 3px #f5dceb}
.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.product-card{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.22s ease;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(71,38,63,.10)}.product-card-link{display:flex;flex-direction:column;flex:1}.product-image-wrap{aspect-ratio:1/1;position:relative;overflow:hidden;background:#f4eef4}.product-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover img{transform:scale(1.025)}.product-image-placeholder{height:100%;display:grid;place-items:center;color:var(--muted);font-size:13px}.product-tag{position:absolute;left:12px;top:12px;background:rgba(255,255,255,.94);border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800;color:var(--pink-deep)}.product-body{padding:16px;display:flex;flex-direction:column;gap:9px;flex:1}.product-category,.product-reference{text-transform:uppercase;letter-spacing:.12em;color:var(--purple);font-size:10px;font-weight:800}.product-body h3{margin:0;font-size:18px;line-height:1.25}.product-body p{margin:0;color:var(--muted);font-size:13px}.price-row{margin-top:auto;padding-top:7px;display:flex;align-items:center;justify-content:space-between;gap:8px}.product-price,.sale-price{font-size:18px;font-weight:800;color:var(--pink-deep)}.price-group{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.regular-price{text-decoration:line-through;color:var(--muted);font-size:14px}.details-button{border:0;background:var(--blush);color:var(--pink-deep);font-weight:800;padding:9px 12px;border-radius:12px;cursor:pointer}.empty-state{text-align:center;padding:60px;color:var(--muted)}
.why-us{background:linear-gradient(180deg,#fff7fa 0%,#f9f4fc 100%);padding:84px max(24px,calc((100vw - 1192px)/2))}.section-heading.compact{max-width:700px}.benefit-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.benefit-grid article{background:rgba(255,255,255,.84);border:1px solid var(--line);border-radius:22px;padding:26px}.benefit-icon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:var(--blush);color:var(--pink-deep);font-weight:800}.benefit-grid h3{margin:18px 0 8px}.benefit-grid p{margin:0;color:var(--muted)}
.how-to-order{max-width:1240px;margin:0 auto;padding:96px 24px}.order-card{border-radius:32px;background:var(--ink);color:white;padding:clamp(28px,5vw,62px);display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.order-card .eyebrow{color:#f7b4d0}.order-card ol{margin:0;padding:0;list-style:none;display:grid;gap:20px}.order-card li{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:start}.order-card li:before{content:counter(list-item);width:34px;height:34px;border-radius:50%;background:#ffffff14;display:grid;place-items:center;font-weight:800;grid-row:span 2}.order-card li strong,.order-card li span{grid-column:2}.order-card li span{color:#d9ccd6;font-size:14px;margin-top:3px}
footer{border-top:1px solid var(--line);padding:36px clamp(24px,5vw,72px);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:30px;color:var(--muted);font-size:13px}.footer-brand{display:flex;align-items:center;gap:10px;color:var(--ink)}.footer-brand img{width:46px;height:46px;border-radius:50%}.footer-brand div{display:flex;flex-direction:column}.footer-brand strong{font-family:Pacifico,cursive;font-weight:400;font-size:18px}.footer-brand span{font-size:8px;letter-spacing:.25em}.footer-links{display:flex;gap:18px}.footer-links a:hover{color:var(--pink-deep)}
.product-dialog{width:min(930px,92vw);border:0;border-radius:28px;padding:0;box-shadow:0 30px 90px rgba(31,14,28,.3);overflow:hidden}.product-dialog::backdrop{background:rgba(35,18,31,.62);backdrop-filter:blur(4px)}.dialog-layout{display:grid;grid-template-columns:1fr 1fr}.dialog-layout>img{width:100%;height:100%;min-height:560px;object-fit:cover}.dialog-copy{padding:46px 36px;position:relative}.dialog-copy h2{font-size:36px;line-height:1.08;margin:8px 0 12px}.dialog-price{font-size:24px!important;font-weight:800;color:var(--pink-deep)!important}.dialog-copy>p{color:var(--muted)}.dialog-close{position:absolute;right:16px;top:14px;z-index:2;border:0;width:40px;height:40px;border-radius:50%;font-size:26px;background:#fff;box-shadow:0 7px 20px rgba(0,0,0,.1);cursor:pointer}.detail-list{display:grid;gap:9px;margin:22px 0}.detail-list div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-bottom:1px solid var(--line);font-size:13px}.detail-list span{color:var(--muted)}.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.button-shopee{background:#ee4d2d;color:white}.button-facebook{background:#1877f2;color:white}.link-note{font-size:11px!important;margin-top:16px}.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}
.product-page{max-width:1180px;margin:0 auto;padding:42px 24px 90px}.back-link{margin:0 0 22px;font-weight:700;color:var(--pink-deep)}.product-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:clamp(30px,5vw,72px);align-items:start}.gallery-main{position:relative;outline:0}.gallery-main:focus-within{outline:3px solid #f5dceb;border-radius:24px}.product-gallery .gallery-main>img{width:100%;aspect-ratio:1/1;object-fit:contain;border-radius:24px;background:#f4eef4}.product-gallery .gallery-main>img.no-image{padding:30%;color:var(--muted)}.gallery-control{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink);font-size:32px;line-height:1;cursor:pointer;box-shadow:0 4px 15px rgba(47,33,48,.18)}.gallery-previous{left:14px}.gallery-next{right:14px}.image-thumbs{display:flex;gap:10px;overflow:auto;margin-top:12px}.image-thumbs button{padding:0;border:2px solid transparent;background:transparent;border-radius:10px;overflow:hidden;cursor:pointer}.image-thumbs button.active{border-color:var(--pink-deep)}.image-thumbs img{width:76px;height:76px;aspect-ratio:1/1;object-fit:contain;background:#f4eef4}.product-info h1{font-size:clamp(36px,5vw,58px);line-height:1.05;margin:9px 0 12px}.detail-price{font-size:28px;font-weight:800;color:var(--pink-deep);display:flex;gap:10px;align-items:baseline}.detail-price .sale-price{font-size:28px}.stock-status{display:inline-flex;margin-top:14px;background:#e5f5ea;color:#237144;border-radius:999px;padding:6px 10px;font-weight:800;font-size:12px}.stock-low_stock,.stock-preorder{background:#fff0d7;color:#935c00}.stock-sold_out{background:#f3e9ec;color:#7d4655}.product-short{font-size:18px;color:var(--ink);margin:24px 0 10px}.product-description{white-space:pre-line;color:var(--muted)}.inquiry-box{border:1px solid var(--line);border-radius:16px;background:var(--blush);padding:18px;margin-top:26px}.inquiry-box p{white-space:pre-line;font-size:13px;margin:9px 0 15px;color:var(--ink)}.product-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.button-shopee{background:#ee4d2d;color:white}.button-facebook{background:#1877f2;color:white}.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}
@media (max-width:1000px){.desktop-nav{display:none}.hero{grid-template-columns:1fr;padding-top:54px}.hero-copy{max-width:760px}.hero-visual{min-height:570px}.product-grid{grid-template-columns:repeat(2,1fr)}.benefit-grid{grid-template-columns:1fr}.order-card{grid-template-columns:1fr;gap:36px}footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}
@media (max-width:640px){.announcement{font-size:11px}.site-header{height:70px;padding:0 16px}.brand img{width:44px;height:44px}.brand strong{font-size:16px}.brand small{font-size:7px}.header-cta{display:none}.hero{padding:44px 18px 50px;gap:30px;min-height:auto}.hero h1{font-size:43px}.hero-copy>p{font-size:16px}.hero-visual{min-height:420px}.hero-card-main{height:390px;width:82%}.hero-card-small{width:155px;height:195px}.hero-badge{display:none}.category-strip{padding:0 18px;flex-wrap:nowrap;overflow:auto}.products-section{padding:44px 18px 70px}.section-heading{align-items:flex-start;flex-direction:column}.product-tools{width:100%;flex-direction:column}.search-box input,.product-tools select{width:100%}.product-grid{grid-template-columns:1fr}.why-us{padding:64px 18px}.how-to-order{padding:70px 18px}.order-card{padding:28px 22px}.dialog-layout{grid-template-columns:1fr}.dialog-layout>img{min-height:0;max-height:340px}.dialog-copy{padding:26px 22px 30px}.dialog-copy h2{font-size:28px}.product-dialog{max-height:90vh;overflow:auto}.product-page{padding:28px 18px 60px}.product-detail{grid-template-columns:1fr;gap:28px}.product-actions .button{width:100%}footer{padding:30px 18px}}

.catalog-page .product-tools{margin-bottom:22px}@media (max-width:640px){.catalog-page .product-tools{margin-bottom:18px}}
/* Storefront sections */
.mobile-nav{display:none}.hero-message-link{display:inline-block;margin-top:16px;color:var(--purple);font-size:14px;font-weight:700}.hero-message-link:hover{text-decoration:underline}.product-collection{padding-top:52px;padding-bottom:52px}.product-collection+.product-collection{padding-top:18px}.section-heading>p{max-width:300px;margin:0;color:var(--muted);font-size:14px;text-align:right}.product-image-link{display:block}.product-badges{position:absolute;top:12px;left:12px;display:flex;gap:7px;flex-wrap:wrap}.product-badges .product-tag{position:static}.sale-tag{background:var(--pink-deep);color:#fff}.product-body h3 a:hover{color:var(--pink-deep)}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:5px}.card-stock{margin:0;padding:5px 8px;font-size:10px;white-space:nowrap}.card-actions{display:flex;gap:9px;margin-top:12px}.card-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;font-size:12px;font-weight:800;border-radius:10px}.card-actions .details-button{flex:1}.card-shopee{background:#ee4d2d;color:#fff;padding:0 12px}.card-shopee:hover{background:#d94023}.why-us{margin-top:28px}.benefit-grid{grid-template-columns:repeat(4,1fr)}.about-section,.feedback-section,.faq-section,.store-cta{max-width:1240px;margin:0 auto;padding:96px 24px}.about-section{display:grid;grid-template-columns:220px minmax(0,620px);gap:clamp(28px,7vw,100px);align-items:center}.about-mark{width:180px;height:180px;display:grid;place-items:center;border-radius:42% 58% 60% 40% / 40% 42% 58% 60%;background:linear-gradient(135deg,#f6b9d2,#dfd0f2);color:var(--pink-deep);font-family:Pacifico,cursive;font-size:50px;box-shadow:var(--shadow)}.about-section h2,.store-cta h2{margin:0;font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.04em}.about-section p{color:var(--muted);font-size:17px}.about-note{font-size:13px!important;font-style:italic}.feedback-section{padding-top:20px}.feedback-placeholder{border:1px dashed #d6b5ca;border-radius:22px;padding:42px;background:linear-gradient(135deg,#fff7fa,#f8f2fd);text-align:center}.feedback-placeholder span{display:inline-block;border-radius:99px;background:#fff;padding:6px 10px;color:var(--pink-deep);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.feedback-placeholder p{margin:13px 0 0;color:var(--muted)}.faq-section{padding-top:20px}.faq-list{max-width:800px;display:grid;gap:10px}.faq-list details{background:#fff;border:1px solid var(--line);border-radius:15px;padding:0 18px}.faq-list summary{padding:17px 26px 17px 0;font-weight:800;cursor:pointer;position:relative}.faq-list summary:after{content:"+";position:absolute;right:0;color:var(--pink-deep);font-size:20px;line-height:1}.faq-list details[open] summary:after{content:"−"}.faq-list p{margin:0 0 17px;color:var(--muted);font-size:14px}.store-cta{margin-bottom:96px;border-radius:32px;background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr auto;gap:35px;align-items:center;padding:clamp(30px,5vw,58px)}.store-cta .eyebrow{color:#f7b4d0}.store-cta p{max-width:590px;margin:17px 0 0;color:#d9ccd6}.store-cta-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.store-cta .button-secondary{color:var(--ink)}.footer-links{justify-content:flex-end}
@media (max-width:1000px){.mobile-nav{position:sticky;top:82px;z-index:19;display:flex;gap:20px;overflow-x:auto;padding:10px 22px;background:rgba(255,250,248,.96);border-bottom:1px solid var(--line);font-size:13px;font-weight:700}.mobile-nav a{white-space:nowrap}.benefit-grid{grid-template-columns:repeat(2,1fr)}.about-section{grid-template-columns:160px 1fr}.about-mark{width:145px;height:145px;font-size:42px}.store-cta{grid-template-columns:1fr}.store-cta-actions{justify-content:flex-start}}
@media (max-width:640px){.mobile-nav{top:70px;padding:9px 18px;gap:18px}.hero-actions .button{width:100%}.hero-message-link{font-size:13px}.section-heading>p{text-align:left}.product-collection{padding-top:42px;padding-bottom:42px}.card-actions a{min-height:42px}.benefit-grid{grid-template-columns:1fr}.about-section,.feedback-section,.faq-section{padding:68px 18px}.about-section{grid-template-columns:1fr;gap:25px}.about-mark{width:116px;height:116px;font-size:34px;border-radius:34px}.about-section p{font-size:16px}.feedback-section,.faq-section{padding-top:0}.store-cta{margin:0 18px 70px;padding:28px 22px;border-radius:24px}.store-cta-actions{display:grid;grid-template-columns:1fr}.store-cta-actions .button{width:100%}.footer-links{justify-content:flex-start}}
