/* HERO */
.hero {
    /*padding: 80px 0;*/
}

.hero-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Teksti majtas */
.hero-text {
    flex: 1;
}

.hero-text h1 {
    font-size: 42px;
    font-weight: 700;
    color: #0d1c4b;
    line-height: 1.3;
    margin-bottom: 20px;
}

.hero-text p {
    font-size: 16px;
    color: #333;
    margin-bottom: 25px;
    max-width: 500px;
    line-height: 1.6;
}

.hero-buttons {
    display: flex;
    gap: 15px;
}

.btn-primary {
    display: inline-block;
    background: #d10503;
    color: #fff;
    padding: 12px 24px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 500;
    transition: background .3s;
}

.btn-primary:hover {
    background: #b91410;
}

.btn-outline {
    display: inline-block;
    border: 2px solid #d10503;
    color: #d10503;
    padding: 10px 22px;
    border-radius: 20px;
    text-decoration: none;
    font-weight: 500;
    transition: all .3s;
}

.btn-outline:hover {
    background: #d10503;
    color: #fff;
}


.hero-image {
    flex: 1;
    position: relative;
    text-align: center;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .hero-image img {
        max-width: 260px !important;
    }
}


.circle-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, #f7f9ff 0%, #ffffff 80%);
    z-index: 0;
}

.dots-bg {
    position: absolute;
    top: 30px;
    right: 80px;
    width: 180px;
    height: 180px;
    background-image: radial-gradient(#fce4e4 1.2px, transparent 1.2px);
    background-size: 12px 12px;
    z-index: 1;
}

.hero-image img {
    max-width: 340px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    position: relative;
    z-index: 2;
}

.hero-img-dynamic {
    aspect-ratio: 690 / 1124;
}


.doctor-label {
    display: inline-block;
    position: absolute;
    top: 28%;
    left: 18%;
    background: #f1f4fa;
    padding: 7px 18px !important;
    border-radius: 20px;
    font-size: 14px;
    color: #0d1c4b;
    font-weight: 500;
    z-index: 3;
    /*height: 18px;*/
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .doctor-label {
        top: 27%;
        left: 0;
    }
}


/* SERVICES */

.services-section {
    padding: 70px 0; /* vetëm lart/poshtë */
}

.services-section .container {
    max-width: 1100px;
    margin: 0 auto;
    padding: 0 20px;
}

.services-section h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 15px;
}

.services-cards {
    display: flex;
    /*gap: 20px;*/
    justify-content: center;
    flex-wrap: wrap;
}

.card {
    flex: 1;
    min-width: 250px;
    max-width: 300px;
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 20px;
    text-align: left;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
}


.card .icon {
    display: flex;
    justify-content: center;
    align-items: center;
    color: #d10503;
}

.card .icon i {
    width: 42px;
    height: 42px;
}


.card h3 {
    text-align: center;
    font-size: 17px;
    font-weight: 600;
    margin-bottom: 12px;
    color: #0d1c4b
}

.card p {
    text-align: center;
    font-size: 13.5px;
    color: #555;
    line-height: 1.5;
    flex-grow: 1;
}


.card-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 15px;
    margin-left: auto;
    cursor: pointer;
    transition: background 0.3s ease;
}

.card-footer i {
    width: 24px;
    height: 24px;
    color: #888;
    opacity: 0.6;
}


/*  PROCESS */
.process {
    text-align: center;
    /*padding: 100px 0;*/
}

.process h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 15px;
}

.process-subtitle {
    font-size: 16px;
    color: #333;
    margin-bottom: 60px;
}

/*.process-steps {*/
/*    display: flex;*/
/*    justify-content: space-between;*/
/*    align-items: flex-start;*/
/*    gap: 20px;*/
/*    position: relative;*/
/*}*/

/*.process-steps::before {*/
/*    content: "";*/
/*    position: absolute;*/
/*    top: 40px;*/
/*    left: 10%;*/
/*    right: 10%;*/
/*    height: 2px;*/
/*    background: #d10503;*/
/*    z-index: 1;*/
/*}*/

.step {
    /*flex: 1;*/
    /*text-align: center;*/
    /*position: relative;*/
    /*z-index: 2;*/
    /*padding: 0 10px;*/
}

.step h3 {
    font-size: 16px;
    font-weight: 600;
    color: #0d1c4b;
    margin-bottom: 10px;
}

.step p {
    font-size: 14px;
    color: #444;
    line-height: 1.5;
}


/*  ABOUT  */
.about {
    text-align: center;
    /*padding: 100px 0;*/
}

.about h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 15px;
}

.about-subtitle {
    font-size: 16px;
    color: #333;
    max-width: 700px;
    margin: 0 auto 2rem;
}

.about-content {
    /*display: flex;*/
    /*align-items: center;*/
    /*justify-content: flex-start;*/
    /*gap: 390px !important;*/
    /*margin-left: 200px !important;*/
}

/* Foto + background */
.about-image {
    position: relative;
    width: 320px;
    /*height: 420px;*/
    display: flex;
    align-items: center;
    justify-content: center;
    /*transform: translateX(-20px);*/
    margin: 0 auto;
}

.about-image img {
    max-width: 400px;
    position: relative;
    z-index: 2;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .about-image img {
        max-width: 340px;
    }
}


.circle-bg {
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: #f5f7ff;
    z-index: 1;
    left: -20px;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .circle-bg {
        display: none;
    }
}


