/*
Theme Name: Healthcare Clinic
Theme URI: https://www.ovationthemes.com/products/free-healthcare-wordpress-theme
Author: pewilliams
Author URI: https://www.ovationthemes.com/
Description: Healthcare Clinic is ideal for drugstores, elements, health care, medical, and website services. Its minimalist design makes it stand out from many other themes. Any health clinic website can be created using this theme to attract more potential patients to your services because this theme contains all the necessary elements for building a website that can display detailed information regarding your products and services. The WP theme has multiple inner pages that can be utilized to demonstrate its features effectively. Your website is well organized with distinct sections. The contact information is provided in the about us and contact section. There are options for simple and mega menus for a more engaging and simple navigation experience. You may also design contact forms using this plugin since this theme supports the Contact Form 7 plugin. Other plugins such as appointment booking and other health related products. In addition to being optimized for the theme. Build your healthcare site now! Demo: https://trial.ovationthemes.com/healthcare-clinic/
Version: 6.0
Requires PHP: 5.6
Tested up to: 6.9
Requires at least: 5.0
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
Text Domain: healthcare-clinic
Template: medical-care
Tags: education, portfolio, e-commerce, one-column, two-columns, three-columns, four-columns, left-sidebar, right-sidebar, grid-layout, custom-colors, custom-background, custom-header, custom-menu, custom-logo, editor-style, sticky-post, featured-images, flexible-header, featured-image-header, footer-widgets, full-width-template, threaded-comments, theme-options, wide-blocks, block-styles, post-formats, translation-ready, rtl-language-support

Healthcare Clinic WordPress Theme, Copyright 2022 pewilliams
Healthcare Clinic is distributed under the terms of the GNU GPL

Healthcare Clinic WordPress Theme is child theme of Medical Care WordPress Theme, Copyright 2022 pewilliams
Medical Care WordPress Theme is distributed under the terms of the GNU GPL
*/

:root {
    --theme-primary-color:#1370b5;
    --theme-service-bg-color:#f1f1f1;
    --theme-heading-color:#25304c;
    --theme-text-color:#666666;
}

h1,h2,h3,h4,h5,h6{
    font-family: 'Noto Sans', sans-serif;
    font-weight: bold;
}
body{
    letter-spacing: 0;
    color: var(--theme-text-color);
    font-family: 'Noto Sans', sans-serif;
}
#mySidenav ul li a:active, #mySidenav ul li a:hover {
    color: #fff;
}
/*color-change*/
.header_img{
	background: var(--theme-primary-color);
}
.wrap_header {
    border-top: solid 8px var(--theme-primary-color);
}
#slider .inner_carousel h2,#slider .inner_carousel p{
    color: var(--theme-secondary-color) !important;
}
.site-title, .site-title a,.logo h1 a,.logo p {
    color: #fff;
}
button.search-submit,#sidebar input[type="search"],input[type="search"],.site-footer .search-form .search-submit,.site-footer input[type="search"],.site-footer .search-form .search-submit,button,input[type="button"],input[type="submit"],.getstarted-btn a,.box-button a,.home-btn a,.wc-block-cart__submit-container a,.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button,.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt,a.added_to_cart.wc-forward{
    border-radius: 0;
}
.navigation.pagination .prev.page-numbers:before
.navigation.pagination .next.page-numbers:before{
    padding: 0.8em 1em;
}
.page-template-custom-home-page .header_img{
    background: var(--theme-primary-color) !important;
}
.menu_box{
    background: var(--theme-primary-color);;
}
.logo h1{
	font-weight: 600;
    text-transform: none;
}
#mySidenav li a {
    padding: 6px 10px;
    font-weight: 600;
}
#mySidenav ul{
    margin: 0;
}
.menu_box {
    border-radius: 40px;
    padding: 6px 25px;
}
#mySidenav{
    text-align: right;
}
#mySidenav li.page_item_has_children:after,
#mySidenav li.menu-item-has-children:after{
    right: -2px;
    top: 12px;
}
ul.sub-menu ul.sub-menu {
    right: 100% !important; /* Ensure submenus open to the right */
    left: auto !important;
}
.entry-content ul, .entry-content ol {
    padding: 0;
}

