/********************************      Basic Structure      ********************************/

:root {
    --primary: #273a52 !important;
    --secondary: #325988 !important;
    --tertiary: #106a99 !important;
    --secondary-background: #f9fafb !important;

    --bs-primary: #273a52 !important;

    .btn-primary {
        background-color: #325988 !important;
        border-color: #325988 !important;

        &:hover {
            background-color: #106a99 !important;
            border-color: #106a99 !important;
            color: #fff !important;
        }
    }

    .btn-secondary {
        background-color: #106a99 !important;
        border-color: #106a99 !important;
        color: white !important;

        &:hover {
            background-color: #325988 !important;
            border-color: #325988 !important;
        }
    }

    .card-title {
        color: var(--primary);
    }
}
html,
body {
    font-family: Calibri, Arial !important;
    background-color: #fff;
    color: var(--primary, #273a52) !important;
}

body.no-scroll {
    overflow: hidden;
}

.text-white a {
    color: #fff !important;
}
.text-secondary {
    color: var(--secondary) !important;
}
.fs-18 {
    font-size: 18px !important;
}
.no-underline {
    text-decoration: none;
}
.w-30 {
    width: 30% !important;
}
.px-1px {
    padding: 0 1px !important;
}

h1,
h2,
h3,
h4,
h5 {
    font-weight: bold !important;
}
h1 {
    font-size: 48px;
}

/* heading-classes: fix for duplicate headings */
p.h1 {
    font-size: 48px;
    font-weight: bold !important;
}
p.h4 {
    font-size: 1.5rem !important;
    font-weight: bold !important;
}

p.subtext {
    text-align: left !important;
    color: var(--primary) !important;

    a {
        color: var(--primary) !important;
        font-weight: bold;
    }
}

@media (max-width: 768px) {
    h1 {
        font-size: 36px !important;
    }
    p {
        color: #555;
    }

    #buy-credit {
        .mobile-voip-col-right {
            padding-top: 60px !important;
            padding-bottom: 60px !important;
            background: #e4f8fd !important;
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
        }

        .main-content {
            padding-top: 0px !important;
            color: #fff !important;
            text-align: center;
        }
    }
}
/********************************      General Classes      ********************************/

.img-link {
    display: block;
    text-indent: -9999px;
}
.divider {
    background: transparent url("/images/bg_horizontal_divider.png") repeat-x;
    height: 2px;
    width: 100%;
    clear: both;
    margin: 20px 0;
}
.selectbox {
    background: #ffffff url("/images/btn_dropdown.png") 95% 50% no-repeat;
    border: 1px solid #e0d9da;
    padding: 5px;
    color: #666666;
}

/********************************   Default block styles   ********************************/

#header .header-logo a.logo {
    background: transparent url("/images/img_logo.png") no-repeat;
    background-size: contain;
    width: 86px;
    height: 32px;
}

#footer .logo a.logo {
    background: transparent url("/images/img_logo.png") no-repeat;
    width: 150px;
    height: 56px;
}

.nav-link.active {
    color: var(--tertiary) !important;
}

.nav-item {
    a {
        font-weight: bold;
        font-size: 18px !important;

        @media (max-width: 992px) {
            &:hover {
                color: var(--tertiary) !important;
            }
        }
    }
}

nav {
    @media (max-width: 991px) {
        box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2);
    }
}

#iphone-logo,
#appstore-logo {
    background: transparent url("/images/btn_downloads_y40.png") no-repeat !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#symbian-logo {
    background: transparent url("/images/btn_downloads_y40.png") 0 -160px no-repeat !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#android-logo {
    background: transparent url("/images/btn_downloads_y40.png") 0 -80px no-repeat !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#blackberry-logo {
    background: transparent url("/images/btn_downloads_y40.png") 0 -120px no-repeat !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#windowsphone-logo {
    background: transparent url("/images/btn_windows_phone.png") !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#windowsphone_eight-logo {
    background: transparent url("/images/btn_windows8.png") !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}
#asha-logo {
    background: transparent url("/images/btn_downloads_y40.png") 0 -200px no-repeat !important;
    width: 132px !important;
    height: 40px !important;
    padding: 0 !important;
}

/* footer */
#footer {
    p#the-cheapest-rates-for-high-quality-calling-footer {
        color: #555 !important;
    }

    a#privacy-policy,
    #cookie-policy {
        font-weight: 700;
        font-size: 18px;
        padding-right: 10px;
        padding-bottom: 20px;
    }

    margin-top: 80px !important;
}
img.my-2 {
    width: 149px;
    height: 44px;
}
#footer {
    span.copyright {
        color: #667085;
        display: ruby !important;
        padding-top: 10px;
        padding-left: 0px !important;
        font-weight: 400 !important;
        font-family: "Lucida Sans", "Lucida Sans Regular", "Lucida Grande",
            "Lucida Sans Unicode", Geneva, Verdana, sans-serif;
    }
}

