/* Purely OM \2014  Baby Registry (v4.18). Every class starts rg- so nothing leaks into the rest of the shop. */
.rg{--rg-forest-d:#3f4d3c;--rg-gold-d:#b3955a;--rg-sage-l:#e8f1ea;--rg-shadow:0 10px 30px rgba(51,51,51,.08);
  font-family:var(--sans);color:var(--ink);line-height:1.55;padding-bottom:40px;min-height:50vh}
.rg *{box-sizing:border-box}
.rg h1,.rg h2,.rg h3{font-family:var(--serif);font-weight:600;line-height:1.12;letter-spacing:-.01em;color:var(--charcoal);margin:0;text-wrap:balance}
.rg p{margin:0}
.rg button{font:inherit;color:inherit}
.rg img{max-width:100%}
.rg-wrap{max-width:1180px;margin:0 auto;padding-inline:24px}
@media (max-width:520px){.rg-wrap{padding-inline:16px}}
.rg-eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;font-weight:800;color:var(--olive)}
.rg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rg-muted{color:var(--muted);font-size:.92rem}
.rg-hint{font-size:.86rem;color:var(--muted);margin-top:8px}
.rg-notice{background:#fbf7ee;border:1px solid var(--gold);border-radius:14px;padding:12px 16px;margin-top:20px;font-weight:700;color:var(--charcoal)}
.rg-notice a{color:var(--forest);text-decoration:underline;text-underline-offset:3px}

/* buttons */
.rg-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--sans);font-weight:800;font-size:1rem;line-height:1.2;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:background .18s,box-shadow .18s;padding:.85rem 1.5rem;text-decoration:none;white-space:nowrap}
.rg-btn svg{width:20px;height:20px;flex:none}
.rg-btn:focus-visible,.rg-chip:focus-visible,.rg-card:focus-visible,.rg input:focus-visible,.rg textarea:focus-visible,.rg-tally .rg-btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.rg-forest{background:var(--forest);color:var(--cream)!important}
.rg-forest:hover{background:var(--rg-forest-d)}
.rg-gold{background:var(--gold);color:var(--charcoal)!important}
.rg-gold:hover{background:var(--rg-gold-d)}
.rg-ghost{background:transparent;border-color:var(--line);color:var(--charcoal)}
.rg-ghost:hover{border-color:var(--olive)}
.rg-wa{background:#1f7a4d;color:#fff!important}
.rg-wa:hover{background:#186540}
.rg-btn[disabled]{opacity:.45;cursor:not-allowed}
.rg-link{background:none;border:0;color:var(--forest);font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}

/* landing */
.rg-hero{padding-block:44px 36px}
.rg-hero .rg-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.rg-hero h1{font-size:clamp(2.1rem,4.6vw,3.4rem);margin:.6rem 0 1rem}
.rg-hero h1 em{font-style:italic;color:var(--forest)}
.rg-lead{font-size:1.08rem;color:var(--muted);max-width:34em}
.rg-twin{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px;max-width:520px}
.rg-twin .rg-btn{min-height:66px;font-size:1.05rem;padding-inline:1rem;border-radius:18px;white-space:normal}
.rg-twin .tx{display:flex;flex-direction:column;align-items:flex-start;text-align:left;line-height:1.2}
.rg-twin .sub{display:block;font-size:.74rem;font-weight:700;opacity:.8;margin-top:2px}
.rg-fine{font-size:.88rem;color:var(--muted);margin-top:14px}
.rg-fine a{color:var(--forest);font-weight:800}
.rg-mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:14px;box-shadow:var(--rg-shadow)}
.rg-ph{background:var(--cream);border-radius:16px;aspect-ratio:1;overflow:hidden;display:grid;place-items:center}
.rg-ph img{width:82%;height:82%;object-fit:contain;mix-blend-mode:multiply}
.rg-tag{grid-column:1/-1;display:flex;align-items:baseline;justify-content:center;gap:.6rem;background:var(--forest);color:var(--cream);border-radius:14px;padding:.75rem 1rem;font-size:.9rem;font-weight:700}
.rg-tag b{font-family:var(--serif);font-size:1.3rem;color:var(--gold)}
@media (max-width:860px){.rg-hero .rg-wrap{grid-template-columns:1fr;gap:32px}.rg-mosaic{max-width:460px}}
@media (max-width:420px){.rg-twin{grid-template-columns:1fr}}
.rg-how{padding-block:36px}
.rg-how h2{font-size:1.7rem;margin-bottom:22px}
.rg-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rg-step{background:#fff;border-radius:16px;padding:22px;border:1px solid var(--line)}
.rg-step .n{font-family:var(--serif);font-size:1.6rem;color:var(--gold);font-weight:600}
.rg-step h3{font-size:1.15rem;margin:.3rem 0 .4rem}
.rg-step p{color:var(--muted);font-size:.95rem}
@media (max-width:760px){.rg-steps{grid-template-columns:1fr}}
.rg-vband{margin-block:20px 10px}
.rg-vband .in{background:var(--rg-sage-l);border-radius:22px;padding:26px 28px;display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center}
.rg-vband h2{font-size:1.5rem;margin:.35rem 0 .4rem}
.rg-vband p{color:var(--muted)}
.rg-vcards{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.rg-vcard{width:112px;aspect-ratio:1.58;border-radius:12px;background:var(--forest);color:var(--cream);padding:10px 12px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--rg-shadow);flex:none}
.rg-vcards .rg-vcard:nth-child(2){background:var(--gold);color:var(--charcoal)}
.rg-vcards .rg-vcard:nth-child(3){background:var(--terra)}
.rg-vcard small{font-size:.58rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;opacity:.85}
.rg-vcard b{font-family:var(--serif);font-size:1.3rem}
@media (max-width:760px){.rg-vband .in{grid-template-columns:1fr}.rg-vcards{justify-content:flex-start}}

/* flow */
.rg-flowtop{padding-block:28px 8px}
.rg-stepper{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:18px}
.rg-stepper span{font-size:.78rem;font-weight:800;color:var(--muted);background:var(--oat);border-radius:999px;padding:.3rem .8rem}
.rg-stepper span.on{background:var(--forest);color:var(--cream)}
.rg-stepper span.done{background:var(--sage);color:var(--forest)}
.rg-flowtop h1{font-size:clamp(1.8rem,3.4vw,2.5rem)}
.rg-sub{color:var(--muted);margin-top:.5rem!important;max-width:44em}
.rg-panel{background:#fff;border-radius:22px;border:1px solid var(--line);padding:26px;margin-top:20px}
@media (max-width:520px){.rg-panel{padding:18px}}
.rg-grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media (max-width:640px){.rg-grid2{grid-template-columns:1fr}}
.rg-f{display:flex;flex-direction:column;gap:6px;font-weight:800;font-size:.88rem;color:var(--charcoal)}
.rg-f .opt{font-weight:600;color:var(--muted)}
.rg input[type=text],.rg input[type=tel],.rg input[type=email],.rg input[type=date],.rg input[type=number],.rg input[type=password],.rg input[type=search],.rg textarea{font:inherit;font-size:1rem;font-weight:600;border:1.5px solid var(--line);border-radius:12px;padding:.75rem .9rem;background:var(--cream);color:var(--ink);width:100%;margin:0;box-shadow:none;min-height:48px}
.rg textarea{min-height:84px;resize:vertical}
.rg-row-end{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:22px;flex-wrap:wrap}
.rg-rw{margin-top:20px;border:1.5px solid var(--gold);border-radius:16px;background:#fbf7ee;padding:16px 18px}
.rg-rw.on{background:#f6efdd}
.rg-rwh{display:flex;gap:14px;align-items:flex-start;cursor:pointer;font-weight:400}
.rg-rwh input{width:22px;height:22px;accent-color:var(--forest);flex:none;margin-top:2px}
.rg-rwh b{display:block;color:var(--charcoal)}
.rg-rwh span{color:var(--muted);font-size:.9rem}
.rg-free{display:inline-block!important;background:var(--forest);color:var(--cream)!important;font-size:.66rem!important;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:.1rem .5rem;margin-left:6px;vertical-align:2px;font-weight:800}
.rg-dot{width:24px;height:24px;border-radius:50%;background:var(--forest);display:grid;place-items:center;flex:none}
.rg-dot svg{width:14px;height:14px;stroke:#fff}
.rg-rwpw{margin-top:14px;padding-left:36px;display:grid;gap:6px;max-width:420px}
.rg-rwpw input{background:#fff}
.rg-q{padding-block:18px;border-top:1px solid var(--line)}
.rg-q:first-child{border-top:0;padding-top:0}
.rg-q h3{font-family:var(--sans);font-size:1.02rem;font-weight:800;margin-bottom:10px}
.rg-q h3 small{font-weight:600;color:var(--muted);font-size:.85rem;margin-left:6px}
.rg-chips{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.rg-chip{border:1.5px solid var(--line);background:var(--cream);border-radius:999px;padding:.55rem 1rem;font-weight:700;font-size:.92rem;cursor:pointer;color:var(--charcoal)}
.rg-chip[aria-pressed=true]{background:var(--forest);border-color:var(--forest);color:var(--cream)}
.rg-chip.sm{padding:.4rem .85rem;font-size:.85rem}

/* checklist */
.rg-listbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:18px}
.rg-seg{display:inline-flex;background:var(--oat);border-radius:999px;padding:4px}
.rg-seg button{border:0;background:transparent;border-radius:999px;padding:.55rem 1.2rem;font-weight:800;cursor:pointer;color:var(--muted)}
.rg-seg button[aria-pressed=true]{background:#fff;color:var(--forest);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.rg-sec{margin-top:30px}
.rg-sec-h{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.rg-sec-h h2{font-size:1.35rem}
.rg-sec-h .meta{font-size:.85rem;color:var(--muted);font-weight:700}
.rg-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:14px}
@media (max-width:420px){.rg-cards{grid-template-columns:1fr 1fr;gap:10px}}
.rg-card{position:relative;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:10px 10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:6px;transition:border-color .15s,box-shadow .15s}
.rg-card:hover{border-color:var(--clay)}
.rg-card.on{border-color:var(--forest);box-shadow:0 0 0 1px var(--forest)}
.rg-im{aspect-ratio:1;border-radius:12px;overflow:hidden;display:grid;place-items:center;background:#fff}
.rg-im img{width:100%;height:100%;object-fit:contain}
.rg-br{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:var(--olive);min-height:1em}
.rg-nm{font-size:.9rem;font-weight:700;line-height:1.3;color:var(--charcoal);min-height:2.6em}
.rg-pr{font-weight:800;color:var(--forest);font-variant-numeric:tabular-nums}
.rg-pr small{font-weight:700;color:var(--muted);font-size:.72rem}
.rg-tick{position:absolute;top:10px;right:10px;width:30px;height:30px;border-radius:50%;border:2px solid var(--clay);background:#fff;display:grid;place-items:center}
.rg-card.on .rg-tick{background:var(--forest);border-color:var(--forest)}
.rg-tick svg{width:16px;height:16px;stroke:#fff;opacity:0}
.rg-card.on .rg-tick svg{opacity:1}
.rg-pill{position:absolute;top:12px;left:12px;z-index:1;background:var(--sage);color:var(--forest);font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:.2rem .5rem;border-radius:999px}
.rg-pill.gift{background:var(--gold);color:var(--charcoal)}
.rg-qty{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:2px}
.rg-qty .lbl{font-size:.78rem;color:var(--muted);font-weight:700}
.rg-stp{display:inline-flex;align-items:center;border:1.5px solid var(--line);border-radius:999px;overflow:hidden}
.rg-stp button{width:32px;height:30px;border:0;background:var(--cream);cursor:pointer;font-weight:800;font-size:1rem;padding:0}
.rg-stp span{min-width:26px;text-align:center;font-weight:800;font-variant-numeric:tabular-nums}
.rg-more{margin-top:26px;color:var(--muted)}
.rg-vtoggle{display:flex;gap:14px;align-items:center;background:var(--rg-sage-l);border-radius:16px;padding:16px 18px;margin-top:20px;cursor:pointer;font-weight:400}
.rg-vtoggle input{width:22px;height:22px;accent-color:var(--forest);flex:none}
.rg-vtoggle b{display:block}
.rg-vtoggle span{color:var(--muted);font-size:.9rem}

/* done / mine */
.rg-done{text-align:center;padding-block:36px 20px}
.rg-done .rg-stepper{justify-content:center}
.rg-done .rg-sub{margin-inline:auto}
.rg-badge{width:74px;height:74px;border-radius:50%;background:var(--sage);display:grid;place-items:center;margin:0 auto 18px}
.rg-badge svg{width:36px;height:36px;stroke:var(--forest)}
.rg-done h1{font-size:clamp(1.9rem,3.6vw,2.6rem)}
.rg-code{display:inline-flex;flex-direction:column;align-items:center;background:#fff;border:1.5px dashed var(--gold);border-radius:18px;padding:16px 30px;margin:22px 0 10px;max-width:100%}
.rg-code small{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;font-weight:800;color:var(--muted)}
.rg-code b{font-family:var(--serif);font-size:2rem;letter-spacing:.06em;color:var(--forest)}
.rg-code span{font-size:.9rem;color:var(--muted);word-break:break-all}
.rg-acts{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:14px}
.rg-self{margin-top:14px}
.rg-self a{color:#1f7a4d;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.rg-sharepanel{text-align:center}
.rg-stats{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.rg-stats div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 18px;min-width:130px}
.rg-stats b{display:block;font-family:var(--serif);font-size:1.5rem;color:var(--forest);font-weight:600}
.rg-stats span{font-size:.82rem;color:var(--muted);font-weight:700}

/* find */
.rg-search{display:flex;gap:10px;margin-top:18px;position:relative}
.rg-search input{flex:1;font-size:1.08rem!important;padding:.95rem 1.1rem!important;border-radius:14px!important;background:#fff!important}
.rg-search .rg-btn{border-radius:14px}
@media (max-width:520px){.rg-search{flex-direction:column}}
.rg-results{display:grid;gap:10px;margin-top:20px}
.rg-res{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:14px 18px;text-decoration:none;color:inherit}
.rg-res:hover{border-color:var(--gold)}
.rg-res b{font-family:var(--serif);font-size:1.15rem;font-weight:600;display:block;color:var(--charcoal)}
.rg-res span{color:var(--muted);font-size:.88rem}
.rg-res em{font-style:normal;font-weight:800;color:var(--forest);font-size:.9rem;white-space:nowrap}
@media (max-width:520px){.rg-res{flex-direction:column;align-items:flex-start}}
.rg-empty{background:#fff;border-radius:16px;padding:20px;color:var(--muted);border:1px dashed var(--line)}

/* a registry, as family sees it */
.rg-rhead{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding-block:28px 6px}
.rg-rhead h1{font-size:clamp(1.9rem,3.6vw,2.7rem);margin-top:.35rem}
.rg-rhead .meta{display:flex;gap:18px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-weight:700;font-size:.92rem}
.rg-rhead .meta b{color:var(--charcoal)}
@media (max-width:700px){.rg-rhead{grid-template-columns:1fr}}
.rg-note{background:#fff;border-left:4px solid var(--gold);border-radius:0 14px 14px 0;padding:14px 18px;margin-top:16px;font-family:var(--serif);font-style:italic;font-size:1.05rem;color:var(--charcoal);max-width:46em}
.rg-note span{display:block;font-family:var(--sans);font-style:normal;font-size:.82rem;color:var(--muted);margin-top:6px}
.rg-prog{min-width:220px}
.rg-prog .bar{height:10px;background:var(--oat);border-radius:99px;overflow:hidden;margin-top:6px}
.rg-prog .bar i{display:block;height:100%;background:var(--forest);border-radius:99px}
.rg-prog small{font-weight:800;font-size:.85rem;color:var(--muted)}
.rg-filters{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.rg-vgive{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:var(--forest);color:var(--cream);border-radius:20px;padding:20px 22px;margin-top:24px}
.rg-vgive .rg-vcard{background:var(--gold);color:var(--charcoal);width:120px}
.rg-vgive h3{color:var(--cream)!important;font-size:1.25rem}
.rg-vgive p{opacity:.88;font-size:.92rem;margin:.2rem 0 .7rem}
.rg-vgive .rg-chip{background:transparent;border-color:rgba(247,245,240,.45);color:var(--cream)}
.rg-vgive .rg-chip[aria-pressed=true]{background:var(--gold);border-color:var(--gold);color:var(--charcoal)}
.rg-vgive input[type=number]{max-width:110px;min-height:38px;padding:.4rem .7rem;background:rgba(255,255,255,.12);border-color:rgba(247,245,240,.45);color:var(--cream)}
.rg-vgive input::placeholder{color:rgba(247,245,240,.75)}
.rg-from{display:flex;flex-direction:column;gap:6px;margin-top:12px;font-weight:800;font-size:.85rem;max-width:380px}
.rg-from input{background:#fff!important}
@media (max-width:560px){.rg-vgive{grid-template-columns:1fr}}
.rg-need{font-size:.78rem;font-weight:800;color:var(--terra)}
.rg-card.gifted{opacity:.55;cursor:default}
.rg-card.gifted .rg-tick{display:none}
.rg-gtag{position:absolute;top:12px;right:12px;background:var(--oat);color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:.25rem .55rem;border-radius:999px}
.rg-deliver{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:34px}
.rg-deliver div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.rg-deliver b{display:block;margin-bottom:4px;color:var(--charcoal)}
.rg-deliver p{color:var(--muted);font-size:.9rem}
@media (max-width:640px){.rg-deliver{grid-template-columns:1fr}}

/* the running total bar */
.rg-tally{position:fixed;left:0;right:0;bottom:0;z-index:150;background:var(--charcoal);color:var(--cream);padding:12px 0 calc(12px + env(safe-area-inset-bottom,0px));box-shadow:0 -8px 24px rgba(0,0,0,.12)}
.rg-tally[hidden]{display:none}
.rg-tally .rg-wrap{display:flex;align-items:center;justify-content:space-between;gap:14px}
.rg-tally .nums{display:flex;gap:22px;align-items:baseline;flex-wrap:wrap}
.rg-tally .big{font-family:var(--serif);font-size:1.5rem;font-weight:600;color:var(--gold);font-variant-numeric:tabular-nums}
.rg-tally .lbl{font-size:.76rem;opacity:.75;font-weight:700;display:block}
.rg-tally .rg-btn{padding:.8rem 1.3rem}
@media (max-width:520px){.rg-tally .nums{gap:14px}.rg-tally .big{font-size:1.2rem}.rg-tally .rg-btn{padding:.75rem 1rem;font-size:.92rem}}
body.rg-has-tally{padding-bottom:84px}
body.rg-has-tally .pom-toast{bottom:104px}
@media (prefers-reduced-motion:reduce){.rg *{transition:none!important}}

/* v4.18.1 the Rewards launcher button sits above the running-total bar, not on top of it */
body.rg-has-tally .wll-launcher-button-container{bottom:96px!important}
