/* Compact, single-form checkout. Desktop and mobile use the same contact → WFP flow. */
.checkout-dialog{width:min(590px,calc(100vw - 28px));max-width:590px;max-height:calc(100dvh - 32px);padding:28px 30px 24px;overflow:auto;overscroll-behavior:contain}
.checkout-dialog .eyebrow{font-size:9px;letter-spacing:2px;margin:0 35px 10px 0}
.checkout-dialog h2{font-size:35px;line-height:1.05;letter-spacing:-.5px;text-transform:none;margin:0}
.checkout-dialog #purchase-summary{font:500 21px/1.2 Cormorant,Georgia,serif;color:var(--wine);margin:11px 0 0}
.checkout-dialog .checkout-explain{font-size:11px!important;margin:12px 0 17px!important}
.checkout-dialog .close{right:13px;top:12px}
#order-contact-form{gap:15px}
.checkout-fields{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px}
.checkout-fields label{display:block;min-width:0;font-size:10px;line-height:1.4}
.checkout-fields input{width:100%;margin-top:6px;padding:11px 12px;border:1px solid #c7a48b;border-radius:9px;background:#fffaf3;color:var(--ink)}
.checkout-dialog .checkout-fields input:not([type=checkbox]){min-height:43px;font-size:16px}
#order-contact-form .consent-row{font-size:9px!important;margin:0;gap:9px;align-items:center}
#order-contact-form .consent-row input{margin:0;min-height:0}
#checkout-submit{width:100%;gap:16px;height:50px;min-height:50px;font-weight:700;font-size:14px}
#checkout-submit:disabled{cursor:wait;opacity:.65}
#order-contact-form[aria-busy=true] #checkout-submit{opacity:.8}
#order-contact-form .purchase-note{margin:0;text-align:center;font-size:9px;line-height:1.5}
.checkout-dialog .form-status:empty{display:none}
.checkout-dialog #checkout-state{margin-top:15px;padding:11px 13px;background:#fff8ee;border:1px solid #d8b79b;border-radius:10px;font-size:11px!important}
.checkout-dialog #paid-platform-link,.checkout-dialog #checkout-upgrade-link{margin-top:14px;white-space:normal;height:auto;min-height:46px}
.checkout-dialog [data-purchase-consult]{font-size:11px;margin:16px auto 0!important}
.checkout-dialog .dialog-support{text-align:center;font-size:10px!important;margin-top:12px;line-height:1.7}
.checkout-dialog input:disabled{opacity:.7}
.tariff-card-content{display:contents}
.tariff-carousel-controls{display:none}
.priced-plan strong{font-weight:700}
.priced-plan .plan-scope strong{font-weight:700}
@media(max-width:700px){
 .checkout-dialog{padding:24px 20px 20px;width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:21px}
 .checkout-dialog h2{font-size:31px;margin-right:16px}
 .checkout-dialog #purchase-summary{font-size:20px}
 .checkout-dialog .checkout-explain{font-size:10px!important;margin:10px 0 15px!important}
 .checkout-fields{grid-template-columns:1fr;gap:10px}
 .checkout-fields label{font-size:10px}
 .checkout-dialog .checkout-fields input:not([type=checkbox]){min-height:42px;padding:9px 11px}
 #order-contact-form{gap:13px}
 .checkout-dialog .dialog-support{font-size:9px!important}
 .tariff-carousel-controls{display:block;margin-top:28px}
 .tariff-switcher{display:flex;gap:7px;justify-content:center}
 .tariff-switcher button{flex:1;padding:10px 8px;border-radius:25px;border:1px solid #bd9776;background:#fff5e6;color:#78364b;font-size:11px;min-height:40px;max-width:150px}
 .tariff-switcher button[aria-pressed=true]{background:linear-gradient(120deg,#a04d65,#7f2b45);color:#fff2dc;border-color:#d1a480;box-shadow:inset 0 1px 0 #f8d2aa55,0 4px 10px #71334322}
 .tariff-navigation{display:flex;justify-content:center;align-items:center;gap:17px;margin-top:15px}
 .tariff-navigation button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #ba9577;border-radius:50%;background:#fcf0de;color:#7d3549;font-size:19px}
 .tariff-navigation button:disabled{opacity:.3;cursor:default}
 #tariff-position{font-size:11px;letter-spacing:1px;font-weight:600;color:#855442;min-width:54px;text-align:center}
 .tariff-swipe-hint{font-size:15px;letter-spacing:3px;color:#a77c5c}
 .priced-plans{display:flex;grid-template-columns:none;align-items:stretch;gap:15px;margin:17px -22px 0;padding:17px 22px 25px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-padding-inline:22px;scrollbar-width:none;overscroll-behavior-x:contain;isolation:isolate}
 .priced-plans::-webkit-scrollbar,.tariff-card-content::-webkit-scrollbar{display:none}
 .priced-plans>.priced-plan{flex:0 0 calc(100% - 17px);width:calc(100% - 17px);max-width:none;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always;height:min(760px,calc(100svh - 160px))!important;min-height:480px!important;padding:27px 20px 19px;overflow:hidden;transform:none}
 .priced-plan>.tariff-card-content{display:block;flex:1;min-height:0;width:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:auto;scrollbar-width:none;padding:4px 2px 8px;-webkit-overflow-scrolling:touch}
 .priced-plan .plan-badge{z-index:2;position:relative;inset:auto;flex-shrink:0;width:calc(100% + 8px);margin:-13px -4px 12px;padding:8px 6px;cursor:grab;touch-action:pan-x}
 .priced-plan .plan-icon{height:45px;margin:0 0 10px}
 .priced-plan .plan-icon .pawn{transform:scale(.4)}
 .priced-plan .plan-icon svg{width:48px;height:48px}
 .priced-plan .crown{font-size:57px}
 .priced-plan .plan-label{font-size:8px;margin:0 0 7px}
 .priced-plan h3{font-size:27px;line-height:1.05;margin:auto;max-width:100%}
 .plan-start h3{font-size:34px}
 .priced-plan .plan-price{font-size:76px;line-height:1;margin:14px 0 10px}
 .plan-start .plan-price{font-size:93px}
 .priced-plan .plan-description{font-size:11px;max-width:100%;margin:10px 0 15px}
 .priced-plan .plan-scope{font-size:11px;padding:13px 0}
 .priced-plan ul{font-size:11px;line-height:1.5;margin:16px 0 8px}
 .priced-plan li{margin-bottom:11px}
 .priced-plan>.purchase-btn{flex-shrink:0;margin-top:12px!important;min-height:47px;width:100%}
 .priced-plan>.plan-program{flex-shrink:0;margin-top:10px;font-size:10px}
 .priced-plan>.upgrade-credit{flex-shrink:0;font-size:9px;line-height:1.4;margin-top:9px}
 .upgrade-strip{flex-direction:row;gap:7px;padding:15px 9px;margin-top:10px}
 .upgrade-strip span{font-size:7px;letter-spacing:0}
 .upgrade-strip b{transform:none;font-size:12px}
}
@media(max-width:360px){.priced-plans>.priced-plan{padding-inline:16px}.priced-plan h3{font-size:25px}.tariff-switcher button{font-size:10px}.checkout-dialog{padding-inline:17px}}
