/*
 * Preserve the Merit theme's original heading proportions after semantic SEO
 * headings were upgraded to h1 elements.
 */
h1.slider-two_heading {
    font-size: var(--font-24);
    line-height: 1.4em;
    font-weight: 700;
}

.ds-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

h1.sec-title_heading,
h1.seo-h2-size {
    font-size: var(--font-48);
    line-height: 54px;
    font-weight: 700;
}

@media only screen and (max-width: 599px) {
    h1.sec-title_heading,
    h1.seo-h2-size {
        font-size: var(--font-34);
        line-height: 44px;
    }
}

@media only screen and (max-width: 479px) {
    h1.sec-title_heading,
    h1.seo-h2-size {
        font-size: var(--font-28);
        line-height: 38px;
    }
}

/* Simple, readable layout for individual treatment pages. */
.service-content-page {
    background: #ffffff;
}

.service-content-page .service-content-wrap {
    max-width: 940px;
    margin: 0 auto;
}

.service-content-page h1.service-page-heading {
    font-size: 38px;
    line-height: 1.3em;
    font-weight: 700;
}

.service-content-page h2 {
    margin-top: 28px;
    margin-bottom: 12px;
    font-size: 26px;
    line-height: 1.35em;
}

.service-content-page p,
.service-content-page li {
    color: #333333;
    font-size: 17px;
    line-height: 1.75em;
}

.service-content-page ul {
    margin: 8px 0 20px 22px;
}

.service-content-page .service-note {
    margin-top: 25px;
    padding: 18px 20px;
    border-left: 4px solid var(--main-color);
    background: #f4f9fd;
}

/* Keep treatment headings balanced on laptop/desktop screens. */
@media only screen and (min-width: 768px) {
    .service-content-page h1.service-page-heading {
        font-size: 32px !important;
        line-height: 1.3em !important;
    }

    .service-content-page h2 {
        font-size: 22px;
    }
}

