 * {
            box-sizing: border-box;
        }

        body {
            margin: 0;
            font-family: "Segoe UI", Arial, sans-serif;
            background: #eeeeee;
        }

        .church-footer {
            position: relative;
            overflow: hidden;
            color: #ffffff;
            background:
                radial-gradient(circle at 8% 15%, rgba(255, 193, 7, 0.18), transparent 25%),
                radial-gradient(circle at 90% 20%, rgba(0, 188, 212, 0.17), transparent 28%),
                radial-gradient(circle at 75% 90%, rgba(233, 30, 99, 0.15), transparent 25%),
                linear-gradient(135deg, #16181b 0%, #2b2e32 48%, #111315 100%);
        }

        .church-footer::before {
            content: "";
            position: absolute;
            inset: 0;
            opacity: 0.22;
            pointer-events: none;
            background-image:
                linear-gradient(115deg, transparent 45%, rgba(255,255,255,0.08) 46%, transparent 47%),
                linear-gradient(65deg, transparent 45%, rgba(255,255,255,0.05) 46%, transparent 47%);
            background-size: 75px 75px;
            animation: footerPattern 15s linear infinite;
        }

        @keyframes footerPattern {
            from {
                background-position: 0 0, 0 0;
            }

            to {
                background-position: 150px 75px, -150px 75px;
            }
        }

        .footer-top-line {
            height: 6px;
            position: relative;
            z-index: 2;
            background: linear-gradient(
                90deg,
                #ffb300,
                #ff5722,
                #e91e63,
                #7c4dff,
                #00bcd4,
                #4caf50,
                #ffb300
            );
            background-size: 300% 100%;
            animation: footerColorMove 7s linear infinite;
        }

        @keyframes footerColorMove {
            from {
                background-position: 0 0;
            }

            to {
                background-position: 300% 0;
            }
        }

        .footer-gallery-area {
            position: relative;
            z-index: 3;
            padding: 55px 0 35px;
        }

        .gallery-title {
            margin-bottom: 28px;
            text-align: center;
        }

        .gallery-title span {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            padding: 9px 20px;
            border: 1px solid rgba(255,255,255,0.22);
            border-radius: 50px;
            color: #e8e8e8;
            background: rgba(255,255,255,0.07);
            backdrop-filter: blur(12px);
            box-shadow: 0 10px 30px rgba(0,0,0,0.25);
            font-size: 13px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
        }

        .gallery-title span i {
            color: #ffbf35;
        }

        .footer-gallery {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 14px;
            padding: 15px;
            border: 1px solid rgba(255,255,255,0.15);
            border-radius: 10px;
            background: rgba(255,255,255,0.055);
            backdrop-filter: blur(10px);
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.12),
                0 22px 55px rgba(0,0,0,0.32);
        }

        .footer-photo {
            position: relative;
            height: 165px;
            overflow: hidden;
            border-radius: 8px;
            border: 2px solid rgba(255,255,255,0.18);
            box-shadow: 0 12px 25px rgba(0,0,0,0.32);
        }

        .footer-photo::before {
            content: "";
            position: absolute;
            inset: 7px;
            z-index: 2;
            border: 1px solid rgba(255,255,255,0.58);
            border-radius: 5px;
            pointer-events: none;
            transition: 0.4s ease;
        }

        .footer-photo img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.7s ease, filter 0.5s ease;
        }

        .footer-photo-overlay {
            position: absolute;
            inset: 0;
            z-index: 1;
            display: flex;
            align-items: flex-end;
            padding: 17px;
            background: linear-gradient(
                to top,
                rgba(0,0,0,0.9),
                rgba(0,0,0,0.08) 65%
            );
        }

        .footer-photo-overlay h5 {
            position: relative;
            z-index: 3;
            margin: 0;
            color: #ffffff;
            font-size: 14px;
            font-weight: 700;
            letter-spacing: 0.3px;
        }

        .footer-photo:hover img {
            transform: scale(1.12);
            filter: saturate(1.25);
        }

        .footer-photo:hover::before {
            inset: 0;
            border-color: rgba(255,255,255,0.9);
        }

        .footer-photo:nth-child(1) {
            border-bottom-color: #ffb300;
        }

        .footer-photo:nth-child(2) {
            border-bottom-color: #00bcd4;
        }

        .footer-photo:nth-child(3) {
            border-bottom-color: #e91e63;
        }

        .footer-photo:nth-child(4) {
            border-bottom-color: #7c4dff;
        }

        .footer-photo:nth-child(5) {
            border-bottom-color: #4caf50;
        }

        .footer-main {
            position: relative;
            z-index: 3;
            padding: 40px 0 50px;
        }

        .footer-main::before {
            content: "";
            position: absolute;
            top: 0;
            left: 5%;
            right: 5%;
            height: 1px;
            background: linear-gradient(
                90deg,
                transparent,
                rgba(255,255,255,0.25),
                transparent
            );
        }

        .footer-column {
            height: 100%;
            padding: 25px 22px;
            border: 1px solid rgba(255,255,255,0.12);
            border-radius: 10px;
            background: linear-gradient(
                145deg,
                rgba(255,255,255,0.09),
                rgba(255,255,255,0.025)
            );
            box-shadow:
                inset 0 1px 0 rgba(255,255,255,0.1),
                0 18px 35px rgba(0,0,0,0.22);
            backdrop-filter: blur(10px);
            transition: transform 0.4s ease, border-color 0.4s ease;
        }

        .footer-column:hover {
            transform: translateY(-7px);
            border-color: rgba(255,255,255,0.28);
        }

        .footer-brand {
            display: flex;
            align-items: center;
            gap: 15px;
            margin-bottom: 20px;
        }

        .footer-logo {
            width: 70px;
            height: 70px;
            flex-shrink: 0;
            display: grid;
            place-items: center;
            border: 2px solid rgba(255,255,255,0.5);
            border-radius: 10px;
            color: #ffffff;
            background: linear-gradient(145deg, #6f7479, #25282c);
            box-shadow:
                0 0 0 6px rgba(255,255,255,0.05),
                0 12px 25px rgba(0,0,0,0.35);
            font-size: 31px;
        }

        .footer-brand h3 {
            margin: 0 0 5px;
            color: #ffffff;
            font-size: 20px;
            font-weight: 800;
            line-height: 1.25;
        }

        .footer-brand small {
            color: #ffc94d;
            font-size: 12px;
            font-weight: 600;
            letter-spacing: 1px;
            text-transform: uppercase;
        }

        .footer-description {
            margin: 0;
            color: #c8cbcf;
            font-size: 14px;
            line-height: 1.8;
        }

        .footer-heading {
            position: relative;
            margin: 0 0 24px;
            padding-bottom: 13px;
            color: #ffffff;
            font-size: 18px;
            font-weight: 800;
        }

        .footer-heading::before {
            content: "";
            position: absolute;
            bottom: 0;
            left: 0;
            width: 50px;
            height: 3px;
            border-radius: 10px;
            background: linear-gradient(90deg, #ffb300, #00bcd4, #e91e63);
        }

        .footer-heading::after {
            content: "";
            position: absolute;
            bottom: 1px;
            left: 58px;
            width: 6px;
            height: 2px;
            border-radius: 10px;
            background: #ffffff;
            box-shadow: 10px 0 0 rgba(255,255,255,0.35);
        }

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

        .footer-links li {
            margin-bottom: 11px;
        }

        .footer-links a {
            display: flex;
            align-items: center;
            gap: 10px;
            color: #c9ccd0;
            font-size: 14px;
            text-decoration: none;
            transition: 0.3s ease;
        }

        .footer-links a i {
            width: 22px;
            height: 22px;
            display: grid;
            place-items: center;
            border-radius: 5px;
            color: #ffffff;
            background: rgba(255,255,255,0.1);
            font-size: 9px;
            transition: 0.3s ease;
        }

        .footer-links a:hover {
            color: #ffffff;
            transform: translateX(7px);
        }

        .footer-links li:nth-child(1) a:hover i {
            background: #ff9800;
        }

        .footer-links li:nth-child(2) a:hover i {
            background: #00acc1;
        }

        .footer-links li:nth-child(3) a:hover i {
            background: #e91e63;
        }

        .footer-links li:nth-child(4) a:hover i {
            background: #7c4dff;
        }

        .footer-links li:nth-child(5) a:hover i {
            background: #43a047;
        }

        .contact-item {
            display: flex;
            align-items: flex-start;
            gap: 13px;
            margin-bottom: 17px;
        }

        .contact-icon {
            width: 38px;
            height: 38px;
            flex-shrink: 0;
            display: grid;
            place-items: center;
            border: 1px solid rgba(255,255,255,0.18);
            border-radius: 8px;
            color: #ffffff;
            background: rgba(255,255,255,0.08);
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.12);
        }

        .contact-item:nth-child(2) .contact-icon {
            color: #ffbf35;
        }

        .contact-item:nth-child(3) .contact-icon {
            color: #35d5ee;
        }

        .contact-item:nth-child(4) .contact-icon {
            color: #ff6f9e;
        }

        .contact-item p,
        .contact-item a {
            margin: 0;
            color: #c9ccd0;
            font-size: 14px;
            line-height: 1.65;
            text-decoration: none;
        }

        .contact-item a:hover {
            color: #ffffff;
        }

        .newsletter-box {
            margin-top: 22px;
            padding: 15px;
            border: 1px solid rgba(255,255,255,0.13);
            border-radius: 8px;
            background: rgba(0,0,0,0.18);
        }

        .newsletter-box p {
            margin-bottom: 12px;
            color: #d3d5d8;
            font-size: 13px;
            line-height: 1.6;
        }

        .newsletter-form {
            display: flex;
            overflow: hidden;
            border: 1px solid rgba(255,255,255,0.17);
            border-radius: 7px;
            background: rgba(255,255,255,0.07);
        }

        .newsletter-form input {
            width: 100%;
            min-width: 0;
            padding: 12px 13px;
            border: 0;
            outline: 0;
            color: #ffffff;
            background: transparent;
            font-size: 13px;
        }

        .newsletter-form input::placeholder {
            color: #aeb2b7;
        }

        .newsletter-form button {
            width: 48px;
            flex-shrink: 0;
            border: 0;
            color: #ffffff;
            background: linear-gradient(135deg, #ff9800, #e91e63);
            transition: 0.3s ease;
        }

        .newsletter-form button:hover {
            width: 55px;
            background: linear-gradient(135deg, #00bcd4, #7c4dff);
        }

        .service-times {
            margin-top: 22px;
        }

        .service-time {
            display: flex;
            justify-content: space-between;
            gap: 12px;
            margin-bottom: 10px;
            padding-bottom: 10px;
            border-bottom: 1px dashed rgba(255,255,255,0.14);
            color: #c9ccd0;
            font-size: 13px;
        }

        .service-time:last-child {
            margin-bottom: 0;
            border-bottom: 0;
        }

        .service-time strong {
            color: #ffffff;
            font-weight: 600;
        }

        .service-time span {
            color: #ffc94d;
            text-align: right;
        }

        .footer-social {
            display: flex;
            flex-wrap: wrap;
            gap: 9px;
            margin-top: 22px;
        }

        .footer-social a {
            width: 39px;
            height: 39px;
            display: grid;
            place-items: center;
            border: 1px solid rgba(255,255,255,0.15);
            border-radius: 8px;
            color: #ffffff;
            text-decoration: none;
            box-shadow: 0 8px 18px rgba(0,0,0,0.25);
            transition: transform 0.35s ease, box-shadow 0.35s ease;
        }

        .footer-social a:hover {
            transform: translateY(-6px) scale(1.06);
            box-shadow: 0 12px 25px rgba(0,0,0,0.4);
        }

        .facebook {
            background: #1877f2;
        }

        .instagram {
            background: linear-gradient(135deg, #833ab4, #e1306c, #fcb045);
        }

        .youtube {
            background: #ff0000;
        }

        .whatsapp {
            background: #25d366;
        }

        .x-twitter {
            background: #111111;
        }

        .footer-bottom {
            position: relative;
            z-index: 3;
            padding: 20px 0;
            border-top: 1px solid rgba(255,255,255,0.12);
            background: rgba(0,0,0,0.35);
        }

        .footer-bottom p {
            margin: 0;
            color: #aeb2b7;
            font-size: 13px;
        }

        .footer-bottom strong {
            color: #ffffff;
        }

        .footer-bottom-links {
            display: flex;
            justify-content: flex-end;
            flex-wrap: wrap;
            gap: 18px;
        }

        .footer-bottom-links a {
            color: #aeb2b7;
            font-size: 13px;
            text-decoration: none;
            transition: color 0.3s ease;
        }

        .footer-bottom-links a:hover {
            color: #ffc94d;
        }

        .floating-cross {
            position: absolute;
            z-index: 1;
            color: rgba(255,255,255,0.035);
            font-size: 170px;
            animation: crossFloat 8s ease-in-out infinite;
        }

        .cross-one {
            top: 15%;
            left: -25px;
        }

        .cross-two {
            right: -25px;
            bottom: 8%;
            animation-delay: -4s;
        }

        @keyframes crossFloat {
            0%, 100% {
                transform: translateY(0);
            }

            50% {
                transform: translateY(-25px);
            }
        }

        .footer-glow {
            position: absolute;
            width: 270px;
            height: 270px;
            border-radius: 50%;
            filter: blur(90px);
            opacity: 0.13;
            animation: glowMove 9s ease-in-out infinite alternate;
        }

        .glow-one {
            top: 25%;
            left: 10%;
            background: #ff9800;
        }

        .glow-two {
            right: 8%;
            bottom: 15%;
            background: #00bcd4;
            animation-delay: -3s;
        }

        @keyframes glowMove {
            from {
                transform: translate(0, 0) scale(0.9);
            }

            to {
                transform: translate(50px, -30px) scale(1.15);
            }
        }

        @media (max-width: 1199px) {
            .footer-gallery {
                grid-template-columns: repeat(3, 1fr);
            }

            .footer-photo:nth-child(4),
            .footer-photo:nth-child(5) {
                height: 185px;
            }
        }

        @media (max-width: 767px) {
            .footer-gallery-area {
                padding-top: 40px;
            }

            .footer-gallery {
                grid-template-columns: 1fr;
                gap: 13px;
            }

            .footer-photo,
            .footer-photo:nth-child(4),
            .footer-photo:nth-child(5) {
                height: 220px;
            }

            .footer-main {
                padding-top: 30px;
            }

            .footer-column {
                padding: 23px 18px;
            }

            .footer-bottom {
                text-align: center;
            }

            .footer-bottom-links {
                justify-content: center;
                margin-top: 12px;
            }
        }

        @media (max-width: 420px) {
            .footer-photo,
            .footer-photo:nth-child(4),
            .footer-photo:nth-child(5) {
                height: 195px;
            }

            .footer-brand {
                align-items: flex-start;
            }

            .footer-logo {
                width: 62px;
                height: 62px;
                font-size: 27px;
            }

            .footer-brand h3 {
                font-size: 17px;
            }
        }