/* FLORETTE V1.7.2 — page de paiement, isolée des styles de la boutique. */
body.payment-mode{background:#fcf9f5;max-width:none;padding-bottom:0;box-shadow:none;color:#32292d}
.payment-mode .site-header{height:clamp(172px,26vw,222px);max-width:864px;margin:auto;background:transparent;border:0;position:relative;padding:12px 25px;align-items:flex-start;z-index:2;box-shadow:none}
.payment-mode .site-header .brand:has(#brandLogo:not([hidden])){width:clamp(172px,30vw,224px);height:clamp(172px,26vw,222px);left:50%;top:0;transform:translateX(-50%)}
.payment-mode .site-header .brand #brandLogo:not([hidden]){width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.payment-mode .header-actions{margin-top:0;margin-left:auto}.payment-mode .header-actions .icon-button:not(.bag-button),.payment-mode .desktop-nav,.payment-mode .bottom-nav,.payment-mode .brand #brandText{display:none}
.payment-mode .header-actions svg,.payment-mode .menu-button svg{width:27px;height:27px;color:#79545e}.payment-mode .badge{background:#e6a8b3;color:#633542;font-size:12px;min-width:21px;height:21px}
.payment-mode .site-header::before{content:'Des créations\A pleines d’amour ♡';position:absolute;white-space:pre-line;left:7%;top:85px;font:22px/1.05 var(--script);color:#b28a8b;max-width:100px;transform:rotate(-7deg)}
.payment-mode .site-header::after{content:'Merci de faire vivre\A un savoir-faire\A artisanal ♡';position:absolute;white-space:pre-line;right:3%;top:86px;font:21px/1.05 var(--script);color:#b28a8b;text-align:center;transform:rotate(6deg)}
.payment-mode main{max-width:864px;margin:auto;padding:0;position:relative}.payment-mode main::before{content:'';position:absolute;width:100px;height:195px;left:-39px;top:-137px;background:url('assets/floral-sprig.svg') center/contain no-repeat;pointer-events:none;opacity:.8;z-index:0}
.payment-page{position:relative;padding:0 22px max(24px,env(safe-area-inset-bottom));font-size:14px;line-height:1.4;isolation:isolate}
.pay-progress{list-style:none;padding:0;margin:0 auto 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:420px;position:relative;color:#8f6972;font-size:13px;text-align:center}
.pay-progress:before{content:'';position:absolute;left:16.66%;right:16.66%;top:14px;height:1px;background:#d9a1ae;z-index:-1}.pay-progress li{display:grid;justify-items:center;gap:4px}.pay-progress span{display:grid;place-items:center;background:#e7a7b2;border:3px solid #fcf9f5;border-radius:50%;width:30px;height:30px;color:white;font-weight:600}.pay-progress svg{width:15px;height:15px}.pay-progress [aria-current]{color:#32292d}.pay-progress [aria-current] span{background:#be7386}
.pay-intro{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.pay-sections{display:grid;gap:12px}.pay-card{background:linear-gradient(110deg,#fff 10%,#fffcfc 100%);border:1px solid #f3eeec;box-shadow:0 3px 16px #75594e08;border-radius:17px;padding:17px 20px;min-width:0}
.pay-title-row{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px;flex-wrap:wrap}.pay-title-row h2{font:20px/1.22 Georgia,'Times New Roman',serif;letter-spacing:-.35px;display:flex;align-items:center;gap:10px;color:#2c2527;margin:0}.pay-title-row h2 svg{color:#b46f80;width:24px;height:26px;flex:none;stroke-width:1.7}
.pay-edit{display:inline-flex;align-items:center;justify-content:center;gap:5px;color:#a4586b;font-size:12px;text-decoration:underline;text-underline-offset:3px;padding:6px 0;min-height:34px}.pay-edit svg{height:17px;width:17px}.pay-edit:disabled{opacity:.45}
.pay-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto auto;gap:13px;align-items:center;padding:3px 0 12px}.pay-item img,.pay-item-placeholder{width:76px;height:76px;object-fit:cover;border-radius:9px;background:#f8eeea}.pay-item-placeholder{display:grid;place-items:center;color:#c38c92}.pay-item-placeholder svg{width:28px;height:28px}.pay-item h3{font-size:14px;font-weight:500;line-height:1.35;margin:0 0 4px}.pay-item-copy{min-width:0;overflow-wrap:anywhere}.pay-item-copy span{display:block;color:#82777a;font-size:12px}.pay-qty{font-size:12px}.pay-item>strong{font-size:14px;font-weight:600;white-space:nowrap}
.pay-recap-bottom{display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:20px}.pay-totals{border-top:1px solid #e9e2e5;margin:0;padding-top:10px;font-size:13px}.pay-totals>div{display:flex;justify-content:space-between;gap:10px;margin-bottom:4px}.pay-totals dd{margin:0;white-space:nowrap}.pay-grand-total{margin-top:7px!important;font:20px/1.3 Georgia,serif;font-weight:600}.pay-grand-total dd{color:#b45670;font:600 19px/1.4 var(--sans)}
.pay-thanks{font:25px/1.03 var(--script);color:#c48e9c;text-align:center;transform:rotate(-7deg);margin:5px 0 0}
.pay-delivery-inner{display:grid;grid-template-columns:43px minmax(0,1fr) auto;gap:13px;padding:13px;background:#fbf0f1;border-radius:12px;align-items:center}.pay-carrier-icon{display:grid;place-items:center;border-radius:9px;background:#f0d4db;color:#a64e68;width:43px;height:43px}.pay-carrier-icon svg{width:26px;height:26px}.pay-delivery-inner h3{font-size:14px;margin:0 0 3px;font-weight:600}.pay-delivery-inner p{font-size:12px;color:#81747a;margin:0}.pay-delivery-inner p+p{margin-top:5px}.pay-delivery-inner p strong{font-weight:500;color:#5a4c52}.pay-shipping-price{color:#ad586e;font-size:14px;white-space:nowrap}
.pay-secure-caption{font-size:10px;color:#8b7c82;display:flex;align-items:center;gap:6px;margin:0}.pay-secure-caption svg{width:18px;height:18px}.pay-loading{border-radius:10px;padding:22px 15px;text-align:center;background:#fcf3f4;color:#8d6d76;font-size:13px}
.pay-express{margin-top:12px;min-width:0}.pay-express>p{font-size:10px;color:#897d81;text-align:center;margin:8px 0 0}.pay-method{min-height:165px}.pay-method iframe{max-width:100%}
.pay-same{display:flex;align-items:center;gap:7px;color:#625258;font-size:11px;cursor:pointer}.pay-same input{accent-color:#ce8b9c;width:17px;height:17px;margin:0;flex:none}.pay-same:has(input:disabled){opacity:.65}
.pay-billing-body{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:14px}.pay-address{display:flex;gap:12px;background:#fbf0f1;border-radius:10px;padding:13px;font-size:13px;line-height:1.5}.pay-address>svg{color:#ba7a8a;width:22px;height:24px;flex:none}.pay-address p{margin:0;overflow-wrap:anywhere}
.pay-billing-flower{align-self:end;font:21px/1.05 var(--script);color:#be8e97;min-height:110px;padding:35px 0 0 45px;margin:0;background:url('assets/floral-sprig.svg') left center/64px 120px no-repeat;transform:rotate(-6deg)}
.pay-billing-form{display:grid;gap:9px}.pay-billing-form label{display:grid;gap:4px;font-size:12px;color:#6d5861}.pay-billing-form input,.pay-billing-form select{width:100%;min-width:0;border:1px solid #e8dcdf;background:#fff;border-radius:9px;min-height:44px;padding:9px 10px;font:16px/1.3 var(--sans);color:#3b2f34}.pay-billing-form>div{display:grid;grid-template-columns:100px 1fr;gap:10px}.pay-billing-form input:focus-visible,.pay-billing-form select:focus-visible{outline:2px solid #d49dab;outline-offset:2px}
.pay-assurance{display:flex;align-items:center;justify-content:space-around;gap:20px;border-radius:14px;background:#fbf0f2;padding:14px 17px;color:#6b4c57}.pay-assurance>div{display:flex;align-items:center;gap:10px;min-width:0}.pay-assurance>div+div{border-left:1px solid #ebced7;padding-left:20px}.pay-assurance svg{width:27px;height:30px;flex:none;color:#b67486}.pay-assurance p{display:grid;gap:2px;font-size:12px;margin:0}.pay-assurance strong{font-weight:500}.pay-assurance span{font-size:9px;color:#88747d}
.pay-action-area{position:relative;text-align:center;padding-top:14px}.pay-now{display:flex;gap:12px;align-items:center;justify-content:center;width:80%;min-height:54px;margin:0 auto;border-radius:999px;background:linear-gradient(115deg,#c27e87,#b66e80);color:white;padding:13px 18px;font-size:17px;font-weight:500;box-shadow:inset 0 1px 0 #fff3}.pay-now svg{width:23px;height:23px;flex:none}.pay-now b{font-weight:500;white-space:nowrap}.pay-now:disabled{opacity:.52;cursor:wait}.pay-now:focus-visible{outline:3px solid #9a4964;outline-offset:3px}.pay-now span{min-width:0}.pay-security-label{font-size:10px;color:#907b83;margin:6px 0 0}.pay-closing{text-align:center;color:#c999a1;font:25px/1.2 var(--script);margin:18px 0 0}.pay-action-area:before,.pay-action-area:after{content:'';position:absolute;bottom:-20px;background:url('assets/floral-sprig.svg') bottom/contain no-repeat;width:86px;height:135px;pointer-events:none;z-index:-1}.pay-action-area:before{left:-25px;transform:rotate(-20deg)}.pay-action-area:after{right:-24px;transform:scaleX(-1) rotate(-20deg)}
.pay-error{font-size:13px;line-height:1.45;color:#854456;padding:12px;background:#fae9ed;border:1px solid #edd1d9;border-radius:12px;margin:0 0 10px;text-align:left}.pay-action-area .secondary{margin-bottom:10px;min-height:44px}
.pay-success,.pay-empty{text-align:center;margin:18px auto 70px;max-width:630px;padding:30px 24px}.pay-success h1,.pay-empty h1{font:31px/1.2 Georgia,serif;color:#68414f}.pay-success p,.pay-empty p{font-size:14px;line-height:1.6;margin:15px 0;color:#84727a}.pay-success-heart{font:60px var(--script);color:#c18494}.pay-success dl{padding:16px;background:#fcf1f3;border-radius:13px;text-align:left}.pay-success dl>div{display:flex;justify-content:space-between;gap:12px;margin:8px 0;font-size:13px}.pay-success dd{margin:0;font-weight:600;overflow-wrap:anywhere;max-width:65%}.pay-success .primary{margin-top:12px}
.payment-page [hidden]{display:none!important}
@media(max-width:599px){.payment-mode .site-header{height:174px;padding:10px 17px}.payment-mode .site-header .brand:has(#brandLogo:not([hidden])){width:176px;height:174px}.payment-mode .site-header::before{left:9%;top:92px;font-size:17px;max-width:65px}.payment-mode .site-header::after{right:3%;top:98px;font-size:15px;max-width:86px}.payment-page{padding:0 13px max(28px,env(safe-area-inset-bottom));font-size:13px}.pay-progress{max-width:270px;font-size:11px;margin-bottom:16px}.pay-progress span{width:28px;height:28px}.pay-card{padding:13px 12px;border-radius:14px}.pay-sections{gap:10px}.pay-title-row{gap:3px;margin-bottom:9px}.pay-title-row h2{font-size:17px;gap:7px}.pay-recap .pay-title-row h2{font-size:16px;max-width:245px}.pay-title-row h2 svg{width:22px;height:23px}.pay-edit{font-size:11px;gap:4px}.pay-edit svg{width:14px;height:14px}.pay-item{grid-template-columns:59px minmax(0,1fr) auto;gap:9px;padding-bottom:11px}.pay-item img,.pay-item-placeholder{width:59px;height:65px;grid-row:1/3}.pay-item-copy{grid-row:1/3}.pay-item h3{font-size:12px;margin-bottom:2px}.pay-item-copy span{font-size:10px;line-height:1.35}.pay-item>strong{font-size:12px;grid-column:3;grid-row:2;align-self:start}.pay-qty{grid-column:3;grid-row:1;align-self:end;text-align:right;font-size:11px}.pay-recap-bottom{grid-template-columns:minmax(0,1fr) 67px;gap:9px}.pay-totals{font-size:11px;padding-top:8px}.pay-grand-total{font-size:17px;margin-top:6px!important}.pay-grand-total dd{font-size:16px}.pay-thanks{font-size:20px;margin-top:6px}.pay-delivery-inner{grid-template-columns:33px minmax(0,1fr) auto;gap:9px;padding:10px}.pay-carrier-icon{width:33px;height:37px}.pay-carrier-icon svg{width:24px;height:24px}.pay-delivery-inner h3{font-size:13px}.pay-delivery-inner p{font-size:10px}.pay-shipping-price{font-size:12px}.pay-secure-caption{font-size:9px;margin-top:3px}.pay-secure-caption svg{height:15px;width:15px}.pay-billing-body{grid-template-columns:minmax(0,1fr) 78px;gap:8px}.pay-billing-flower{font-size:17px;padding-left:30px;background-size:48px 103px;min-height:100px}.pay-same{font-size:10px;min-height:31px}.pay-address{padding:10px;gap:7px;font-size:12px}.pay-address svg{width:19px}.pay-assurance{padding:10px;gap:8px}.pay-assurance>div{gap:7px}.pay-assurance>div+div{padding-left:8px}.pay-assurance svg{width:23px;height:25px}.pay-assurance p{font-size:10px}.pay-assurance span{font-size:8px}.pay-now{width:94%;min-height:52px;font-size:15px;padding:12px 9px;gap:9px}.pay-now svg{width:20px;height:21px}.pay-closing{font-size:23px}.pay-billing:has(#payBillingForm:not([hidden])) .pay-billing-body{display:block}.pay-billing:has(#payBillingForm:not([hidden])) .pay-billing-flower{display:none}}
@media(max-width:359px){.payment-mode .site-header::before,.payment-mode .site-header::after{display:none}.pay-recap .pay-title-row h2{max-width:195px}.pay-billing-body{grid-template-columns:1fr}.pay-billing-flower{display:none}.pay-recap-bottom{grid-template-columns:1fr}.pay-thanks{display:none}.pay-assurance span{display:none}.pay-now{font-size:14px;width:100%;gap:6px}}

/* Les ornements restent dans la largeur disponible, même sur les petits iPhone. */
body.payment-mode{overflow-x:hidden;overflow-x:clip}

.payment-mode .site-header{margin-top:env(safe-area-inset-top,0px)}

/* V1.9.4 — la page Stripe reste strictement dans le viewport sur iPhone. */
body.payment-mode,.payment-mode main,.payment-page,.pay-sections,.pay-card,.pay-method,#florette-payment-element,#florette-express-element{max-width:100%;min-width:0}
body.payment-mode,.payment-mode main,.payment-page{overflow-x:hidden;overscroll-behavior-x:none}
@supports (overflow:clip){body.payment-mode,.payment-mode main,.payment-page{overflow-x:clip}}
