/*============ Admin bar top css end ===========*/
.tp-default-menu-last .menu-last ul.submenu {
    right: 0;
    left: auto;
}

.tp-default-menu-last .menu-last ul.submenu li a {
    display: flex;
}

.tp-default-menu-last .menu-last ul.submenu li ul.submenu {
    right: 100%;
    left: auto;
}


.tp-sidebar-widget.widget_search {
    border: none;
    padding: 0px;
}

.tp-sidebar-widget.widget_categories {
    padding-bottom: 0px;
}

.tp-sidebar-widget.widget_categories li {
    list-style: none;
}

.tp-sidebar-widget.widget_categories li:not(:last-child) {
    margin-bottom: 6px;
}

/* .tp-sidebar-widget.widget_categories ul li a {
    font-weight: 400;
    font-size: 18px;
    letter-spacing: -0.01em;
    color: #142d25;
    line-height: 1;
    display: flex;
    background: #F6F5F2;
    justify-content: space-between;
    text-decoration: none !important;
    transition: .3s linear;
    padding: 16px 20px;

    &:hover {
        color: var(--tp-theme-secondary);
    }
} */

.tp-sidebar-widget.widget_tag_cloud .tagcloud {
    display: flex;
    flex-wrap: wrap;
}

.tp-blog-details-area .wp-block-tag-cloud a:hover,
div.tp-sidebar-widget.widget_tag_cloud a:hover,
div.tp-blog-details-area .comment-reply-link:hover,
div.tp-postbox-wrapper .tp-blog-details-tag a:hover {
    /* color: var(--tp-common-black);
    background-color: var(--tp-theme-secondary); */
}

.tp-blog-details-area .wp-block-tag-cloud a {
    margin-bottom: 5px;
    padding: 11px 17px;
    background: transparent;
    color: #142D25;
    font-weight: 400;
    font-size: 17px !important;
    background-color: #F6F5F2;
}


body .tp-pagination .tp-blog-pagenation ul li:not(:last-child) {
    margin-right: 6px;
}


.tp-blog-details-social ul li a {
    text-decoration: none;
}

.cnt-blog-item-2.bbr:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.tp-header-menu .dropdown-arrow {
    display: none;
}


@media only screen and (max-width: 991px) {
    .tp-blog-details-area .tp-postbox-wrapper {
        margin-bottom: 40px;
    }

    .tp-blog-details-area .pl-30,
    .tp-blog-details-area .pr-30 {
        padding: 0 !important;
    }
}


.tp-error-title {
    font-weight: 700;
    font-size: 64px;
    margin-bottom: 50px;
    color: var(--tp-common-black)
}

.tp-error-title-sm {
    font-weight: 600;
    font-size: 26px;
    line-height: 1;
    text-transform: uppercase;
    color: var(--tp-common-black)
}

.tp-error-content p {
    font-weight: 400;
    font-size: 18px;
    color: #57575a;
    margin-bottom: 30px
}

.tp-error-content .tp-btn {
    height: 60px;
    line-height: 55px;
    border-radius: 40px;
    padding: 0 18px 0 24px;
    font-weight: 500;
    font-size: 18px;
    letter-spacing: .03em;
    z-index: 9;
    overflow: hidden;
    display: inline-block;
    text-transform: capitalize;
    position: relative;
    transition: all 0.3s;
    background-color: var(--tp-common-black);
    color: var(--tp-common-white);
    border: 2px solid #fff0
}

.tp-error-content .tp-btn:hover {
    background-color: #fff0;
    color: var(--tp-common-black);
    border-color: var(--tp-common-black)
}

.tp-error-wrapper img {
    margin-bottom: 55px
}
.tp-footer-copyright-area{
    background-color: #F7F7F5;
}
.tp-footer-copyright-area p{
    margin-bottom: 0;
}

/*============ Rotating animated heading (thebrightapp style) ===========*/
.rotating-text__heading {
    --rt-line: 1.2em;         /* height of one word slot (a bit > 1em so g/y descenders aren't clipped) */
    --rt-speed: 10s;          /* full cycle time for all words */
    --rt-shift: 0em;          /* vertical nudge if the word sits a touch high/low vs the static text */
}

