#membership form{display:grid;gap:10px;max-width:480px;margin:18px 0}
#membership label{font-weight:600}
#membership input{width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink)}
#membership form button{margin-top:6px}
#membership-message:not(:empty){padding:14px 18px;border:1px solid var(--line);border-radius:10px;background:white;max-width:760px}
.purchase-history{list-style:none;padding:0;margin:18px 0}
.purchase-history li{display:grid;gap:4px;padding:14px 0;border-bottom:1px solid var(--line)}
.purchase-history small{color:var(--muted)}
.loyalty-card{border-top:3px solid var(--accent,#873651)}
.loyalty-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin:20px 0}
.loyalty-metrics>div{background:#f8f1f3;border-radius:12px;padding:16px;min-width:0}
.loyalty-metrics span,.loyalty-metrics strong{display:block}
.loyalty-metrics span{font-size:.88rem;color:var(--muted)}
.loyalty-metrics strong{margin-top:7px;overflow-wrap:anywhere}
.loyalty-details summary{cursor:pointer;font-weight:650;padding:12px 0}
.loyalty-tiers{list-style:none;padding:0;margin:16px 0}
.loyalty-tiers li{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:14px 0}
.loyalty-tiers strong,.loyalty-tiers small{display:block;overflow-wrap:anywhere}
.loyalty-tiers small{color:var(--muted);margin-top:4px}
.loyalty-number{background:#f3e7eb;color:#81364e;border-radius:50%;text-align:center;line-height:32px}
.loyalty-card progress{width:100%;height:12px;accent-color:#81364e}
@media(max-width:650px){
 .loyalty-card{padding:16px}
 .loyalty-card .eyebrow{margin:0 0 6px;font-size:.72rem}
 .loyalty-card h2{font-size:1.65rem;margin:0 0 12px}
 .loyalty-metrics{grid-template-columns:1fr;gap:8px;margin:12px 0}
 .loyalty-metrics>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:10px;padding:11px 12px;border-radius:10px}
 .loyalty-metrics span{font-size:.8rem;line-height:1.35}
 .loyalty-metrics strong{margin-top:0;font-size:.95rem;line-height:1.35;text-align:right}
 .loyalty-card>p:not(.eyebrow){margin:10px 0;font-size:.9rem}
 .loyalty-card progress{display:block;margin:12px 0;height:8px}
 .loyalty-details summary{min-height:44px;padding:10px 0;font-size:.9rem;line-height:1.4}
 .loyalty-tiers li{gap:8px}
}

.membership-welcome{padding:30px 24px;background:#f7edf0;border-radius:18px;margin:12px 0 24px}
.membership-welcome h1{max-width:760px;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.15;margin:12px 0}
.welcome-lead{font-size:1.15rem;max-width:720px}
.welcome-cta{display:inline-block;padding:13px 20px;background:#85364f;color:#fff!important;text-decoration:none;border-radius:10px;font-weight:700}
.welcome-cta:focus-visible{outline:3px solid #342e31;outline-offset:4px}
.welcome-note{font-size:.92rem;max-width:720px}
.welcome-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.welcome-benefits h3{font-size:1.05rem;margin:8px 0;color:#85364f}
#membership-login{scroll-margin-top:24px}
@media(max-width:650px){.welcome-benefits{grid-template-columns:1fr;gap:8px}.membership-welcome{padding:22px 18px}}

/* Footer information pages share the shop's Om oss typography and rose palette. */
.lc-information-service{background:#fbfaf7;color:#333}
.lc-information-service main{--accent:#a3245a;--ink:#333;--muted:#666;--line:#eadce2;max-width:1080px;padding:36px 20px 48px;font-size:16px;line-height:1.7}
.lc-information-service main h1,.lc-information-service main h2,.lc-information-service main h3{font-family:inherit;font-weight:700;color:#492b38;letter-spacing:normal;overflow-wrap:anywhere}
.lc-information-service main h1{font-size:clamp(28px,4vw,34px);line-height:1.2;margin:0 0 20px}
.lc-information-service main h2{font-size:24px;line-height:1.3;margin:0 0 14px}
.lc-information-service main h3{font-size:19px;line-height:1.35}
.lc-information-service main .card{border-color:#eadce2;border-radius:14px;padding:28px;margin-bottom:20px}
.lc-information-service main a{color:#a3245a;text-underline-offset:3px}
.lc-information-service main button,.lc-information-service main .welcome-cta{border-radius:8px;min-height:44px}
.lc-information-service main .welcome-cta{background:#a3245a;color:#fff}
.lc-information-service main .eyebrow{color:#a3245a;font-size:12px;letter-spacing:1.5px}
.lc-information-service main .membership-welcome{background:#fcf3f7;border:1px solid #eadce2;border-radius:14px;padding:28px}
.lc-information-service main details summary{min-height:44px;padding:10px 0;cursor:pointer;font-weight:650}
.lc-information-service main a:focus-visible,.lc-information-service main button:focus-visible{outline:3px solid #492b38;outline-offset:3px}
@media(max-width:650px){.lc-information-service main{padding:22px 14px 32px}.lc-information-service main .card,.lc-information-service main .membership-welcome{padding:20px}.lc-information-service main h2{font-size:22px}.lc-information-service main .loyalty-card h2{font-size:22px}.lc-information-service main .card{margin-bottom:16px}}
