html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

/*CSS for the main interaction */
.tabset > input[type="radio"] {
    position: absolute;
    left: -200vw;
}

.tabset .tab-panel {
   display: none;
}
.megamenu .comp-title{
    font-size: 1.5rem!important; 
}
.tabset > input:first-child:checked ~ .tab-panels > .tab-panel:first-child,
.tabset > input:nth-child(3):checked ~ .tab-panels > .tab-panel:nth-child(2),
.tabset > input:nth-child(5):checked ~ .tab-panels > .tab-panel:nth-child(3),
.tabset > input:nth-child(7):checked ~ .tab-panels > .tab-panel:nth-child(4),
.tabset > input:nth-child(9):checked ~ .tab-panels > .tab-panel:nth-child(5),
.tabset > input:nth-child(11):checked ~ .tab-panels > .tab-panel:nth-child(6) {
    display: block;
    animation: fade-in 1s;
}
/* Styling */
.tabset {
    font: 16px/1.5em "Roboto", "Overpass", "Open Sans", Helvetica, sans-serif;
    color: #525d6f;
    font-weight: 300;
}
.tabset > label {
    position: relative;
    display: inline-block;
    padding: 15px 15px 25px;
    border: 1px solid transparent;
    border-bottom: 0;
    cursor: pointer;
    font-weight: 600;
    color: var(--leght-text-color);
    transition: color .4s ease-in-out;
}

.tabset > label::after {
    content: "";
    position: absolute;
    left: 15px;
    bottom: 10px;
    width: 22px;
    height: 4px;
    background: var(--leght-text-color);
    transition: background 0.4s ease-in-out;
}
.tabset input:focus-visible + label {
    outline: 2px solid rgba(0,102,204,1);
    border-radius: 3px;
}

.tabset > label:hover,
.tabset > input:focus + label,
.tabset > input:checked + label {
    color: var(--regular-text-color);
}
.tabset > label:hover::after,
.tabset > input:focus + label::after,
.tabset > input:checked + label::after {
   background: #525d6f;
}

.tabset > input:checked + label {
    border-color: #ccc;
    border-bottom: 1px solid #fff;
    margin-bottom: -1px;
}

.tab-panel {
    padding: 30px 0;
    border-top: 1px solid #ccc;
}
.megamenu .included-services > li > a {
    line-height: 1.5rem;
    width: fit-content;
    color: var(--leght-text-color)!important;
    transition: color .4s ease-in-out;
}
.megamenu .included-services > li:hover,
.megamenu .included-services > li > a:hover,
.megamenu .included-services > li.selected,
.megamenu .included-services > li.selected > a{
    color: var(--regular-text-color) !important;
}
.tabset .tab-panel .sd > *:not(:first-child):not(.activate){
    display:none;
}
.tabset .tab-panel > .activate {
    display: block;
    animation: fade-in 1s;
}