.rotating-text__highlight {
    display: inline-flex;
    flex-direction: column;
    height: var(--rt-line);
    line-height: var(--rt-line);
    overflow: hidden;
    /* align to the font's metrics (not the line-box) so it matches the text before/after */
    vertical-align: text-bottom;
    transform: translateY(var(--rt-shift));
    color: var(--rt-color, #4f6ef7); /* highlight/accent color (widget overrides with !important) */
}

.rotating-text__inner {
    display: flex;
    flex-direction: column;
    animation: rt-slide var(--rt-speed) infinite;
    /* approximates GSAP power4.inOut */
    animation-timing-function: cubic-bezier(0.76, 0, 0.24, 1);
}

.rotating-text__word {
    height: var(--rt-line);
    line-height: var(--rt-line);
    white-space: nowrap;
}

/* Default keyframe for manual 5-word markup (the widget generates its own per instance). */
@keyframes rt-slide {
    0%,   16%  { transform: translateY(0); }
    20%,  36%  { transform: translateY(calc(-1 * var(--rt-line))); }
    40%,  56%  { transform: translateY(calc(-2 * var(--rt-line))); }
    60%,  76%  { transform: translateY(calc(-3 * var(--rt-line))); }
    80%,  96%  { transform: translateY(calc(-4 * var(--rt-line))); }
    100%       { transform: translateY(calc(-5 * var(--rt-line))); } /* lands on the clone, loops seamlessly */
}

@media (prefers-reduced-motion: reduce) {
    .rotating-text__inner { animation: none; }
}


/*----------------------------------------*/
/*  Header language switcher — .tp-language
/*----------------------------------------*/
/* Handles both markup shapes:
     WPML   -> <ul><li class="active"><a>English</a></li>…</ul>
     static -> <ul class="d-flex …" style="gap:8px;list-style:none"><li><a>EN</a></li>…</ul>
   The list itself doubles as the closed "select" and the open panel, so no
   extra toggle markup is needed. Only the current language shows while
   closed; hover/focus reveals the rest. */

.tp-language {
    --lang-row-h: 42px;
    --lang-pad-x: 14px;
    --lang-panel-bg: #ffffff;
    --lang-panel-text: #1c1f1a;
    --lang-panel-hover: #f3f5f1;
    --lang-radius: 8px;
    --lang-border-w: 1px;
    --lang-border-color: rgba(255, 255, 255, .4);
    --lang-border-color-open: #e2e6dd;
    --lang-min-w: 138px;
    /* closed-state text colour; falls back to whatever the header uses */
    --lang-text: inherit;

    position: relative;
    display: inline-block;
    vertical-align: middle;
    box-sizing: border-box;
    /* the chevron below is drawn with currentColor, which resolves against this
       element's own colour — so the variable has to land on `color` here, not
       only on the <a> children. Defaults to `inherit`, i.e. the header colour. */
    color: var(--lang-text);
    min-width: var(--lang-min-w);
    /* one row plus the border, so the closed box reserves its exact height */
    height: calc(var(--lang-row-h) + var(--lang-border-w) * 2);
    /* the div keeps its own border at all times — this is the closed "select" box */
    border: var(--lang-border-w) solid var(--lang-border-color);
    border-radius: var(--lang-radius);
    font-size: 15px;
    z-index: 20;
}

/* Absolute, so opening the panel never pushes the header around — the
   wrapper always reserves exactly one row. display is forced because the
   static list carries bootstrap's .d-flex (display:flex !important).
   Offset by the border width so the panel's own border lands exactly on top
   of the div's border instead of sitting 1px inside it as a second line. */
.tp-language > ul {
    display: block !important;
    position: absolute;
    top: calc(var(--lang-border-w) * -1);
    left: calc(var(--lang-border-w) * -1);
    box-sizing: border-box;
    min-width: calc(100% + var(--lang-border-w) * 2);
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    /* transparent while closed, so the div's border is the one you see */
    border: var(--lang-border-w) solid transparent;
    border-radius: var(--lang-radius);
    background: transparent;
    transition: background-color .25s ease, border-color .25s ease;
}

.tp-language > ul > li {
    display: none;
    margin: 0;
    padding: 0;
    list-style: none;
}

/* Closed: show the first item as the trigger. */
.tp-language > ul > li:first-child {
    display: block;
}

/* When WPML marks a current language, that becomes the trigger instead.
   Falls back to the rule above on browsers without :has(). */
.tp-language > ul:has(> li.active) > li:first-child {
    display: none;
}

.tp-language > ul:has(> li.active) > li.active {
    display: block;
}

.tp-language > ul > li > a {
    display: block;
    height: var(--lang-row-h);
    padding: 0 calc(var(--lang-pad-x) + 18px) 0 var(--lang-pad-x);
    line-height: var(--lang-row-h);
    color: var(--lang-text);
    text-decoration: none;
    white-space: nowrap;
    transition: color .2s ease, background-color .2s ease;
}

/* Chevron */
.tp-language::after {
    content: "";
    position: absolute;
    /* offsets resolve against the padding box, which already excludes the border */
    top: calc(var(--lang-row-h) / 2 - 5px);
    right: var(--lang-pad-x);
    width: 7px;
    height: 7px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg);
    pointer-events: none;
    transition: transform .25s ease, color .25s ease;
    z-index: 2;
}

/* ---- Open state. .is-open is a hook for an optional JS click toggle ---- */
.tp-language:hover > ul,
.tp-language:focus-within > ul,
.tp-language.is-open > ul {
    background: var(--lang-panel-bg);
    border-color: var(--lang-border-color-open);
}

.tp-language:hover > ul > li,
.tp-language:focus-within > ul > li,
.tp-language.is-open > ul > li {
    display: block;
}

/* Text sits on the white panel once open, so it has to darken. */
.tp-language:hover > ul > li > a,
.tp-language:focus-within > ul > li > a,
.tp-language.is-open > ul > li > a {
    color: var(--lang-panel-text);
}

.tp-language:hover::after,
.tp-language:focus-within::after,
.tp-language.is-open::after {
    color: var(--lang-panel-text);
    transform: rotate(225deg);
}

.tp-language > ul > li > a:hover,
.tp-language > ul > li > a:focus-visible {
    background: var(--lang-panel-hover);
}

.tp-language > ul > li.active > a {
    font-weight: 600;
}

/* ---- RTL ---- */
.rtl .tp-language > ul {
    left: auto;
    right: calc(var(--lang-border-w) * -1);
}

.rtl .tp-language > ul > li > a {
    padding: 0 var(--lang-pad-x) 0 calc(var(--lang-pad-x) + 18px);
}

.rtl .tp-language::after {
    right: auto;
    left: var(--lang-pad-x);
}


.tp-default-menu-last a.tp-theme-logo{
    padding: 20px 0px;
    display: inline-block;
}