/**
 * Theme Name:     Hello Elementor Child
 * Author:         Elementor Team
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 */

/* =====================
   Classic Checkout Styling
   ===================== */

/* Overall layout */
.woocommerce-checkout .woocommerce {
    max-width: 1100px;
    margin: 0 auto;
}

/* Hide the "Additional information" section header and order notes for NHS bookers */
.woocommerce-additional-fields__field-wrapper {
    margin-top: 0;
}

/* Form fields */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
    border: 1px solid #d0d0d0;
    border-radius: 6px;
    padding: 12px 14px;
    font-size: 15px;
    width: 100%;
    transition: border-color 0.2s;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
    border-color: #333;
    outline: none;
    box-shadow: none;
}

/* Labels */
.woocommerce form .form-row label {
    font-size: 14px;
    color: #555;
    font-weight: 400;
    margin-bottom: 6px;
}

/* Section headings */
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
#order_review_heading {
    font-weight: 500;
    font-size: 1.3em;
    color: #333;
    border-bottom: 1px solid #e5e5e5;
    padding-bottom: 10px;
    margin-bottom: 20px;
}

/* Order review table */
.woocommerce table.shop_table {
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    overflow: hidden;
    border-collapse: separate;
}

.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
    border-top: 1px solid #e5e5e5;
    padding: 14px 16px;
    font-size: 14px;
}

.woocommerce table.shop_table thead th {
    background: #f9f9f9;
    font-weight: 500;
    color: #333;
}

/* Payment box */
.woocommerce-checkout #payment {
    background: #f9f9f9;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    padding: 20px;
}

.woocommerce-checkout #payment div.payment_box {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    padding: 14px;
    color: #555;
    font-size: 14px;
}

.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: #e5e5e5;
}

/* Place order button */
.woocommerce #payment #place_order {
    background: #b9a929;
    color: #fff;
    border: none;
    border-radius: 6px;
    padding: 14px 30px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s;
    float: right;
}

.woocommerce #payment #place_order:hover {
    background: #a89624;
}

/* NHS voucher field styling */
.nhs-voucher-field {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #e5e5e5;
}

/* Privacy text */
.woocommerce-privacy-policy-text p {
    font-size: 13px;
    color: #777;
}

/* Required asterisk */
.woocommerce form .form-row .required {
    color: #b9a929;
}

/* Page title */
.woocommerce-checkout .entry-title {
    font-weight: 500;
    font-size: 1.8em;
    margin-bottom: 30px;
}

/* Links */
.woocommerce-checkout a,
.woocommerce-checkout .woocommerce-privacy-policy-text a {
    color: #b9a929;
}

.woocommerce-checkout a:hover {
    color: #a89624;
}

/* Payment method label when selected */
.woocommerce-checkout #payment ul.payment_methods li input[type="radio"]:checked + label {
    color: #b9a929;
}