/* Doctor cards: only the first profile uses a link/click cursor. */
.doctor-card-static,
.doctor-card-static * { cursor: default; }
.doctor-photo-frame { height: 305px; overflow: hidden; background: #eef5f9; }
.doctor-photo-frame img { width: 100%; height: 100%; object-fit: cover; }
.doctor-photo-crop-tight img { transform: scale(1.13); transform-origin: center 28%; }
.doctor-placeholder { display:flex; align-items:center; justify-content:center; height:100%; color:#0a98ef; background:linear-gradient(145deg,#eef8fd,#dbeef8); font-size:80px; }
.patient-card-link { display:block; height:100%; }
.patient-card-link .card-box { display:flex; min-height:112px; height:calc(100% - 20px); align-items:center; justify-content:center; transition:transform .2s ease,box-shadow .2s ease; }
.patient-card-link:hover .card-box,
.patient-card-link:focus .card-box { transform:translateY(-3px); box-shadow:0 10px 24px rgba(0,95,155,.18); }
.patient-guide-meta { margin-bottom:22px; color:#5b6670; }
.patient-guide-warning { margin-top:28px; padding:18px 20px; border-left:4px solid #d9534f; background:#fff6f5; }

/* Website media: consistent cards and visible previous/next controls. */
.media-carousel-section .owl-carousel {
    padding: 0 48px;
}

.media-carousel-section .owl-nav {
    display: flex !important;
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    z-index: 5;
    justify-content: space-between;
    transform: translateY(-50%);
    pointer-events: none;
}

.media-carousel-section .owl-nav .owl-prev,
.media-carousel-section .owl-nav .owl-next {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    color: #ffffff !important;
    background: #079ef2 !important;
    box-shadow: 0 5px 18px rgba(0, 75, 125, .25);
    pointer-events: auto;
}

.media-carousel-section .owl-nav .disabled {
    opacity: .45;
}

.media-carousel-section .about-two_video img,
.media-carousel-section .media-direct-video,
.media-carousel-section .media-youtube-frame {
    display: block;
    width: 100%;
    height: 260px;
    border: 0;
    object-fit: cover;
    background: #071b2c;
}

.media-carousel-section .department-one_block-inner {
    overflow: hidden;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(3, 55, 90, .09);
}

.media-carousel-section .owl-dots {
    display: block !important;
    text-align: center;
    margin-top: 15px;
}

@media only screen and (max-width: 599px) {
    .media-carousel-section .owl-carousel { padding: 0 38px; }
    .media-carousel-section .about-two_video img,
    .media-carousel-section .media-direct-video,
    .media-carousel-section .media-youtube-frame { height: 220px; }
}

@media only screen and (max-width: 599px) {
    .service-content-page h1.service-page-heading {
        font-size: 30px;
        line-height: 1.35em;
    }

    .service-content-page h2 {
        font-size: 23px;
    }
}

/* Home banner: keep the clinic name visually dominant. */
.slider-two .slider-two_title {
    font-size: 48px;
    line-height: 1.12em;
    letter-spacing: .5px;
    margin-bottom: 14px;
}

h1.slider-two_heading {
    font-size: 28px;
    line-height: 1.35em;
    font-weight: 650;
}

/* All four blue banner cards remain equal in height. */
.services-three .row {
    align-items: stretch;
}

.services-three .service-block_three {
    display: flex;
}

.services-three .service-block_three-inner {
    width: 100%;
    height: 100%;
}

/* Keep doctor photographs at their original colour and brightness. */
.doctor-photo-frame .team-block_two-gradient {
    display: none !important;
}

.team-block_two .doctor-photo-frame img,
.team-block_two-inner:hover .doctor-photo-frame img {
    opacity: 1 !important;
    filter: none !important;
    -webkit-filter: none !important;
}

.team-block_two-inner:hover .doctor-photo-frame img {
    transform: none;
}

.doctor-photo-crop-tight img,
.team-block_two-inner:hover .doctor-photo-crop-tight img {
    transform: scale(1.13);
    transform-origin: center 28%;
}

/* Bulleted patient instructions. */
.service-content-page .patient-guide-list {
    margin: 8px 0 22px;
    padding-left: 0;
    list-style: none !important;
}

.service-content-page .patient-guide-list li {
    position: relative;
    display: block;
    padding-left: 25px;
    margin-bottom: 10px;
}

.service-content-page .patient-guide-list li::before {
    position: absolute;
    top: .68em;
    left: 4px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #17252f;
    content: "";
    transform: translateY(-50%);
}

/* About content: show an approximately ten-line preview, then expand in place. */
.about-expandable {
    position: relative;
    max-height: 285px;
    overflow: hidden;
    transition: max-height .45s ease;
}

.about-expandable:not(.is-expanded)::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 70px;
    content: "";
    pointer-events: none;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 88%);
}

.home-about-expandable:not(.is-expanded)::after {
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff 88%);
}

.about-expandable__content > p,
.about-expandable__content article p {
    color: #263642;
    font-size: 17px;
    line-height: 1.75em;
}

.about-expandable__content > p {
    margin-bottom: 18px;
}

.about-expandable__content h2,
.about-expandable__content h3 {
    color: #071b2c;
}

.about-expandable__content h2 {
    margin: 30px 0 15px;
    font-size: 30px;
}

.about-expandable__toggle {
    margin-top: 22px;
    border: 0;
}

.about-feature-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.about-feature-grid article {
    padding: 20px;
    border: 1px solid #dcecf5;
    border-radius: 10px;
    background: #f7fbfe;
}

.about-feature-grid article h3 {
    margin-bottom: 8px;
    font-size: 20px;
}

.clinic-values {
    margin-top: 28px;
    padding: 23px;
    border-left: 4px solid #079ef2;
    border-radius: 8px;
    background: #f2f9fd;
}

.clinic-values ul,
.home-about-points {
    margin: 12px 0 0;
    padding: 0;
    list-style: none;
}

.clinic-values li,
.home-about-points li {
    margin-bottom: 10px;
    color: #263642;
    font-size: 16px;
    line-height: 1.65em;
}

.clinic-values li span {
    display: inline-block;
    margin-right: 8px;
    color: #079ef2;
}

.clinic-values li strong {
    margin-right: 5px;
    color: #071b2c;
}

.clinic-values--compact ul {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 18px;
}

.clinic-values--compact li {
    margin: 0;
}

/* Always render a visible arrow inside carousel navigation circles. */
.media-carousel-section .owl-nav .owl-prev,
.media-carousel-section .owl-nav .owl-next,
.faq-carousel-section .owl-nav .owl-prev,
.faq-carousel-section .owl-nav .owl-next {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 25px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.media-carousel-section .owl-nav .owl-prev > span[aria-hidden],
.media-carousel-section .owl-nav .owl-next > span[aria-hidden],
.faq-carousel-section .owl-nav .owl-prev > span[aria-hidden],
.faq-carousel-section .owl-nav .owl-next > span[aria-hidden] {
    display: block;
    color: #fff !important;
    line-height: 1;
}

/* Media cards and the zoomable viewer. */
.ds-media-thumb {
    position: relative;
    display: block;
    width: 100%;
    padding: 0;
    overflow: hidden;
    border: 0;
    cursor: zoom-in;
    background: #071b2c;
}

.ds-media-thumb .ds-media-expand,
.ds-media-thumb .ds-media-play {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 50%;
    color: #fff;
    font-size: 23px;
    line-height: 1;
    background: rgba(7, 158, 242, .92);
    box-shadow: 0 5px 18px rgba(0,0,0,.28);
    transform: translate(-50%, -50%);
}

.ds-media-thumb .ds-media-expand {
    top: 18px;
    right: 18px;
    left: auto;
    width: 38px;
    height: 38px;
    font-size: 20px;
    transform: none;
}

.ds-media-viewer {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.ds-media-viewer.is-open {
    display: flex;
}

.ds-media-viewer__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 15, 25, .84);
}

.ds-media-viewer__panel {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    width: min(1180px, calc(100vw - 48px));
    max-height: calc(100vh - 48px);
    padding: 62px 18px 18px;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 20px 70px rgba(0,0,0,.35);
}

.ds-media-viewer__stage {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 240px;
    max-height: calc(100vh - 180px);
    overflow: auto;
    border-radius: 6px;
    background: #0a1c29;
}

.ds-media-viewer__stage img {
    display: block;
    flex: none;
    max-width: none;
    height: auto;
    margin: auto;
}

.ds-media-viewer__stage video,
.ds-media-viewer__stage iframe {
    display: block;
    width: 100%;
    min-height: min(68vh, 680px);
    border: 0;
    background: #000;
}

.ds-media-viewer__close {
    position: absolute;
    top: 12px;
    right: 14px;
    z-index: 3;
    width: 40px;
    height: 40px;
    border: 0;
    border-radius: 50%;
    color: #fff;
    font-size: 31px;
    line-height: 36px;
    background: #d73737;
}

.ds-media-viewer__toolbar {
    position: absolute;
    top: 15px;
    left: 18px;
    display: flex;
    gap: 8px;
}

.ds-media-viewer__toolbar button {
    min-width: 40px;
    height: 34px;
    padding: 0 10px;
    border: 1px solid #cbdde8;
    border-radius: 5px;
    color: #0a537f;
    font-size: 17px;
    font-weight: 700;
    background: #f3f9fc;
}

.ds-media-viewer.is-video .ds-media-viewer__toolbar {
    display: none;
}

.ds-media-viewer__caption {
    margin: 10px 2px 0;
    color: #334854;
    font-size: 15px;
}

body.ds-modal-open {
    overflow: hidden;
}

/* Contact map direction button, aligned immediately above the map's left edge. */
.map-one_direction-wrap {
    padding: 0 20px 12px;
}

.map-one_direction-button {
    padding: 13px 16px;
    letter-spacing: .5px;
}

.map-one_direction-button .btn-wrap span {
    min-width: 0;
    padding: 0;
    font-size: 12px;
    line-height: 18px;
}

.map-one_direction-button i {
    margin-right: 4px;
    font-size: 12px;
}

/* FAQ: original accordion styling, presented as three-question carousel pages. */
.faq-carousel-section {
    padding: 90px 0;
}

.faq-carousel-section .faq-carousel {
    padding: 0 54px;
}

.faq-carousel-section .owl-stage {
    display: flex;
    align-items: flex-start;
}

.faq-carousel-section .owl-item {
    display: block;
}

.faq-group-slide {
    width: 100%;
    padding: 4px;
}

.faq-carousel-section .accordion-box .block .acc-btn {
    min-height: 60px;
    padding-right: 22px;
}

.faq-carousel-section .accordion-box .block .acc-btn:focus-visible {
    outline: 3px solid rgba(7, 158, 242, .35);
    outline-offset: 2px;
}

.faq-carousel-section .accordion-box .block .acc-btn.active .icon-outer .icon {
    transform: rotate(180deg);
}

.faq-carousel-section .owl-nav {
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    display: flex !important;
    justify-content: space-between;
    pointer-events: none;
    transform: translateY(-50%);
}

.faq-carousel-section .owl-nav .owl-prev,
.faq-carousel-section .owl-nav .owl-next {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 50%;
    color: #fff !important;
    background: #079ef2 !important;
    box-shadow: 0 5px 18px rgba(0, 75, 125, .25);
    pointer-events: auto;
}

.faq-carousel-section .owl-nav .owl-prev span[aria-hidden="true"],
.faq-carousel-section .owl-nav .owl-next span[aria-hidden="true"] {
    display: block;
    font-size: 23px;
    font-weight: 700;
    line-height: 1;
}

.faq-carousel-section .owl-nav .disabled {
    opacity: .35;
}

.footer-phone-lines {
    display: inline-flex;
    flex-direction: column;
    gap: 1px;
    vertical-align: top;
}

.footer-whatsapp-number,
.contact-whatsapp-number {
    display: inline-flex;
    align-items: center;
    gap: 5px;
}

.footer-whatsapp-number i,
.contact-whatsapp-number i {
    color: #079ef2;
    font-size: 18px;
}

/* Live Justdial review badge row. */
.justdial-reviews-section {
    padding: 72px 0 78px;
    background: linear-gradient(180deg, #f7fbfe 0%, #fff 100%);
}

.justdial-reviews-section .sec-title {
    margin-bottom: 28px;
}

.justdial-badge-shell {
    width: min(760px, 100%);
    min-height: 170px;
    margin: 0 auto;
    padding: 30px;
    border: 1px solid #d9eaf4;
    border-radius: 18px;
    text-align: center;
    background: #fff;
    box-shadow: 0 14px 42px rgba(2, 72, 116, .11);
}

.justdial-badge-shell #JdBadgeDest {
    display: flex;
    justify-content: center;
    overflow-x: auto;
}

.justdial-fallback {
    margin: 18px 0 0;
}

.justdial-fallback a {
    color: #067ac0;
    font-size: 16px;
    font-weight: 700;
}

/* Patient Education guide cards. */
.patient-card-link {
    display: block;
    height: calc(100% - 20px);
    margin: 10px;
}

.patient-card-link .card-box {
    position: relative;
    display: flex;
    min-height: 245px;
    height: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 44px 24px 30px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.34);
    border-radius: 20px;
    text-align: center;
    color: #fff;
    background: linear-gradient(145deg, #0575c7 0%, #08a0ff 55%, #38c2ff 100%);
    box-shadow: 0 13px 32px rgba(0, 111, 184, .23);
    transition: transform .25s ease, box-shadow .25s ease;
}

.patient-card-link .card-box::after {
    position: absolute;
    right: -48px;
    bottom: -58px;
    width: 170px;
    height: 170px;
    border: 24px solid rgba(255,255,255,.1);
    border-radius: 50%;
    content: '';
}

.patient-card-link:hover .card-box,
.patient-card-link:focus-visible .card-box {
    transform: translateY(-7px);
    box-shadow: 0 19px 40px rgba(0, 93, 158, .3);
}

.patient-card-icon {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    margin-bottom: 18px;
    border: 1px solid rgba(255,255,255,.45);
    border-radius: 17px;
    font-size: 27px;
    background: rgba(255,255,255,.16);
    backdrop-filter: blur(4px);
}

.patient-card-link .card-box h2 {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #fff;
    font-size: 19px;
    line-height: 1.45;
}

.patient-card-cta {
    position: relative;
    z-index: 1;
    margin-top: 18px;
    color: rgba(255,255,255,.92);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.patient-card-cta i {
    margin-left: 5px;
    transition: transform .2s ease;
}

.patient-card-link:hover .patient-card-cta i {
    transform: translateX(4px);
}

@media (max-width: 767px) {
    .justdial-reviews-section {
        padding: 52px 0 58px;
    }

    .justdial-badge-shell {
        min-height: 145px;
        padding: 22px 14px;
        border-radius: 14px;
    }

    .patient-card-link .card-box {
        min-height: 210px;
    }
}

/* Appointment confirmation popup. */
.ds-notice-modal {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.ds-notice-modal.is-open {
    display: flex;
}

.ds-notice-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(2, 15, 25, .72);
}

.ds-notice-modal__panel {
    position: relative;
    z-index: 1;
    width: min(460px, calc(100vw - 40px));
    padding: 42px 34px 36px;
    border-radius: 12px;
    text-align: center;
    background: #fff;
    box-shadow: 0 18px 60px rgba(0,0,0,.28);
}

.ds-notice-modal__close {
    position: absolute;
    top: 10px;
    right: 12px;
    width: 36px;
    height: 36px;
    border: 0;
    color: #425766;
    font-size: 30px;
    background: transparent;
}

.ds-notice-modal__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 66px;
    height: 66px;
    margin: 0 auto 18px;
    border-radius: 50%;
    color: #fff;
    font-size: 34px;
    background: #1aa35b;
}

.ds-notice-modal__panel h2 {
    margin-bottom: 8px;
    color: #071b2c;
    font-size: 28px;
}

.ds-notice-modal__panel p {
    margin-bottom: 24px;
    color: #3b4e5a;
    font-size: 17px;
}

.ds-notice-modal__okay {
    border: 0;
}

#response-message {
    margin-bottom: 16px;
    text-align: center;
}

