﻿/* =========================================================
   TANYA SPECIALITY HOSPITAL
   PREMIUM CONTACT SECTION - 2026

   COLORS:
   Brown  : #9d795d
   White  : #ffffff
   Yellow : #fff9c7
   Black  : #000000
========================================================= */


/* =========================================================
   SECTION
========================================================= */

#tshc26-contact-section {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 90px 0;
    background: radial-gradient( circle at 10% 10%, rgba(157, 121, 93, 0.12), transparent 35% ), radial-gradient( circle at 90% 90%, rgba(255, 249, 199, 0.85), transparent 35% ), linear-gradient( 135deg, #ffffff 0%, #fffdf7 45%, #fff9c7 150% );
    isolation: isolate;
}


    /* =========================================================
   90% SCREEN WIDTH
========================================================= */

    #tshc26-contact-section .tshc26-container {
        width: 90%;
        max-width: 1600px;
        margin-left: auto;
        margin-right: auto;
        position: relative;
        z-index: 5;
    }


    /* =========================================================
   DECORATIVE BACKGROUND
========================================================= */

    #tshc26-contact-section .tshc26-bg-circle {
        position: absolute;
        border-radius: 50%;
        pointer-events: none;
        z-index: 0;
    }


    #tshc26-contact-section .tshc26-bg-circle-one {
        width: 420px;
        height: 420px;
        top: -180px;
        right: -120px;
        background: rgba(157, 121, 93, 0.08);
        filter: blur(2px);
    }


    #tshc26-contact-section .tshc26-bg-circle-two {
        width: 350px;
        height: 350px;
        bottom: -170px;
        left: -120px;
        background: rgba(255, 249, 199, 0.75);
        filter: blur(2px);
    }


    /* =========================================================
   SECTION HEADING
========================================================= */

    #tshc26-contact-section .tshc26-section-heading {
        margin-bottom: 55px;
    }


    #tshc26-contact-section .tshc26-small-title {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 9px 19px;
        margin-bottom: 16px;
        background: rgba(157, 121, 93, 0.10);
        border: 1px solid rgba(157, 121, 93, 0.20);
        border-radius: 50px;
        color: #9d795d;
        font-size: 13px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1.7px;
    }


    #tshc26-contact-section .tshc26-main-title {
        margin: 0;
        color: #000000;
        font-size: clamp(34px, 4vw, 58px);
        line-height: 1.08;
        font-weight: 800;
        letter-spacing: -1.5px;
    }


    #tshc26-contact-section .tshc26-description {
        max-width: 760px;
        margin: 18px auto 0;
        color: #646464;
        font-size: 16px;
        line-height: 1.8;
    }


    /* Title decorative line */

    #tshc26-contact-section .tshc26-title-line {
        display: flex;
        justify-content: center;
        margin-top: 22px;
    }


        #tshc26-contact-section .tshc26-title-line span {
            position: relative;
            display: block;
            width: 90px;
            height: 4px;
            background: #9d795d;
            border-radius: 50px;
        }


            #tshc26-contact-section .tshc26-title-line span::after {
                content: "";
                position: absolute;
                width: 10px;
                height: 10px;
                border-radius: 50%;
                background: #9d795d;
                right: -3px;
                top: 50%;
                transform: translateY(-50%);
            }


    /* =========================================================
   CONTENT ROW
========================================================= */

    #tshc26-contact-section .tshc26-content-row {
        margin-top: 10px;
    }


    /* =========================================================
   CONTACT CARD WRAPPER
========================================================= */

    #tshc26-contact-section .tshc26-contact-wrapper {
        display: flex;
        flex-direction: column;
        gap: 20px;
        height: 100%;
    }


    /* =========================================================
   CONTACT INFORMATION CARD
========================================================= */

    #tshc26-contact-section .tshc26-info-card {
        position: relative;
        display: flex;
        align-items: flex-start;
        gap: 22px;
        padding: 27px;
        background: linear-gradient( 145deg, #9d795d 0%, #88664e 100% );
        border: 1px solid rgba(255, 255, 255, 0.12);
        border-radius: 22px;
        box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08), 0 3px 10px rgba(0, 0, 0, 0.04);
        overflow: hidden;
        transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    }


        /* Glow */

        #tshc26-contact-section .tshc26-info-card::before {
            content: "";
            position: absolute;
            width: 180px;
            height: 180px;
            top: -100px;
            right: -70px;
            background: rgba(255, 249, 199, 0.13);
            border-radius: 50%;
            transition: all 0.4s ease;
        }


        #tshc26-contact-section .tshc26-info-card:hover {
            transform: translateY(-7px);
            box-shadow: 0 25px 55px rgba(75, 48, 30, 0.18), 0 8px 18px rgba(0, 0, 0, 0.08);
        }


            #tshc26-contact-section .tshc26-info-card:hover::before {
                transform: scale(1.25);
            }


    /* =========================================================
   ICON
========================================================= */

    #tshc26-contact-section .tshc26-card-icon {
        width: 62px;
        height: 62px;
        min-width: 62px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff9c7;
        border-radius: 18px;
        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
        position: relative;
        z-index: 2;
        transition: transform 0.35s ease, border-radius 0.35s ease;
    }


        #tshc26-contact-section .tshc26-card-icon i {
            color: #9d795d;
            font-size: 24px;
        }


    #tshc26-contact-section .tshc26-info-card:hover .tshc26-card-icon {
        transform: rotate(-6deg) scale(1.08);
        border-radius: 50%;
    }


    /* =========================================================
   CARD TEXT
========================================================= */

    #tshc26-contact-section .tshc26-card-content {
        position: relative;
        z-index: 3;
        flex: 1;
    }


    #tshc26-contact-section .tshc26-card-label {
        display: block;
        margin-bottom: 5px;
        color: #fff9c7;
        font-size: 11px;
        font-weight: 700;
        letter-spacing: 1.8px;
        text-transform: uppercase;
    }


    #tshc26-contact-section .tshc26-card-content h3 {
        margin: 0 0 9px;
        color: #ffffff;
        font-size: 20px;
        line-height: 1.35;
        font-weight: 700;
    }


    #tshc26-contact-section .tshc26-card-content p {
        margin: 0;
        color: rgba(255, 255, 255, 0.83);
        font-size: 14px;
        line-height: 1.7;
    }


    /* =========================================================
   ACTION LINK
========================================================= */

    #tshc26-contact-section .tshc26-action-link {
        display: inline-flex;
        align-items: center;
        gap: 8px;
        margin-top: 13px;
        color: #fff9c7;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        transition: gap 0.3s ease;
    }


        #tshc26-contact-section .tshc26-action-link:hover {
            color: #ffffff;
            gap: 13px;
        }


    /* =========================================================
   PHONE LIST
========================================================= */

    #tshc26-contact-section .tshc26-phone-list {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
        margin-top: 12px;
    }


        #tshc26-contact-section .tshc26-phone-list a {
            display: flex;
            flex-direction: column;
            gap: 1px;
            padding: 9px 11px;
            background: rgba(255, 255, 255, 0.09);
            border: 1px solid rgba(255, 255, 255, 0.10);
            border-radius: 10px;
            text-decoration: none;
            transition: background 0.3s ease, transform 0.3s ease;
        }


            #tshc26-contact-section .tshc26-phone-list a:hover {
                background: #fff9c7;
                transform: translateY(-2px);
            }


        #tshc26-contact-section .tshc26-phone-list span {
            color: rgba(255, 255, 255, 0.68);
            font-size: 10px;
        }


        #tshc26-contact-section .tshc26-phone-list strong {
            color: #ffffff;
            font-size: 12px;
            font-weight: 600;
        }


        #tshc26-contact-section .tshc26-phone-list a:hover span,
        #tshc26-contact-section .tshc26-phone-list a:hover strong {
            color: #000000;
        }


    /* =========================================================
   EMAIL
========================================================= */

    #tshc26-contact-section .tshc26-email-link {
        display: inline-block;
        margin-top: 10px;
        color: #fff9c7;
        font-size: 14px;
        font-weight: 600;
        text-decoration: none;
        word-break: break-word;
        transition: color 0.3s ease;
    }


        #tshc26-contact-section .tshc26-email-link:hover {
            color: #ffffff;
        }


    /* =========================================================
   GOOGLE MAP CARD
========================================================= */

    #tshc26-contact-section .tshc26-map-card {
        display: flex;
        flex-direction: column;
        height: 100%;
        min-height: 650px;
        padding: 18px;
        background: #ffffff;
        border: 1px solid rgba(157, 121, 93, 0.16);
        border-radius: 28px;
        box-shadow: 0 22px 60px rgba(58, 39, 25, 0.12);
        overflow: hidden;
        transition: transform 0.35s ease, box-shadow 0.35s ease;
    }


        #tshc26-contact-section .tshc26-map-card:hover {
            transform: translateY(-6px);
            box-shadow: 0 30px 70px rgba(58, 39, 25, 0.16);
        }


    /* =========================================================
   MAP HEADER
========================================================= */

    #tshc26-contact-section .tshc26-map-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 11px 10px 18px;
    }


    #tshc26-contact-section .tshc26-map-label {
        display: block;
        color: #9d795d;
        font-size: 11px;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1.7px;
        margin-bottom: 4px;
    }


    #tshc26-contact-section .tshc26-map-header h3 {
        margin: 0;
        color: #000000;
        font-size: clamp(20px, 2vw, 28px);
        font-weight: 750;
    }


    #tshc26-contact-section .tshc26-map-icon {
        width: 52px;
        height: 52px;
        min-width: 52px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: #fff9c7;
        border-radius: 15px;
        color: #9d795d;
        font-size: 20px;
    }


    /* =========================================================
   MAP
========================================================= */

    #tshc26-contact-section .tshc26-map-frame {
        position: relative;
        flex: 1;
        min-height: 470px;
        overflow: hidden;
        border-radius: 20px;
        background: #f4f4f4;
    }


        #tshc26-contact-section .tshc26-map-frame iframe {
            width: 100%;
            height: 100%;
            min-height: 470px;
            border: 0;
            display: block;
            filter: saturate(0.85) contrast(1.03);
            transition: filter 0.4s ease;
        }


    #tshc26-contact-section .tshc26-map-card:hover iframe {
        filter: saturate(1) contrast(1);
    }


    /* =========================================================
   MAP FOOTER
========================================================= */

    #tshc26-contact-section .tshc26-map-footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 20px;
        padding: 18px 8px 4px;
    }


    #tshc26-contact-section .tshc26-map-address {
        display: flex;
        align-items: center;
        gap: 12px;
    }


        #tshc26-contact-section .tshc26-map-address > i {
            width: 42px;
            height: 42px;
            min-width: 42px;
            display: flex;
            align-items: center;
            justify-content: center;
            background: rgba(157, 121, 93, 0.10);
            color: #9d795d;
            border-radius: 12px;
        }


        #tshc26-contact-section .tshc26-map-address span {
            display: block;
            color: #808080;
            font-size: 11px;
            margin-bottom: 1px;
        }


        #tshc26-contact-section .tshc26-map-address strong {
            display: block;
            color: #000000;
            font-size: 13px;
            font-weight: 650;
        }


    /* =========================================================
   DIRECTION BUTTON
========================================================= */

    #tshc26-contact-section .tshc26-direction-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        padding: 12px 18px;
        background: #9d795d;
        color: #ffffff;
        border-radius: 12px;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        white-space: nowrap;
        box-shadow: 0 8px 20px rgba(157, 121, 93, 0.25);
        transition: background 0.3s ease, color 0.3s ease, transform 0.3s ease;
    }


        #tshc26-contact-section .tshc26-direction-btn:hover {
            background: #fff9c7;
            color: #000000;
            transform: translateY(-3px);
        }


    /* =========================================================
   BOTTOM CONTACT STRIP
========================================================= */

    #tshc26-contact-section .tshc26-bottom-strip {
        position: relative;
        margin-top: 38px;
        padding: 28px 32px;
        background: #000000;
        border-radius: 24px;
        overflow: hidden;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.17);
    }


        #tshc26-contact-section .tshc26-bottom-strip::before {
            content: "";
            position: absolute;
            width: 270px;
            height: 270px;
            border-radius: 50%;
            background: rgba(157, 121, 93, 0.30);
            top: -150px;
            left: -100px;
            pointer-events: none;
        }


        #tshc26-contact-section .tshc26-bottom-strip::after {
            content: "";
            position: absolute;
            width: 230px;
            height: 230px;
            border-radius: 50%;
            background: rgba(255, 249, 199, 0.08);
            bottom: -150px;
            right: -60px;
            pointer-events: none;
        }


    #tshc26-contact-section .tshc26-strip-content {
        position: relative;
        z-index: 2;
        display: flex;
        align-items: center;
        gap: 18px;
    }


    #tshc26-contact-section .tshc26-strip-icon {
        width: 64px;
        height: 64px;
        min-width: 64px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 18px;
        background: #fff9c7;
        color: #9d795d;
        font-size: 26px;
    }


    #tshc26-contact-section .tshc26-strip-content span {
        display: block;
        margin-bottom: 3px;
        color: #fff9c7;
        font-size: 11px;
        letter-spacing: 1.5px;
        text-transform: uppercase;
        font-weight: 700;
    }


    #tshc26-contact-section .tshc26-strip-content h3 {
        margin: 0;
        color: #ffffff;
        font-size: clamp(18px, 2vw, 25px);
        font-weight: 700;
    }


    /* =========================================================
   BOTTOM BUTTONS
========================================================= */

    #tshc26-contact-section .tshc26-strip-actions {
        position: relative;
        z-index: 3;
        display: flex;
        justify-content: flex-end;
        gap: 12px;
        flex-wrap: wrap;
    }


    #tshc26-contact-section .tshc26-primary-btn,
    #tshc26-contact-section .tshc26-secondary-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        min-height: 48px;
        padding: 12px 20px;
        border-radius: 12px;
        font-size: 13px;
        font-weight: 700;
        text-decoration: none;
        transition: transform 0.3s ease, background 0.3s ease, color 0.3s ease;
    }


    #tshc26-contact-section .tshc26-primary-btn {
        background: #9d795d;
        color: #ffffff;
    }


        #tshc26-contact-section .tshc26-primary-btn:hover {
            background: #fff9c7;
            color: #000000;
            transform: translateY(-3px);
        }


    #tshc26-contact-section .tshc26-secondary-btn {
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.2);
        color: #ffffff;
    }


        #tshc26-contact-section .tshc26-secondary-btn:hover {
            background: #ffffff;
            color: #000000;
            transform: translateY(-3px);
        }


    /* =========================================================
   SCROLL ANIMATION INITIAL STATE
========================================================= */

    #tshc26-contact-section .tshc26-scroll-left,
    #tshc26-contact-section .tshc26-scroll-right,
    #tshc26-contact-section .tshc26-scroll-up {
        opacity: 0;
    }


    /*
Animate.css will control actual movement.
This prevents content flashing before JS triggers it.
*/

    #tshc26-contact-section .tshc26-animation-visible {
        opacity: 1;
    }