.dots {
    position: absolute;
    width: 200px;
    height: 200px;
    background-image: radial-gradient(#fce4e4 1.2px, transparent 1.2px);
    background-size: 12px 12px;
    z-index: 3;
}

.dots-top-left {
    top: -30px;
    left: -100px;
}

.dots-bottom-right {
    bottom: -40px;
    right: -50px;
}

/* Teksti */
.about-text ul {
    list-style: none;
    text-align: left;
    padding-left: 0;
}

.about-text ul li {
    font-size: 16px;
    color: #0d1c4b;
    font-weight: 500;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.about-text ul li .icon {
    font-size: 22px;
    color: #d10503;
}


/* ================= TESTIMONIALS ================= */
.testimonials {
    /*padding: 100px 0;*/
    text-align: center;
}

.testimonials h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 60px;
}

.testimonials-content {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    /*gap: 60px;*/
    text-align: left;
    margin-left: 20px;
}

/** mobile devices **/
@media (max-width: 767.98px ) {

    .testimonials-content {
        margin-left: 10px;
    }

}


/* Teksti majtas */
.testimonials-text {
    flex: 1;
}

.testimonials-text h3 {
    font-size: 28px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 20px;
    line-height: 1.4;
}

.testimonials-text p {
    font-size: 16px;
    color: #333;
    margin-bottom: 30px;
    line-height: 1.6;
}

.arrows {
    font-size: 24px;
    color: #0d1c4b;
    margin-bottom: 30px;
}

.arrow {
    display: block;
    line-height: 1.6;
    cursor: pointer;
}

/* Butoni */
.testimonials-text .btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #d10503;
    color: #fff;
    padding: 12px 24px;
    border-radius: 12px;
    font-weight: 500;
    text-decoration: none;
    transition: .3s;
}

.testimonials-text .btn-primary:hover {
    background: #b91410;
}

/* Kartat djathtas */
.testimonials-cards {
    flex: 1;
    position: relative;
    display: flex;
    /*justify-content: center;*/
    align-items: center;
    height: 400px;
}

.testimonial-card.active {
    width: 464px;
    height: 192px;
    background: #d10503;
    color: #fff;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .15);
    z-index: 3;
    position: relative;
}

.testimonial-card.active p,
.testimonial-card.active strong {
    color: #fff;
}

.testimonial-card.small {
    width: 400px;
    height: 200px;
    border-radius: 16px;
    padding: 20px;
    background: #fff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .05);
    opacity: 0.6;
    position: absolute;
    left: 50%;
    transform: translateX(-50%) scale(0.95);
    z-index: 2;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .testimonial-card.small {
        width: 100%;
        height: auto;
    }
}

.circle {
    width: 80px;
    height: 80px;
    background: #d10503;
    color: white;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5rem;
    font-weight: bold;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: 0 0 0 5px #f8f9fa; /* light background color for contrast */
}


.circle-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: radial-gradient(circle, #f7f9ff 0%, #ffffff 80%);
    z-index: 0;
}

.dots-bg {
    position: absolute;
    top: 30px;
    right: 80px;
    width: 180px;
    height: 180px;
    background-image: radial-gradient(#fce4e4 1.2px, transparent 1.2px);
    background-size: 12px 12px;
    z-index: 1;
}


.testimonial-card.small.top {
    top: -60px;
}

.testimonial-card.small.bottom {
    bottom: -80px;
}

.testimonial-card img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    margin-bottom: 10px;
}

.testimonial-card p {
    font-size: 14px;
    line-height: 1.4;
}

.testimonial-card .stars {
    color: #ffcc00;
    font-size: 14px;
    margin: 8px 0;
}

.testimonial-card strong {
    font-size: 15px;
    font-weight: 600;
}


/* RRETH NESH */
.team {
    text-align: center;
    padding: 60px 0;
    position: relative;
}

.team h2 {
    font-size: 32px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 10px;
}

.team-subtitle {
    font-size: 16px;
    color: #333;
    max-width: 800px;
    margin: 0 auto 30px;
    line-height: 1.6;
}

.team-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 25px;
    margin-bottom: 30px;
}

.team-images {
    display: flex;
    justify-content: center;
    gap: 30px;
}

/*.team-images img {
  max-width: 200px;
  border-radius: 10px;
}
*/

/* ===== STATISTIKAT ===== */
.stats {
    display: flex;
    justify-content: center;
    gap: 0.75rem;
    flex-wrap: wrap;
    margin-top: 10px;
}

.stat {
    text-align: center;
}

.stat h3 {
    font-size: 28px;
    font-weight: bold;
    color: #0d1c4b;
}

.stat p {
    font-size: 16px;
    color: #555;
}

.dots-group {
    position: absolute;
    display: flex;
    flex-direction: column;
    gap: 20px;
    z-index: 1;
}

.dots-group.left {
    left: 50px;
    top: 25%;
    transform: none;
}

.dots-group.right {
    right: 50px;
    top: 25%;
    transform: none;
}


.dots {
    width: 120px;
    height: 60px;
    background-image: radial-gradient(#fce4e4 1.4px, transparent 1.4px);
    background-size: 14px 14px;
    opacity: 0.8;
}


/*CALL TO ACTION  */
.cta-section {
    text-align: center;
    padding: 60px 20px;
    margin-top: 60px;
}

.cta-subtitle {
    font-size: 16px;
    color: #333;
    margin-bottom: 15px;
}

.cta-title {
    font-size: 26px;
    font-weight: 700;
    color: #0d1c4b;
    margin-bottom: 25px;
    line-height: 1.4;
}

.btn-cta {
    display: inline-block;
    padding: 14px 28px;
    background: #d10503;
    color: #fff;
    border-radius: 10px;
    font-weight: 500;
    text-decoration: none;
    transition: background .3s;
}

.btn-cta:hover {
    background: #b91410;
}

/*https://codepen.io/havardob/pen/ryOxGp*/

.blink {
    display: inline-block;
    border-radius: 50px;
    width: 60px;
    height: 60px;
    position: absolute;
    left: 0;
    /*top: 50%;*/
    /*transform: translate(-50%, -50%);*/
}

.blink:before, .blink:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255, 0, 0, 0.6);
    border-radius: 50px;
    opacity: 0;
}