#response-message .form-error {
    display: inline-block;
    padding: 10px 14px;
    border-radius: 5px;
    color: #9d2020;
    background: #fff0f0;
}

/* Keep heading capitalisation consistent across every website page. */
h1,
h2,
h3,
h4,
h5,
h6 {
    text-transform: capitalize;
}

/* Move the desktop logo slightly towards the left edge. */
@media only screen and (min-width: 1200px) {
    .header-style-three .header-upper .logo-box {
        margin-left: -32px;
    }
}

/* Make Treatment and its children visually distinct in the mobile menu. */
@media only screen and (max-width: 767px) {
    .mobile-menu .navigation > li.treatment-menu {
        margin: 4px 0 8px;
        border: 1px solid rgba(7, 158, 242, .45);
        border-radius: 5px;
        overflow: hidden;
    }

    .mobile-menu .navigation > li.treatment-menu > a {
        font-weight: 700;
        background: rgba(7, 158, 242, .16);
    }

    .mobile-menu .navigation ul.treatment-submenu {
        padding: 6px 0 6px 8px;
        border-left: 4px solid #079ef2;
        background: #eaf6fe;
        counter-reset: treatment-link;
    }

    .mobile-menu .navigation ul.treatment-submenu > li {
        counter-increment: treatment-link;
    }

    .mobile-menu .navigation ul.treatment-submenu > li > a::before {
        margin-right: 7px;
        color: #079ef2;
        font-weight: 700;
        content: counter(treatment-link) ".";
    }

    .slider-two .slider-two_title {
        font-size: 30px;
    }

    h1.slider-two_heading {
        font-size: 21px;
        line-height: 1.4em;
    }

    .about-feature-grid {
        grid-template-columns: 1fr;
    }

    .clinic-values--compact ul {
        display: block;
    }

    .clinic-values--compact li {
        margin-bottom: 8px;
    }

    .faq-carousel-section .faq-carousel {
        padding: 0 38px;
    }

    .faq-carousel-section .accordion-box .block .acc-btn {
        padding: 13px 12px 13px 64px;
        font-size: 16px;
        line-height: 25px;
    }

    .faq-carousel-section .accordion-box .block .icon-outer .icon {
        width: 44px;
        height: 44px;
        line-height: 44px;
    }

    .faq-carousel-section .accordion-box .block .content {
        padding: 0 15px 15px 64px;
    }

    .ds-media-viewer {
        padding: 10px;
    }

    .ds-media-viewer__panel {
        width: calc(100vw - 20px);
        max-height: calc(100vh - 20px);
        padding: 60px 10px 10px;
    }

    .ds-media-viewer__stage {
        max-height: calc(100vh - 155px);
    }

    .ds-media-viewer__stage video,
    .ds-media-viewer__stage iframe {
        min-height: 52vh;
    }
}

/* ================================================================
   Dental Samagra final requested layout refinements — 2026-09-19
   ================================================================ */

/* Match the descriptor to the exact dominant blue used by the tooth mark. */
.ds-brand-tagline {
    color: #008ccc;
}

/* Final client cascade guard — keep these at the physical end of this file. */
.patient-feedback-heading {
    margin-bottom: 36px;
    color: #008ccc;
    font-size: 44px;
}

.review-platform-heading {
    font-size: 40px;
}

@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper > .auto-container {
        width: 100%;
        max-width: none;
        padding-right: clamp(30px, 3.2vw, 52px);
        padding-left: clamp(30px, 3.2vw, 52px);
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 12px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 252px;
        flex: 0 0 252px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 230px;
        max-width: 230px;
    }

    .header-style-three .header-upper .right-box {
        flex: 0 1 auto;
        align-self: center;
        margin-left: auto;
        padding-top: 0;
    }

    .header-style-three .header-upper .main-menu .navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        white-space: nowrap;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 16px;
        letter-spacing: -.035em;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 18px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 4px;
    }

    .header-style-three .header-upper .main-menu .navigation > li:last-child > a {
        padding-right: 0;
    }

    .header-style-three .ds-brand-tagline {
        color: #008ccc;
        font-size: 9.5px;
        letter-spacing: .015em;
    }
}

@media only screen and (max-width: 767px) {
    .patient-feedback-heading {
        margin-bottom: 30px;
        font-size: 32px;
    }

    .review-platform-heading {
        font-size: 30px;
    }
}

.services-four .service-block_four-inner {
    height: 120px;
    min-height: 120px;
}

.services-four .service-block_four-title {
    font-size: 18px;
    line-height: 1.35;
}

@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper .ds-brand-box {
        margin-left: 0 !important;
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1199px) {
    .header-style-three .header-upper > .auto-container {
        padding-right: 24px;
        padding-left: 24px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 230px;
        flex-basis: 230px;
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        gap: 8px;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        font-size: 14px;
    }

    .header-style-three .sticky-header .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 12px;
    }

    .header-style-three .sticky-header .main-menu .navigation > li.dropdown > a {
        padding-right: 17px;
    }
}

/* ================================================================
   Dental Samagra final correction set — 2026-09-20
   Kept at the physical end of the cascade so the desktop-only and
   phone-only adjustments remain isolated from the approved layouts.
   ================================================================ */

/* Slides 1, 3 and 5 use compositions prepared to the exact dimensions of
   slides 2 and 4, preventing the supplied banner from being over-cropped. */