#footer .languages {
    width: 150px;
}
#footer .languages span {
    padding-left: 25px;
    vertical-align: middle;
    display: block;
    line-height: 19px;
}
#footer #language-dropdown {
    border: 1px solid #e0d9da;
    border-radius: 10px;
    padding: 10px;
    background-color: #ffffff;
    color: #666666;
}
#footer .dropdown-menu {
    padding: 10px;
    cursor: pointer;
}
#footer .dropdown .language-option {
    height: 19px;
}
#footer .dropdown .language-option:hover {
    background-color: #3a98ea;
    cursor: pointer;
}
#footer .lang-en {
    background: transparent url("/images/flags/English.png") left center
        no-repeat;
}
#footer .lang-ar {
    background: transparent url("/images/flags/Arabic.png") left center
        no-repeat;
}
#footer .lang-zh {
    background: transparent url("/images/flags/Chinese.png") left center
        no-repeat;
}
#footer .lang-fr {
    background: transparent url("/images/flags/French.png") left center
        no-repeat;
}
#footer .lang-de {
    background: transparent url("/images/flags/German.png") left center
        no-repeat;
}
#footer .lang-it {
    background: transparent url("/images/flags/Italian.png") left center
        no-repeat;
}
#footer .lang-ko {
    background: transparent url("/images/flags/Korean.png") left center
        no-repeat;
}
#footer .lang-pt {
    background: transparent url("/images/flags/Portugese.png") left center
        no-repeat;
}
#footer .lang-ru {
    background: transparent url("/images/flags/Russian.png") left center
        no-repeat;
}
#footer .lang-es {
    background: transparent url("/images/flags/Spanish.png") left center
        no-repeat;
}
#footer .selectbox {
    padding: 10px !important;
    color: #555 !important;
    border-radius: 10px !important;
    margin-bottom: 10px !important;
}

/* Home and navbar */
button#home.btn.btn-sm.btn-secondary {
    width: 90px;
    margin-left: 10px;
}

#homepage {
    .main-content {
        width: auto;
        height: auto;
    }

    .process-flow {
        height: auto;
        background-color: var(--mdc-theme-primary, #273a52);
        position: relative;
        z-index: 1;

        .voip-credits-text {
            width: auto;
            padding-top: 40px;
        }
    }

    .btn-download {
        position: relative;
        z-index: 1;
        height: auto;
        width: auto;
        display: inline-block;

        &.microsoft {
            width: 150px;
            height: 45px;

            @media (max-width: 370px) {
                width: 95%;
            }
        }

        @media (max-width: 370px) {
            height: 100%;
            width: 95%;
        }
    }

    p#mobilevoip-make-free-calls {
        color: #555 !important;
    }
}

.qr-image {
    padding: 0;
    height: 150px !important;
    width: 150px !important;
}

.carousel {
    align-items: center;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    max-height: 50em;
    min-height: 30em;
}

.carousel-item {
    border-radius: 45px;

    img {
        border-radius: 41px;
        transform: scale(0.8);
        margin-top: 5em;

        @media (max-width: 565px) {
            margin-top: 0;
            transform: scale(0.9);
        }

        @media (min-width: 567px) {
            margin-top: 0;
            transform: scale(1);
        }

        @media (min-width: 800px) {
            margin-top: 5em;
            transform: scale(0.8);
        }
    }
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
    background-image: none;
    width: 2rem;
    height: 2rem;
}

.carousel-control-prev-icon::after,
.carousel-control-next-icon::after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
}

.carousel-control-prev-icon::after {
    border-width: 10px 12px 10px 0;
    border-color: transparent black transparent transparent;
}

.carousel-control-next-icon::after {
    border-width: 10px 0 10px 12px;
    border-color: transparent transparent transparent black;
}

#iphone-mockup {
    transform: scale(0.8);

    @media (max-width: 400px) {
        transform: scale(0.7);
    }

    @media (max-width: 325px) {
        transform: scale(0.6);
    }
}

a.nav-link.d-block.d-lg-none.login {
    outline-style: solid !important;
    outline-width: thin !important;
    text-align: center !important;
    border-radius: 10px !important;
    outline-color: lightgray !important;

    &:hover {
        color: var(--tertiary) !important;
    }
}

a.nav-link.d-block.d-lg-none.signup {
    margin-top: 10px !important;
    background-color: var(--secondary) !important;
    text-align: center !important;
    color: #ffffff !important;
    border-radius: 10px !important;

    &:hover {
        color: var(--tertiary) !important;
    }
}

ul.navbar-nav.me-auto.mb-2.mb-sm-0 {
    padding: 24px 0px 24px 0px !important;
}

button.btn.btn-primary.d-none.d-lg-block.signup-desktop {
    margin-top: 5px !important;
    border-radius: 10px !important;
    min-width: 95px !important;
    height: 44px !important;
}

.navbar-toggler:focus {
    box-shadow: none !important;
}

nav.navbar-expand-lg.navbar-light.fixed-top.bg-light {
    background-color: #fff !important;
}

/* compare_rates */

#compare-table.tablesorter-hidden {
    display: none;
}

#loading.hide {
    display: none;
}

#compare-rates-form {
    width: 50%;
    margin-bottom: 50px !important;

    @media (max-width: 767px) {
        width: 100% !important;
        text-align: center;
    }

    .btn {
        height: 44px !important;
        width: auto !important;
        background-color: var(--tertiary) !important;
        color: #ffffff !important;

        &:hover {
            background-color: var(--secondary) !important;
        }
    }
}

#compare-table {
    th {
        cursor: pointer;
    }
    border-collapse: collapse;
}

#compare-table th,
#compare-table td.add-border {
    border: 0.5px solid #e2e2e2;
    padding: 6px;

    .custom-margin {
        margin-left: 5px;

        @media (min-width: 450px) {
            margin-left: 20px;
        }

        @media (max-width: 390px) {
            margin-left: 0;
        }
    }
}

#brand-information {
    justify-content: space-between;
}

.compare-rates-result {
    .page-header {
        @media (max-width: 767px) {
            text-align: center;
        }
    }

    a {
        text-decoration: none;
    }
}

.btn-download {
    position: relative;
    z-index: 1;
    height: auto;
    width: auto;
    display: inline-block;

    &.microsoft {
        width: 150px;
        height: 45px;

        @media (max-width: 370px) {
            width: 95%;
        }
    }

    @media (max-width: 370px) {
        height: 100%;
        width: 95%;
    }
}

.brand-details {
    word-break: break-all !important;
}

