/* Distinct, centered destinations instead of one continuous scrolling strip. */
.nav{height:auto;min-height:108px;padding:20px 0;gap:24px;flex-wrap:wrap}
.brand{flex-shrink:0;line-height:0}
.brand img.brand-logo{display:block;width:252px;height:60px;object-fit:contain}
.navlinks{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}
.navlinks>a:not(.btn),.navlinks>.textbtn{display:inline-flex;justify-content:center;align-items:center;min-height:44px;padding:12px 16px;border:1px solid #ead8d8;border-radius:14px;background:#fffdf9;color:#713448;font:12px/1.4 Arial,sans-serif;text-decoration:none;transition:background .2s,border-color .2s}
.navlinks>a:not(.btn):hover,.navlinks>.textbtn:hover{background:#f9e9ed;border-color:#c88b9b}
.navlinks .btn{min-height:46px;padding:12px 20px;font:15px/1.4 Arial,sans-serif;border-radius:14px}
.navlinks .language-picker{margin:0}
.navlinks .language-picker select{border-radius:14px;min-height:44px}
.gift-chapters{margin:4px auto 48px;padding:26px 18px 22px;max-width:680px;border:1px solid #ffe1bd40;border-radius:26px;background:#ffffff08;text-align:center}
.gift-chapters .chapter-heading{margin:0 0 20px;color:var(--gift-ink);font:11px/1.6 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;opacity:.85}
.gift-chapters>div{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;overflow:visible}
.gift-chapters a{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:11px;flex:0 1 calc(25% - 12px);min-width:112px;min-height:92px;padding:16px 10px;border:1px solid #ffe2c34d;border-radius:17px;background:#ffffff0c;white-space:normal;text-align:center;font:12px/1.35 Arial,sans-serif;color:var(--gift-ink);text-decoration:none;transition:background .25s,border-color .25s,transform .25s}
.gift-chapters a svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
.gift-chapters a:hover{background:#ffffff1c;border-color:#ffe2c38a;transform:translateY(-2px)}
.gift-chapters a[aria-current]{background:#fff1df;color:#713448;border-color:#fff1df;box-shadow:0 5px 18px #28121c16}
.gift-chapters a:focus-visible{outline:3px solid #f2cf9d;outline-offset:4px}
.steps{gap:10px}
.steps button{border:1px solid #e7d6d8;background:#fffcf8;border-radius:14px;min-height:48px;margin-bottom:8px;padding:11px 12px}
.steps button.active{background:#8c354e;color:#fff6e9;border-color:#8c354e;border-radius:14px}
.steps button.active .num{background:#fff4e4;color:#8c354e}
@media(max-width:1100px){.nav{justify-content:center}.navlinks{width:100%}.steps{display:flex;justify-content:center;flex-wrap:wrap;overflow:visible}.steps button{flex:0 1 calc(25% - 10px);margin:0;white-space:normal;text-align:left;display:flex;align-items:center;gap:8px}.steps .num{flex-shrink:0}}
@media(max-width:700px){.nav{padding:16px 0;gap:16px}.brand img.brand-logo{width:238px;height:57px}.navlinks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.navlinks>.language-picker{grid-column:1/-1;justify-self:center;margin:0}.navlinks>a:not(.btn),.navlinks>.textbtn{width:100%;padding:11px 6px;font-size:12px}.navlinks .btn{font-size:13px!important;padding:11px 6px}.gift-chapters{padding:22px 12px 16px;margin:0 auto 40px;border-radius:22px}.gift-chapters .chapter-heading{font-size:10px;margin-bottom:17px}.gift-chapters>div{gap:9px}.gift-chapters a{flex:0 1 calc(33.333% - 6px);min-width:0;min-height:87px;border-radius:14px;font-size:11px;padding:13px 5px;gap:10px}.gift-chapters a svg{width:22px;height:22px}.steps{padding:4px 0;gap:8px}.steps button{flex:0 1 calc(50% - 4px);font-size:11px;padding:10px;min-height:48px}}
@media(prefers-reduced-motion:reduce){.gift-chapters a,.navlinks a,.navlinks button{transition:none}.gift-chapters a:hover{transform:none}}

@media(max-width:360px){.hero-art{min-width:0;max-width:100%}.hero-art .keepsake{width:220px;max-width:100%;margin-left:auto;margin-right:auto}.gift-page .counter b{font-size:21px;font-variant-numeric:tabular-nums}.gift-page .counter>div{padding:14px 5px}}
@media(max-width:700px){.hero-art{min-width:0;max-width:100%;overflow:clip}.hero-art .keepsake{width:min(270px,85%);min-width:0}.hero-art .keepsake:before{left:calc(50% - 45px)}}
