/* Personal Shop gifts: shared Tripelfy typography and controls, isolated layout. */
.shop-gift-wizard,.gift-login-gate{padding-top:36px;padding-bottom:64px;color:#182337}
.gift-wizard-hero{height:auto;position:static;display:grid;grid-template-columns:80px minmax(0,1fr);gap:22px;align-items:start;padding:32px;border:1px solid #e5def6;border-radius:24px;background:linear-gradient(115deg,#f7efff,#fff5e9 70%,#eaf8f5);margin-bottom:30px}
.gift-wizard-hero h1,.gift-login-gate h1{font-size:clamp(28px,3.3vw,42px);font-weight:800;line-height:1.12;letter-spacing:-.035em;margin:12px 0}
.gift-wizard-hero p{font-size:17px;line-height:1.6;margin:0;max-width:680px}
.gift-wizard-symbol,.gift-access-art{display:grid;place-items:center;width:80px;height:80px;border-radius:24px;background:#7140bf;color:white;font-size:48px;box-shadow:0 9px 24px #7442bd26}
.gift-wizard-shortcuts{grid-column:2;display:flex;gap:10px;flex-wrap:wrap}
.gift-wizard-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;margin:0 0 26px;padding:0;gap:10px}
.gift-wizard-progress li{display:flex;align-items:center;gap:10px;border-bottom:3px solid #e7eaf0;padding:0 0 13px;color:#637085;font-size:14px;font-weight:575}
.gift-wizard-progress li>span:first-child{display:grid;place-items:center;background:#edf0f5;border-radius:50%;width:30px;height:30px;flex-shrink:0;font-weight:800}
.gift-wizard-progress li[aria-current=step]{border-color:#7741c5;color:#5f2f9e}.gift-wizard-progress li[aria-current=step]>span:first-child{background:#7741c5;color:white}
.gift-step-card{max-width:860px;margin:auto;padding:32px;border:1px solid #dfe4ed;border-radius:24px;background:#fff;box-shadow:0 8px 30px #20305607}
.gift-step-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:26px}.gift-step-heading h2{font-size:26px;line-height:1.2;font-weight:800;margin:0}.gift-step-heading>span{color:#6b587c;font-weight:575;white-space:nowrap}
.shop-gift-wizard label{display:grid;gap:9px;margin:18px 0;font-size:16px;font-weight:575}.shop-gift-wizard input:not([type=checkbox]),.shop-gift-wizard select{width:100%;min-width:0;box-sizing:border-box;font:inherit;font-weight:425;min-height:56px;border:1px solid #bbc4d1;border-radius:12px;background:white;color:#182337;padding:14px 16px}.shop-gift-wizard input[readonly]{background:#f4f0fa;border-color:#cfc0e5}
.shop-gift-wizard .check{display:flex;align-items:flex-start;gap:12px;font-weight:425;line-height:1.5}.shop-gift-wizard .check input{margin-top:5px;width:18px;height:18px;flex-shrink:0;accent-color:#7542bd}
.gift-recipient-actions,.gift-wizard-actions{display:flex;gap:12px;flex-wrap:wrap}.gift-wizard-actions{justify-content:flex-end;padding-top:22px;border-top:1px solid #e6eaf0}.gift-wizard-actions .button:last-child{background:#7240bd;border-color:#7240bd;color:#fff}
.gift-recipient-grid,.gift-interest-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:22px 0}.gift-recipient-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.gift-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-height:108px;min-width:0;padding:16px 10px;background:#f8f5fd;border:1px solid #e0d7ee;border-radius:16px;color:#263247;font:inherit;font-weight:575;text-align:center;cursor:pointer;overflow-wrap:anywhere;transition:background .15s,border-color .15s}.gift-choice small{color:#656575;font-size:12px;font-weight:425}.gift-choice>span:not(.gift-avatar){font-size:28px;line-height:1.1;color:#8050c3}.gift-choice:nth-child(4n+2){background:#fff5e8;border-color:#f3ddbd}.gift-choice:nth-child(4n+3){background:#edf8f5;border-color:#cde7de}.gift-choice:nth-child(4n){background:#eef4ff;border-color:#d5e0f5}.gift-choice[aria-pressed=true]{outline:3px solid #7240bd;outline-offset:1px;background:#f1e7ff}.gift-choice:hover{border-color:#7240bd}
.gift-avatar{display:grid;place-items:center;min-width:46px;width:46px;height:46px;border-radius:15px;background:#7542bd;color:white;font-size:21px;font-weight:800}
.gift-existing-people,.gift-personal-details{margin:24px 0;border:1px solid #e0e5ed;border-radius:14px;padding:18px}.shop-gift-wizard summary{font-weight:575;cursor:pointer;line-height:1.5}.gift-personal-details fieldset{margin-top:20px;min-width:0}.gift-personal-details .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.gift-shared-note{background:#edf7f4;border:1px solid #c8e5db;border-radius:16px;padding:20px;margin:20px 0}.gift-shared-note p{font-weight:425;line-height:1.5;overflow-wrap:anywhere}.gift-shared-note .button{background:white}
.gift-budget-panel{display:grid;grid-template-columns:2fr 1fr;gap:20px}.gift-budget-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.gift-budget-choices .gift-choice{min-height:70px}.gift-delivery-art{display:grid;place-items:center;width:100px;height:75px;font-size:36px;border-radius:20px;color:#356f9c;background:#edf5ff}
.gift-review-person{display:flex;align-items:center;gap:16px;margin:8px 0 24px}.gift-review-person h3,.gift-review-person p{margin:4px 0}.gift-review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.gift-review-grid>div{background:#f5f6fa;padding:18px;border-radius:14px;min-width:0}.gift-review-grid dt{font-size:13px;color:#667085;margin-bottom:8px}.gift-review-grid dd{margin:0;font-size:16px;font-weight:575;overflow-wrap:anywhere}
.gift-privacy-note{max-width:850px;margin:22px auto;color:#657084;line-height:1.6;font-size:14px}.gift-wizard-notice:not(:empty){padding:14px;background:#fff5e6;border-radius:12px;color:#734c10}.gift-results-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:24px 0}.gift-result-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gift-result-grid .product{min-width:0}.gift-empty{grid-column:1/-1;background:#f5f1fb;border:1px solid #e0d7ed;border-radius:20px;padding:36px;text-align:center}.gift-empty>span{font-size:48px;color:#8050be}
.gift-login-gate{max-width:900px;text-align:center;margin:36px auto;padding:42px 24px;border:1px solid #e2d8f0;border-radius:26px;background:linear-gradient(135deg,#f7f0ff,#fff8ef)}.gift-access-art{margin:0 auto 24px}.gift-login-gate>p{max-width:650px;margin:18px auto;line-height:1.7}.gift-access-benefits{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin:24px 0}.gift-access-benefits span{background:white;padding:12px;border-radius:12px;font-weight:575}.gift-login-gate>.button{margin:6px}.shop-gift-wizard :focus-visible,.gift-login-gate :focus-visible{outline:3px solid #9a6ad7;outline-offset:3px}.shop-gift-wizard [disabled]{opacity:.6;cursor:wait}
@media(max-width:700px){.shop-gift-wizard{padding-top:20px}.gift-wizard-hero{grid-template-columns:52px minmax(0,1fr);padding:22px 18px;gap:14px;border-radius:20px}.gift-wizard-symbol{width:52px;height:52px;border-radius:16px;font-size:32px}.gift-wizard-hero p{font-size:15px}.gift-wizard-hero .eyebrow{font-size:10px;letter-spacing:.07em}.gift-wizard-shortcuts{grid-column:1/-1}.gift-wizard-progress{gap:5px}.gift-wizard-progress li{flex-direction:column;text-align:center;font-size:10px;line-height:1.3;gap:7px}.gift-wizard-progress li>span:first-child{width:28px;height:28px}.gift-step-card{padding:22px 18px;border-radius:20px}.gift-step-heading h2{font-size:23px}.gift-interest-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-recipient-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-choice{min-height:94px}.gift-budget-panel{gap:12px;grid-template-columns:1.5fr 1fr}.gift-budget-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.gift-review-grid,.gift-personal-details .form-grid{grid-template-columns:1fr}.gift-recipient-actions>.button,.gift-wizard-actions>.button{flex:1 1 140px;justify-content:center}.gift-results-heading{align-items:flex-start;flex-direction:column}.gift-result-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gift-result-grid .product-body{padding:12px}.gift-result-grid .product h3{font-size:16px}.gift-login-gate{margin:22px 16px}.gift-access-benefits{gap:8px;font-size:13px}}
@media(max-width:400px){.gift-result-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.gift-choice{transition:none}}