/* =============================================
   HOME PAGE — HERO SLIDER
   ============================================= */

.home-slider {
    position: relative;
    overflow: hidden;
}
.home-slider .slider-bg-img {
    width: 100%;
    height: 680px;
    object-fit: cover;
    object-position: center;
    display: block;
}
.home-slider .slider-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, rgba(10,30,60,0.72) 0%, rgba(19,112,181,0.45) 100%);
    z-index: 1;
}
.home-slider .carousel-item {
    position: relative;
}
.home-slider .slider-caption {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    text-align: left;
    padding: 0 6%;
    z-index: 2;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.home-slider .slider-caption-inner {
    max-width: 600px;
}
.home-slider .slider-tag {
    display: inline-block;
    background: var(--theme-primary-color);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    padding: 4px 14px;
    border-radius: 20px;
    margin-bottom: 18px;
}
.home-slider .slider-title {
    font-size: clamp(28px, 4vw, 52px);
    font-weight: 800;
    color: #fff;
    line-height: 1.2;
    margin-bottom: 16px;
    text-shadow: 0 2px 12px rgba(0,0,0,0.3);
}
.home-slider .slider-excerpt {
    font-size: 16px;
    color: rgba(255,255,255,0.88);
    line-height: 1.7;
    margin-bottom: 30px;
    max-width: 520px;
}
.home-slider .slider-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: center;
}
.btn-slider-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--theme-primary-color);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.25s, transform 0.2s;
}
.btn-slider-primary:hover {
    background: #0e5a9e;
    color: #fff;
    transform: translateY(-2px);
}
.btn-slider-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 12px 26px;
    border: 2px solid rgba(255,255,255,0.7);
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.25s, border-color 0.25s, transform 0.2s;
}
.btn-slider-outline:hover {
    background: rgba(255,255,255,0.15);
    border-color: #fff;
    color: #fff;
    transform: translateY(-2px);
}
/* Carousel nav buttons */
.home-slider .slider-nav-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    background: rgba(255,255,255,0.15);
    border: 2px solid rgba(255,255,255,0.5);
    border-radius: 50%;
    font-size: 16px;
    color: #fff;
    transition: background 0.2s;
    backdrop-filter: blur(4px);
}
.home-slider .carousel-control-prev,
.home-slider .carousel-control-next {
    width: auto;
    opacity: 1;
    padding: 0 20px;
}
.home-slider .carousel-control-prev:hover .slider-nav-btn,
.home-slider .carousel-control-next:hover .slider-nav-btn {
    background: var(--theme-primary-color);
    border-color: var(--theme-primary-color);
}
.home-slider .carousel-indicators [data-bs-target] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: none;
    opacity: 0.5;
    background: #fff;
}
.home-slider .carousel-indicators .active {
    opacity: 1;
    background: var(--theme-primary-color);
    width: 28px;
    border-radius: 5px;
}
/* Scroll hint pulse */
.slider-scroll-hint {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
}
.slider-scroll-hint span {
    display: block;
    width: 2px;
    height: 36px;
    background: rgba(255,255,255,0.6);
    margin: 0 auto;
    animation: scrollPulse 1.6s ease-in-out infinite;
}
@keyframes scrollPulse {
    0%   { opacity: 0; transform: scaleY(0); transform-origin: top; }
    50%  { opacity: 1; }
    100% { opacity: 0; transform: scaleY(1); transform-origin: top; }
}

/* =============================================
   HOME PAGE — STATS STRIP
   ============================================= */

