@font-face {
    font-family: 'Harmonia Sans';
    src: url('/fonts/HarmoniaSansProCyr-Regular.eot'); /* IE9 Compat Modes */
    src: url('/fonts/HarmoniaSansProCyr-Regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('/fonts/HarmoniaSansProCyr-Regular.woff2') format('woff2'), /* Super Modern Browsers */ url('/fonts/HarmoniaSansProCyr-Regular.woff') format('woff'), /* Modern Browsers */ url('/fonts/HarmoniaSansProCyr-Regular.ttf') format('truetype'); /* Safari, Android, iOS */
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Harmonia Sans';
    src: url('/fonts/HarmoniaSansProCyr-SemiBd.eot'); /* IE9 Compat Modes */
    src: url('/fonts/HarmoniaSansProCyr-SemiBd.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('/fonts/HarmoniaSansProCyr-SemiBd.woff2') format('woff2'), /* Super Modern Browsers */ url('/fonts/HarmoniaSansProCyr-SemiBd.woff') format('woff'), /* Modern Browsers */ url('/fonts/HarmoniaSansProCyr-SemiBd.ttf') format('truetype'); /* Safari, Android, iOS */
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: 'Harmonia Sans';
    src: url('/fonts/HarmoniaSansProCyr-Bold.eot'); /* IE9 Compat Modes */
    src: url('/fonts/HarmoniaSansProCyr-Bold.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */ url('/fonts/HarmoniaSansProCyr-Bold.woff2') format('woff2'), /* Super Modern Browsers */ url('/fonts/HarmoniaSansProCyr-Bold.woff') format('woff'), /* Modern Browsers */ url('/fonts/HarmoniaSansProCyr-Bold.ttf') format('truetype'); /* Safari, Android, iOS */
    font-weight: 800;
    font-style: normal;
}

body {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: normal;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: 600;
}

.text-semi-bold {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: 600;
}

.text-semi-bold-no-decoration {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: 600;
    text-decoration: none;
}

.font-light {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: normal;
}

p, span, div, a, li {
    font-family: 'Harmonia Sans', sans-serif;
    font-weight: normal;
}

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%;
}


.form-label-group input:not(:placeholder-shown) ~ label,
.form-label-group input:-webkit-autofill ~ label /* <<<< Add these */
{
    padding-top: .25rem;
    padding-bottom: .25rem;
    font-size: 12px;
    color: #777;
}

.full-fill {
    display: block;
    height: 100%;
    width: 100%;
}

.flex-grow {
    flex-grow: 1;
}

.rankie-yellow-gradient {
    background: linear-gradient(160deg, rgba(252, 206, 17, 1), rgba(252, 206, 17, 1) 40%, rgba(124, 99, 0, 1) 100%);
}

.rankie-yellow {
    background: rgba(252, 206, 17, 1);
}

.btn.rankie-yellow {
    background-color: #ffc107; /* Original background color */
    color: #000; /* Original text color */
    transition: all 0.3s ease; /* Smooth transition */
}

.btn.rankie-yellow:hover {
    background-color: #e0a800; /* Darker yellow on hover */
    color: #fff; /* Change text color to white */
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* Add shadow */
}


.dropdown-item:focus, .dropdown-item:active {
    background-color: #f0f0f0; /* Replace with your desired background color */
    color: #000; /* Adjust the text color if needed */
}

.page-item .page-link {
    background-color: white; /* Rankie yellow */
    color: #000; /* Adjust the text color if needed */
}

.page-item.active .page-link {
    background-color: rgba(252, 206, 17, 1); /* Rankie yellow */
    border-color: rgba(252, 206, 17, 1); /* Rankie yellow */
    color: black; /* Adjust the text color if needed */
}

.page-item.disabled .page-link {
    background-color: #f0f0f0; /* Rankie yellow */
    color: #6c757d; /* Adjust the text color if needed */
}

.page-item .page-link:hover {
    background-color: #e6b800; /* Adjust the hover color if needed */
    color: #000; /* Adjust the text color if needed */
}

.capitals {
    text-transform: uppercase;
}

.radius-search {
    border-radius: 15px;
    border: 1px solid #e5e7eb;
    background-color: white;
    width: 100%;
    max-width: 600px; /* Adjust as needed */
    margin: auto; /* Center the search bar */
}

/* Counter of scans */
.counter-box {
    display: block;
    padding: 20px 10px 50px;
    text-align: center;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    height: 160px;
    min-width: 135px;
    background: linear-gradient(to bottom, rgba(252, 206, 17, 1), #fff5cc); /* Gradient colors */
}

.counter-box p {
    padding: 0;
    font-size: 18px;
    font-weight: 500;
}

.counter-box.old {
    display: block;
    padding: 30px 30px 70px;
    text-align: center;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    height: 175px;
    min-width: 150px;
    background: linear-gradient(to bottom, rgba(252, 206, 17, 1), #fff5cc); /* Gradient colors */
}

.counter-box img {
    font-size: 60px;
    margin: 0 0 15px;
}

.counter {
    display: block;
    font-size: 32px;
    font-weight: 700;
    line-height: 28px
}

/*end counter of scans*/

.btn-group-sm > .btn, .btn-sm {
    font-size: inherit !important;
}

#guardian-arrow-img {
    display: inline-block;
    vertical-align: middle;
}

@media (max-width: 767px) {
    html {
        font-size: 16px;
    }
    
    #guardian-arrow-img {
        margin-top: -3rem;
        height: 3rem;
        margin-left: 12rem;
    }

    .modal-guardian-img {
        max-width: 300px;
    }

    .bold-headline {
        font-weight: bold;
        font-size: 35px;
    }

    #scansChart {
        height: 300px; /* Adjust the height as needed */
    }

    .stars img {
        width: 15px;
        height: 15px;
    }

    /* Individual legend item */
    .legend-item {
        display: flex;
        align-items: center;
        gap: 4px;
    }

    /* Style for the rating stars */
    .stars {
        display: flex;
        gap: 1px;
    }

    /* Legend container */
    .legend {
        display: flex;
        justify-content: end;
        align-items: end;
        flex-direction: column;
        margin-left: 10px;
        gap: 10px;
        max-width: 40%;
    }

    .vertical-line {
        position: absolute;
        top: 70%;
        bottom: 2%;
        left: 50%;
        width: 3px;
        padding: 0 0 0 0;
        background-color: #000; /* Adjust the color as needed */
        transform: translateX(-50%);
    }

    .review-guardian .text .subtitle {
        font-size: 14px;
        color: #555555;
    }

    .review-guardian .text .title {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 5px;
    }
}

@media (min-width: 1200px) {
    .add-new-box {
        padding-bottom: 123px;
    }
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }

    #guardian-arrow-img {
        margin-top: 3rem;
        height: 4rem;
        margin-left: 0.5rem;
    }

    .add-new-box {
        padding-bottom: 97px;
    }

    .modal-guardian-img {
        max-width: 400px;
    }

    .bold-headline {
        font-weight: 800;
        font-size: 50px;
    }

    .pe-md-calc {
        padding-right: 75px !important;
    }

    #scansChart {
        height: 500px; /* Adjust the height as needed */
    }

    .stars img {
        width: 20px;
        height: 20px;
    }

    /* Individual legend item */
    .legend-item {
        display: flex;
        align-items: center;
        gap: 6px;
    }

    /* Style for the rating stars */
    .stars {
        display: flex;
        gap: 2px;
    }

    /* Legend container */
    .legend {
        display: flex;
        flex-direction: column;
        gap: 15px;
        max-width: 40%;
    }

    .vertical-line {
        position: absolute;
        top: 80%;
        bottom: 2%;
        left: 50%;
        width: 3px;
        padding: 0 0 0 0;
        background-color: #000; /* Adjust the color as needed */
        transform: translateX(-50%);
    }

    .review-guardian .text .subtitle {
        font-size: 18px;
        color: #555555;
    }

    .review-guardian .text .title {
        font-size: 22px;
        font-weight: bold;
        margin-bottom: 5px;
    }

    .chart-captured {
        padding-bottom: 60px !important;
        min-height: 378px;
    }
}

