/** >>> COMMON **/
.woocommerce-password-strength {
  font-weight: bold;
}

.woocommerce-password-strength:not(.good):not(.strong) {
  color: #dc3545;
}

.woocommerce-password-strength.good,
.woocommerce-password-strength.strong {
  color: #28a745;
}

.npa-container > .npa-row {
    display: flex;
    margin: 0 -1rem;
}

.npa-container > .npa-row > .npa-column {
    flex-grow: 1;
    margin: 0 1rem;
    width: 50%;
}

div.woocommerce-info:before,
div.woocommerce-message:before {
    content: unset;
}

.woocommerce-message-info {
    background-color: #d1ecf1;
    padding: 1rem;
    color: #0c5460;
    border: 1px solid #bee5eb;
    border-radius: 4px;
    margin-bottom: 1rem;
}

.woocommerce-notices-wrapper > div.cart-empty.woocommerce-info,
.woocommerce-notices-wrapper ~ div.cart-empty.woocommerce-info {
    display: block;
    float: none;
    width: 100%;
    padding: 0 1rem;
    height: auto;
    border-radius: 4px;
}

span.woocommerce-input-wrapper input,
span.woocommerce-input-wrapper textarea,
select.woocommerce-select,
.selection > span.select2-selection,
input.input-text[type=text],
input.input-text[type=email],
input.input-text[type=password] {
    border-radius: 4px;
    border: 1px solid #a2aeb6;
}

span.woocommerce-input-wrapper input::placeholder,
span.woocommerce-input-wrapper textarea::placeholder,
select.woocommerce-select:not(:checked),
input.input-text[type=text]::placeholder,
input.input-text[type=email]::placeholder,
input.input-text[type=password]::placeholder {
    color: #a2aeb6;
}

.select2-container--default .select2-selection__arrow b,
.select2-container--default .select2-selection__arrow {
    border: none !important;
}

.select2-container--default .select2-selection__arrow b:after {
    font-size: 16px;
    font-family: 'Font Awesome 5 Pro', fantasy;
    color: #a2aeb6;
    font-weight: 500;
    content: '\f107';
    position: absolute;
    top: -10px;
}

.select2-container--open .select2-selection__arrow b:after {
    content: '\f106' !important;
    font-family: 'Font Awesome 5 Pro';
}

span.woocommerce-input-wrapper textarea#order_comments {
    max-height: 100px;
}

.woocommerce-info:before {
    content: none !important;
}

.woocommerce .return-to-shop,
.woocommerce .woocommerce-info,
.woocommerce .woocommerce-message {
    margin: 1rem 0;
}

ul.woocommerce-error li {
    text-align: left;
}

ul.woocommerce-error li p {
    margin: 0.25rem 1.5rem;
}

span.show-password-input {
    display: none;
}

a.button.default.success {
    background-color: #28a745;
}

a.button.default.danger {
    background-color: #dc3545;
}

.npa-badge {
    background: #e5f7e7;
    border-radius: 26px;
    font: normal normal bold 11px/17px Poppins;
    color: #00AF11;
    text-transform: uppercase;
    padding: .25rem .75rem;
    display: inline-block;
}

.npa-badge {
    background: #e7f0f8 !important;
    border-radius: 26px;
    font: normal normal bold 11px/17px Poppins;
    color: #106ebe !important;
    text-transform: uppercase;
    padding: .25rem .75rem;
    display: inline-block;
}

a.npa-badge:hover {
    background-color: #B6D5F2 !important;
}

.npa-badge.npa-badge-success,
.npa-badge.npa-badge-status-active {
    background: #e5f7e7 !important;
    color: #00AF11 !important;
}

.npa-badge.npa-badge-status-pending-cancel {
    background: #fff6e5 !important;
    color: #FFA200 !important;
}

.npa-badge.npa-badge-status-expired {
    background: #ffebe5 !important;
    color: #FF3B00 !important;
}

.npa-badge.npa-badge-status-cancelled {
    background: #e5e5e5 !important;
    color: #000000 !important;
}

.npa-card {
    background: #fff;
    padding: 1.5rem 2rem;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    border-radius: 4px;
    margin-bottom: 2rem;
}