.nowrap {
    white-space: nowrap;
}

.brand-list-wrapper {
    height: fit-content;
    background: #ededed;
    border-radius: 20px;
    padding: 20px;
    text-align: center;
}

#brand-features {
    background: #ededed;
    border-radius: 10px;
    padding: 20px;
}

.feature-content ul {
    list-style-type: none;
    padding-left: 0;
}

#brand-best_deals-module {
    margin-top: 20px;
}

.img-block {
    border: 1px solid #e2e2e2;
    display: flex;
    align-items: center;
    width: 215px;
    height: auto;

    @media (max-width: 991px) {
        width: auto !important;
        height: 150px !important;
    }
}

.custom-width {
    @media (max-width: 991px) {
        width: auto !important;
    }
}

.currency {
    font-weight: 500 !important;
    color: #7c7c7c;
}

.label-text {
    font-size: 23px;
}

.img-polaroid {
    width: 100%;
}

.sorter {
    display: inline-block;
    width: 13px;
    height: 13px;
    margin: 0px 0px 3px 4px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    vertical-align: middle;
}

/* When sorting up */
.headerSortUp .sorter {
    background-image: url(/images/arrow_up_black.png);
}

/* When sorting down */
.headerSortDown .sorter {
    background-image: url(/images/arrow_down_black.png);
}

/* supported voip brands */
.form-select.mb-2 {
    color: #555;
    width: 30% !important;
    @media (max-width: 767px) {
        width: 100% !important;
    }
    margin: 0px !important;
}

#supportedpage .header {
    background-color: var(--primary) !important;
    text-align: center;
    justify-content: center;
    flex-direction: column;
    height: 15vh;

    select#signup_dropdown {
        background-color: #ffffff !important;
    }

    .select-brand {
        justify-content: center;
        margin-top: 30px;
    }
}

.custom-button {
    height: 44px;
    width: 80px;
    background-color: var(--tertiary) !important;
    color: #ffffff !important;

    &:hover {
        background-color: var(--secondary) !important;
    }
}

#supportedpage .logos {
    justify-content: space-evenly;
    align-items: center;

    .image-list {
        display: flex;
        width: 50%;
        justify-content: center;
    }

    .col {
        padding: 10px;
        align-items: center;
        display: flex;
        justify-content: center;
    }

    .row {
        background-color: #f9fafb;
    }
}

#supportedpage {
    p {
        text-align: center;
        color: var(--primary) !important;

        .popup-trigger {
            font-weight: bold;
        }
    }
}

.popup {
    text-align: center;
    height: 50%;
    overflow-y: scroll;
    width: 60%;
    min-height: 60%;
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    color: black;
    border-radius: 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
    z-index: 1000;

    b {
        color: var(--primary);
    }

    @media (max-width: 767px) {
        width: 95%;
        min-height: 60%;
        max-height: 80%;
        overflow-y: scroll;
        overflow-x: hidden;
    }

    .popup-header {
        background: white;
        border-radius: 10px;
        position: sticky;
        top: 0;
    }

    .button-close {
        background: white;
        border-radius: 10px;
        position: sticky;
        bottom: 0;
    }
}

.popup::-webkit-scrollbar {
    width: 6px;
}

.popup::-webkit-scrollbar-track {
    background: transparent;
}

.popup::-webkit-scrollbar-thumb {
    background-color: #ccc;
    border-radius: 3px;
}

.popup-text {
    margin-top: 0 !important;
    margin-bottom: 10px !important;
}

.popup-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999;
}

.hidden {
    display: none;
}

.popup-trigger {
    cursor: pointer;
    text-decoration: underline;
}

/* buy credits */
#buy-credit {
    .page-title,
    .page-note {
        @media (max-width: 768px) {
            text-align: center !important;
        }
        color: #101828;
    }

    .page-note {
        color: #555;
    }

    .mobile-voip-col-left {
        padding: 176px 180px;

        @media (max-width: 950px) {
            padding: 35px !important;
            margin: 150px 0;
        }

        @media (max-width: 767px) {
            padding: 35px !important;
            margin: 0;
        }
    }

    .mobile-voip-col-right {
        padding-top: 50px;
        padding-bottom: 54px;
        background-image: url(/images/buy_credits_login_phone_background_v3.png);
        background-position: center; /* Center the image */
        background-repeat: no-repeat; /* Do not repeat the image */
        background-size: cover; /* Resize the background image to cover the entire container */
    }

    #iphone_mockup_1 {
        position: absolute;
        width: 433px;
        height: 700px;
    }

    .justify-content-center {
        justify-content: center !important;
    }

    .main-content {
        padding-top: 600px;
        color: #fff;
        text-align: center;

        .btn {
            background-color: var(--tertiary);
            color: #fff;
            width: 100%;
        }

        #signup_dropdown {
            width: 100% !important;
        }

        select#signup_dropdown.form-select {
            color: #555;
        }
    }

    .link-secondary a {
        color: var(--secondary, #325988) !important;
        text-decoration: none;
        font-weight: bold;
    }
}