.home-stats-strip {
    background: var(--theme-primary-color);
    padding: 0;
}
.home-stats-strip .stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 28px 16px;
    border-right: 1px solid rgba(255,255,255,0.18);
    text-align: center;
    color: #fff;
    gap: 4px;
}
.home-stats-strip .row > *:last-child .stat-item {
    border-right: none;
}
.home-stats-strip .stat-item i {
    font-size: 22px;
    opacity: 0.75;
    margin-bottom: 6px;
}
.home-stats-strip .stat-item strong {
    font-size: 32px;
    font-weight: 800;
    line-height: 1;
    font-family: 'Noto Sans', sans-serif;
}
.home-stats-strip .stat-item span {
    font-size: 12px;
    opacity: 0.8;
    letter-spacing: 0.5px;
}

/* =============================================
   HOME PAGE — FEATURE BOXES
   ============================================= */

.home-features {
    padding: 70px 0 60px;
    background: #f7f9fc;
}
/* Remove the old overlap behaviour */
#middle-sec {
    margin-top: 0;
    position: static;
    z-index: auto;
}
.feature-card {
    background: #fff;
    border-radius: 10px;
    padding: 36px 28px;
    text-align: center;
    box-shadow: 0 4px 24px rgba(19,112,181,0.08);
    border-top: 4px solid var(--theme-primary-color);
    height: 100%;
    transition: transform 0.25s, box-shadow 0.25s;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.feature-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 36px rgba(19,112,181,0.15);
}
.feature-icon-wrap {
    width: 74px;
    height: 74px;
    background: rgba(19,112,181,0.08);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    flex-shrink: 0;
    transition: background 0.25s;
}
.feature-card:hover .feature-icon-wrap {
    background: var(--theme-primary-color);
}
.feature-icon-wrap i {
    font-size: 30px;
    color: var(--theme-primary-color);
    transition: color 0.25s;
}
.feature-card:hover .feature-icon-wrap i {
    color: #fff;
}
.feature-title {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
    color: var(--theme-heading-color);
}
.feature-title a {
    color: inherit;
    text-decoration: none;
}
.feature-title a:hover {
    color: var(--theme-primary-color);
}
.feature-excerpt {
    font-size: 14px;
    color: var(--theme-text-color);
    line-height: 1.7;
    flex: 1;
    margin-bottom: 18px;
}
.feature-link {
    font-size: 13px;
    font-weight: 700;
    color: var(--theme-primary-color);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.feature-link:hover {
    color: #0e5a9e;
}

/* =============================================
   HOME PAGE — SECTION HEADER (shared)
   ============================================= */

.section-header {
    text-align: center;
    margin-bottom: 44px;
}
.section-tag {
    display: inline-block;
    color: var(--theme-primary-color);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.section-title {
    font-size: clamp(24px, 3vw, 38px);
    font-weight: 800;
    color: var(--theme-heading-color);
    margin-bottom: 14px;
}
.section-divider {
    width: 52px;
    height: 4px;
    background: var(--theme-primary-color);
    border-radius: 2px;
    margin: 0 auto;
}

/* =============================================
   HOME PAGE — SERVICES
   ============================================= */

.home-services {
    padding: 80px 0 70px;
    background: #fff;
}
#our-services {
    background: transparent;
}
.service-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.07);
    height: 100%;
    display: flex;
    flex-direction: column;
    transition: transform 0.25s, box-shadow 0.25s;
}
.service-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 40px rgba(19,112,181,0.14);
}
.service-card-thumb {
    position: relative;
    overflow: hidden;
    height: 200px;
}
.service-card-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.service-card:hover .service-card-thumb img {
    transform: scale(1.06);
}
.service-card-thumb-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, transparent 40%, rgba(19,112,181,0.55));
    opacity: 0;
    transition: opacity 0.3s;
}
.service-card:hover .service-card-thumb-overlay {
    opacity: 1;
}
.service-card-body {
    padding: 24px;
    flex: 1;
    display: flex;
    flex-direction: column;
}
.service-card-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--theme-heading-color);
    margin-bottom: 10px;
}
.service-card-excerpt {
    font-size: 14px;
    color: var(--theme-text-color);
    line-height: 1.7;
    flex: 1;
    margin-bottom: 18px;
}
.service-card-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    font-weight: 700;
    color: var(--theme-primary-color);
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 2px solid transparent;
    padding-bottom: 2px;
    transition: border-color 0.2s, color 0.2s;
    align-self: flex-start;
}
.service-card-btn:hover {
    border-color: var(--theme-primary-color);
    color: #0e5a9e;
}