.blink:before {
    transform: scale(1);
    -webkit-animation: blink 1.6s infinite linear;
    animation: blink 1.6s infinite linear;
}

.blink:after {
    -webkit-animation: blink 1.6s 1.2s infinite linear;
    animation: blink 1.6s 1.2s infinite linear;
}


/* Applying the animation to the button */
.blink_number {
    position: relative;
    overflow: hidden; /* Keeps the effect contained */
    z-index: 1;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .blink_number::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: rgba(255, 0, 0, 0.6);
        border-radius: 50rem; /* Matches rounded-pill */
        z-index: -1;
        animation: blink 2s infinite ease-out;
    }
}

@-webkit-keyframes blink {
    0% {
        opacity: 0;
        transform: scale(0.4);
    }
    33.33333% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(2);
    }
}

@keyframes blink {
    0% {
        opacity: 0;
        transform: scale(0.4);
    }
    33.33333% {
        opacity: 1;
        transform: scale(1);
    }
    100% {
        opacity: 0;
        transform: scale(2);
    }
}

.blink_number {
    margin-left: 80px;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .blink_number {
        margin-left: 0;
    }
}

/** tablet queries **/
@media (min-width: 768px) and (max-width: 991.98px) {
}

/* Styling the dots/navigation to match your theme */
.logo-slider .swiper-pagination-bullet-active {
    background-color: #c80805 !important; /* Your Theme Red */
}

.logo-slider {
    /*padding: 40px 0;*/
    /*background-color: #000000; !* Your Theme Black *!*/
}

.logo-slider .swiper-wrapper {
    transition-timing-function: linear !important;
}

:root {
    --swiper-theme-color: #c80805; /* Sets all arrows/bullets to your Red */
    --swiper-navigation-size: 24px; /* Adjusts arrow size */
}

/* Add this to your style block */
.logo-slider .swiper-slide {
    display: flex;
    justify-content: center; /* Horizontal center */
    align-items: center; /* Vertical center */
    height: 150px; /* Set a specific height for the logo area */
    padding: 20px;
}

.logo-slider .swiper-slide img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; /* Ensures logos aren't stretched */
    /* Optional: grayscale logos to look professional, color on hover */
    /*filter: grayscale(100%);*/
    transition: filter 0.3s ease;
}

.logo-slider .swiper-slide img:hover {
    /*filter: grayscale(0%);*/
}

/* Empty slot placeholder — keeps slider height consistent */
.partner-logo-card {
    width: 100%;
    height: 90px;
    border-radius: 10px;
    overflow: hidden;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
}

.partner-logo-card img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}

/* Empty slot placeholder — keeps slider height consistent */
.partner-placeholder {
    width: 100%;
    height: 100%;
    background-color: #c80805;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    text-align: center;
    border-radius: 10px;
}
.partner-placeholder::after {
    content: 'PARTNER LOGO';
}

/** vertical testimonial slider **/

.testimonial-slider {
    height: 500px; /* Fixed height is required for vertical sliders */
    overflow: hidden;
}

/** mobile devices **/
@media (max-width: 767.98px ) {
    .testimonial-slider {
        /*height: 400px; !* Fixed height is required for vertical sliders *!*/
    }
}


.testimonials-cards .testimonial-card {
    padding: 1rem;
}

.testimonials-cards .swiper-slide .testimonial-card {
    height: auto;
    opacity: 0.4; /* Dim inactive slides */
    transition: all 0.3s ease;
}

/* Style for the center/active slide to match your red box */
.testimonials-cards .swiper-slide-active .testimonial-card {
    background: #d30000;
    color: white;
    opacity: 1;
    transform: scale(1.05);
    border-radius: 15px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.testimonials-cards .swiper-slide-active .testimonial-card .lucide {
    color: white;
}

.testimonials-text .navigation-arrows div {
    cursor: pointer;
    font-size: 20px;
    margin: 10px 0;
}

/* === NON-HERO ADDITIONS RETAINED FROM PRIOR EDITS === */

/* === TESTIMONIAL CARD ALIGNMENT FIX (ported from old section-testimonials.php inline) === */
.testimonial-slider .swiper-slide {
    padding: 1rem;
    height: auto;
    display: flex;
    justify-content: center;
    transition: transform 0.3s ease;
}

.testimonial-slider {
    height: auto;
    padding: 20px 0;
}

.testimonial-card {
    background: #fff;
    border-radius: 20px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    border: 1px solid #f0f0f0;
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    margin: 10px;
    width: 100%;
}

.testimonial-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(209, 5, 3, 0.1);
    border-color: #fee2e2;
}

.testimonial-card i {
    font-size: 24px;
    color: #d10503;
}

.testimonial-card p {
    font-size: 15px;
    line-height: 1.6;
    color: #4b5563;
    font-style: italic;
    margin: 15px 0;
    flex-grow: 1;
}

.testimonial-card .stars {
    color: #fbbf24;
    font-size: 14px;
    margin-bottom: 10px;
}

.testimonial-card strong {
    color: #111827;
    font-size: 16px;
}

/* === SERVICE CARD ALIGNMENT FIX (ported from old section-services.php inline) === */
.services-slider-wrapper .swiper-slide {
    height: auto;
    display: flex;
    justify-content: center;
}

