/* ===== FORM SECTION ===== */.form-section{min-height:100vh;padding:120px 0 var(--spacing-2xl);background:var(--bg-light)}.form-wrapper{max-width:900px;margin:0 auto;background:white;border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--spacing-2xl)}.form-header{text-align:center;margin-bottom:var(--spacing-xl)}.form-header h1{color:var(--text-dark);margin-bottom:var(--spacing-sm)}.form-header p{color:var(--text-light);font-size:1.125rem}/* ===== PROGRESS INDICATOR ===== */.form-progress{display:flex;align-items:center;justify-content:center;margin-bottom:var(--spacing-2xl);padding:0 var(--spacing-xl)}.progress-step{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);position:relative;z-index:1}.step-number{width:50px;height:50px;border-radius:50%;background:var(--border-color);color:var(--text-light);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.25rem;transition:all var(--transition-base)}.progress-step.active .step-number{background:linear-gradient(135deg, var(--primary-color), var(--primary-dark));color:white;box-shadow:var(--shadow-md)}.progress-step.completed .step-number{background:var(--success-color);color:white}.step-label{font-size:0.875rem;color:var(--text-light);font-weight:500}.progress-step.active .step-label{color:var(--primary-color);font-weight:600}.progress-line{flex:1;height:3px;background:var(--border-color);margin:0 var(--spacing-sm);position:relative;top:-12px}/* ===== FORM CONTAINER ===== */.form-container{position:relative}.form-step{display:none;animation:fadeIn 0.3s ease-in-out}.form-step.active{display:block}.form-step h2{margin-bottom:var(--spacing-xl);color:var(--text-dark)}/* ===== FORM GROUPS ===== */.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:600;color:var(--text-dark)}.form-group input[type="text"],.form-group input[type="email"],.form-group input[type="tel"],.form-group input[type="date"],.form-group input[type="password"],.form-group select,.form-group textarea{width:100%;padding:0.875rem 1rem;border:2px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;font-family:var(--font-primary);transition:all var(--transition-base);background:white}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(255, 107, 53, 0.1)}.form-group textarea{min-height:120px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}/* ===== CHECKBOX & RADIO ===== */.checkbox-group{display:flex;align-items:flex-start;gap:var(--spacing-sm)}.checkbox-group input[type="checkbox"]{margin-top:0.25rem;width:20px;height:20px;cursor:pointer}.checkbox-group label{margin:0;font-weight:400;cursor:pointer}.checkbox-group a{color:var(--primary-color);text-decoration:underline}/* ===== PACK SELECTION ===== */.pack-selection{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:var(--spacing-lg);margin-top:1.5rem;margin-bottom:var(--spacing-xl)}.inscription-pack-family{min-width:0}.inscription-hours-selector{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:0.45rem;margin:1rem 0 1.25rem}.inscription-pack-family[data-family$="-auto"] .inscription-hours-selector{grid-template-columns:repeat(2, minmax(0, 1fr))}.inscription-hours-option{min-height:3.4rem;border:1px solid #d9dee8;border-radius:0.65rem;background:#fff;color:var(--text-dark);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1.05;transition:border-color var(--transition-base),background var(--transition-base),color var(--transition-base)}.inscription-hours-option strong{font-size:1.15rem}.inscription-hours-option span{font-size:0.72rem}.inscription-hours-option:hover,.inscription-hours-option.selected{border-color:var(--primary-color);background:var(--primary-color);color:#fff}@media (max-width: 640px){.pack-selection{grid-template-columns:1fr}.inscription-hours-selector{grid-template-columns:repeat(4, minmax(0, 1fr))}}.pack-option{position:relative;border:3px solid var(--border-color);border-radius:var(--radius-xl);padding:var(--spacing-lg);transition:all var(--transition-base);cursor:pointer}.pack-option:hover{border-color:var(--primary-color);transform:translateY(-5px);box-shadow:var(--shadow-lg)}.pack-option input[type="radio"]{position:absolute;opacity:0;pointer-events:none}.pack-option input[type="radio"]:checked + label{cursor:default}.pack-option input[type="radio"]:checked ~ label::before{content:'';position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:30px;height:30px;background:var(--success-color);border-radius:50%;display:flex;align-items:center;justify-content:center}.pack-option input[type="radio"]:checked ~ label::after{content:'\f00c';font-family:'Font Awesome 6 Free';font-weight:900;position:absolute;top:26px;right:26px;color:white;font-size:0.875rem;z-index:1}.pack-option.featured{border-color:var(--primary-color);background:linear-gradient(135deg, rgba(255, 107, 53, 0.05), rgba(255, 107, 53, 0.02))}.pack-option-badge{position:absolute;top:-12px;left:50%;transform:translateX(-50%);background:linear-gradient(135deg, var(--primary-color), var(--primary-dark));color:white;padding:0.375rem 1rem;border-radius:var(--radius-lg);font-size:0.875rem;font-weight:600}.pack-option label{cursor:pointer;display:block}.pack-option-vehicle,.transmission-vehicle{height:112px;margin-bottom:1rem;border-radius:12px;background:#f8fafc;overflow:hidden;display:flex;align-items:center;justify-content:center}.pack-option-vehicle img,.transmission-vehicle img{width:100%;height:100%;object-fit:contain;padding:0.35rem;display:block}.pack-option-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.pack-option h3{font-size:1.5rem;color:var(--text-dark)}.pack-option-price{font-size:2rem;font-weight:700;color:var(--primary-color)}.pack-option-price.free{color:#078a55;font-size:1.45rem;white-space:nowrap}.pack-option p{color:var(--text-light);margin-bottom:var(--spacing-md)}.pack-option ul{list-style:none;padding:0}.pack-option ul li{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) 0;color:var(--text-dark)}.pack-option ul li i{color:var(--success-color)}.inscription-price-display{display:none}@media (max-width: 760px){.pack-selection{gap:1rem;margin-top:1rem}.pack-option.mobile-pack-card{padding:18px 16px 16px;border:2px solid #f3c5dc;border-radius:22px;background:#fff;box-shadow:0 5px 16px rgba(20, 20, 31, 0.06);cursor:default}.pack-option.mobile-pack-card:hover{transform:none;box-shadow:0 5px 16px rgba(20, 20, 31, 0.06)}.pack-option.mobile-pack-card label{display:flex;flex-direction:column;cursor:default}.pack-option.mobile-pack-card .pack-option-header{order:1;display:block;margin:4px 0 10px}.pack-option.mobile-pack-card .pack-option-header h3{max-width:100%;margin:0;color:#151521;font-size:clamp(1.35rem, 7vw, 1.72rem);line-height:1.12;letter-spacing:0}.pack-option.mobile-pack-card .pack-option-header .pack-option-price{display:none}.pack-option.mobile-pack-card .pack-option-vehicle{order:2;height:102px;margin:0 0 12px;border:1px solid #e9e9ee;border-radius:18px;background:#fafafd}.pack-option.mobile-pack-card > label > p{order:3;margin:0 0 10px;color:#68738a;font-size:0.91rem;font-weight:500;line-height:1.3;white-space:nowrap}.pack-option.mobile-pack-card .inscription-hours-selector{order:4;margin:2px 0 12px}.pack-option.mobile-pack-card .inscription-hours-option{min-height:52px;border-radius:999px}.pack-option.mobile-pack-card .inscription-hours-option.selected{background:#ec268f;border-color:#ec268f;box-shadow:0 8px 18px rgba(236, 38, 143, 0.18)}.pack-option.mobile-pack-card [data-mobile-price-container]{order:5}.pack-option.mobile-pack-card .pack-features{order:6}.pack-option-badge{position:static;order:-1;align-self:flex-start;width:max-content;max-width:calc(100% - 8px);margin:-1px 0 8px;padding:0.42rem 0.74rem;transform:none;border:1px solid #f3c5dc;border-radius:999px;background:#fff2f8;color:#c91670;font-size:0.72rem;font-weight:800}.inscription-price-display{display:block;margin:2px 0 0;padding:15px 16px;border:1px solid #e7e7ec;border-radius:18px;background:#f7f7f9;color:#151521}.inscription-price-top-row{display:grid;grid-template-columns:minmax(0, 1fr) max-content;gap:10px;align-items:start}.inscription-price-top-row > div{display:grid;gap:3px}.inscription-price-top-row strong,.inscription-price-top-row span,.inscription-public-price del{white-space:nowrap}.inscription-price-top-row strong{font-size:0.9rem;line-height:1.15}.inscription-price-top-row span,.inscription-public-price span{color:#68738a;font-size:0.74rem;font-weight:600}.inscription-public-price{justify-items:end}.inscription-public-price del{font-weight:800;text-decoration-thickness:2px;text-decoration-color:#ec268f}.inscription-promo-price{margin-top:7px;color:#ec268f;font-size:clamp(2.5rem, 14vw, 3.55rem);font-weight:800;line-height:1}.inscription-price-display.regular,.inscription-price-display.free{display:flex;align-items:center;justify-content:space-between;gap:14px}.inscription-price-display.regular span,.inscription-price-display.free span{color:#68738a;font-size:0.8rem;font-weight:700}.inscription-price-display.regular strong,.inscription-price-display.free strong{color:#ec268f;font-size:2rem;line-height:1}.inscription-price-display.free strong{color:#078a55;font-size:1.45rem}.pack-option.mobile-pack-card > .mobile-pack-select{margin-top:14px}.pack-option.mobile-pack-card input[type="radio"]:checked ~ label::before,.pack-option.mobile-pack-card input[type="radio"]:checked ~ label::after{display:none}}/* ===== ORDER SUMMARY ===== */.order-summary{background:var(--bg-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.order-summary h3{margin-bottom:var(--spacing-md);color:var(--text-dark)}.summary-item{display:flex;justify-content:space-between;padding:var(--spacing-sm) 0;color:var(--text-dark)}.summary-item span:last-child{font-weight:600}.summary-divider{height:2px;background:var(--border-color);margin:var(--spacing-md) 0}.summary-item.total{font-size:1.25rem;font-weight:700}.summary-item.total span:last-child{color:var(--primary-color);font-size:1.5rem}/* ===== PAYMENT METHODS ===== */.payment-methods{margin-bottom:var(--spacing-xl)}.payment-methods h3{margin-bottom:var(--spacing-md);color:var(--text-dark)}.payment-option{position:relative;margin-bottom:var(--spacing-md)}.payment-option input[type="radio"]{position:absolute;opacity:0;pointer-events:none}.payment-option label{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base)}.payment-option label:hover{border-color:var(--primary-color);background:rgba(255, 107, 53, 0.05)}.payment-option input[type="radio"]:checked + label{border-color:var(--primary-color);background:rgba(255, 107, 53, 0.1)}.payment-option label i{font-size:1.5rem;color:var(--primary-color)}.payment-option label span{font-weight:600;color:var(--text-dark)}/* ===== STRIPE CARD ELEMENT ===== */.card-payment-block{margin-top:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-light);border-radius:var(--radius-lg);display:none}.card-payment-block.active{display:block}.stripe-card-element{padding:0.875rem 1rem;border:2px solid var(--border-color);border-radius:var(--radius-md);background:white;transition:border var(--transition-base)}.stripe-card-element.StripeElement--focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(255, 107, 53, 0.1)}.stripe-card-errors{color:var(--error-color);font-size:0.875rem;margin-top:var(--spacing-xs);min-height:20px}.payment-feedback{margin-top:var(--spacing-md);padding:var(--spacing-sm);border-radius:var(--radius-md);font-size:0.875rem;display:none}.payment-feedback.success{display:block;background:rgba(6, 214, 160, 0.1);color:var(--success-color);border:1px solid var(--success-color)}.payment-feedback.error{display:block;background:rgba(239, 68, 68, 0.1);color:var(--error-color);border:1px solid var(--error-color)}.payment-feedback.processing{display:block;background:rgba(255, 107, 53, 0.1);color:var(--primary-color);border:1px solid var(--primary-color)}.card-info-box{border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;background:white}.stripe-split-card{display:grid;gap:0.5rem;padding:0.75rem 1rem}.stripe-split-row{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem;border-top:1px solid #f1f5f9;padding-top:0.5rem}.stripe-split-card .stripe-card-element{border:1px solid #e0e0e0;border-radius:6px;padding:0.75rem 1rem;background:#fff}.stripe-split-card .stripe-card-element:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(236, 72, 153, 0.15)}.mock-card-input{width:100%;border:none;font-size:1rem;padding:0.35rem 0;background:transparent}.mock-card-input:focus{outline:none}/* ===== FORM ACTIONS ===== */.form-actions{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl);padding-top:var(--spacing-xl);border-top:2px solid var(--border-color)}.form-actions button{min-width:150px}/* ===== ANIMATIONS ===== */@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}/* ===== RESPONSIVE ===== */@media (max-width: 768px){.form-wrapper{padding:var(--spacing-lg)}.form-progress{padding:0}.step-label{font-size:0.75rem}.step-number{width:40px;height:40px;font-size:1rem}.progress-line{margin:0 var(--spacing-xs)}.form-row{grid-template-columns:1fr}.pack-selection{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}/* ===== STEP SUBTITLE ===== */.step-subtitle{text-align:center;color:var(--primary-color);font-size:1.125rem;font-weight:500;margin-top:-1rem;margin-bottom:3.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg, rgba(236, 72, 153, 0.08), rgba(236, 72, 153, 0.03));border-radius:var(--radius-lg);border-left:4px solid var(--primary-color);line-height:1.6}/* ===== SKIP OPTION ===== */.skip-option{text-align:center;margin-top:var(--spacing-lg);padding-top:var(--spacing-md);border-top:1px solid var(--border-color)}.skip-link{color:var(--text-light);font-size:0.875rem;text-decoration:none;opacity:0.7;transition:opacity 0.2s ease}.skip-link:hover{opacity:1;text-decoration:underline}/* ===== LARGE BUTTON ===== */#inscriptionForm .registration-transmission-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem}#inscriptionForm .inscription-pack-family[data-family="express"]{grid-column:1}#inscriptionForm .registration-transmission-grid > label,#inscriptionForm .registration-transmission-grid > label > div{min-width:0}#inscriptionForm .registration-transmission-grid > label > div{flex:1}#inscriptionForm .file-selected-name{max-width:100%;overflow-wrap:anywhere}@media (max-width: 600px){#inscriptionForm .registration-transmission-grid{grid-template-columns:minmax(0, 1fr)}}.inscription-pack-family[data-family="express"] .inscription-hours-selector{grid-template-columns:repeat(5, minmax(0, 1fr))}.inscription-pack-family[data-family="express-auto"] .inscription-hours-selector{grid-template-columns:repeat(4, minmax(0, 1fr))}.inscription-pack-family .info-tooltip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-left:6px;border:1px solid #cbd5e1;border-radius:50%;background:#f8fafc;color:#64748b;font-size:14px;cursor:help}.inscription-pack-family .tooltip-text{position:absolute;z-index:20;top:calc(100% + 8px);right:0;width:230px;max-width:calc(100vw - 60px);padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:#475569;font-size:14px;line-height:1.5;visibility:hidden;opacity:0;pointer-events:none;box-shadow:0 8px 20px rgba(0, 0, 0, .1)}.inscription-pack-family .info-tooltip:hover .tooltip-text,.inscription-pack-family .info-tooltip:focus .tooltip-text{visibility:visible;opacity:1}.btn-large{padding:1rem 2rem;font-size:1.1rem}