/* =========================
   PREMIUM FOOTER
========================= */

.premium-footer{
    background: linear-gradient(
    135deg,
    var(--primary-dark),
    #06244e
    );

    color:white;
    padding-top:70px;
    margin-top:70px;
}

.footer-grid{
    display:grid;
    grid-template-columns:
    1.3fr
    1fr
    1fr
    1fr;

    gap:45px;
}

.footer-brand h4{
    font-weight:900;
    margin-top:18px;
    margin-bottom:16px;
}

.footer-brand p{
    color:rgba(255,255,255,.72);
    line-height:1.9;
}

.footer-logo-box{
    width:75px;
    height:75px;
    background:rgba(255,255,255,.08);

    border-radius:22px;

    display:flex;
    align-items:center;
    justify-content:center;
}

.footer-logo-box img{
    width:48px;
}

.premium-footer h5{
    font-weight:900;
    margin-bottom:22px;
}

.footer-links,
.footer-contact{
    padding:0;
    list-style:none;
}

.footer-links li,
.footer-contact li{
    margin-bottom:14px;
}

.footer-links a{
    color:rgba(255,255,255,.75);
    text-decoration:none;
    transition:.3s;
}

.footer-links a:hover{
    color:white;
    padding-left:6px;
}

.footer-contact li{
    color:rgba(255,255,255,.75);
}

.social-links{
    display:flex;
    gap:14px;
    margin-bottom:18px;
}

/* =====================================================
   PUBLIC FOOTER â€” ORIGINAL SOCIAL MEDIA ICON DESIGN
   ===================================================== */

.premium-footer .footer-social-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;

    gap: 12px;

    margin: 18px 0 20px;
}

/* Common icon button */

.premium-footer .footer-social-link {
    width: 46px;
    height: 46px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    flex: 0 0 46px;

    border:
        1px solid rgba(255, 255, 255, 0.13);

    border-radius: 50%;

    text-decoration: none;

    background:
        rgba(255, 255, 255, 0.08);

    box-shadow:
        0 8px 18px rgba(0, 0, 0, 0.14);

    transition:
        transform 220ms ease,
        border-color 220ms ease,
        background-color 220ms ease,
        box-shadow 220ms ease;
}

.premium-footer .footer-social-link i {
    display: block;

    font-size: 21px;
    line-height: 1;

    transition:
        transform 220ms ease;
}

.premium-footer .footer-social-link:hover {
    transform: translateY(-4px);

    border-color:
        rgba(255, 255, 255, 0.30);

    box-shadow:
        0 13px 25px rgba(0, 0, 0, 0.22);
}

.premium-footer .footer-social-link:hover i {
    transform: scale(1.08);
}

/* =====================================================
   FACEBOOK
   ===================================================== */

.premium-footer
.footer-social-link-facebook {
    background:
        rgba(24, 119, 242, 0.12);
}

.premium-footer
.footer-social-link-facebook i {
    color: #1877f2;
}

.premium-footer
.footer-social-link-facebook:hover {
    background:
        rgba(24, 119, 242, 0.20);

    border-color:
        rgba(24, 119, 242, 0.55);
}

/* =====================================================
   INSTAGRAM
   ===================================================== */

.premium-footer
.footer-social-link-instagram {
    background:
        rgba(225, 48, 108, 0.10);
}

.premium-footer
.footer-social-link-instagram i {
    color: #e1306c;
}

@supports (
    background-clip: text
) {
    .premium-footer
    .footer-social-link-instagram i {
        background:
            linear-gradient(
                135deg,
                #833ab4 0%,
                #c13584 30%,
                #e1306c 52%,
                #f77737 75%,
                #fcaf45 100%
            );

        -webkit-background-clip: text;
        background-clip: text;

        -webkit-text-fill-color: transparent;
    }
}

.premium-footer
.footer-social-link-instagram:hover {
    background:
        rgba(225, 48, 108, 0.17);

    border-color:
        rgba(225, 48, 108, 0.50);
}