.services-slider-wrapper .swiper-slide .card {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.service-slider .swiper-wrapper {
    display: flex;
}

.swiper-pagination-service {
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: 20px;
    width: 100%;
}

.service-slider .swiper-pagination-bullet-active {
    background-color: #c80805 !important;
}

@media (max-width: 1023px) {
    .service-slider .card {
        text-align: center;
    }
    .service-slider .icon, .service-slider .card-footer {
        margin-left: auto;
        margin-right: auto;
    }
}

/* === PROCESS STEP MOBILE/TABLET ALIGNMENT (matches Swiper 1024 breakpoint) === */
.process-steps {
    position: relative;
}

@media (max-width: 1023.98px) {
    .process-steps .step {
        padding-top: 90px;
        text-align: left;
        min-width: 100% !important;
        position: relative;
    }
    .process-steps .step .circle {
        left: 50%;
        transform: translateX(-50%);
    }
    .process-steps .step h3 {
        text-align: center;
    }
    .process-steps .step p {
        padding-right: 1.5rem;
        padding-left: 1.5rem;
        text-align: center;
    }
    .process-steps .step .swiper-slide {
        text-align: center !important;
    }
}

/* === PROCESS PAGINATION DOTS (was missing — now matches old) === */
.swiper-pagination-process {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.process-slider .swiper-pagination-bullet-active {
    background-color: #c80805 !important;
}

/* === ABOUT / QËLLIMI DHE MISIONI — MOBILE FRIENDLY === */
@media (max-width: 991.98px) {
    .about {
        text-align: center;
        padding: 24px 12px;
    }
    .about h2 {
        font-size: 26px !important;
        margin-bottom: 12px;
    }
    .about-subtitle {
        font-size: 14px;
        padding: 0 8px;
        margin-bottom: 24px;
    }
    .about-image {
        width: 100% !important;
        max-width: 480px !important;
        margin: 0 auto 28px;
    }
    .about-image img {
        max-width: 100% !important;
        width: 100% !important;
        border-radius: 16px;
        box-shadow: 0 8px 20px rgba(15, 17, 21, 0.08);
    }
    .about-text ul {
        text-align: left;
        padding-left: 0;
        margin: 0;
    }
    .about-text ul li {
        font-size: 15px !important;
        line-height: 1.5;
        margin-bottom: 12px;
        padding: 14px 16px;
        background: #f8f9fb;
        border-radius: 12px;
        border-left: 3px solid #d10503;
        align-items: flex-start;
        gap: 14px;
    }
    .about-text ul li .icon {
        flex-shrink: 0;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background: rgba(209, 5, 3, 0.1);
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        font-size: 20px !important;
    }
}






/* ============================================================
   HERO V2 — full redesign (eyebrow, accent title, two CTAs,
   urgent contact card, image with red blob + floating badge)
   ============================================================ */

.hero {
    position: relative;
    padding-top: 40px;
    padding-bottom: 60px;
    overflow: hidden;
}
.hero-decor {
    position: absolute;
    pointer-events: none;
    z-index: 1;
}
.hero-decor--dots {
    top: 28px;
    left: 28px;
    width: 90px;
    height: 56px;
    background-image: radial-gradient(rgba(209, 5, 3, 0.18) 1.6px, transparent 1.6px);
    background-size: 14px 14px;
    background-repeat: repeat;
    opacity: 0.85;
}
.hero-decor--plus {
    top: 36px;
    right: 56px;
    color: #d10503;
    width: 28px;
    height: 28px;
    opacity: 0.65;
}
.hero-decor--plus svg { width: 100%; height: 100%; }

.hero-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 22px;
}
.hero-eyebrow__bar {
    width: 36px;
    height: 3px;
    background: #d10503;
    border-radius: 2px;
}
.hero-eyebrow__text {
    font-size: 12px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    font-weight: 600;
    color: #1a1a1a;
}

.hero-title__accent {
    color: #d10503 !important;
    -webkit-text-fill-color: #d10503;
}
.hero .hero-title {
    text-transform: none !important;
}

.hero-cta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 28px;
}
.hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 14px 26px;
    border-radius: 12px;
    font-weight: 600;
    font-size: 15px;
    text-decoration: none !important;
    transition: all 0.2s ease;
    cursor: pointer;
    border: 2px solid transparent;
    line-height: 1;
    white-space: nowrap;
}
.hero-btn svg, .hero-btn i[data-lucide] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}
.hero-btn--primary {
    background: #d10503;
    color: #fff !important;
    border-color: #d10503;
    box-shadow: 0 8px 22px rgba(209, 5, 3, 0.25);
}
.hero-btn--primary:hover,
.hero-btn--primary:focus-visible {
    background: #b30410;
    border-color: #b30410;
    color: #fff !important;
    transform: translateY(-2px);
    box-shadow: 0 12px 28px rgba(209, 5, 3, 0.35);
    outline: none;
}
.hero-btn--outline {
    background: #fff;
    color: #d10503 !important;
    border-color: #d10503;
}
.hero-btn--outline:hover,
.hero-btn--outline:focus-visible {
    background: #d10503;
    color: #fff !important;
    transform: translateY(-2px);
    outline: none;
}

