
:root{--cream:#fffaf6;--blush:#f6e9ee;--lav:#ddccea;--plum:#5b3f68;--ink:#2d2632;--gold:#b88942;--muted:#716775;--line:rgba(91,63,104,.16);--white:#fff;--shadow:0 18px 50px rgba(67,45,73,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,var(--cream),#fbf3f7 52%,#f6eef9);color:var(--ink);font-family:Inter,Arial,sans-serif;line-height:1.55}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 36px));margin:auto}.serif,h1,h2,h3{font-family:Georgia,'Times New Roman',serif}.topbar{background:#f4e8ef;color:var(--plum);text-align:center;padding:7px 10px;font-size:13px;letter-spacing:.04em}.nav{position:sticky;top:0;z-index:30;background:rgba(255,250,246,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.navin{min-height:78px;display:flex;align-items:center;gap:28px}.logo{font-family:Georgia,serif;font-weight:700;font-size:24px;letter-spacing:.04em;line-height:1}.logo small{display:block;font:10px Inter,sans-serif;letter-spacing:.25em;text-align:center;color:var(--gold);margin-top:6px}.links{display:flex;gap:22px;margin-left:auto;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.links a:hover{color:var(--gold)}.portal{border:1px solid var(--plum);border-radius:999px;padding:10px 16px}.hero{position:relative;min-height:680px;overflow:hidden;background:#eee}.hero-bg{position:absolute;inset:0;background:url('/assets/hero-boutique.png') center 18%/cover no-repeat;animation:slowZoom 18s ease-in-out infinite alternate}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,250,246,.02) 35%,rgba(255,250,246,.25) 64%,var(--cream) 100%)}.spark{position:absolute;width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 16px 5px rgba(255,255,255,.85);animation:twinkle 3s infinite;z-index:2}.s1{left:18%;top:30%}.s2{left:49%;top:20%;animation-delay:.9s}.s3{right:18%;top:34%;animation-delay:1.7s}.hero-copy{position:relative;z-index:3;padding-top:505px;text-align:center}.hero-copy h1{font-size:clamp(40px,5vw,72px);margin:0;color:#332536;text-shadow:0 2px 16px rgba(255,255,255,.9)}.hero-copy p{font-family:Georgia,serif;font-size:20px;margin:6px auto 22px;max-width:700px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;background:var(--plum);color:white;padding:13px 20px;font-weight:700;cursor:pointer}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(91,63,104,.2)}.btn.gold{background:var(--gold)}.btn.light{background:white;color:var(--plum);border:1px solid var(--line)}section{padding:72px 0}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-weight:800;font-size:12px}.section-title{font-size:clamp(34px,4vw,52px);margin:8px 0 12px}.lead{color:var(--muted);max-width:760px;font-size:17px}.family-grid,.category-grid,.product-grid{display:grid;gap:20px}.family-grid{grid-template-columns:repeat(3,1fr);margin-top:30px}.family-card{background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:26px;padding:28px;text-align:center;box-shadow:var(--shadow)}.family-card .orb{width:78px;height:78px;margin:auto;border-radius:50%;display:grid;place-items:center;font:32px Georgia;background:linear-gradient(145deg,var(--blush),var(--lav));border:1px solid white}.family-card h3{font-size:28px;margin:14px 0 2px}.family-card p{color:var(--muted)}.categories{background:rgba(255,255,255,.5)}.category-grid{grid-template-columns:repeat(4,1fr);margin-top:26px}.cat{background:white;border:1px solid var(--line);border-radius:22px;padding:22px;display:flex;align-items:center;gap:14px;box-shadow:0 9px 30px rgba(67,45,73,.06)}.cat span{font-size:28px}.shop-head{display:flex;align-items:end;justify-content:space-between;gap:20px}.product-grid{grid-template-columns:repeat(4,1fr);margin-top:28px}.card{background:white;border:1px solid var(--line);border-radius:24px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column}.product-image{height:310px;background:#fff;display:flex;align-items:center;justify-content:center;padding:12px;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;transition:transform .35s ease}.card:hover .product-image img{transform:scale(1.035)}.card-body{padding:18px;display:flex;flex-direction:column;flex:1}.tag{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);font-weight:800}.card h3{font-size:19px;line-height:1.25;margin:8px 0}.card p{font-size:13px;color:var(--muted);margin:0 0 16px;flex:1}.card .btn{width:100%;padding:10px}.handmade{background:linear-gradient(135deg,#f5e9ef,#eee4f5)}.hand-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:24px;margin-top:28px}.panel{background:rgba(255,255,255,.78);border:1px solid rgba(255,255,255,.9);border-radius:28px;padding:32px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:700}.field.full{grid-column:1/-1}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:14px;background:white;padding:13px;font:14px Inter,Arial}textarea{min-height:110px;resize:vertical}.footer{padding:35px 0;background:#322838;color:#f8edf7}.footer .wrap{display:flex;justify-content:space-between;gap:20px}.status{padding:14px;border-radius:14px;margin-top:14px;display:none}.status.show{display:block}.status.ok{background:#e6f6ec;color:#205c35}.status.err{background:#fde8e8;color:#8b2424}@keyframes slowZoom{from{transform:scale(1)}to{transform:scale(1.035)}}@keyframes twinkle{0%,100%{opacity:.2;transform:scale(.5)}50%{opacity:1;transform:scale(1.15)}}
@media(max-width:900px){.links{display:none}.family-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,1fr)}.product-grid{grid-template-columns:repeat(2,1fr)}.hand-grid{grid-template-columns:1fr}.hero{min-height:610px}.hero-copy{padding-top:440px}}
@media(max-width:560px){.navin{min-height:66px}.logo{font-size:19px}.portal{font-size:12px;padding:8px 12px}.hero{min-height:520px}.hero-bg{background-position:center top}.hero-copy{padding-top:365px}.hero-copy p{font-size:16px}.product-grid{grid-template-columns:1fr}.category-grid{grid-template-columns:1fr}.product-image{height:380px}.shop-head{align-items:start;flex-direction:column}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer .wrap{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

/* Version 22 boutique refinements */
.hero-kicker{text-transform:uppercase;letter-spacing:.22em;color:var(--gold);font-size:12px;font-weight:800}.hero-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.hero-shimmer{position:absolute;inset:-40%;background:linear-gradient(115deg,transparent 42%,rgba(255,255,255,.22) 49%,transparent 56%);animation:shimmer 10s linear infinite;z-index:1;pointer-events:none}.s4{right:36%;top:25%;animation-delay:2.3s}.family-card a{display:inline-block;margin-top:8px;color:var(--plum);font-weight:800}.family-card a:hover{color:var(--gold)}.shop-tools{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:8px;background:white;border:1px solid var(--line);border-radius:999px;padding:0 16px;flex:1;min-width:260px}.search-box input{border:0;background:transparent;padding:13px 4px;outline:0}.clear-filter{border:0;background:transparent;color:var(--plum);font-weight:800;cursor:pointer}.product-count{margin-left:auto;color:var(--muted);font-size:13px}.card{position:relative}.heart{position:absolute;right:12px;top:12px;z-index:5;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.9);font-size:22px;color:var(--plum);cursor:pointer}.heart.saved{color:#b24572}.product-image{border:0;width:100%;cursor:pointer}.card-actions{display:grid;gap:9px}.quick-link{border:0;background:transparent;color:var(--plum);font-weight:800;cursor:pointer}.pay-placeholder{margin-left:8px;background:var(--plum)}.payment-note{display:block;color:var(--muted);margin-top:12px}.quick-view{width:min(900px,calc(100% - 30px));border:0;border-radius:28px;padding:32px;box-shadow:0 30px 90px rgba(38,24,44,.35)}.quick-view::backdrop{background:rgba(37,26,42,.68);backdrop-filter:blur(5px)}.modal-close{position:absolute;right:16px;top:12px;border:0;background:transparent;font-size:32px;cursor:pointer}.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center}.quick-image{height:500px;display:flex;align-items:center;justify-content:center;background:#fff;border-radius:20px}.quick-image img{max-width:100%;max-height:100%;object-fit:contain}@keyframes shimmer{from{transform:translateX(-35%)}to{transform:translateX(35%)}}
@media(max-width:700px){.quick-grid{grid-template-columns:1fr}.quick-image{height:360px}.pay-placeholder{margin:10px 0 0}.hero-copy{padding-bottom:24px}}