.npa-card-header {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.npa-card-header::after {
    background-color: #C1D2DE;
    width: 100%;
    height: 4px;
    border-radius: 1px;
    content: ' ';
    margin-top: .5rem;
}

.npa-card-header .npa-card-header-actions a,
a.npa-button {
    font-size: .875rem;
    padding: .625rem 1rem;
}

.npa-card-header .npa-card-title h2,
.npa-card-header-secondary .npa-card-title h2 {
    border: unset !important;
    padding: 0 !important;
    margin: 0 !important;
    font-family: 'Sintony', sans-serif;
    font-weight: bold;
}

.npa-card-header .npa-card-title h2 > i,
.npa-card-header-secondary .npa-card-title h2 > i {
    color: #106ebe;
    margin-right: .5rem;
}

.npa-card-header .npa-card-title h2 > .number,
.npa-card-header-secondary .npa-card-title h2 > .number {
    color: #106ebe;
}

.npa-card table th:not(:first-of-type):not(:last-of-type),
.npa-card table td:not(:first-of-type):not(:last-of-type) {
    padding-left: .5rem;
    padding-right: 0.5rem;
}

.npa-card .npa-card-header-secondary {
    margin: -1.5rem -2rem 0;
    border-radius: 4px 4px 0 0;
    background: #cfe2f2;
    padding: 1rem 2rem;
}

.npa-card .npa-card-footer {
    display: flex;
    justify-content: flex-end;
}

.npa-tooltip {
    position: relative;
    padding: 0 .25rem;
    /*noinspection CssUnresolvedCustomProperty*/
    color: var(--link_color, #106ebe);
    display: inline-block;
}

.woocommerce-price-suffix,
.tax_label {
    font-weight: normal;
    color: #749AB5;
    display: block;
}

.npa-card table.horizontal-table tr td:first-of-type {
    color: #5C6B76;
}

.npa-card table.horizontal-table tr td:last-of-type {
    color: #042238;
    font-family: 'Poppins', sans-serif;
    font-weight: 600;
}

/** <<< COMMON **/

/** >>> Product Page **/
.product span.subscription-details {
    display: none;
}

.product .summary .woocommerce-Price-amount.amount {
    font-size: 2rem;
}

.product .woocommerce-Price-amount.amount {
    color: #042238;
    font-weight: bold;
    font-size: 1.25rem;
}

.product .summary del,
.product .summary del > span.woocommerce-Price-amount.amount {
    font-size: 1.2rem;
}

.product del,
.product del > span.woocommerce-Price-amount.amount {
    color: #749AB5;
    font-weight: 600;
    margin-bottom: .5rem;
    display: block;
}

.product .woocommerce-Price-amount.amount ~ .woocommerce-price-suffix {
    font-size: 1rem;
}

section.products ul.products > li .product-details-container h3.product-title {
    font-size: 1rem;
    font-style: normal;
    font-weight: 600;
    text-align: left;
}

section.products ul.products > li .woocommerce-Price-amount.amount ~ .woocommerce-price-suffix {
    font-size: .75rem;
}

section.products ul.products > li.product .product-details-container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 120px;
    height: 100%;
    text-align: left;
}

section.products ul.products > li > .fusion-product-wrapper {
    height: 100%;
    display: flex;
    flex-direction: column;
}

section.products ul.products > li .fusion-product-content {
    flex-grow: 1;
}

section.products ul.products > li .product-details {
    height: 100%;
}

/** <<< Product Page **/
/** >>> CART  **/
.npa-cart .npa-cart-form,
.npa-cart .cart_totals {
    border-radius: 4px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    background-color: white;
    display: block;
}

.npa-cart .npa-cart-form-header {
    background: #106EBE;
    padding: 1.5rem 3rem;
    font-size: 1.125rem;
    color: #fff;
    border-radius: 4px 4px 0 0;
}

.npa-cart .npa-cart-form .woocommerce-cart-form {
    padding: 1.5rem 2rem;
}

.npa-cart-form .product-title {
    font-size: 1rem;
}

.npa-cart .fusion-product-name-wrapper {
    display: flex;
    align-items: flex-start;
}

.npa-upgrade-disclaimer {
    text-align: left;
    font-size: 11px;
    letter-spacing: 0;
    color: #27618D;
    font-weight: 500;
    margin: .5rem 0 0;
}

.npa-cart-form-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    border-top: 1px solid #e0dede;
    padding: 1.5rem 3rem;
}