.hero-urgent {
    display: flex;
    align-items: center;
    gap: 22px;
    background: #fff;
    border: 1px solid #f3e2e2;
    border-radius: 18px;
    padding: 18px 22px;
    box-shadow: 0 14px 32px rgba(15, 15, 15, 0.06);
    text-decoration: none !important;
    color: inherit !important;
    max-width: 720px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    position: relative;
    z-index: 2;
}
.hero-urgent:hover,
.hero-urgent:focus-visible {
    transform: translateY(-2px);
    box-shadow: 0 20px 44px rgba(15, 15, 15, 0.10);
    color: inherit !important;
    outline: none;
}
.hero-urgent__icon {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: #d10503;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.hero-urgent__icon svg { width: 38px; height: 38px; }
.hero-urgent__main {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex: 1;
    min-width: 0;
    text-align: left;
}
.hero-urgent__badge {
    display: inline-block;
    background: rgba(209, 5, 3, 0.10);
    color: #d10503;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 6px;
    align-self: flex-start;
    margin-bottom: 2px;
    width: max-content;
}
.hero-urgent__phone {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 22px;
    font-weight: 700;
    color: #1a1a1a;
}
.hero-urgent__phone svg, .hero-urgent__phone i[data-lucide] {
    width: 22px;
    height: 22px;
    stroke: #d10503;
    flex-shrink: 0;
}
.hero-urgent__hint {
    font-size: 12px;
    color: #888;
    line-height: 1.4;
}
.hero-urgent__features {
    display: flex;
    align-items: center;
    gap: 12px;
    border-left: 1px solid #f3e2e2;
    padding-left: 20px;
    flex-shrink: 0;
}
.hero-urgent__features svg, .hero-urgent__features i[data-lucide] {
    width: 30px;
    height: 30px;
    stroke: #d10503;
    flex-shrink: 0;
}
.hero-urgent__features ul {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 12px;
    color: #555;
    line-height: 1.55;
    text-align: left;
}

.hero-image {
    position: relative;
    text-align: center;
}
.hero-image img.hero-img-dynamic {
    border-radius: 24px !important;
    aspect-ratio: 4 / 5 !important;
    max-width: 460px !important;
    max-height: 575px !important;
    width: 100% !important;
    height: auto !important;
    box-shadow: 0 24px 56px rgba(15, 15, 15, 0.12);
    position: relative;
    z-index: 2;
    object-fit: cover;
    object-position: center;
}
.hero-image .dots-bg { display: none; }
.hero-image__blob {
    position: absolute;
    bottom: -60px;
    right: -40px;
    width: 420px;
    height: 420px;
    background: #d10503;
    border-radius: 60% 0 50% 50% / 50% 0 60% 50%;
    z-index: 0;
    pointer-events: none;
    opacity: 0.95;
}
.hero-image__badge {
    position: absolute;
    top: 50%;
    right: -10px;
    transform: translateY(-50%);
    background: #fff;
    border: 1px solid #fae0e0;
    border-radius: 50%;
    width: 118px;
    height: 118px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 12px 28px rgba(15, 15, 15, 0.10);
    text-align: center;
    padding: 8px;
    z-index: 3;
    line-height: 1.18;
}
.hero-image__badge svg, .hero-image__badge i[data-lucide] {
    width: 24px;
    height: 24px;
    stroke: #d10503;
    margin-bottom: 4px;
}
.hero-image__badge strong {
    font-size: 11px;
    font-weight: 700;
    color: #d10503;
}
.hero-image__badge small {
    font-size: 10px;
    color: #555;
    margin-top: 2px;
}

@media (max-width: 991.98px) {
    .hero-container {
        flex-direction: column !important;
        flex-wrap: wrap !important;
        gap: 28px !important;
    }
    .hero-container > .hero-text,
    .hero-container > .hero-image {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }
    .hero-eyebrow,
    .hero-cta-row { justify-content: center; }
    .hero-eyebrow { display: flex; }
    .hero-decor--dots,
    .hero-decor--plus { display: none; }
    .hero-urgent {
        flex-direction: column;
        align-items: stretch;
        gap: 16px;
        text-align: center;
    }
    .hero-urgent__icon { align-self: center; }
    .hero-urgent__main { align-items: center; text-align: center; }
    .hero-urgent__badge { align-self: center; }
    .hero-urgent__features {
        border-left: none;
        border-top: 1px solid #f3e2e2;
        padding-left: 0;
        padding-top: 16px;
        justify-content: center;
    }
    .hero-urgent__features ul { text-align: center; }
    .hero-image img.hero-img-dynamic {
        max-width: 320px !important;
        max-height: 400px !important;
    }
    .hero-image__badge { right: 6px; width: 96px; height: 96px; }
    .hero-image__blob { width: 280px; height: 280px; bottom: -30px; right: -20px; }
}
@media (max-width: 575.98px) {
    .hero-cta-row { flex-direction: column; align-items: stretch; }
    .hero-btn { justify-content: center; }
    .hero-image__badge { display: none; }
    .hero-urgent__phone { font-size: 18px; }
    .hero-urgent__phone svg, .hero-urgent__phone i[data-lucide] { width: 18px; height: 18px; }
}

/* ============================================================
   HERO V2 — fine-tune to match target screenshot exactly
   (overrides the prior HERO V2 block; keep at end of file)
   ============================================================ */

/* Section dots: move to TOP-RIGHT (over/right of image), not section top-left */
.hero-decor--dots {
    top: auto !important;
    left: auto !important;
    bottom: auto;
    right: 40px !important;
    top: 40px !important;
    width: 110px !important;
    height: 90px !important;
    background-image: radial-gradient(rgba(209, 5, 3, 0.22) 1.7px, transparent 1.7px);
    background-size: 14px 14px;
    z-index: 1;
}

/* Plus glyph: keep top-right but slightly inboard so it doesn't collide with dots */
.hero-decor--plus {
    top: 24px !important;
    right: 170px !important;
    width: 26px !important;
    height: 26px !important;
    opacity: 0.55;
}

/* Image: less rounded, slightly larger, tighter shadow */
.hero-image img.hero-img-dynamic {
    border-radius: 16px !important;
    aspect-ratio: 4 / 5 !important;
    max-width: 520px !important;
    max-height: 650px !important;
    box-shadow: 0 28px 60px rgba(15, 15, 15, 0.10);
}

/* Red curved swoosh — large circle peeking from bottom-right, mostly off-screen */
.hero-image__blob {
    position: absolute;
    bottom: -200px !important;
    right: -200px !important;
    width: 600px !important;
    height: 600px !important;
    background: #d10503 !important;
    border-radius: 50% !important;
    opacity: 1 !important;
    z-index: 0;
    pointer-events: none;
}

/* Optional second decorative arc — softer concentric ring above the blob */
.hero-image__blob::before {
    content: "";
    position: absolute;
    inset: -60px;
    border: 18px solid rgba(209, 5, 3, 0.12);
    border-radius: 50%;
    pointer-events: none;
}

/* Floating "Kujdes profesional" badge — positioned mid-right, half outside image */
.hero-image__badge {
    top: 50% !important;
    right: -30px !important;
    width: 130px !important;
    height: 130px !important;
    transform: translateY(-50%) !important;
    box-shadow: 0 16px 36px rgba(15, 15, 15, 0.12);
    z-index: 4;
}
.hero-image__badge strong { font-size: 12px; }
.hero-image__badge small { font-size: 10px; line-height: 1.25; }

/* Section: ensure overflow is hidden so blob doesn't break layout */
.hero {
    padding-top: 50px;
    padding-bottom: 80px;
    overflow: hidden;
}

/* Image column needs a min-height so the blob has room; on lg+ ensure padding-right for badge */
@media (min-width: 992px) {
    .hero-image { padding-right: 40px; }
}

/* Mobile recalibration to match the tightened desktop look */
@media (max-width: 991.98px) {
    .hero-decor--dots,
    .hero-decor--plus { display: none !important; }
    .hero-image img.hero-img-dynamic {
        max-width: 340px !important;
        max-height: 425px !important;
        border-radius: 12px !important;
    }
    .hero-image__blob {
        width: 320px !important;
        height: 320px !important;
        bottom: -100px !important;
        right: -100px !important;
    }
    .hero-image__blob::before { display: none; }
    .hero-image__badge {
        right: 10px !important;
        width: 100px !important;
        height: 100px !important;
    }
    .hero-image { padding-right: 0; }
}
@media (max-width: 575.98px) {
    .hero-image__badge { display: none !important; }
    .hero-image__blob {
        width: 220px !important;
        height: 220px !important;
        bottom: -60px !important;
        right: -60px !important;
    }
}

/* ============================================================
   HERO V2 — second pass to match target screenshot pixel-tight
   ============================================================ */

/* Phone number must stay on one line */
.hero-urgent__phone {
    white-space: nowrap !important;
}
.hero-urgent__phone > span,
.hero-urgent__phone span {
    white-space: nowrap !important;
}

/* Urgent card: let it use full available width (up to 720px) and breathe */
.hero-urgent {
    max-width: 100% !important;
    padding: 20px 22px !important;
}

/* Image larger and slightly off-center-right to match target */
.hero-image img.hero-img-dynamic {
    max-width: 540px !important;
    max-height: 675px !important;
    border-radius: 18px !important;
}

/* Push image column slightly right of center, leave room for badge */
@media (min-width: 992px) {
    .hero-image {
        padding-right: 0 !important;
        padding-left: 20px;
    }
}

/* Larger floating badge to match target proportions */
.hero-image__badge {
    width: 134px !important;
    height: 134px !important;
    right: -20px !important;
}
.hero-image__badge strong { font-size: 12.5px; line-height: 1.15; }
.hero-image__badge small { font-size: 10px; line-height: 1.2; margin-top: 3px; }

/* Red swoosh: larger, lifted higher to peek behind image */
.hero-image__blob {
    width: 680px !important;
    height: 680px !important;
    bottom: -240px !important;
    right: -240px !important;
}

/* Mobile sanity */
@media (max-width: 991.98px) {
    .hero-urgent {
        padding: 18px !important;
    }
    .hero-image img.hero-img-dynamic {
        max-width: 360px !important;
        max-height: 450px !important;
        border-radius: 14px !important;
    }
    .hero-image__badge {
        width: 100px !important;
        height: 100px !important;
        right: 8px !important;
    }
    .hero-image__blob {
        width: 360px !important;
        height: 360px !important;
        bottom: -120px !important;
        right: -120px !important;
    }
}
@media (max-width: 575.98px) {
    .hero-image img.hero-img-dynamic {
        max-width: 300px !important;
        max-height: 375px !important;
    }
}

/* === HERO V2 fix 3 — urgent card aligned with title width === */

/* Cap urgent card to match the paragraph's max-width so it doesn't extend wider than the text */
.hero-urgent {
    max-width: 540px !important;
    width: 100%;
}

/* On mobile centering already handled, just keep card aligned */
@media (max-width: 991.98px) {
    .hero-urgent {
        max-width: 500px !important;
        margin-left: auto;
        margin-right: auto;
    }
}

/* === HERO V2 fix 4 — equal-width buttons over the urgent bar === */

.hero-cta-row {
    max-width: 540px !important;
    flex-wrap: nowrap !important;
}
.hero-cta-row .hero-btn {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
}

@media (max-width: 991.98px) {
    .hero-cta-row {
        max-width: 500px !important;
        margin-left: auto;
        margin-right: auto;
    }
}
@media (max-width: 575.98px) {
    .hero-cta-row {
        flex-wrap: wrap !important;
        flex-direction: column !important;
    }
    .hero-cta-row .hero-btn { flex: 0 0 100% !important; }
}

/* === HERO V2 fix 5 — image with organic shape + soft halo frame === */

/* Organic asymmetric border-radius (looks like a slightly-warped circle) +
   white halo gap + thin gray ring + soft drop shadow, all done with stacked
   box-shadow so the halo follows the organic shape. */
.hero-image img.hero-img-dynamic {
    border-radius: 56% 44% 50% 50% / 50% 56% 44% 50% !important;
    aspect-ratio: 1 / 1.05 !important;
    max-width: 460px !important;
    max-height: 485px !important;
    box-shadow:
        0 0 0 16px #ffffff,
        0 0 0 17px rgba(15, 15, 15, 0.07),
        0 32px 70px rgba(15, 15, 15, 0.08) !important;
}

/* Red swoosh: smaller and shaped like a teardrop tucked under the bottom-right */
.hero-image__blob {
    width: 240px !important;
    height: 280px !important;
    bottom: 0 !important;
    right: 20px !important;
    border-radius: 65% 35% 50% 50% / 60% 50% 50% 40% !important;
    transform: rotate(-12deg);
    background: #d10503 !important;
    z-index: 0;
}
.hero-image__blob::before { display: none !important; }

/* Floating badge: slightly closer in so it sits on the image edge */
.hero-image__badge {
    right: 0 !important;
    width: 124px !important;
    height: 124px !important;
}

/* Image column: give breathing room for the halo so it doesn't clip */
.hero-image {
    padding: 24px 24px 40px 24px;
}

@media (max-width: 991.98px) {
    .hero-image img.hero-img-dynamic {
        max-width: 320px !important;
        max-height: 336px !important;
        box-shadow:
            0 0 0 12px #ffffff,
            0 0 0 13px rgba(15, 15, 15, 0.06),
            0 20px 50px rgba(15, 15, 15, 0.08) !important;
    }
    .hero-image__blob {
        width: 180px !important;
        height: 200px !important;
        bottom: 10px !important;
        right: 30px !important;
    }
    .hero-image__badge {
        right: 12px !important;
        width: 96px !important;
        height: 96px !important;
    }
    .hero-image {
        padding: 16px;
    }
}
@media (max-width: 575.98px) {
    .hero-image img.hero-img-dynamic {
        max-width: 280px !important;
        max-height: 294px !important;
    }
    .hero-image__blob {
        width: 140px !important;
        height: 160px !important;
        bottom: 30px !important;
        right: 20px !important;
    }
    .hero-image__badge { display: none !important; }
}

/* === Hide top-right plus + dot grid decorations === */
.hero-decor--dots,
.hero-decor--plus { display: none !important; }


/* ============================================================
   URGENT ICON — heartbeat + sonar pulse + color flash
   Creative attention-grabber: medical heartbeat scale combined
   with two staggered expanding red rings (sonar-like) and a
   subtle glow color shift. Pause on hover so users can read.
   ============================================================ */

@keyframes ssx-urgent-heartbeat {
    0%, 100% { transform: scale(1); }
    14% { transform: scale(1.10); }
    28% { transform: scale(0.98); }
    42% { transform: scale(1.06); }
    70% { transform: scale(1); }
}

@keyframes ssx-urgent-glow {
    0%, 100% {
        box-shadow:
            0 0 0 0 rgba(209, 5, 3, 0.55),
            0 0 0 0 rgba(209, 5, 3, 0.35),
            0 0 14px rgba(209, 5, 3, 0.0);
        background: #d10503;
    }
    40% {
        box-shadow:
            0 0 0 14px rgba(209, 5, 3, 0.18),
            0 0 0 24px rgba(209, 5, 3, 0.08),
            0 0 22px rgba(209, 5, 3, 0.45);
        background: #ff1a1a;
    }
    100% {
        box-shadow:
            0 0 0 26px rgba(209, 5, 3, 0),
            0 0 0 40px rgba(209, 5, 3, 0),
            0 0 14px rgba(209, 5, 3, 0.0);
        background: #d10503;
    }
}

/* Apply both animations to the urgent icon block */
.hero-urgent__icon {
    position: relative;
    transform-origin: center center;
    animation:
        ssx-urgent-heartbeat 1.5s ease-in-out infinite,
        ssx-urgent-glow 1.5s ease-out infinite !important;
    will-change: transform, box-shadow, background-color;
}

/* Inner cross gets a tiny anti-jiggle of its own */
@keyframes ssx-urgent-cross-spin {
    0%, 100% { transform: rotate(0deg) scale(1); }
    50%      { transform: rotate(8deg) scale(1.05); }
}
.hero-urgent__icon svg {
    animation: ssx-urgent-cross-spin 3s ease-in-out infinite;
    transform-origin: center center;
}

/* Pause animations when the user hovers/focuses the urgent card,
   so the user can read the phone number without distraction */
.hero-urgent:hover .hero-urgent__icon,
.hero-urgent:focus-visible .hero-urgent__icon,
.hero-urgent:hover .hero-urgent__icon svg,
.hero-urgent:focus-visible .hero-urgent__icon svg {
    animation-play-state: paused;
}

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
    .hero-urgent__icon,
    .hero-urgent__icon svg { animation: none !important; }
}

