*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{align-items:flex-start;background-color:#f5f5f5;color:#333;display:flex;font-family:Arial,sans-serif;justify-content:center;min-height:100vh;padding:24px}.main_form_section{background-color:#fff;border:1px solid #eee;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.08);max-width:440px;padding:24px;width:100%}.main_form{display:grid;gap:18px}.main_form h2{color:#333;font-size:20px;font-weight:700;margin-bottom:4px;text-align:left}.form-group{margin-bottom:16px}.form-group label{color:#444;display:block;font-size:14px;font-weight:700;margin-bottom:6px}.form-group label.required:after{color:#d93025;content:" *";font-weight:700}.form-group input,.form-group select,.form-group textarea{background:#fff;border:1px solid #ddd;border-radius:6px;color:#333;font-size:14px;line-height:1.4;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-group textarea{min-height:110px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4caf50;box-shadow:0 0 0 3px rgba(76,175,80,.15);outline:none}.form-group ::placeholder{color:#9aa0a6}.form-group select:invalid{color:#9aa0a6}button[type=submit]{background-color:#3d506b;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:700;padding:12px;transition:background-color .2s ease,transform .02s ease;width:100%}button[type=submit]:hover{background-color:#31445e}button[type=submit]:active{transform:translateY(1px)}.payment_section{border-top:1px solid #eee;color:#555;font-size:14px;margin-top:8px;padding-top:12px}.help-text{color:#6b7280}.error-text,.help-text{font-size:12px;margin-top:6px}.error-text{color:#d93025}.product_area{margin-top:8px}.product_area__title{color:#333;font-size:16px;font-weight:700;margin:6px 0 10px}.product_row{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 0 rgba(0,0,0,.02);display:grid;gap:16px;grid-template-columns:1fr auto auto;padding:14px}.product_row+.product_row{margin-top:10px}.product_left{align-items:center;cursor:pointer;display:grid;gap:12px;grid-template-columns:auto 1fr}.product_left input[type=checkbox]{height:22px;margin:0;opacity:0;position:absolute;width:22px}.product_left .fakebox{background:#fff;border:2px solid #cbd5e1;border-radius:6px;display:inline-block;height:22px;transition:all .15s ease;width:22px}.product_left input[type=checkbox]:checked+.fakebox{background:#3d506b;border-color:#3d506b;box-shadow:0 0 0 3px rgba(61,80,107,.12)}.product_left input[type=checkbox]:checked+.fakebox:after{border:2px solid #fff;border-right:0;border-top:0;content:"";display:block;height:6px;margin:4px auto 0;transform:rotate(-45deg);width:10px}.product_name{color:#3a3a3a;font-size:16px;font-weight:700;line-height:1.25}.qty_stepper{align-items:center;border:1px solid #e5e7eb;border-radius:8px;display:grid;grid-template-columns:28px 48px 28px;overflow:hidden}.qty_stepper input[type=number]{-moz-appearance:textfield;border:0;font-size:15px;padding:8px 6px;text-align:center;width:48px}.qty_stepper input::-webkit-inner-spin-button,.qty_stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.qty_btn{background:#f3f4f6;border:0;cursor:default;font-size:18px;font-weight:700;padding:6px 0}.product_price{color:#333;font-weight:700;letter-spacing:.2px;min-width:84px;text-align:right}.product_row.is-disabled{opacity:.75}.product_row.is-disabled .product_price{color:#9aa0a6}.order_summary{margin-top:16px}.order_summary__title{color:#333;font-size:16px;font-weight:700;margin:14px 0 10px}.order_card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 1px 0 rgba(0,0,0,.02);padding:14px}.order_row{align-items:center;color:#444;display:flex;font-size:15px;justify-content:space-between;padding:6px 2px}.order_divider{border-top:1px dashed #e5e7eb;margin:8px 0}.order_row--total{color:#31445e;font-size:17px;font-weight:800}.pay-with-paypal{margin-top:12px}.pay-with-paypal .paypal-buttons{width:100%}.or-divider{font-size:14px}#calendar-offer{background:#fafafa;border:1px dashed #e5e7eb;border-radius:8px;padding:12px}.calendar-options{display:flex;gap:20px;margin-top:8px}#calendar-offer label{color:#333;font-weight:600}