/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {

/*    #tshc26-contact-section {
        padding: 110px 0;
    }*/


        #tshc26-contact-section .tshc26-info-card {
            padding: 30px;
        }


        #tshc26-contact-section .tshc26-map-card {
            min-height: 680px;
        }
}


/* =========================================================
   TABLET / SMALL LAPTOP
========================================================= */

@media (max-width: 1199px) {

    #tshc26-contact-section .tshc26-phone-list {
        grid-template-columns: 1fr;
    }


    #tshc26-contact-section .tshc26-map-card {
        min-height: 620px;
    }
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991px) {

    #tshc26-contact-section {
        padding: 75px 0;
    }


        #tshc26-contact-section .tshc26-section-heading {
            margin-bottom: 42px;
        }


        #tshc26-contact-section .tshc26-contact-wrapper {
            margin-bottom: 5px;
        }


        #tshc26-contact-section .tshc26-phone-list {
            grid-template-columns: repeat(2, 1fr);
        }


        #tshc26-contact-section .tshc26-map-card {
            min-height: 600px;
        }


        #tshc26-contact-section .tshc26-strip-actions {
            justify-content: flex-start;
        }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    #tshc26-contact-section {
        padding: 60px 0;
    }


        #tshc26-contact-section .tshc26-container {
            width: 90%;
        }


        #tshc26-contact-section .tshc26-section-heading {
            margin-bottom: 35px;
        }


        #tshc26-contact-section .tshc26-main-title {
            letter-spacing: -0.8px;
        }


        #tshc26-contact-section .tshc26-description {
            font-size: 14px;
            line-height: 1.7;
        }


        #tshc26-contact-section .tshc26-info-card {
            padding: 22px;
            gap: 17px;
            border-radius: 18px;
        }


        #tshc26-contact-section .tshc26-card-icon {
            width: 54px;
            height: 54px;
            min-width: 54px;
            border-radius: 15px;
        }


            #tshc26-contact-section .tshc26-card-icon i {
                font-size: 21px;
            }


        #tshc26-contact-section .tshc26-card-content h3 {
            font-size: 18px;
        }


        #tshc26-contact-section .tshc26-phone-list {
            grid-template-columns: 1fr;
        }


        #tshc26-contact-section .tshc26-map-card {
            padding: 12px;
            min-height: 520px;
            border-radius: 20px;
        }


        #tshc26-contact-section .tshc26-map-frame {
            min-height: 370px;
            border-radius: 16px;
        }


            #tshc26-contact-section .tshc26-map-frame iframe {
                min-height: 370px;
            }


        #tshc26-contact-section .tshc26-map-footer {
            align-items: flex-start;
            flex-direction: column;
        }


        #tshc26-contact-section .tshc26-direction-btn {
            width: 100%;
        }


        #tshc26-contact-section .tshc26-bottom-strip {
            padding: 25px 22px;
            border-radius: 20px;
        }


        #tshc26-contact-section .tshc26-strip-content {
            align-items: flex-start;
        }


        #tshc26-contact-section .tshc26-strip-actions {
            width: 100%;
        }


        #tshc26-contact-section .tshc26-primary-btn,
        #tshc26-contact-section .tshc26-secondary-btn {
            flex: 1;
        }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 480px) {

    #tshc26-contact-section {
        padding: 50px 0;
    }


        #tshc26-contact-section .tshc26-small-title {
            font-size: 10px;
            letter-spacing: 1.2px;
            padding: 8px 13px;
        }


        #tshc26-contact-section .tshc26-info-card {
            flex-direction: column;
        }


        #tshc26-contact-section .tshc26-card-icon {
            width: 50px;
            height: 50px;
            min-width: 50px;
        }


        #tshc26-contact-section .tshc26-map-header {
            align-items: flex-start;
        }


        #tshc26-contact-section .tshc26-map-icon {
            width: 44px;
            height: 44px;
            min-width: 44px;
        }


        #tshc26-contact-section .tshc26-map-frame,
        #tshc26-contact-section .tshc26-map-frame iframe {
            min-height: 330px;
        }


        #tshc26-contact-section .tshc26-strip-content {
            flex-direction: column;
        }


        #tshc26-contact-section .tshc26-strip-actions {
            flex-direction: column;
        }


        #tshc26-contact-section .tshc26-primary-btn,
        #tshc26-contact-section .tshc26-secondary-btn {
            width: 100%;
        }
}


/* =========================================================
   ACCESSIBILITY
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {

    #tshc26-contact-section *,
    #tshc26-contact-section *::before,
    #tshc26-contact-section *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
    }


    #tshc26-contact-section .tshc26-scroll-left,
    #tshc26-contact-section .tshc26-scroll-right,
    #tshc26-contact-section .tshc26-scroll-up {
        opacity: 1 !important;
    }
}
