:root{--purple:#7B3FA0;--purple-d:#5b2a7a;--pink:#D93A6A;--gold:#C9A24A;--navy:#2B2F42;--cream:#FBF7F2;--lilac:#F3EAF8;--ink:#2a2433;--muted:#6f6879;--line:#e8dff0;--r:18px;--shadow:0 10px 30px rgba(91,42,122,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:Poppins,system-ui,sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:var(--purple);text-decoration:none}a:hover{color:var(--pink)}
h1,h2,h3,h4{font-family:"Baloo 2",Poppins,sans-serif;line-height:1.15;margin:0 0 .5em;color:var(--navy)}
h1{font-size:clamp(2rem,5.5vw,3.6rem)}h2{font-size:clamp(1.6rem,3.8vw,2.4rem)}h3{font-size:1.2rem}
.wrap{width:min(1160px,100% - 32px);margin-inline:auto}.narrow{width:min(720px,100% - 32px);margin-inline:auto}
.center{text-align:center}.muted{color:var(--muted)}
.topbar{background:var(--navy);color:#fff;font-size:.8rem;display:flex;justify-content:space-between;gap:12px;padding:6px 16px}.topbar a{color:var(--gold);font-weight:600}
.header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;gap:16px;height:68px}
.brand{display:flex;align-items:center;gap:10px;color:var(--navy)}.brand img{border-radius:10px;background:var(--cream)}
.brand-name{font-family:"Kaushan Script",cursive;font-size:1.5rem;color:var(--purple);line-height:1}.brand-name.big{font-size:2rem;color:#fff}
.nav{margin-left:auto;display:flex;align-items:center;gap:22px}.nav a{color:var(--navy);font-weight:500;font-size:.95rem}.nav a.on,.nav a:hover{color:var(--pink)}
.nav .btn{color:#fff}
.cart-link{position:relative;color:var(--navy);display:grid;place-items:center;width:40px;height:40px}.cart-count{position:absolute;top:0;right:0;background:var(--pink);color:#fff;border-radius:99px;font-size:.7rem;min-width:18px;height:18px;display:grid;place-items:center;padding:0 4px}
.burger{display:none;background:none;border:0;width:40px;height:40px;cursor:pointer;flex-direction:column;justify-content:center;gap:5px;align-items:center}.burger span{width:22px;height:2px;background:var(--navy);display:block}
.btn{display:inline-flex;align-items:center;gap:8px;justify-content:center;background:linear-gradient(135deg,var(--purple),var(--pink));color:#fff;border:0;border-radius:99px;padding:13px 26px;font:600 .95rem Poppins,sans-serif;cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 18px rgba(123,63,160,.3)}
.btn:hover{transform:translateY(-2px);color:#fff;box-shadow:0 10px 24px rgba(217,58,106,.3)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.btn-sm{padding:9px 18px;font-size:.85rem}.btn-gold{background:linear-gradient(135deg,#d8b45c,var(--gold));color:#2b2133;box-shadow:0 6px 18px rgba(201,162,74,.4)}.btn-gold:hover{color:#2b2133}
.btn-ghost{background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.7);box-shadow:none}
.btn-outline{background:transparent;color:var(--purple);border:1.5px solid var(--purple);box-shadow:none}.btn-outline:hover{background:var(--purple);color:#fff}
.eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--pink);margin:0 0 8px}
.hero{background:linear-gradient(120deg,rgba(43,26,64,.9),rgba(123,63,160,.62) 55%,rgba(217,58,106,.35)),var(--hero) center/cover;color:#fff;padding:clamp(70px,12vw,150px) 0}
.hero h1{color:#fff;max-width:14ch}.hero .eyebrow{color:var(--gold)}.lead{font-size:1.1rem;max-width:52ch;opacity:.95}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin:26px 0}.cta-row.jc{justify-content:center}
.trust{list-style:none;padding:0;margin:0;display:flex;gap:10px 24px;flex-wrap:wrap;font-size:.85rem;opacity:.95}.trust li:before{content:"✦ ";color:var(--gold)}
.section{padding:clamp(48px,7vw,88px) 0}.section.alt{background:var(--cream)}
.sec-head{text-align:center;max-width:640px;margin:0 auto 36px}.sec-head p{color:var(--muted)}
.page-head{background:linear-gradient(135deg,var(--lilac),#fde8ef);padding:clamp(40px,6vw,72px) 0;text-align:center}.page-head p{color:var(--muted);max-width:60ch;margin:0 auto}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}.grid.three{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;height:100%;transition:transform .2s}.card:hover{transform:translateY(-4px)}
.card-img{display:block;position:relative;aspect-ratio:4/3;background:var(--lilac);overflow:hidden}.card-img>img{width:100%;height:100%;object-fit:cover}
.ph-img{width:100%;height:100%;display:grid;place-items:center;background:linear-gradient(135deg,var(--lilac),#fde8ef)}.ph-img img{width:42%;opacity:.8;object-fit:contain;mix-blend-mode:multiply;border-radius:12px}.ph-img.big{aspect-ratio:1;border-radius:var(--r)}
.card-body{padding:18px;display:flex;flex-direction:column;gap:6px;flex:1}.card-body p{margin:0;color:var(--muted);font-size:.9rem;flex:1}.card-body h3 a{color:var(--navy)}
.card-body .btn{align-self:flex-start;margin-top:8px}
.chip{align-self:flex-start;font-size:.7rem;font-weight:600;background:var(--lilac);color:var(--purple);padding:3px 10px;border-radius:99px}
.meta{display:flex;justify-content:space-between;font-size:.85rem;color:var(--muted)}.price{font-weight:600;color:var(--pink)}.price.big{font-size:1.6rem}
.badge{position:absolute;top:10px;left:10px;background:var(--navy);color:#fff;font-size:.75rem;padding:3px 10px;border-radius:99px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,60px);align-items:center}.rounded{border-radius:var(--r);box-shadow:var(--shadow);width:100%;object-fit:cover}
.filters{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:28px}.filters button{border:1.5px solid var(--line);background:#fff;border-radius:99px;padding:7px 18px;font:500 .85rem Poppins;cursor:pointer;color:var(--navy)}.filters button.on{background:var(--purple);border-color:var(--purple);color:#fff}
.masonry{columns:3 240px;column-gap:16px}.gal{display:block;margin-bottom:16px;border-radius:14px;overflow:hidden;break-inside:avoid;box-shadow:var(--shadow)}.gal img{width:100%;transition:transform .4s}.gal:hover img{transform:scale(1.04)}
.video-gal video{display:block;width:100%;background:#1d1724}
.quote{margin:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:24px;box-shadow:var(--shadow)}.stars{color:var(--gold);letter-spacing:3px}.quote blockquote{margin:10px 0;font-style:italic}.quote figcaption{font-weight:600;color:var(--purple)}
.feature{background:#fff;border-radius:var(--r);padding:24px;border:1px solid var(--line)}
.cta-band{background:linear-gradient(135deg,var(--purple-d),var(--purple) 50%,var(--pink));color:#fff}.cta-band h2{color:#fff}
.form{display:grid;gap:16px;background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:clamp(18px,4vw,32px);box-shadow:var(--shadow)}
.form label{display:grid;gap:6px;font-weight:500;font-size:.9rem}.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
input,select,textarea{font:inherit;padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;background:#fff;width:100%;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid var(--purple);border-color:transparent}
.hp{position:absolute!important;left:-9999px}.form-msg{margin:0;font-size:.9rem}.form-msg.err{color:#c0262d}.note{font-size:.85rem;color:var(--muted)}
.done{text-align:center;background:var(--lilac);border-radius:var(--r);padding:40px 20px}
.cart-line{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}.cart-line img,.cart-line .thumb{width:64px;height:64px;border-radius:12px;object-fit:cover;background:var(--lilac)}
.qty{display:inline-flex;align-items:center;gap:8px;margin-top:4px}.qty button{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);background:#fff;cursor:pointer}.rm{background:none;border:0;color:var(--pink);cursor:pointer;font-size:.8rem}
.total{text-align:right;font-size:1.2rem}
.contact-list{display:grid;gap:22px}.ci{display:flex;gap:14px}.ci svg{color:var(--pink);flex:none;margin-top:4px}.ci h3{margin:0}.ci p{margin:2px 0}.copy{border:1px solid var(--line);background:#fff;border-radius:8px;padding:2px 10px;cursor:pointer;font-size:.8rem}
.prose p{margin:0 0 1em}
.footer{background:var(--navy);color:#d9d4e2;padding:56px 0 0}.footer a{color:#d9d4e2;display:block;margin:4px 0}.footer a:hover{color:var(--gold)}.footer h4{color:#fff}.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1.2fr 1fr;gap:32px}.footer p{margin:6px 0}.social{display:flex;gap:14px}.social a{display:inline-flex}
.copy{}.footer .copy{border:0;border-top:1px solid rgba(255,255,255,.12);margin-top:36px;padding:18px 0;font-size:.8rem;display:block;background:none;border-radius:0}
.wa-float{position:fixed;right:16px;bottom:16px;z-index:50;background:#25D366;color:#fff!important;border-radius:99px;padding:12px 18px;display:flex;gap:8px;align-items:center;font-weight:600;box-shadow:0 8px 22px rgba(0,0,0,.25)}.wa-float:hover{color:#fff}
.lb{position:fixed;inset:0;background:rgba(20,10,30,.92);z-index:100;display:grid;place-items:center;padding:20px}.lb img{max-height:84vh;border-radius:12px}.lb p{color:#fff;text-align:center;margin:10px 0 0}.lb button{position:absolute;top:14px;right:18px;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--navy);color:#fff;padding:10px 20px;border-radius:99px;z-index:90;font-size:.9rem}
@media(max-width:860px){.split{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}.row2{grid-template-columns:1fr}
 .burger{display:flex;margin-left:auto}.cart-link{order:3}.nav{position:absolute;top:68px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 18px;border-bottom:1px solid var(--line);display:none}.nav.open{display:flex}.nav a{padding:12px 4px}.nav .btn{margin-top:8px}
 .wa-float span{display:none}.wa-float{padding:14px}.topbar span{display:none}.topbar{justify-content:center}}
@media(max-width:520px){.foot-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