.login .submit-button {
    background: transparent url("/images/btn_login.png") no-repeat;
    width: 66px;
    height: 31px;
    border: none;
    margin: 20px 0;
    cursor: pointer;
    text-indent: -99999px;
    padding: 0;
}
.login .submit-button:hover {
    background: transparent url("/images/btn_login.png") 0 -31px no-repeat;
    width: 66px;
    height: 31px;
    text-indent: -99999px;
}
.signup-panel .submit-button {
    background: transparent url("/images/btn_signup_buycredit.png") no-repeat;
    width: 86px;
    height: 31px;
    border: none;
    margin: 20px 0;
    padding: 0;
}
.signup-panel .submit-button:hover {
    background: transparent url("/images/btn_signup_buycredit.png") 0 -31px no-repeat;
    width: 86px;
    height: 31px;
}
.div-table {
    display: table;
    border-spacing: 0 10px;
    border-collapse: separate;
}
.div-table p {
    display: table-row;
}
.div-table .input-text {
    min-width: 320px;
    width: auto;
    *width: 350px;
}
.div-table .input-text label,
.div-table .input-selectbox label {
    white-space: nowrap;
    float: left;
    width: auto !important;
    margin-right: 5px;
    display: table-column;
}
.div-table .input-text .text-input,
.div-table .input-selectbox select {
    white-space: nowrap;
    float: right;
    display: table-column;
}
.div-table .row_error_message {
    float: right;
    width: 220px;
}
#buy_creditspage .input-selectbox select {
    width: 275px;
}
#buy_creditspage .input-captcha {
    display: block;
    margin-left: 110px;
}
.usercode {
    margin-left: 110px;
}
.usercode label {
    display: block;
    margin-left: 110px;
    width: 240px;
}
.usercode .text-input {
    float: right;
    width: 235px;
}

/* call types */
.description-mobilevoip,
#calltypes {
    color: #555 !important;
}

#calltypes p {
    line-height: 1.25rem !important;
    color: #555 !important;
}
#calltypespage {
    background-color: var(--primary) !important;
    color: #fff !important;
    height: 50vh;
    text-align: center;
    justify-content: center;
    flex-direction: column;

    p {
        line-height: 1.25rem !important;
        color: #555 !important;
    }

    p#different-call-types {
        color: #3a98ea !important;
    }

    .container {
        padding-top: 10rem !important;
    }

    .container-mobile {
        padding-top: 8rem !important;
    }
}
#calltypes .card {
    background-color: #f9fafb;
    border: 0;
}

div#calltypes.row.d-flex.justify-content-around {
    padding-top: 20px;
}

/* download */
#component-mobilevoip-features .divider {
    background: transparent url("/images/download_divider.png") repeat-x !important;
}
#component-mobilevoip-features .form-content {
    padding: 20px;
}

#component-mobilevoip-features #download-options {
    width: 320px;
}
#download-options .download-links {
    width: 159px;
    height: 28px;
    display: block;
    text-indent: -9999px;
    margin: 5px 0;
}

#download-options .download-links.iphone {
    background: transparent url("/images/btn_download_options.png") 0 0
        no-repeat;
}
#download-options .download-links.iphone:hover,
#download-options .download-links.iphone.active {
    background: transparent url("/images/btn_download_options.png") -160px 0 no-repeat;
}

#download-options .download-links.blackberry {
    background: transparent url("/images/btn_download_options.png") 0 -28px no-repeat;
}
#download-options .download-links.blackberry:hover,
#download-options .download-links.blackberry.active {
    background: transparent url("/images/btn_download_options.png") -160px -28px
        no-repeat;
}

#download-options .download-links.android {
    background: transparent url("/images/btn_download_options.png") 0 -56px no-repeat;
}
#download-options .download-links.android:hover,
#download-options .download-links.android.active {
    background: transparent url("/images/btn_download_options.png") -160px -56px
        no-repeat;
}

#download-options .download-links.symbian {
    background: transparent url("/images/btn_download_options.png") 0 -84px no-repeat;
}
#download-options .download-links.symbian:hover,
#download-options .download-links.symbian.active {
    background: transparent url("/images/btn_download_options.png") -160px -84px
        no-repeat;
}

#download-options .download-links.windowsphone {
    background: transparent url("/images/btn_download_options.png") 0 -112px no-repeat;
}
#download-options .download-links.windowsphone:hover,
#download-options .download-links.windowsphone.active {
    background: transparent url("/images/btn_download_options.png") -160px -112px
        no-repeat;
}

#download-options .download-links.windowsphone_eight {
    background: transparent url("/images/btn_download_options.png") 0 -223px no-repeat;
}
#download-options .download-links.windowsphone_eight:hover,
#download-options .download-links.windowsphone_eight.active {
    background: transparent url("/images/btn_download_options.png") -160px -223px
        no-repeat;
}

#download-options .download-links.freesms {
    background: transparent url("/images/btn_download_options.png") 0 -140px no-repeat;
}
#download-options .download-links.freesms:hover,
#download-options .download-links.freesms.active {
    background: transparent url("/images/btn_download_options.png") -160px -140px
        no-repeat;
}

#download-options .download-links.qrcode {
    background: transparent url("/images/btn_download_options.png") 0 -168px no-repeat;
}
#download-options .download-links.qrcode:hover,
#download-options .download-links.qrcode.active {
    background: transparent url("/images/btn_download_options.png") -160px -168px
        no-repeat;
}

#download-options .download-links.olderversions {
    background: transparent url("/images/btn_download_options.png") 0 -196px no-repeat;
}
#download-options .download-links.olderversions:hover,
#download-options .download-links.olderversions.active {
    background: transparent url("/images/btn_download_options.png") -160px -196px
        no-repeat;
}

#download-options .download-links.asha {
    background: transparent url("/images/btn_download_options.png") 0 -251px no-repeat;
}
#download-options .download-links.asha:hover,
#download-options .download-links.asha.active {
    background: transparent url("/images/btn_download_options.png") -160px -251px
        no-repeat;
}

#component-mobilevoip-features .form-content {
    min-height: 210px;
}
#component-mobilevoip-features .download-content {
    width: 100%;
}
#component-mobilevoip-features .download-content.inactive {
    display: none;
}

#content-app-images .app-details.directlink {
    float: left;
    min-height: 200px;
}
#content-app-images .app-details {
    width: 130px;
    float: left;
    margin: 10px 10px 0;
}
#content-app-images .app-details img {
    float: right;
    border-radius: 5px;
}
#content-app-images .app-details.windows8 {
    width: 190px;
}