.npa-cart-form-footer .coupon,
.npa-card-footer .coupon {
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
    flex-direction: row;
    border: none;
    padding: 0;
}

.npa-cart-form-footer .coupon .coupon-input-text,
.npa-card-footer .coupon .coupon-input-text {
    height: 45px;
    border-radius: 4px 0 0 4px;
    border: 1px solid #C1D2DE;
    border-right: none;
    color: #004578;
    font-weight: bold;
    font-size: 1rem;
    padding: 0 1rem;
    flex: 1;
}

.npa-cart-form-footer .coupon .coupon-input-text::placeholder,
.npa-card-footer .coupon .coupon-input-text::placeholder {
    font-weight: normal;
    font-size: .875rem;
}

.npa-cart-form-footer .coupon .coupon-button,
.npa-card-footer .coupon .coupon-button {
    font-size: 1rem;
    border-radius: 0 4px 4px 0;
    color: #004578;
    background: #fff;
    border: 1px solid #004578;
    padding: 10px 20px;
    height: 45px;
    line-height: 20px;
    font-weight: 600;
    width: auto;
}

.npa-cart-form-footer .coupon .coupon-button:hover,
.npa-card-footer .coupon .coupon-button:hover {
    border: 1px solid #004578;
}

.npa-cart .npa-cart-form .woocommerce-Price-amount.amount {
    font-size: 1.3125rem;
    color: #042238;
    font-weight: bold;
}

.npa-checkout td.product-subtotal .woocommerce-Price-amount.amount {
    font-size: 1rem;
    color: #042238;
    font-weight: bold;
}

.npa-checkout td.product-subtotal > del,
.npa-cart .npa-cart-form del {
    font-size: 1rem;
    color: #749AB5;
    font-weight: 600;
    margin-bottom: .5rem;
    display: block;
}

.npa-checkout td.product-subtotal > del {
    font-size: .875rem;
}

.npa-checkout td.product-subtotal > ins,
.npa-cart .npa-cart-form ins {
    text-decoration: none;
}

.npa-checkout td.product-subtotal > del .woocommerce-Price-amount.amount,
.npa-cart .npa-cart-form del .woocommerce-Price-amount.amount {
    font-size: inherit;
    color: inherit;
    font-weight: inherit;
}


.npa-cart-form .product-price .subscription-details,
.npa-cart-form .product-subtotal .subscription-details {
    display: none;
}

.npa-cart-form .product-remove a {
    color: #749AB5;
}

.npa-cart .cart-collaterals {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: flex-end;
}

.npa-cart .cart_totals {
    padding: 2rem 1.5rem;
}

.npa-cart .cart_totals h2 i {
    color: #106EBE;
    margin-right: 1rem;
}

.npa-cart .cross-sells {
    order: 4;
}

.npa-cart .npa-payment-methods {
    margin: 2rem 0;
    text-align: center;
    width: 48%;
    order: 3;
}

.npa-cart .shop_table tr.cart-discount {
    border: 0;
}

.npa-card table.shop_table_responsive tbody tr {
    height: auto;
}

.npa-cart .wc-proceed-to-checkout {
    display: flex;
}

.npa-cart .npa-row-label,
.npa-checkout .npa-row-label {
    font-weight: 600;
    text-transform: uppercase;
    font-size: .85em;
    margin-bottom: .5rem;
    display: none;
}

.npa-cart-recurring-total {
    clear: both;
    margin: 1.5rem 0 0 0;
    padding: .75rem 1rem;
    background-color: #E8EEF3;
    display: flex;
    justify-content: space-between;
    border-radius: 4px;
}

.npa-cart-recurring-total:empty {
    display: none;
}


.npa-cart-recurring-total .recurring-header .recurring-label {
    text-align: left;
    font-size: .75rem;
    font-weight: bold;
    letter-spacing: 0;
    color: #004578;
    text-transform: uppercase;
    opacity: 1;
}

