*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:20px}.payment-wrapper{background:#fff;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.1);overflow:hidden;display:grid;grid-template-columns:1fr 400px;gap:0;min-height:600px}.payment-form{padding:40px}.form-header{margin-bottom:30px}.form-header h1{font-size:28px;font-weight:600;color:#2c3e50;margin-bottom:8px}.payment-methods{display:flex;gap:12px;margin-bottom:30px}.payment-method{padding:12px 20px;border:2px solid #e1e8ed;border-radius:8px;background:#fff;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.payment-method.active{border-color:#3498db;background:#f8fafc}.payment-method:hover{border-color:#3498db}.visa-logo{width:40px;height:25px;background:linear-gradient(45deg,#1a1f71,#006fcf);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:bold;font-size:12px}.mastercard-logo{width:40px;height:25px;background:linear-gradient(45deg,#eb001b,#ff5f00);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:bold;font-size:10px}.form-row{display:flex;gap:16px;margin-bottom:20px}.form-group{flex:1}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#2c3e50}.form-group input,.form-group select{width:100%;padding:12px 16px;border:2px solid #e1e8ed;border-radius:8px;font-size:16px;transition:border-color .2s;background:#fff}.form-group input:focus,.form-group select:focus{outline:0;border-color:#3498db}.form-group input.error{border-color:#e74c3c}.error-message{color:#e74c3c;font-size:14px;margin-top:4px}.required{color:#e74c3c}.cvv-info{position:relative;cursor:help}.cvv-tooltip{position:absolute;top:-35px;right:0;background:#2c3e50;color:#fff;padding:8px 12px;border-radius:4px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s}.cvv-info:hover .cvv-tooltip{opacity:1;visibility:visible}.booking-summary{background:#f8fafc;padding:40px;border-left:1px solid #e1e8ed}.summary-section{margin-bottom:30px}.summary-section h2{font-size:20px;font-weight:600;color:#2c3e50;margin-bottom:16px}.itinerary-item{background:#fff;padding:20px;border-radius:8px;margin-bottom:16px;border:1px solid #e1e8ed}.itinerary-header{display:flex;justify-content:between;align-items:center;margin-bottom:12px}.destination{font-size:18px;font-weight:600;color:#2c3e50}.dates{color:#7f8c8d;font-size:14px}.itinerary-details{display:flex;flex-direction:column;gap:8px}.detail-row{display:flex;justify-content:space-between;align-items:center}.detail-label{color:#7f8c8d;font-size:14px}.detail-value{font-weight:500;color:#2c3e50}.booking-info{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px}.booking-info h3{font-size:16px;font-weight:600;color:#2c3e50;margin-bottom:12px}.info-row{display:flex;justify-content:space-between;margin-bottom:8px}.info-label{color:#7f8c8d;font-size:14px}.info-value{font-weight:500;color:#2c3e50}.price-breakdown{background:#fff;padding:20px;border-radius:8px;margin-bottom:20px}.price-row{display:flex;justify-content:space-between;margin-bottom:12px}.price-row.total{border-top:2px solid #e1e8ed;padding-top:12px;margin-top:12px;font-weight:600;font-size:18px}.amount-due{background:#dbdeee;padding:16px;border-radius:8px;border:1px solid #001489}.amount-due-label{color:#001489;font-size:14px;margin-bottom:4px}.amount-due-value{font-size:24px;font-weight:700;color:#001489}.terms-notice{font-size:12px;color:#7f8c8d;line-height:1.5;margin-bottom:20px}.terms-notice a{color:#3498db;text-decoration:none}.terms-notice a:hover{text-decoration:underline}.company-logo{margin-bottom:30px;text-align:center;padding-bottom:20px;border-bottom:1px solid #e1e8ed}.submit-button{width:100%;padding:16px;background:#001489;color:#fff;border:0;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:background-color .2s}.submit-button:hover{background:#001489}.submit-button:disabled{background:#95a5a6;cursor:not-allowed}.secure-notice{display:flex;align-items:center;gap:8px;margin-top:16px;color:#7f8c8d;font-size:12px}.lock-icon{width:16px;height:16px;fill:#27ae60}@media(max-width:768px){.payment-wrapper{grid-template-columns:1fr;gap:0}.payment-form,.booking-summary{padding:20px}.form-row{flex-direction:column}}.form-check{display:flex;align-items:flex-start;margin-bottom:.75rem}.form-check-input[type="checkbox"]{margin-top:.2em;margin-right:.75em;flex-shrink:0;width:1rem}.form-check-label{flex:1;margin-bottom:0;cursor:pointer}