/* The final invitation echoes the warm editorial typography and cover accent. */
.closing-purchase{position:relative;overflow:hidden;background:#eeeae1;border-top:1px solid #dedbd2;padding:88px 0 92px}
.closing-purchase:after{content:"";position:absolute;width:330px;height:390px;right:28%;bottom:-130px;background:url('/assets/ampersand.svg') center/contain no-repeat;opacity:.07;pointer-events:none}
.closing-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:60px;align-items:center;position:relative;z-index:1}
.closing-copy .eyebrow{margin-bottom:22px}.closing-copy h2{font-size:clamp(2.4rem,4vw,3.5rem);line-height:1.13;letter-spacing:-.02em}.closing-copy h2 span{color:var(--teal-dark)}
.closing-copy>p:last-child{color:var(--muted);margin-top:20px;font-size:1.02rem}
.closing-action{justify-self:end;min-width:255px}.closing-action .button{width:100%;gap:38px;justify-content:space-between;min-height:58px;padding-inline:24px}
.closing-formats{font:400 .94rem var(--display);letter-spacing:.025em;margin-bottom:16px;color:var(--ink)}
.closing-store{font-size:.78rem;color:var(--muted);margin-top:14px}.closing-store span{white-space:nowrap}
.edition-option[hidden]{display:none}.edition-option[hidden]+.edition-option{margin-top:0}.edition-option:not([hidden])~.edition-option:not([hidden]){margin-top:12px}
.purchase-dock{display:none}
@media(max-width:760px){
 .closing-purchase{padding:58px 0 60px}.closing-grid{grid-template-columns:1fr;gap:30px}.closing-copy h2{font-size:2.6rem}.closing-copy>p:last-child{font-size:.97rem;max-width:290px}.closing-action{justify-self:stretch;min-width:0}.closing-purchase:after{right:-45px;bottom:25px;width:230px;height:270px;opacity:.05}.closing-formats{font-size:.87rem}.closing-action .button{min-height:54px}
 .purchase-dock{display:flex;align-items:center;justify-content:space-between;gap:16px;position:fixed;z-index:40;bottom:0;left:0;right:0;padding:12px max(22px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));background:#fcfbf7f5;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #d7dcd9;box-shadow:0 -5px 24px #11283f0a;transform:translateY(110%);visibility:hidden;transition:transform .3s ease,visibility .3s}
 .purchase-dock.is-visible{transform:translateY(0);visibility:visible}.purchase-dock strong{display:block;font:500 1.15rem var(--display)}.purchase-dock>div>span{display:block;color:var(--muted);font-size:.72rem;margin-top:3px}.purchase-dock .button{min-height:46px;padding:10px 20px;gap:20px;font-size:1rem}.dialog-open .purchase-dock{visibility:hidden;transform:translateY(110%)}
}
@media(prefers-reduced-motion:reduce){.purchase-dock{transition:none}}

/* On phones, choices scroll while the purchase action stays inside the viewport. */
@media(max-width:760px){
 .purchase-dialog[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 24px - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:hidden;margin:auto}
 .purchase-dialog .dialog-head{flex:none;padding:16px 18px}
 .purchase-dialog .purchase-body{display:flex;flex-direction:column;min-height:0;padding:0;overflow:hidden}
 .purchase-options-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:18px;scroll-padding:18px}
 .purchase-dialog .purchase-action{flex:none;padding:16px 18px;background:#faf9f5;border-top:1px solid #d7dcd9}
 .purchase-action .amazon-purchase{min-height:48px;font-size:1.06rem;line-height:1.3;white-space:normal}
 .purchase-action #purchase-note{font-size:.75rem;line-height:1.45;margin-top:10px}
 .purchase-options-scroll .marketplace-note{font-size:.76rem}
}
@media(max-width:760px) and (max-height:600px){
 .purchase-dialog .dialog-head{padding:10px 16px}.purchase-dialog .dialog-head .eyebrow{display:none}
 .purchase-dialog .purchase-action{padding:12px 16px}.purchase-action #purchase-note{margin-top:7px;font-size:.7rem}
}

/* A subdued store preference, after the purchase action. */
.purchase-action .store-choice{justify-content:center;gap:3px 9px;margin:10px 0 0;padding:0;border:0;font-size:.76rem;flex-wrap:nowrap}
.purchase-action .store-choice>label{white-space:nowrap}
.store-picker{position:relative;min-width:0}
.store-picker-trigger{display:flex;align-items:center;gap:8px;min-height:40px;padding:7px 3px;background:none;border:0;color:var(--ink);font:inherit;cursor:pointer}
.store-picker-trigger>span:not(.store-picker-chevron){white-space:nowrap}.store-picker-chevron{color:var(--muted);margin-left:3px;font-size:1rem}
.store-flag{display:inline-block;width:20px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px #11283f18;flex:none}
.store-picker-panel{position:fixed;inset:auto;margin:0;padding:6px;border:1px solid #d4d9d6;border-radius:6px;background:#fcfbf7;color:var(--ink);box-shadow:0 12px 36px #10284229;overflow:auto;overscroll-behavior:contain}
.store-picker-option{display:flex;align-items:center;gap:11px;width:100%;min-height:44px;padding:9px 12px;border:0;border-radius:3px;background:none;text-align:left;font:400 .86rem var(--body);color:var(--ink)}
.store-picker-option:hover,.store-picker-option:focus-visible{background:#eaf0eb;outline-offset:-2px}.store-picker-option[aria-pressed=true]{background:#e9f2ef;color:var(--teal-dark)}
.store-check{margin-left:auto;visibility:hidden}.store-picker-option[aria-pressed=true] .store-check{visibility:visible}
.store-choice select[hidden],.footer-store select[hidden]{display:none}
@media(max-width:760px){.purchase-action .store-choice{margin-top:6px;font-size:.74rem}.purchase-action #purchase-note{font-size:.7rem;line-height:1.35;margin-top:9px}.store-picker-trigger{min-height:40px}}
@media(max-width:760px) and (max-height:600px){.purchase-action .store-choice{margin-top:2px}.purchase-action #purchase-note{font-size:.68rem;margin-top:6px}}

.purchase-action .format-availability-note{font-size:.7rem;color:var(--muted);text-align:center;margin:12px 0 0;line-height:1.4}
.purchase-action .format-availability-note+.store-choice{margin-top:0}