.npa-cart-recurring-total .recurring-header .recurring-title {
    text-align: left;
    font-size: .625rem;
    letter-spacing: 0;
    font-weight: 500;
    color: #042238;
}

.npa-cart-recurring-total .recurring-price {
    text-align: right;
}

.npa-cart-recurring-total .recurring-price .first-payment-date {
    font-size: .75rem;
    line-height: 1rem;
}

#npa-checkout-button {
    background: #008C79;
    border-radius: 4px;
    color: #FFFFFF;
    text-align: center;
    width: 100%;
    font-size: 1rem;
}

#npa-checkout-button:hover {
    background: #00BFA5;
}

#npa-checkout-button > i {
    margin-right: .5rem;
}

/** <<< CART **/

/** >>> ACCOUNT **/
a.npa-logout-link {
    color: #c00000;
}

.npa-card-header .npa-card-header-actions a.wcs-switch-link {
    background: #008C79;
}

.npa-card-header .npa-card-header-actions a.wcs-switch-link:hover {
    background: #00BFA5;
}


.npa-flex-space-between {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
}

.npa-status-actions,
.npa-payment-actions {
    margin-left: 1rem;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-end;
}

.npa-status-actions .cancel {
    padding: 0 .25rem;
    display: block;
    white-space: nowrap;
}

.npa-card .order_details.shop_table td.product-total {
    font-size: 1rem;
    vertical-align: top;
}

.npa-card .order_details.shop_table .product-name > a,
.npa-card .order_details.shop_table .product-info > a,
.npa-card .npa-checkout.shop_table .product-info > span.title {
    font-size: 1.125rem;
    font-weight: bold;
}

.npa-card .order_details.shop_table .wc-item-meta {
    font-weight: bold;
    font-size: .75rem;
    line-height: 1.3;
}

.npa-card .order_details.shop_table .wc-item-meta .wc-item-meta-label {
    font-weight: normal;
}

.npa-card .order_details.shop_table tfoot {
    background-color: #f3f8fc;
    border: 1px solid #C1D2DE;
}


.npa-card .shop_table.order_details tfoot th,
.npa-card .shop_table.order_details tfoot td {
    padding: 1rem;
    margin: 0 !important;
}

.npa-card .shop_table.order_details tfoot tr {
    border-bottom: 1px solid #C1D2DE;
}

.npa-card .shop_table.order_details tfoot th {
    color: #004578;
    font-weight: bold;
    text-transform: uppercase;
}

.npa-card .shop_table.order_details tfoot td {
    font-size: 1rem;
}

.npa-card .shop_table.order_details tr:last-of-type .woocommerce-Price-amount.amount {
    font-weight: bold;
}

.npa-card .shop_table .order-number .npa-badge {
    font-weight: 600;
    font-size: .875rem;
}

.npa-card .shop_table a.woocommerce-button.button,
.npa-card .shop_table a.woocommerce-button.button.pay:hover {
    border: 1px solid #106EBE;
    color: #106EBE;
    background-color: #fff;
    border-radius: 4px;
    padding: .25rem .5rem;
    display: inline-block;
    width: auto;
    font-size: .875rem;
    font-family: 'Poppins', sans-serif;
    font-weight: 400;
    margin: 5px 0;
}

.npa-card .shop_table a.woocommerce-button.button.pay,
.npa-card .shop_table a.woocommerce-button.button:hover {
    border: 1px solid #106EBE;
    color: #fff;
    background: #106EBE;
}

.npa-card .shop_table a.woocommerce-button.button > i + .action-name {
    padding-left: .5rem
}

.npa-card .shop_table a.woocommerce-button.button:not(:first-of-type) {
    margin-left: .5rem;
}

.npa-card .shop_table a.woocommerce-button.button::before,
.npa-card .shop_table a.woocommerce-button.button::after {
    content: '';
}

.npa-card table.shop_table td.order-status > span {
    color: #4f6473;
    font-weight: 600;
}

.npa-card table.shop_table td.order-status > span.pending {
    color: #FF3B00;
}