/* =============================================
   HOME PAGE — EQUIPMENT TEASER
   ============================================= */

.home-equipment {
    padding: 80px 0 70px;
    background: #f7f9fc;
}
.equip-teaser-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(0,0,0,0.07);
    transition: transform 0.25s, box-shadow 0.25s;
}
.equip-teaser-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 32px rgba(19,112,181,0.13);
}
.equip-teaser-link {
    display: block;
    text-decoration: none;
    color: inherit;
}
.equip-teaser-thumb {
    height: 180px;
    overflow: hidden;
    background: #eef3f8;
    display: flex;
    align-items: center;
    justify-content: center;
}
.equip-teaser-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s;
}
.equip-teaser-card:hover .equip-teaser-thumb img {
    transform: scale(1.06);
}
.equip-teaser-placeholder {
    font-size: 48px;
    color: var(--theme-primary-color);
    opacity: 0.3;
}
.equip-teaser-body {
    padding: 18px 20px;
}
.equip-teaser-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--theme-heading-color);
    margin-bottom: 8px;
    line-height: 1.4;
}
.equip-teaser-more {
    font-size: 12px;
    color: var(--theme-primary-color);
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
}
.home-view-all-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--theme-primary-color);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 13px 32px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.25s, transform 0.2s;
}
.home-view-all-btn:hover {
    background: #0e5a9e;
    color: #fff;
    transform: translateY(-2px);
}

/* =============================================
   HOME PAGE — CTA BANNER
   ============================================= */

.home-cta {
    background: linear-gradient(135deg, #0a1e3c 0%, #1370b5 100%);
    padding: 70px 0;
}
.home-cta-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 28px;
}
.home-cta-text h2 {
    font-size: clamp(22px, 3vw, 34px);
    color: #fff;
    font-weight: 800;
    margin-bottom: 8px;
}
.home-cta-text p {
    font-size: 15px;
    color: rgba(255,255,255,0.8);
    margin: 0;
}
.home-cta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    flex-shrink: 0;
}
.cta-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #fff;
    color: var(--theme-primary-color);
    font-size: 15px;
    font-weight: 700;
    padding: 13px 28px;
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.2s, transform 0.2s;
}
.cta-btn-primary:hover {
    background: #e8f1fb;
    color: var(--theme-primary-color);
    transform: translateY(-2px);
}
.cta-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 12px 26px;
    border: 2px solid rgba(255,255,255,0.6);
    border-radius: 4px;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s, transform 0.2s;
}
.cta-btn-outline:hover {
    background: rgba(255,255,255,0.1);
    border-color: #fff;
    color: #fff;
    transform: translateY(-2px);
}

/* =============================================
   HOME PAGE — RESPONSIVE
   ============================================= */

@media (max-width: 991px) {
    .home-slider .slider-bg-img { height: 520px; }
    .home-slider .slider-caption { padding: 0 5%; }
}
@media (max-width: 767px) {
    .home-slider .slider-bg-img { height: 420px; }
    .home-slider .slider-caption { text-align: center; }
    .home-slider .slider-caption-inner { max-width: 100%; }
    .home-slider .slider-actions { justify-content: center; }
    .home-stats-strip .stat-item { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.18); }
    .home-cta-inner { flex-direction: column; text-align: center; }
    .home-cta-actions { justify-content: center; }
    .home-features, .home-services, .home-equipment, .home-cta { padding: 50px 0; }
}
@media (max-width: 575px) {
    .home-slider .slider-bg-img { height: 360px; }
    .home-slider .slider-title { font-size: 24px; }
    .btn-slider-primary, .btn-slider-outline { font-size: 13px; padding: 10px 18px; }
    .home-stats-strip .stat-item strong { font-size: 26px; }
}
/*loader*/

#loader:before {
  border-top-color: #25304c;
}
.spinner > div{
  background-color: #25304c;
}
/* Accessibility */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

