﻿/* Please see documentation at https://docs.microsoft.com/aspnet/core/client-side/bundling-and-minification
for details on configuring this project to bundle and minify static web assets.  */

@-webkit-keyframes sk-rotateplane {
    0% { -webkit-transform: perspective(120px); }
    25% { -webkit-transform: perspective(120px) rotateY(180deg); }
    50% { -webkit-transform: perspective(120px) rotateY(180deg) rotateX(180deg); }
    75% { -webkit-transform: perspective(120px) rotateY(360deg) rotateX(180deg); }
    100% { -webkit-transform: perspective(120px) rotateY(360deg) rotateX(360deg); }
}

@keyframes lds-ripple {
    0% { top: 36px; left: 36px; width: 0; height: 0; opacity: 0; }
    4.9% { top: 36px; left: 36px; width: 0; height: 0; opacity: 0; }
    5% { top: 36px; left: 36px; width: 0; height: 0; opacity: 1; }
    100% { top: 0px; left: 0px; width: 72px; height: 72px; opacity: 0; }
}

.lds-ripple { display: inline-block; position: relative; width: 80px; height: 80px; }
    .lds-ripple div { position: absolute; border: 4px solid #fff; opacity: 1; border-radius: 50%; animation: lds-ripple 1s cubic-bezier(0, 0.2, 0.8, 1) infinite; }
        .lds-ripple div:nth-child(2) { animation-delay: -0.5s; }

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */ color: #aaa; opacity: 1; /* Firefox */ }
:-ms-input-placeholder { /* Internet Explorer 10-11 */ color: #aaa; }
::-ms-input-placeholder { /* Microsoft Edge */ color: #aaa; }

.footerClass { position: absolute !important; width: 100% !important; }
a.navbar-brand { white-space: normal; text-align: center; word-break: break-all; }

/* Provide sufficient contrast against white background */
a { color: #0366d6; }
.btn-primary { color: #fff; background-color: #1b6ec2; border-color: #1861ac; }
.nav-pills .nav-link.active, .nav-pills .show > .nav-link { color: #fff; background-color: #1b6ec2; border-color: #1861ac; }

/* Sticky footer styles
-------------------------------------------------- */
html { font-size: 24px; }

@media (min-width: 768px) {
    html { font-size: 24px; }
}

.border-top { border-top: 1px solid #e5e5e5; }
.border-bottom { border-bottom: 1px solid #e5e5e5; }
.box-shadow { box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05); }
button.accept-policy { font-size: 1rem; line-height: inherit; }

/* Sticky footer styles
-------------------------------------------------- */

html { position: relative; min-height: 100%; }
body { /* Margin bottom by footer height */ /*margin-bottom: 60px;*/ }

.subfooter { margin: 60px 0 20px 0; text-align: center; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
    .subfooter .logo-container { width: 100%; display: flex; justify-content: center; align-items: center; gap: 12px; }
    .subfooter span { font-size: 0.875rem; line-height: 1.2; font-weight: 300; }
    .subfooter img { max-height: 75px; }

.footer { /*position: absolute; bottom: 0;*/ width: 100%; white-space: nowrap; line-height: 60px; /* Vertically center the text there */ margin-bottom: 60px; }

#policy-title { margin-top: 2rem; margin-bottom: 2.5rem; }
.hide { display: none !important; }
.static-content { border: none; }
.help-block { font-size: 0.875rem; line-height: 1.2; font-weight: 300; }
.mt_space { margin-top: 20px; }
.mb_space { margin-bottom: 20px; }

.main-form-key { display: block; width: 100%; height: calc(1.5rem + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: 12px; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-bottom: 0; text-align: center; }
.main-form-submit { display: inline-block; font-weight: 400; color: #444; text-align: center; vertical-align: middle; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: transparent; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 12px; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-top: 15px; }

.header-logo { max-width: 150px; max-height: 50px; float: left; }

label { margin-bottom: 4px; }

.document-issuer { border: solid 0px gray; display: inline-block; width: 600px; margin: 20px; }
.document-information { margin: 100px 20px 40px; border: solid 0px gray; width: 600px !important; display: inline-block; }
.document-issuer-info { text-align: right; }
.document-issuer-name { /*float: left; clear: left;*/ font-size: 18px; text-align: right; /*font-weight: bold;*/ }
.document-issuer-logo { max-width: 250px; max-height: 100px; float: left; }
.document-issuer-address { /*float: right;*/ text-align: right; padding-left: 0; }
.document-issuer-taxid { float: left; clear: left; }
.document-header { text-align: left; margin-bottom: 30px; }
.document-header-number { /*float: left;*/ font-size: 20px; font-weight: 600; }
.document-header-amount { /*float: right;*/ text-align: right; }
.document-header-status { /*float: right; clear: right;*/ text-align: left; font-size: 14px; }
.document-header-status img { margin-left: 5px; cursor: pointer; }
.document-header-receipt-icon { width: 38px; height: 38px; }
.document-header-status-icon { width: 35px; height: 35px; }
.document-header-warning { border-style: solid; border-width: 1px; border-color: gray; padding-top: 10px; margin: 25px 0; }
    .document-header-warning p { font-weight: 600; }

.document-collapsable { }
    .document-collapsable[data-can-collapse='false'] { }
    .document-collapsable .document-collapsable-area-button { }
    .document-collapsable[data-can-collapse='false'] .document-collapsable-area-button { display: none; }
    .document-collapsable[data-can-collapse='true'][aria-expanded='false'] .document-collapsable-area-button button:after { content: "\f078"; font-family: 'Font Awesome 5 Free'; font-style: normal; font-weight: 900; }
    .document-collapsable[data-can-collapse='true'][aria-expanded='true'] .document-collapsable-area-button button:after { content: "\f077"; font-family: 'Font Awesome 5 Free'; font-style: normal; font-weight: 900; }
    .document-collapsable .document-collapsable-area-button button { border: none; outline: none; }
    .document-collapsable .document-collapsable-area { }
    .document-collapsable[data-can-collapse='true'][aria-expanded='false'] .document-collapsable-area { display: none; }

.document-lines-container { }
    .document-lines-container hr { margin: 0; padding: 0; }
.document-lines { display: table; }
.document-line { display: table-row; }
.document-line-cell { display: table-cell; }
.document-line-header { font-weight: bolder; padding: 0 3px }
.document-line-quantity { text-align: center; }
.document-line-description { text-align: left; }
.document-line-value { text-align: right; }

.document-help-line { margin-top: 16px; font-size: 14px; font-weight: 300; }
    .document-help-line p { margin: 0; }

.payment-method-header { }
.payment-methods { max-width: 600px; border: solid 1px gray; margin: 20px auto; }
    .payment-methods > p:first-child { width: 100%; text-align: center; }
.payment-methods-list { display: flex; flex-direction: row; flex-wrap: wrap; justify-content: center; align-items: center; }
.payment-methods-group { border: solid 1px gray; margin-bottom: 20px; padding: 20px 15px; width: 100%; }
.payment-method { float: left; padding: 10px; min-width: 160px; min-height: 130px; }
.payment-method-icon { height: 80px; overflow: hidden; margin-bottom: 5px; display: flex; justify-content: center; align-items: center; }
    .payment-method-icon .payment-method-icon-inner { height: 80px; }
    .payment-method-icon img { object-fit: contain; object-position: center center; max-height: 100%; }
.payment-method-button-container { min-width: 120px; }
.payment-method-button { min-width: 120px; }
.payment-personalization { float: left; width: 100%; margin-top: 25px; }
    .payment-personalization p { font-size: 0.75rem; font-weight: 300; }
    .payment-personalization img { max-width: 100px; margin: 0px 10px; }

.payment-mb { max-width: 550px; }
.payment-mb-entity { font-size: 1.125rem; padding: 10px; }
.payment-mb-reference { font-size: 1.125rem; padding: 10px; }
.payment-mb-value { font-size: 1.125rem; padding: 10px; }
.payment-mbway { margin-top: 100px; max-width: 550px; }
.payment-reference { margin-top: 100px; text-align: -webkit-center; }
.payment-reference-title { min-width: 150px; text-align: right; color: darkgray; float: left; clear: both; padding-right: 15px; }
.payment-reference-value { text-align: left; float: left; }
.payment-notice { color: #003164; text-align: center; width: 80%; max-width: 550px; font-size: 1.125rem; }
.payment-notice input[type='text'], .payment-notice input[type='number'], .payment-notice input[type='tel'] { display: block; width: 100%; height: calc(1.5rem + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: 12px; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-bottom: 0; text-align: center; }
.payment-notice .help-block { text-align: center; }
.payment-single-button {
    clear: both;
    margin-top: 20px;
    background-color: #177198;
    color: white;
    height: 50px;
    width: 310px;
    border-radius: 20px;
    border: none;
    font-weight: bold;
}
.payment-details { float: right; clear: right; margin-bottom: 20px; overflow: hidden; text-align: left; display: none; max-width: 50%; min-width: 35%; background-color: white; border: solid 1px gray; padding: 20px; }
    .payment-details span { min-width: 90px; display: inline-block; }
.payment-details-value { font-size: 1.125rem; margin-bottom: 20px; font-weight: bold; }
.payment-details-mode { margin-bottom: 10px; font-weight: bold; }
.payment-details-status { margin-bottom: 5px; }
.payment-details-button { display: inline-block; border-radius: 12px; background-color: #ee323a; border: none; color: #FFFFFF; text-align: center; font-size: 1.063rem; padding: 5px 8px; transition: all 0.5s; float: right; }
    .payment-details-button span { min-width: 0; cursor: pointer; display: inline-block; position: relative; transition: 0.5s; }

.payment-processing { border: solid 1px gray; display: inline-block; margin: 20px auto; padding: 20px 0; width: 100%; max-width: 600px; }
    .payment-processing .payment-processing-notice { font-size: 1.25rem; font-weight: 600; margin-bottom: 20px; }

.notVisible { display: none; }

.gp { position: relative; }

.gp-limit-lines-1 { display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 1 !important; overflow: hidden !important; }
.gp-limit-lines-2 { display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; overflow: hidden !important; }
.gp-limit-lines-3 { display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 3 !important; overflow: hidden !important; }


.lang-sel { display: flex; flex-direction: column; justify-content: center; align-items: center; max-width: 320px; margin: 30px auto; }
    .lang-sel button { border: none; background-color: transparent; margin: 10px 0; padding: 0; }
        .lang-sel button:hover { filter: brightness(0.8); }
        .lang-sel button img { width: 100px; aspect-ratio: 4 / 3; border: 1px solid #e9ecef; border-radius: 2px; overflow: hidden; }

.lang-sel2 { display: flex; flex-direction: column; justify-content: center; align-items: center; max-width: 320px; margin: 30px auto; }
    .lang-sel2 form { width: 100%; }
    .lang-sel2 button { width: calc(100% - 20px); border: none; background-color: transparent; margin: 10px 0; padding: 0; text-align: left; font-weight: 400; font-size: 1rem; line-height: 1.5; border-radius: 12px; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
        .lang-sel2 button:hover { filter: brightness(0.8); }
        .lang-sel2 button img { vertical-align: middle; width: 32px; aspect-ratio: 4 / 3; border: 1px solid #e9ecef; border-radius: 2px; overflow: hidden; }
        .lang-sel2 button span { vertical-align: middle; margin-left: 4px; }


.header { padding: 10px 0; /*border-bottom: 1px solid #eee;*/ display: flex; flex-direction: row; justify-content: space-between; align-items: center; flex-wrap: wrap; }
    .header .logo-container { width: 100%; height: 80px; display: flex; justify-content: space-between; align-items: flex-end; }
    .header .logo { background-color: #fff; position: absolute; top: 0; left: 0; right: 0; text-align: center; height: 80px; }
        .header .logo img { max-height: 75px; }
    .header .logo-container .logout-spacer { }
    .header .logo-container .logout-container { }
        .header .logo-container .logout-container button { outline: none; }
        .header .logo-container .logout-container img { }
    .header .title { font-size: 1.5rem; font-weight: 500; color: #444; flex: 1 1 auto; text-align: center; }
    .header .subtitle { font-size: 1.3rem; font-weight: 300; color: #444; flex: 1 1 auto; text-align: center; }
    .header .lang { display: inline-flex; }
        .header .lang select { padding: 4px; }


.r-error { margin: 30px auto; max-width: 290px; background-color: #f5f5f5; border: 1px solid #ddd; border-radius: 4px; padding: 20px 10px; }
    .r-error .r-e-icon { text-align: center; margin-bottom: 15px; padding-bottom: 15px; border-bottom: 1px solid #ddd; }
        .r-error .r-e-icon img { width: 30px; }
    .r-error .r-e-title { font-size: 1.25rem; font-weight: 700; text-align: center; margin-bottom: 20px; line-height: 1.2; }
    .r-error .r-e-desc { text-align: center; margin-bottom: 20px; line-height: 1.2; }
    .r-error .r-e-hl { font-size: 1.5rem; font-weight: 700; text-align: center; margin-bottom: 20px; line-height: 1.2; }
    .r-error .r-e-thanks { font-size: 1.5rem; font-weight: 200; text-align: center; line-height: 1.2; }


.r-buttons { text-align: center; margin-top: 15px; }
    .r-buttons button { display: inline-block; font-weight: 400; color: #444; text-align: center; vertical-align: middle; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: transparent; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 12px; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
        .r-buttons button:hover { filter: brightness(0.8); }
        .r-buttons button.r-b-default { color: #555; background-color: #fff; border-color: #aaa; }
        .r-buttons button.r-b-primary { color: #fff; background-color: #1b6ec2; border-color: #1b6ec2; }
        .r-buttons button.r-b-cancel { font-size: 12px; padding: 3px; border-radius: 7px;}         

.r-products-list { margin: 20px auto; max-width: 300px; }
    .r-products-list .r-p-l-items {
        list-style: none;
        padding: 0;
        margin: 0 auto;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        align-content: flex-start;
        width: 100%;
        gap: 10px;
    }
        .r-products-list .r-p-l-items .r-p-l-item { width: calc(50% - 5px); display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: stretch; min-height: 80px; } /*flex: 0 0 300px;*/
            .r-products-list .r-p-l-items .r-p-l-item[aria-selected='true'] { /*box-shadow: 0px 4px 8px 2px rgba(0,0,0,0.5);*/ }
            .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-image { overflow: hidden; flex: 0 0 50%; display: flex; }
                .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-image img { display: inline-block; object-fit: contain; object-position: center center; width: 100%; height: 100%; }
            .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body { width: 100%; display: flex; flex-direction: column; justify-content: space-between; }
                .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-desc { font-size: 0.75rem; font-weight: 400; text-align: left; line-height: 24px; text-align: center; }
                    .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-desc:not(:empty) { height: 42px; padding: 4px 0; }
                    .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons {
                        width: 95%;
                        margin: auto;
                        text-align: left;
                        display: flex;
                        height: 100%;
                        padding-bottom: 1px;
                        justify-content: center;
                    }
                    .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons button { display: inline-block; font-weight: 400; color: #212529; text-align: center; vertical-align: middle; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: transparent; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 12px; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
                        .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons button:hover { filter: brightness(0.8); }
                        .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons button.r-p-l-i-select { color: #555; background-color: #fff; border-color: #aaa; width: 100%; font-size: 1rem; font-weight: 500; padding: 4px 10px; height: 100%; }
                            .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons button.r-p-l-i-select[aria-pressed='true'] { color: #fff; background-color: #1b6ec2; border-color: #1b6ec2; }
                            .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-buttons button.r-p-l-i-select > div { line-height: 1.4; }


.r-extend { margin: 20px auto; max-width: 300px; }
    .r-extend .r-e-group { margin-bottom: 16px; }
        .r-extend .r-e-group label { display: block; text-align: center; }
        .r-extend .r-e-group .r-e-form-item { display: block; width: 100%; height: calc(1.5rem + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: 12px; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-bottom: 0; text-align: center; }
        .r-extend .r-e-group input[type='text'] { }
        .r-extend .r-e-group button.r-e-b-select { color: #555; background-color: #fff; border-color: #aaa; width: 100%; font-size: 1rem; font-weight: 500; padding: 24px 10px; }
            .r-extend .r-e-group button.r-e-b-select[aria-pressed='true'] { background-color: #1b6ec2; border-color: #1b6ec2; }
            .r-extend .r-e-group button.r-e-b-select > div { line-height: 22px; }
        .r-extend .r-e-group .help-block { text-align: center; }
        .r-extend .r-e-group .r-e-big { font-size: 1.25rem; text-align: center; }
    .r-extend .r-e-extend { }
        .r-extend .r-e-extend label { display: block; text-align: center; }
        .r-extend .r-e-extend input[type='text'] { text-align: center; margin-left: auto; margin-right: auto; }
        .r-extend .r-e-extend .help-block { text-align: center; margin-top: 2px; }
    .r-extend .r-e-duration { }
    .r-extend .r-e2-duration { text-align: center; }


.r-summary { margin: 20px auto; max-width: 300px; }
    .r-summary .r-s-group { margin-bottom: 16px; }
        .r-summary .r-s-group label { display: block; text-align: center; }
        .r-summary .r-s-group .r-s-form-item { display: block; width: 100%; height: calc(1.5rem + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: 12px; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-bottom: 0; text-align: center; }
            .r-summary .r-s-group .r-s-form-item[readonly='readonly'] { outline: none; cursor: not-allowed; }
        .r-summary .r-s-group input[type='text'] { text-align: center; }
        .r-summary .r-s-group select { text-align: center; }
        .r-summary .r-s-group .help-block { text-align: center; }
        .r-summary .r-s-group .r-s-big { font-size: 1.25rem; text-align: center; }
    .r-summary .r-s-duration input[type='number'] { text-align: center; }
    .r-summary .r-s-duration .help-block { text-align: center; display: block; }
    .r-summary .r-s-group a { text-decoration: underline; }
        .r-summary .r-s-group a:hover { text-decoration: underline; }
        .r-summary .r-s-group a:visited { text-decoration: underline; }
        .r-summary .r-s-group a:active { text-decoration: underline; }
        .r-summary .r-s-group a:focus { text-decoration: underline; }
    .r-summary label.custom-control-label { display: inline-block; text-align: left; font-weight: 300; font-size: 1rem; line-height: 1.3; padding-left: 15px; }
    .r-summary .r-s-group.r-s-group-space { margin-top: 30px; margin-bottom: 30px; }


.r-confirm { margin: 20px auto; max-width: 300px; }
    .r-confirm .r-c-group { margin-bottom: 16px; }
        .r-confirm .r-c-group .r-c-text { text-align: center; }
        .r-confirm .r-c-group .r-c-icon { text-align: center; }
            .r-confirm .r-c-group .r-c-icon img { max-width: 100px; max-height: 100px; }
        .r-confirm .r-c-group .r-c-big { font-size: 1.4rem; text-align: center; }
        .r-confirm .r-c-group .r-c-medium { font-size: 1.125rem; text-align: center; }
        .r-confirm .r-c-group .r-c-small { font-size: 1rem; text-align: center; }
        .r-confirm .r-c-group .r-c-light { font-weight: 200; text-align: center; }


input.telephone::-webkit-outer-spin-button, input.telephone::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input.telephone { -moz-appearance: textfield; }

.telephone-group { display: flex; gap: 10px; justify-content: center; }
    .telephone-group > div:nth-child(1) { flex: 0 0 92px; }
    .telephone-group > div:nth-child(2) { }
    .telephone-group > div input { width: 100%; justify-content: center; }


.g-gp { margin: 20px auto; max-width: 300px; }
.gp-payment-page .g-gp { margin: 0 auto; max-width: 600px; width: 100%; }
.g-gp .g-gp-group { margin-bottom: 16px; }
    .g-gp .g-gp-group.g-gp-group-spacer { margin-top: 30px; }
    .g-gp .g-gp-group.g-gp-group-spacer2 { margin-bottom: 16px; }
    .g-gp .g-gp-group .g-gp-title { font-size: 1.5rem; font-weight: 500; color: #444; flex: 1 1 auto; text-align: center; }
    .g-gp .g-gp-group .g-gp-subtitle2 { font-size: 0.8rem; font-weight: 300; color: #444; flex: 1 1 auto; text-align: center; line-height: normal; margin-top: -15px;}

    .g-gp .g-gp-group label { display: block; text-align: center; }
        .g-gp .g-gp-group label.gp-label-highlight { }
    .g-gp .g-gp-group .g-gp-form-item { display: block; width: 100%; min-height: calc(1.5rem + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.5; color: #495057; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; border-radius: 12px; transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out; margin-bottom: 0; text-align: center; }
        .g-gp .g-gp-group .g-gp-form-item[readonly='readonly'] { outline: none; cursor: not-allowed; }
        .g-gp .g-gp-group .g-gp-form-item.g-gp-form-item-highlight { }
        .g-gp .g-gp-group .g-gp-form-item.g-gp-form-item-highlight2 { }
        .g-gp .g-gp-group .g-gp-form-item.g-gp-form-item-highlight3 { font-size: 0.85rem; min-height: unset; padding-top: 4px; padding-bottom: 4px; line-height: unset; }
    .g-gp .g-gp-group input[type='text'] { text-align: center; }
    .g-gp .g-gp-group input[type='email'] { text-align: center; }
    .g-gp .g-gp-group input[type='tel'] { text-align: center; }
    .g-gp .g-gp-group input[type='number'] { text-align: center; }
    .g-gp .g-gp-group input[type='date'] { text-align: center; }
    .g-gp .g-gp-group input[type='password'] { text-align: center; }
    .g-gp .g-gp-group select { text-align: center; }
    .g-gp .g-gp-group .help-block { text-align: center; margin-top: 4px; }
    .g-gp .g-gp-group .g-gp-text { text-align: center; }
    .g-gp .g-gp-group p.g-gp-text { margin-top: 0.5rem; margin-bottom: 0.5rem; }
    .g-gp .g-gp-group .g-gp-icon { text-align: center; }
        .g-gp .g-gp-group .g-gp-icon img { max-width: 100px; max-height: 100px; }
    .g-gp .g-gp-group .g-gp-big2 { font-size: 1.4rem; text-align: center; }
    .g-gp .g-gp-group .g-gp-big { font-size: 1.25rem; text-align: center; }
    .g-gp .g-gp-group .g-gp-medium { font-size: 1rem; text-align: center; }
    .g-gp .g-gp-group .g-gp-small { font-size: 0.938rem; text-align: center; }
    .g-gp .g-gp-group .g-gp-small2 { font-size: 0.875rem; text-align: center; font-weight: 300; }
    .g-gp .g-gp-group .g-gp-light { font-weight: 200; text-align: center; }
    .g-gp .g-gp-group .g-gp-w400 { font-weight: 400 !important; }
    .g-gp .g-gp-group .g-gp-w600 { font-weight: 600 !important; }
    .g-gp .g-gp-group .g-gp-uppercase { text-transform: uppercase; }
    .g-gp .g-gp-group a { text-decoration: underline; }
        .g-gp .g-gp-group a:hover { text-decoration: underline; }
        .g-gp .g-gp-group a:visited { text-decoration: underline; }
        .g-gp .g-gp-group a:active { text-decoration: underline; }
        .g-gp .g-gp-group a:focus { text-decoration: underline; }
.g-gp label.custom-control-label { display: inline-block; text-align: left; font-weight: 300; font-size: 1rem; line-height: 1.3; padding-left: 15px; }
.g-gp .g-gp-group.g-gp-group-space { margin-top: 30px; margin-bottom: 30px; }

.g-gp .g-gp-group .r-buttons-list { display: flex; flex-direction: column; flex-wrap: nowrap; justify-content: center; align-items: stretch; gap: 12px; }
    .g-gp .g-gp-group .r-buttons-list button { display: inline-block; font-weight: 400; color: #212529; text-align: center; vertical-align: middle; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-color: transparent; border: 1px solid transparent; padding: 0.375rem 0.75rem; font-size: 1rem; line-height: 1.5; border-radius: 12px; transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out; }
        .g-gp .g-gp-group .r-buttons-list button:hover { filter: brightness(0.8); }
        .g-gp .g-gp-group .r-buttons-list button.r-button-select { color: #555; background-color: #fff; border-color: #aaa; width: 100%; font-size: 1rem; font-weight: 500; padding: 4px 10px; }
            .g-gp .g-gp-group .r-buttons-list button.r-button-select[aria-pressed='true'] { color: #fff; background-color: #1b6ec2; border-color: #1b6ec2; }
            .g-gp .g-gp-group .r-buttons-list button.r-button-select > div { line-height: 1.4; }

.g-gp .g-gp-group-item { margin-bottom: 16px; border-radius: 12px; padding: 0.75rem 0.75rem; }
    .g-gp .g-gp-group-item .g-gp-group { margin-bottom: 0; }
        .g-gp .g-gp-group-item .g-gp-group.g-gp-group-spacer { margin-top: 30px; }
        .g-gp .g-gp-group-item .g-gp-group.g-gp-group-spacer2 { margin-bottom: 16px; }
        .g-gp .g-gp-group-item .g-gp-group p { margin-bottom: 0; }
        .g-gp .g-gp-group-item .g-gp-group .help-block { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-text { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-big2 { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-big { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-medium { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-small { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-small2 { margin: 0; text-align: left; }
        .g-gp .g-gp-group-item .g-gp-group .g-gp-light { margin: 0; text-align: left; }

.g-gp .g-gp-group a.g-gp-no-underline { text-decoration: none; }
    .g-gp .g-gp-group a.g-gp-no-underline:hover { text-decoration: none; }
.g-gp .g-gp-group a.g-gp-no-underline_hover:hover { text-decoration: underline; }
.g-gp .g-gp-group a.g-gp-small { font-size: 0.7rem; }
.g-gp .g-gp-group a.g-gp-block { display: block; }
.g-gp .g-gp-group a.g-gp-center { text-align: center; }
.g-gp .g-gp-group a.g-gp-mt-8 { margin-top: 8px; }
.g-gp .g-gp-group a.g-gp-mt-12 { margin-top: 12px; }

.g-gp .g-gp-group ul.g-gp-slots { padding: 0; margin: 0; list-style: none; }
    .g-gp .g-gp-group ul.g-gp-slots[data-mode='1'] { }
    .g-gp .g-gp-group ul.g-gp-slots[data-mode='2'] { display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: 1fr 1fr; gap: 0px 10px; }
    .g-gp .g-gp-group ul.g-gp-slots[data-mode='3'] { column-count: 2; column-gap: 10px; }
        .g-gp .g-gp-group ul.g-gp-slots[data-mode='3'] li { break-inside: avoid; }
    .g-gp .g-gp-group ul.g-gp-slots[data-mode='4'] { display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: 1fr 1fr; gap: 0px 10px; }
        .g-gp .g-gp-group ul.g-gp-slots[data-mode='4'] li span:not(:first-child) { display: none; }
    .g-gp .g-gp-group ul.g-gp-slots[data-mode='5'] { column-count: 4; column-gap: 10px; }
        .g-gp .g-gp-group ul.g-gp-slots[data-mode='5'] li { break-inside: avoid; }
            .g-gp .g-gp-group ul.g-gp-slots[data-mode='5'] li span:not(:first-child) { display: none; }
    .g-gp .g-gp-group ul.g-gp-slots[data-show-past-periods='false'] li[data-status='0'] { display: none; }
    .g-gp .g-gp-group ul.g-gp-slots li { user-select: none; text-align: center; border: 1px solid #ced4da; border-radius: 3px; margin: 0 0 6px 0; font-size: 0.9rem; padding: 2px; }
        .g-gp .g-gp-group ul.g-gp-slots li[data-status='0'] { cursor: not-allowed; }
        .g-gp .g-gp-group ul.g-gp-slots li[data-status='1'] { cursor: pointer; }
            .g-gp .g-gp-group ul.g-gp-slots li[data-status='1'][aria-pressed='true'] { }
            .g-gp .g-gp-group ul.g-gp-slots li[data-status='1'][aria-disabled='true'] { cursor: not-allowed; }

.g-gp .g-gp-group ul.g-gp-services { padding: 0; margin: 0; list-style: none; }
    .g-gp .g-gp-group ul.g-gp-services li { user-select: none; text-align: center; border: 1px solid #ced4da; border-radius: 3px; margin: 4px 0; font-size: 0.9rem; padding: 2px; }
        .g-gp .g-gp-group ul.g-gp-services li[data-status='0'] { cursor: not-allowed; }
        .g-gp .g-gp-group ul.g-gp-services li[data-status='1'] { cursor: pointer; }
            .g-gp .g-gp-group ul.g-gp-services li[data-status='1'][aria-pressed='true'] { }
            .g-gp .g-gp-group ul.g-gp-services li[data-status='1'][aria-disabled='true'] { cursor: not-allowed; }
        .g-gp .g-gp-group ul.g-gp-services li[aria-hidden='true'] { display: none; }

.g-gp .g-gp-group .g-gp-form-item.ss-main { display: flex; padding-right: 0; }
    .g-gp .g-gp-group .g-gp-form-item.ss-main .ss-values .ss-single { margin: 0 auto; }
.g-gp-form-item.ss-content .ss-list .ss-option { justify-content: center; text-align: center; }

.g-gp .g-gp-group .datepicker-inline { }
    .g-gp .g-gp-group .datepicker-inline .datepicker { width: 100%; border-radius: 12px; overflow: hidden; }

.g-gp .g-gp-group .g-gp-spinner { display: flex; justify-content: center; align-items: center; height: 200px; }

.g-gp .gp-g-locked { pointer-events: none; opacity: 0.5; }

.g-gp .g-gp-product-c { display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: flex-start; align-items: stretch; }
    .g-gp .g-gp-product-c .g-gp-image-c { overflow: hidden; flex: 0 0 40%; }
        .g-gp .g-gp-product-c .g-gp-image-c a { display: flex; }
            .g-gp .g-gp-product-c .g-gp-image-c a:hover { }
            .g-gp .g-gp-product-c .g-gp-image-c a img { display: inline-block; object-fit: contain; object-position: center center; width: 100%; height: 100%; }
    .g-gp .g-gp-product-c .g-gp-desc-price-c { display: flex; flex-direction: column; justify-content: space-between; align-items: flex-end; }
        .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-desc-c { }
            .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-desc-c .g-gp-desc { text-align: right; }
                .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-desc-c .g-gp-desc p { margin-bottom: 4px; font-size: 0.875rem; }
                    .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-desc-c .g-gp-desc p:first-child { text-transform: uppercase; }
            .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-desc-c .g-gp-location { text-align: right; font-size: 0.75rem; }
        .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-price-c { }
            .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-price-c .g-gp-price { text-align: right; font-weight: 400; }
            .g-gp .g-gp-product-c .g-gp-desc-price-c .g-gp-price-c .g-gp-vat { text-align: right; font-size: 0.75rem; }

.g-gp .g-gp-w-400 { font-weight: 400 !important; }

.gp .gp-body-logo { margin-top: 20vh; }
    .gp .gp-body-logo .logo-container { width: 100%; height: 80px; }
    .gp .gp-body-logo .logo { background-color: #fff; text-align: center; height: 80px; }
        .gp .gp-body-logo .logo img { max-height: 75px; }
    .gp .gp-body-logo h2:not(:empty) { line-height: 1.3; margin-top: 0; margin-bottom: 16px; text-transform: uppercase; font-size: 1rem; text-align: center; }
    .gp .gp-body-logo h3:not(:empty) { line-height: 1.3; margin-top: 16px; margin-bottom: 0; text-transform: uppercase; font-size: 1rem; text-align: center; }

.gp .gp-image { display: flex; }
    .gp .gp-image img { display: inline-block; object-fit: contain; object-position: center center; width: 100%; height: 100%; }

.sl-image { }

    .pa-menu{}
    .pa-menu .pa-menu-button { background-color: #fff; padding: 1px 6px; border-radius: 5px; }

    .discount-row:hover {}
    .discount-row.clicked { }
    .discount-code-input{ }
        .discount-code-input .button {}

    .reveal-btn {}
input[type=number].no-spinner::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.tariff-qnt-group {
    margin-left: 10px;
    padding: 3px;
    height: 77px;
    width: fit-content;
    border: solid 0.05em;
    border-radius: 13px;
    border-color: var(--gp-grey_434345);
}
.r-button-addInt {
    width: 30px;
    height: 30px;
    cursor: pointer;
    user-select: none;
}
#confirm-onrequest {
    margin: 1rem auto 0 auto !important;
    padding: 2rem 1rem !important;
    border: solid 1px gray;
    border-radius: 20px;
    font-size: 21px;
}
.tariff-qnt {
    border: none;
    width: 30px;
}
/* Media Queries
------------------------------------------------------------------------------------------------------------------------*/
@media only screen {
    .gp .gp-overlay { position: fixed; top: 0; left: 0; bottom: 0; right: 0; z-index: 9500; -ms-user-select: none; user-select: none; display: flex; flex-direction: column; justify-content: center; align-items: center; align-content: flex-start; }
        .gp .gp-overlay .gp-overlay-inner { }
        .gp .gp-overlay p { text-transform: uppercase; font-size: 1rem; font-weight: 600; }

        .gp .gp-overlay .gp-spinner, .gp .gp-overlay .gp-spinner:after { width: 64px; height: 64px; border-radius: 0%; }
            .gp .gp-overlay .gp-spinner[data-type='1'] { margin: 16px auto; position: relative; text-indent: 0; border-width: 1px; border-style: solid; -webkit-transform: translateZ(0); -ms-transform: translateZ(0); transform: translateZ(0); -webkit-animation: sk-rotateplane 2.4s infinite ease-in-out; animation: sk-rotateplane 2.4s infinite ease-in-out; text-align: center; line-height: 64px; }
                .gp .gp-overlay .gp-spinner[data-type='1']:after { }

        .gp .gp-overlay .gp-spinner { display: none; }
        .gp .gp-overlay[data-type='1'] .gp-spinner[data-type='1'] { display: block; }

        .gp .gp-overlay .gp-warning { }
        .gp .gp-overlay .gp-progress-bar { width: 304px; margin: 16px auto; }
            .gp .gp-overlay .gp-progress-bar[data-progress] { transition: opacity 250ms; }
            .gp .gp-overlay .gp-progress-bar[data-progress='0'] { opacity: 0 !important; transition: opacity 2000ms !important; }
            .gp .gp-overlay .gp-progress-bar[data-progress='100'] { opacity: 0 !important; transition: opacity 2000ms !important; }
            .gp .gp-overlay .gp-progress-bar[aria-hidden='true'] { opacity: 0; transition: opacity 2000ms; }
            .gp .gp-overlay .gp-progress-bar[aria-hidden='false'] { opacity: 1; transition: opacity 250ms; }
            .gp .gp-overlay .gp-progress-bar > div { border-radius: 1px; border-style: solid; border-width: 1px; height: 16px; position: relative; }
                .gp .gp-overlay .gp-progress-bar > div > div { height: 100%; }
                    .gp .gp-overlay .gp-progress-bar > div > div:after { content: attr(data-progress) "%"; position: absolute; top: 15px; left: 0; right: 0; bottom: 0; font-size: 0.875rem; font-weight: normal; text-align: center; }

    .gp .gp-overlay { background-color: rgba(0, 0, 0, 0.25); color: #ffffff; }
        .gp .gp-overlay .gp-spinner[data-type='1'] { border-color: rgba(255,255,255,0.5); background-color: #777; }
        .gp .gp-overlay .gp-progress-bar > div { border-color: #000000; background-color: #ffffff; }
            .gp .gp-overlay .gp-progress-bar > div > div { background-color: #777; }
                .gp .gp-overlay .gp-progress-bar > div > div:after { color: #ffffff; }
}

@media screen and (min-width: 576px) {
}

@media screen and (min-width: 768px) {
    .payment-details-button span:after { top: 0; opacity: 0; right: -10px; transition: 0.5s; content: '\00bb'; position: absolute; -webkit-transform: rotate(-90deg); }
    .payment-details-button:hover span { padding-right: 24px; }
        .payment-details-button:hover span:after { opacity: 1; right: 10px; }
}

@media screen and (min-width: 992px) {
}

@media screen and (min-width: 1200px) {
}

@media screen and (max-width: 768px) {
    .document-issuer-address { float: left; text-align: left; margin-top: 15px; margin-bottom: 25px; }
    .document-header-issuer_div { order: 1; }
    .document-header-amount { order: 2; }
    .document-header-status { order: 2; }
    .document-header-number { text-align: center; }

    .payment-details-spacing { /* order: 3;*/ }
    .payment-details-button { }
    .payment-details { order: 3; max-width: none; margin: 0 25px 20px; }

    .document-issuer { text-align: center; margin: 30px 2rem; display: block; width: 95%; }
    .document-isser-logo { float: none; }
    .document-issuer-name { text-align: center; }
    .document-information { width: 100% !important; margin: 0 !important; padding: 0 !important; }
    .document-header { }
    .document-header-receipt-icon { width: 33px; height: 33px; }
    .document-header-status-icon { width: 30px; height: 30px; }

    .payment-processing { text-align: center; margin: 30px auto; }
}

/* Mobile */
@media screen and (max-width: 575px) {
    html { font-size: 22px; }

    #policy-title { margin: 2rem auto; }
    #policy-body { width: 85%; margin: auto; }

    .document-header { }
    .document-issuer-name { margin-top: 5px; }
    .document-header-receipt-icon { width: 27px; height: 27px; }
    .document-header-status-icon { width: 25px; height: 25px; }
    .document-header-status img { margin-left: 3px; }
    .document-header-status-payment_status { /*float: right;*/ }
    .document-header-status-get_receipt { clear: both; float: right; white-space: nowrap; }
    #document-header-status-info_icon { float: right; }

    .payment-details-button { padding: 5px 6px; width: 60px; }

    .r-products-list .r-p-l-items .r-p-l-item { flex: 0 0 calc(100% - 20px); max-width: 290px; margin-left: auto; margin-right: auto; }

    .sl-image { }
}

@media only screen and (max-width: 400px) {
    html { font-size: 20px; }

    .document-issuer { display: block; margin: 20px 1rem; }
    .document-header { }
    .document-issuer-name { }
    .document-issuer-address { display: block; }
    .document-header-amount { float: left; clear: left; }

    .payment-details { width: 100%; max-width: none; margin: 0 10px 20px; }
    .payment-details-button { width: 55px; }
    .payment-details-value { margin-bottom: 0px; }

    .document-header-status-payment_status { }
    .document-header-status img { margin-left: 3px; }
    .document-line-header { }

    .payment-processing { display: block; margin: 20px 0; }

    .sl-image { }
}

@media only screen and (max-width: 330px) {
    .r-products-list .r-p-l-items .r-p-l-item .r-p-l-i-body .r-p-l-i-desc:not(:empty) { height: 38px; }
}
