:root{--ink:#231b21;--plum:#4b2b40;--rose:#bc597a;--cream:#f8f4ee;--sand:#eee5dc;--line:#dfd4ca}*{box-sizing:border-box}body{margin:0;background:#e7ded6;color:var(--ink);font-family:Manrope,Arial,sans-serif}.app-shell{max-width:480px;min-height:100dvh;margin:auto;background:var(--cream);padding:0 22px 110px;overflow:hidden}.screen{display:none;animation:appear .36s ease}.screen.active{display:block}@keyframes appear{from{opacity:.35;transform:translateY(8px)}to{opacity:1;transform:none}}.topbar{height:78px;display:flex;align-items:center;justify-content:space-between}.wordmark{font-family:'Playfair Display',serif;font-size:22px;color:var(--ink);text-decoration:none;letter-spacing:-1px}.wordmark i{font-weight:500;color:#9a526a}.icon-button,.profile-dot{border:0;background:var(--sand);width:38px;height:38px;border-radius:50%;font:500 22px/1 Manrope;color:var(--plum);cursor:pointer}.profile-dot{font-size:14px;background:var(--plum);color:#fff}.eyebrow{font:500 9px/1.2 'DM Mono',monospace;letter-spacing:1.2px;color:#8c7780;margin:0 0 12px}.welcome{padding:37px 5px 30px}.welcome h1,.section-heading h2{font:500 clamp(39px,11vw,52px)/.98 'Playfair Display',serif;letter-spacing:-2.5px;margin:0}.welcome h1 em,.section-heading em{color:#a44d6d}.intro{font-size:13px;line-height:1.65;max-width:300px;color:#62575d;margin:22px 0}.primary-button{display:flex;align-items:center;gap:26px;background:var(--plum);border:0;border-radius:2px;color:#fff;padding:15px 18px;font:600 11px Manrope;cursor:pointer}.primary-button span{font-size:18px;font-weight:400}.hero-image{height:300px;margin:0 -22px;position:relative;overflow:hidden;background:#e7d6ca}.hero-image img{width:100%;height:100%;object-fit:cover}.image-label{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,rgba(25,15,20,.75));color:#fff;padding:34px 24px 18px;font:400 8px 'DM Mono';letter-spacing:1px}.image-label span{font-size:18px;margin-right:9px}.quick-links{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:22px 0}.quick-card{position:relative;text-align:left;background:#fff;border:1px solid #eee5de;padding:15px 12px;border-radius:3px;cursor:pointer;color:var(--ink)}.quick-card .quick-icon{display:block;font-size:17px;color:#a54e6d;margin-bottom:17px}.quick-card b{display:block;font-size:12px}.quick-card small{font-size:9px;color:#8d7a81}.quick-card i{position:absolute;right:12px;bottom:13px;color:#a54e6d;font-style:normal;font-size:20px}.section-heading{padding:34px 3px 23px}.filters{display:flex;gap:8px;margin-bottom:20px;overflow:auto}.filter{white-space:nowrap;background:transparent;border:1px solid var(--line);color:#6d5d64;border-radius:20px;font:500 10px Manrope;padding:8px 12px}.filter.active{background:var(--plum);border-color:var(--plum);color:#fff}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px 12px}.product-card{position:relative}.product-card small{display:block;font:400 7px/1.4 'DM Mono';letter-spacing:.65px;margin-top:10px;color:#8c747d}.product-card h3{font:500 17px 'Playfair Display';margin:5px 0 3px}.product-card p{font-size:11px;margin:0}.bottle{height:194px;position:relative;overflow:hidden;display:grid;place-items:center}.bottle:before{content:'';width:80px;height:126px;border-radius:10px 10px 19px 19px;background:linear-gradient(110deg,rgba(255,255,255,.5),transparent 40%),var(--bottle);box-shadow:inset 6px 0 10px rgba(255,255,255,.3),0 20px 16px #0001}.bottle:after{content:'';position:absolute;width:38px;height:20px;background:#b58a57;top:23px;border-radius:3px 3px 0 0}.bottle span{position:absolute;z-index:1;width:58px;height:34px;border:1px solid #fff9;top:87px}.bottle-pink{--bottle:#d792a0;background:#e9d8d2}.bottle-gold{--bottle:#cf994d;background:#e7d7b8}.bottle-blue{--bottle:#395879;background:#d3d9d8}.bottle-ivory{--bottle:#dfcfb1;background:#e9e1d5}.add-to-bag{display:none}.bonus-card{background:linear-gradient(140deg,#4a2d3e,#775064);color:#fff;border-radius:4px;padding:24px 22px;margin:0 1px 29px;position:relative;overflow:hidden}.bonus-card:after{content:'✦';position:absolute;right:-18px;top:-35px;font-size:190px;color:#ffffff10}.bonus-card>span{font:500 10px 'DM Mono';letter-spacing:1px}.bonus-card>strong{display:block;font:500 76px/.9 'Playfair Display';margin-top:22px}.bonus-card>b{font:400 16px 'Playfair Display';margin-left:5px}.bonus-card p{font-size:11px;line-height:1.5;margin:22px 0 13px}.bonus-card p strong{font-weight:700}.progress{height:4px;background:#ffffff3b;margin-bottom:9px}.progress i{display:block;width:68%;height:100%;background:#e6b7c7}.bonus-card small{font:400 8px 'DM Mono';letter-spacing:1px}.reward-list h3,.reminder-list h3{font:500 22px 'Playfair Display';margin:0 0 14px}.reward-list button{display:grid;grid-template-columns:38px 1fr;column-gap:12px;width:100%;text-align:left;background:transparent;border:0;border-top:1px solid var(--line);padding:15px 0;color:var(--ink)}.reward-list button span{grid-row:1/3;color:#a44d6d;font:500 12px 'DM Mono';align-self:center}.reward-list button b{font-size:11px}.reward-list button i{font-size:9px;font-style:normal;color:#917e85;margin-top:5px}.reminder-feature{padding:24px 22px;background:#e9d9d3;margin:0 0 28px;position:relative}.reminder-feature>span{font-size:23px;color:#a34c6c}.reminder-feature p{font:500 8px 'DM Mono';letter-spacing:1px;color:#8c747d;margin:18px 0 8px}.reminder-feature h3{font:500 29px/1.05 'Playfair Display';margin:0 0 20px}.outline-button{border:1px solid #9b6475;background:transparent;padding:10px 12px;color:#70384d;font:600 10px Manrope}.reminder-list div{display:flex;align-items:center;gap:13px;border-top:1px solid var(--line);padding:13px 0}.reminder-list div>span{display:inline-block;min-width:34px;text-align:center;color:#a44d6d;font:500 20px/.8 'Playfair Display'}.reminder-list div>span small{font:500 7px 'DM Mono';letter-spacing:1px}.reminder-list p{flex:1;margin:0}.reminder-list b,.reminder-list p small{display:block;font-size:11px}.reminder-list p small{font-size:9px;color:#8c747d;margin-top:4px}.reminder-list i,.profile-menu i{font-style:normal;font-size:21px;color:#a44d6d}.profile-header{padding:30px 0 26px}.profile-header>div{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--plum);color:white;font:500 20px 'Playfair Display';margin-bottom:18px}.profile-header p{font-size:12px;color:#78666e;margin:0}.profile-header h2{font:500 42px/1 'Playfair Display';margin:5px 0}.subscription{padding:22px;background:#ebe2d8;margin-bottom:21px}.subscription h3{font:500 27px/1.1 'Playfair Display';margin:0}.subscription h3 em{color:#9e4e6b}.subscription>p:not(.eyebrow){font-size:11px;line-height:1.55;color:#6b5d62}.toggle-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #d7c9bd;padding-top:15px;margin-top:17px;font-size:11px;font-weight:600}.toggle-row input{display:none}.toggle-row i{width:36px;height:20px;border-radius:20px;background:#cfc2ba;position:relative;cursor:pointer}.toggle-row i:after{content:'';width:16px;height:16px;border-radius:50%;background:#fff;position:absolute;top:2px;left:2px;transition:.2s}.toggle-row input:checked+i{background:#9c4c69}.toggle-row input:checked+i:after{left:18px}.profile-menu button{width:100%;background:transparent;border:0;border-top:1px solid var(--line);padding:15px 4px;text-align:left;display:flex;align-items:center;gap:12px;font:600 11px Manrope}.profile-menu button span{color:#a44d6d;font-size:16px;width:18px}.profile-menu button i{margin-left:auto}.bottom-nav{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);width:min(480px,100%);height:76px;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:rgba(248,244,238,.95);backdrop-filter:blur(10px);border-top:1px solid #e8dfd7;display:flex;justify-content:space-around}.nav-link{border:0;background:transparent;color:#8c7b82;font:500 8px Manrope;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer}.nav-link span{font-size:19px;line-height:18px}.nav-link.active{color:#873d5a}.toast{position:fixed;left:50%;bottom:91px;transform:translate(-50%,15px);background:#30202a;color:#fff;padding:11px 15px;border-radius:4px;font-size:11px;opacity:0;pointer-events:none;transition:.25s;z-index:20;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}@media(min-width:560px){body{padding:18px}.app-shell{border-radius:15px;min-height:calc(100dvh - 36px);box-shadow:0 12px 45px #462f3622}.bottom-nav{bottom:18px;border-radius:0 0 15px 15px}}