.bypostauthor > .comment-body > .comment-meta > .comment-author .avatar ,.comment-author .avatar{
    padding: 2px;
}
/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0;
}
@media screen and (max-width: 991px){
    .toggle-nav {
        background: transparent;
        text-align: right;
    }
    #mySidenav{
        text-align: left;
    }
    .sidenav{
        background: var(--theme-primary-color);
    }
    .toggle-nav button {
        background: #fff;
        color: var(--theme-primary-color);
        font-size: 15px;
        padding: 10px;
        font-weight: bold;
    }
    .toggle-nav button:focus{
        outline: 5px auto #193791;
    }
    #mySidenav ul ul{
        background: transparent;
    }
}

/* =============================================
   Custom Footer Styles
   ============================================= */

/* Footer logo sizing */
.footer-logo img {
    max-height: 60px;
    width: auto;
}

/* About text */
.footer-about-text {
    font-size: 14px;
    line-height: 1.7;
    opacity: 0.85;
}

/* Quick links list */
.footer-nav-list,
.footer-nav-list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-nav-list li {
    padding: 5px 0;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.footer-nav-list li:last-child {
    border-bottom: none;
}
.footer-nav-list li a {
    font-size: 14px;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: padding-left 0.2s ease;
}
.footer-nav-list li a::before {
    content: "\f105";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 12px;
}
.footer-nav-list li a:hover {
    padding-left: 6px;
}

/* Contact list */
.footer-contact-list {
    list-style: none;
    padding: 0;
    margin: 0;
}
.footer-contact-list li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 6px 0;
    font-size: 14px;
    line-height: 1.5;
}
.footer-contact-list li i {
    margin-top: 3px;
    flex-shrink: 0;
    width: 16px;
    text-align: center;
}
.footer-contact-list li a {
    word-break: break-word;
    transition: opacity 0.2s ease;
}
.footer-contact-list li a:hover {
    opacity: 0.8;
}

