:root{--coral:#fb7171;--coral-deep:#ef5a5a;--coral-press:#d94c4c;--blush:#ffe6e6;--banner:#faeeee;--cream:#f5f1ee;--surface:#fff;--ink:#2a2522;--charcoal:#3c3836;--muted:#98928e;--caramel:#b37f4d;--line:#ece3d9;--danger:#c2453f;--r-sm:8px;--r-md:14px;--r-pill:999px;--shadow-card:0 10px 30px rgba(42,37,34,.06);--shadow-lift:0 14px 34px hsla(0,95%,71%,.18);--font-display:"Frank Ruhl Libre",Georgia,"Times New Roman",serif;--font-body:"Bellota Text","Bellota","Comic Sans MS",system-ui,-apple-system,sans-serif;color:var(--charcoal);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background-color:var(--cream);background-image:radial-gradient(120% 60% at 50% -10%,#fff6f3 0,var(--cream) 55%);background-attachment:fixed;color:var(--charcoal);font-size:16px;line-height:1.7}.site-header{display:flex;align-items:center;justify-content:center;padding:22px 16px 6px}.brand{display:inline-flex;align-items:center;line-height:0}.brand-logo{height:52px;width:auto;display:block}.announce{background:var(--banner);color:var(--charcoal);text-align:center;font-size:.9rem;padding:9px 16px}.announce strong{color:var(--coral);font-weight:700}.site-footer{max-width:640px;margin:8px auto 40px;padding:0 16px;text-align:center;color:var(--muted);font-size:.85rem}.site-footer .heart{color:var(--coral)}.wrap{max-width:560px;margin:0 auto;padding:8px 16px 56px}.hero{text-align:center;padding:14px 4px 8px}.eyebrow{margin:0 0 10px;font-family:var(--font-body);font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--coral)}.eyebrow,h1{font-weight:700}h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,2.75rem);line-height:1.05;color:var(--ink);margin:0 0 12px}.lede{margin:0 auto;max-width:42ch;color:var(--charcoal)}.piping{height:12px;margin:22px auto;max-width:220px;background-image:radial-gradient(circle,var(--coral) 38%,transparent 42%);background-size:18px 12px;background-repeat:repeat-x;background-position:50%;opacity:.85}.section-label{font-family:var(--font-display);font-size:1.125rem;font-weight:600;color:var(--ink);margin:4px 0 12px}.product{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px;margin:12px 0;background:var(--surface);box-shadow:var(--shadow-card);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.product:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(42,37,34,.1);border-color:var(--blush)}.product .meta{display:flex;flex-direction:column;gap:3px;min-width:0}.product .name{font-family:var(--font-display);font-weight:600;font-size:1.15rem;color:var(--ink)}.product .price{color:var(--muted);font-size:.95rem}.soldout{align-self:flex-start;margin-top:4px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--caramel);background:#f3e9dd;border-radius:var(--r-pill);padding:2px 10px}.qty{display:flex;align-items:center;gap:12px;flex:none}.qty button{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--coral);background:var(--surface);color:var(--coral);font-size:1.25rem;font-weight:700;line-height:1;cursor:pointer;display:grid;place-items:center;transition:background .15s ease,color .15s ease,transform .1s ease}.qty button:hover:not(:disabled){background:var(--coral);color:#fff}.qty button:active:not(:disabled){transform:scale(.92)}.qty button:disabled{border-color:var(--line);color:var(--muted);cursor:not-allowed;opacity:.6}.qty>span{min-width:20px;text-align:center;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--ink)}.field{margin:22px 0 8px;display:flex;flex-direction:column;gap:8px}.field label{font-weight:700;font-size:.95rem;color:var(--ink)}select{font-size:1rem;color:var(--ink);border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23fb7171' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding:12px 40px 12px 14px}.cta,select{font-family:var(--font-body);cursor:pointer}.cta{font-size:.95rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:16px 28px;border-radius:var(--r-sm);background:var(--coral);color:#fff;border:0;width:100%;margin-top:14px;box-shadow:var(--shadow-lift);transition:background .15s ease,transform .1s ease,box-shadow .15s ease}.cta:hover:not(:disabled){background:var(--coral-deep);transform:translateY(-1px)}.cta:active:not(:disabled){background:var(--coral-press);transform:translateY(0)}.cta:disabled{background:#f0d9d4;color:#fff;cursor:not-allowed;box-shadow:none}.linkback{background:none;border:0;padding:8px 0;margin-bottom:8px;color:var(--coral);font-family:var(--font-body);font-size:.95rem;font-weight:700;cursor:pointer}.linkback:hover{color:var(--coral-deep)}.error{color:var(--danger);background:#fdecea;border:1px solid #f4c7c2;border-radius:var(--r-sm);padding:12px 14px;margin:12px 0;font-size:.95rem}.note{color:var(--muted);font-size:.875rem}.confirm-card{text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);padding:36px 28px;margin-top:12px}.confirm-card .ref{font-size:.8rem;color:var(--muted);word-break:break-all;margin-top:14px}:focus-visible{outline:none;box-shadow:0 0 0 3px var(--blush),0 0 0 4.5px var(--coral);border-radius:var(--r-sm)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}