.elementor-kit-9{--e-global-color-primary:#1C244B;--e-global-color-secondary:#F3F5F8;--e-global-color-text:#324A6D;--e-global-color-accent:#467FF7;--e-global-color-c696dce:#FFFFFF;--e-global-color-14ef391:#C8D5DC;--e-global-color-764183d:#F9FAFD;--e-global-color-d6cea4e:#FFFFFF;--e-global-color-86b4fcd:#02010100;--e-global-color-57c8da2:#000000CC;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-size:65px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-font-style:normal;--e-global-typography-primary-text-decoration:none;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:0px;--e-global-typography-secondary-font-family:"Poppins";--e-global-typography-secondary-font-size:36px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-text-transform:capitalize;--e-global-typography-secondary-font-style:normal;--e-global-typography-secondary-text-decoration:none;--e-global-typography-secondary-line-height:1.1em;--e-global-typography-secondary-letter-spacing:0px;--e-global-typography-text-font-family:"Poppins";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-text-transform:none;--e-global-typography-text-font-style:normal;--e-global-typography-text-text-decoration:none;--e-global-typography-text-line-height:1.5em;--e-global-typography-text-letter-spacing:0px;--e-global-typography-accent-font-family:"Poppins";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:capitalize;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:1em;--e-global-typography-accent-letter-spacing:0px;--e-global-typography-392b9e0-font-family:"Poppins";--e-global-typography-392b9e0-font-size:22px;--e-global-typography-392b9e0-font-weight:600;--e-global-typography-392b9e0-text-transform:capitalize;--e-global-typography-392b9e0-font-style:normal;--e-global-typography-392b9e0-text-decoration:none;--e-global-typography-392b9e0-line-height:1.2em;--e-global-typography-392b9e0-letter-spacing:0px;--e-global-typography-c05b693-font-family:"Poppins";--e-global-typography-c05b693-font-size:22px;--e-global-typography-c05b693-font-weight:300;--e-global-typography-c05b693-text-transform:none;--e-global-typography-c05b693-font-style:normal;--e-global-typography-c05b693-text-decoration:none;--e-global-typography-c05b693-line-height:1.5em;--e-global-typography-c05b693-letter-spacing:0px;--e-global-typography-6558fb1-font-family:"Poppins";--e-global-typography-6558fb1-font-size:16px;--e-global-typography-6558fb1-font-weight:300;--e-global-typography-6558fb1-text-transform:none;--e-global-typography-6558fb1-font-style:normal;--e-global-typography-6558fb1-text-decoration:none;--e-global-typography-6558fb1-line-height:1.5em;--e-global-typography-6558fb1-letter-spacing:10px;--e-global-typography-92bce3b-font-family:"Poppins";--e-global-typography-92bce3b-font-size:16px;--e-global-typography-92bce3b-font-weight:500;--e-global-typography-92bce3b-text-transform:capitalize;--e-global-typography-92bce3b-font-style:italic;--e-global-typography-92bce3b-text-decoration:underline;--e-global-typography-92bce3b-line-height:1em;--e-global-typography-92bce3b-letter-spacing:0px;--e-global-typography-b2deeae-font-family:"Poppins";--e-global-typography-b2deeae-font-size:85px;--e-global-typography-b2deeae-font-weight:600;--e-global-typography-b2deeae-text-transform:none;--e-global-typography-b2deeae-font-style:normal;--e-global-typography-b2deeae-text-decoration:none;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-b2deeae-letter-spacing:0px;--e-global-typography-fb1a3e0-font-family:"Poppins";--e-global-typography-fb1a3e0-font-size:200px;--e-global-typography-fb1a3e0-font-weight:600;--e-global-typography-fb1a3e0-text-transform:none;--e-global-typography-fb1a3e0-font-style:normal;--e-global-typography-fb1a3e0-text-decoration:none;--e-global-typography-fb1a3e0-line-height:1.2em;--e-global-typography-fb1a3e0-letter-spacing:0px;--e-global-typography-397e168-font-family:"Poppins";--e-global-typography-397e168-font-size:16px;--e-global-typography-397e168-font-weight:400;--e-global-typography-397e168-text-transform:capitalize;--e-global-typography-397e168-font-style:italic;--e-global-typography-397e168-text-decoration:none;--e-global-typography-397e168-line-height:1.3em;--e-global-typography-397e168-letter-spacing:0px;--e-global-typography-71b5b38-font-family:"Poppins";--e-global-typography-71b5b38-font-size:16px;--e-global-typography-71b5b38-font-weight:300;--e-global-typography-71b5b38-text-transform:none;--e-global-typography-71b5b38-font-style:normal;--e-global-typography-71b5b38-text-decoration:line-through;--e-global-typography-71b5b38-line-height:1.5em;--e-global-typography-71b5b38-letter-spacing:0px;--e-global-typography-71b5b38-word-spacing:0em;--e-global-typography-f07fd2f-font-family:"Poppins";--e-global-typography-f07fd2f-font-size:16px;--e-global-typography-f07fd2f-font-weight:500;--e-global-typography-f07fd2f-text-transform:capitalize;--e-global-typography-f07fd2f-font-style:normal;--e-global-typography-f07fd2f-text-decoration:none;--e-global-typography-f07fd2f-line-height:1em;--e-global-typography-f07fd2f-letter-spacing:0px;background-color:var( --e-global-color-c696dce );}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{background-color:var( --e-global-color-secondary );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );border-width:1px 1px 1px 1px;}body.e-wc-message-notice .woocommerce-message .button:hover, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button:hover{background-color:var( --e-global-color-86b4fcd );background-image:var( --e-global-color-86b4fcd );}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{background-color:var( --e-global-color-86b4fcd );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-14ef391 );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{background-color:var( --e-global-color-86b4fcd );background-image:var( --e-global-color-86b4fcd );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );border-width:1px 1px 1px 1px;}body.e-wc-info-notice .woocommerce-info .button:hover, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-info .woocommerce-Button:hover, body.e-wc-info-notice .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .wc-block-components-notice-banner.is-info .woocommerce-Button:hover{background-color:var( --e-global-color-accent );background-image:var( --e-global-color-accent );}.elementor-kit-9 a{color:var( --e-global-color-accent );}.elementor-kit-9 a:hover{color:var( --e-global-color-primary );}.elementor-kit-9 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-392b9e0-font-family ), Sans-serif;font-size:var( --e-global-typography-392b9e0-font-size );font-weight:var( --e-global-typography-392b9e0-font-weight );text-transform:var( --e-global-typography-392b9e0-text-transform );font-style:var( --e-global-typography-392b9e0-font-style );text-decoration:var( --e-global-typography-392b9e0-text-decoration );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1650px;}.e-con{--container-max-width:1650px;--container-default-padding-top:0px;--container-default-padding-right:0px;--container-default-padding-bottom:0px;--container-default-padding-left:0px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{--error-message-text-color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );--error-message-normal-links-color:var( --e-global-color-accent );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );--message-message-icon-color:var( --e-global-color-accent );--message-buttons-normal-text-color:var( --e-global-color-c696dce );--message-buttons-hover-text-color:var( --e-global-color-accent );--message-buttons-hover-border-color:var( --e-global-color-accent );--message-border-type:solid;--message-border-color:var( --e-global-color-accent );--message-buttons-border-radius:50px 50px 50px 50px;--message-buttons-padding:12px 25px 12px 25px;}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message .restore-item, .e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, .e-wc-message-notice .woocommerce-message a:not([class]), .e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){--notice-message-normal-links-color:var( --e-global-color-accent );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{--info-message-text-color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );text-decoration:var( --e-global-typography-text-text-decoration );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );--info-message-icon-color:var( --e-global-color-accent );--info-buttons-normal-text-color:var( --e-global-color-accent );--info-buttons-hover-text-color:var( --e-global-color-c696dce );--info-buttons-hover-border-color:var( --e-global-color-accent );--info-border-type:solid;--info-buttons-border-radius:50px 50px 50px 50px;--info-buttons-padding:12px 25px 12px 25px;}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-9{--e-global-typography-primary-font-size:45px;--e-global-typography-secondary-font-size:25px;--e-global-typography-text-font-size:14px;--e-global-typography-accent-font-size:14px;--e-global-typography-c05b693-font-size:14px;--e-global-typography-6558fb1-font-size:14px;--e-global-typography-92bce3b-font-size:14px;--e-global-typography-b2deeae-font-size:65px;--e-global-typography-fb1a3e0-font-size:145px;--e-global-typography-397e168-font-size:14px;--e-global-typography-f07fd2f-font-size:14px;--e-global-typography-f07fd2f-line-height:2em;}.elementor-kit-9 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-kit-9{--e-global-typography-primary-font-size:28px;--e-global-typography-primary-line-height:1.1em;--e-global-typography-secondary-font-size:20px;--e-global-typography-392b9e0-font-size:18px;--e-global-typography-b2deeae-font-size:48px;--e-global-typography-b2deeae-line-height:1em;--e-global-typography-fb1a3e0-font-size:100px;--e-global-typography-fb1a3e0-line-height:1em;}.elementor-kit-9 h4{font-size:var( --e-global-typography-392b9e0-font-size );line-height:var( --e-global-typography-392b9e0-line-height );letter-spacing:var( --e-global-typography-392b9e0-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}body.e-wc-message-notice .woocommerce-message .button, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}
/* Start custom CSS *//* =========================================================
   HAPPYATMS - CHECKOUT OPTIONS / STEP 1
   ========================================================= */


/* =========================================================
   STEP 1 - MAIN CONTAINER
   ========================================================= */

#happyatms-checkout-options {
    width: 100%;
    margin-bottom: 25px;
}