/* Social icons */
.footer-social-links {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 6px;
}
.footer-social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.3);
    font-size: 15px;
    transition: background 0.25s ease, border-color 0.25s ease, transform 0.2s ease;
}
.footer-social-links a:hover {
    background: var(--theme-primary-color, #1370b5);
    border-color: var(--theme-primary-color, #1370b5);
    transform: translateY(-2px);
}

/* Copyright / site-info bar */
.site-info .footer-copyright-text a {
    font-size: 13px;
}
.footer-bar-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.footer-bar-contact a {
    font-size: 13px;
    display: flex;
    align-items: center;
    gap: 6px;
    transition: opacity 0.2s ease;
}
.footer-bar-contact a:hover {
    opacity: 0.8;
}

@media (max-width: 767px) {
    .site-info .container-fluid {
        flex-direction: column;
        text-align: center;
    }
    .footer-bar-contact {
        justify-content: center;
    }
    .footer-social-links {
        justify-content: flex-start;
    }
}

/* =============================================
   HOME PAGE — Elementor Enhancements (post-27)
   ============================================= */

/* ── Hero section: taller + gradient overlay ── */
.elementor-27 .elementor-element.elementor-element-5dd9f99 {
    min-height: 600px !important;
}

/* Replace flat gray overlay with a deep directional gradient */
.elementor-27 .elementor-element.elementor-element-5dd9f99::before {
    background: linear-gradient(
        110deg,
        rgba(8, 24, 58, 0.78) 0%,
        rgba(23, 96, 199, 0.52) 60%,
        rgba(23, 96, 199, 0.18) 100%
    ) !important;
    opacity: 1 !important;
}

/* ── Hero heading: larger, sharper shadow ── */
.elementor-27 .elementor-element.elementor-element-6047ec6 .elementor-heading-title {
    font-size: clamp(28px, 4vw, 52px) !important;
    line-height: 1.2 !important;
    text-shadow: 0 3px 18px rgba(0, 0, 0, 0.45) !important;
    letter-spacing: -0.3px;
}

/* ── Hero subtitle: slightly larger ── */
.elementor-27 .elementor-element.elementor-element-17bb422 {
    font-size: 16px;
    line-height: 1.7;
    opacity: 0.9;
}

/* ── Buttons: smooth transition + lift on hover ── */
.elementor-27 .elementor-element.elementor-element-2057ae6,
.elementor-27 .elementor-element.elementor-element-345ece8 {
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
.elementor-27 .elementor-element.elementor-element-2057ae6 .elementor-button,
.elementor-27 .elementor-element.elementor-element-345ece8 .elementor-button {
    padding: 14px 28px !important;
    font-size: 15px !important;
    letter-spacing: 0.3px;
    transition: background-color 0.25s ease, transform 0.25s ease,
                box-shadow 0.25s ease !important;
}
.elementor-27 .elementor-element.elementor-element-2057ae6:hover .elementor-button,
.elementor-27 .elementor-element.elementor-element-345ece8:hover .elementor-button {
    background-color: #0e4fa8 !important;
    transform: translateY(-3px);
    box-shadow: 0 8px 22px rgba(23, 96, 199, 0.45) !important;
}

/* Second button: outline style */
.elementor-27 .elementor-element.elementor-element-345ece8 .elementor-button {
    background-color: transparent !important;
    border: 2px solid rgba(255,255,255,0.75) !important;
    color: #fff !important;
}
.elementor-27 .elementor-element.elementor-element-345ece8:hover .elementor-button {
    background-color: rgba(255,255,255,0.12) !important;
    border-color: #fff !important;
    transform: translateY(-3px);
    box-shadow: none !important;
}

/* ── Section headings: accent underline ── */
.elementor-27 .elementor-element.elementor-element-16c05b1 .elementor-heading-title,
.elementor-27 .elementor-element.elementor-element-4e7020f .elementor-heading-title,
.elementor-27 .elementor-element.elementor-element-982244e .elementor-heading-title {
    position: relative;
    display: inline-block;
    padding-bottom: 12px;
}
.elementor-27 .elementor-element.elementor-element-16c05b1 .elementor-heading-title::after,
.elementor-27 .elementor-element.elementor-element-4e7020f .elementor-heading-title::after,
.elementor-27 .elementor-element.elementor-element-982244e .elementor-heading-title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50px;
    height: 4px;
    background: #0057B8;
    border-radius: 2px;
}

/* ── Service cards: smoother, more polished hover ── */
.elementor-27 .elementor-element.elementor-element-72a26bd,
.elementor-27 .elementor-element.elementor-element-fb230ad,
.elementor-27 .elementor-element.elementor-element-56b3041 {
    transition: transform 0.3s ease, box-shadow 0.3s ease,
                background-color 0.3s ease, background-image 0.3s ease !important;
    --e-transform-skewX: 0deg !important;
}
.elementor-27 .elementor-element.elementor-element-72a26bd:hover,
.elementor-27 .elementor-element.elementor-element-fb230ad:hover,
.elementor-27 .elementor-element.elementor-element-56b3041:hover {
    --e-transform-scale: 1.04 !important;
    box-shadow: 0 16px 40px rgba(23, 89, 199, 0.2) !important;
}
/* Improve hover gradient to be subtler */
.elementor-27 .elementor-element.elementor-element-72a26bd:hover {
    background-image: linear-gradient(160deg, #1760C7 0%, #0e4090 100%) !important;
}
.elementor-27 .elementor-element.elementor-element-fb230ad:hover,
.elementor-27 .elementor-element.elementor-element-56b3041:hover {
    background-image: linear-gradient(160deg, #1760C7 0%, #0e4090 100%) !important;
}
/* White text on hovered cards */
.elementor-27 .elementor-element.elementor-element-72a26bd:hover .elementor-icon-box-description,
.elementor-27 .elementor-element.elementor-element-fb230ad:hover .elementor-icon-box-description,
.elementor-27 .elementor-element.elementor-element-56b3041:hover .elementor-icon-box-description {
    color: rgba(255,255,255,0.85) !important;
}

/* ── Global smooth scroll ── */
html {
    scroll-behavior: smooth;
}

/* ── Sticky header shadow on scroll (handled via CSS only trick) ── */
.fixed_header {
    transition: box-shadow 0.3s ease;
}
#header.scrolled .fixed_header,
.header_img .menu_box {
    box-shadow: 0 4px 20px rgba(0,0,0,0.12);
}

@media (max-width: 767px) {
    .elementor-27 .elementor-element.elementor-element-5dd9f99 {
        min-height: 420px !important;
    }
    .elementor-27 .elementor-element.elementor-element-6047ec6 .elementor-heading-title {
        font-size: 26px !important;
    }
}

/* =============================================
   Medical Equipment Archive & Single
   ============================================= */

/* Archive hero */
.meq-archive-hero {
    background: linear-gradient(135deg, #0a1e3c 0%, #1370b5 100%);
    padding: 70px 0 60px;
    text-align: center;
}
.meq-archive-title {
    font-size: clamp(28px, 4vw, 48px);
    font-weight: 800;
    color: #fff;
    margin-bottom: 12px;
}
.meq-archive-subtitle {
    font-size: 16px;
    color: rgba(255,255,255,0.8);
    margin: 0;
}

/* Archive grid */
.meq-archive-wrap {
    padding: 60px 0 80px;
    background: #f7f9fc;
}
.meq-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 28px;
}
.meq-grid-sm {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 20px;
}

/* Cards */
.meq-card {
    background: #fff;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0,0,0,0.07);
    transition: transform 0.25s, box-shadow 0.25s;
}
.meq-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 38px rgba(19,112,181,0.14);
}
.meq-card-link {
    display: block;
    text-decoration: none;
    color: inherit;
    height: 100%;
}
.meq-card-thumb {
    position: relative;
    height: 200px;
    overflow: hidden;
    background: #eef3f8;
    display: flex;
    align-items: center;
    justify-content: center;
}
.meq-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}
.meq-card:hover .meq-thumb-img {
    transform: scale(1.06);
}
.meq-thumb-placeholder {
    font-size: 56px;
    color: var(--theme-primary-color);
    opacity: 0.25;
}
.meq-card-overlay {
    position: absolute;
    inset: 0;
    background: rgba(19,112,181,0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s;
}
.meq-card:hover .meq-card-overlay {
    opacity: 1;
}
.meq-card-cta {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
    letter-spacing: 0.5px;
}
.meq-card-body {
    padding: 20px;
}
.meq-card-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--theme-heading-color);
    margin-bottom: 8px;
    line-height: 1.4;
}
.meq-card-excerpt {
    font-size: 13px;
    color: var(--theme-text-color);
    line-height: 1.6;
    margin-bottom: 12px;
}
.meq-card-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.meq-meta-badge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 11px;
    font-weight: 600;
    color: var(--theme-primary-color);
    background: rgba(19,112,181,0.08);
    padding: 3px 10px;
    border-radius: 20px;
}