.hidden_button {
    animation: fade-in 1s;
}
@keyframes fade-in {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@font-face {
    font-family: "Overpass";
    src: url('../fonts/Overpass-Regular.ttf');
}
@font-face {
    font-family: Poppins-Regular;
    src: url('../fonts/Poppins-Regular.ttf');
}

@font-face {
    font-family: Poppins-Medium;
    src: url('../fonts/oppins-Medium.ttf');
}

@font-face {
    font-family: Poppins-Bold;
    src: url('../fonts/Poppins-Bold.ttf');
}
button {
    background: transparent;
}
.m-l-7 {
    margin-left: 7px;
}

.service-mobile, .service-name {
    display: none;
}
.service-desktop{
    display:block;
}
.service-details, .service-title {
    margin-top: 16px;
}

.service-icon {
    height: 30px;
    display: none;
    opacity: 0.4;
    transition: opacity .4s ease-in-out;
}
.arrow {
    margin-top: 0px !important;
    padding-top: 24px !important;
    padding-left: 11px !important;
}
/*------------------------------------------------------------------
[ Responsive ]*/
@media (max-width: 1114px) {
    .service-mobile, .service-name {
        display: block;
    }
    .service-desktop {
        display: none;
    }
    .service-details {
        margin-top: 66px!important;
    }
    .accordionTitle{
        padding-left:0px!important;
    }
}

@media(max-width: 475px){
    .service-icon{
        display:block;
    }
    .service-mobile{
        display:none;
    }
}
@media (max-width: 768px) {
    .contact100-form {
        padding: 43px 15px 57px 15px;
    }
    .service-details {
        margin-top: 0px!important;
    }
    .label-input100 {
        text-align: left;
        position: unset;
        top: unset;
        left: unset;
        width: 100%;
        padding: 0 5px;
    }
}   


/*------------------------------------------------------------------
[ Alert validate ]*/

.validate-input {
    position: relative;
}

.alert-validate::before {
    /* content: attr(data-validate); */
    position: absolute;
    max-width: 70%;
    background-color: #fff;
    border: 1px solid #c80000;
    border-radius: 2px;
    padding: 4px 25px 4px 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 2px;
    pointer-events: none;
    font-family: Poppins-Medium;
    color: #c80000;
    font-size: 13px;
    line-height: 1.4;
    text-align: left;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.4s;
    -o-transition: opacity 0.4s;
    -moz-transition: opacity 0.4s;
    transition: opacity 0.4s;
}

.alert-validate::after {
    content: "\f06a";
    font-family: FontAwesome;
    display: block;
    position: absolute;
    color: #c80000;
    font-size: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 8px;
}

.alert-validate:hover:before {
    visibility: visible;
    opacity: 1;
}

@media (max-width: 992px) {
    .alert-validate::before {
        visibility: visible;
        opacity: 1;
    }
}

.accordion dt > a {
    font-weight: 700;
    padding: 16px;
    display: block;
    text-decoration: none;
    color: var(--leght-text-color);
    -webkit-transition: background-color 0.5s ease-in-out;
}

.accordion dd {
    /*background-color: #1abc9c;*/
    color: #fafafa;
    font-size: 1em;
    line-height: 1.5em;
}

    .accordion dd > p {
        padding: 1em 2em 1em 2em;
    }

.accordion {
    position: relative;
    /*background-color: #16a085;*/
}

.accordionContainer {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 0 2em 0;
    margin-bottom: 3rem;
}

.accordionTitle {
    width: 200px;
    transition: color 0.4s ease-in-out!important;
    font-family: var(--leght-text-color)!important;
}

    .accordionTitle:before {
        content: "+";
        font-size: 1.5em;
        line-height: 0.5em;
        float: right;
        -moz-transition: -moz-transform 0.3s ease-in-out;
        -o-transition: -o-transform 0.3s ease-in-out;
        -webkit-transition: -webkit-transform 0.3s ease-in-out;
        transition: transform 0.3s ease-in-out;
    }
.accordionTitle:hover {
    color: var(--regular-text-color)!important;
}
.accordionTitle.accordionTitleActive {
     color: var(--regular-text-color)!important;
}
.accordionTitleActive {
    /*background-color: #34495e;*/
}

    .accordionTitleActive:before {
        -webkit-transform: rotate(-225deg);
        -moz-transform: rotate(-225deg);
        transform: rotate(-225deg);
    }

.accordionItem {
    height: auto;
    overflow: hidden;
}

@media all {
    .accordionItem {

        -moz-transition: max-height 1s;
        -o-transition: max-height 1s;
        -webkit-transition: max-height 1s;
        transition: max-height 1s;
        margin-left:0px;
    }
}

@media screen and (min-width: 48em) {
    .accordionItem {
        -moz-transition: max-height 0.5s;
        -o-transition: max-height 0.5s;
        -webkit-transition: max-height 0.5s;
        transition: max-height 0.5s;
    }
}

.accordionItemCollapsed {
    max-height: 0;
}

.animateIn {
    -webkit-animation-name: accordionIn;
    -webkit-animation-duration: 0.65s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-direction: normal;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -webkit-animation-delay: 0s;
    -moz-animation-name: normal;
    -moz-animation-duration: 0.65s;
    -moz-animation-iteration-count: 1;
    -moz-animation-direction: alternate;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-fill-mode: both;
    -moz-animation-delay: 0s;
    animation-name: accordionIn;
    animation-duration: 0.65s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-in-out;
    animation-fill-mode: both;
    animation-delay: 0s;
}

.animateOut {
    -webkit-animation-name: accordionOut;
    -webkit-animation-duration: 0.75s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-direction: alternate;
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation-fill-mode: both;
    -webkit-animation-delay: 0s;
    -moz-animation-name: accordionOut;
    -moz-animation-duration: 0.75s;
    -moz-animation-iteration-count: 1;
    -moz-animation-direction: alternate;
    -moz-animation-timing-function: ease-in-out;
    -moz-animation-fill-mode: both;
    -moz-animation-delay: 0s;
    animation-name: accordionOut;
    animation-duration: 0.75s;
    animation-iteration-count: 1;
    animation-direction: alternate;
    animation-timing-function: ease-in-out;
    animation-fill-mode: both;
    animation-delay: 0s;
}

@-webkit-keyframes accordionIn {
    0% {
        opacity: 0;
        -webkit-transform: scale(0.8);
    }

    100% {
        opacity: 1;
        -webkit-transform: scale(1);
    }
}

@-moz-keyframes accordionIn {
    0% {
        opacity: 0;
        -moz-transform: scale(0.8);
    }

    100% {
        opacity: 1;
        -moz-transform: scale(1);
    }
}

@keyframes accordionIn {
    0% {
        opacity: 0;
        transform: scale(0.8);
    }

    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@-webkit-keyframes accordionOut {
    0% {
        opacity: 1;
        -webkit-transform: scale(1);
    }

    100% {
        opacity: 0;
        -webkit-transform: scale(0.8);
    }
}

@-moz-keyframes accordionOut {
    0% {
        opacity: 1;
        -moz-transform: scale(1);
    }

    100% {
        opacity: 0;
        -moz-transform: scale(0.8);
    }
}

@keyframes accordionOut {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(0.8);
    }
}
                 /*-----------------------------Price Table------------------------------------*/
.pp-selection {
    word-break: break-word;
}
.pp-selection .background-position {
    background-position: 0 0;
}
.pp-container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}
html .pp-container {
    width: 100%;
    max-width: 100%;
}
.pp-selection .background-position {
    background-position: 0 0;
}
.padding-bottom--50 {
    padding-bottom: 50px;
}
.padding-top--25 {
    padding-top: 25px;
}
.pp-selection .background-position {
    background-position: 0 0;
}
.responsive-columns--width {
    width: 100%;
}
.pp-selection * {
    line-height: 1.5;
    margin: 0;
}
.pp-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.justify-content-center {
    -webkit-box-pack: center !important;
    -ms-flex-pack: center !important;
    justify-content: center !important;
}
.pp-row--left {
    text-align: left;
}
.col-12, .col-10 {
    position: relative;
    width: 100%;
}
@media (min-width: 576px) {
    .col-12 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
}
@media (min-width: 1366px) {
    .col-10 {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 83.33333%;
        flex: 0 0 83.33333%;
        max-width: 83.33333%;
    }
}
@media only screen and (max-width: 1117px) {
    #price_table .price-card-grid {
        grid-template-columns: 1fr;
    }
}
.pp-selection button {
    border-radius: 0;
    text-align: inherit;
    background: 0 0;
    box-shadow: none;
    padding: 0;
    cursor: pointer;
    border: none;
    color: inherit;
    font: inherit;
}
.price-card-grid {
    display: grid;
    grid-auto-flow: column;
    gap: var(--desktop-gap);
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
}
.price-card-grid-item.recommended__item .recommendedContainer {
    padding: .625rem 0;
}
.recommendedContainer {
    background-color: var(--theme-green) !important;
}
.price_card .recommendedContainer {
    display: block;
    position: inherit;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.price-card-grid-item > :not(.space-holder-recommended) {
    border-left: 1px solid var(--regular-border);
    border-right: 1px solid var(--regular-border);
    padding: 0 .9375rem;
}
.price-card-grid-item > :last-child {
    border: none;
}
.separator-line .noColor {
    display: none;
}
.price_card .recommendedContainer .recommendedText {
    display: block;
    position: inherit;
    text-transform: uppercase;
}
.price-card-grid-item.recommended__item .recommendedContainer .recommendedText, .price-card-grid-item.recommended__item .recommendedContainer p {
    color: #fff;
    font-size: .875rem;
    font-weight: 600;
    letter-spacing: .1875rem;
    line-height: 1.125rem;
    text-align: center;
    padding: 0;
    margin: 0;
}
.price-card-container {
    font-family: Roboto, sans-serif;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    max-width: 100%;
    overflow: visible;
}
.price-card-container p {
    margin: 0px;
}

@media only screen and (min-width: 1120px) {
    #price_table .price-card-grid {
        grid-template-columns: repeat(3, minmax(300px, 360px));
    }

    #price_table--1 > * {
        grid-column: 1;
    }

    #price_table--2 > * {
        grid-column: 2;
    }

    #price_table--3 > * {
        grid-column: 3;
    }
}

