body.photo-checkout-page { margin:0; background:#f6f8fb; color:#23324d; font:15px/1.6 Manrope,sans-serif; }
.photo-checkout-page * { box-sizing:border-box; }
.photo-checkout-header { width:100%; min-height:92px; padding:16px max(24px,calc((100% - 800px)/2)); display:flex; align-items:center; justify-content:space-between; gap:20px; background:#fff; border-bottom:1px solid #dce4ee; }
.photo-checkout-header img { display:block; width:210px; height:70px; object-fit:contain; }
.photo-checkout-header span { color:#61728b; font-size:13px; font-weight:700; }
.photo-checkout { width:min(800px,calc(100% - 48px)); margin:40px auto; }
.photo-checkout-intro { margin-bottom:28px; }
body.photo-checkout-page .photo-checkout-eyebrow { margin:0 0 8px; color:#cf0631; text-transform:uppercase; letter-spacing:.12em; font-size:11px; font-weight:800; }
body.photo-checkout-page h1 { margin:0 0 10px; font-size:clamp(30px,4vw,38px); line-height:1.2; letter-spacing:-.035em; color:#102850; }
.photo-checkout-intro > p:last-child { margin:0; color:#536780; }
.photo-checkout-panel { padding:28px; margin-bottom:20px; border:1px solid #dce4ee; border-radius:12px; background:#fff; }
body.photo-checkout-page h2 { margin:0; color:#102850; font-size:20px; line-height:1.3; letter-spacing:-.02em; }
.photo-checkout-section-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-bottom:18px; }
.photo-checkout-section-heading > span { color:#61728b; font-size:13px; }
.photo-checkout-item { display:grid; grid-template-columns:88px minmax(0,1fr) auto; align-items:start; gap:18px; padding:20px 0; border-top:1px solid #e5e9ef; }
.photo-checkout-item > img { width:88px; height:88px; object-fit:cover; background:#eef2f6; border-radius:6px; }
body.photo-checkout-page h3 { margin:0 0 4px; color:#102850; font-size:16px; line-height:1.4; overflow-wrap:anywhere; }
.photo-checkout-item-details > p { margin:0; color:#536780; font-size:13px; }
.photo-checkout-item-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:12px; }
.photo-checkout-item-actions form { margin:0; }
.photo-checkout-remove { min-height:44px; padding:8px 12px; border:0; background:transparent; color:#63738a; font:600 13px/1.4 Manrope,sans-serif; cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.photo-checkout-price { color:#102850; font-size:16px; white-space:nowrap; }
.photo-checkout-total { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-top:20px; border-top:1px solid #dce4ee; font-weight:750; }
.photo-checkout-total small { margin-left:6px; color:#61728b; font-size:11px; font-weight:500; }
.photo-checkout-total strong { color:#102850; font-size:24px; }
.photo-checkout-help { color:#61728b; font-size:13px; line-height:1.6; margin:10px 0 20px; }
.photo-checkout-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.photo-checkout-fields label { display:grid; gap:8px; color:#23324d; font-size:13px; font-weight:750; }
.photo-checkout-fields input { width:100%; min-width:0; min-height:48px; padding:11px 12px; border:1px solid #cdd9e6; border-radius:6px; background:#fff; color:#23324d; font:400 16px/1.4 Manrope,sans-serif; }
.photo-checkout-page :is(a,button,input):focus-visible { outline:3px solid #355eaa; outline-offset:3px; }
.photo-checkout-page .photo-checkout-acceptance { display:flex; gap:12px; align-items:flex-start; padding:18px; border:1px solid #dce4ee; border-radius:6px; background:#f8fafc; font-size:13px; font-weight:500; }
.photo-checkout-acceptance input { width:19px; height:19px; margin:2px 0 0; accent-color:#102850; }
.photo-checkout-pay { display:block; width:100%; min-height:52px; margin-top:24px; padding:14px 20px; border:0; border-radius:6px; background:#ce0732; color:#fff; font:750 15px/1.4 Manrope,sans-serif; cursor:pointer; }
.photo-checkout-pay:hover { background:#a70028; }
.photo-checkout-payment-note { margin:12px 0 0; color:#61728b; font-size:12px; text-align:center; }
.photo-checkout-back { display:inline-flex; align-items:center; min-height:44px; color:#536780; font-size:13px; font-weight:700; text-decoration:none; }
.photo-checkout-back:hover { color:#cf0631; }
.photo-checkout-empty p { color:#536780; }
.photo-checkout-footer { width:min(800px,calc(100% - 48px)); margin:0 auto; padding:4px 0 28px; color:#61728b; font-size:12px; text-align:center; }
.photo-checkout-footer p { margin:4px 0; }
.photo-checkout-footer a,.photo-checkout-error a { color:inherit; overflow-wrap:anywhere; }
.photo-checkout-error { padding:16px 20px; border:1px solid #edbcc6; border-radius:6px; background:#fff4f6; color:#a40028; }
@media(max-width:600px) { .photo-checkout-header { min-height:76px; padding:10px 18px; } .photo-checkout-header img { width:165px; height:55px; } .photo-checkout-header span { font-size:11px; } .photo-checkout { width:calc(100% - 32px); margin:26px auto; } .photo-checkout-panel { padding:20px; } .photo-checkout-fields { grid-template-columns:1fr; gap:16px; } .photo-checkout-item { grid-template-columns:64px minmax(0,1fr); gap:12px; position:relative; } .photo-checkout-item > img { width:64px; height:64px; } .photo-checkout-price { grid-column:2; font-size:15px; } .photo-checkout-section-heading { align-items:start; } .photo-checkout-section-heading > span { white-space:nowrap; } .photo-checkout-footer { width:calc(100% - 32px); } }
.photo-checkout-acceptance small { display:block; margin-top:5px; color:#53647d; font-size:12px; line-height:1.5; }

.photo-checkout-page .photo-checkout-updates { margin-top:12px; }
