﻿           /* Smooth Scrolling */
    html {
        scroll-behavior: smooth;
        background-color: #0B2447;
    }

    html, body {
        min-height: 100%;
    }

    body {
        margin: 0;
        padding: 0;
        min-height: 100vh;
        background-color: #0B2447;
    }


    /* Page Header Background */
    .page-header-bg {
        background-color: #0B2447;
        background-image:
            linear-gradient(to bottom, rgba(11, 36, 71, 0.9), rgba(11, 36, 71, 0.8)),
            url('hero.jpg');
        /* Reusing your hero image */
        background-size: cover;
        background-position: center;

        }



    /* Gold shimmer on headline */
    .text-gold-gradient {
      background: linear-gradient(to right, #D4AF37, #F3E5AB, #D4AF37);
      background-clip: text;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      background-size: 200% auto;
      animation: shine 5s linear infinite;
    }
    @keyframes shine { to { background-position: 200% center; } }

    /* Subtle pattern overlay */
    .pattern-overlay {
      background-image:
        linear-gradient(160deg, #0B2447 0%, #19376D 50%, #0B2447 100%),
        url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Ccircle cx='20' cy='20' r='1' fill='%23ffffff' fill-opacity='0.04'/%3E%3C/g%3E%3C/svg%3E");
      background-size: cover, 40px 40px;
      background-position: center, 0 0;
      background-repeat: no-repeat, repeat;
      background-attachment: fixed, fixed;
    }

    /* Custom select styling */
    .parish-select {
      appearance: none;
      -webkit-appearance: none;
      background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%230B2447' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
      background-repeat: no-repeat;
      background-position: right 16px center;
      background-size: 20px;
      padding-right: 48px;
    }

    /* Pillar card hover */
    .pillar-card { transition: transform 0.3s ease, box-shadow 0.3s ease; }
    .pillar-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,0.25); }

    /* Donate button pulse */
    .btn-donate {
      position: relative;
      overflow: hidden;
    }
    .btn-donate::after {
      content: '';
      position: absolute;
      inset: 0;
      background: rgba(255,255,255,0.15);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 0.3s ease;
    }
    .btn-donate:hover::after { transform: scaleX(1); }

    /* Fade-in animation */
    @keyframes fadeUp {
      from { opacity: 0; transform: translateY(24px); }
      to   { opacity: 1; transform: translateY(0); }
    }
    .fade-up { animation: fadeUp 0.7s ease-out both; }
    .delay-1 { animation-delay: 0.1s; }
    .delay-2 { animation-delay: 0.2s; }
    .delay-3 { animation-delay: 0.3s; }
    .delay-4 { animation-delay: 0.45s; }
    .delay-5 { animation-delay: 0.6s; }