@media only screen and (max-width:1119px) {
    #price_table--1 > * {
        grid-column: 1;
    }

    #price_table--2 > * {
        grid-column: 1;
    }

    #price_table--3 > * {
        grid-column: 1;
    }

    .separator {
        display: block;
    }
}

@media only screen and (max-width:390px) {
    .pricing .currency, .pricing .price-font {
        font-size: 29px !important;
        line-height: 25px !important;
    }

    .pp-selection .price-card-grid-item .save-text {
        height: 30px !important;
        min-width: 88px !important;
    }
}

@media only screen and (max-width:355px) {
    .pricing .currency, .pricing .price-font {
        font-size: 26px !important;
        line-height: 22px !important;
    }

    .pp-selection .price-card-grid-item .save-text {
        height: 30px !important;
        min-width: 67px !important;
        font-size: 14px;
    }
}

.separator {
    height: 20px;
}
:root {
    --recommended-background: #1CC248;
    --regular-border: #7976F5;
    --recommended-border: #5551F2;
    --regular-text-color: #333333;
    --leght-text-color:#888888;
    --desktop-gap: 0 30px;
    --theme-green: #1CC248;
    --theme-black: #000000;
}
.price_card {
    padding: 2rem 0;
    overflow-wrap: break-word;
    height: 100%;
}
.pp-selection .p--small-600 {
    font-weight: 600;
    line-height: 1.25rem;
    letter-spacing: 1px;
}
.price-card-grid-item:not(.recommended__item) > :nth-child(2) {
    border-top: 1px solid var(--regular-border);
    border-top-left-radius: .625rem;
    border-top-right-radius: .625rem;
    padding-top: .625rem;
}
.price-card-grid-item > :not(.space-holder-recommended, .card__feature) {
    background-color: white;
}
.price-card-grid-item .card-name {
    scroll-snap-align: start;
}
.price-card-grid-item.recommended__item > * {
    border-left: 1px solid var(--recommended-background);
    border-right: 1px solid var(--recommended-background);
}
.price-card-grid-item.recommended__item > :last-child {
    border: none;
}
.price-card-grid-item.recommended__item > :first-child {
    border-top: 1px solid var(--recommended-background);
    border-top-left-radius: .625rem;
    border-top-right-radius: .625rem;
}
.price-card-grid-item.recommended__item > :nth-last-child(2) {
    border-bottom: 1px solid var(--recommended-background);
    border-bottom-left-radius: .625rem;
    border-bottom-right-radius: .625rem;
}
.price-card-grid-item .card-name-text {
    color: var(--theme-black, #000);
    font-size: 1.25rem;
    font-weight: 600;
    line-height: 1.6875rem;
    margin: 1rem 0;
}
.price-card-grid-item .card-description-text {
    color: var(--regular-text-color);
    font-size: .875rem;
    font-weight: 400;
    line-height: 1.25rem;
    margin: 0 0 1rem;
}
.price-card-grid-item .card-price-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
    padding-bottom: .625rem;
    gap: .625rem;
}
.pricing .currency, .pricing .price-font {
    font-size: 35px;
    line-height: 32px;
}