#content-freesms .form {
    margin: 10px;
}
#content-freesms .input-container {
    margin: 10px 0;
}
#content-freesms .input-container label {
    display: block;
    margin-bottom: 10px;
}
#content-freesms .select-country {
    width: 300px;
}
#content-freesms .input-country-code {
    clear: left;
    display: inline-block;
    margin-right: 10px !important;
}
#content-freesms .input-phone-number {
    clear: right;
    display: inline-block;
}
#content-freesms .get-sms-button {
    background: transparent url("/images/btn_get_sms.png") 0 0 no-repeat;
    height: 33px;
    width: 93px;
    text-indent: -9999px;
    border: none;
    cursor: pointer;
}
#content-freesms .get-sms-button:hover {
    background: transparent url("/images/btn_get_sms.png") 0 -33px no-repeat;
    height: 33px;
    width: 93px;
    text-indent: -9999px;
    border: none;
    cursor: pointer;
}

#content-olderversions .mobilevoip-versions-download {
    margin: 0 50px;
}
#content-olderversions .mobilevoip-versions-download ul {
    clear: both;
}
#content-olderversions .mobilevoip-versions-download ul li.left,
#content-olderversions .mobilevoip-versions-download a {
    text-decoration: underline;
    font-weight: 700;
}
#content-olderversions .mobilevoip-versions-download ul li.left {
    float: left;
}
#content-olderversions .mobilevoip-versions-download ul li.right {
    float: right;
}
/* errors */

/* helpdesk */
#hepldesk {
    background-color: var(--primary) !important;
    color: #fff !important;
}
#page-helpdesk {
    width: 100%;
}
#page-helpdesk .searchinput {
    background-color: none !important;
    border: none !important;
}
div.searchinput {
    background-color: none !important;
    background: none !important;
}
div.form-group.maxwwidth {
    padding-right: 0px !important;
}
div.category-box.category-box-desktop {
    margin-left: 10px;
    border-radius: 4px !important;
}
div.category-box.category-box-desktop.category-box-right-desktop {
    margin-right: 10px !important;
}
input#helpdesk-search.form-control.helpdesk-search-input {
    border-color: none !important;
    color: none !important;
    box-shadow: none !important;
}
div.category-box.category-box-mobile,
div.category-box.category-box-desktop.category-box-right-mobile {
    border-radius: 4px !important;
}
#page-helpdesk .main-content {
    width: 503px;
}
#page-helpdesk .main-content strong {
    font-weight: 700;
}
#page-helpdesk .button {
    background-color: #2e7b93;
}
#most-viewed h3 {
    line-height: 20px !important;
    width: 96% !important;
    padding-bottom: 10px;
}
#customerservicepage {
    width: 100% !important;
}
#customerservicepage .helpdesk-component-search .helpdesk_search_button {
    float: left;
    margin-left: 19px;
}
#helpdesk-main .helpdesk-item {
    width: 211px !important;
    margin: 20px 9px 0px !important;
}
.helpdesk-component-search .text-input {
    width: 20em;
}
.article-content p {
    padding: 5px 0 10px;
}
.helpdesk-buttons .button,
.helpdesk-component-search .button,
.helpdesk-search-buttons .button {
    padding: 5px 5px 5px 15px !important;
}
#customerservicepage .customerservice-login-email-form .login .submit-button {
    background: transparent url("/images/btn_proceed.png") no-repeat;
    width: 89px;
    height: 31px;
}
#customerservicepage
    .customerservice-login-email-form
    .login
    .submit-button:hover {
    background: transparent url("/images/btn_proceed.png") 0 -31px no-repeat;
    height: 31px;
}
.hero-banner {
    background-color: var(--primary) !important;
    color: #fff !important;
    height: 15vh !important;
    text-align: center;
    justify-content: center;
    flex-direction: column;

    @media (max-width: 990px) {
        height: 15vh !important;
    }

    @media (max-height: 750px) {
        height: 15vh !important;
    }

    &.supported-brands {
        @media (max-height: 750px) {
            height: 15vh !important;
        }
    }
}

ul.article-list {
    padding: 0 !important;
}
#helpdesk-breadcrumbs > div.breadcrumbs > ul > li.breadcrumb-root > a,
#helpdesk-topics p a {
    color: var(--secondary);
}

#helpdesk-main > div > div:nth-child(1) > header > h1,
#helpdesk-main
    > div
    > div.category-box.category-box-mobile.category-box-right-mobile
    > header
    > h1,
#helpdesk-topics > div > header > h1,
.category-box header h1 {
    color: var(--secondary) !important;
    padding: 10px;
    padding-left: 15px;
}

#helpdesk-main-articles,
#helpdesk-main
    > div
    > div.category-box.category-box-mobile.category-box-right-mobile
    > ul,
#helpdesk-topics > div > ul,
#helpdesk-breadcrumbs > div.breadcrumbs > ul,
#helpdesk-breadcrumbs > div.breadcrumbs > ul > li {
    padding-left: 0;
}

#helpdesk-main-articles > li,
#helpdesk-main
    > div
    > div.category-box.category-box-mobile.category-box-right-mobile
    > ul
    > li,
#helpdesk-topics > div > ul > li,
#helpdesk-breadcrumbs > div.breadcrumbs > ul > li {
    text-indent: 0;
}

#helpdesk-breadcrumbs {
    overflow: auto;
}

#helpdesk-breadcrumbs > div.breadcrumbs > ul > li > a {
    text-decoration: none;
}

#helpdesk-breadcrumbs > div.breadcrumbs > ul > li.breadcrumb-active > a {
    color: #273a52;
}

