@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;1,500&display=swap');
:root{--pink:#c71865;--ink:#28232b;--teal:#006d73;--line:#eadfe5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 'DM Sans',Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:4px}.topline{padding:8px;text-align:center;background:var(--pink);color:#fff;font-size:12px;font-weight:700;letter-spacing:2px}header{max-width:1200px;padding:22px 32px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font:25px Georgia,serif}.brand img{width:64px;height:64px;object-fit:contain}.brand b{color:var(--pink)}.brand small{display:block;font:11px Arial;letter-spacing:3px;margin-top:5px}nav{display:flex;align-items:center;gap:24px;font-size:14px;font-weight:600}.cartbutton{border:1px solid var(--line);border-radius:30px;padding:10px 18px;background:#fff}.cartbutton span{background:var(--pink);color:#fff;padding:2px 7px;border-radius:20px;margin-left:5px}main{max-width:1200px;margin:auto;padding:0 32px}.intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;padding:32px 0 48px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--teal);margin:0 0 16px}h1,h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;line-height:1.15;margin:0}h1{font-size:clamp(36px,4.5vw,60px);letter-spacing:-1.5px}em{color:var(--pink);font-weight:500}.intro-copy>p:not(.eyebrow){max-width:440px;color:#675d66}.actions{display:flex;gap:12px;margin:26px 0}.button{display:inline-flex;justify-content:center;align-items:center;background:var(--pink);color:#fff;border:1px solid var(--pink);padding:12px 22px;border-radius:8px;font-weight:600;font-size:14px}.button:hover{background:#a60d50}.outline{background:#fff;color:var(--ink);border-color:#cfc0c8}.outline:hover{background:#fff1f7}.small{font-size:14px;color:#675d66;line-height:1.5}.intro-art{background:#f9dfec;border-radius:120px 120px 16px 16px;overflow:hidden;position:relative;height:380px;padding:18px 35px 42px;transform:rotate(2deg)}.intro-art img{height:100%;width:100%;object-fit:contain;transform:rotate(-2deg)}.art-label{position:absolute;bottom:0;left:0;right:0;background:var(--teal);color:#fff;padding:10px 18px;display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:2px}.shop{padding:35px 0 50px;border-top:1px solid var(--line)}.sectionheading{display:flex;justify-content:space-between;align-items:end;gap:20px}.sectionheading p:last-child{font-size:14px;color:#675d66}h2{font-size:36px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:24px 0}.filters button{padding:9px 19px;border-radius:25px;border:1px solid var(--line);background:white;font-size:14px}.filters .active{background:var(--ink);color:#fff;border-color:var(--ink)}.products{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.product{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:grid;grid-template-columns:44% 56%}.product-image{height:280px;background:#f3f7f7;padding:20px;display:flex}.product-image img{object-fit:contain;width:100%;height:100%}.product-body{padding:24px 20px;display:flex;flex-direction:column}.category{font-size:12px;color:var(--teal);letter-spacing:1px;font-weight:700}.product h3{font-size:19px;line-height:1.3;margin:8px 0}.product p{font-size:14px;color:#675d66;margin:0 0 16px}.product select{width:100%;margin-bottom:12px}.product .button{margin-top:auto;width:100%}.catalog-note{font-size:14px;color:#675d66}.custom{background:#fff1f7;display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:45px;border-radius:16px;margin:0 0 40px}.custom h2{font-size:44px}.custom p{max-width:430px}.custom li{padding-bottom:10px}.custom ol{padding-left:22px}.custom form{background:white;padding:28px;border:1px solid #f1d8e4;border-radius:12px}.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}label{display:block;font-size:14px;font-weight:600;margin-bottom:14px}input,select,textarea{display:block;width:100%;min-width:0;margin-top:6px;background:#fff;border:1px solid #cfc3ca;border-radius:7px;padding:10px 12px;color:var(--ink)}textarea{resize:vertical}.custom form .button{width:100%}.contact{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:25px 0 50px}.contact h2{font-size:27px}.contact p{margin-bottom:0;color:#675d66}footer{border-top:1px solid var(--line);padding:26px 32px;display:flex;justify-content:space-between;font-size:14px;color:#675d66}footer b{color:var(--pink)}dialog{padding:28px;border:0;border-radius:16px;width:min(520px,calc(100% - 28px));max-height:85vh;box-shadow:0 12px 70px #0003}dialog::backdrop{background:#28232b80}.dialoghead{display:flex;align-items:center;justify-content:space-between}.dialoghead h2{font-size:28px}.close{background:none;border:none;font-size:32px}.cartline{border-bottom:1px solid var(--line);padding:16px 0;display:flex;justify-content:space-between;gap:18px}.cartline p{margin:0;font-size:14px}.remove{background:none;border:0;text-decoration:underline;color:var(--pink);font-size:14px}.qty{width:80px;margin-top:8px}#order-form{margin-top:22px}#send{width:100%}button:disabled{opacity:.5;cursor:not-allowed}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;border-radius:30px;padding:12px 24px;z-index:3;display:none;max-width:90%;text-align:center}@media(max-width:900px){.intro{gap:30px}.product{display:block}.product-image{height:230px}.product-body{padding:18px}.custom{gap:28px;padding:28px}.contact{flex-direction:column;align-items:start}}@media(max-width:600px){header{padding:16px;align-items:start;gap:10px}.brand{font-size:20px}.brand img{width:48px;height:48px}.brand small{font-size:10px;letter-spacing:1px}nav{gap:8px}nav>a{display:none}.cartbutton{font-size:13px;padding:8px 10px}main{padding:0 18px}.intro{padding:25px 0 30px;gap:25px;grid-template-columns:1fr}.intro-copy>p{font-size:16px}.intro-art{height:280px;max-width:350px;width:100%;margin:auto}.intro-art img{max-width:260px;display:block;margin:auto}.sectionheading{display:block}.sectionheading .eyebrow{margin-bottom:10px}.sectionheading p:last-child{margin-top:10px}.products{gap:12px}.product-image{height:190px;padding:12px}.product-body{padding:14px}.product h3{font-size:17px}.product .button{padding:10px;font-size:13px}.product p{font-size:13px}.custom{grid-template-columns:1fr;padding:24px 18px;margin-top:10px}.custom form{padding:20px}.custom h2{font-size:38px}.contact h2{font-size:27px}footer{padding:24px 18px;flex-direction:column;gap:8px}.actions .button{padding:12px 15px}.topline{font-size:10px;letter-spacing:1.5px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Expanded category catalog */
.products{grid-template-columns:repeat(3,minmax(0,1fr))}.product{display:flex;flex-direction:column}.product-image{height:280px;flex-shrink:0}.product-body{flex:1}.product h3{min-height:2.6em}.design-code{font-size:12px;color:#675d66;margin:0 0 8px}.filters button span{font-size:12px;opacity:.8;margin-left:5px}#catalog-count{margin:0 0 18px}.filters{gap:8px}.filters button{padding:9px 15px}@media(max-width:900px){.products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.product-image{height:190px}.product h3{min-height:3.9em}.product-body{padding:14px 12px}.filters button{padding:8px 12px}}

.services{padding:0 0 44px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.service-grid article{border:1px solid var(--line);border-top:4px solid var(--teal);border-radius:12px;padding:28px;display:flex;flex-direction:column}.service-grid h3{font-family:Georgia,serif;font-size:26px;line-height:1.2;margin:14px 0 0}.service-grid .button{margin-top:auto;align-self:start}.service-grid p{color:#675d66}.service-grid article:first-child{border-top-color:var(--pink)}@media(max-width:600px){.service-grid{grid-template-columns:1fr}.service-grid article{padding:24px}.services h2{font-size:30px}}

.garment-charge{padding:18px 22px;background:#fff1f7;border-radius:8px;font-size:14px}.garment-charge strong{color:#a60d50}

.product p.product-price{font-size:20px;font-weight:700;color:var(--pink)}.product-price span{font-size:13px;font-weight:400;color:#675d66}.service-grid .service-price{color:var(--pink);font-weight:700}

.collection-links{display:flex;gap:22px;flex-wrap:wrap;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;color:var(--teal);font-weight:600}.collection-links a:hover{text-decoration:underline}.snow-section{display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center;background:#f0f8f8;border-radius:16px;overflow:hidden;margin:0 0 44px}.snow-photo{height:490px}.snow-photo img{height:100%;width:100%;object-fit:cover;object-position:center}.snow-copy{padding:30px 36px 30px 0}.snow-copy h2{font-size:42px}.snow-features{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.snow-features span{font-size:14px;padding:6px 10px;background:white;border:1px solid #cde3e3;border-radius:20px}.snow-copy>p:not(.eyebrow){color:#675d66}@media(max-width:900px){header nav{gap:13px}.snow-section{gap:28px}.snow-copy{padding-right:24px}.snow-copy h2{font-size:36px}}@media(max-width:600px){.collection-links{gap:10px 20px;font-size:13px}.snow-section{grid-template-columns:1fr;gap:0}.snow-photo{height:350px}.snow-copy{padding:28px 24px}.snow-copy h2{font-size:36px}.brand small{font-size:9px}}

.cup-effects{margin:-10px 0 44px;padding:30px;border:1px solid var(--line);border-radius:16px}.cup-effects h2{font-size:30px}.cup-effects ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 32px;margin:24px 0 0;padding-left:20px}.cup-effects li{padding-left:4px;font-size:16px}.cup-effects li::marker{color:var(--pink)}@media(max-width:900px){.cup-effects ul{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.cup-effects{padding:24px}.cup-effects ul{grid-template-columns:1fr}.cup-effects h2{font-size:27px}}

.wraps-offer{padding:26px 30px;margin:0 0 34px;border-left:4px solid var(--pink);background:#fff1f7;border-radius:8px}.wraps-offer h3{font-family:Georgia,serif;font-size:26px;margin:0}.wraps-offer p{color:#675d66}

.candles-section{padding:36px;margin:0 0 44px;background:#fff1f7;border-radius:16px;border:1px solid #f1d8e4}.candles-section>p:not(.eyebrow){max-width:680px;color:#675d66}.candles-section h2{font-size:38px}@media(max-width:600px){.candles-section{padding:28px 24px}.candles-section h2{font-size:32px}}

.cup-gallery{margin:0 0 44px}.cup-gallery>h2{font-size:32px}.photo-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:28px}.photo-product{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-width:0}.photo-view{display:block;background:#f6f4f5;padding:12px;height:290px}.photo-view img{width:100%;height:100%;object-fit:contain}.photo-info{padding:20px;display:flex;flex-direction:column;flex:1}.photo-info h3{font-size:18px;line-height:1.4;margin:10px 0 0}.photo-info .button{margin-top:auto;font-size:14px;padding:10px 12px}.photo-info .small{margin:12px 0 18px}@media(max-width:900px){.photo-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.photo-gallery{grid-template-columns:1fr;gap:18px}.photo-view{height:310px}.photo-info{padding:20px}.cup-gallery>h2{font-size:28px}}

.language-switch{max-width:1200px;margin:0 auto 14px;padding:0 32px;display:flex;justify-content:flex-end;gap:8px;font-size:14px}.language-switch a,.language-switch span{padding:6px 14px;border:1px solid #ecc3d3;border-radius:20px;background:#fff}.language-switch [aria-current]{background:var(--pink);color:white}.language-switch a:hover{background:#ffe0ed}@media(max-width:600px){.language-switch{padding:0 18px}}

/* Elvira's blush pink storefront with softly scattered hearts. */
:root{--pink:#b9326b;--teal:#994568;--line:#efd1df;--ink:#382b34}
html{background:#fff0f5}
body{background-color:#fff0f5;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cg fill='%23e7a6c0' fill-opacity='.35'%3E%3Cpath d='M28 38C8 26 12 12 21 12C25 12 28 15 28 18C28 15 31 12 35 12C44 12 48 26 28 38Z'/%3E%3Cpath d='M119 127C103 117 107 106 113 106C116 106 119 108 119 111C119 108 122 106 125 106C131 106 135 117 119 127Z'/%3E%3C/g%3E%3C/svg%3E");background-repeat:repeat}
.topline{background:#f5c7db;color:#71364f}
header{background:rgba(255,248,251,.86);border-radius:0 0 24px 24px}
.intro-art{background-color:#fce0ec;background-image:inherit;box-shadow:0 12px 36px #bc668516}
.art-label{background:#eeb5cf;color:#643447}
.product,.photo-product,.service-grid article,.cup-effects{background:#fffafd;box-shadow:0 6px 22px #bc66850c}
.product-image,.photo-view{background:#fff3f8}
.snow-section{background:#fce1ed}
.custom,.candles-section,.wraps-offer{background:#fce5ef;border-color:#efc7d9}
.filters .active{background:var(--pink);border-color:var(--pink)}
.snow-features span{border-color:#efc7d9}
footer{background:#fce1ed}