/* =========================================================
   STEP 1 - HEADER
   ========================================================= */

#happyatms-checkout-options .happyatms-step-header {
    background: #343746;
    color: #ffffff;

    min-height: 58px;
    padding: 0 22px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    box-sizing: border-box;

    font-size: 16px;
    font-weight: 600;
}


/* Flecha */

#happyatms-checkout-options .happyatms-step-arrow {
    font-size: 20px;
    line-height: 1;
}


/* =========================================================
   STEP 1 - CONTENT
   ========================================================= */

#happyatms-checkout-options .happyatms-step-content {
    background: #ffffff;

    padding: 30px;

    border: 1px solid #e5e5e5;
    border-top: none;

    box-sizing: border-box;
}


/* =========================================================
   STEP 1 - TITLES
   ========================================================= */

#happyatms-checkout-options h3 {
    margin: 0 0 8px;

    color: #1e2a4a;

    font-size: 18px;
    font-weight: 600;
}


/* =========================================================
   STEP 1 - TEXT
   ========================================================= */

#happyatms-checkout-options p {
    margin: 0 0 18px;

    color: #666666;

    font-size: 14px;
}


/* =========================================================
   STEP 1 - LOGIN / REGISTER BLOCKS
   ========================================================= */

#happyatms-checkout-options .happyatms-login-option,
#happyatms-checkout-options .happyatms-register-option {
    padding: 5px 0 25px;
}


