:root{--pink: #f46b93;--pink-hot: #ee4c7c;--pink-deep: #d93468;--berry: #9c0f47;--berry-dark: #5e0a2c;--wine: #420d20;--ink: #2a1118;--muted: #4d2730;--blush: #fbe6ec;--blush-soft: #fdf3f5;--blush-line: #efb6c6;--blush-text: #f6d2dc;--grad-valentine: linear-gradient(135deg, #f46b93 0%, #ee4c7c 48%, #d93468 100%);--radius: 22px;--gutter: clamp(20px, 5vw, 72px);--serif: "Cormorant Garamond", Georgia, serif;--sans: "Jost", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--sans);font-weight:600;line-height:1;letter-spacing:-.03em;margin:0;color:var(--ink)}h1{font-size:clamp(2.6rem,6vw,4.6rem)}h2{font-size:clamp(2.4rem,5vw,4.25rem)}h3{font-size:1.5rem}.accent{font-family:var(--serif);font-style:italic;font-weight:500;letter-spacing:0}h2 .accent,h1 .accent{color:var(--pink-deep)}.wrap{width:min(1280px,100% - 2 * var(--gutter));margin-inline:auto}.eyebrow{margin:0;font-size:.75rem;font-weight:600;letter-spacing:.3em;text-transform:uppercase;color:var(--pink-hot)}.panel{background:var(--blush);border-radius:var(--radius)}.btn{display:inline-flex;align-items:center;gap:.875rem;padding:.85rem 1.5rem;border-radius:999px;border:0;background:var(--ink);color:#fff;font:500 .94rem var(--sans);text-decoration:none;cursor:pointer;transition:background .2s}.btn:hover{background:var(--berry-dark)}.btn:has(.dot){padding:6px 6px 6px 24px}.btn .dot{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--pink-hot);color:#fff;font-size:1rem;transition:transform .2s}.btn:hover .dot{transform:rotate(45deg)}.btn.solid{background:var(--pink-hot);font-weight:600}.btn.solid:hover{background:var(--pink-deep)}.btn.solid .dot{background:#fff;color:var(--pink-hot)}.btn.white{background:#fff;color:var(--berry);font-weight:600}.btn.white:hover{background:var(--blush)}.btn.white .dot{background:var(--berry);color:#fff}.btn.outline{background:transparent;color:var(--berry);box-shadow:inset 0 0 0 1.5px var(--berry)}.btn.outline:hover{background:var(--berry);color:#fff}.btn[disabled]{opacity:.5;cursor:not-allowed}.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,#fff 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--blush)}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-block:1.25rem}.site-header nav{display:flex;gap:1.75rem;align-items:center;font-size:.875rem;font-weight:500;flex-wrap:wrap}.site-header nav a{text-decoration:none}.site-header nav a:not(.pill):hover{color:var(--pink-deep)}.site-header .pill{background:var(--pink-hot);color:#fff;border-radius:999px;padding:.625rem 1.25rem;font-weight:600}.site-header .pill:hover{background:var(--pink-deep)}.site-header.overlay{position:absolute;inset:0 0 auto;background:none;backdrop-filter:none;border:0;color:#fff}.site-header.overlay .pill{background:#fff;color:var(--berry)}.site-header.overlay .pill:hover{background:var(--blush)}.site-header.overlay nav a:not(.pill):hover{color:var(--blush)}.site-header.overlay .cart-count{background:#fff;color:var(--berry)}.logo{font-family:var(--serif);font-size:1.75rem;font-weight:600;line-height:1;color:inherit;text-decoration:none}.logo em{font-style:italic}.cart-link{position:relative}.cart-count{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;padding:0 .35rem;margin-left:.35rem;border-radius:999px;background:var(--pink-hot);color:#fff;font-size:.72rem;font-weight:600}.cart-count[data-empty=true]{display:none}@media(max-width:640px){.site-header nav .hide-sm{display:none}}.hero{position:relative;overflow:hidden;background:var(--grad-valentine);color:#fff;padding:calc(88px + clamp(32px,6vw,88px)) var(--gutter) clamp(96px,11vw,160px)}.hero-ghost{position:absolute;left:-2vw;bottom:-.18em;font-weight:700;font-size:clamp(120px,21vw,320px);line-height:1;letter-spacing:-.04em;color:#ffffff21;white-space:nowrap;pointer-events:none;user-select:none}.hero-inner{position:relative;z-index:1;width:min(1280px,100%);margin-inline:auto;display:flex;flex-wrap:wrap;gap:48px;align-items:center}.hero-copy{flex:1.3 1 380px;display:flex;flex-direction:column;gap:22px}.hero .eyebrow{color:#fff}.hero h1{color:#fff;font-size:clamp(48px,10vw,150px);line-height:.92;letter-spacing:-.035em}.hero h1 .accent{color:#fff;letter-spacing:-.01em}.hero-lede{margin:0;font-size:clamp(17px,1.7vw,22px);line-height:1.5;max-width:520px}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;padding-top:6px}.hero-art{flex:1 1 300px;display:flex;justify-content:center}.polaroid{width:min(100%,420px);aspect-ratio:4 / 3;background:#fff;border-radius:18px;padding:12px;transform:rotate(-5deg);box-shadow:0 30px 70px #5e0a2c59}.polaroid-inner{position:relative;width:100%;height:100%;border-radius:10px;background:var(--blush);display:flex;align-items:center;justify-content:center;overflow:hidden}.polaroid img{width:auto;height:auto;max-width:70%;max-height:92%;object-fit:contain;mix-blend-mode:multiply}.tag-new{position:absolute;left:14px;top:14px;background:var(--berry);color:#fff;border-radius:999px;padding:6px 12px;font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}@media(max-width:480px){.hero-copy{flex-basis:100%}}.section{padding:clamp(72px,9vw,128px) var(--gutter) clamp(56px,7vw,96px)}.section>.wrap{width:min(1280px,100%);display:flex;flex-direction:column;gap:36px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:2rem}.section>.wrap>.section-head{margin-bottom:0}.section-head .titles{display:flex;flex-direction:column;gap:8px}.section-head .lede{margin:0;font-size:1rem;color:var(--muted);max-width:320px}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(max(230px,calc((100% - 72px)/4)),1fr));gap:24px}.card{display:flex;flex-direction:column;gap:14px;text-decoration:none;color:var(--ink)}.card-art{position:relative;aspect-ratio:4 / 5;border-radius:var(--radius);background:var(--blush);display:flex;align-items:center;justify-content:center;padding:22px;overflow:hidden;transition:transform .25s,box-shadow .25s}.card:nth-child(4n+1) .card-art{background:var(--wine)}.card:nth-child(4n+3) .card-art{background:var(--blush-soft)}.card-art img{width:100%;height:100%;object-fit:contain}.card:not(:nth-child(4n+1)) .card-art img{mix-blend-mode:multiply}.card:hover .card-art{transform:translateY(-4px);box-shadow:0 18px 40px #5e0a2c29}.card-heart{position:absolute;right:12px;top:12px;width:38px;height:38px;border-radius:50%;background:#fff;color:var(--pink-deep);display:grid;place-items:center}.card-meta{display:flex;justify-content:space-between;align-items:center;gap:12px}.card h3{font-size:1rem;font-weight:500;letter-spacing:0;line-height:1.3}.card .price{font-size:.9rem;color:var(--muted)}.card-plus{flex:none;width:38px;height:38px;border-radius:50%;background:var(--pink-hot);color:#fff;display:grid;place-items:center;font-size:20px;line-height:1;transition:background .2s,transform .2s}.card:hover .card-plus{background:var(--pink-deep);transform:rotate(90deg)}.center-cta{align-self:center}.notice{padding:2rem;border-radius:var(--radius);background:var(--blush-soft);text-align:center;color:var(--muted)}.countdown-row{padding:clamp(56px,7vw,104px) var(--gutter)}.countdown-row>.wrap{width:min(1280px,100%);display:flex;flex-wrap:wrap;gap:48px;align-items:center;justify-content:space-between}.countdown{flex:1 1 360px;display:flex;flex-direction:column;gap:16px}.units{display:flex;gap:clamp(12px,3vw,40px);flex-wrap:wrap}.unit{display:flex;flex-direction:column;gap:4px}.unit b{font-weight:600;font-size:clamp(40px,6.5vw,96px);line-height:.9;letter-spacing:-.03em;color:var(--pink-deep);font-variant-numeric:tabular-nums}.unit span{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.moments{flex:1 1 300px;max-width:440px;background:var(--blush-soft);border:1.5px dashed var(--blush-line);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:14px;align-items:flex-start}.moments h3{font-family:var(--serif);font-weight:500;font-size:34px;line-height:1.05;letter-spacing:0;color:var(--berry)}.moments p{margin:0;font-size:15px;line-height:1.6;color:var(--muted)}.pdp{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;padding-block:3rem 5rem}.pdp h1{font-size:clamp(2rem,4vw,3.25rem)}.pdp-img{background:var(--blush);border-radius:var(--radius);padding:1.5rem}.pdp-img img{width:100%;aspect-ratio:1;object-fit:contain;mix-blend-mode:multiply}.pdp .price{font-weight:600;font-size:2rem;letter-spacing:-.02em;color:var(--pink-deep);margin:1rem 0}.field{display:grid;gap:.4rem;margin-bottom:1.4rem}.field select{padding:.8rem 1rem;border-radius:12px;border:1px solid var(--blush-line);background:#fff;font:inherit;color:inherit}@media(max-width:800px){.pdp{grid-template-columns:1fr}}.cart{padding-block:3rem 5rem;max-width:820px}.line{display:grid;grid-template-columns:90px 1fr auto;gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--blush)}.line img{width:90px;aspect-ratio:1;object-fit:contain;border-radius:12px;background:var(--blush-soft)}.line .remove{background:none;border:0;color:var(--muted);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.qty{display:inline-flex;align-items:center;gap:.6rem;margin-top:.3rem}.qty button{width:1.9rem;height:1.9rem;border-radius:50%;border:1px solid var(--blush-line);background:#fff;cursor:pointer;font-size:1rem;color:var(--pink-deep)}.total{display:flex;justify-content:space-between;font-weight:600;letter-spacing:-.02em;font-size:1.8rem;margin:1.6rem 0 1rem}.error{color:#b3261e;margin-top:.8rem;min-height:1.4em}.site-footer{background:var(--berry-dark);color:#fff;padding:clamp(40px,5vw,72px) var(--gutter) 28px}.site-footer>.wrap{width:min(1280px,100%);display:flex;flex-direction:column;gap:40px}.footer-top{display:flex;flex-wrap:wrap;gap:32px;justify-content:space-between;align-items:flex-end}.footer-mark{font-weight:600;font-size:clamp(44px,7vw,104px);line-height:.9;letter-spacing:-.035em;text-decoration:none}.footer-mark .accent{color:var(--pink)}.site-footer nav{display:flex;gap:28px;font-size:.875rem;flex-wrap:wrap}.site-footer nav a{text-decoration:none}.site-footer nav a:hover{color:var(--pink)}.footer-bottom{border-top:1px solid rgba(255,255,255,.18);padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--blush-text)}.center{text-align:center;padding:6rem 1rem}.center p{color:var(--muted);max-width:32rem;margin:1rem auto 2rem}.ship{margin:1.6rem 0 1rem}.ship-row{display:grid;grid-template-columns:1.3fr .6fr 1fr auto;gap:.6rem;margin-top:.4rem}.ship-row select,.ship-row input{padding:.8rem 1rem;border-radius:12px;border:1px solid var(--blush-line);background:#fff;font:inherit;color:inherit;min-width:0}.ship-row input#state{text-transform:uppercase}.rates{display:grid;gap:.5rem;margin-bottom:1rem;color:var(--muted)}.rate{display:grid;grid-template-columns:auto 1fr auto;gap:.8rem;align-items:center;padding:.8rem 1rem;border:1px solid var(--blush-line);border-radius:12px;background:#fff;color:var(--ink);cursor:pointer}.rate input{accent-color:var(--pink-hot)}.sum-row{display:flex;justify-content:space-between;padding:.3rem 0;color:var(--muted)}@media(max-width:640px){.ship-row{grid-template-columns:1fr 1fr}.ship-row select,.ship-row button{grid-column:1 / -1}}.ship-addr{grid-template-columns:1.6fr 1fr;margin-bottom:.6rem}@media(max-width:640px){.ship-addr{grid-template-columns:1fr}}.moment-thanks{font-weight:500;color:var(--berry)!important}.moment-dialog{width:min(480px,calc(100% - 32px));max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:24px;background:#fff;color:var(--ink);box-shadow:0 30px 80px #5e0a2c59}.moment-dialog::backdrop{background:#2a11188c;backdrop-filter:blur(3px)}.moment-form{display:flex;flex-direction:column;gap:14px;padding:28px}.moment-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.moment-head h3{font-size:1.75rem}.moment-close{width:36px;height:36px;border-radius:50%;border:0;background:var(--blush);color:var(--berry);font-size:1.4rem;line-height:1;cursor:pointer}.moment-drop{position:relative;display:grid;place-items:center;min-height:180px;border:1.5px dashed var(--blush-line);border-radius:18px;background:var(--blush-soft);color:var(--muted);text-align:center;cursor:pointer;overflow:hidden;transition:background .2s,border-color .2s}.moment-drop.over,.moment-drop:hover{background:var(--blush);border-color:var(--pink-hot)}.moment-drop:focus-within{outline:2px solid var(--pink-hot);outline-offset:2px}.moment-drop input{position:absolute;inset:0;opacity:0;cursor:pointer}.moment-drop img{width:100%;max-height:260px;object-fit:cover}.moment-drop small{color:var(--muted);opacity:.8}.moment-field{display:grid;gap:4px;font-size:.85rem;font-weight:500}.moment-field small{font-weight:400;color:var(--muted)}.moment-field input{padding:.75rem 1rem;border-radius:12px;border:1px solid var(--blush-line);font:400 1rem var(--sans);color:var(--ink)}.moment-field input:focus{outline:2px solid var(--pink-hot);outline-offset:0;border-color:transparent}.moment-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.moment-consent{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.4;color:var(--muted)}.moment-consent input{margin-top:2px;accent-color:var(--pink-hot);width:18px;height:18px;flex:none}.moment-form .error{margin:0;min-height:0}.moment-form .btn{align-self:flex-start}.gallery{background:var(--blush-soft)}.moment-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:28px}.moment-card{margin:0;padding:10px 10px 14px;background:#fff;border-radius:14px;box-shadow:0 14px 34px #5e0a2c24;transform:rotate(-2deg);transition:transform .25s}.moment-card:nth-child(2n){transform:rotate(2deg)}.moment-card:hover{transform:rotate(0) translateY(-4px)}.moment-card img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:8px;background:var(--blush)}.moment-card figcaption{display:grid;gap:2px;padding:10px 4px 0;font-size:.9rem;line-height:1.35}.moment-card figcaption strong{font-family:var(--serif);font-style:italic;font-size:1.2rem;font-weight:600;color:var(--berry)}.moment-card figcaption span{color:var(--muted)}
