
#agenda .section-heading{margin-bottom:0}#agenda .btn{margin-top:16px;text-align:center;white-space:normal}
section[id]{scroll-margin-top:90px}
.moonlight-footer-content{display:flex;flex-direction:column;align-items:center;gap:12px;font-size:1rem;line-height:1.6}
.moonlight-footer-content>strong{font-weight:700}.footer-heart{color:var(--accent)}
.moonlight-footer-content>a:hover{color:var(--accent)}.moonlight-footer-content>a:focus-visible{outline:2px solid var(--accent);outline-offset:5px;border-radius:4px}
.gifts-section{background:radial-gradient(ellipse at 50% 0,rgba(182,201,255,.09),transparent 65%),var(--bg)}
.gifts-container{max-width:1000px}.gifts-section .section-heading{max-width:850px;margin-bottom:58px}
.gifts-section h2{color:var(--text)}.gifts-section .section-heading p{line-height:1.9}
.gifts-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.gift-tile{min-width:0;min-height:250px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;padding:30px 20px;border:1px solid rgba(182,201,255,.5);border-radius:22px;background:var(--card);color:var(--text);font-family:var(--body-font);cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s}
.gift-tile .gift-icon{font-size:44px;line-height:1.15;color:#c9d7ff}.gift-tile strong{font-size:1.1rem;line-height:1.4;text-align:center}.gift-tile>span:last-child{font-size:.72rem;letter-spacing:.2em;color:#b6c9ff}
.gift-tile:hover,.gift-tile:focus-visible{transform:translateY(-5px);border-color:var(--accent);box-shadow:0 15px 40px #b6c9ff29}
.gift-tile:focus-visible,.gift-modal button:focus-visible{outline:3px solid #b6c9ff;outline-offset:4px}
body.gift-modal-open{overflow:hidden}
.gift-modal-backdrop[hidden]{display:none}.gift-modal-backdrop{position:fixed;inset:0;z-index:100010;display:flex;align-items:center;justify-content:center;background:rgba(5,11,23,.82);backdrop-filter:blur(8px);padding:20px}
.gift-modal{position:relative;width:min(100%,510px);max-height:calc(100dvh - 40px);overflow-y:auto;border-radius:24px;border:1px solid var(--line);padding:42px 28px 30px;background:var(--card);color:var(--text);box-shadow:0 25px 85px #0008;text-align:center}
.gift-modal-close{position:absolute;top:9px;right:11px;width:44px;height:44px;border:0;background:transparent;color:var(--text);font-size:30px;cursor:pointer}
.gift-modal-icon{font-size:45px;color:#c9d7ff}.gift-modal h2{font-family:var(--display-font);font-size:2.5rem;line-height:1.15;margin:12px 0}.gift-modal p{line-height:1.8;margin:16px 0}
.gift-modal-divider{height:1px;background:var(--line);margin:25px 0}.gift-modal h3{font-size:.75rem;letter-spacing:.1em;color:#b6c9ff}
.gift-data{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:20px}.gift-data>span{font-size:.72rem;letter-spacing:.12em}.gift-data strong{overflow-wrap:anywhere}.gift-copy{border:1px solid var(--accent);padding:8px 16px;border-radius:30px;background:var(--accent);color:var(--accent-text);font-size:.75rem;font-weight:700;cursor:pointer}.gift-copy-status{min-height:22px;margin-top:18px;font-size:.78rem;color:#b6c9ff}
@media(max-width:650px){.gifts-grid{grid-template-columns:1fr;max-width:360px;margin:auto}.gift-tile{min-height:200px}.gifts-section .section-heading{margin-bottom:35px}.gift-modal{padding:40px 20px 25px}}
@media(max-width:560px){#agenda .btn{padding:14px 16px;font-size:.85rem}.footer{padding-bottom:144px}}
@media(prefers-reduced-motion:reduce){.gift-tile{transition:none}}

@media(max-width:560px){.section-heading h2{font-size:clamp(1.75rem,8vw,2.3rem);overflow-wrap:break-word}.quote{font-size:1.75rem}.gift-modal h2{font-size:1.8rem}.gift-modal h3{line-height:1.7}.gifts-section .section-heading p{line-height:1.8}}