/* Empty state */
.meq-empty {
    text-align: center;
    padding: 80px 20px;
    color: var(--theme-text-color);
}
.meq-empty i {
    font-size: 60px;
    opacity: 0.2;
    margin-bottom: 20px;
    display: block;
    color: var(--theme-primary-color);
}
.meq-empty h2 {
    font-size: 22px;
    margin-bottom: 8px;
    color: var(--theme-heading-color);
}

/* Pagination */
.meq-pagination {
    margin-top: 48px;
    text-align: center;
}
.meq-pagination .nav-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
}
.meq-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    height: 40px;
    padding: 0 12px;
    border: 2px solid #dde4ee;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    color: var(--theme-heading-color);
    text-decoration: none;
    transition: all 0.2s;
}
.meq-pagination .page-numbers.current,
.meq-pagination .page-numbers:hover {
    background: var(--theme-primary-color);
    border-color: var(--theme-primary-color);
    color: #fff;
}

/* ---- Single ---- */
.meq-single-wrap {
    padding: 50px 0 80px;
    background: #f7f9fc;
}
.meq-breadcrumb {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 13px;
    color: var(--theme-text-color);
    margin-bottom: 36px;
}
.meq-breadcrumb a {
    color: var(--theme-primary-color);
    text-decoration: none;
}
.meq-breadcrumb a:hover {
    text-decoration: underline;
}
.meq-breadcrumb i {
    font-size: 10px;
    opacity: 0.5;
}
.meq-breadcrumb-current {
    color: var(--theme-heading-color);
    font-weight: 600;
}
.meq-single-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px;
    align-items: start;
    margin-bottom: 60px;
    background: #fff;
    border-radius: 14px;
    padding: 40px;
    box-shadow: 0 6px 32px rgba(0,0,0,0.08);
}
.meq-single-main-img img.meq-featured-img {
    width: 100%;
    border-radius: 10px;
    object-fit: cover;
    max-height: 420px;
}
.meq-single-placeholder {
    height: 320px;
    background: #eef3f8;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 80px;
    color: var(--theme-primary-color);
    opacity: 0.2;
}
.meq-single-title {
    font-size: clamp(22px, 3vw, 34px);
    font-weight: 800;
    color: var(--theme-heading-color);
    margin-bottom: 24px;
    line-height: 1.25;
}
.meq-spec-table {
    margin-bottom: 30px;
    border: 1px solid #e5eaf2;
    border-radius: 8px;
    overflow: hidden;
}
.meq-spec-row {
    display: grid;
    grid-template-columns: 150px 1fr;
    border-bottom: 1px solid #e5eaf2;
}
.meq-spec-row:last-child {
    border-bottom: none;
}
.meq-spec-label {
    background: #f7f9fc;
    padding: 12px 16px;
    font-size: 13px;
    font-weight: 700;
    color: var(--theme-heading-color);
    display: flex;
    align-items: center;
    gap: 8px;
    border-right: 1px solid #e5eaf2;
}
.meq-spec-label i {
    color: var(--theme-primary-color);
    width: 16px;
    text-align: center;
}
.meq-spec-value {
    padding: 12px 16px;
    font-size: 14px;
    color: var(--theme-text-color);
    display: flex;
    align-items: center;
}
.meq-spec-price .meq-spec-value {
    font-size: 18px;
    font-weight: 700;
    color: var(--theme-primary-color);
}
.meq-single-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}
.meq-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: var(--theme-primary-color);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: 6px;
    text-decoration: none;
    transition: background 0.25s, transform 0.2s;
}
.meq-btn-primary:hover {
    background: #0e5a9e;
    color: #fff;
    transform: translateY(-2px);
}
.meq-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: transparent;
    color: var(--theme-primary-color);
    font-size: 15px;
    font-weight: 600;
    padding: 12px 26px;
    border: 2px solid var(--theme-primary-color);
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.25s;
}
.meq-btn-outline:hover {
    background: var(--theme-primary-color);
    color: #fff;
    transform: translateY(-2px);
}
.meq-single-description {
    background: #fff;
    border-radius: 14px;
    padding: 40px;
    box-shadow: 0 4px 20px rgba(0,0,0,0.06);
    margin-bottom: 48px;
}
.meq-section-heading {
    font-size: 22px;
    font-weight: 800;
    color: var(--theme-heading-color);
    margin-bottom: 20px;
    padding-bottom: 12px;
    border-bottom: 3px solid var(--theme-primary-color);
    display: inline-block;
}
.meq-content p {
    font-size: 15px;
    line-height: 1.8;
    color: var(--theme-text-color);
}
.meq-related {
    margin-bottom: 40px;
}
.meq-back-link {
    margin-top: 10px;
}
.meq-back-link a {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--theme-primary-color);
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
}
.meq-back-link a:hover {
    text-decoration: underline;
}

/* MEQ Responsive */
@media (max-width: 767px) {
    .meq-single-inner {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 24px;
    }
    .meq-spec-row {
        grid-template-columns: 120px 1fr;
    }
    .meq-archive-hero { padding: 50px 0 40px; }
}