.overflow-table-field {
    max-width: 200px;
    overflow: auto;
}

.text-black th a {
    color: black !important;
}

/* Five stars rating */
.rating-wrapper {
    width: 80%;
    text-align: center;
    max-width: 600px;
}

#rating-container {
    overflow: hidden;
    display: flex;
    justify-content: center;
    margin-top: 10px;
    cursor: pointer;
}

.star {
    width: 70px;
    height: 70px;
    background-image: url('/images/guardian/star.webp');
    background-size: contain;
    background-repeat: no-repeat;
    margin: 0 5px;
}

.star.highlight {
    background-image: url('/images/guardian/full_star.webp');
}

/* End of Five stars rating */


.wide-form {
    width: 100%; /* Makes the form take full available width within its container */
}

/* Guardian on / off */
.review-guardian {
    display: flex;
    align-items: center;
    gap: 15px;
    background-color: white;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    color: #222222;
    height: 160px;
    /*max-width: 420px;*/
    margin: auto;
}

.review-guardian img {
    width: 60px;
    height: auto;
}

.review-guardian .text {
    display: flex;
    flex-direction: column;
}

.review-guardian a {
    text-decoration: none;
    color: inherit;
}

/* End of Guardian on / off */

.chart-container {
    overflow: hidden;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    margin: auto;
    padding-top: 15px;
    padding-bottom: 15px;
    background: white;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    max-width: 700px;
}