#helpdesk-article-buttons,
#page-helpdesk > h1,
#helpdesk-message > p {
    text-align: center;
}

#helpdesk-topics li {
    margin-left: 0;
    text-indent: 0;
}

#helpdesk-topics form label {
    color: #7f7f7f !important;
}

#helpdesk-topics form {
    padding-bottom: 0;
}
/* supported brands */

/*retrieve password*/
#form-retrieve-password .submit-button {
    background: transparent url("/images/btn_getpassword.png") no-repeat;
    width: 132px;
    height: 35px;
    border: none;
    margin: 20px 0;
    cursor: pointer;
    text-indent: -99999px;
    padding: 0;
}
#form-retrieve-password .submit-button:hover {
    background: transparent url("/images/btn_getpassword.png") 0 -35px no-repeat;
    width: 132px;
    height: 35px;
    text-indent: -99999px;
}
#form-retrieve-password .input-text,
#form-retrieve-password .input-selectbox {
    padding: 5px 0px;
}
#form-retrieve-password .input-captcha {
    padding: 25px 0px 5px;
}
#form-retrieve-password .input-text label,
#form-retrieve-password .input-selectbox label {
    width: 110px;
}
#form-retrieve-password .form-detail {
    margin-top: 15px;
}
#form-retrieve-password.div-table {
    border-spacing: 0 5px;
}
#form-retrieve-password .div_error {
    display: table-row;
}
#form-retrieve-password .div_error span {
    float: right;
}
.input-text.not-inline {
    display: inline-block;
}
.input-text.not-inline label {
    float: none;
    display: block;
}
.input-text.not-inline .text-input {
    float: none;
    display: inline-block;
}
.input-captcha.not-inline #captcha_img {
    float: none;
    display: block;
}
.input-captcha.not-inline #refresh_captcha {
    float: none;
    display: inline-block;
}
#form-retrieve-password p.input-text.last span {
    margin: 0;
    display: inline;
}
#form-retrieve-password .input-notification {
    background-position: left 5px !important;
}

/* privacy policy */

#privacypage,
#cookie_policypage {
    justify-content: center;
    display: flex;

    h3,
    h5 {
        font-weight: bold !important;
    }
}
#privacypage .numbered-list {
    margin-left: 25px;
}
#privacypage .numbered-list li {
    font-weight: bold;
}
#privacypage p {
    padding: 0px 0px 15px;
    font-weight: normal;
}

/* forgot username*/
.retrieve-username .submit-button {
    background: transparent url("/images/forgot-username-btn.png") no-repeat;
    width: 163px;
    height: 31px;
    border: none;
    margin: 20px 0;
    cursor: pointer;
    text-indent: -99999px;
    padding: 0;
}
.retrieve-username .submit-button:hover {
    background: transparent url("/images/forgot-username-btn.png") 0 -31px no-repeat;
}

/*custom by language*/
#body {
    @media (max-width: 990px) {
        padding-top: 59px !important;
    }

    padding-top: 100px;
}
#body .process-content.ar .stage-number {
    display: none;
}
#body .process-content.ar h4 {
    text-align: right;
}
#body .process-content.ko h4 {
    font-size: 20px !important;
    line-height: 18px;
}

#body .process-content.it h4.process-1-title,
#body .process-content.it h4.process-2-title,
#body .process-content.pt h4.process-1-title,
#body .process-content.pt h4.process-2-title,
#body .process-content.es h4.process-1-title,
#body .process-content.es h4.process-2-title,
#body .process-content.fr h4.process-1-title,
#body .process-content.fr h4.process-2-title,
#body .process-content.de h4.process-2-title,
#body .process-content.ru h4.process-2-title {
    margin-bottom: 23px;
}

#body .process-content.fr h4,
#body .process-content.pt h4,
#body .process-content.de h4,
#body .process-content.ru h4,
#body .process-content.es h4,
#body .process-content.it h4 {
    font-size: 25px;
    line-height: 18px;
}

#body .process-content.ar .form-content,
#body .process-content.es .form-content,
#body .process-content.ru .form-content,
#body .process-content.de .form-content {
    height: 225px;
}

#body .process-content.ru .process-1 .signup-panel .submit-button {
    margin-bottom: 10px;
}
#footer a {
    color: #273a52 !important;
}
#footer li {
    border-right: none !important;
    padding: 0 !important;
}
#homepage p {
    font-size: 16px !important;
}
#homepage p.h1 {
    font-size: 36px !important;
}
#homepage p.h4 {
    font-size: 1.5rem !important;
}

/* IE7 */
#body .process-content h4 {
    *font-size: 20px !important;
    *line-height: 25px !important;
}
#body .process-content.de h4.process-2-title,
#body .process-content.ru h4.process-2-title {
    *height: 32px;
}
#body .process-content.pt h4.process-3-title,
#body .process-content.it h4.process-3-title,
#body .process-content.fr h4.process-3-title,
#body .process-content.es h4.process-3-title {
    *height: 44px;
}
.row_error_message {
    *display: block;
    *float: none !important;
    *margin-bottom: 10px;
}
#body .content .banner-text {
    *width: 425px;
    *font-size: 18px !important;
}
.download-list a,
#homepage .download-list p {
    *font-size: 12px !important;
}
#footer a.img-link {
    *text-indent: 0;
    *text-decoration: none !important;
}
#footer a.img-link span {
    *visibility: hidden;
}

/*Helpdesk Login as email*/
#email_login_form {
    height: 323px;
}
#email_login_form p {
    margin: 10px 0 0;
}
#voipsites_selectbox {
    width: 228px;
    height: 25px;
}

#breadcrumbs ul li {
    display: inline;
}