body.home-light-green .slider-two--glass-banner .slider-two_slide--new-banner {
    background-image: url(../images/main-slider/banner-desktop.webp) !important;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* Home welcome area. */
.health-one_discover {
    margin-top: 28px;
}

.health-one_discover .theme-btn {
    border-radius: 11px;
}

body.home-light-green .health-one_image-two,
body.home-light-green .health-one_image-two img {
    border-radius: 22px !important;
}

/* A single premium identity plaque beneath the centre treatment portrait. */
.treatment-doctor-nameplate {
    box-sizing: border-box;
    width: min(100%, 340px);
    padding: 15px 23px 14px;
    border: 1px solid #70b5d5;
    border-radius: 17px;
    background: linear-gradient(145deg, #ffffff 0%, #edf8fd 52%, #cceaf7 100%);
    box-shadow: inset 0 0 0 3px rgba(255,255,255,.68), 0 15px 31px rgba(22, 81, 109, .16);
    filter: none;
}

.treatment-doctor-nameplate__name {
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(198, 153, 42, .72);
    color: #123e60;
    font-family: Georgia, 'Times New Roman', serif;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.12;
    text-align: center;
}

.treatment-doctor-nameplate__credentials,
.treatment-doctor-nameplate__role {
    color: #244d62;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.3;
}

.treatment-doctor-nameplate__credentials {
    margin-top: 8px;
    text-align: right;
}

.treatment-doctor-nameplate__role {
    width: auto;
    margin: 5px 0 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    text-align: center;
    letter-spacing: .02em;
    background: transparent;
}

/* Doctor identity hierarchy and justified long-form profile. */
.doctor-profile-identity .service-page-heading {
    margin-bottom: 0;
}

.doctor-profile-credentials {
    display: block;
    width: 100%;
    margin-top: 8px;
    text-align: right;
}

.doctor-profile-credentials strong {
    font-size: 16px;
    line-height: 1.35;
}

.doctor-profile-roles {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 3px;
    margin-top: 13px;
    color: #173f53;
    font-size: 19px;
    font-weight: 750;
    line-height: 1.4;
    text-align: left;
}

.doctor-profile-narrative p {
    text-align: justify;
    text-justify: inter-word;
}

/* Patient Education uses the same light-blue palette as the four home cards. */
.patient-card-link .card-box {
    border-color: rgba(255,255,255,.64);
    color: #1d4d63;
    background: linear-gradient(145deg, #e1f3fb 0%, #b6dff0 54%, #7cc4df 100%);
    box-shadow: 0 14px 34px rgba(39, 95, 120, .15);
}

.patient-card-link .card-box h2,
.patient-card-cta {
    color: #1d4d63;
}

.patient-card-icon {
    border-color: rgba(255,255,255,.72);
    color: #1d4d63;
    background: rgba(255,255,255,.32);
}

/* Rounded Justdial artwork on every viewport; size changes stay desktop-only. */
.justdial-badge-shell,
.justdial-badge-shell #JdBadgeDest,
.justdial-badge-shell #JdBadgeDest > *,
.justdial-badge-shell #JdBadgeDest iframe,
.justdial-badge-shell #JdBadgeDest img,
.justdial-badge-shell #JdBadgeDest table {
    overflow: hidden;
    border-radius: 18px !important;
}

/* Social destinations are one clean, colourful row. */
.footer-social-links {
    display: flex;
    width: 184px;
    max-width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.footer-social-links a {
    display: inline-flex;
    width: 52px;
    min-width: 52px;
    height: 52px;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid rgba(255,255,255,.78);
    border-radius: 50%;
    color: #fff;
    box-shadow: 0 9px 22px rgba(30, 92, 121, .16);
}

.footer-social-links a.footer-social-link--facebook {
    background: #1877f2;
}

.footer-social-links a.footer-social-link--instagram {
    background: linear-gradient(145deg, #833ab4 0%, #e1306c 55%, #f77737 100%);
}

.footer-social-links a.footer-social-link--youtube {
    background: #ff0000;
}

.footer-social-links a:hover,
.footer-social-links a:focus-visible {
    color: #fff;
    filter: brightness(1.08);
    transform: translateY(-3px);
}

.footer-social-links i {
    display: inline-block;
    width: auto;
    height: auto;
    border-radius: 0;
    color: inherit;
    font-size: 24px;
    line-height: 1;
    background: transparent;
}

@media only screen and (min-width: 1024px) {
    /* Twice the former outer clearance at standard laptop and desktop sizes. */
    .header-style-three .header-upper > .auto-container {
        width: 100%;
        max-width: none;
        padding-right: clamp(72px, 6.4vw, 128px);
        padding-left: clamp(72px, 6.4vw, 128px);
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        justify-content: space-between !important;
        gap: 12px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 252px;
        flex: 0 0 252px;
        margin-left: 0 !important;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 230px;
        max-width: 230px;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 7px;
        padding-left: 7px;
        font-size: 16px;
        letter-spacing: -.02em;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 22px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 7px;
    }

    .header-style-three .header-upper .main-menu .navigation > li:last-child > a {
        padding-right: 0;
    }

    /* A little more height adds deliberate breathing room above the metrics
       and below the appointment action without collapsing the middle gap. */
    body.home-light-green .slider-two_glass-panel--metrics {
        height: 158px;
        min-height: 158px;
        justify-content: space-between;
        padding: 18px 24px 20px;
    }

    body.home-light-green .slider-two_glass-panel--metrics .slider-two_buttons {
        margin-top: 14px;
    }

    /* Clear separation between every service icon and its heading. */
    .services-three .service-block_three-icon-box {
        min-height: 52px;
        padding-left: 76px;
    }

    /* Enlarge the live Justdial artwork while keeping it inside the card. */
    .justdial-badge-shell {
        width: min(1160px, 100%);
        min-height: 340px;
        padding: 38px 46px;
    }

    .justdial-badge-shell #JdBadgeDest {
        min-height: 225px;
        align-items: center;
    }

    .justdial-badge-shell #JdBadgeDest > *,
    .justdial-badge-shell #JdBadgeDest iframe,
    .justdial-badge-shell #JdBadgeDest table {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 225px !important;
    }

    .justdial-badge-shell #JdBadgeDest img {
        width: min(100%, 980px) !important;
        max-width: 100% !important;
        max-height: 245px !important;
        height: auto !important;
        object-fit: contain;
    }

    /* Four fixed content tracks separated by five mathematically equal gaps. */
    .footer-equal-grid {
        display: grid;
        width: 100%;
        grid-template-columns: 1fr 160px 1fr 200px 1fr 280px 1fr 190px 1fr;
        column-gap: 0;
        margin-right: 0;
        margin-left: 0;
    }

    .footer-equal-grid > .main-footer_column:nth-child(1) { grid-column: 2; }
    .footer-equal-grid > .main-footer_column:nth-child(2) { grid-column: 4; }
    .footer-equal-grid > .main-footer_column:nth-child(3) { grid-column: 6; }
    .footer-equal-grid > .main-footer_column:nth-child(4) { grid-column: 8; }

    .footer-equal-grid > .main-footer_column {
        width: auto;
        max-width: none;
        padding-right: 0;
        padding-left: 0;
    }

    .footer-equal-grid .main-footer_title {
        min-height: 43px;
        margin-top: 0;
    }

    .footer-iso-column,
    .footer-iso-badge {
        align-items: center;
        justify-content: center;
    }

    .footer-social-links {
        margin-top: 2px;
    }
}

/* The 1024–1199px range needs the same doubled 48px edge gap while keeping
   all ten navigation destinations on one line. */
@media only screen and (min-width: 1024px) and (max-width: 1199px) {
    .header-style-three .header-upper > .auto-container {
        padding-right: 48px;
        padding-left: 48px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 205px;
        flex-basis: 205px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 205px;
        max-width: 205px;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 12.5px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 17px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 4px;
    }

    .header-style-three .sticky-header .main-menu .navigation > li > a {
        font-size: 10.5px;
    }

    .header-style-three .ds-brand-tagline {
        font-size: 8.5px;
    }

    .footer-equal-grid {
        grid-template-columns: 1fr 140px 1fr 178px 1fr 250px 1fr 170px 1fr;
    }
}

@media only screen and (max-width: 767px) {
    body.home-light-green .slider-two--glass-banner .slider-two_slide--new-banner {
        background-image: url(../images/main-slider/banner-mobile.webp) !important;
        background-position: center center;
    }

    /* Match the exact rendered width of the Single-Sitting Root Canal card;
       height and vertical spacing remain unchanged. */
    body.home-light-green .slider-two_glass-panel--metrics {
        width: 100%;
    }

    .treatment-doctor-nameplate__name {
        font-size: 22px;
    }

    .treatment-doctor-nameplate__credentials,
    .treatment-doctor-nameplate__role {
        font-size: 14px;
    }

    .doctor-profile-roles {
        font-size: 17px;
    }

    /* Shorter left/right borders keep contact cards clear of phone edges. */
    .contact-info-block_inner {
        width: calc(100% - 24px);
        margin-right: auto;
        margin-left: auto;
        border-radius: 15px;
    }

    .footer-social-links {
        margin-right: auto;
        margin-left: auto;
    }

    /* Keep the full credit above the floating Need Help and scroll controls. */
    .main-footer_bottom {
        padding-bottom: 105px;
    }

    .main-footer_bottom .footer_copyright {
        width: 100%;
        padding-right: 0;
        text-align: center;
    }
}

/* ================================================================
   Dental Samagra client correction pass — 2026-09-20
   These rules are last in the cascade so desktop-only requests cannot
   accidentally alter the approved phone layout.
   ================================================================ */

/* Clean profile link beneath Dr. Awadhesh Tiwari's expertise. */
.doctor-profile-link {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 10px;
    color: #008ccc;
    font-size: 17px;
    font-weight: 800;
}

.doctor-profile-link:hover,
.doctor-profile-link:focus-visible {
    color: #235f7a;
}

/* Equal treatment cards, reference artwork and mirrored lower corners. */
.services-four .service-block_four-inner {
    display: flex;
    min-height: 116px;
    align-items: center;
    padding-top: 18px;
    padding-bottom: 18px;
}

.services-four .service-block_four-title {
    width: 100%;
    line-height: 1.35;
}

.services-four .service-block_four-icon,
body.home-light-green .services-four .service-block_four-icon {
    top: 50%;
    width: 80px;
    height: 80px;
    overflow: visible;
    border-radius: 0;
    line-height: 1;
    background: transparent;
    box-shadow: none;
    transform: translateY(-50%);
}

.services-four .service-block_four-icon img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.services-four .service-block_four.style-two .service-block_four-inner {
    padding-right: 120px;
    border-radius: 0 0 0 25px;
}

.services-four .service-block_four.style-two .service-block_four-icon {
    width: 100px;
    height: 80px;
}

.services-four .center-column {
    flex-direction: column;
}

.treatment-doctor-nameplate {
    position: relative;
    z-index: 2;
    width: min(100%, 340px);
    margin: 15px auto 0;
    filter: drop-shadow(0 12px 20px rgba(18, 75, 105, .14));
}

.treatment-doctor-nameplate img {
    display: block;
    width: 100%;
    height: auto;
}

.treatment-doctor-nameplate__role {
    width: max-content;
    margin: -3px 16px 0 auto;
    padding: 7px 17px 8px;
    border: 1px solid rgba(72, 137, 173, .42);
    border-top: 0;
    border-radius: 0 0 13px 13px;
    color: #173f53;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: .025em;
    background: linear-gradient(180deg, #edf8fd 0%, #cce8f5 100%);
}

/* Patient-review hierarchy and balanced platform headings. */
.patient-feedback-heading {
    margin-bottom: 36px;
    color: #008ccc;
    font-size: 44px;
}

.review-platform-heading {
    font-size: 40px;
}

.justdial-badge-shell,
.justdial-badge-shell #JdBadgeDest,
.justdial-badge-shell #JdBadgeDest > *,
.justdial-badge-shell #JdBadgeDest iframe,
.justdial-badge-shell #JdBadgeDest img,
.justdial-badge-shell #JdBadgeDest table {
    overflow: hidden;
    border-radius: 18px;
}

/* Professional-profile page. */
.doctor-professional-profile {
    padding: 30px clamp(22px, 4vw, 48px);
    border: 1px solid #d9ebf4;
    border-radius: 24px;
    background: linear-gradient(150deg, #ffffff 0%, #f7fcff 100%);
    box-shadow: 0 20px 48px rgba(24, 87, 115, .10);
}

.doctor-profile-identity {
    margin-bottom: 26px;
    padding-bottom: 22px;
    border-bottom: 1px solid #dcecf4;
}

.doctor-profile-credentials {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 10px 18px;
    margin-top: 9px;
}

.doctor-profile-credentials strong {
    color: #235f7a;
    font-size: 19px;
}

.doctor-profile-credentials span {
    color: #607985;
    font-size: 16px;
    font-weight: 700;
}

.doctor-profile-speciality {
    margin-top: 11px;
    color: #173f53 !important;
    font-weight: 700;
}

.doctor-professional-profile h2 {
    color: #008ccc;
}

.doctor-professional-profile h3 {
    margin: 30px 0 12px;
    color: #235f7a;
    font-size: 23px;
}

.doctor-clinical-focus {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 12px 0 30px !important;
    padding: 0 !important;
    list-style: none;
}

.doctor-clinical-focus li {
    margin: 0;
    padding: 15px;
    border: 1px solid #d9ebf4;
    border-radius: 13px;
    background: #f2f9fd;
}

/* Four equal footer areas and premium social destinations. */
.footer-social-intro {
    margin: 0 0 16px;
    color: #536d79;
    font-size: 15px;
    line-height: 1.7;
}

.footer-social-links {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.footer-social-links a {
    display: flex;
    min-height: 46px;
    align-items: center;
    gap: 11px;
    padding: 9px 13px;
    border: 1px solid #d3e9f3;
    border-radius: 13px;
    color: #235f7a;
    font-weight: 750;
    background: rgba(255,255,255,.82);
    box-shadow: 0 7px 20px rgba(30, 92, 121, .08);
    transition: transform .2s ease, background-color .2s ease, color .2s ease;
}

.footer-social-links a:hover,
.footer-social-links a:focus-visible {
    color: #fff;
    background: #5a9fbd;
    transform: translateY(-2px);
}

.footer-social-links i {
    display: inline-flex;
    width: 28px;
    height: 28px;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    color: #fff;
    background: linear-gradient(145deg, #7dc7e5, #3c7f9d);
}

.main-footer_bottom .footer_copyright a {
    color: #235f7a;
    font-weight: 800;
}

.main-footer_bottom .footer_copyright a:hover,
.main-footer_bottom .footer_copyright a:focus-visible {
    text-decoration: underline;
}

@media only screen and (min-width: 1024px) {
    /* Initial desktop header: the same logo scale as the sticky header,
       balanced edge spacing and navigation exactly 2px above its 14px base. */
    .header-style-three .header-upper > .auto-container {
        width: 100%;
        max-width: none;
        padding-right: clamp(30px, 3.2vw, 52px);
        padding-left: clamp(30px, 3.2vw, 52px);
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 12px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 252px;
        flex: 0 0 252px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 230px;
        max-width: 230px;
    }

    .header-style-three .header-upper .right-box {
        flex: 0 1 auto;
        align-self: center;
        margin-left: auto;
        padding-top: 0;
    }

    .header-style-three .header-upper .main-menu .navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        white-space: nowrap;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 16px;
        letter-spacing: -.035em;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 18px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 4px;
    }

    .header-style-three .header-upper .main-menu .navigation > li:last-child > a {
        padding-right: 0;
    }

    .header-style-three .ds-brand-tagline {
        color: #008ccc;
        font-size: 9.5px;
        letter-spacing: .015em;
    }

    /* Laptop/desktop trust panel: 3.25× its former 285px width and 20%
       shorter than the former 166px minimum height. */
    body.home-light-green .slider-two_glass-panel--metrics {
        width: min(926px, calc(100% - 60px));
        height: 133px;
        min-height: 133px;
        padding: 13px 24px 14px;
    }

    body.home-light-green .ds-hero-metrics {
        gap: 0;
    }

    body.home-light-green .ds-hero-metric {
        flex-direction: row;
        gap: 10px;
        padding: 3px 20px;
    }

    body.home-light-green .ds-hero-metric__copy strong {
        font-size: 20px;
        letter-spacing: -.02em;
    }

    body.home-light-green .ds-hero-metric__copy small {
        font-size: 15px;
    }

    body.home-light-green .slider-two_glass-panel--metrics .slider-two_buttons {
        margin-top: 10px;
    }

    body.home-light-green .slider-two_glass-panel--metrics .slider-two_buttons .theme-btn {
        min-width: 195px;
        padding-top: 13px;
        padding-bottom: 13px;
        border-radius: 10px;
        font-size: 16px;
    }

    /* Restore the approved overlapping photo composition and blue diamonds. */
    body.home-light-green .health-one_images-inner {
        padding: 22px 18px 18px 0;
    }

    body.home-light-green .health-one_image {
        width: 88%;
    }

    body.home-light-green .health-one_image-two {
        width: 78%;
        margin-top: -58px;
        margin-left: auto;
    }

    body.home-light-green .health-one_color {
        right: 4px;
        top: 90px;
    }

    body.home-light-green .health-one_color-two {
        left: 62px;
        bottom: 52px;
    }

    /* Desktop-only Justdial enlargement; phone rendering remains untouched. */
    .justdial-badge-shell {
        width: min(1120px, 100%);
        min-height: 310px;
        padding: 36px 44px;
    }

    .justdial-badge-shell #JdBadgeDest {
        min-height: 205px;
        align-items: center;
    }

    .justdial-badge-shell #JdBadgeDest > *,
    .justdial-badge-shell #JdBadgeDest iframe,
    .justdial-badge-shell #JdBadgeDest table {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 205px !important;
    }

    .justdial-badge-shell #JdBadgeDest img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    .justdial-fallback a {
        font-size: 20px;
    }

    /* Equal footer columns, aligned headings and 35% larger detail text. */
    .footer-equal-grid {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        column-gap: clamp(26px, 3vw, 48px);
    }

    .footer-equal-grid > .main-footer_column {
        width: auto;
        max-width: none;
        padding-right: 0;
        padding-left: 0;
    }

    .footer-equal-grid .footer-widget {
        height: 100%;
        padding-top: 0;
    }

    .footer-equal-grid .main-footer_title {
        min-height: 43px;
        margin-top: 0;
        margin-bottom: 18px;
    }

    .footer-iso-column,
    .footer-iso-badge {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .footer-iso-badge {
        min-height: 100%;
    }

    .footer-equal-grid .main-footer_list li,
    .footer-equal-grid .main-footer_list li a,
    .footer-equal-grid .main-footer_contact-list li,
    .footer-equal-grid .main-footer_contact-list li a {
        font-size: 20px;
        line-height: 1.5;
    }

    .footer-social-intro,
    .footer-social-links a {
        font-size: 18px;
    }
}

@media only screen and (max-width: 767px) {
    .patient-feedback-heading {
        margin-bottom: 30px;
        font-size: 32px;
    }

    .review-platform-heading {
        font-size: 30px;
    }

    .doctor-clinical-focus {
        grid-template-columns: 1fr;
    }

    .doctor-professional-profile {
        padding: 24px 18px;
        border-radius: 18px;
    }
}

/* The About page now shows its complete content without a reveal control. */
.about-full-content,
.about-full-content .about-expandable__content {
    max-height: none;
    overflow: visible;
}

/* Rounded, fully clickable hero service cards. */
.services-three .service-block_three-link {
    display: block;
    width: 100%;
    height: 100%;
    color: inherit;
}

.services-three .service-block_three-inner {
    overflow: hidden;
    border-radius: 18px;
}

.services-three .service-block_three-heading {
    color: #1d4d63;
    font-size: 22px;
    line-height: 1.28;
    font-weight: 700;
}

.services-three .service-block_three-icon--image {
    top: 0;
    width: 52px;
    height: 52px;
    overflow: hidden;
    border-radius: 12px;
    font-size: 0;
    box-shadow: 0 7px 16px rgba(25, 91, 119, .16);
}

.services-three .service-block_three-icon--image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Keep Font Awesome treatment symbols in their own icon font. */
.service-block_three-icon.fa-solid,
.service-block_four-icon.fa-solid {
    font-family: 'Font Awesome 6 Free';
    font-weight: 900;
}

/* Graceful centre portrait between the two treatment lists. */
.services-four .center-column {
    display: flex;
    align-items: center;
    justify-content: center;
}

.services-four .health-four_doctor-image {
    width: min(100%, 340px);
    margin: 0 auto;
    padding: 18px 12px 0;
    overflow: hidden;
    border: 1px solid rgba(159, 214, 235, .72);
    border-radius: 26px;
    background: linear-gradient(150deg, #ffffff 0%, #eef9fd 58%, #d9eef7 100%);
    box-shadow: 0 22px 55px rgba(26, 91, 119, .16);
}

.services-four .health-four_doctor-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 18px 18px 0 0;
}

/* Reduce excess gaps while leaving each media slider comfortably separated. */
.media-carousel-section {
    padding-top: 64px;
    padding-bottom: 48px;
}

.media-carousel-section .sec-title {
    margin-bottom: 30px;
}

/* Clip the externally rendered Justdial review artwork to a soft curve. */
.justdial-badge-shell,
.justdial-badge-shell #JdBadgeDest,
.justdial-badge-shell #JdBadgeDest > *,
.justdial-badge-shell #JdBadgeDest iframe,
.justdial-badge-shell #JdBadgeDest img,
.justdial-badge-shell #JdBadgeDest table {
    border-radius: 14px;
}