/*  NEW CSS CHECK WITH THE ABOVE CSS */





 /* Smooth Scrolling */
        html {
            scroll-behavior: smooth;
            background-color: #0B2447;
        }

        body {
            margin: 0;
            padding: 0;
        }
        
        /* Custom Gradient Text */
        .text-gold-gradient {
            background: linear-gradient(to right, #D4AF37, #F3E5AB, #D4AF37);
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            background-size: 200% auto;
        }

        /* Hero Background Pattern */
        .hero-bg {
            background-color: #0B2447;
            background-image: 
                linear-gradient(to bottom, rgba(11, 36, 71, 0.7), rgba(11, 36, 71, 0.85)),
                url('https://www.bbcatholic.org.au/images/UserUploadedImages/13029/hero-2.jpg');
            background-size: cover;
            background-position: center 0%;
            background-attachment: fixed; /* Parallax effect */
        }

        header.hero-bg {
            margin-bottom: -1px;
        }
        
        /* NAVIGATION BAR STYLES */
        .dm-navigation {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            width: 100%;
            z-index: 1000;
            transition: background-color 0.3s ease, box-shadow 0.3s ease, backdrop-filter 0.3s ease;
            background-color: transparent;
        }

        .dm-navigation .container {
            display: grid;
            grid-template-columns: auto minmax(0, 1fr) auto;
            align-items: center;
            gap: 24px;
            padding: 18px 24px;
            transition: padding 0.3s ease;
        }

        .dm-navigation.scrolled .container {
            padding: 12px 24px;
        }

        .dm-navigation.scrolled {
            background-color: rgba(11, 36, 71, 0.94);
            backdrop-filter: blur(10px);
            box-shadow: 0 10px 30px rgba(7, 26, 52, 0.25);
        }

        #logo-container {
            min-width: 150px;
        }

        .dm-logo {
            display: inline-flex;
            align-items: center;
        }

        #logo-container img {
            max-height: 52px;
            width: auto;
        }

        .dm-menu {
            min-width: 0;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .dm-menu > div,
        .dm-menu .hmenu,
        .dm-menu .hmenu > li,
        .dm-menu .hmenu > li > a,
        .dm-menu .hmenu > li > a > span {
            background: transparent !important;
            box-shadow: none !important;
        }

        .dm-menu-toggle {
            display: none;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            gap: 4px;
            width: 46px;
            height: 46px;
            border: 1px solid rgba(255, 255, 255, 0.24);
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.08);
            color: #ffffff;
            cursor: pointer;
            transition: background-color 0.2s ease, border-color 0.2s ease;
        }

        .dm-menu-toggle:hover {
            background: rgba(255, 255, 255, 0.16);
            border-color: rgba(255, 255, 255, 0.36);
        }

        .dm-menu-toggle-bar {
            display: block;
            width: 18px;
            height: 2px;
            background: currentColor;
            border-radius: 999px;
            transition: transform 0.2s ease, opacity 0.2s ease;
        }

 .dm-navigation.menu-open{ height: 100vh; }

        .dm-navigation.menu-open .dm-menu-toggle-bar:nth-child(1) {
            transform: translateY(6px) rotate(45deg);
        }

        .dm-navigation.menu-open .dm-menu-toggle-bar:nth-child(2) {
            opacity: 0;
        }

        .dm-navigation.menu-open .dm-menu-toggle-bar:nth-child(3) {
            transform: translateY(-6px) rotate(-45deg);
        }

        .dm-menu > .hmenu {
            list-style: none;
            margin: 0;
            padding: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 24px;
            width: 100%;
        }

        .dm-menu .hmenu li {
            position: relative;
            list-style: none;
        }

        .dm-menu .hmenu > li.iFOL193 {
            display: none !important;
        }

        .dm-menu .hmenu > li.iFOL1072 > ul {
            display: none !important;
        }

        .dm-menu .hmenu > li > a {
            display: inline-flex;
            align-items: center;
            min-height: 44px;
            color: #ffffff;
            text-decoration: none;
            font-weight: 700;
            font-size: 0.98rem;
            letter-spacing: 0.01em;
            border-bottom: 2px solid transparent;
            transition: color 0.2s ease, border-color 0.2s ease;
        }

        .dm-menu .hmenu > li > a:hover,
        .dm-menu .hmenu > li:hover > a,
        .dm-menu .hmenu > li.selected > a {
            color: #D4AF37;
            border-bottom-color: #D4AF37;
        }

        .dm-menu .hmenu > li > ul {
            position: absolute;
            left: 0;
            top: calc(100% + 12px);
            min-width: 270px;
            max-width: 320px;
            padding: 10px 0;
            margin: 0;
            background: #ffffff;
            border-radius: 14px;
            box-shadow: 0 18px 45px rgba(7, 26, 52, 0.2);
            opacity: 0;
            visibility: hidden;
            transform: translateY(8px);
            transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
            z-index: 30;
        }

        .dm-menu .hmenu > li:hover > ul,
        .dm-menu .hmenu > li:focus-within > ul {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }

        .dm-menu .hmenu > li > ul::before {
            content: '';
            position: absolute;
            top: -7px;
            left: 24px;
            width: 14px;
            height: 14px;
            background: #ffffff;
            transform: rotate(45deg);
            border-radius: 2px;
        }

        .dm-menu .hmenu > li > ul > li > a,
        .dm-menu .hmenu > li > ul > li > span,
        .dm-menu .hmenu ul ul a {
            display: block;
            padding: 10px 18px;
            color: #12335f;
            text-decoration: none;
            font-size: 0.92rem;
            font-weight: 600;
            line-height: 1.35;
            background: #ffffff;
            transition: background-color 0.2s ease, color 0.2s ease;
        }

        .dm-menu .hmenu > li > ul > li > a:hover,
        .dm-menu .hmenu ul ul a:hover,
        .dm-menu .hmenu ul li:hover > a {
            background: #f5f7fb;
            color: #0B2447;
        }

        .dm-menu .hmenu ul ul {
            position: absolute;
            top: 0;
            left: calc(100% + 8px);
            min-width: 260px;
            max-width: 320px;
            padding: 10px 0;
            margin: 0;
            background: #ffffff;
            border-radius: 14px;
            box-shadow: 0 18px 45px rgba(7, 26, 52, 0.18);
            opacity: 0;
            visibility: hidden;
            transform: translateX(8px);
            transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
            z-index: 31;
        }

        .dm-menu .hmenu ul li:hover > ul,
        .dm-menu .hmenu ul li:focus-within > ul {
            opacity: 1;
            visibility: visible;
            transform: translateX(0);
        }

        .dm-menu .hmenu ul li {
            position: relative;
        }

        .dm-menu .hmenu ul li.menu-parent > a,
        .dm-menu .hmenu ul li:has(ul) > a {
            padding-right: 34px;
        }

        .dm-menu .hmenu ul li:has(ul) > a::after {
            content: '›';
            position: absolute;
            right: 14px;
            top: 50%;
            transform: translateY(-50%);
            color: #6b7c93;
            font-size: 18px;
            line-height: 1;
        }

        .dm-donate-btn {
            justify-self: end;
        }

        .dm-donate-btn a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 10px 22px;
            background-color: #D4AF37;
            color: #0B2447;
            text-decoration: none;
            font-weight: 800;
            font-size: 0.95rem;
            border-radius: 999px;
            transition: transform 0.2s ease, background-color 0.2s ease, box-shadow 0.2s ease;
            box-shadow: 0 6px 16px rgba(212, 175, 55, 0.28);
            white-space: nowrap;
        }

        .dm-donate-btn a:hover {
            background-color: #E8C547;
            transform: translateY(-1px);
            box-shadow: 0 10px 22px rgba(212, 175, 55, 0.36);
        }

        /* Scroll Reveal Animation Classes */
        .reveal-up {
            opacity: 0;
            transform: translateY(40px);
            transition: opacity 0.8s ease-out, transform 0.8s ease-out;
            will-change: opacity, transform;
        }
        .reveal-up.active {
            opacity: 1;
            transform: translateY(0);
        }
        .delay-100 { transition-delay: 100ms; }
        .delay-200 { transition-delay: 200ms; }

        /* Keep image links clickable in card media areas */
        .py-24.bg-gray-50 .h-56.relative.overflow-hidden > a {
            display: block;
            height: 100%;
        }

        .py-24.bg-gray-50 .h-56.relative.overflow-hidden > .absolute.inset-0 {
            pointer-events: none;
        }

        @media (max-width: 1024px) {
            .dm-navigation .container {
                grid-template-columns: auto 1fr auto;
                gap: 16px;
                padding: 14px 20px;
            }

            .dm-menu > .hmenu {
                gap: 16px;
            }

            .dm-menu .hmenu > li > a {
                font-size: 0.92rem;
            }
        }

        @media (max-width: 768px) {
            .hero-bg {
                background-position: 56% 28%;
                background-attachment: scroll;
                background-size: cover;
            }

            header.hero-bg {
                min-height: 420px !important;
                height: clamp(420px, 74svh, 620px) !important;
            }

            .dm-navigation .container {
                grid-template-columns: minmax(0, 1fr) auto auto;
                gap: 12px;
                padding: 12px 16px;
            }

            #logo-container,
            .dm-donate-btn {
                justify-self: start;
            }

            .dm-menu-toggle {
                display: inline-flex;
                justify-self: end;
            }

            .dm-menu {
                grid-column: 1 / -1;
                width: 100%;
                display: none;
                justify-content: flex-start;
                padding: 6px 0 0;
            }

            .dm-navigation.menu-open {
                background-color: rgba(11, 36, 71, 0.97);
                backdrop-filter: blur(10px);
                box-shadow: 0 10px 30px rgba(7, 26, 52, 0.25);
            }

            .dm-navigation.menu-open .dm-menu {
                display: block;
            }

            .dm-menu > .hmenu {
                width: 100%;
                display: block;
                background: rgba(9, 28, 54, 0.92);
                border: 1px solid rgba(255, 255, 255, 0.1);
                border-radius: 18px;
                padding: 10px 0;
                box-shadow: 0 20px 36px rgba(7, 26, 52, 0.22);
            }

            .dm-menu .hmenu > li {
                width: 100%;
                border-top: 1px solid rgba(255, 255, 255, 0.08);
            }

            .dm-menu .hmenu > li:first-child {
                border-top: 0;
            }

            .dm-menu .hmenu > li > a {
                width: 100%;
                min-height: 0;
                padding: 12px 18px;
                border-bottom: 0;
                justify-content: space-between;
                font-size: 0.95rem;
            }

            .dm-menu .hmenu > li > a:hover,
            .dm-menu .hmenu > li.selected > a,
            .dm-menu .hmenu > li.submenu-open > a {
                color: #D4AF37;
                background: rgba(255, 255, 255, 0.04);
            }

            .dm-menu .hmenu li.has-children > a {
                position: relative;
                padding-right: 42px;
            }

            .dm-menu .hmenu li.has-children > a::after {
                content: '+';
                position: absolute;
                right: 18px;
                top: 50%;
                transform: translateY(-50%);
                color: rgba(255, 255, 255, 0.85);
                font-size: 18px;
                line-height: 1;
            }

            .dm-menu .hmenu > li.iFOL1072.has-children > a {
                padding-right: 18px;
            }

            .dm-menu .hmenu > li.iFOL1072.has-children > a::after {
                content: '';
                display: none;
            }

            .dm-menu .hmenu li.submenu-open > a::after {
                content: '-';
            }

            .dm-menu .hmenu > li > ul,
            .dm-menu .hmenu ul ul {
                position: static;
                min-width: 0;
                max-width: none;
                display: none;
                opacity: 1;
                visibility: visible;
                transform: none;
                box-shadow: none;
                background: rgba(255, 255, 255, 0.05);
                border-radius: 0;
                padding: 0;
                margin: 0;
            }

            .dm-menu .hmenu > li > ul::before {
                display: none;
            }

            .dm-menu .hmenu li.submenu-open > ul {
                display: block;
            }

            .dm-menu .hmenu > li > ul > li > a,
            .dm-menu .hmenu .hmenu ul ul a,
            .dm-menu .hmenu ul ul a {
                color: #e4ebf5;
                background: transparent;
                padding: 10px 18px 10px 32px;
                font-size: 0.9rem;
            }

            .dm-menu .hmenu ul ul a {
                padding-left: 46px;
            }

            .dm-menu .hmenu ul li:hover > a,
            .dm-menu .hmenu > li > ul > li > a:hover,
            .dm-menu .hmenu ul ul a:hover {
                background: rgba(255, 255, 255, 0.06);
                color: #ffffff;
            }

            .dm-donate-btn a {
                padding: 8px 16px;
                font-size: 0.85rem;
            }

        }

        @media (max-width: 768px) and (orientation: landscape) {
            .hero-bg {
                background-position: center 34%;
                background-size: contain;
                background-repeat: no-repeat;
            }

            header.hero-bg {
                min-height: 220px !important;
                height: clamp(220px, 52svh, 340px) !important;
            }
        }