.npa-card table.shop_table td.order-status > span.pending::before {
    content: '\f071';
    font-family: 'Font Awesome 5 Pro', fantasy;
    font-weight: normal;
    margin-right: .5rem;
}

.npa-card table.shop_table td.order-actions {
    text-align: right;
}

.npa-card table.shop_table td.order-actions a.view .action-name,
.npa-card table.shop_table tbody > tr > th {
    display: none;
}

.npa-card table.shop_table > thead > tr > th {
    padding-top: 2rem;
}

.npa-card table.shop_table .woocommerce-orders-table__header-order-actions {
    visibility: hidden;
}

.npa-card-body > .woocommerce-address-fields {
    margin-top: 2rem;
}

.ywraq-view-quote-wrapper table.shop_table.horizontal-table tfoot tr td {
    text-align: unset;
}

.woocommerce-MyAccount-content .npa-card .woocommerce-Pagination .woocommerce-Button--next:after {
    vertical-align: baseline;
    margin-left: 1rem;
    font-weight: bold;
    display: inline-block;
}

.woocommerce-MyAccount-content .npa-card .woocommerce-Pagination .woocommerce-Button--previous:before {
    vertical-align: baseline;
    margin-right: 1rem;
    font-weight: bold;
    display: inline-block;
}

/** <<< ACCOUNT **/

/** >>> CHECKOUT **/
.npa-checkout-header {
    margin: 0 0 2rem;
}

a.npa-back-to-cart {
    font-size: 1rem;
    font-weight: 600;
}

a.npa-back-to-cart > i {
    margin-right: 1rem;
}

.npa-card table.shop_table.npa-checkout > thead > tr > th {
    white-space: nowrap;
    text-overflow: ellipsis;
}

.npa-card table.shop_table.npa-checkout tr > th:last-of-type,
.npa-card table.shop_table.npa-checkout tr > td:last-of-type {
    text-align: right;
}

.npa-card-footer > .coupon {
    flex: 1;
    max-width: 100%;
    width: 100%;
}

.npa-card .checkout-totals > table.shop_table > tbody > tr {
    height: auto;
}

.npa-card .checkout-totals > table.shop_table > tbody > tr.cart-subtotal {
    padding-bottom: 0;
    border: none;
}

.npa-card .checkout-totals > table.shop_table > tbody > tr > th {
    display: table-cell;
}


.npa-card .checkout-totals > table.shop_table > tbody > tr.cart-subtotal td {
    border: none;
    padding: 0;
    vertical-align: middle;
}


.npa-card .checkout-totals > table.shop_table > tbody > tr > td:last-of-type {
    text-align: right;
    vertical-align: middle;
}

.npa-card .checkout-totals > table.shop_table > tbody > tr:not(.order-total) > td span.woocommerce-Price-amount.amount {
    color: #023C67;
}

.npa-card .checkout-totals > table.shop_table > tbody > tr.order-total > td {
    font-size: 1.5em;
    padding: 25px 0;
}

.npa-card .checkout-totals .npa-cart-recurring-total {
    margin: 0;
}

.npa-checkout-card {
    position: sticky;
    top: 5rem;
}

.npa-card-header .npa-payment-disclaimer {
    color: #8295a3;
    font-size: .8125rem;
    font-family: 'Poppins', sans-serif;
}

.npa-container .npa-row .npa-column .npa-card #place_order {
    color: #FFFFFF;
    text-align: center;
    background-color: #008C79;
}

.npa-container .npa-row .npa-column .npa-card #place_order[data-toggle=tooltip] {
    color: #FFFFFF;
    text-align: center;
    background-color: #FFA200;
}


.npa-container .npa-row .npa-column .npa-card #place_order[data-toggle=tooltip]:hover {
    background-color: #FF3B00;
}

.npa-container .npa-row .npa-column .npa-card #place_order:hover {
    background: #00BFA5;
}

.checkout .npa-card .payment_methods .payment_box {
    background-color: #ecf6ff;
}

ul.wc_payment_methods.payment_methods.methods > li > label {
    font-weight: bold;
    margin-left: .5rem;
}

