/* Build 10: payment confirmation — the anniversary site's confirmation card, kept and polished. */
.sba-confirm-body main{background:#f7f1ed}
.sba-confirm-page{display:flex;justify-content:center;padding:44px 20px 64px;box-sizing:border-box;color:#2e172d}
.sba-confirm-layout{width:min(1080px,100%);display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);background:#fff;border:1px solid #eadfda;border-radius:18px;overflow:hidden;box-shadow:0 20px 55px rgba(46,1,0,.08)}
.sba-confirm-layout.no-image{grid-template-columns:1fr;max-width:760px}
.sba-confirm-message{min-width:0;padding:58px 52px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}
.sba-confirm-logo{display:block;max-width:230px;max-height:82px;object-fit:contain;margin:0 auto 20px;border-radius:10px}
.sba-confirm-brand{font-family:"Playfair Display",Georgia,serif;letter-spacing:.08em;font-size:20px;margin-bottom:24px}
.sba-confirm-brand small{display:block;font-family:Poppins,Arial,sans-serif;font-size:8px;letter-spacing:.35em;margin-top:5px}
.sba-confirm-check{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#72a66f;color:#fff;font-size:31px;line-height:1;margin:4px auto 20px;animation:sbaPop .45s cubic-bezier(.2,1.4,.4,1) both}
.sba-confirm-check.is-wait{background:none;border:3px solid #eadfe8;border-top-color:#7B0674;animation:sbaSpin 1s linear infinite}
@keyframes sbaPop{from{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes sbaSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.sba-confirm-check{animation:none}.sba-confirm-check.is-wait{animation-duration:3s}}
.sba-confirm-message h1{font-family:"Playfair Display",Georgia,serif;font-weight:500;font-size:clamp(31px,4vw,48px);line-height:1.08;margin:0 0 10px;color:#2e172d}
.sba-confirm-welcome{font-family:"Playfair Display",Georgia,serif;font-size:23px;margin:0 0 24px}
.sba-confirm-copy{font-size:14px;line-height:1.8;color:#665564;margin:0 0 28px}
.sba-confirm-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
.sba-confirm-btn{min-height:48px;padding:0 22px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:9px;font:600 14px/1 Poppins,sans-serif;text-decoration:none;box-sizing:border-box;cursor:pointer}
.sba-confirm-btn.is-outline{border:1px solid #cbb7c9;color:#6f146e;background:#fff}
.sba-confirm-btn.is-outline:hover{border-color:#7B0674;background:#fbf5fa}
.sba-confirm-btn.is-wa{border:1px solid #42ad67;color:#fff;background:#42ad67}
.sba-confirm-btn.is-wa:hover{background:#379a59}
.sba-confirm-btn svg{width:20px;height:20px;flex:0 0 20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sba-confirm-btn.is-wa svg path+path{fill:#fff;stroke:none}
.sba-confirm-btn:focus-visible,.sba-confirm-details summary:focus-visible,.sba-cal-list a:focus-visible,.sba-cal-close:focus-visible{outline:2px solid #7B0674;outline-offset:3px}
.sba-confirm-mini{display:flex;gap:8px 20px;flex-wrap:wrap;justify-content:center;margin-top:28px;padding-top:18px;border-top:1px solid #eee2eb;width:100%;font-size:12px;color:#756575}
.sba-confirm-mini strong{color:#2e172d}
.sba-confirm-details{width:100%;margin-top:18px;text-align:left}
.sba-confirm-details summary{cursor:pointer;text-align:center;color:#7B0674;font-weight:600;font-size:13px;list-style:none}
.sba-confirm-details summary::-webkit-details-marker{display:none}
.sba-confirm-details summary::after{content:" ⌄"}
.sba-confirm-details[open] summary::after{content:" ⌃"}
.sba-confirm-details>div{max-width:560px;margin:14px auto 0}
.sba-confirm-line{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #f1e8ef;font-size:13px}
.sba-confirm-line.is-discount b{color:#1f7a4d}
.sba-confirm-line.is-total{border-bottom:0;font-size:15px}
.sba-confirm-line.is-total b{color:#7B0674}
.sba-confirm-details h3{font:500 17px "Playfair Display",Georgia,serif;margin:18px 0 6px}
.sba-confirm-appt{display:grid;gap:2px;padding:9px 0;border-bottom:1px solid #f1e8ef;font-size:13px}
.sba-confirm-appt span,.sba-confirm-appt small{color:#756575}
.sba-confirm-note{font-size:13px;color:#665564;margin:12px 0 0}
.sba-confirm-private{font-size:11px;color:#8b7c88;margin:14px 0 0}
.sba-confirm-art{position:relative;overflow:hidden;min-width:0;background:#f4dcd6;display:flex}
.sba-confirm-art img{display:block;width:100%;height:100%;min-height:500px;object-fit:cover}
.sba-confirm-art-copy{position:absolute;z-index:2;max-width:78%;font-family:"Playfair Display",Georgia,serif;font-style:italic;font-size:clamp(22px,2.1vw,34px);line-height:1.15;color:#2e172d;text-shadow:0 1px 8px rgba(255,255,255,.5);white-space:pre-line}
.sba-confirm-art-copy.pos-top-left{top:7%;left:8%}.sba-confirm-art-copy.pos-top-center{top:7%;left:50%;transform:translateX(-50%);text-align:center}.sba-confirm-art-copy.pos-top-right{top:7%;right:8%;text-align:right}
.sba-confirm-art-copy.pos-center-left{top:50%;left:8%;transform:translateY(-50%)}.sba-confirm-art-copy.pos-center{top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.sba-confirm-art-copy.pos-center-right{top:50%;right:8%;transform:translateY(-50%);text-align:right}
.sba-confirm-art-copy.pos-bottom-left{bottom:7%;left:8%}.sba-confirm-art-copy.pos-bottom-center{bottom:7%;left:50%;transform:translateX(-50%);text-align:center}.sba-confirm-art-copy.pos-bottom-right{bottom:7%;right:8%;text-align:right}
.sba-cal-modal{position:fixed;inset:0;z-index:1000;background:rgba(46,23,45,.45);display:grid;place-items:center;padding:20px}
.sba-cal-modal[hidden]{display:none}
.sba-cal-card{position:relative;width:min(420px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:30px 26px;text-align:center;box-shadow:0 24px 60px rgba(46,1,0,.2)}
.sba-cal-close{position:absolute;top:10px;right:12px;border:0;background:none;font-size:26px;line-height:1;color:#756575;cursor:pointer;padding:6px}
.sba-cal-icon svg{width:34px;height:34px;fill:none;stroke:#7B0674;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.sba-cal-card h2{font:500 26px "Playfair Display",Georgia,serif;margin:6px 0 6px}
.sba-cal-card h3{font:600 12px Poppins,sans-serif;color:#6f146e;margin:16px 0 6px;text-align:left}
.sba-cal-card p{font-size:13px;color:#665564;margin:0 0 14px}
.sba-cal-list{display:grid;gap:8px}
.sba-cal-list a{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border:1px solid #e6d9e2;border-radius:12px;color:#2e172d;text-decoration:none;font-weight:500;font-size:14px}
.sba-cal-list a:hover{border-color:#7B0674;background:#fbf5fa}
.sba-modal-open{overflow:hidden}
@media (max-width:860px){.sba-confirm-page{padding:18px 14px 40px}.sba-confirm-layout{grid-template-columns:1fr;border-radius:16px}.sba-confirm-message{padding:40px 22px 30px}.sba-confirm-art img{height:auto;min-height:0}.sba-confirm-art-copy{font-size:clamp(23px,7vw,34px)}.sba-confirm-mini{flex-direction:column}}
@media (max-width:520px){.sba-confirm-page{padding:10px 10px 30px}.sba-confirm-message{padding:34px 16px 24px}.sba-confirm-message h1{font-size:32px}.sba-confirm-welcome{font-size:20px}.sba-confirm-actions{flex-direction:column;width:100%}.sba-confirm-btn{width:100%}}