.myloginform {
    display: none;
}

.process-2 .align-right {
    width: 220px;
}

#contact-us .main-content p {
    margin-bottom: 1em;
}

/* privacy policy notification */
#privacy-policy-notification-container {
    padding: 20px;
}
#privacy-policy-notification-container p,
a {
    color: #357c93;
}
#privacy-policy-notification-container button {
    font-size: 16px;
}
#privacy-policy-notification-container #notification-footer {
    text-align: center;
    margin-top: 50px;
}

/*cookies warning*/
#cookies-warning-msg,
.no-cookies .signup-content,
.no-cookies .buy-credits-content {
    display: none;
}

.no-cookies #cookies-warning-msg {
    display: block;
}

.header-navigation {
    margin-left: 15px;
}

button#nav-signup.btn.btn-primary.w-100 {
    margin-top: 10px !important;
    background-color: var(--tertiary) !important;
}

#cookie-policy {
    h1 {
        background: transparent url("/images/bg_horizontal_divider.png") bottom
            repeat-x;
        margin-bottom: 20px;
        min-height: 50px;
        font-size: 30px !important;
        line-height: 40px;
        margin-bottom: 7px;
        color: var(--primary);
        padding-top: 60px;
    }

    h3 {
        background: transparent url("/images/bg_horizontal_divider.png") bottom
            repeat-x;
        margin-bottom: 20px;
        min-height: 50px;
        font-size: 30px !important;
        line-height: 40px;
        margin-bottom: 7px;
        color: var(--primary);
        padding-top: 60px;
    }

    h5 {
        color: var(--primary);
    }

    p {
        padding: 0px !important;
        color: #555 !important;
    }

    ul {
        color: #555 !important;
    }
}

#homepage-mobile {
    .main-content {
        width: auto;
        height: 90vh;
        background-image: url("/images/mobile_voip_bg.png");
        background-size: cover;
    }

    .process-flow {
        height: auto;
        background-color: var(--mdc-theme-primary, #273a52);
        position: relative;
        z-index: 1;

        .voip-credits-text {
            width: auto;
            padding-top: 40px;
        }
    }

    p#mobilevoip-make-free-calls {
        color: #555 !important;
    }

    h2 {
        font-size: 30px !important;
        line-height: 38px !important;
    }

    p#step-by-step-guide-mobile {
        font-size: 14px;
        font-weight: 600;
        line-height: 20px;
    }
}

/* signup */

#signup-text {
    font-size: 16px;
    color: #555;
}

#signup {
    .link-secondary a {
        color: var(--secondary) !important;
        text-decoration: none;
        font-weight: bold;
    }

    .mobile-voip-col-left {
        padding: 176px 7rem;

        @media (max-width: 1200px) {
            padding: 120px 5rem !important;
        }

        @media (max-width: 992px) {
            padding: 60px 2rem !important;
        }

        @media (max-width: 768px) {
            padding: 0 3rem !important;
        }
    }

    .mobile-voip-col-right {
        padding-top: 78px !important;
        padding-bottom: 64px;
        background-color: var(--primary, #273a52);
    }

    #blob {
        top: 60px;
        right: -10px;
        position: relative;
        height: 375px !important;
        width: 375px !important;
    }

    #iphone_mockup_1 {
        margin-left: 55px;
        position: absolute;
        width: 293px;
        height: 507px;
    }
}

.notification {
    &.error.png_bg {
        background-color: #ff000014;
        padding: 15px;
        border-radius: 5px;
        color: #884646 !important;
    }

    &.success.png_bg {
        background-color: #dcf5d8;
        padding: 15px;
        border-radius: 5px;
        color: #468847 !important;
    }

    .close {
        float: right;
    }
}

#retrieve-password {
    .link-secondary a {
        color: var(--secondary) !important;
        text-decoration: none;
        font-weight: bold;
    }

    .page-controls {
        @media (max-width: 768px) {
            display: flex;
            justify-content: center;
        }
    }

    .mobile-voip-col-left {
        padding: 176px 7rem;

        @media (max-width: 1200px) {
            padding: 120px 5rem !important;
        }

        @media (max-width: 992px) {
            padding: 60px 2rem !important;
        }

        @media (max-width: 768px) {
            padding: 0 3rem !important;
        }
    }

    .mobile-voip-col-right {
        padding-top: 78px !important;
        padding-bottom: 64px;
        background-color: var(--primary, #273a52);
    }

    #blob {
        top: 60px;
        right: -10px;
        position: relative;
        height: 375px !important;
        width: 375px !important;
    }

    #iphone_mockup_1 {
        margin-left: 55px;
        position: absolute;
        width: 293px;
        height: 507px;
    }

    #form-retrieve-password.div-table {
        color: var(--secondary) !important;
    }

    .div-table .input-text .text-input,
    .div-table .input-selectbox select,
    select#retrieve-username-dropdown,
    select,
    input#email_address.text-input,
    input#username.text-input {
        border: var(--bs-border-width) solid var(--bs-border-color);
        border-radius: var(--bs-border-radius);
        transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
        width: 170.4px;
        height: 27.6px;
    }

    p {
        color: var(--secondary);
    }

    input#retrieve-username-dropdown.button,
    input.button {
        background-color: var(--secondary) !important;
        border: var(--bs-border-width) solid var(--bs-border-color);
        border-radius: var(--bs-border-radius);
        color: #fff;
        margin-top: 10px;
        padding: 0.5rem;
    }

    select {
        margin-left: 10px;
    }

    label {
        color: var(--secondary) !important;
    }
}

/* old versions */
#component-mobilevoip-old-versions {
    .mobilevoip-versions-download {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

#page-helpdesk h1 {
    display: none;
}

#error,
#delete-account {
    margin: 2em 4em;
}

