.reservation-page{background:var(--gray-50);min-height:60vh}.reservation-hero{background:linear-gradient(135deg, var(--blue-xdark) 0%, var(--blue) 100%);padding:var(--space-10) var(--space-5);text-align:center;color:var(--white);margin-bottom:var(--space-8);border-radius:var(--radius-lg)}.reservation-hero-title{color:var(--white);margin:0 0 var(--space-3) 0;font-size:clamp(22px,3.5vw,32px)}.reservation-hero-sub{color:#fffc;font-size:var(--text-base);margin:0}.reservation-progress{background:var(--white);border-bottom:1px solid var(--gray-200);padding:var(--space-5) 0;z-index:50;position:sticky;top:72px}.progress-steps{justify-content:center;align-items:center;gap:0;max-width:500px;margin:0 auto;display:flex}.progress-step{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--gray-500);flex:1;justify-content:center;font-weight:600;display:flex}.progress-step-num{background:var(--gray-200);width:32px;height:32px;color:var(--gray-500);font-size:var(--text-sm);transition:background var(--transition), color var(--transition);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.progress-step.is-active .progress-step-num{background:var(--blue);color:var(--white)}.progress-step.is-active{color:var(--blue)}.progress-step.is-done .progress-step-num{background:var(--green);color:var(--white)}.progress-step.is-done{color:var(--green)}.progress-line{background:var(--gray-200);width:48px;height:2px;transition:background var(--transition);flex-shrink:0}.progress-line.is-done{background:var(--green)}.reservation-layout{max-width:var(--container);padding:var(--space-8) var(--space-5);gap:var(--space-8);grid-template-columns:1fr 340px;align-items:start;margin:0 auto;display:grid}.reservation-aside{top:calc(72px + 72px + var(--space-6));position:sticky}@media (width<=991px){.reservation-layout{grid-template-columns:1fr}.reservation-aside{position:static}}.form-section{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:var(--space-6);overflow:hidden}.form-section-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--gray-200);align-items:center;gap:var(--space-3);display:flex}.form-section-header .step-num{background:var(--blue);width:28px;height:28px;color:var(--white);font-size:var(--text-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.form-section-header h2{font-size:var(--text-lg);color:var(--gray-800);margin:0;font-weight:700}.form-section-body{padding:var(--space-6)}.resa-sessions-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}.resa-session-radio{display:none}.resa-session-label{border:2px solid var(--gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition), box-shadow var(--transition);background:var(--white);flex-direction:column;align-items:center;display:flex;overflow:hidden}.resa-session-label:hover{border-color:var(--blue);box-shadow:var(--shadow-sm)}.resa-session-radio:checked+.resa-session-label{border-color:var(--blue);box-shadow:0 0 0 3px #014a9926}.resa-session-head{background:var(--blue);width:100%;padding:var(--space-4) var(--space-3);text-align:center;color:var(--white)}.resa-session-radio:checked+.resa-session-label .resa-session-head{background:var(--blue-dark)}.session-label-full .resa-session-head{background:var(--gray-500);cursor:not-allowed}.session-label-urgence .resa-session-head{background:#d97706}.resa-session-head .s-day{font-size:32px;font-weight:800;line-height:1}.resa-session-head .s-month{font-size:var(--text-sm);text-transform:uppercase;opacity:.85;font-weight:700}.resa-session-head .s-year{font-size:var(--text-xs);opacity:.7}.resa-session-body{padding:var(--space-3);width:100%}.resa-session-detail{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--gray-600);margin-bottom:4px;display:flex}.resa-session-detail .fa{color:var(--blue);text-align:center;width:12px}.resa-session-badge{text-align:center;margin-top:var(--space-2);font-size:var(--text-xs);border-radius:var(--radius-xl);padding:2px 8px;font-weight:700;display:block}.resa-badge-dispo{color:#1a5c38;background:#e8f8f0}.resa-badge-urgence{color:#7a4000;background:#fff3e0}.resa-badge-complet{background:var(--gray-200);color:var(--gray-500)}.resa-session-note{font-size:var(--text-xs);color:var(--gray-500);text-align:center;margin-top:var(--space-4)}.selected-session-banner{background:var(--gray-100);border:1px solid var(--gray-200);border-radius:var(--radius);padding:var(--space-4) var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.selected-session-info{align-items:center;gap:var(--space-4);display:flex}.selected-session-date-block{background:var(--blue);color:var(--white);border-radius:var(--radius);padding:var(--space-2) var(--space-3);text-align:center;flex-shrink:0;min-width:52px}.selected-session-date-block .sd-day{font-size:22px;font-weight:800;line-height:1;display:block}.selected-session-date-block .sd-month{text-transform:uppercase;opacity:.8;font-size:10px;font-weight:700;display:block}.selected-session-text strong{font-size:var(--text-base);color:var(--gray-800);font-weight:700;display:block}.selected-session-text span{font-size:var(--text-sm);color:var(--gray-500)}.btn-change-date{font-size:var(--text-xs);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;padding:0;font-weight:600;color:var(--blue)!important;text-decoration:underline!important}.coords-grid{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.coords-grid .form-group.full{grid-column:1/-1}@media (width<=600px){.coords-grid{grid-template-columns:1fr}}.form-subsection-title{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;color:var(--gray-500);border-bottom:1px solid var(--gray-200);padding-bottom:var(--space-2);margin:var(--space-6) 0 var(--space-4);font-weight:700}.form-subsection-title:first-child{margin-top:0}.alt-payment-options{margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--gray-200)}.alt-payment-toggle{font-size:var(--text-sm);color:var(--gray-500);cursor:pointer;align-items:center;gap:var(--space-2);user-select:none;display:flex}.alt-payment-toggle:before{content:"";border:1.5px solid var(--gray-400);border-radius:3px;width:14px;height:14px;display:inline-block}.alt-payment-panel{margin-top:var(--space-4);padding:var(--space-5);background:var(--gray-50);border-radius:var(--radius);border:1px solid var(--gray-200);display:none}.stripe-payment-wrap{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.stripe-payment-header{background:var(--blue-dark);padding:var(--space-5) var(--space-6);color:var(--white);align-items:center;gap:var(--space-3);display:flex}.stripe-payment-header .fa{color:var(--gold);font-size:20px}.stripe-payment-header h2{color:var(--white);font-size:var(--text-lg);margin:0}.stripe-payment-body{padding:var(--space-6)}.don-addon-toggle-btn{background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:var(--radius);width:100%;padding:var(--space-4) var(--space-5);cursor:pointer;font-family:var(--font);font-size:var(--text-sm);color:var(--gray-800);transition:border-color var(--transition), background var(--transition);margin-bottom:var(--space-4);justify-content:space-between;align-items:center;font-weight:600;display:flex}.don-addon-toggle-btn:hover{border-color:var(--blue);background:var(--gray-100)}.don-addon-toggle-btn .fa-chevron-down{transition:transform var(--transition)}.don-addon-toggle-btn.is-open .fa-chevron-down{transform:rotate(180deg)}.don-addon-panel{background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius);padding:var(--space-5);margin-bottom:var(--space-5);display:none}.don-addon-amounts{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.don-amount-btn{border:1.5px solid var(--gray-300);border-radius:var(--radius-xl);background:var(--white);font-size:var(--text-sm);color:var(--gray-800);cursor:pointer;transition:border-color var(--transition), background var(--transition);padding:8px 16px;font-weight:700}.don-amount-btn:hover,.don-amount-btn.is-active{border-color:var(--blue);background:var(--blue);color:var(--white)}.don-total-display{background:var(--blue-dark);color:var(--white);border-radius:var(--radius);padding:var(--space-4) var(--space-5);margin-top:var(--space-3);justify-content:space-between;align-items:center;font-weight:700;display:flex}.don-total-display .total-amount{font-size:var(--text-2xl)}#express-checkout-element{margin-bottom:var(--space-5)}.express-separator{align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);color:var(--gray-500);font-size:var(--text-sm);display:flex}.express-separator:before,.express-separator:after{content:"";background:var(--gray-200);flex:1;height:1px}#stripe-error-message{margin-top:var(--space-4);display:none}#stripe-submit{width:100%;margin-top:var(--space-5);font-size:var(--text-lg);padding:14px}#stripe-submit .spinner,#stripe-submit.is-loading .label{display:none}#stripe-submit.is-loading .spinner{display:inline-block}.resa-recap{background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.resa-recap-header{background:var(--blue);padding:var(--space-4) var(--space-5);color:var(--white);font-size:var(--text-sm);font-weight:700}.resa-recap-body{padding:var(--space-5)}.resa-recap-line{justify-content:space-between;align-items:flex-start;gap:var(--space-3);font-size:var(--text-sm);padding:var(--space-2) 0;border-bottom:1px solid var(--gray-200);display:flex}.resa-recap-line:last-child{border-bottom:none}.resa-recap-line .label{color:var(--gray-600)}.resa-recap-line .value{color:var(--gray-800);text-align:right;font-weight:700}.resa-recap-total{background:var(--gray-50);border-radius:var(--radius);padding:var(--space-4);margin-top:var(--space-3);justify-content:space-between;align-items:center;font-weight:700;display:flex}.resa-recap-total .price{font-size:var(--text-2xl);color:var(--blue)}.resa-trust-badges{gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--gray-200);flex-direction:column;display:flex}.resa-trust-badge{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--gray-500);display:flex}.resa-trust-badge .fa{color:var(--green);font-size:12px}.resa-success-message,.payment-result-message{text-align:center;padding:var(--space-12) var(--space-8)}.resa-success-icon{width:72px;height:72px;margin:0 auto var(--space-5);background:#e8f8f0;border-radius:50%;justify-content:center;align-items:center;display:flex}.resa-success-icon .fa{color:var(--green);font-size:32px}.psc1-hero{color:#fff;text-align:center;background:linear-gradient(135deg,#1e40af 0%,#3b82f6 100%);border-radius:12px;margin:0 0 30px;padding:35px 25px;position:relative;overflow:hidden;box-shadow:0 4px 16px #0000001f}.hero-overlay{pointer-events:none;background:radial-gradient(circle at 20%,#ff66001f 0%,#0000 50%),radial-gradient(circle at 80%,#ff88331f 0%,#0000 50%);position:absolute;inset:0}.hero-content{z-index:1;max-width:900px;margin:0 auto;position:relative}.hero-badge{color:#1e40af;background:#fffffff2;border-radius:20px;align-items:center;gap:6px;margin-bottom:15px;padding:6px 16px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #0000001a}.hero-badge i{color:#f60;font-size:13px}.hero-title{color:#fff;text-shadow:0 2px 8px #00000026;margin:0 0 12px;font-size:36px;font-weight:800;line-height:1.2}.hero-subtitle{color:#fffffff2;max-width:650px;margin:0 auto 25px;font-size:16px;font-weight:400}.hero-benefits{flex-wrap:wrap;justify-content:center;gap:20px;margin-top:25px;display:flex}.benefit-item{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.benefit-icon{backdrop-filter:blur(10px);background:#ffffff26;border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex}.benefit-item:hover .benefit-icon{background:#ffffff40;transform:translateY(-3px);box-shadow:0 6px 12px #0003}.benefit-icon i{color:#fff;font-size:22px}.benefit-item span{color:#fff;font-size:12px;font-weight:600;line-height:1.3}.booking-progress{background:#fff;border-radius:12px;justify-content:center;align-items:center;max-width:600px;margin:0 auto 50px;padding:20px;display:flex;box-shadow:0 2px 8px #00000014}.progress-step{flex-direction:column;flex:1;align-items:center;gap:8px;display:flex;position:relative}.step-number{color:#9ca3af;background:#e5e7eb;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;transition:all .3s;display:flex}.progress-step.active .step-number{color:#fff;background:#014a99;transform:scale(1.1);box-shadow:0 0 0 4px #014a9926}.progress-step.completed .step-number{color:#fff;background:#059669}.step-label{color:#6b7280;font-size:13px;font-weight:600}.progress-step.active .step-label{color:#014a99;font-weight:700}.progress-line{background:#e5e7eb;width:80px;height:2px;margin:0 10px 25px}.progress-line--done{background:#059669}.progress-step.completed .step-label{color:#059669}.form-section{background:#fff;border-radius:12px;margin-bottom:30px;padding:40px;box-shadow:0 2px 12px #00000014}.section-header{text-align:center;margin-bottom:35px}.section-number{color:#fff;background:#f60;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:15px;font-size:18px;font-weight:700;display:inline-flex}.section-title{color:#1f2937;margin:0 0 10px;font-size:28px;font-weight:700}.section-description{color:#6b7280;margin:0;font-size:16px}.formations-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px;margin-bottom:40px;display:grid}.formations-grid-compact{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:15px}.formation-card{background:#fff;border:2px solid #e5e7eb;border-radius:12px;transition:all .3s;position:relative;overflow:hidden}.formation-card.compact{padding:0}.formation-card:not(.complet):hover{border-color:#f60;transform:translateY(-4px);box-shadow:0 8px 24px #ff660026}.formation-card.complet{opacity:.6;background:#f9fafb}.formation-card.selected{border-color:#f60;box-shadow:0 12px 28px #ff66002e}.formation-radio{opacity:0;pointer-events:none;position:absolute}.formation-radio:checked+.card-label{background:#fff8f5}.formation-radio:checked+.card-label:before{content:"";pointer-events:none;border:3px solid #f60;border-radius:10px;position:absolute;inset:0}.formation-card.compact .formation-radio:checked+.card-label:before{display:none}.card-badge{z-index:10;border-radius:20px;align-items:center;gap:5px;padding:6px 12px;font-size:12px;font-weight:700;display:flex;position:absolute;top:15px;right:15px}.formation-card.compact .card-badge{align-self:flex-start;margin:15px 20px 0;position:static}.badge-complet{color:#fff;background:#ef4444}.badge-urgent{color:#fff;background:#f59e0b;animation:2s ease-in-out infinite pulse-badge}.badge-warning{color:#92400e;background:#fef3c7;border:1px solid #fbbf24}@keyframes pulse-badge{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.card-content{position:relative}.card-label{cursor:pointer;padding:20px;transition:all .3s;display:block;position:relative}.card-label.compact-label{padding:18px 22px}.formation-card.compact .card-label.compact-label{padding-top:10px}.card-label.is-disabled{cursor:not-allowed;opacity:.7}.formation-card.complet .card-label{cursor:not-allowed}.card-header-info{margin-bottom:15px}.formation-date{color:#1f2937;align-items:center;gap:8px;margin-bottom:5px;font-size:18px;font-weight:700;display:flex}.formation-date i{color:#f60}.formation-date .date-text{flex-direction:column;gap:4px;display:flex}.formation-date .date-text span{color:#6b7280;font-size:13px;font-weight:600}.compact-main{justify-content:space-between;align-items:center;gap:20px;display:flex}.compact-date-block{flex:1.2}.compact-meta{color:#4b5563;flex-direction:column;flex:1.5;gap:8px;font-size:13px;display:flex}.meta-item{align-items:flex-start;gap:8px;display:flex}.meta-item i{color:#f60;margin-top:2px}.meta-text{line-height:1.4}.compact-price-action{flex-direction:column;flex:0 0 150px;align-items:flex-end;gap:8px;display:flex}.compact-cta{color:#92400e;background:#fef3c7;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:13px;font-weight:600;display:inline-flex}.compact-full{color:#ef4444;font-weight:700}.formation-card.selected .compact-cta{color:#fff;background:#10b981}.formation-type{color:#6b7280;font-size:14px;font-weight:600}.card-details{margin:15px 0}.detail-item{color:#4b5563;align-items:flex-start;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.detail-item i{color:#f60;flex-shrink:0;margin-top:2px}.detail-item.places{color:#10b981;font-weight:600}.card-price{border-top:2px dashed #e5e7eb;justify-content:space-between;align-items:center;margin-top:15px;padding-top:15px;display:flex}.price-label{color:#6b7280;font-size:14px;font-weight:600}.price-value{color:#f60;font-size:24px;font-weight:800}.card-action{padding:0 20px 20px}.btn-select-formation{color:#fff;cursor:pointer;background:#f60;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;padding:12px 20px;font-size:15px;font-weight:700;transition:all .3s;display:flex}.btn-select-formation:hover{background:#f83;transform:translateY(-2px);box-shadow:0 4px 12px #ff66004d}.formation-radio:checked~.card-action .btn-select-formation{background:#10b981}.formation-radio:checked~.card-action .btn-select-formation:hover{background:#059669}.reassurance-section{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border-radius:12px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:30px;padding:30px;display:grid}.reassurance-item{color:#1e40af;align-items:center;gap:12px;font-size:14px;display:flex}.reassurance-item i{color:#3b82f6;font-size:24px}.selected-formation-banner{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:center;gap:15px;margin-bottom:25px;padding:18px 22px;display:flex}.selected-formation-banner.is-empty{background:#f9fafb;border-color:#e5e7eb}.banner-icon{color:#1d4ed8;background:#dbeafe;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:20px;display:flex}.selected-formation-banner.is-empty .banner-icon{color:#6b7280;background:#e5e7eb}.banner-details{flex:1}.banner-title{color:#1f2937;margin:0 0 4px;font-weight:700}.banner-meta{color:#4b5563;margin:0;font-size:14px}.banner-price{color:#1e40af;margin-right:10px;font-size:20px;font-weight:700}.link-button{color:#1d4ed8;font-weight:600;font:inherit;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:0;display:inline-flex}.link-button.disabled{opacity:.5;cursor:not-allowed}.step-validation-alert{margin-bottom:25px}.form-grid{max-width:750px;margin:0 auto}.form-subsection{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:25px;padding:25px}.form-grid .form-group:has(.address-autocomplete-wrapper),.form-grid .form-group .address-autocomplete-wrapper{z-index:20;position:relative}.address-autocomplete-wrapper{display:block;position:relative}.address-autocomplete-suggestions{z-index:1000;background:#fff;border:2px solid #f60;border-top:none;border-radius:0 0 10px 10px;width:100%;max-height:260px;display:none;position:absolute;top:100%;left:0;overflow-y:auto;box-shadow:0 8px 20px #0000001f}.address-autocomplete-suggestions.active{display:block}.address-suggestion-item{cursor:pointer;border-bottom:1px solid #f3f4f6;padding:12px 16px;transition:all .2s}.address-suggestion-item:hover{background:#fff8f5;padding-left:22px}.address-suggestion-item strong{color:#1f2937;margin-bottom:4px;display:block}.address-suggestion-item small{color:#6b7280;font-size:13px}.form-subsection:last-of-type:not(.cgu-section){margin-bottom:25px}.subsection-title{color:#1f2937;border-bottom:2px solid #e5e7eb;align-items:center;gap:10px;margin:0 0 20px;padding-bottom:12px;font-size:16px;font-weight:700;display:flex}.subsection-title i{color:#f60;font-size:18px}.cgu-section{background:0 0;border:none;margin-bottom:0;padding:20px 0}.form-row{margin-bottom:20px}.form-row:last-child{margin-bottom:0}.form-row-2-cols{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.payment-methods{gap:15px;margin-bottom:30px;display:grid}.payment-option{position:relative}.payment-option input[type=radio]{opacity:0;position:absolute}.payment-option label{cursor:pointer;border:2px solid #e5e7eb;border-radius:12px;padding:20px;transition:all .3s;display:block}.payment-option.disabled label{opacity:.6;cursor:not-allowed}.payment-option.disabled input,.payment-option.disabled label{pointer-events:none}.payment-option input[type=radio]:checked+label{background:#fff8f5;border-color:#f60}.payment-header{color:#1f2937;align-items:center;gap:12px;margin-bottom:8px;font-size:18px;font-weight:700;display:flex}.payment-header i{color:#f60;font-size:24px}.badge-recommended{color:#fff;background:#10b981;border-radius:12px;margin-left:auto;padding:4px 12px;font-size:12px;font-weight:700}.payment-description{color:#6b7280;margin:0;padding-left:36px;font-size:14px}.payment-details{background:#f9fafb;border-radius:12px;margin-bottom:30px;padding:25px}.payment-security{grid-template-columns:auto 1fr;align-items:center;gap:25px;display:grid}.security-badges img{max-height:50px}.security-text h4{color:#1f2937;align-items:center;gap:8px;margin:0 0 12px;display:flex}.security-text ul{margin:0;padding:0;list-style:none}.security-text li{color:#4b5563;align-items:center;gap:8px;margin-bottom:6px;font-size:14px;display:flex}.security-text li i{color:#10b981}.form-navigation{justify-content:space-between;gap:15px;margin-top:30px;display:flex}.form-navigation .btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:14px 28px;font-size:16px;font-weight:700;transition:all .3s;display:flex}.btn-secondary{color:#4b5563;background:#e5e7eb}.btn-secondary:hover{background:#d1d5db}.btn-large{padding:16px 32px;font-size:18px}.checkout-wrapper{max-width:560px;margin:0 auto 60px;padding:0 16px}.checkout-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 6px #0000000d,0 20px 40px #014a991a}.checkout-back{color:#6b7280;align-items:center;gap:6px;padding:16px 24px 0;font-size:13px;font-weight:600;text-decoration:none;transition:color .2s;display:inline-flex}.checkout-back:hover{color:#014a99;text-decoration:none}.checkout-header{text-align:center;border-bottom:1px solid #f0f4f8;padding:20px 32px 28px}.checkout-lock-icon{background:linear-gradient(135deg,#014a99 0%,#0265cc 100%);border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;margin:0 auto 14px;display:flex;box-shadow:0 4px 12px #014a994d}.checkout-lock-icon i{color:#fff;font-size:22px}.checkout-title{color:#1f2937;margin:0 0 6px;font-size:20px;font-weight:700}.checkout-desc{color:#6b7280;margin:0 0 16px;font-size:14px}.checkout-amount-badge{color:#fff;letter-spacing:-.5px;background:linear-gradient(135deg,#014a99 0%,#0265cc 100%);border-radius:40px;padding:10px 28px;font-size:26px;font-weight:700;display:inline-block;box-shadow:0 4px 12px #014a9940}.checkout-express{padding:24px 24px 0}.checkout-divider{color:#9ca3af;align-items:center;gap:12px;margin:20px 0 0;font-size:13px;font-weight:600;display:flex}.checkout-divider:before,.checkout-divider:after{content:"";background:#e5e7eb;flex:1;height:1px}.checkout-form{padding:20px 24px 24px}.checkout-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:8px;margin:16px 0 0;padding:12px 16px;font-size:14px;display:flex}.checkout-error:before{content:"⚠"}.checkout-pay-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#014a99 0%,#0265cc 100%);border:none;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;margin-top:20px;padding:16px 24px;font-family:inherit;font-size:17px;font-weight:700;transition:all .2s;display:flex;box-shadow:0 4px 14px #014a9959}.checkout-pay-btn:hover:not(:disabled){background:linear-gradient(135deg,#013a7a 0%,#014a99 100%);transform:translateY(-1px);box-shadow:0 6px 20px #014a9973}.checkout-pay-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.checkout-footer-badges{color:#9ca3af;background:#f9fafb;border-top:1px solid #f0f4f8;justify-content:center;gap:20px;padding:16px 24px;font-size:12px;font-weight:600;display:flex}.checkout-footer-badges span{align-items:center;gap:5px;display:flex}.checkout-footer-badges i{color:#6b7280;font-size:14px}@media (width<=480px){.checkout-header{padding:16px 20px 20px}.checkout-form{padding:16px 16px 20px}.checkout-express{padding:16px 16px 0}.checkout-amount-badge{padding:8px 20px;font-size:22px}.checkout-footer-badges{gap:12px;font-size:11px}}.alt-payment-links{color:#9ca3af;justify-content:center;align-items:center;gap:10px;margin-top:14px;font-size:13px;display:flex}.alt-payment-links a{color:#6b7280;border-bottom:1px dashed #0000;align-items:center;gap:5px;padding:2px 0;text-decoration:none;transition:color .15s,border-color .15s;display:inline-flex}.alt-payment-links a:hover,.alt-payment-links a.active{color:#014a99;border-bottom-color:#014a99}.alt-payment-links a.disabled-link{color:#d1d5db;pointer-events:none}.alt-payment-panel{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;margin-top:18px;padding:18px}.alt-payment-notice{color:#f59e0b;margin-left:8px;font-size:11px;display:inline-block}.btn-block{text-align:center;justify-content:center;width:100%}.don-addon{background:#fafbff;border-top:1px solid #f0f4f8;border-bottom:1px solid #f0f4f8}.don-addon__toggle{cursor:pointer;color:#4b5563;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;padding:13px 24px;font-size:13px;font-weight:600;transition:color .15s;display:flex}.don-addon__toggle:hover{color:#014a99}.don-addon__chevron{margin-left:auto;font-size:11px;transition:transform .2s}.don-addon__chevron.open{transform:rotate(180deg)}.don-addon__panel{padding:0 24px 16px}.don-addon__desc{color:#6b7280;margin:0 0 12px;font-size:12px;line-height:1.5}.don-addon__amounts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.don-addon__btn{color:#374151;cursor:pointer;background:#fff;border:1.5px solid #d1d5db;border-radius:20px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s}.don-addon__btn:hover,.don-addon__btn.active{color:#014a99;background:#eef3fb;border-color:#014a99}.don-addon__custom-wrap{background:#fff;border:1.5px solid #d1d5db;border-radius:20px;align-items:center;gap:4px;padding:4px 12px;transition:border-color .15s;display:flex}.don-addon__custom-wrap:focus-within{border-color:#014a99}.don-addon__custom-prefix,.don-addon__custom-suffix{color:#6b7280;font-size:13px;font-weight:600}.don-addon__custom{color:#374151;-moz-appearance:textfield;background:0 0;border:none;outline:none;width:56px;font-size:13px;font-weight:600}.don-addon__custom::-webkit-outer-spin-button,.don-addon__custom::-webkit-inner-spin-button{-webkit-appearance:none}.don-addon__selected{color:#374151;align-items:center;gap:6px;margin:10px 0 0;font-size:12px;display:flex}.don-addon__clear{color:#9ca3af;font-size:12px;text-decoration:none}.don-addon__clear:hover{color:#ef4444}.promo-input-wrap{align-items:center;gap:10px;display:flex}.promo-input-wrap input[type=text]{text-transform:uppercase;letter-spacing:.05em;background:#fff;border:1.5px solid #d1d5db;border-radius:8px;outline:none;flex:1;height:44px;padding:0 14px;font-size:14px;font-weight:600;transition:border-color .15s,box-shadow .15s}.promo-input-wrap input[type=text]:focus{border-color:#014a99;box-shadow:0 0 0 3px #014a991a}.promo-input-wrap input[type=text]:disabled{color:#6b7280;background:#f3f4f6}.promo-msg{margin-top:8px;font-size:12.5px;display:block}.promo-msg--success{color:#059669}.promo-msg--error{color:#dc2626}.promo-msg--info{color:#6b7280}.promo-applied-state{color:#059669;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;align-items:center;gap:8px;margin-top:10px;padding:9px 14px;font-size:13px;font-weight:600;display:flex}.promo-remove{color:#9ca3af;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:2px 6px;font-size:12px;transition:color .15s}.promo-remove:hover{color:#ef4444}.checkout-promo-row{color:#6b7280;justify-content:space-between;align-items:center;padding:6px 0 0;font-size:12px;display:flex}.checkout-promo-code{color:#059669;font-weight:700}.checkout-promo-discount{color:#059669;margin-left:4px;font-weight:600}.checkout-amount-badge-original{color:#9ca3af;text-align:center;margin-top:-4px;margin-bottom:2px;font-size:13px;text-decoration:line-through;display:block}.modern-alert{border-radius:8px;align-items:flex-start;gap:12px;margin-bottom:20px;padding:15px 20px;display:flex}.modern-alert i{margin-top:2px;font-size:20px}.faq-section{background:#f9fafb;border-radius:12px;margin-top:60px;padding:40px 20px}.faq-title{text-align:center;color:#1f2937;margin-bottom:40px;font-size:32px;font-weight:700}.faq-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:25px;max-width:1200px;margin:0 auto;display:grid}.faq-item{background:#fff;border-radius:12px;padding:25px;box-shadow:0 2px 8px #0000000f}.faq-item h3{color:#1f2937;align-items:center;gap:10px;margin:0 0 12px;font-size:16px;display:flex}.faq-item h3 i{color:#f60}.faq-item p{color:#6b7280;margin:0;line-height:1.6}.booking-summary-sticky{z-index:1000;background:#fff;padding:15px;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #0000001a}.summary-content{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;display:flex}.summary-info{flex-direction:column;gap:4px;display:flex}.summary-info strong{color:#1f2937;font-size:14px}.summary-info span{color:#f60;font-size:18px;font-weight:800}.no-formations-section{max-width:900px;margin:0 auto}.iframe-container{border-radius:12px;width:100%;height:0;margin:30px 0;padding-bottom:120%;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.iframe-container iframe{border:0;width:100%;height:100%;position:absolute;top:0;left:0}@media (width<=768px){.psc1-hero{border-radius:8px;margin:0 0 25px;padding:30px 20px}.hero-badge{padding:5px 12px;font-size:11px}.hero-badge i{font-size:12px}.hero-title{font-size:28px}.hero-subtitle{margin-bottom:20px;font-size:14px}.hero-benefits{gap:15px}.benefit-icon{width:45px;height:45px}.benefit-icon i{font-size:20px}.benefit-item span{font-size:11px}.formations-grid,.formations-grid-compact{grid-template-columns:1fr}.form-section{padding:25px 20px}.section-title{font-size:24px}.form-subsection{margin-bottom:20px;padding:20px}.subsection-title{padding-bottom:10px;font-size:15px}.subsection-title i{font-size:16px}.form-row-2-cols{grid-template-columns:1fr}.payment-security{text-align:center;grid-template-columns:1fr}.security-badges{text-align:center}.form-navigation{flex-direction:column}.form-navigation .btn{justify-content:center;width:100%}.booking-progress{padding:15px}.compact-main{flex-direction:column;align-items:flex-start}.compact-price-action{align-items:flex-start;width:100%}.selected-formation-banner{flex-direction:column;align-items:flex-start;gap:10px}.banner-price{margin-right:0}.progress-line{width:40px;margin:0 5px}.step-label{font-size:11px}.faq-grid{grid-template-columns:1fr}}.form-grid .form-group{margin-bottom:0}.form-grid .form-group label.control-label,.form-grid .form-group p.control-label{color:#374151;font-size:14px;font-weight:600;float:none!important;text-align:left!important;width:100%!important;margin-bottom:8px!important;padding-left:0!important;padding-right:0!important}.form-grid .form-group>div[class*=col-],.form-grid .control-date>div[class*=col-]{float:none!important;width:100%!important;padding-left:0!important;padding-right:0!important}.form-grid .form-group label .text-danger,.form-grid .form-group p .text-danger{color:#ef4444;margin-left:2px}.form-grid .form-group input[type=text],.form-grid .form-group input[type=email],.form-grid .form-group input[type=tel],.form-grid .form-group input[type=number],.form-grid .form-group input[type=date],.form-grid .form-group select,.form-grid .form-group textarea{color:#1f2937;box-sizing:border-box;background:#fff;border:2px solid #e5e7eb;border-radius:8px;padding:12px 16px;font-size:15px;line-height:1.2;transition:all .3s;width:100%!important;max-width:100%!important}.form-grid .form-group select,.form-grid .form-group input[type=date]{height:auto;min-height:46px;padding-top:10px;padding-bottom:10px;line-height:normal}.form-grid .form-group input:focus,.form-grid .form-group select:focus,.form-grid .form-group textarea:focus{background:#fff;border-color:#f60;outline:none;box-shadow:0 0 0 3px #ff66001a}.form-grid .form-group input:hover:not(:focus),.form-grid .form-group select:hover:not(:focus),.form-grid .form-group textarea:hover:not(:focus){border-color:#d1d5db}.form-grid .form-group.has-error input,.form-grid .form-group.has-error select,.form-grid .form-group.has-error textarea{background:#fef2f2!important;border-color:#ef4444!important}.form-grid .form-group.has-error label,.form-grid .form-group.has-error p.control-label{color:#ef4444!important}.form-grid .form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23374151' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:40px}.form-grid .form-group .help-block{color:#6b7280;margin-top:6px;font-size:13px;display:block}.form-grid .form-group.has-error .help-block{color:#ef4444;font-weight:500}.form-grid .form-group input[type=checkbox]{cursor:pointer;margin-right:8px;transform:scale(1.1);width:auto!important;max-width:auto!important}.form-grid .form-group .checkbox{margin-bottom:0}.form-grid .form-group .checkbox label{cursor:pointer;color:#4b5563!important;width:auto!important;margin-bottom:0!important;padding:0!important;font-weight:500!important;display:inline!important}.form-grid .form-group .checkbox label a{color:#f60;font-weight:600;text-decoration:underline}.form-grid .form-group .checkbox label a:hover{color:#f83}.form-grid .form-group:after,.form-grid .form-row:after{content:"";clear:both;display:table}.help-text{color:#6b7280;margin-top:6px;font-size:13px}.form-note{color:#6b7280;margin:20px 0 0;font-size:13px}.form-note i{color:#ef4444;font-size:10px}