.justdial-badge-shell #JdBadgeDest {
    overflow: hidden;
}

/* Desktop/laptop: logo and the complete navigation share one row. */
@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        align-items: center !important;
        flex-wrap: nowrap !important;
        gap: 12px;
    }

    .header-style-three .header-upper .ds-brand-box {
        flex: 0 0 315px;
        width: 315px;
        padding-top: 12px;
        padding-bottom: 12px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 315px;
        max-width: 315px;
    }

    .header-style-three .header-upper .right-box {
        min-width: 0;
        flex: 1 1 auto;
        align-self: center;
        padding-top: 0;
    }

    .header-style-three .header-upper .nav-outer,
    .header-style-three .header-upper .main-menu,
    .header-style-three .header-upper .navbar-collapse {
        width: 100%;
    }

    .header-style-three .header-upper .main-menu .navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        white-space: nowrap;
    }

    .header-style-three .header-upper .main-menu .navigation > li {
        flex: 0 0 auto;
        margin-right: 0;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 5px;
        padding-left: 5px;
        font-size: 11.5px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 20px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 6px;
    }

    .header-style-three .ds-brand-tagline {
        font-size: 12px;
        letter-spacing: .035em;
    }
}

.ds-brand-tagline {
    color: #008ccc;
}

@media only screen and (max-width: 767px) {
    .media-carousel-section {
        padding-top: 46px;
        padding-bottom: 36px;
    }

    .media-carousel-section .sec-title {
        margin-bottom: 24px;
    }

    .services-four .health-four_doctor-image {
        margin-top: 12px;
        margin-bottom: 42px;
    }
}