/* Separación entre Login y Register */

#happyatms-checkout-options .happyatms-register-option {
    margin-top: 25px;
    padding-top: 25px;

    border-top: 1px solid #eeeeee;
}


/* =========================================================
   STEP 1 - BUTTONS
   ========================================================= */

#happyatms-checkout-options .happyatms-checkout-button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-width: 150px;
    min-height: 46px;

    padding: 0 25px;

    background: #87c30f;
    color: #ffffff;

    border-radius: 4px;

    font-size: 14px;
    font-weight: 600;

    text-decoration: none;

    transition: all 0.2s ease;
}


/* Hover */

#happyatms-checkout-options .happyatms-checkout-button:hover {
    background: #72aa08;
    color: #ffffff;
}


/* Botón Register */

#happyatms-checkout-options .happyatms-checkout-button.secondary {
    background: #5b2475;
}


#happyatms-checkout-options .happyatms-checkout-button.secondary:hover {
    background: #461c5b;
}


/* =========================================================
   HIDE CHECKOUT WHILE USER IS NOT LOGGED IN
   ========================================================= */

body:not(.logged-in) form.checkout {
    display: none !important;
}


/* =========================================================
   STEP 1 - LOGIN SUCCESS MESSAGE
   ========================================================= */

#happyatms-checkout-options .happyatms-login-success {
    padding: 5px 0 10px;
}