/* Color block to represent chart color */
.legend-color {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-left: 5px;
    border-radius: 5px;
}

/* Text label */
.legend-text {
    font-size: 20px;
    font-weight: bold;
    display: flex;
    margin-top: 5px;
    text-align: right; /* Align text to the right */
    justify-content: flex-end;
}

.chart-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    gap: 15px;
    /*align-items: flex-start;*/
}

.small-chart {
    width: 100%; /* Adjust width for responsiveness */
    max-width: 300px; /* Limit the chart's maximum size */
    height: auto; /* Maintain aspect ratio */
}

#reviewChart {
    display: block;
    margin: auto; /* Center the canvas element */
}

/* compare: */

.text-block .number {
    font-size: 50px;
    font-weight: bold;
    line-height: 1; /* Adjust the line height as needed */
    margin: 0; /* Remove any default margins */
    padding: 0; /* Remove any default padding */
}

.text-block .description {
    font-size: 18px; /* Small font for the description */
    color: #666; /* Optional: Light gray for better readability */
}

.radius-container {
    overflow: hidden;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    position: relative;
    max-width: 700px;
    margin-left: auto; /* Center the container */
    margin-right: auto;
}

.radius-gif-container {
    overflow: hidden;
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    position: relative;
    max-width: 400px;
}

.radius-container .btn {
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    padding: 10px 20px;
}

.review-radius-container {
    border-radius: 25px;
    border: 1px solid #e5e7eb;
    background: white;
    position: relative;
    max-width: 800px;
    margin-left: auto; /* Center the container */
    margin-right: auto;
    margin-bottom: 30px;
}

.text-block.compare-left {
    padding-left: 20%;
}

.text-block.compare-right {
    padding-right: 20%;
}

/*end of compare*/

.rankie-box {
    border-radius: 25px;
    border: 1px solid #e5e7eb;
}

.rankie-box * .btn {
    border-radius: 7px;
    border: 1px solid;
}

.review {
    border-bottom: 1px solid #e5e7eb; /* Adjust the color as needed */
    padding-bottom: 10px; /* Add some padding for spacing */
    margin-bottom: 10px; /* Add some margin for spacing */
}