/* =====================================================
   YOUTUBE
   ===================================================== */

.premium-footer
.footer-social-link-youtube {
    background:
        rgba(255, 0, 0, 0.10);
}

.premium-footer
.footer-social-link-youtube i {
    color: #ff0000;
}

.premium-footer
.footer-social-link-youtube:hover {
    background:
        rgba(255, 0, 0, 0.17);

    border-color:
        rgba(255, 0, 0, 0.50);
}

/* =====================================================
   X / TWITTER
   Your database platform name is "twitter".
   ===================================================== */

.premium-footer
.footer-social-link-twitter {
    background:
        rgba(255, 255, 255, 0.09);
}

.premium-footer
.footer-social-link-twitter i {
    color: #ffffff;
}

.premium-footer
.footer-social-link-twitter:hover {
    background:
        rgba(255, 255, 255, 0.16);

    border-color:
        rgba(255, 255, 255, 0.40);
}

/* =====================================================
   MOBILE
   ===================================================== */

@media (max-width: 575.98px) {

    .premium-footer
    .footer-social-links {
        gap: 10px;
    }

    .premium-footer
    .footer-social-link {
        width: 42px;
        height: 42px;

        flex-basis: 42px;
    }

    .premium-footer
    .footer-social-link i {
        font-size: 19px;
    }
}

.footer-small{
    color:rgba(255,255,255,.7);
    line-height:1.8;
}

.footer-bottom{

    margin-top:55px;

    padding:24px 0;

    border-top:
    1px solid rgba(255,255,255,.08);

    display:flex;

    justify-content:space-between;

    align-items:center;

    flex-wrap:wrap;

    gap:15px;
}

.footer-bottom p{
    margin:0;
    color:rgba(255,255,255,.72);
}

.footer-bottom a{
    color:rgba(255,255,255,.72);
    text-decoration:none;
}

.footer-bottom a:hover{
    color:white;
}

@media(max-width:991px){

.footer-grid{

grid-template-columns:
1fr 1fr;

}

}


@media(max-width:576px){

.footer-grid{

grid-template-columns:
1fr;

text-align:center;

}

.footer-logo-box{

margin:auto;

}

.social-links{

justify-content:center;

}

.footer-bottom{

flex-direction:column;

}

}

/* =====================================================
   FOOTER RULES MOVED FROM GLOBAL STYLE.CSS
   Existing visual cascade preserved.
===================================================== */

/* =====================================================
   FOOTER LOGO DESIGN FIX
   Final footer logo sizing override.
   ===================================================== */

.premium-footer .footer-logo-box {
    width: 104px !important;
    height: 104px !important;
    min-width: 104px !important;
    padding: 12px !important;
    margin-bottom: 20px;
    border-radius: 26px !important;
    background: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    box-shadow: 0 14px 34px rgba(0, 0, 0, 0.18);
}

.premium-footer .footer-logo-box .site-footer-logo {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    object-fit: contain !important;
    object-position: center !important;
    border-radius: 16px;
    background: transparent !important;
}

/* Keeps the footer brand area neat on smaller screens. */
@media (max-width: 767.98px) {
    .premium-footer .footer-brand {
        text-align: center;
    }

    .premium-footer .footer-logo-box {
        width: 90px !important;
        height: 90px !important;
        min-width: 90px !important;
        margin: 0 auto 18px;
        padding: 10px !important;
        border-radius: 22px !important;
    }
}

/* =====================================================
   PUBLIC FOOTER DYNAMIC CONTACT DETAILS
   ===================================================== */

