@font-face{font-family:Maven;src:url('/assets/maven-pro.ttf')} .gift-page{margin:0;background:#fff9ef;color:#34224b;font:17px/1.45 Maven,system-ui,sans-serif}.gift-page *,.gift-home{box-sizing:border-box}.gift-page header,.gift-page main{width:min(92%,880px);margin:auto}.gift-page header{padding:16px 0}.gift-page main{padding-bottom:36px}.gift-intro,.gift-home{display:flex;align-items:center;justify-content:space-between;gap:24px;border-radius:20px;background:#4b217d;color:white;padding:22px 28px}.gift-intro img{width:32%;aspect-ratio:1.6;object-fit:cover;border-radius:12px}.gift-intro h1,.gift-home h2{color:white;margin:0;font-size:clamp(26px,4vw,42px);line-height:1.1}.gift-intro p,.gift-home p{margin:8px 0 0;color:white}.gift-home{max-width:1160px;margin:24px auto}.gift-home a,.gift-page button{display:inline-block;background:#ffdb72;color:#321648;padding:12px 20px;border:0;border-radius:24px;font:700 17px Maven,system-ui;cursor:pointer}.gift-page fieldset{margin:24px 0;padding:16px;border:1px solid #ddd0e5;border-radius:14px;background:white}.gift-page legend{font-size:22px;font-weight:700}.gift-page label{display:block;font-weight:600}.gift-page input:not([type=radio]),.gift-page select{margin:4px 0 12px;width:100%;border:1px solid #a991b7;border-radius:8px;color:inherit;background:white;padding:10px;font:inherit}.gift-page .gift-choice{display:flex;align-items:center;gap:10px;border-bottom:1px solid #e7dfec;padding:10px 4px;cursor:pointer}.gift-choice input{accent-color:#632a91}.gift-choice span{flex:1}.gift-choice small{display:block;font-weight:400}.gift-choice b{font-size:21px}.gift-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gift-page button{background:#542780;color:white}.gift-page button:disabled{opacity:.55}.gift-page fieldset p{font-size:15px;margin:0 0 14px}.gift-page output{display:block;font-weight:700;overflow-wrap:anywhere}.gift-page a:focus-visible,.gift-home a:focus-visible{outline:3px solid #ed9b25;outline-offset:2px}@media(max-width:620px){.gift-intro{padding:16px;gap:12px}.gift-intro img{width:25%;aspect-ratio:.7}.gift-home{margin:16px;align-items:flex-start;flex-direction:column;gap:12px}.gift-page button{width:100%}}

.gift-shop{background:#fffbf4;color:#362345;font-size:16px}
.gift-shop header,.gift-shop main{width:min(calc(100% - 32px),620px)}
.gift-shop header{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e7dbce;color:#655269;font-size:14px;font-weight:650}
.gift-shop header img{display:block;width:76px;height:44px;object-fit:contain}
.gift-shop h1{margin:22px 0 3px;line-height:1.02;font-size:clamp(33px,6.2vw,48px);letter-spacing:-.045em;color:#422052}
.gift-deck{margin:6px 0 18px;color:#68576c;line-height:1.35}
.gift-shop fieldset{border:0;padding:0;margin:0 0 14px;background:none;min-width:0}
.gift-shop legend{font-size:19px;padding:0;margin:0 0 9px;line-height:1.25}
.gift-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gift-shop .gift-tile{position:relative;display:grid;align-content:start;border:2px solid transparent;border-radius:14px;padding:11px 13px;background:var(--fill);cursor:pointer}
.tone-one{--fill:#f2e6fa}.tone-two{--fill:#dff1ec}.tone-three{--fill:#ffe5d8}.tone-month{--fill:#f9e9ae}
.gift-tile:has(:checked){border-color:#592579}.gift-tile:focus-within{outline:2px solid #753ea4;outline-offset:2px}
.gift-tile input{position:absolute;top:10px;right:11px;margin:0;width:16px;height:16px;accent-color:#632781}
.tile-category{font-size:13px;line-height:1.4;font-weight:600;padding-right:18px}
.gift-tile strong{font-size:clamp(15px,3.9vw,19px);line-height:1.25;margin:4px 0 8px}
.tile-foot{border-top:1px dashed #8e768e;display:flex;align-items:center;justify-content:space-between;padding-top:4px}
.tile-foot b{font-size:21px}.tile-foot small{font-weight:500}
.gift-shop #gift-next,.gift-shop #gift-pay{width:100%;padding:13px 16px;background:#51256f;text-align:center}
.gift-shop [hidden]{display:none!important}.gift-summary{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f0e8f5;border-radius:10px;padding:7px 12px;margin:12px 0 18px;font-weight:700}
.gift-summary button{background:transparent;color:#51256f;font-size:14px;width:auto;padding:6px;text-decoration:underline;white-space:nowrap}
.delivery-options{display:flex;gap:8px;margin:0 0 10px}.delivery-options label{flex:1;border-radius:8px;border:1px solid #cbbacf;padding:8px 5px;text-align:center;cursor:pointer}.delivery-options label:has(:checked){border-color:#613580;background:#f4eaf9}.delivery-options input{accent-color:#632781}
.gift-shop label small{font-weight:400}
.gift-shop textarea{margin:4px 0 0;width:100%;border:1px solid #a991b7;border-radius:8px;background:white;color:inherit;padding:10px;font:inherit;resize:vertical}
.gift-shop fieldset p{color:#68576c;line-height:1.35}.gift-preview{margin:4px 0 15px}.gift-preview summary{padding:8px 0;cursor:pointer;color:#572579;font-weight:700}.gift-preview table{margin-top:5px}
@media(max-width:400px){.gift-shop .gift-tile{padding:9px}.gift-shop .gift-pair{gap:8px}.gift-tile input{right:8px}}