/* === HERO V2 fix 7 — kill top whitespace, ringing-phone urgent icon === */

/* 1) Remove the thin gap between the navbar and the hero */
.hero {
    padding-top: 0 !important;
    padding-bottom: 60px !important;
}

/* 2) New URGENT icon: ringing phone with shake + sound waves
      (replaces the spinning cross). The phone receiver tilts back and forth
      like an actively ringing handset, and the two arc paths animate
      outward like sound waves emerging from it. Pulse glow + heartbeat
      from earlier remain intact on the parent .hero-urgent__icon block. */

@keyframes ssx-phone-ring {
    0%, 28%, 100% { transform: rotate(0deg); }
    3%  { transform: rotate(-14deg); }
    6%  { transform: rotate(14deg); }
    9%  { transform: rotate(-12deg); }
    12% { transform: rotate(12deg); }
    15% { transform: rotate(-9deg); }
    18% { transform: rotate(9deg); }
    21% { transform: rotate(-5deg); }
    24% { transform: rotate(5deg); }
}

@keyframes ssx-phone-wave {
    0%, 100% { opacity: 0; transform: scale(0.6); }
    20%      { opacity: 1; transform: scale(1); }
    60%      { opacity: 0.4; transform: scale(1.2); }
}

/* Phone icon shakes like an incoming call, tied to the same 1.5s cycle as the parent pulse */
.hero-urgent__icon-svg {
    animation: ssx-phone-ring 2.4s ease-in-out infinite !important;
    transform-origin: 8px 16px;
    overflow: visible;
}