.premium-footer .footer-contact li {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.premium-footer .footer-contact li i {
    width: 18px;
    flex: 0 0 18px;
    margin-top: 4px;
    color: #5eead4;
    text-align: center;
}

.premium-footer .footer-contact li a,
.premium-footer .footer-contact li span {
    color: inherit;
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.premium-footer .footer-contact li a {
    text-decoration: none;
}

.premium-footer .footer-contact li a:hover {
    color: #5eead4;
}

.premium-footer .footer-social-empty {
    margin: 0 0 12px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 13px;
}

/* MOBILE FOOTER RESPONSIVE FIX — START */

@media (max-width: 767.98px) {

    /* =================================================
       FOOTER OUTER CONTAINER
       ================================================= */

    .premium-footer,
    .premium-footer * {
        box-sizing: border-box;
    }

    .premium-footer {
        width: 100% !important;
        max-width: 100% !important;

        overflow: hidden !important;

        padding: 52px 0 26px !important;
    }

    .premium-footer > .container {
        width: 100% !important;
        max-width: 100% !important;

        margin-right: auto !important;
        margin-left: auto !important;

        padding-right: 20px !important;
        padding-left: 20px !important;
    }


    /* =================================================
       SINGLE-COLUMN MOBILE GRID
       ================================================= */

    .premium-footer .footer-grid {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: grid !important;
        grid-template-columns:
            minmax(0, 1fr) !important;

        align-items: start !important;

        gap: 38px !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .premium-footer .footer-grid > * {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
        padding-right: 0 !important;
        padding-left: 0 !important;

        text-align: center;
    }


    /* =================================================
       ASSOCIATION IDENTITY
       ================================================= */

    .premium-footer .footer-brand {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: flex;
        flex-direction: column;
        align-items: center;

        text-align: center !important;
    }

    .premium-footer .footer-logo-box {
        width: 92px !important;
        height: 92px !important;
        min-width: 92px !important;
        max-width: 92px !important;

        margin: 0 auto 22px !important;
    }

    .premium-footer
    .footer-logo-box
    .site-footer-logo {
        width: 100% !important;
        height: 100% !important;

        display: block;

        object-fit: contain;
    }

    .premium-footer .footer-brand h4 {
        width: 100% !important;
        max-width: 600px !important;

        margin:
            0 auto 17px !important;

        padding: 0 !important;

        font-size: 24px !important;
        line-height: 1.35 !important;

        text-align: center !important;

        overflow-wrap: anywhere;
    }

    .premium-footer .footer-brand p {
        width: 100% !important;
        max-width: 560px !important;

        margin: 0 auto !important;
        padding: 0 !important;

        font-size: 16px !important;
        line-height: 1.72 !important;

        text-align: center !important;

        overflow-wrap: anywhere;
    }


    /* =================================================
       FOOTER HEADINGS
       ================================================= */

    .premium-footer h5 {
        width: 100%;

        margin:
            0 auto 18px !important;

        padding: 0 !important;

        font-size: 22px !important;
        line-height: 1.3 !important;

        text-align: center !important;
    }


    /* =================================================
       QUICK LINKS
       ================================================= */

    .premium-footer .footer-links {
        width: 100% !important;
        max-width: 100% !important;

        display: grid !important;
        grid-template-columns: 1fr;

        justify-items: center;

        gap: 10px !important;

        margin: 0 !important;
        padding: 0 !important;

        list-style: none !important;
    }

    .premium-footer .footer-links li {
        width: auto !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .premium-footer .footer-links a {
        display: inline-flex;
        align-items: center;
        justify-content: center;

        padding: 4px 10px;

        line-height: 1.45;

        text-align: center;
    }


    /* =================================================
       SOCIAL ICONS
       ================================================= */

    .premium-footer .footer-social-links {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: flex !important;
        flex-wrap: wrap !important;

        align-items: center;
        justify-content: center !important;

        gap: 12px !important;

        margin:
            0 auto 18px !important;

        padding: 0 !important;
    }

    .premium-footer .footer-social-link {
        position: relative !important;

        left: auto !important;
        right: auto !important;

        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;
        max-width: 50px !important;

        flex:
            0 0 50px !important;

        margin: 0 !important;

        transform: none;
    }

    .premium-footer .footer-social-link i {
        position: static !important;

        margin: 0 !important;

        transform: none;
    }

    .premium-footer .footer-small {
        width: 100% !important;
        max-width: 570px !important;

        margin: 0 auto !important;
        padding: 0 !important;

        font-size: 16px !important;
        line-height: 1.7 !important;

        text-align: center !important;

        overflow-wrap: anywhere;
    }


    /* =================================================
       CONTACT INFORMATION
       ================================================= */

    .premium-footer .footer-contact {
        width: min(100%, 540px) !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: grid !important;
        grid-template-columns: 1fr;

        gap: 14px !important;

        margin: 0 auto !important;
        padding: 0 !important;

        list-style: none !important;
    }

    .premium-footer .footer-contact li {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: grid !important;

        grid-template-columns:
            24px minmax(0, 1fr) !important;

        align-items: start !important;

        gap: 12px !important;

        margin: 0 !important;
        padding: 0 !important;

        text-align: left !important;
    }

    .premium-footer .footer-contact li i {
        position: static !important;

        width: 24px !important;
        min-width: 24px !important;
        max-width: 24px !important;

        margin: 4px 0 0 !important;

        text-align: center !important;

        transform: none !important;
    }

    .premium-footer .footer-contact li a,
    .premium-footer .footer-contact li span {
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        line-height: 1.65 !important;

        text-align: left !important;

        overflow-wrap: anywhere;
        word-break: normal;
    }


    /* =================================================
       FOOTER BOTTOM
       ================================================= */

    .premium-footer .footer-bottom {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: flex !important;
        flex-direction: column !important;

        align-items: center !important;
        justify-content: center !important;

        gap: 16px !important;

        margin:
            38px 0 0 !important;

        padding:
            24px 0 0 !important;

        text-align: center !important;
    }

    .premium-footer .footer-tamil {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        display: flex !important;

        align-items: center !important;
        justify-content: center !important;

        gap: 10px !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .premium-footer .footer-tamil span {
        width: auto !important;
        min-width: 20px !important;
        max-width: 65px !important;

        flex:
            1 1 20px !important;
    }

    .premium-footer .footer-tamil p {
        width: auto !important;
        max-width:
            calc(100% - 60px) !important;
        min-width: 0 !important;

        flex:
            0 1 auto !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 15px !important;
        line-height: 1.55 !important;

        text-align: center !important;

        overflow-wrap: anywhere;
    }

    .premium-footer .footer-bottom > p {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 14px !important;
        line-height: 1.7 !important;

        text-align: center !important;

        overflow-wrap: anywhere;
    }

    .premium-footer .footer-bottom a {
        display: inline;

        white-space: normal !important;

        overflow-wrap: anywhere;
    }
}


/* =====================================================
   VERY SMALL MOBILE DEVICES
   ===================================================== */

@media (max-width: 380px) {

    .premium-footer > .container {
        padding-right: 14px !important;
        padding-left: 14px !important;
    }

    .premium-footer .footer-brand h4 {
        font-size: 21px !important;
    }

    .premium-footer .footer-brand p,
    .premium-footer .footer-small {
        font-size: 15px !important;
    }

    .premium-footer h5 {
        font-size: 20px !important;
    }

    .premium-footer .footer-social-links {
        gap: 9px !important;
    }

    .premium-footer .footer-social-link {
        width: 45px !important;
        height: 45px !important;
        min-width: 45px !important;
        max-width: 45px !important;

        flex:
            0 0 45px !important;
    }

    .premium-footer .footer-contact li {
        grid-template-columns:
            21px minmax(0, 1fr) !important;

        gap: 9px !important;
    }

    .premium-footer .footer-contact li i {
        width: 21px !important;
        min-width: 21px !important;
        max-width: 21px !important;
    }

    .premium-footer .footer-tamil span {
        display: none !important;
    }

    .premium-footer .footer-tamil p {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* MOBILE FOOTER RESPONSIVE FIX — END */