/* ================================================================
   Dental Samagra final branding, typography and live review module
   ================================================================ */

:root {
    --font-family-Inter: 'Manrope', sans-serif;
    --font-family-Outfit: 'Manrope', sans-serif;
    --font-family-Jost: 'Manrope', sans-serif;
    --font-family-Josefin: 'Manrope', sans-serif;
}

html,
body,
button,
input,
select,
textarea,
a,
p,
li,
label,
table,
blockquote,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Manrope', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.sec-title_heading,
.main-footer_title {
    font-family: 'Manrope', sans-serif !important;
    letter-spacing: -.02em;
}

/* Header logo and centre descriptor. */
.header-style-three .header-upper .ds-brand-box {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    padding-top: 13px;
    padding-bottom: 13px;
}

.header-style-three .header-upper .ds-brand-box .logo img {
    display: block;
    width: 269px;
    max-width: 100%;
    height: auto;
}

.ds-brand-tagline {
    margin-top: 1px;
    color: #235f7a;
    font-family: 'Manrope', sans-serif;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: .055em;
    white-space: nowrap;
}

.ds-sticky-logo {
    width: 230px;
    height: auto;
}

/* Google review counter + continuously moving left-to-right cards. */
.google-reviews-section {
    position: relative;
    overflow: hidden;
    padding: 74px 0 70px;
    background: linear-gradient(180deg, #ffffff 0%, #f3faff 100%);
}

.google-reviews-heading {
    margin-bottom: 24px;
}

.google-review-summary {
    display: flex;
    width: fit-content;
    max-width: 100%;
    align-items: center;
    gap: 14px;
    margin: 0 auto 28px;
    padding: 12px 18px;
    border: 1px solid #d7eaf4;
    border-radius: 18px;
    background: rgba(255,255,255,.96);
    box-shadow: 0 12px 34px rgba(30, 92, 121, .10);
}

.google-review-summary__brand {
    display: inline-flex;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    color: #4285f4;
    font-size: 27px;
    font-weight: 800;
    background: #fff;
    box-shadow: 0 2px 10px rgba(33, 76, 105, .12);
}

.google-review-summary__text {
    display: flex;
    flex-direction: column;
    color: #173e52;
    line-height: 1.25;
}

.google-review-summary__text strong {
    font-size: 17px;
    font-weight: 800;
}

.google-review-summary__rating {
    margin-top: 2px;
    color: #526c79;
    font-size: 14px;
    font-weight: 700;
}

.google-review-stars,
.google-review-card__stars {
    color: #f4b400;
    letter-spacing: 1px;
}

.google-review-live-badge {
    padding: 4px 8px;
    border-radius: 999px;
    color: #18794e;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    background: #e8f8ef;
}

.google-reviews-viewport {
    position: relative;
    overflow: hidden;
    padding: 8px 0 12px;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 5%, #000 95%, transparent);
}

.google-reviews-track {
    display: flex;
    width: max-content;
    gap: 18px;
    will-change: transform;
    animation: ds-google-reviews-ltr 46s linear infinite;
}

.google-reviews-track:hover,
.google-reviews-track:focus-within {
    animation-play-state: paused;
}

.google-reviews-track.is-single {
    animation: none;
}

.google-review-card {
    display: flex;
    width: 340px;
    min-height: 188px;
    flex: 0 0 340px;
    flex-direction: column;
    padding: 22px 22px 18px;
    border: 1px solid #d9ebf4;
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 11px 30px rgba(20, 84, 112, .09);
}

.google-review-card__top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 13px;
}