ul.wc_payment_methods.payment_methods.methods > li > .payment_box.payment_method_wc_gateway_gestpay > p:first-of-type {
    font-weight: bold;
}

ul.wc_payment_methods.payment_methods.methods > li > label > a.about_paypal {
    font-weight: normal;
    margin-left: .5rem;
}


div#gestpay-s2s-new-card {
    display: flex !important;
    flex-wrap: wrap;
}

div#gestpay-s2s-new-card > p.form-row.validate-required {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 30%;
    align-content: flex-start;
    align-items: center;
}

div#gestpay-s2s-new-card > p#gestpay-cc-cvv_field {
    width: 70%;
    padding-left: 1rem;
}

div#gestpay-s2s-new-card > p.form-row.validate-required > label {
    display: block;
    flex-grow: 1;
    min-width: 100%;
}


div#gestpay-s2s-new-card > p#gestpay-cc-buyer-name_field,
div#gestpay-s2s-new-card > p#gestpay-cc-number_field {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    width: 100%;
}

div#gestpay-s2s-new-card > p#gestpay-cc-buyer-name_field > span.woocommerce-input-wrapper > input,
div#gestpay-s2s-new-card > p#gestpay-cc-number_field > span.woocommerce-input-wrapper > input {
    width: 100% !important;
}

.checkout.woocommerce-checkout #billing_DPA_vat_field,
.checkout.woocommerce-checkout #billing_phone_field {
    width: 48%;
    float: left;
}

.checkout.woocommerce-checkout #billing_DPA_fc_field,
.checkout.woocommerce-checkout #billing_email_field {
    width: 48%;
    float: right;
}

p#order_comments_field::before {
    background-color: #C1D2DE;
    width: 100%;
    height: 4px;
    border-radius: 1px;
    content: ' ';
    margin: 1.25rem 0;
    display: block;
}

select#gestpay-cc-exp-year {
    border-radius: 0 4px 4px 0;
    flex-grow: 1;
}

select#gestpay-cc-exp-month {
    border-radius: 4px 0 0 4px;
    border-right: none;
    flex-grow: 1;
}

/** <<< CHECKOUT **/

/** MENU **/
div#my-account-menu {
    background-color: #f2f2f2;
}

div#my-account-menu.layout-simple > ul.myaccount-menu > li {
    text-transform: uppercase;
    background-color: transparent;
    font-size: .75rem;
    width: 100%;
}

div#my-account-menu.layout-simple > ul.myaccount-menu > li.active {
    background-color: #fff;
}

div#my-account-menu.layout-simple > ul.myaccount-menu > li.active > a,
div#my-account-menu.layout-simple > ul.myaccount-menu > li > a:hover {
    color: #106EBE;
    font-weight: 600;
    border-right: unset !important;
    border-left: .25rem solid #106ebe;
}

div#my-account-menu.layout-simple > ul.myaccount-menu > li > a {
    border-right: unset !important;
    border-left: .25rem solid transparent;
    padding: .75rem 2rem;
}

div#my-account-menu ~ .woocommerce-MyAccount-content {
    border: none;
    padding: 0;
}

div#my-account-menu.layout-simple.position-vertical-left .myaccount-menu:after {
    border-right: none;
}

.npa-dashboard-welcome {
    font-size: 1.25rem;
    font-weight: normal;
}

.npa-dashboard-banner-wrapper {
    margin: 2rem 0;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: flex-end;
}

/** MENU **/
@media screen and (max-width: 1200px) {

    .npa-card table.shop_table td.order-actions a.button {
        display: block;
        margin-left: 0 !important;
        white-space: nowrap;
        text-align: center;
    }

    .npa-card table.shop_table td.order-actions a.button > span.action-name {
        display: inline-block;
    }
}