/* Google and Apple store Widget */

.tab-nav {
    display: flex;
    justify-content: center;
    gap: 25px;
    flex-wrap: wrap;
    border-bottom: 2px solid rgba(17, 17, 17, 0.1);
    background: #f8f9fa;
    padding: 0 40px;
    border-radius: 8px;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

.tab-arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    font-size: 20px;
    box-shadow: 0 2px 6px rgba(118, 108, 108, 0.1);
    color: #5f6368;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 3;
    transition: all 0.2s ease;
    background-color: #f1f3f4;
    font-size: 2rem;
}

.tab-arrow:hover {
    background-color: #f1f3f4;
}

.tab-arrow.disabled {
    display: none !important;
}

.tab-arrow.left {
    left: 0px;
}

.tab-arrow.right {
    right: 0px;
}

.tab-nav-wrapper {
    position: relative;
    align-items: center;
    justify-content: center;
}

.tab-nav button {
    background: none;
    border: none;
    font-weight: 600;
    font-size: 1.1rem;
    color: #5f6368;
    cursor: pointer;
    padding: 5px 10px;
    flex: 0 0 auto;
    white-space: nowrap;
}

.tab-nav::-webkit-scrollbar {
    display: none;
}

.tab-nav button.active {
    border-bottom: 2px solid #325988;
    color: #202124;
}

.rating-summary {
    background: #f8f9fa;
    text-align: center;
    margin-bottom: 20px;
    border-radius: 8px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.rating-value {
    font-size: 2rem;
    font-weight: bold;
}

.rating-count {
    color: #555;
    font-size: 0.95rem;
}

.summary-wrapper {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 10px 0;
    font-size: 1.2rem;
}

.summary-rating-number {
    font-weight: bold;
    font-size: 1.5rem;
}

.summary-stars {
    display: flex;
    align-items: center;
}

.summary-rating-count {
    font-size: 16px;
    color: #999;
    font-size: 1rem;
}

.star-rating.inline {
    font-size: 1.5rem;
    position: relative;
    display: inline-block;
    color: #ccc;
}

.star-rating.inline::before {
    content: "★★★★★";
    letter-spacing: 2px;
}

.star-rating.inline .star-fill {
    position: absolute;
    top: 0;
    left: 0;
    white-space: nowrap;
    overflow: hidden;
    color: #f8c120;
}

.star-rating.inline .star-fill::before {
    content: "★★★★★";
    letter-spacing: 2px;
}

.star-rating {
    position: relative;
    display: inline-block;
    font-size: 1.2rem;
    line-height: 1;
    color: #ccc;
    unicode-bidi: bidi-override;
}

.star-rating::before {
    content: "★★★★★";
    letter-spacing: 2px;
}

.star-fill {
    color: #f8c120;
    position: absolute;
    top: 0;
    left: 0;
    white-space: nowrap;
    overflow: hidden;
}

.star-fill.static {
    position: relative;
    font-size: 2rem;
    display: inline-table;
}

.star-fill::before {
    content: "★★★★★";
    letter-spacing: 2px;
}

.reviews-list {
    padding-right: 5px;
}

.review-card {
    background: #f8f9fa;
    border-radius: 12px;
    padding: 20px;
    margin-bottom: 15px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    border-radius: 8px;
    border: 1px solid transparent;
}

a.card {
    background: #f8f9fa;
    border-radius: 8px;
    border: 1px solid transparent;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.review-header {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.review-avatar {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #e0e0e0;
    color: #555;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    margin-right: 12px;
}

.review-author {
    font-weight: 600;
    font-size: 0.95rem;
}

.review-date {
    font-size: 0.8rem;
    color: #757575;
}

.review-footer {
    margin-top: auto;
    font-size: 0.85rem;
    color: #757575;
}

.review-footer img {
    height: 18px;
    margin-right: 5px;
}

.read-more {
    font-size: 0.85rem;
    color: #325988;
    cursor: pointer;
    text-decoration: none;
}

.read-more:hover {
    text-decoration: underline;
}

.custom-col-5 {
    flex: 0 0 20%;
    max-width: 20%;
    padding: 10px;
}

.reviews-row {
    display: flex;
    flex-wrap: wrap;
}

#reviews-section-link {
    color: rgb(0, 0, 0) !important;
    text-decoration: none;
}

.reviews-static.row {
    justify-content: center;
}

.platform-icon {
    height: 28px;
    margin-right: 5px;
    vertical-align: middle;
}

/* Responsive */
@media (max-width: 770px) {
    .custom-col-5 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .reviews-list {
        max-height: 500px;
        overflow-y: auto;
        padding-right: 5px;
    }

    .tab-nav {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        scroll-behavior: smooth;
        justify-content: flex-start;
        gap: 20px;
    }

    .tab-nav::-webkit-scrollbar {
        display: none;
    }

    .tab-nav-static {
        flex-wrap: wrap;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    .custom-col-5 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .reviews-list {
        max-height: 500px;
        overflow-y: auto;
        padding-right: 5px;
    }

    .tab-nav {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        scroll-behavior: smooth;
        justify-content: flex-start;
        gap: 20px;
    }

    .tab-nav::-webkit-scrollbar {
        display: none;
    }

    .tab-nav-static {
        flex-wrap: wrap;
        justify-content: center;
    }

    .reviews-static {
        display: none;
        overflow: hidden;
    }
}

/* ------------ ANIMATIONS ------------ */
@keyframes fadeInSequence {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fade-sequence-table tbody tr {
    opacity: 0;
    animation: fadeInSequence 0.4s ease-out forwards;
    animation-delay: calc(var(--row-delay, 0) * 0.1s);
}
/* ------------ ANIMATIONS ------------ */