.review:last-child {
    border-bottom: none; /* Remove the border from the last review */
}

.review .card-body {
    padding-bottom: 0;
}

.sort-container {
    display: flex;
    align-items: center;
}

.sort-container img {
    margin-right: 5px; /* Adjust the spacing as needed */
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 255, 255, 0.7); /* Semi-transparent overlay */
    backdrop-filter: blur(10px); /* Blur filter */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #555; /* Text color for overlay */
    z-index: 10; /* Ensure it overlays the content */
}

.overlay .lock {
    display: flex;
    align-items: center;
    justify-content: center; /* Center horizontally */
    color: white;
    padding: 15px 25px 10px 20px;
    border-radius: 30px;
    font-size: 16px;
    font-weight: bold;
    gap: 10px;
    margin-bottom: 15px;
}

.overlay .lock:hover {
    background: #FFD700;
    color: black;
}

.overlay .lock-icon {
    padding-bottom: 5px;
}

.gray-bg {
    background-color: #6c757d;
}

.guardian-gray-bg {
    background-color: #e5e5e5;
}

.overlay .message {
    text-align: center;
    font-size: 16px;
}

#dash-left.radius-container {
    min-height: 444px;
}

.nav-link.active {
    background-color: rgba(252, 206, 17, 1) !important;
    color: black !important;
}

.purple-gradient-button {
    display: inline-block;
    padding: 12px 24px;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    color: white;
    background: linear-gradient(90deg, #3b234a, #c78bb1);
    border-radius: 10px;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease-in-out;
    border: none;
}

.purple-gradient-button:hover {
    background: linear-gradient(90deg, #4a2d5a, #d69cc2);
    transform: scale(1.05);
}

.btn-big-font {
    font-size: 1.7rem;
}

/*Calculator section */

.toggle-btn {
    border: none;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    background: transparent;
    border-radius: 20px;
    transition: background 0.3s;
}

.toggle-btn.active {
    background: #FFD700;
    font-weight: bold;
}

.discount-badge {
    position: absolute;
    top: -15px;
    right: -50px;
    background: #FFD700;
    padding: 5px 10px;
    border-radius: 15px;
    font-size: 12px;
}

/*Calculator end of section*/

.w-35 {
    width: 35% !important;
}

.text-container-arrow {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 32px;
    font-weight: bold;
    color: #222;
}

.curved-arrow {
    width: 80px;
    height: 40px;
}

.modal-rounded {
    border-radius: 25px;
}

.verified-badge {
    background-color: rgba(252, 206, 17, 1);
    color: #222; /* Dark text for contrast */
    font-weight: bold;
    padding: 3px 5px;
    border-radius: 15px; /* Rounded edges */
}

.text-red {
    color: #c73734;
}

.text-green {
    color: #449652;
}

#h2-guardian-arrow {
    display: inline-block;
    vertical-align: middle;
    font-size: 3rem;
    font-weight: 600;
    margin: 0;
}

.subheadline {
    font-size: 30px;
}

.custom-bullets {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.bullet-item {
    display: flex;
    align-items: center; /* Was: flex-start */
    gap: 0.75rem;
    font-size: 0.95rem;
    line-height: 1.4;
}

.bullet-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    background-color: #fff;
    color: #000;
    border-radius: 50%;
    font-weight: bold;
    font-size: 0.85rem;
    border: 1px solid #ccc;
    flex-shrink: 0;
    padding-top: 5px;
}

.filter-container {
    border-radius: 20px;
    padding: 2rem;
    color: #000;
}

.mt-bobby {
    margin-top: 4.5rem !important;
}

.picture-gray-container {
    max-width: clamp(350px, 50%, 800px);
    margin: 0 auto;
}

.picture-app-offers {
    max-width: clamp(350px, 100%, 900px);
    margin: 0 auto;
}