/* Cancel the older spin animation on the inner SVG that fix6 added */
.hero-urgent__icon svg {
    animation: ssx-phone-ring 2.4s ease-in-out infinite !important;
    transform-origin: 8px 16px !important;
}

/* Sound-wave arcs fade in/out on top of the receiver */
.hero-urgent__wave {
    transform-origin: 14.5px 8.5px;
    animation: ssx-phone-wave 1.5s ease-out infinite;
}
.hero-urgent__wave--1 { animation-delay: 0s; }
.hero-urgent__wave--2 { animation-delay: 0.4s; }

@media (prefers-reduced-motion: reduce) {
    .hero-urgent__icon-svg,
    .hero-urgent__wave { animation: none !important; }
}

/* === HERO V2 fix 8 — tighten gap between hero and services === */
.hero { padding-bottom: 16px !important; }
.services-section { padding-top: 28px !important; }

/* === HERO V2 fix 9 — tighten further === */
.hero { padding-bottom: 0 !important; }
.services-section { padding-top: 0 !important; padding-bottom: 28px !important; }
.services-section h2 { margin-top: 0 !important; padding-top: 8px; }

/* === HERO V2 fix 10 — keep a tasteful gap, just less than original === */
.hero { padding-bottom: 24px !important; }
.services-section { padding-top: 16px !important; padding-bottom: 28px !important; }
.services-section h2 { margin-top: 0 !important; padding-top: 0 !important; }

