/* Performance & SEO Optimization Styles */

/* Tag Styling - Replacing javascript:void(0) links */
.tag-item,
.blog-category span.tag-item {
    display: inline-block;
    padding: 5px 12px;
    margin: 2px 4px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #fff;
    border-radius: 20px;
    font-size: 13px;
    font-weight: 500;
    transition: all 0.3s ease;
    cursor: default;
}

.tag-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(102, 126, 234, 0.3);
}

/* Social Button Styling for Login Modal */
.social-btn {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid #ddd;
    background: #fff;
    color: #333;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 5px;
    transition: all 0.3s ease;
    cursor: pointer;
}

.social-btn:hover {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: #fff;
    border-color: transparent;
    transform: translateY(-2px);
}

/* Button Styling for Sidebar Toggle */
.sidebar-toggle-btn {
    background: transparent;
    border: none;
    color: inherit;
    font-size: inherit;
    padding: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.sidebar-toggle-btn:hover {
    opacity: 0.8;
}

/* Book Button Styling */
.book-c-btn button.default-btn {
    border: none;
    cursor: pointer;
    font-family: inherit;
}

/* Lazy images: no shimmer (avoids flash on empty boxes) */
img[loading="lazy"] {
    animation: none;
}

/* Header logo: keep it compact and render it early */
.logo img {
    width: auto !important;
    height: 48px !important;
    max-height: 48px !important;
    object-fit: contain;
}

/* Owl Carousel: show first slide before JS (site-wide) */
.owl-carousel:not(.owl-loaded) {
    display: block !important;
    overflow: hidden;
    opacity: 1 !important;
    visibility: visible !important;
}

.owl-carousel:not(.owl-loaded) > *:not(:first-child) {
    display: none !important;
}

.owl-carousel:not(.owl-loaded) > *:first-child {
    display: block !important;
    width: 100%;
}

/* Homepage hero: anti-flash only — keep original .banner-area (#F5F1EE + bannerbg) */
.home-banner.banner-area {
    background-color: #f5f1ee !important;
    background-image: url(../img/bannerbg.png) !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

.home-banner .banner-carousel.owl-loading {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    background: transparent;
}

.home-banner .banner-carousel:not(.owl-loaded):not(.owl-loading) {
    display: block !important;
    overflow: hidden;
    background: transparent;
}

.home-banner .banner-carousel:not(.owl-loaded):not(.owl-loading) .banner-item {
    display: none;
}

.home-banner .banner-carousel:not(.owl-loaded):not(.owl-loading) .banner-item:first-child {
    display: block !important;
}

.home-banner .banner-carousel:not(.owl-loaded) .banner-item .row,
.home-banner .banner-carousel.owl-loading .banner-item .row {
    min-height: 0;
}

.home-banner .banner-carousel:not(.owl-loaded) .banner-item:first-child .row {
    display: flex;
    align-items: center;
}

.home-banner .banner-carousel:not(.owl-loaded) .banner-img img {
    display: block;
    width: 100%;
}

@keyframes loading {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Time Element Styling */
time {
    font-style: normal;
    color: inherit;
}

/* Performance: Reduce Paint on Hover */
.case-win-item {
    will-change: transform;
    transition: transform 0.3s ease;
}

.case-win-item:hover {
    transform: translateY(-5px);
}

/* Optimize Font Rendering */
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Reduce Layout Shift */
img {
    max-width: 100%;
    height: auto;
}

/* Accessibility Improvements */
/*button:focus,*/
/*a:focus {*/
/*    outline: 2px solid #667eea;*/
/*    outline-offset: 2px;*/
/*}*/

/* Skip to Content Link for Screen Readers */
.skip-to-content {
    position: absolute;
    left: -9999px;
    z-index: 999;
    padding: 1em;
    background: #000;
    color: #fff;
    text-decoration: none;
}

.skip-to-content:focus {
    left: 0;
    top: 0;
}

/* Global frontend polish: tighter spacing + stronger visual hierarchy */
:root {
    --site-gap-sm: clamp(0.55rem, 1.1vw, 0.85rem);
    --site-gap-md: clamp(0.7rem, 1.4vw, 1rem);
    --site-gap-lg: clamp(1rem, 2vw, 1.5rem);
    --site-section-y: clamp(1.15rem, 2.2vw, 2rem);
    --site-section-y-mobile: clamp(0.85rem, 2.8vw, 1.35rem);
    --site-card-radius: 14px;
    --site-heading-blue: #173b9a;
    --site-menu-highlight: #b75400;
    --site-btn-color: #3f0d94;
    --site-btn-color-hover: #310a73;
}

/* Section spacing: service pages only (do not override homepage sections) */
.service-page-wrap section,
.service-page-wrap .section,
.service-page-wrap .service-section,
.service-page-wrap .contact-area,
.service-page-wrap .faq-contact-section,
.service-page-wrap .calender-section,
.service-page-wrap .discuss-area {
    padding-top: var(--site-section-y) !important;
    padding-bottom: var(--site-section-y) !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

.service-page-wrap .hero-area,
.service-page-wrap .hero-section,
.service-page-wrap .inner-banner-area {
    padding-top: clamp(3.8rem, 7vw, 5.8rem) !important;
    padding-bottom: clamp(1.2rem, 2.5vw, 1.9rem) !important;
}

.section-title,
.service-wrapper .section-heading,
.section-heading {
    margin-bottom: clamp(0.35rem, 1vw, 0.75rem) !important;
}

p,
.hero-content p,
.section-title p {
    line-height: 1.65;
}

h1,
h2,
h3,
h4,
h5,
h6,
.section-title,
.section-heading,
.hero-title,
.hero-content h1,
.hero-content h2,
.hero-content h3 {
    color: var(--site-heading-blue) !important;
}

/* discuss-area: purple panel — headings stay white (override rule above) */
.discuss-area .profile-history h4,
.discuss-area .profile-history h3,
.discuss-area .profile-his-two-des h3,
.discuss-area .profile-his-two-des h5 {
    color: #fff !important;
}

.card,
.glass-card,
.portfolio-item,
.faq-item,
.case-win-item,
.contact-form,
.ceo-video-box,
.offer-banner {
    border-radius: var(--site-card-radius);
}

.portfolio-item,
.case-win-item,
.faq-item,
.glass-card {
    box-shadow: 0 10px 28px rgba(10, 14, 30, 0.08);
}

.portfolio-item:hover,
.case-win-item:hover,
.faq-item:hover,
.glass-card:hover {
    box-shadow: 0 14px 34px rgba(10, 14, 30, 0.13);
}

.default-btn,
.btn,
.sec-btn,
.sec-btn-two,
.outline-btn {
    border-radius: 10px;
    transition:
        transform 0.22s ease,
        box-shadow 0.22s ease,
        filter 0.22s ease;
}

.default-btn:hover,
.btn:hover,
.sec-btn:hover,
.sec-btn-two:hover,
.outline-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(63, 13, 148, 0.3);
}

.default-btn,
.btn-primary,
.sec-btn {
    background-image: none;
    background-color: var(--site-btn-color) !important;
    border-color: var(--site-btn-color) !important;
    color: #fff !important;
}

.btn,
.sec-btn-two,
.outline-btn,
button,
input[type="submit"],
input[type="button"] {
    background-image: none;
    background-color: var(--site-btn-color);
    border-color: var(--site-btn-color);
    color: #fff;
}

.btn:hover,
.btn:focus,
.btn:focus-visible,
.default-btn:hover,
.default-btn:focus,
.default-btn:focus-visible,
.sec-btn:hover,
.sec-btn:focus,
.sec-btn:focus-visible,
.sec-btn-two:hover,
.sec-btn-two:focus,
.sec-btn-two:focus-visible,
.outline-btn:hover,
.outline-btn:focus,
.outline-btn:focus-visible,
button:hover,
button:focus,
button:focus-visible,
input[type="submit"]:hover,
input[type="button"]:hover {
    background-color: var(--site-btn-color-hover) !important;
    border-color: var(--site-btn-color-hover) !important;
    color: #fff !important;
}

.footer-area {
    padding-top: clamp(1.6rem, 3vw, 2.4rem) !important;
}

.footer-bottom {
    margin-top: clamp(0.7rem, 1.8vw, 1.2rem) !important;
}

/* Customer profile experts section */
.customer-profile-wrapper {
    background: #ffffff !important;
    color: #1f2540 !important;
    padding-top: clamp(1rem, 2.2vw, 1.6rem) !important;
    padding-bottom: clamp(1.35rem, 2.8vw, 2rem) !important;
}

.customer-profile-wrapper .dm-service-title {
    color: var(--site-heading-blue) !important;
    margin-bottom: 0.35rem !important;
}

.customer-profile-wrapper .dm-service-title span {
    color: var(--site-btn-color) !important;
}

.customer-profile-wrapper .dm-line {
    background: var(--site-btn-color) !important;
    margin: 0.5rem 0 0.8rem !important;
}

.customer-profile-wrapper .dm-service-text {
    color: #475169 !important;
    margin-bottom: 0 !important;
}

.customer-profile-wrapper .customer-profile-img .bottom-img {
    margin-top: 0.9rem !important;
}

/* Menu highlight polish */
.menu-bg {
    border-color: rgba(23, 59, 154, 0.14);
    background: transparent;
    box-shadow: none;
}

.main-menu ul li {
    padding: 8px 0 !important;
}

.main-menu ul li > a {
    display: inline-block;
    padding: 0.3rem 0.2rem;
    color: var(--site-heading-blue) !important;
    font-weight: 700;
    letter-spacing: 0.01em;
    background: transparent !important;
}

.main-menu ul li > a:hover,
.main-menu ul li:hover > a,
.main-menu ul li > a:focus,
.main-menu ul li > a:focus-visible,
.main-menu ul li > a.active,
.main-menu ul li .active {
    color: var(--site-menu-highlight) !important;
    background: transparent !important;
    box-shadow: none;
}

.main-menu ul li > a::after {
    content: "";
    display: block;
    width: 0;
    height: 2px;
    margin: 4px auto 0;
    border-radius: 99px;
    background: var(--site-menu-highlight);
    transition: width 0.25s ease;
}

.main-menu ul li > a:hover::after,
.main-menu ul li > a.active::after,
.main-menu ul li .active::after {
    width: 70%;
}

.main-menu ul li.free-consultation-item > a::after,
.main-menu ul li.free-consultation-item > a:hover::after,
.main-menu ul li.free-consultation-item > a.active::after {
    display: none;
}

.main-menu ul li.free-consultation-item {
    margin-left: 0.8rem;
}

.main-menu ul li.free-consultation-item > a,
.main-menu ul li.free-consultation-item > a:hover,
.main-menu ul li.free-consultation-item > a:focus,
.main-menu ul li.free-consultation-item > a:focus-visible,
.main-menu ul li.free-consultation-item > a.active,
.main-menu ul li.free-consultation-item .active,
.free-consultation-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 0.62rem 1.22rem !important;
    border-radius: 999px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0;
    text-transform: none;
    background-color: var(--site-btn-color) !important;
    border: 1px solid var(--site-btn-color) !important;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(63, 13, 148, 0.24);
}

.main-menu ul li.free-consultation-item > a:hover,
.main-menu ul li.free-consultation-item > a:focus,
.main-menu ul li.free-consultation-item > a:focus-visible,
.free-consultation-btn:hover,
.free-consultation-btn:focus,
.free-consultation-btn:focus-visible {
    background-color: var(--site-btn-color-hover) !important;
    border-color: var(--site-btn-color-hover) !important;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(63, 13, 148, 0.32);
    transform: translateY(-1px);
}

@media (max-width: 991px) {
    .mean-container .mean-nav ul li a {
        color: var(--site-heading-blue) !important;
        border-bottom-color: rgba(23, 59, 154, 0.12) !important;
    }

    .mean-container .mean-nav ul li > a:hover:not(.mean-expand):not(.free-consultation-btn) {
        background: transparent !important;
        color: var(--site-menu-highlight) !important;
    }

    .mean-container .mean-nav ul li.free-consultation-item > a,
    .mean-container .mean-nav ul li.free-consultation-item > a:hover,
    .mean-container .mean-nav ul li.free-consultation-item > a:focus {
        background-color: var(--site-btn-color) !important;
        color: #ffffff !important;
    }

    .main-menu ul li.free-consultation-item {
        margin-left: 0;
    }

    .hero-area,
    .hero-section,
    .inner-banner-area,
    .banner-area {
        padding-top: clamp(3.25rem, 10vw, 4.5rem) !important;
        padding-bottom: clamp(0.9rem, 3vw, 1.25rem) !important;
    }
}

@media (max-width: 992px) {
    section,
    .section,
    .service-section,
    .contact-area,
    .faq-contact-section,
    .calender-section,
    .discuss-area {
        padding-top: var(--site-section-y-mobile) !important;
        padding-bottom: var(--site-section-y-mobile) !important;
    }

    .section-title,
    .service-wrapper .section-heading,
    .section-heading {
        margin-bottom: var(--site-gap-md) !important;
    }

    .row {
        --bs-gutter-y: 0.65rem;
    }
}

@media (max-width: 768px) {
    .hero-section + section,
    .hero-section + .section,
    .banner-area + section,
    .banner-area + .section,
    .inner-banner-area + section,
    .inner-banner-area + .section {
        padding-top: 14px !important;
    }

    .section + .section,
    section + section,
    .service-section + .section,
    .section + section,
    .contact-area + .section,
    .faq-contact-section + .section {
        padding-top: 14px !important;
    }

    .customer-profile-wrapper {
        padding-top: 0.95rem !important;
        padding-bottom: 1.25rem !important;
    }

    .customer-profile-wrapper .customer-profile-img {
        gap: 0.95rem;
    }

    .row {
        --bs-gutter-y: 0.5rem;
    }
}

/* Small-screen improvements */
@media (max-width: 576px) {
    /* Reduce header padding and logo size to avoid overlap */
    .header-sticky {
        padding: 8px 0 !important;
    }

    .logo img {
        height: 40px !important;
        max-height: 40px !important;
        max-width: 110px !important;
        width: auto !important;
        object-fit: contain;
        display: block;
    }

    /* Ensure nav toggle is visible and doesn't push content */
    .side-menu-icon {
        margin-top: 0 !important;
    }

    /* Stack hero columns and tighten spacing */
    .hero-split-grid,
    .hero-split-grid .hero-copy,
    .hero-split-grid .hero-form-col {
        grid-template-columns: 1fr !important;
        width: 100% !important;
    }

    .hero-split-grid {
        gap: 0.9rem !important;
        align-items: start !important;
    }

    /* Smaller, readable hero heading on mobile */
    .hero-title {
        font-size: clamp(1.6rem, 6.6vw, 2.2rem) !important;
        line-height: 1.08 !important;
        margin-bottom: 0.4rem !important;
    }

    .hero-sub {
        font-size: 15px !important;
        line-height: 1.5 !important;
        margin-bottom: 0.9rem !important;
    }

    .inline-cta-row {
        gap: 10px !important;
        margin-bottom: 12px !important;
    }

    .hero-badge-grid {
        justify-content: flex-start !important;
    }

    /* Reduce space between hero controls (dots) and next section */
    .portfolio-hover-preview + .section,
    .hero-section + section,
    .hero-section + .section {
        padding-top: 12px !important;
    }

    /* Make CTA buttons comfortably tappable */
    .default-btn,
    .btn,
    .free-consultation-btn {
        padding: 12px 18px !important;
        font-size: 15px !important;
    }

    /* Adjust about / profile section spacing on mobile */
    .customer-profile-wrapper {
        padding-top: 1.05rem !important;
        padding-bottom: 1.45rem !important;
    }

    .customer-profile-wrapper .dm-service-title {
        font-size: 1.35rem !important;
    }
}

/* Extra tiny-screen polish */
@media (max-width: 480px) {
    .header-sticky .container,
    .header .container {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 8px !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .logo {
        flex: 0 0 auto !important;
        margin-right: 6px !important;
    }

    .logo img {
        height: 38px !important;
        max-height: 38px !important;
        max-width: 100px !important;
        width: auto !important;
        object-fit: contain;
        display: block !important;
    }

    .side-menu-icon {
        order: 3 !important;
        margin: 0 !important;
    }

    .main-menu {
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: 100% !important;
        background: transparent !important;
        padding: 6px 0 !important;
        z-index: 999 !important;
    }

    .main-menu ul li > a {
        display: block !important;
        padding: 9px 14px !important;
        font-size: 15px !important;
        text-align: left !important;
    }

    /* subtle underline highlight for menu items */
    .main-menu ul li > a {
        position: relative !important;
        text-decoration: none !important;
    }

    .main-menu ul li > a::after {
        content: "" !important;
        position: absolute !important;
        left: 14px !important;
        right: 14px !important;
        bottom: 8px !important;
        height: 2px !important;
        background: var(--site-heading-blue, #0b6fff) !important;
        transform-origin: left center !important;
        transform: scaleX(0) !important;
        transition: transform 0.18s ease-in-out !important;
    }

    .main-menu ul li > a:hover::after,
    .main-menu ul li > a:focus::after {
        transform: scaleX(1) !important;
    }

    /* Hero alignment and image scaling */
    .hero-split-grid {
        padding-left: 0.9rem !important;
        padding-right: 0.9rem !important;
    }

    .hero-split-grid img,
    .hero-split-grid .hero-figure img {
        max-width: 100% !important;
        height: auto !important;
        object-fit: cover !important;
        display: block !important;
        margin: 0 auto !important;
    }

    .hero-copy {
        text-align: left !important;
    }

    .hero-title {
        font-size: 1.5rem !important;
        line-height: 1.06 !important;
        margin-bottom: 0.35rem !important;
    }

    .hero-sub {
        font-size: 14px !important;
    }

    /* Make CTA compact but tappable */
    .free-consultation-btn {
        padding: 10px 12px !important;
        font-size: 14px !important;
        min-width: 0 !important;
    }

    /* Tighten vertical spacing for stacked sections */
    .section,
    .section-padding {
        padding-top: 0.9rem !important;
        padding-bottom: 0.9rem !important;
    }
}

@media (max-width: 375px) {
    .logo img {
        height: 34px !important;
        max-height: 34px !important;
        max-width: 92px !important;
    }
    .hero-title {
        font-size: 1.35rem !important;
    }
    .main-menu ul li > a {
        font-size: 14px !important;
        padding: 8px 12px !important;
    }
}

/* Position hamburger to the right on small devices */
@media (max-width: 768px) {
    .header-sticky .container {
        position: relative !important;
    }

    .header-sticky .row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }

    .header-sticky .col-xl-2.col-lg-2.col-md-4.col-6,
    .header-sticky .col-xl-10.col-lg-10.col-md-8.col-6 {
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
    }

    .header-sticky .col-xl-10.col-lg-10.col-md-8.col-6 {
        margin-left: auto !important;
    }

    .nav-area {
        position: static !important;
        display: block !important;
    }

    .header-sticky .side-menu-icon {
        position: absolute !important;
        right: 12px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        margin: 0 !important;
        display: block !important;
        z-index: 1800 !important;
    }

    .nav-area .main-menu {
        padding-right: 70px !important;
    }

    .logo {
        z-index: 1700 !important;
        position: relative !important;
    }
}

@media (max-width: 480px) {
    .header-sticky .side-menu-icon {
        right: 8px !important;
    }
}
/* Extra tightening for back-to-back content sections */
/* Extra tightening for back-to-back content sections */
.hero-section + section,
.hero-section + .section,
.banner-area + section,
.banner-area + .section,
.inner-banner-area + section,
.inner-banner-area + .section {
    padding-top: 18px !important;
}

.section + .section,
section + section,
.service-section + .section,
.section + section,
.contact-area + .section,
.faq-contact-section + .section {
    padding-top: 18px !important;
}

/* Dark/non-white section heading contrast fix (site-wide) */
.choose-us .section-heading .sub-title,
.choose-us .section-heading .section-title,
.choose-us .section-heading .description-title p,
.customer-profile-wrapper .section-heading .sub-title,
.customer-profile-wrapper .section-heading .section-title,
.customer-profile-wrapper .section-heading .description-title p,
.work-area.case-study-one .section-heading .sub-title,
.work-area.case-study-one .section-heading .section-title,
.work-area.case-study-one .section-heading .description-title p,
.work-area.case-study-one .work-description-title,
.blog-area .section-heading .sub-title,
.blog-area .section-heading .section-title,
.blog-area .section-heading .description-title p,
.team-area .section-heading .sub-title,
.team-area .section-heading .section-title,
.team-area .section-heading .description-title p,
.customer-says .section-heading .sub-title,
.customer-says .section-heading .section-title,
.customer-says .section-heading .description-title p {
    color: #ffffff !important;
}

.team-area .section-heading {
    text-align: center !important;
}

.team-area .section-heading .description-title {
    display: flex;
    justify-content: center;
}

.team-area .section-heading .description-title p {
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
}

/* Respect explicit white utility inside heading blocks */
.section-heading .text-white,
.section-heading .text-white * {
    color: #ffffff !important;
}

/* Team area member names & roles on colored background */
.team-area .team-info h5,
.team-area .team-info p,
.team-profile .team-info h5,
.team-profile .team-info p {
    color: #ffffff !important;
}

/* Team member photos — stable box, always visible */
.team-area .team-pagination p {
    color: #fff !important;
}

.team-profile .team-img-wrap {
    width: 220px;
    max-width: 100%;
    margin: 0 auto;
    border-radius: 22px;
    background: #f8dfe6;
    padding: 18px;
    overflow: hidden;
    display: block;
    line-height: 0;
}

.team-profile .team-img-wrap img,
.team-profile .team-member-photo {
    width: 100%;
    height: 260px;
    min-height: 220px;
    object-fit: cover;
    object-position: center top;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    border-radius: 12px;
    background-color: #f8dfe6;
}

@media (max-width: 768px) {
    .team-profile .team-img-wrap {
        padding: 12px;
        width: min(220px, 88vw);
    }

    .team-profile .team-img-wrap img,
    .team-profile .team-member-photo {
        height: 220px;
        min-height: 200px;
    }
}

/* Footer dark background contrast fixes */

.footer-area .footer-title,
.footer-area .footer-desctiption p,
.footer-area .footer-desctiption,
.footer-area .footer-link ul li,
.footer-area .footer-link ul li a,
.footer-area .footer-link a,
.footer-area .footer-address ul li,
.footer-area .toll-free h3,
.footer-area .footer-book h3,
.footer-area .toll-free h3 a,
.footer-area .toll-phone-list__label,
.footer-area .toll-phone-list__link,
.footer-area .toll-phone-list__link span {
    color: #ffffff !important;
}

.footer-area .footer-link ul li a {
    color: rgba(255, 255, 255, 0.92) !important;
}

.footer-area .footer-link ul li a:hover {
    color: var(--site-heading-blue, #0b6fff) !important;
}

.footer-area .footer-desctiption p {
    color: rgba(255, 255, 255, 0.9) !important;
}

/* Cookie mini box + hide vendor consent UI */
html.js-lcc-active,
html.js-lcc-active body {
    overflow: auto !important;
}

.js-lcc-backdrop,
.js-lcc-modal,
.lcc-backdrop,
.lcc-modal,
[class^="js-lcc-"],
[class*=" js-lcc-"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.cookie-mini-box {
    position: fixed;
    left: 14px;
    bottom: 14px;
    z-index: 9999;
    width: min(280px, calc(100vw - 28px));
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.98);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    font-size: 12px;
    line-height: 1.4;
    color: #1f2937;
    display: none;
    pointer-events: auto;
}

.cookie-mini-box__title {
    margin: 0 0 4px;
    font-size: 13px;
    font-weight: 700;
    color: #111827;
}

.cookie-mini-box__text {
    margin: 0 0 8px;
}

.cookie-mini-box__actions {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.cookie-mini-box__btn {
    border: 1px solid #111827;
    background: #111827;
    color: #fff;
    border-radius: 8px;
    padding: 6px 9px;
    font-size: 12px;
    line-height: 1;
    cursor: pointer;
}

.cookie-mini-box__btn--ghost {
    background: transparent;
    color: #111827;
    border-color: rgba(17, 24, 39, 0.16);
}

/* discuss-area — must stay last: beats global h4 blue heading rule */
section.discuss-area .profile-history > h4,
section.discuss-area .profile-history h4,
section.discuss-area .profile-his-two-des h3,
section.discuss-area .profile-his-two-des h5 {
    color: #ffffff !important;
}