#happyatms-checkout-options .happyatms-login-success h3 {
    margin: 0 0 8px;

    color: #1e2a4a;

    font-size: 18px;
    font-weight: 600;
}


#happyatms-checkout-options .happyatms-login-success p {
    margin: 0;

    color: #666666;

    font-size: 14px;
}


/* =========================================================
   HAPPYATMS - CHECKOUT STEP 2
   BILLING & DELIVERY DETAILS
   ========================================================= */


/* =========================================================
   STEP 2 - MAIN CONTAINER
   ========================================================= */

#happyatms-billing-step {
    width: 100%;
    margin-bottom: 25px;

    box-sizing: border-box;
}


/* =========================================================
   STEP 2 - HEADER
   ========================================================= */

#happyatms-billing-step .happyatms-step-header {
    background: #343746;
    color: #ffffff;

    min-height: 58px;
    padding: 0 22px;

    display: flex;
    align-items: center;
    justify-content: space-between;

    font-size: 16px;
    font-weight: 600;

    box-sizing: border-box;
}


/* Flecha */

#happyatms-billing-step .happyatms-step-arrow {
    font-size: 20px;
    line-height: 1;
}


/* =========================================================
   STEP 2 - CONTENT
   ========================================================= */

#happyatms-billing-step .happyatms-step-content {
    background: #ffffff;

    padding: 30px;

    border: 1px solid #e5e5e5;
    border-top: none;

    box-sizing: border-box;
}


/* =========================================================
   STEP 2 - SECTION TITLES
   ========================================================= */

#happyatms-billing-step .happyatms-section-title h3 {
    margin: 0 0 8px;

    color: #1e2a4a;

    font-size: 18px;
    font-weight: 600;
}


#happyatms-billing-step .happyatms-section-title p {
    margin: 0 0 25px;

    color: #666666;

    font-size: 14px;
}


/* =========================================================
   STEP 2 - SECTION DIVIDER
   ========================================================= */

#happyatms-billing-step .happyatms-section-divider {
    width: 100%;

    margin: 30px 0;

    border-top: 1px solid #eeeeee;
}


/* =========================================================
   STEP 2 - ADDRESS OPTIONS
   ========================================================= */

#happyatms-billing-step .happyatms-address-options {
    display: flex;

    flex-direction: column;

    gap: 15px;

    width: 100%;
}


/* =========================================================
   STEP 2 - ADDRESS OPTION
   ========================================================= */

#happyatms-billing-step .happyatms-address-option {
    position: relative;

    display: flex;

    align-items: flex-start;

    gap: 14px;

    width: 100%;

    padding: 20px;

    border: 1px solid #e2e2e2;

    border-radius: 4px;

    background: #ffffff;

    cursor: pointer;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease;

    box-sizing: border-box;
}


/* Hover */

#happyatms-billing-step .happyatms-address-option:hover {
    border-color: #87c30f;

    background: #fafdf5;
}


/* =========================================================
   STEP 2 - HIDDEN RADIO
   ========================================================= */

#happyatms-billing-step
.happyatms-address-option
input[type="radio"] {

    position: absolute;

    opacity: 0;

    pointer-events: none;
}


/* =========================================================
   STEP 2 - CUSTOM RADIO
   ========================================================= */

#happyatms-billing-step
.happyatms-radio-custom {

    position: relative;

    flex: 0 0 18px;

    width: 18px;
    height: 18px;

    margin-top: 2px;

    border: 2px solid #bdbdbd;

    border-radius: 50%;

    box-sizing: border-box;

    transition: all 0.2s ease;
}


/* Radio seleccionado */

#happyatms-billing-step
.happyatms-address-option
input[type="radio"]:checked
~ .happyatms-radio-custom {

    border-color: #87c30f;
}


/* Punto interior */

