.save-wall[data-astro-cid-cwtf3jm2]{position:fixed;inset:0;z-index:1200;display:flex;align-items:flex-end;justify-content:center}.save-wall[data-astro-cid-cwtf3jm2][hidden]{display:none}.save-wall__backdrop[data-astro-cid-cwtf3jm2]{position:absolute;inset:0;background:#2c181073}.save-wall__sheet[data-astro-cid-cwtf3jm2]{position:relative;z-index:1;width:100%;max-width:480px;background:var(--cream, #FBF3E6);color:var(--ink, #2C1810);border-radius:24px 24px 0 0;padding:28px 24px calc(24px + env(safe-area-inset-bottom,0px));box-shadow:0 -12px 40px #2c181040;transform:translateY(100%);transition:transform .2s ease-out}.save-wall[data-astro-cid-cwtf3jm2].on .save-wall__sheet[data-astro-cid-cwtf3jm2]{transform:translateY(0)}@media(prefers-reduced-motion:reduce){.save-wall__sheet[data-astro-cid-cwtf3jm2]{transition:none}}@media(min-width:640px){.save-wall[data-astro-cid-cwtf3jm2]{align-items:center;padding:24px}.save-wall__sheet[data-astro-cid-cwtf3jm2]{border-radius:20px;padding:32px;transform:translateY(16px);opacity:0;transition:transform .2s ease-out,opacity .2s ease-out}.save-wall[data-astro-cid-cwtf3jm2].on .save-wall__sheet[data-astro-cid-cwtf3jm2]{transform:translateY(0);opacity:1}}.save-wall__eyebrow[data-astro-cid-cwtf3jm2]{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--coral-text, #9F5831);font-weight:500;margin:0 0 8px}.save-wall__title[data-astro-cid-cwtf3jm2]{font-family:Fraunces,Georgia,serif;font-size:24px;font-weight:500;line-height:1.2;margin:0 0 12px;color:var(--walnut, #2C1810)}.save-wall__body[data-astro-cid-cwtf3jm2]{font-family:Inter,sans-serif;font-size:15px;line-height:1.55;color:var(--ink-soft, rgba(44, 24, 16, .75));margin:0}.save-wall__actions[data-astro-cid-cwtf3jm2]{margin-top:24px;display:flex;flex-direction:column;align-items:center;gap:14px}.save-wall__cta[data-astro-cid-cwtf3jm2]{width:100%;text-align:center;background:var(--coral, #C76E3E);color:var(--cream, #FBF3E6);font-family:Inter,sans-serif;font-size:15px;font-weight:600;padding:14px 24px;border-radius:999px;text-decoration:none;min-height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 16px #c76e3e4d}.save-wall__cta[data-astro-cid-cwtf3jm2]:hover{background:#a95a30}.save-wall__dismiss[data-astro-cid-cwtf3jm2]{background:transparent;border:none;color:var(--ink-soft, rgba(44, 24, 16, .65));font-family:Inter,sans-serif;font-size:14px;font-weight:500;cursor:pointer;padding:8px;min-height:40px}.save-wall__dismiss[data-astro-cid-cwtf3jm2]:hover{color:var(--walnut, #2C1810);text-decoration:underline}:root{--cream: #FBF3E6;--cream-2: #F5EBD8;--walnut: #2C1810;--walnut-2: #4A2E24;--coral: #C76E3E;--coral-soft: rgba(199, 110, 62, .12);--coral-text: #9F5831;--honey: #D4A574;--sage: #6B8B66;--ink: #2C1810;--ink-soft: rgba(44, 24, 16, .65);--hairline: rgba(44, 24, 16, .1)}.fym-scope,.fym-scope *{box-sizing:border-box}.fym-scope{background:var(--cream);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.fym-scope :where(*){margin:0;padding:0}.voice{font-family:Fraunces,Georgia,serif}.fym-breadcrumb{max-width:1200px;margin:20px auto 0;padding:0 24px;display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;letter-spacing:.03em;color:var(--ink-soft)}.fym-breadcrumb a{color:var(--coral-text);text-decoration:none}.fym-breadcrumb a:hover{text-decoration:underline}.fym-breadcrumb__sep{opacity:.6}.fym-breadcrumb [aria-current=page]{color:var(--walnut);font-weight:500}.page{max-width:1200px;margin:0 auto;padding:40px 24px 80px;display:grid;grid-template-columns:1fr 420px 1fr;gap:32px;align-items:start}@media(max-width:1100px){.page{grid-template-columns:1fr;max-width:480px;padding:24px 20px 64px}.page__side{display:none}}.page__side{padding-top:8px}.side-title{font-family:Fraunces,serif;font-size:22px;font-weight:500;line-height:1.2;margin-bottom:8px;color:var(--walnut)}.deck-position{text-align:center;font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.side-lede{font-size:14px;color:var(--ink-soft);line-height:1.55;margin-bottom:20px}.side-list{margin-top:24px;display:flex;flex-direction:column;gap:12px}.side-list-title{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;margin-bottom:4px}.side-list a{display:block;padding:10px 14px;background:#fff9;border:1px solid var(--hairline);border-radius:12px;text-decoration:none;color:var(--walnut);font-size:14px}.side-list a:hover{border-color:var(--coral);background:var(--coral-soft)}.side-list a small{display:block;font-size:12px;color:var(--ink-soft);margin-top:2px}.side-list a.top-pick{border-color:var(--honey);background:#d4a57424}.side-list a.top-pick .side-list__name{font-weight:700}.side-list a.top-pick .side-list__star{color:var(--honey);margin-right:2px}.side-save-cta{display:block;width:100%;text-align:center;background:var(--coral);color:var(--cream);font-family:Inter,sans-serif;font-size:13px;font-weight:600;padding:10px 16px;border:none;border-radius:999px;cursor:pointer;margin-bottom:12px;box-shadow:0 4px 12px #c76e3e40}.side-save-cta:hover{background:#a95a30}.stage{position:relative;touch-action:pan-y}.card{background:var(--cream);border-radius:24px;overflow:hidden;box-shadow:0 12px 40px #2c181026,0 3px 10px #2c181014;border:1px solid var(--hairline);will-change:transform,opacity;user-select:none;-webkit-user-select:none;touch-action:pan-y}.card.dragging{transition:none!important}.card.snap-back{transition:transform .35s cubic-bezier(.2,.9,.3,1.2),opacity .35s ease}.card.fly-off{transition:transform .5s ease-out,opacity .5s ease-out}.card__hero{position:relative;aspect-ratio:3/4;background:#efe1c8;overflow:hidden}.card__hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;-webkit-user-drag:none;user-drag:none;pointer-events:none}.card__hero-progress{position:absolute;top:12px;left:12px;right:12px;display:flex;gap:4px;z-index:3}.card__hero-progress span{flex:1;height:3px;background:#fbf3e659;border-radius:2px;transition:background .2s}.card__hero-progress span.on{background:#fbf3e6f2}.card__hero-scrim{position:absolute;bottom:0;left:0;right:0;padding:120px 20px 20px;background:linear-gradient(0deg,#2c1810eb,#2c1810a6 45%,#2c181026 85%,#2c181000);color:var(--cream);z-index:2}.card__name{font-family:Fraunces,serif;font-size:32px;font-weight:500;line-height:1.1;color:#fff;text-shadow:0 1px 8px rgba(44,24,16,.5)}.card__vitals{font-size:13px;margin-top:6px;letter-spacing:.02em;color:#fff;opacity:.95}.card__tagline{font-family:Fraunces,serif;font-style:italic;font-size:17px;margin-top:12px;line-height:1.35;color:var(--cream);opacity:.92}.swipe-label{position:absolute;top:32px;padding:8px 18px;border-radius:8px;font-weight:600;font-size:22px;letter-spacing:.15em;text-transform:uppercase;opacity:0;transition:opacity .15s ease;z-index:5;pointer-events:none}.swipe-label--save{right:24px;color:#7a8f42;border:3px solid #7A8F42;background:#7a8f4214;transform:rotate(15deg)}.swipe-label--skip{left:24px;color:#a95a30;border:3px solid #a95a30;background:#a95a3014;transform:rotate(-15deg)}.swipe-label.on{opacity:1}.chip-strip{padding:14px 16px 0;display:flex;flex-wrap:wrap;gap:6px}.chip{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:500}.chip-emoji{font-size:14px;line-height:1}.chip--home{background:#2e86ab24;color:#185a75}.chip--chill{background:#6b5ca824;color:#4a3c85}.chip--kids{background:#d4648424;color:#8a2f52}.chip--shed{background:#6b8b662e;color:#3d5a3a}.chip--groom{background:#d4a57438;color:#7a5a2d}.prompts{padding:6px 16px 20px;display:flex;flex-direction:column;gap:12px}.prompt{background:#fff;border-radius:16px;padding:16px 18px;border:1px solid var(--hairline)}.prompt__label{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--coral-text);font-weight:500;margin-bottom:6px}.prompt__body{font-family:Fraunces,serif;font-size:16px;line-height:1.55;color:var(--walnut)}.prompt__body:before{content:'"';margin-right:1px;font-size:20px;opacity:.5}.prompt__body:after{content:'"';margin-left:1px;font-size:20px;opacity:.5}.practical{padding:12px 14px;margin:0 16px 20px;background:#2c18100d;border-radius:12px}.practical__label{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);font-weight:500;margin-bottom:6px}.practical__body{font-size:12px;line-height:1.55;color:#2c1810bf}.swipe-hint{display:none;background:var(--cream-2);text-align:center;padding:10px 16px;margin:0 16px 12px;border-radius:999px;font-size:12px;color:var(--ink-soft);border:1px dashed var(--hairline)}@media(max-width:1100px){.swipe-hint{display:block}}.actions{background:var(--cream);border-top:1px solid var(--hairline);padding:20px 24px 24px;display:flex;align-items:center;justify-content:space-around;gap:12px;position:relative}.action{border:none;background:var(--cream);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s ease,background .15s ease;position:relative}.action:active{transform:scale(.9)}.action--skip{width:56px;height:56px;background:#fff;border:1px solid var(--hairline);color:var(--ink-soft)}.action--skip:hover{border-color:var(--ink-soft)}.action--save{width:72px;height:72px;background:var(--coral);color:var(--cream);box-shadow:0 6px 16px #c76e3e59}.action--save:hover{background:#a95a30}.action--super{width:56px;height:56px;background:#fff;border:1px solid var(--hairline);color:var(--honey)}.action--super:hover{border-color:var(--honey)}.action svg{width:24px;height:24px}.action--save svg{width:30px;height:30px}.action[data-tip]:before,.action[data-tip]:after{position:absolute;pointer-events:none;opacity:0;transition:opacity .15s ease,transform .15s ease}.action[data-tip]:after{content:attr(data-tip);bottom:calc(100% + 10px);left:50%;transform:translate(-50%) translateY(4px);background:var(--walnut);color:var(--cream);font-size:12px;font-weight:500;padding:6px 10px;border-radius:8px;white-space:nowrap;letter-spacing:.02em;box-shadow:0 4px 12px #2c181040}.action[data-tip]:before{content:"";bottom:calc(100% + 4px);left:50%;transform:translate(-50%) translateY(4px);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid var(--walnut)}.action:hover:after,.action:focus-visible:after,.action.tip-on:after{opacity:1;transform:translate(-50%) translateY(0)}.action:hover:before,.action:focus-visible:before,.action.tip-on:before{opacity:1;transform:translate(-50%) translateY(0)}@media(hover:none){.action[data-tip]:before{display:none}.action[data-tip]:after{opacity:1;transform:translate(-50%) translateY(0);bottom:auto;top:calc(100% + 6px);background:transparent;color:var(--walnut);box-shadow:none;font-size:11px;font-weight:500;padding:2px 4px;letter-spacing:.03em}.actions{padding-bottom:34px}}.toast{position:fixed;bottom:32px;left:50%;transform:translate(-50%) translateY(80px);background:var(--walnut);color:var(--cream);padding:14px 20px;border-radius:999px;font-size:14px;font-weight:500;opacity:0;transition:opacity .25s,transform .25s cubic-bezier(.2,.9,.3,1.2);z-index:100;box-shadow:0 8px 24px #2c181040;pointer-events:none}.toast.on{opacity:1;transform:translate(-50%) translateY(0)}.card-footnote{max-width:1200px;margin:24px auto 0;padding:0 24px 40px;text-align:center;font-size:12px;color:var(--ink-soft)}.card-footnote a{color:var(--coral-text)}.mood-face{position:absolute;top:50%;left:50%;width:180px;height:180px;margin-left:-90px;margin-top:-90px;border-radius:50%;background:#fbf3e6f2;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:opacity .12s ease,transform .15s ease;z-index:4;pointer-events:none;box-shadow:0 8px 32px #2c181059,0 3px 12px #2c181033}.mood-face svg{width:140px;height:140px}.mood-face.on{opacity:1;transform:scale(1)}@media(max-width:500px){.mood-face{width:148px;height:148px;margin-left:-74px;margin-top:-74px}.mood-face svg{width:118px;height:118px}}.sparkle-burst{position:absolute;inset:0;pointer-events:none;z-index:6}.sparkle-burst span{position:absolute;font-size:22px;opacity:0;color:var(--honey)}.sparkle-burst.on span{animation:sparkle-pop .7s ease-out forwards}@keyframes sparkle-pop{0%{opacity:0;transform:scale(.3) translateY(0)}35%{opacity:1}to{opacity:0;transform:scale(1.15) translateY(-46px)}}