/* === HERO V2 fix 11 — slightly larger gap === */
.hero { padding-bottom: 40px !important; }
.services-section { padding-top: 32px !important; }

/* active nav underline */
.navbar-nav .nav-link {
  position: relative !important;
  transition: color 0.3s ease !important;
}

.navbar-nav .nav-link::after {
  content: "" !important;
  position: absolute !important;
  left: 0.5rem !important;
  right: 0.5rem !important;
  bottom: 0 !important;
  height: 2px !important;
  background-color: #d10503 !important;
  transform: scaleX(0) !important;
  transition: transform 0.3s ease !important;
  transform-origin: center !important;
}

.navbar-nav .nav-link.nav-active::after,
.navbar-nav .nav-link.text-primary::after,
.navbar-nav .nav-link:hover::after {
  transform: scaleX(1) !important;
}

.navbar-nav .nav-link.nav-active,
.navbar-nav .nav-link.text-primary {
  color: #d10503 !important;
  font-weight: 600 !important;
}

@media (min-width: 768px) {
    .about .about-text {
        margin-left: -40px;
    }
}

/* Match About page process circles exactly on homepage */
.process .circle {
    background: #b91410;
    box-shadow: 0 0 0 5px #f8f9fa;
}

/* Match About page process circle animation exactly on homepage */
.process .step .circle {
    transition: transform 0.28s ease, box-shadow 0.28s ease;
    cursor: default;
    will-change: transform;
}
.process .step .circle::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 2px solid #b91410;
    box-sizing: border-box;
    opacity: 0;
    pointer-events: none;
    animation: circle-ring-pulse 2.4s ease-out infinite;
}
.process .swiper-slide:nth-child(1) .circle::before { animation-delay: 0s; }
.process .swiper-slide:nth-child(2) .circle::before { animation-delay: 0.6s; }
.process .swiper-slide:nth-child(3) .circle::before { animation-delay: 1.2s; }
.process .swiper-slide:nth-child(4) .circle::before { animation-delay: 1.8s; }

@keyframes circle-ring-pulse {
    0%   { transform: scale(1); opacity: 0.75; }
    80%  { transform: scale(1.65); opacity: 0; }
    100% { transform: scale(1.65); opacity: 0; }
}

.process .step .circle:hover {
    transform: translateX(-50%) scale(1.07);
    box-shadow: 0 0 0 5px #f8f9fa, 0 10px 24px rgba(185, 20, 16, 0.38);
}

@media (prefers-reduced-motion: reduce) {
    .process .step .circle::before { animation: none; opacity: 0; }
    .process .step .circle { transition: none; }
    .process .step .circle:hover { transform: translateX(-50%); }
}

/* === KLIENTËT TANË — reduce title-to-subtitle gap on mobile only === */
@media (max-width: 767.98px) {
    .testimonials h2 {
        margin-bottom: 16px;
    }
}

/* Mobile menu: replace ::after underline with text-decoration so it aligns with the word */
@media (max-width: 991.98px) {
  .navbar-nav .nav-link::after {
    display: none !important;
  }
  .navbar-nav .nav-link.nav-active,
  .navbar-nav .nav-link.text-primary,
  .navbar-nav .nav-link:hover {
    text-decoration: underline !important;
    text-decoration-color: #d10503 !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 4px !important;
  }
}
.testimonials--gap-footer { padding-bottom: 4rem !important; }