#happyatms-billing-step
.happyatms-address-option
input[type="radio"]:checked
~ .happyatms-radio-custom::after {

    content: "";

    position: absolute;

    top: 3px;
    left: 3px;

    width: 8px;
    height: 8px;

    background: #87c30f;

    border-radius: 50%;
}


/* =========================================================
   STEP 2 - OPTION TEXT
   ========================================================= */

#happyatms-billing-step
.happyatms-address-option-text {

    display: flex;

    flex-direction: column;

    gap: 7px;

    min-width: 0;

    color: #1e2a4a;

    font-size: 14px;

    line-height: 1.5;
}


/* Título */

#happyatms-billing-step
.happyatms-address-option-text strong {

    color: #1e2a4a;

    font-size: 15px;

    font-weight: 600;
}


/* =========================================================
   STEP 2 - SAVED ADDRESS
   ========================================================= */

#happyatms-billing-step
.happyatms-saved-address {

    display: block;

    color: #666666;

    font-size: 14px;

    line-height: 1.6;
}


/* =========================================================
   STEP 2 - NEW ADDRESS DESCRIPTION
   ========================================================= */

#happyatms-billing-step
.happyatms-new-address-description {

    display: block;

    color: #777777;

    font-size: 13px;

    line-height: 1.4;
}


/* =========================================================
   STEP 2 - SELECTED OPTION
   ========================================================= */

#happyatms-billing-step
.happyatms-address-option:has(
    input[type="radio"]:checked
) {

    border-color: #87c30f;

    background: #fafdf5;
}


/* =========================================================
   WOOCOMMERCE - NATIVE BILLING
   ========================================================= */

/*
 * We hide only the native Billing section when
 * the saved billing address is selected.
 *
 * We DO NOT hide the Elementor checkout column.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-billing-fields {

    transition: opacity 0.2s ease;
}


/*
 * Hide the native Billing title.
 *
 * Our custom Step 2 already contains the Billing Address
 * title.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-billing-fields > h3 {

    display: none !important;
}


/*
 * Remove unnecessary spacing from native Billing.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-billing-fields {

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   WOOCOMMERCE - NATIVE SHIPPING
   ========================================================= */

/*
 * Hide WooCommerce's native "Ship to a different address?"
 * title and checkbox.
 *
 * The checkbox itself remains in the DOM because our
 * JavaScript uses it to control WooCommerce.
 */

.elementor-widget-woocommerce-checkout-page
#ship-to-different-address {

    display: none !important;
}


/*
 * Hide the native Shipping title.
 *
 * Our custom Step 2 already contains "Shipping Address".
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-shipping-fields > h3 {

    display: none !important;
}


/*
 * Keep the native Shipping section clean.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-shipping-fields {

    margin: 0 !important;
}


/*
 * Shipping form spacing.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-shipping-fields
.shipping_address {

    margin-top: 20px;
}


/* =========================================================
   WOOCOMMERCE - REMOVE UNNECESSARY CHECKOUT SPACING
   ========================================================= */

/*
 * The native Billing/Shipping sections are controlled
 * by JavaScript. Avoid adding visual spacing around them.
 */

.elementor-widget-woocommerce-checkout-page
.woocommerce-billing-fields,
.elementor-widget-woocommerce-checkout-page
.woocommerce-shipping-fields {

    box-sizing: border-box;
}


/* =========================================================
   MOBILE - STEP 1
   ========================================================= */

@media (max-width: 767px) {

    #happyatms-checkout-options
    .happyatms-step-header {

        min-height: 52px;

        padding: 0 16px;

        font-size: 15px;
    }


    #happyatms-checkout-options
    .happyatms-step-content {

        padding: 22px 18px;
    }


    #happyatms-checkout-options
    .happyatms-checkout-button {

        width: 100%;
    }

}


/* =========================================================
   MOBILE - STEP 2
   ========================================================= */