.pricing span {
    font-weight: 700;
}

.price-card-grid-item .card-price-container .pricing .card-price .card-price--payment-term,
.price-card-grid-item .card-price-container .pricing .card-price .payment-term,
.price-card-grid-item .card-price-container .pricing p:has(.price-font) .card-price--recurrence,
.price-card-grid-item .card-price-container .pricing p:has(.price-font) .payment-term {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 2rem;
    letter-spacing: .75px;
    text-transform: none;
}

.pp-selection .price-card-grid-item .save-text {
    height: 34px;
    width: fit-content;
    min-width: 90px;
    padding: 0 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: var(--recommended-background);
}
.pp-selection .price-card-grid-item .save-text p {
    color: #fff;
    margin-bottom: 3px;
}
.price-card-grid .p--small-600 {
    letter-spacing: normal;
}
.rte__blue--800, a {
    color: #7976F5;
}
.pp-selection span {
    line-height: inherit;
}
.card .cta {
    margin-bottom: 0;
}
.m-0 {
    margin: 0 !important;
}
.cta.section {
    height: 16px;
}
.rut.text.section {
    margin-top: -16px;
    padding-top: 5px;
}
.price-card-grid-item > :nth-last-child(2) {
    border-bottom: 1px solid var(--regular-border);
    border-bottom-left-radius: .625rem;
    border-bottom-right-radius: .625rem;
    padding-bottom: .625rem;
}
.price-card-grid-item .rut ul {
    list-style: none;
    margin: .75rem 0;
    padding: 0;
}
.price-card-grid-item .rut ul a, .price-card-grid-item .rut ul li, .price-card-grid-item .rut ul p {
    color: var(--regular-text-color);
    font-size: .875rem;
    font-weight: 400;
    line-height: 1rem;
    margin: 0;
    padding-bottom: .7rem;
}
.price-card-grid-item {
    display: contents;
}