/*!
Theme Name: SmilePure Child
Theme URI: https://smilepure.thememove.com
Author: ThemeMove
Author URI: https://thememove.com
Version: 1.0.3
Template: smilepure
Text Domain:  smilepure
Tags: editor-style, featured-images, microformats, post-formats, rtl-language-support, sticky-post, threaded-comments, translation-ready
*/

/* -------------------------------------------------------------
 * Dr. Bhavdeep Ahuja Custom Styles
 * ------------------------------------------------------------- */

/* Header & Mobile Logo Sizing */
.branding__logo img,
.page-mobile-menu-logo img {
    max-height: 95px;
    max-width: 280px;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: all 0.3s ease;
}

.headroom--not-top .branding__logo img,
.headroom--not-top .branding img {
    max-height: 85px;
    max-width: 250px;
}

/* Premium Preloader Styling */
.page-loading {
    background-color: #ffffff !important;
}

.page-loading .sk-image {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin: 0 auto;
    text-align: center;
}

.page-loading .sk-image img {
    max-width: 250px;
    height: auto;
    display: block;
    animation: preloaderPulse 1.6s ease-in-out infinite alternate;
}

.page-loading .sk-image::after {
    content: '';
    display: block;
    width: 32px;
    height: 32px;
    border: 3px solid rgba(13, 138, 188, 0.18);
    border-top-color: #0d8abc;
    border-radius: 50%;
    animation: preloaderSpin 0.8s linear infinite;
    margin: 8px auto 0;
}

@keyframes preloaderPulse {
    0% {
        transform: scale(0.96);
        opacity: 0.85;
    }
    100% {
        transform: scale(1.03);
        opacity: 1;
    }
}

@keyframes preloaderSpin {
    to {
        transform: rotate(360deg);
    }
}

/* Homepage: feature blocks sit flush against slider (SmilePure demo overlap) */
.home .page-main-content .wpb-content-wrapper > .vc_row.vc_row-no-padding:first-child {
    position: relative;
    z-index: 3;
}

.home .page-main-content .wpb-content-wrapper > .vc_row.vc_row-no-padding:first-child > br {
    display: none;
}

/* About Us: page-specific spacing and responsive clinic imagery. */
.page-id-101 .ahuja-about-section { padding-top: 60px; padding-bottom: 60px; }
.page-id-101 .ahuja-about-section .vc_column-inner { padding-left: 24px; padding-right: 24px; }
.page-id-101 .ahuja-about-eyebrow { color: #0d8abc; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.page-id-101 .ahuja-about-section h1 { font-size: clamp(32px, 4vw, 48px); line-height: 1.2; }
.page-id-101 .ahuja-about-section h2 { font-size: clamp(28px, 3vw, 38px); line-height: 1.25; }
.page-id-101 .ahuja-about-section h3 { font-size: 22px; }
.page-id-101 .ahuja-about-photo img { width: 100%; height: auto; border-radius: 16px; }
.page-id-101 .ahuja-about-doctor img { max-height: 420px; width: auto; object-fit: contain; }
.page-id-101 .ahuja-about-comfort { background: #f5fafb; border-radius: 16px; margin-bottom: 60px; }
.page-id-101 .ahuja-about-section .tm-button { margin-top: 12px; white-space: normal; }
@media (max-width: 767px) {
    .page-id-101 .ahuja-about-section { padding-top: 32px; padding-bottom: 32px; }
    .page-id-101 .ahuja-about-section .vc_column-inner { padding-left: 15px; padding-right: 15px; }
    .page-id-101 .ahuja-about-photo { margin-bottom: 24px; }
    .page-id-101 .ahuja-about-doctor { margin-top: 24px; }
    .page-id-101 .ahuja-about-comfort { margin-bottom: 32px; }
}

