.gift-categories{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 44px}
.gift-categories a{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:10px 18px;border:1px solid var(--brand-olive);border-radius:24px;text-decoration:none;color:var(--ink);background:var(--ivory)}
.gift-categories span{font-size:12px}.gift-category{scroll-margin-top:105px;margin-bottom:64px}.gift-category h2{font-size:clamp(28px,3vw,40px);color:var(--brand-olive)}.gift-category>p{margin-top:12px;max-width:65ch}
.gift-card{display:flex;flex-direction:column;height:100%;background:var(--creme,#fff6ea)}
.gift-card .gift-art,.gift-card:nth-child(even) .gift-art{width:100%;height:150px;flex-shrink:0;background:linear-gradient(140deg,#F8F5EC,#EADFCB);display:grid;place-items:center}
.gift-emoji,#gift-symbol{font-family:'Apple Color Emoji','Segoe UI Emoji','Noto Color Emoji',sans-serif;filter:url('#gift-palette');font-style:normal;font-weight:400;line-height:1.2}
.gift-emoji{font-size:72px;display:block}#gift-symbol{font-size:56px}
.gift-card-content{display:flex;flex-direction:column;flex:1;width:100%}.gift-name{min-height:0;font-size:26px;line-height:1.2}.gift-card .gift-description{font-size:14px;line-height:1.6;margin:14px 0 20px}.gift-card .gift-price{margin-top:auto;font-variant-numeric:tabular-nums}.gift-card .gift-action{margin-top:6px}
@media(max-width:700px){.gift-card .gift-art{height:120px}.gift-emoji{font-size:60px}.gift-name{font-size:23px}.gift-category{margin-bottom:48px}}
@media(max-width:430px){.gift-card .gift-art{height:140px}.gift-emoji{font-size:68px}}
@media(forced-colors:active){.gift-emoji,#gift-symbol{filter:none}}
/* Paper colors match the guestbook; emoji shadows preserve the palette filter. */
.gift-card{background:var(--gift-paper,#FFF6EA)}
.gift-card .gift-art,.gift-card:nth-child(even) .gift-art{background:linear-gradient(150deg,rgba(255,255,255,.18),rgba(255,255,255,0)),var(--gift-paper,#FFF6EA)}
.gift-emoji,#gift-symbol{filter:var(--gift-icon-filter,url('#gift-palette')) drop-shadow(0 2px 1px rgba(48,56,32,.22)) drop-shadow(0 7px 5px rgba(48,56,32,.14)) drop-shadow(0 13px 12px rgba(48,56,32,.10))}
@media(forced-colors:active){.gift-emoji,#gift-symbol{filter:none}.gift-card{background:Canvas}}

/* Optical alignment with the lowercase height of the opening title. */
.gifts-page{--gift-title-size:clamp(3rem,6vw,5rem)}
.gifts-page>.back-home{margin-bottom:28px}
.gifts-page-heading{align-items:start}
.gifts-page-heading h1{font-size:var(--gift-title-size)}
.gifts-page-heading>div:last-child{padding-top:calc(var(--gift-title-size)*.32)}
@media(max-width:700px){.gifts-page-heading>div:last-child{padding-top:0}.gifts-page>.back-home{margin-bottom:24px}}

/* Gift palette restricted to olive and warm off-white. */
.gift-card{--gift-paper:#F8F5EC;background:var(--gift-paper);border-color:#73785A}
.gift-card .gift-art,.gift-card:nth-child(even) .gift-art{background:#F8F5EC}
.gift-flip-back{background:#F8F5EC;border-color:#73785A}
.gifts-page{--line:#73785A;--surface:#F8F5EC;--creme:#F8F5EC;--champagne:#73785A}
#gift-detail,#pix-dialog{--line:#73785A;--surface:#F8F5EC;--bg:#F8F5EC;--champagne:#73785A}

/* Compact gift reverse: emblem and close action share the top row. */
#gift-detail .dialog-header{align-items:center}
#gift-detail .dialog-header #gift-symbol{margin:0;font-size:48px;line-height:1.2}
#gift-detail .gift-detail-body{padding-top:12px}
#gift-detail .gift-detail-body textarea{margin-top:0}
#gift-detail .copy-status:empty{min-height:0;margin:0}

/* Open-amount contribution: copy on the left, QR space on the right. */
.gift-open-pix{margin:0 0 72px;scroll-margin-top:105px;padding:40px;border:1px solid var(--brand-olive);border-radius:16px;background:var(--ivory)}
.gift-open-pix .gift-inline-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:56px;align-items:center}
.gift-open-pix .pix-free-copy>p{max-width:56ch;margin:16px 0}
.gift-open-pix label{display:block;font-size:13px;margin-bottom:8px}
.gift-open-pix textarea{display:block;width:100%;padding:12px;resize:none;border:1px solid var(--brand-olive);border-radius:6px;background:var(--ivory);color:var(--ink)}
.gift-open-pix .button{margin-top:14px}.gift-open-pix .button:disabled{opacity:.6;cursor:not-allowed;transform:none}
.gift-open-pix .pix-free-preview{font-size:12px}
.pix-qr-placeholder{aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;border:1px dashed var(--brand-olive);border-radius:12px;text-align:center;padding:24px;color:var(--ink)}
.pix-qr-placeholder p{font-family:var(--display);font-size:30px}.pix-qr-placeholder span{font-size:13px;max-width:20ch}
@media(max-width:700px){.gift-open-pix{padding:24px;margin-bottom:48px}.gift-open-pix .gift-inline-content{grid-template-columns:1fr;gap:28px}.pix-qr-placeholder{width:min(260px,100%);justify-self:center}}

/* Full-width Pix section, with the same inner alignment as the gift catalogue. */
.gifts-page.section-wrap{width:100%;display:grid;grid-template-columns:minmax(48px,1fr) minmax(0,1160px) minmax(48px,1fr)}
.gifts-page.section-wrap> *{grid-column:2;min-width:0}
.gifts-page.section-wrap>.back-home{justify-self:start}
.gifts-page.section-wrap>.gift-open-pix{grid-column:1 / -1;margin:0 0 72px;padding:72px 0;border-inline:0;border-block:1px solid var(--brand-olive);border-radius:0}
.gift-open-pix .gift-inline-content{width:min(1160px,calc(100% - 96px));margin-inline:auto}
@media(max-width:700px){.gifts-page.section-wrap{grid-template-columns:20px minmax(0,1fr) 20px}.gifts-page.section-wrap>.gift-open-pix{padding:48px 0;margin-bottom:48px}.gift-open-pix .gift-inline-content{width:calc(100% - 40px)}}

/* Distinct olive-tinted band follows honeymoon; dark footer closes the page. */
.gifts-page.section-wrap>.gift-open-pix{background:#E7E8DD;margin-bottom:0}
.gifts-page.section-wrap{padding-bottom:0}

/* Full-width catalogue band; cards remain white on the lime section. */
.gifts-page.section-wrap>#lista-presentes{grid-column:1 / -1;background:var(--brand-olive,#73785A);border-block:1px solid var(--brand-olive);padding:64px 0;margin:32px 0 0}
#lista-presentes>.gift-grid{width:min(1160px,calc(100% - 96px));margin:0 auto}
.gift-card{--gift-paper:#FFFFFF;--gift-icon-filter:url("#gift-palette");background:var(--gift-paper)}
.gift-card .gift-art,.gift-card:nth-child(even) .gift-art{background:var(--gift-paper)}
/* The catalogue bottom border is the shared divider with the Pix section. */
.gifts-page.section-wrap>#lista-presentes+.gift-open-pix{border-top:0}
@media(max-width:700px){.gifts-page.section-wrap>#lista-presentes{padding:40px 0;margin-top:24px}#lista-presentes>.gift-grid{width:calc(100% - 40px)}}
@media(forced-colors:active){.gift-card{background:Canvas}.gift-card .gift-art{background:Canvas}}

.pix-qr{display:block;width:min(260px,100%);height:auto;background:#fff;justify-self:center;image-rendering:pixelated}.gift-qr{width:180px;margin:16px auto}.pix-recipient{font-size:13px;line-height:1.5}.pix-inline-key{overflow-wrap:anywhere}

/* Color treatment preserves white modules and the QR quiet zone. */
.pix-qr-frame{width:284px;max-width:100%;padding:12px;background:#FFFFFF;border:1px solid var(--line);border-radius:18px;justify-self:center;align-self:center}
.pix-qr-frame .pix-qr{width:100%;height:auto;margin:0;filter:url('#pix-olive')}
.gift-qr-frame{width:204px;margin:16px auto}
@media(forced-colors:active){.pix-qr-frame .pix-qr{filter:none}}