@media (max-width: 767px) {

    #happyatms-billing-step
    .happyatms-step-header {

        min-height: 52px;

        padding: 0 16px;

        font-size: 15px;
    }


    #happyatms-billing-step
    .happyatms-step-content {

        padding: 22px 18px;
    }


    #happyatms-billing-step
    .happyatms-address-option {

        padding: 16px;
    }


    #happyatms-billing-step
    .happyatms-section-divider {

        margin: 25px 0;
    }


    #happyatms-billing-step
    .happyatms-section-title p {

        margin-bottom: 20px;
    }


    .elementor-widget-woocommerce-checkout-page
    .woocommerce-shipping-fields
    .shipping_address {

        margin-top: 16px;
    }

}
/* =========================================================
   HAPPYATMS - REMOVE EMPTY NATIVE BILLING CONTAINER
   ========================================================= */

/*
 * When the native Billing Details section is hidden,
 * also hide its empty WooCommerce parent column.
 *
 * This removes the white empty box without affecting
 * the Shipping form or Your Order.
 */

.woocommerce-checkout
.col-1:has(
    .woocommerce-billing-fields[style*="display: none"]
) {
    display: none !important;
}

/* =========================================================
   HAPPYATMS - STEP 4 / PAYMENT METHOD
   ========================================================= */


/* =========================================================
   STEP 4 HEADER
   ========================================================= */

#happyatms-payment-step-title {

    width: 100%;

    min-height: 58px;

    padding: 0 22px;

    box-sizing: border-box;

    background: #343746;

    color: #ffffff;

    display: flex;

    align-items: center;

    justify-content: space-between;

    font-size: 16px;

    font-weight: 600;

}


/* Flecha */

#happyatms-payment-step-title
.happyatms-step-arrow {

    font-size: 20px;

    line-height: 1;

}


/* =========================================================
   PAYMENT CONTAINER
   ========================================================= */

#payment {

    width: 100%;

    margin: 0 0 25px 0;

    padding: 30px;

    box-sizing: border-box;

    background: #ffffff;

    border: 1px solid #e5e5e5;

    border-top: none;

}


/* =========================================================
   PAYMENT OPTIONS TITLE
   ========================================================= */

#payment > .payment_methods {

    margin-top: 0;

}


/* =========================================================
   PAYMENT METHODS
   ========================================================= */

#payment ul.payment_methods {

    margin: 0;

    padding: 0;

    border: none;

}


/* =========================================================
   PAYMENT METHOD ITEMS
   ========================================================= */

#payment ul.payment_methods > li {

    border-color: #e5e5e5;

}


/* =========================================================
   ORDER NOTES
   ========================================================= */

.woocommerce-additional-fields {

    width: 100%;

    margin-top: 0;

    margin-bottom: 25px;

    padding: 25px;

    box-sizing: border-box;

    background: #ffffff;

    border: 1px solid #e5e5e5;

}


/* Order notes title */

.woocommerce-additional-fields
label {

    color: #1e2a4a;

    font-size: 14px;

    font-weight: 600;

}


/* Order notes textarea */

.woocommerce-additional-fields
textarea {

    width: 100%;

    min-height: 110px;

    box-sizing: border-box;

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    #happyatms-payment-step-title {

        min-height: 52px;

        padding: 0 16px;

        font-size: 15px;

    }


    #payment {

        padding: 22px 18px;

    }


    .woocommerce-additional-fields {

        padding: 22px 18px;

    }

}
/* =========================================================
   HAPPYATMS - SEPARAR PAYMENT OPTIONS / YOUR ORDER
   ========================================================= */


/* =========================================================
   PAYMENT OPTIONS
   Mover ligeramente hacia la izquierda
   ========================================================= */

.e-checkout__column-start {

    position: relative !important;

    left: -45px !important;

}


/* =========================================================
   YOUR ORDER
   Mover ligeramente hacia la derecha
   ========================================================= */

.e-checkout__column-end {

    position: relative !important;

    left: 45px !important;

}


/* =========================================================
   EVITAR QUE LOS CONTENEDORES INTERNOS CAMBIEN
   SU TAMAÑO ORIGINAL
   ========================================================= */

.e-checkout__column-start,
.e-checkout__column-end {

    box-sizing: border-box !important;

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .e-checkout__column-start,
    .e-checkout__column-end {

        left: 0 !important;

    }

}/* End custom CSS */