.google-review-card__top strong {
    color: #173f53;
    font-size: 16px;
    font-weight: 800;
}

.google-review-card__stars {
    flex: 0 0 auto;
    font-size: 13px;
    white-space: nowrap;
}

.google-review-card p {
    margin: 0;
    color: #536d79;
    font-size: 15px;
    line-height: 1.65;
}

.google-review-card__meta {
    margin-top: auto;
    padding-top: 15px;
    color: #78909b;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.google-reviews-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    margin-top: 22px;
    color: #78909b;
    font-size: 12px;
}

.google-reviews-footer a {
    color: #3b7894;
    font-weight: 800;
}

@keyframes ds-google-reviews-ltr {
    from { transform: translateX(calc(-50% - 9px)); }
    to { transform: translateX(0); }
}

/* Uploaded ISO badge positioned at the footer's lower-left area. */
.footer-iso-badge {
    display: flex;
    min-height: 205px;
    align-items: flex-end;
    justify-content: flex-start;
}

.footer-iso-badge img {
    display: block;
    width: 150px;
    max-width: 100%;
    height: auto;
}

@media only screen and (max-width: 767px) {
    .header-style-three .header-upper .inner-container > .d-flex {
        position: relative;
        align-items: flex-start !important;
        flex-wrap: nowrap !important;
    }

    .header-style-three .header-upper .ds-brand-box {
        position: relative;
        width: auto;
        max-width: calc(100% - 48px);
        padding-top: 10px;
        padding-bottom: 32px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: min(232px, 72vw);
    }

    .ds-brand-tagline {
        position: absolute;
        top: calc(100% - 28px);
        left: 0;
        width: calc(100vw - 30px);
        margin: 0;
        font-size: clamp(9px, 2.95vw, 13px);
        line-height: 1.2;
        letter-spacing: .035em;
        white-space: nowrap;
    }

    .header-style-three .header-upper .right-box {
        flex: 0 0 42px;
        justify-content: flex-end;
        padding-top: 18px;
    }

    .google-reviews-section {
        padding: 55px 0 52px;
    }

    .google-review-summary {
        gap: 10px;
        margin-bottom: 20px;
        padding: 10px 13px;
        border-radius: 15px;
    }

    .google-review-summary__brand {
        width: 36px;
        height: 36px;
        flex-basis: 36px;
        font-size: 23px;
    }

    .google-review-summary__text strong {
        font-size: 15px;
    }

    .google-review-card {
        width: min(82vw, 310px);
        min-height: 178px;
        flex-basis: min(82vw, 310px);
        padding: 19px 18px 16px;
    }

    .google-reviews-track {
        gap: 12px;
        animation-duration: 38s;
    }

    .google-reviews-footer {
        flex-direction: column;
        gap: 5px;
        margin-top: 15px;
        text-align: center;
    }

    .footer-iso-badge {
        min-height: 0;
        justify-content: flex-start;
        margin-bottom: 28px;
    }

    .footer-iso-badge img {
        width: 132px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .google-reviews-track {
        animation: none;
    }
}

/* Google Places review attribution and author details. */
.google-review-card__author {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 10px;
}

.google-review-card__avatar {
    display: inline-flex;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 50%;
    background: #eef7fb;
    color: #326d88;
    font-size: 14px;
    font-weight: 800;
}

.google-review-card__avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.google-review-card__author-name,
.google-review-card__author-name:visited {
    overflow: hidden;
    color: #173f53;
    font-size: 15px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.google-review-card__author-name:hover {
    color: #2d7899;
}

.google-review-card__bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 15px;
}

.google-review-card__bottom .google-review-card__meta {
    margin: 0;
    padding: 0;
}

.google-review-card__source,
.google-review-card__source:visited {
    flex: 0 0 auto;
    color: #3b7894;
    font-size: 11px;
    font-weight: 800;
    white-space: nowrap;
}

.google-review-card__source:hover {
    text-decoration: underline;
}

.google-reviews-footer__status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 5px;
}

.google-maps-attribution {
    color: #536d79;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: normal;
    line-height: 1.2;
    text-transform: none;
}