@media screen and (max-width: 1024px) {
    .npa-cart .npa-payment-methods {
        width: 100%;
    }

    .npa-cart tr.woocommerce-cart-form__cart-item.cart_item:not(:first-of-type) {
        border-top: 1px solid #C1D2DE;
    }

    .npa-cart .npa-upgrade-disclaimer {
        text-align: center;
    }

    .npa-cart-form-footer .coupon .coupon-input-text {
        min-width: auto;
        width: 100%;
    }

    .npa-cart .npa-row-label {
        display: block;
    }

    .npa-cart-form-footer {
        padding: 1.5rem;
    }

    .npa-card-header-actions {
        width: 100%;
    }

    .npa-card-header > .npa-card-header-actions a {
        width: 100%;
        margin: .5rem;
        display: block;
        text-align: center;
    }

    .npa-card .order_details.shop_table thead th:last-of-type,
    .npa-card .order_details.shop_table td:last-of-type {
        text-align: right
    }

    .npa-card table.customer_details.shop_table.horizontal-table > tbody > tr > td {
        width: 100%;
        display: block;
        padding: 1rem 0;
    }

    .npa-card table.customer_details.shop_table.horizontal-table > tbody > tr > td:last-of-type {
        padding: 0 0 1rem 0;
        text-align: right;
    }

    .npa-card table.shop_table:not(.horizontal-table) {
        table-layout: initial;
    }

    div#my-account-menu {
        width: 100%;
    }

    div#my-account-menu ~ .woocommerce-MyAccount-content {
        margin-top: 1rem;
    }

    .npa-container > .npa-row > .npa-column {
        width: 100%;
        margin: 0;
        order: 3;
    }

    .npa-container > .npa-row {
        flex-direction: column;
        margin: 0;
    }

    .npa-container > .npa-row > .npa-column.npa-order-summary {
        order: 1;
    }
}

@media screen and (max-width: 576px) {
    .npa-card {
        padding: .75rem 1rem;
    }

    .npa-card .npa-card-header-secondary {
        margin: -.75rem -1rem .75rem;
        padding: 1rem;
    }

    .npa-subscription tr {
        vertical-align: top;
    }

    .npa-subscription tr td:last-of-type {
        text-align: right;
    }

    .npa-flex-space-between {
        flex-direction: column;
        align-items: flex-end;
    }

    .npa-status-actions .cancel {
        margin-top: .5rem;
    }

    .npa-tooltip {
        margin-top: .5rem;
    }

    .npa-card .order_details.shop_table td.product-total {
        font-size: .75rem;
    }

    .npa-card .shop_table.order_details tfoot th,
    .npa-card .shop_table.order_details tfoot td {
        font-size: .75rem;
        padding: .5rem .75rem;
    }

    .npa-card .order_details.shop_table .product-name > a,
    .npa-card .npa-checkout.shop_table .product-info > span.title {
        font-size: 1rem;
    }

    .npa-card .shop_table .product-name {
        width: 60%;
    }

    .npa-card .order_details.shop_table .wc-item-meta li p {
        display: block;
        margin-bottom: .5rem;
    }

    .npa-card table.shop_table tr.order {
        display: flex;
        flex-wrap: wrap;
        align-content: space-between;
        justify-content: space-between;
        padding: .5rem 0;
    }

    .npa-card table.shop_table tbody > tr.order > th,
    .npa-card table.shop_table tbody > tr.order > td {
        display: block;
        padding: 1rem 0;
        flex: 50%;
    }

    .npa-card table.shop_table tbody > tr.order > th.woocommerce-orders-table__header-order-actions {
        display: none;
    }

    .npa-card table.shop_table tbody > tr.order > td {
        text-align: right;
    }

    .npa-card table.shop_table tbody > tr.order > td.order-actions {
        text-align: center;
    }

    .npa-card table.shop_table td.order-actions a.button {
        width: 100%;
        margin: .5rem 0 !important;
    }

    .checkout.woocommerce-checkout #billing_first_name_field,
    .checkout.woocommerce-checkout #billing_last_name_field,
    .checkout.woocommerce-checkout #billing_DPA_vat_field,
    .checkout.woocommerce-checkout #billing_phone_field,
    .checkout.woocommerce-checkout #billing_DPA_fc_field,
    .checkout.woocommerce-checkout #billing_email_field {
        width: 100%;
    }

    .npa-container .npa-row .npa-column .npa-card #place_order {
        width: 100%;
    }

    div#gestpay-s2s-new-card > p#gestpay-cc-cvv_field {
        width: 100%;
        padding-left: 0;
    }
}