@media only screen and (max-width: 767px) {
    .google-review-card__bottom {
        align-items: flex-start;
        flex-direction: column;
        gap: 7px;
    }

    .google-reviews-footer__status {
        display: flex;
    }
}

/* ================================================================
   Dental Samagra refinement pass — 2026-09-18
   ================================================================ */

/* Slightly larger centre descriptor with clearer spacing below the logo. */
.ds-brand-tagline {
    font-size: 13px;
}

/* Desktop/laptop: align the navigation with the visual centre of the logo,
   not with the combined logo + descriptor stack. */
@media only screen and (min-width: 992px) {
    .header-style-three .header-upper .inner-container > .d-flex {
        align-items: flex-start !important;
    }

    .header-style-three .header-upper .right-box {
        align-self: flex-start;
        padding-top: 17px;
    }
}

/* Review-section hierarchy: Patient Feedback is the main heading;
   Google and Justdial use an identical heading size, 2px smaller. */
.patient-feedback-heading {
    margin-bottom: 4px;
    font-size: 42px;
    line-height: 1.18;
}

.review-platform-heading {
    margin: 0;
    font-size: 40px;
    line-height: 1.2;
}

.justdial-reviews-heading {
    margin-bottom: 22px;
}

@media only screen and (max-width: 767px) {
    .header-style-three .header-upper .ds-brand-box {
        padding-bottom: 38px;
    }

    .ds-brand-tagline {
        top: calc(100% - 23px);
        font-size: clamp(11px, calc(2.95vw + 2px), 15px);
        line-height: 1.2;
    }

    .patient-feedback-heading {
        margin-bottom: 3px;
        font-size: 30px;
        line-height: 1.25;
    }

    .review-platform-heading {
        font-size: 28px;
        line-height: 1.3;
    }

    /* Keep the Google review carousel fully visible on phones. */
    .google-reviews-section,
    .google-reviews-section .auto-container,
    .google-reviews-viewport,
    .google-reviews-track,
    .google-review-card {
        visibility: visible !important;
        opacity: 1 !important;
    }

    .google-reviews-viewport {
        display: block !important;
        min-height: 205px;
        overflow: hidden !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }

    .google-reviews-track {
        display: flex !important;
        width: max-content !important;
        transform: translateX(0);
    }

    .google-review-card {
        display: flex !important;
    }
}

/* ================================================================
   Google review slider controls — 2026-09-18
   ================================================================ */
.google-reviews-track {
    animation: none !important;
}

.google-reviews-viewport {
    scroll-behavior: auto;
}

.google-reviews-controls {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin: 10px 0 0;
}

.google-review-arrow {
    display: inline-flex;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid #cfe4ee;
    border-radius: 50%;
    color: #2f6d87;
    background: #ffffff;
    box-shadow: 0 7px 20px rgba(20, 84, 112, .11);
    cursor: pointer;
    transition: transform .16s ease, background-color .16s ease, color .16s ease, border-color .16s ease;
}

.google-review-arrow:hover,
.google-review-arrow:focus-visible {
    border-color: #5a9fbd;
    color: #ffffff;
    background: #5a9fbd;
    transform: translateY(-1px);
    outline: none;
}

.google-review-arrow:active {
    transform: translateY(0) scale(.96);
}

@media only screen and (max-width: 767px) {
    .google-reviews-controls {
        margin-top: 8px;
    }

    .google-review-arrow {
        width: 40px;
        height: 40px;
    }
}

/* Final cascade guard: retain the requested single-row desktop header after
   the earlier compatibility breakpoints in this stylesheet. */
@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        align-items: center !important;
        flex-wrap: nowrap !important;
    }

    .header-style-three .header-upper .ds-brand-box {
        flex: 0 0 315px;
        width: 315px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 315px;
        max-width: 315px;
    }

    .header-style-three .header-upper .right-box {
        align-self: center;
        padding-top: 0;
    }

    .header-style-three .ds-brand-tagline {
        color: #008ccc;
        font-size: 12px;
        letter-spacing: .035em;
    }
}

/* Keep the complete navigation comfortably inside a 1024px laptop viewport. */
@media only screen and (min-width: 1024px) and (max-width: 1199px) {
    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 10.5px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 17px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 4px;
    }
}

@media only screen and (min-width: 1200px) {
    .services-three .service-block_three-icon-box {
        padding-left: 50px;
    }

    .services-three .service-block_three-icon {
        font-size: 42px;
    }

    .services-three .service-block_three-heading {
        font-size: 19px;
    }
}

@media only screen and (max-width: 420px) {
    .header-style-three .ds-brand-tagline {
        font-size: 11.5px;
        letter-spacing: .015em;
    }
}

/* Must remain last so the logo descriptor uses the tooth-mark blue on every viewport. */
.ds-brand-tagline {
    color: #008ccc;
}

/* Client-approved final cascade values. */
body.home-light-green .patient-feedback-heading {
    color: #008ccc;
}

.doctor-profile-page .row {
    align-items: flex-start !important;
}

.doctor-profile-page .doctor-photo-frame {
    overflow: hidden;
    border: 1px solid #d5eaf4;
    border-radius: 24px;
    background: linear-gradient(150deg, #f8fcfe, #e3f3fa);
    box-shadow: 0 20px 48px rgba(24, 87, 115, .13);
}

@media only screen and (min-width: 768px) {
    .doctor-profile-page .col-lg-4 {
        position: static;
        top: auto;
    }
}

.patient-feedback-heading {
    margin-bottom: 36px;
    color: #008ccc;
    font-size: 44px;
}

.review-platform-heading {
    font-size: 40px;
}

@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper > .auto-container {
        width: 100%;
        max-width: none;
        padding-right: clamp(30px, 3.2vw, 52px);
        padding-left: clamp(30px, 3.2vw, 52px);
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 12px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 252px;
        flex: 0 0 252px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-style-three .header-upper .ds-brand-box .logo img {
        width: 230px;
        max-width: 230px;
    }

    .header-style-three .header-upper .right-box {
        flex: 0 1 auto;
        align-self: center;
        margin-left: auto;
        padding-top: 0;
    }

    .header-style-three .header-upper .main-menu .navigation {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: nowrap;
        white-space: nowrap;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 16px;
        letter-spacing: -.035em;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a {
        padding-right: 18px;
    }

    .header-style-three .header-upper .main-menu .navigation > li.dropdown > a::before {
        right: 4px;
    }

    .header-style-three .header-upper .main-menu .navigation > li:last-child > a {
        padding-right: 0;
    }

    .header-style-three .ds-brand-tagline {
        color: #008ccc;
        font-size: 9.5px;
        letter-spacing: .015em;
    }
}

@media only screen and (max-width: 767px) {
    .patient-feedback-heading {
        margin-bottom: 30px;
        font-size: 32px;
    }

    .review-platform-heading {
        font-size: 30px;
    }
}

.services-four .service-block_four-inner {
    height: 120px;
    min-height: 120px;
}

.services-four .service-block_four-title {
    font-size: 18px;
    line-height: 1.35;
}

@media only screen and (min-width: 1024px) {
    .header-style-three .header-upper .ds-brand-box {
        margin-left: 0 !important;
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1199px) {
    .header-style-three .header-upper > .auto-container {
        padding-right: 24px;
        padding-left: 24px;
    }

    .header-style-three .header-upper .ds-brand-box {
        width: 230px;
        flex-basis: 230px;
    }

    .header-style-three .header-upper .inner-container > .ds-header-toprow {
        gap: 8px;
    }

    .header-style-three .header-upper .main-menu .navigation > li > a {
        font-size: 14px;
    }

    .header-style-three .sticky-header .main-menu .navigation > li > a {
        padding-right: 3px;
        padding-left: 3px;
        font-size: 12px;
    }

    .header-style-three .sticky-header .main-menu .navigation > li.dropdown > a {
        padding-right: 17px;
    }
}
