/* ==========================================================================
   ROTARY HDFC TMC DHARAMSHALA - CUSTOM DESIGNS & STYLE OVERRIDES
   ========================================================================== */

:root {
    /* Main Template Theme Color Overrides (harmonizes the whole website) */
    --careox-base: #0c3c7c;
    --careox-base-rgb: 12, 60, 124;
    --careox-secondary: #f7a81b;
    --careox-secondary-rgb: 247, 168, 27;

    /* Custom Design Tokens */
    --primary: #0c3c7c;
    --secondary: #f7a81b;
    --text: #161616;
    --light: #666;
    --text-muted: #686868;
    --white: #ffffff;
    --border: #e6e9ef;
    --soft: #f7f8fb;
    --shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    --radius: 20px;
}

/* ==========================================================================
   GLOBAL TYPOGRAPHY & RESET CONSTRAINTS
   ========================================================================== */

html,
body {
    overflow-x: hidden;
    scroll-behavior: smooth;
}

body {
    background: #ffffff;
    color: var(--text);
    font-family: 'Inter', sans-serif !important;
}

/* Apply unified font rules */
h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: 'DM Sans', sans-serif !important;
    font-weight: normal !important;
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
}

/* ==========================================================================
   UNIFIED TYPOGRAPHY SYSTEM (Aesthetics & Consistency Overrides)
   ========================================================================== */

/* 1. Body Text (16px) */
body,
p,
li,
input,
select,
textarea,
.organic-timeline__card-text,
.program-small-box p,
.method-card p,
.action-card__desc,
.testimonials-page__card__content {
    font-size: 16px !important;
}

/* 2. Section Heading (40px) */
.sec-title__title {
    font-size: 32px !important;
    /* Mobile Fallback */
}

@media (min-width: 768px) {
    .sec-title__title {
        font-size: 32px !important;
        /* Desktop View */
    }
}

/* 3. Card Title (22px) */
.action-card__title,
.action-card__title a,
.feature-three__item__title,
.feature-three__item__title a,
.donations-two__item__title,
.donations-two__item__title a,
.donation-simple-form__title,
.donation-panel-form__title,
.modern-team-card__content h3,
.modern-team-card__content h3 a,
.admin-team-card h3,
.organic-timeline__card-title,
.program-small-box h4,
.method-card h3,
.testimonials-page__card__name {
    font-size: 22px !important;
}

/* 4. Button (15px) */
.careox-btn,
.donation-simple-form__btn,
.donation-panel-form__btn,
.donation-panel-form__amount-btn,
.action-card__btn,
.impact-subscribe__btn,
.header-contact-btn,
.mobile-nav__btn,
.impact-btn,
.main-slider-four__video-btn,
button,
input[type="submit"],
.btn {
    font-size: 15px !important;
}

.careox-btn {
    z-index: 1;
}

/* 5. Small Text (14px) */
.sec-title__tagline,
.careox-breadcrumb li,
.careox-breadcrumb li a,
.careox-breadcrumb li span,
.organic-about__badge-desc,
.main-footer__copyright,
.main-footer__copyright span,
.main-footer__copyright a,
.service-three__cta__tag,
.modern-team-card__content span,
.admin-team-card span,
.donation-simple-form__text,
.donation-panel-form__summary span,
.organic-timeline__year,
.impact-subscribe__check span,
.impact-subscribe__note {
    font-size: 14px !important;
}

section {
    position: relative;
    overflow: hidden;
}

.container {
    max-width: 1240px;
}

/* ==========================================================================
   COMMON COMPACT SECTION PADDING
   ========================================================================== */

.donate-two,
.funfact-modern,
.donations-two,
.feature-three,
.gallery-one,
.why-choose-one,
.impact-subscribe,
.cta-two {
    padding: 55px 0 !important;
}

@media (max-width: 991px) {

    .donate-two,
    .funfact-modern,
    .donations-two,
    .feature-three,
    .gallery-one,
    .why-choose-one,
    .impact-subscribe,
    .cta-two {
        padding: 45px 0 !important;
    }
}

@media (max-width: 767px) {

    .donate-two,
    .funfact-modern,
    .donations-two,
    .feature-three,
    .gallery-one,
    .why-choose-one,
    .impact-subscribe,
    .cta-two {
        padding: 38px 0 !important;
    }
}

/* ==========================================================================
   HEADER LOGO & NAVIGATION OVERRIDES
   ========================================================================== */

/* Remove navigation bar link underline / hover animation */
.main-menu .main-menu__list>li>a::after {
    display: none !important;
}

.main-header__logo {
    display: flex;
    align-items: center;
    padding: 4px 0;
}

.main-header__logo img {
    max-height: 70px !important;
    width: auto !important;
    display: block;
    object-fit: contain;
    transition: all 0.3s ease;
}

@media (max-width: 991px) {
    .main-header__logo img {
        max-height: 56px !important;
    }
}

@media (max-width: 500px) {
    .main-header__logo img {
        max-height: 48px !important;
    }
}

/* ==========================================================================
   TITLE STYLING
   ========================================================================== */

.sec-title {
    margin-bottom: 30px !important;
}

.sec-title__title {
    font-size: 42px;
    line-height: 1.2;
    color: var(--text);
    margin-bottom: 12px;
    letter-spacing: -0.5px;
}

.sec-title p {
    color: var(--light);
    line-height: 1.6;
    font-size: 16px;
}

@media (max-width: 991px) {
    .sec-title__title {
        font-size: 34px;
    }
}

@media (max-width: 767px) {
    .sec-title {
        margin-bottom: 22px !important;
    }

    .sec-title__title {
        font-size: 28px;
    }
}

/* ==========================================================================
   SCROLL & LOAD FADE ANIMATIONS
   ========================================================================== */

@keyframes smoothFadeUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.fadeInUp,
.wow.fadeInUp {
    animation-name: smoothFadeUp !important;
    animation-duration: 0.8s !important;
    animation-fill-mode: both !important;
}

/* ==========================================================================
   HERO / MAIN SLIDER VIDEO SECTION
   ========================================================================== */

/* Core video hero height overrides for responsiveness and absolute position locking */
.main-slider-four--video-only,
body.fixed-menu-page .main-slider-four--video-only {
    height: 60vh !important;
    min-height: 480px !important;
    position: relative !important;
    overflow: hidden !important;
}

@supports (height: 100dvh) {

    .main-slider-four--video-only,
    body.fixed-menu-page .main-slider-four--video-only {
        height: 60dvh !important;
        min-height: 480px !important;
    }
}

@media (max-width: 767px) {

    .main-slider-four--video-only,
    body.fixed-menu-page .main-slider-four--video-only {
        height: 60vh !important;
        min-height: 420px !important;
    }

    @supports (height: 100dvh) {

        .main-slider-four--video-only,
        body.fixed-menu-page .main-slider-four--video-only {
            height: 60dvh !important;
            min-height: 420px !important;
        }
    }
}

/* Ensure background video is fixed inside container without layout jumps */
.main-slider-four__video {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    z-index: 0 !important;
    pointer-events: none !important;
}

.main-slider-four__video-overlay {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Ensure mobile content fits safely with horizontal padding */
.main-slider-four__video-content {
    position: relative;
    padding: 0 20px;
    width: 100%;
    z-index: 3;
    animation: smoothFadeUp 1s cubic-bezier(0.25, 1, 0.5, 1) forwards;
}

/* Premium decorative shape positioned centered on top of the main heading */
.main-slider-four__video-shape {
    position: relative;
    display: block;
    margin: 0 auto 24px auto;
    width: 160px;
    height: auto;
    pointer-events: none;
    z-index: 2;
    opacity: 0;
    animation: smoothFadeUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.1s both;
}

@media (max-width: 1199px) {
    .main-slider-four__video-shape {
        width: 140px;
        margin-bottom: 20px;
    }
}

@media (max-width: 991px) {
    .main-slider-four__video-shape {
        width: 120px;
        margin-bottom: 18px;
    }
}

@media (max-width: 767px) {
    .main-slider-four__video-shape {
        width: 100px;
        margin-bottom: 15px;
    }
}

@media (max-width: 480px) {
    .main-slider-four__video-shape {
        width: 80px;
        margin-bottom: 12px;
    }
}

.main-slider-four__video-title {
    color: #f7a81b !important;
    font-size: 43px;
    line-height: 1.15;
    margin-bottom: 18px;
    font-weight: 10 !important;
    animation: smoothFadeUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.15s both;
}

.main-slider-four__video-text {
    font-size: 16px;
    line-height: 1.7;
    animation: smoothFadeUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.3s both;
}

.main-slider-four__video-btn {
    animation: smoothFadeUp 1s cubic-bezier(0.25, 1, 0.5, 1) 0.45s both;
}

@media (max-width: 991px) {
    .main-slider-four__video-title {
        font-size: 42px;
    }

    .main-slider-four__video-text {
        font-size: 16px;
    }
}

@media (max-width: 767px) {
    .main-slider-four__video-title {
        font-size: 30px;
        margin-bottom: 12px;
    }

    .main-slider-four__video-text {
        font-size: 14px;
        line-height: 1.6;
    }
}

/* ==========================================================================
   DONATION SECTION & FORM
   ========================================================================== */

.donate-two {
    background: var(--brand-offwhite) !important;
    /* padding: 80px 0 !important; */
}

.donate-two .sec-title__title {
    font-size: 43px !important;
    line-height: 1.25 !important;
}

.donate-two__title {
    font-size: 24px !important;
    line-height: 1.5;
}

@media (max-width: 1199px) {
    .donate-two .sec-title__title {
        font-size: 38px !important;
    }
}

@media (max-width: 991px) {
    .donate-two .sec-title__title {
        font-size: 34px !important;
    }

    .donate-two__title {
        font-size: 20px !important;
    }
}

@media (max-width: 767px) {
    .donate-two .sec-title__title {
        font-size: 28px !important;
    }

    .donate-two__title {
        font-size: 18px !important;
    }
}

@media (max-width: 480px) {
    .donate-two .sec-title__title {
        font-size: 24px !important;
    }

    .donate-two__title {
        font-size: 16px !important;
    }
}

.donate-two .row {
    align-items: stretch !important;
}

.donate-two .col-lg-6 {
    display: flex;
}

/* Redesigned Premium Donation Form */
.donation-simple-form {
    width: 100%;
    height: 100%;
    background: var(--soft);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    padding: 20px 24px;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin: 0 !important;
}

.donation-simple-form__title {
    font-size: 22px;
    font-weight: 500 !important;
    margin-bottom: 4px;
    color: var(--text);
}

.donation-simple-form__text {
    font-size: 13px;
    line-height: 1.5;
    color: var(--light);
    margin-bottom: 14px;
}

.donation-simple-form__frequency {
    display: flex;
    gap: 12px;
    margin-bottom: 12px;
}

.donation-simple-form__radio {
    flex: 1;
}

.donation-simple-form__radio input {
    display: none;
}

.donation-simple-form__radio span {
    height: 42px;
    border: 2px solid #ffa415;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    color: var(--primary);
    font-weight: 600;
    transition: all 0.3s ease;
    cursor: pointer;
    font-size: 14px;
}

.donation-simple-form__radio span:hover {
    background: rgba(12, 60, 124, 0.05);
}

.donation-simple-form__radio input:checked+span {
    background: #ffa415;
    color: #ffffff;
}

.donation-simple-form__group {
    margin-bottom: 12px;
}

.donation-simple-form__group input,
.donation-simple-form__select {
    width: 100%;
    height: 44px;
    border-radius: 8px;
    border: 1px solid #d9dfeb;
    padding: 0 14px;
    background: #ffffff;
    font-size: 14px;
    color: var(--text);
    transition: all 0.3s ease;
}

.donation-simple-form__group input:focus,
.donation-simple-form__select:focus {
    outline: none;
    border-color: var(--primary);
    box-shadow: 0 0 0 4px rgba(12, 60, 124, 0.08);
}

.donation-simple-form__btn {
    width: 100%;
    height: 44px;
    border: none;
    border-radius: 8px;
    background: var(--primary);
    color: #ffffff;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
    cursor: pointer;
    margin-top: 4px;
}

.donation-simple-form__btn:hover {
    background: var(--secondary);
}

/* Calculated Amount Box styling */
.donation-amount-box {
    background: #fdfbf7;
    border: 1px dashed var(--secondary, #f7a81b);
    border-radius: 8px;
    padding: 8px 14px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
}

.donation-amount-label {
    font-size: 11px;
    font-weight: 700;
    color: var(--primary, #0c3c7c);
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.donation-amount-display {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: var(--heading-font, sans-serif);
}

.donation-amount-display .currency-symbol {
    font-size: 20px;
    font-weight: 800;
    color: var(--secondary, #f7a81b);
}

.donation-amount-display .amount-value {
    font-size: 20px;
    font-weight: 800;
    color: var(--secondary, #f7a81b);
    line-height: 1;
}

/* Equal Height Left-Right Alignment */
.donate-two__image {
    width: 100%;
    border-radius: var(--radius);
    overflow: hidden;
    height: 100%;
    box-shadow: var(--shadow);
    position: relative;
}

.donate-two__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media (max-width: 991px) {
    .donation-simple-form {
        height: auto;
        min-height: auto;
        padding: 25px;
    }

    .donate-two__image {
        height: 380px;
        margin-top: 25px;
    }
}

@media (max-width: 767px) {
    .donation-simple-form {
        padding: 20px;
        height: auto;
        min-height: auto;
    }

    .donation-simple-form__frequency {
        flex-direction: column;
        gap: 8px;
    }

    .donate-two__image {
        height: 280px;
    }

    .donate-two__title {
        font-size: 18px !important;
    }
}

/* ==========================================================================
   OUR WORK / FUNFACT MODERN GRID (5 Columns Horizontal Desktop Layout)
   ========================================================================== */

/*=============================
    FUNFACT MODERN SECTION
=============================*/
/*========================================
    FUNFACT MODERN SECTION
========================================*/

.funfact-modern {
    position: relative;
    padding: 55px 35px;
    background: #ffffff !important;
    overflow: hidden;

}

.funfact-modern .container-fluid {
    max-width: 1380px;
    margin: 0 auto;
    padding: 0;

}

/*========================================
    MAIN GRID
========================================*/

.funfact-modern__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    align-items: stretch;
    width: 100%;
}

/*========================================
    LEFT SIDE
========================================*/

.funfact-modern__left {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 45px;
    padding-right: 60px;
    border-right: 1px solid #d8d8d8;
}

/*========================================
    RIGHT SIDE
========================================*/

.funfact-modern__right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 45px;
    padding-left: 60px;
}

/*========================================
    CARD
========================================*/

.funfact-modern__card {
    position: relative;
    text-align: center;
    width: 100%;
    max-width: 360px;
}

/*========================================
    NUMBER
========================================*/

.funfact-modern__number {
    font-size: 50px;
    line-height: 1;
    font-weight: 300;
    margin: 0 auto 15px;
    padding-bottom: 14px;
    border-bottom: 1px solid #d8d8d8;
    letter-spacing: -2px;
    font-family: var(--heading-font, sans-serif);
    color: #ffa415;
    text-align: center;
}

/*========================================
    META
========================================*/

.funfact-modern__meta {
    position: relative;
    padding-left: 30px;
    padding-right: 30px;
    text-align: center;
    width: 100%;
}

/* TEXT */
.funfact-modern__text {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
    color: #111;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    display: inline-block;
}

/* ICON */
.funfact-modern__icon {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.funfact-modern__icon img {
    width: 18px;
    height: 18px;
    object-fit: contain;
    opacity: 1 !important;
    filter: brightness(0) saturate(100%) invert(72%) sepia(61%) saturate(2975%) hue-rotate(343deg) brightness(101%) contrast(110%);
}

/*========================================
    TABLET
========================================*/

@media (max-width: 991px) {

    .funfact-modern {
        padding: 50px 25px;
    }

    .funfact-modern__grid {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .funfact-modern__left {
        border-right: 0;
        border-bottom: 1px solid #d8d8d8;
        padding-right: 0;
        padding-bottom: 40px;
        gap: 35px;
    }

    .funfact-modern__right {
        padding-left: 0;
        padding-top: 40px;
        gap: 35px;
    }

    .funfact-modern__number {
        font-size: 46px;
    }

    .funfact-modern__card {
        margin: 0 auto;
    }

    .funfact-modern__meta {
        padding-left: 0;
        padding-right: 0;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .funfact-modern__icon {
        position: static;
        transform: none;
        margin-top: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
}

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

@media (max-width: 767px) {

    .funfact-modern {
        padding: 40px 18px;
    }

    .funfact-modern__grid {
        gap: 0;
    }

    .funfact-modern__left {
        gap: 30px;
        padding-bottom: 30px;
    }

    .funfact-modern__right {
        gap: 30px;
        padding-top: 30px;
    }

    .funfact-modern__number {
        font-size: 38px;
        padding-bottom: 12px;
        margin-bottom: 12px;
    }

    .funfact-modern__text {
        font-size: 13px;
    }

    .funfact-modern__icon img {
        width: 16px;
        height: 16px;
    }
}



/* ==========================================================================
   READY TO ACTION SECTION (Owl Carousel stage display flex overrides)
   ========================================================================== */






/* =========================
   FEATURE CARD DESIGN
========================= */
/*================================================
READY TO TAKE ACTION SECTION
================================================*/

.donations-two {
    background: linear-gradient(135deg, #f2e0c6 0%, #91badd 100%);
    padding: 90px 25px;
    position: relative;
    overflow: hidden;
}

.donations-two .container-fluid {
    max-width: 1450px;
    margin: auto;
}

/*========================================
SECTION TITLE
========================================*/

.donations-two .sec-title {
    margin-bottom: 55px;
}

.donations-two .sec-title__title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.2;
    color: #111;
    margin-bottom: 18px;
}

.donations-two .sec-title p {
    font-size: 18px;
    color: #555;
    line-height: 1.8;
    max-width: 750px;
    margin: auto;
}

/*========================================
GRID
========================================*/

.donations-action-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 30px;
    margin-top: 40px;
    margin-bottom: 40px;
    max-width: 1240px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 15px;
}

.action-card {
    background-color: #ffffff;
    /* Theme white background */
    border-radius: 24px;
    overflow: hidden;
    padding: 10px;
    box-shadow: 0 8px 25px rgba(12, 60, 124, 0.08);
    /* Soft theme-blue shadow */
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 1px solid rgba(12, 60, 124, 0.06);
}

.action-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 12px 30px rgba(12, 60, 124, 0.15);
}

.action-card__image-wrapper {
    position: relative;
    border-radius: 18px;
    overflow: hidden;
    height: 220px;
    /* background: linear-gradient(135deg, var(--careox-base, #0c3c7c) 0%, #1653a4 100%); */
    /* Theme Blue Gradient */
    display: flex;
    align-items: center;
    justify-content: center;

}

.action-card__image-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.action-card:hover .action-card__image-wrapper img {
    transform: scale(1.06);
}

.action-card__body {
    padding: 20px 8px 8px 8px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.action-card__header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
    gap: 10px;
}

.action-card__title {
    font-size: 19px;
    font-weight: 700;
    color: var(--careox-base, #0c3c7c);
    /* Theme Blue */
    margin: 0;
    line-height: 1.3;
}

.action-card__title a {
    color: var(--careox-base, #0c3c7c);
    text-decoration: none;
    transition: color 0.3s;
}

.action-card__title a:hover {
    color: var(--careox-secondary, #f7a81b);
    /* Theme Gold */
}

.action-card__badge {
    background: var(--careox-secondary, #f7a81b);
    /* Theme Gold */
    color: #ffffff;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    box-shadow: 0 4px 10px rgba(247, 168, 27, 0.15);
}

.action-card__desc {
    font-size: 14px;
    line-height: 1.6;
    color: #555555;
    margin-bottom: 20px;
    flex-grow: 1;
}

.action-card__btn-wrapper {
    margin-top: auto;
}

.action-card__btn {
    display: block;
    width: 100%;
    text-align: center;
    background: var(--careox-base, #0c3c7c) !important;
    /* Theme Blue */
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 700;
    padding: 12px 20px;
    border-radius: 30px;
    text-decoration: none;
    transition: background-color 0.3s, color 0.3s, transform 0.2s, box-shadow 0.3s;
    border: none;
    box-shadow: 0 5px 15px rgba(12, 60, 124, 0.2);
}

.action-card__btn:hover {
    background: var(--careox-secondary, #f7a81b) !important;
    /* Theme Gold */
    color: #ffffff !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(247, 168, 27, 0.3);
}

/* Responsiveness overrides for button scaling to prevent layout clipping */
@media (max-width: 1280px) {
    .action-card__btn {
        font-size: 14px;
        padding: 10px 15px;
    }
}

@media (max-width: 1199px) {
    .action-card__btn {
        font-size: 15px;
        padding: 12px 20px;
    }
}

@media (max-width: 480px) {
    .action-card__btn {
        font-size: 14px;
        padding: 10px 15px;
    }
}

/* Responsiveness overrides */
@media (max-width: 1199px) {
    .donations-action-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

@media (max-width: 767px) {
    .donations-action-grid {
        grid-template-columns: 1fr;
        gap: 20px;
        margin-top: 30px;
        margin-bottom: 30px;
    }
}

/* ==========================================================================
   RESIDENT FEEDBACK / TESTIMONIAL OVERRIDES
   ========================================================================== */

.why-choose-one {
    position: relative;
    background: #ffffff !important;
}

.why-choose-one__bg,
.why-choose-one__shape {
    display: none !important;
}

.why-choose-one__bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #0640839e !important;
}

/* Testimonial Cards Layout and Spacing overrides */
.testimonials-page__card {
    background: #ffffff !important;
    border-radius: var(--radius) !important;
    padding: 20px 20px !important;
    box-shadow: var(--shadow) !important;
    border: 1px solid var(--border) !important;
    text-align: center;
    margin-top: 0 !important;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    transition: transform 0.3s ease;
}

.testimonials-page__card:hover {
    transform: translateY(-5px);
}

/* Profile Photo Sizing and relative flow centering */
.testimonials-page__card__image {
    position: relative !important;
    left: unset !important;
    top: unset !important;
    margin: 0 auto 20px !important;
    width: 90px !important;
    height: 90px !important;
    border: none !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.testimonials-page__card__image img {
    width: 90px !important;
    height: 90px !important;
    border-radius: 50% !important;
    border: 4px solid var(--secondary) !important;
    object-fit: cover !important;
    transition: all 0.3s ease;
}

.testimonials-page__card:hover .testimonials-page__card__image img {
    transform: scale(1.05);
}

.testimonials-page__card__content {
    color: #444444 !important;
    line-height: 1.7 !important;
    font-size: 15px !important;
    font-style: italic;
    margin-bottom: 22px !important;
    flex-grow: 1;
}

.testimonials-page__card__name {
    font-size: 22px !important;
    color: var(--primary) !important;
    font-weight: 500 !important;
    margin-bottom: 6px !important;
}

/* Custom layout for quote icons */
.testimonials-page__card__quote {
    position: relative !important;
    right: unset !important;
    bottom: unset !important;
    font-size: 36px !important;
    line-height: 1 !important;
    margin: 15px auto 0 !important;
    display: inline-block !important;
    color: var(--secondary) !important;
    opacity: 0.22 !important;
    -webkit-text-fill-color: var(--secondary) !important;
    -webkit-text-stroke-width: 0px !important;
}

@media (max-width: 767px) {
    .testimonials-page__card {
        padding: 30px 20px !important;
    }

    .testimonials-page__card__image {
        width: 80px !important;
        height: 80px !important;
        margin-bottom: 16px !important;
    }

    .testimonials-page__card__image img {
        width: 80px !important;
        height: 80px !important;
    }

    .testimonials-page__card__name {
        font-size: 19px !important;
    }
}

/* ==========================================================================
   IMPACT SUBSCRIBE FORM
   ========================================================================== */

.impact-subscribe {
    background: var(--brand-offwhite, #FDFBF7) !important;
}

.impact-subscribe__inner {
    background: #ffffff;
    border-radius: var(--radius);
    padding: 38px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border);
}

.impact-subscribe__title {
    font-size: 32px;
    margin-bottom: 8px;
    color: var(--text);
    font-weight: 500 !important;
}

.impact-subscribe__text {
    color: var(--light);
    font-size: 15px;
}

.impact-subscribe__label {
    font-size: 13px;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 6px;
    display: block;
}

.impact-subscribe__input,
.impact-subscribe__select {
    width: 100%;
    height: 48px;
    border-radius: 12px;
    border: 1px solid #d9dfeb;
    background: #ffffff;
    color: var(--text);
    transition: all 0.3s ease;
}

.impact-subscribe__input {
    padding: 0 16px;
    font-size: 14.5px;
}

.impact-subscribe__select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 24 24' fill='none' stroke='%230c3c7c' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 6px center;
    background-size: 10px 10px;
    padding: 0 16px 0 8px;
    font-size: 13.5px;
    text-align: center;
    text-align-last: center;
    cursor: pointer;
}

.impact-subscribe__birthday {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
}

.impact-subscribe__check {
    display: inline-flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}

.impact-subscribe__check input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin-top: 2px;
    accent-color: var(--primary);
    flex-shrink: 0;
    cursor: pointer;
}

.impact-subscribe__check span {
    font-size: 14px !important;
    line-height: 1.4 !important;
    color: #444444;
}

.impact-subscribe__btn {
    height: 48px;
    border-radius: 30px;
    border: none;
    background: var(--primary);
    color: #ffffff;
    font-weight: 700;
    font-size: 15px !important;
    padding: 0 35px;
    transition: all 0.3s ease;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(12, 60, 124, 0.15);
    white-space: nowrap;
}

.impact-subscribe__btn:hover {
    background: var(--secondary);
    box-shadow: 0 6px 20px rgba(247, 168, 27, 0.25);
    transform: translateY(-1px);
}

@media (max-width: 991px) {
    .impact-subscribe__btn {
        width: 100%;
        margin-top: 10px;
    }
}

@media (max-width: 767px) {
    .impact-subscribe__inner {
        padding: 24px;
    }

    .impact-subscribe__title {
        font-size: 26px;
    }
}

/* ==========================================================================
   SECONDARY CTA ROW
   ========================================================================== */

/* .service-three__cta {
    background: linear-gradient(135deg, var(--secondary), #f9b62c) !important;
    border-radius: 20px;
    padding: 30px 40px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    box-shadow: var(--shadow);
    border: none !important;
}

.service-three__cta__title {
    color: #ffffff;
    font-size: 30px !important;
    line-height: 1.35;
    margin-top: 8px;
    font-weight: 500 !important;
} */

/* .service-three__cta__tag {
    background: rgba(255, 255, 255, 0.18);
    color: #ffffff;
    border-radius: 100px;
    padding: 6px 14px;
    display: inline-block;
    font-size: 11px;
    letter-spacing: 1px;
    font-weight: 600;
    text-transform: uppercase;
} */

/* .service-three__cta .careox-btn {
    background: var(--primary) !important;
    color: #ffffff !important;
    border-radius: 12px;
    font-weight: 600;
}

.service-three__cta .careox-btn:hover {
    background: #092e60 !important;
} */

/* @media (max-width: 991px) {
    .service-three__cta {
        flex-direction: column;
        text-align: center;
        padding: 30px !important;
    }

    .service-three__cta__title {
        font-size: 24px !important;
    }
} */

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

.main-footer {
    padding-top: 15px !important;
    background-color: #ffffff !important;
}

.main-footer .container.pt-5 {
    padding-top: 20px !important;
}

.main-footer__bottom {
    margin-top: 30px !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.footer-widget__logo img {
    max-width: 280px;
}

/* ==========================================================================
   ORGANIC OVERLAPPING IMAGE BLOCK (FROM ABOUT US)
   ========================================================================== */
/* ==============================
   IMAGE + FORM ALIGNMENT FIX
=================================*/

.organic-about__image-block {
    position: relative;
    width: 100%;
    height: 400px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    margin: 0;
}

/* Layout-aware padding for left-aligned vs right-aligned images */
.row>.col-lg-6:first-child .organic-about__image-block {
    padding-right: 20px;
    padding-left: 0;
}

.row>.col-lg-6:last-child .organic-about__image-block {
    padding-left: 20px;
    padding-right: 0;
}

.organic-about__back-card {
    position: absolute;
    top: -12px;
    background: #F8EED3;
    border: 2px solid var(--secondary);
    border-radius: 30px;
    z-index: 1;
    bottom: 12px;
}

/* Layout-aware back card offsets for consistency relative to the padded images */
.row>.col-lg-6:first-child .organic-about__back-card {
    left: -12px;
    right: 32px;
}

.row>.col-lg-6:last-child .organic-about__back-card {
    left: 8px;
    right: 12px;
}

.organic-about__img-container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    border-radius: 26px;
    overflow: hidden;
    border: 6px solid #fff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.organic-about__main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s ease;
    display: block;
}

.organic-about__image-block:hover .organic-about__main-img {
    transform: scale(1.04);
}

/* Floating Badge */
.organic-about__floating-badge {
    position: absolute;
    background: #fff;
    padding: 14px 20px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    gap: 14px;
    z-index: 3;
    border-bottom: 4px solid var(--secondary);
    width: max-content;
    max-width: 90%;

    /* Mobile / Fallback Centered Bottom Position */
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    top: auto;
    right: auto;
}

/* Desktop positioning (768px and up) */
@media (min-width: 768px) {
    .row>.col-lg-6:first-child .organic-about__floating-badge {
        left: 20px;
        top: 20px;
        bottom: auto;
        right: auto;
        transform: none;
    }

    .row>.col-lg-6:last-child .organic-about__floating-badge {
        right: 20px;
        top: 20px;
        bottom: auto;
        left: auto;
        transform: none;
    }
}

.organic-about__badge-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(247, 168, 27, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--secondary);
    font-size: 22px;
    flex-shrink: 0;
}

.organic-about__badge-title {
    font-size: 16px;
    margin: 0;
    color: var(--primary);
    font-weight: 700;
    line-height: 1.2;
}

.organic-about__badge-desc {
    margin: 2px 0 0;
    font-size: 13px;
    color: #686868;
    line-height: 1.3;
}

/* Align row properly */
.donate-two .row {
    align-items: stretch;
}

/* Make both columns equal height on desktop */
@media (min-width: 992px) {
    .donate-two .col-lg-6 {
        display: flex;
    }

    .donation-simple-form,
    .donate-two .organic-about__image-block {
        height: 420px !important;
        margin: 0 !important;
    }
}

/* Tablet */
@media (max-width: 991px) {
    .organic-about__image-block {
        margin-top: 30px;
        padding-left: 0 !important;
        padding-right: 0 !important;
        height: auto !important;
        min-height: auto;
        width: 100%;
    }

    .row>.col-lg-6:first-child .organic-about__image-block,
    .row>.col-lg-6:last-child .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .organic-about__img-container {
        height: 320px;
        min-height: auto;
        width: 100%;
    }

    .organic-about__back-card {
        top: -12px;
        left: -12px;
        right: 12px;
        bottom: 12px;
        height: auto;
        width: auto;
    }

    .row>.col-lg-6:first-child .organic-about__back-card,
    .row>.col-lg-6:last-child .organic-about__back-card {
        left: -12px;
        right: 12px;
    }
}

/* Mobile */
@media (max-width: 767px) {

    .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100%;
    }

    .row>.col-lg-6:first-child .organic-about__image-block,
    .row>.col-lg-6:last-child .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .organic-about__back-card {
        display: none;
    }

    .organic-about__img-container {
        height: 250px;
        min-height: auto;
        border-width: 5px;
        width: 100%;
    }

    .organic-about__floating-badge {
        bottom: 15px;
        padding: 12px 16px;
        gap: 10px;
    }

    .organic-about__badge-icon {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    .organic-about__badge-title {
        font-size: 14px;
    }

    .organic-about__badge-desc {
        font-size: 12px;
    }
}

/* ==========================================================================
   CUSTOM HEADER CONTACT BUTTON & MOBILE FOOTER CENTERING OVERRIDES
   ========================================================================== */

/* Header Contact Button Style */
.header-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--careox-base, #0c3c7c);
    color: var(--careox-base, #0c3c7c) !important;
    font-size: 16px;
    font-weight: 700;
    font-family: 'DM Sans', sans-serif !important;
    padding: 0 24px;
    height: 48px;
    border-radius: 30px;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-right: 15px;
    letter-spacing: 0.25px;
    text-align: center;
    box-sizing: border-box;
}

.header-contact-btn:hover {
    background: var(--careox-base, #0c3c7c);
    color: #ffffff !important;
}

/* Hide Contact Button below 992px to prevent crowding with mobile menu toggler */
@media (max-width: 991px) {
    .header-contact-btn {
        display: none !important;
    }
}

/* ==========================================================================
   OPTIMIZED RESPONSIVE FOOTER STYLING (REDUCES EMPTY SPACE & ALIGNS TO THEME)
   ========================================================================== */

/* Global Footer hover and icon theme adjustments */
.main-footer .footer-widget__links li a:hover,
.main-footer .footer-widget__info li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer .footer-widget__info__icon {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Mobile & Tablet spacing overrides (removes excess empty vertical space) */
@media (max-width: 991px) {
    .main-footer {
        padding-top: 25px !important;
        padding-bottom: 10px !important;
    }

    .main-footer .container.pt-5 {
        padding-top: 15px !important;
    }

    .main-footer .footer-widget {
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__title {
        margin-top: 12px !important;
        margin-bottom: 15px !important;
        font-size: 20px !important;
    }

    .main-footer .footer-widget__text {
        margin-bottom: 15px !important;
        line-height: 1.5 !important;
    }

    .main-footer .footer-widget__links li {
        line-height: 32px !important;
    }

    .main-footer .footer-widget__info li {
        margin-bottom: 8px !important;
        line-height: 1.4 !important;
    }

    .main-footer__bottom {
        margin-top: 15px !important;
        padding-top: 10px !important;
    }

    .main-footer__bottom__inner {
        padding: 12px 0 !important;
    }
}

/* Tablet Footer Grid Optimization (eliminates horizontal empty spaces) */
@media (min-width: 768px) and (max-width: 1199px) {
    .main-footer .row>div:nth-child(1) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    .main-footer .row>div:nth-child(2) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(3) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(4) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    /* Format Contact Info widget to span horizontally on tablet */
    .main-footer .footer-widget--contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }

    .main-footer .footer-widget__info li {
        flex: 1 1 300px !important;
        margin-bottom: 0 !important;
        max-width: 450px !important;
    }

    .main-footer .footer-widget__social {
        margin-top: 30px !important;
    }
}

/* Mobile View Centering & Compact Overrides */
@media (max-width: 767px) {
    .main-footer {
        text-align: center !important;
    }

    .main-footer .footer-widget {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 10px auto !important;
    }

    .main-footer .footer-widget__text {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .main-footer .footer-widget__links {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__links li {
        text-align: center !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__info li {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 12px !important;
    }

    .main-footer .footer-widget__info__icon {
        position: static !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
        font-size: 18px !important;
    }

    .main-footer .footer-widget__social {
        justify-content: center !important;
        display: flex !important;
        margin-top: 12px !important;
        gap: 10px !important;
    }
}

/* ==========================================================================
   MOBILE & TABLET HEADER BUTTON SPACING & ALIGNMENT OVERRIDES
   ========================================================================== */
@media (max-width: 1199px) {
    .main-header__inner {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        width: 100% !important;
        padding-right: 0 !important;
    }

    .main-header__nav {
        display: none !important;
    }

    .main-header__right {
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
        margin-left: auto !important;
        margin-right: 0 !important;
        gap: 18px !important;
    }

    .main-header__right .mobile-nav__btn {
        order: 1 !important;
        margin: 0 !important;
    }

    .main-header__right .careox-btn {
        order: 2 !important;
        margin: 0 !important;
        white-space: nowrap !important;
    }
}

@media (max-width: 500px) {
    .main-header__right {
        gap: 15px !important;
    }

    .main-header__right .careox-btn {
        padding: 8px 12px !important;
        font-size: 13px !important;
    }
}

/* ==========================================================================
   UNIFIED SECTION TAGLINE OVERRIDES
   ========================================================================== */
.sec-title__tagline {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: var(--secondary, #f7a81b) !important;
    font-size: 14px !important;
    letter-spacing: 2px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-family: 'DM Sans', sans-serif !important;
    margin: 0 0 10px 0 !important;
}

.sec-title__tagline__border {
    width: 30px !important;
    height: 2px !important;
    background: var(--secondary, #f7a81b) !important;
    display: inline-block !important;
    position: relative !important;
    top: -4px !important;
    margin-right: 10px !important;
}

.sec-title__tagline__border::after {
    display: none !important;
    content: none !important;
}

/* ==========================================================================
   UNIFIED SECTION TITLE OVERRIDES
   ========================================================================== */
.sec-title__title {
    color: var(--primary, #0c3c7c) !important;
}

/* ==========================================================================
   UNIFIED ABOUT CONTENT DESCRIPTION OVERRIDES
   ========================================================================== */
.about-one__content__text {
    font-size: 16px !important;
    line-height: 1.75 !important;
    color: var(--text-muted, #686868) !important;
    font-weight: 400 !important;
}

/* ==========================================================================
   UNIFIED SECTION BACKGROUND OVERRIDES
   ========================================================================== */
.funfact-modern {
    background: #ffffff !important;
}

.donations-two {
    background: var(--brand-offwhite, #FDFBF7) !important;
}

.feature-three--alt {
    background: #ffffff !important;
}

/* ==========================================================================
   UNIFIED ORGANIC CTA OVERRIDES
   ========================================================================== */
.organic-cta {
    position: relative;
    padding: 100px 0 !important;
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    overflow: hidden;
}

.organic-cta__overlay {
    position: absolute;
    inset: 0;
    background: rgba(12, 60, 124, 0.72) !important;
    z-index: 1;
}

.organic-cta .container {
    position: relative;
    z-index: 2;
}

.organic-cta__content {
    max-width: 850px !important;
    margin: auto;
    text-align: center;
}

.organic-cta__title {
    color: #fff;
    font-size: clamp(28px, 4vw, 44px) !important;
    line-height: 1.25 !important;
    margin-bottom: 22px !important;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3) !important;
    letter-spacing: 0.5px !important;
    font-weight: 800 !important;
}

.organic-cta__text {
    color: rgba(255, 255, 255, 0.9) !important;
    line-height: 1.8 !important;
    font-size: 18px !important;
    margin-bottom: 35px !important;
    text-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
    letter-spacing: 0.2px !important;
    max-width: 850px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.organic-cta .careox-btn {
    padding: 14px 32px !important;
    font-size: 16px !important;
}

@media (max-width: 1199px) {
    .organic-cta {
        background-attachment: scroll !important;
    }
}

@media (max-width: 991px) {
    .organic-cta {
        padding: 75px 0 !important;
    }
}

@media (max-width: 767px) {
    .organic-cta {
        padding: 55px 0 !important;
    }

    .organic-cta__text {
        font-size: 16px !important;
    }
}

/* ==========================================================================
   HEADER NAVIGATION DROPDOWN DESIGN UPGRADES
   ========================================================================== */

/* Dropdown menu container with curved corners and theme top-border */
.main-menu .main-menu__list li ul {
    border-radius: 12px !important;
    border-top: 2px solid var(--careox-secondary, #f7a81b) !important;
    box-shadow: 0 10px 30px rgba(12, 60, 124, 0.1) !important;
    padding: 10px 10px 6px 10px !important;
    /* Compact padding */
    min-width: 210px !important;
    /* Smaller, cleaner width */
}

/* Dropdown items curved hover state and theme colors */
.main-menu .main-menu__list li ul li>a {
    border-radius: 6px !important;
    padding: 6px 12px !important;
    /* Smaller link spacing */
    font-size: 13px !important;
    /* Original clean text size */
    transition: all 0.2s ease-in-out !important;
    color: var(--careox-text, #555555) !important;
    letter-spacing: 0.3px !important;
}

/* Hover & Current state styles matching the overall site theme */
.main-menu .main-menu__list li ul li.current>a,
.main-menu .main-menu__list li ul li:hover>a {
    background-color: rgba(12, 60, 124, 0.07) !important;
    /* Soft theme blue background */
    color: var(--careox-base, #0c3c7c) !important;
    /* High contrast theme blue text */
}

/* Adjust indicator position to align with new padding */
.main-menu .main-menu__list li ul li>a::after {
    right: 12px !important;
    top: 6px !important;
    color: var(--careox-secondary, #f7a81b) !important;
}

/* ==========================================================================
   FOOTER LINK HOVER EFFECTS (REMOVE UNDERLINE & ADD GOLD HOVER)
   ========================================================================== */

.footer-widget__links li a,
.footer-widget__info li a {
    background: none !important;
    transition: color 0.3s ease !important;
}

.footer-widget__links li a:hover,
.footer-widget__info li a:hover {
    background-size: 0px 0px !important;
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer__copyright a {
    transition: color 0.3s ease !important;
}

.main-footer__copyright a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* ==========================================================================
   MOBILE NAVIGATION DRAWER THEME OVERRIDES
   ========================================================================== */

/* Mobile toggle hamburger button style customizer */
.mobile-nav__btn span {
    background-color: var(--careox-base, #0c3c7c) !important;
    /* Theme blue */
    transition: background-color 0.3s ease !important;
}

.mobile-nav__btn:hover span {
    background-color: var(--careox-secondary, #f7a81b) !important;
    /* Gold on hover */
}

/* Dark Navy Blue mobile drawer background */
/* margin-top pushes the panel (and X close button inside it) below the
   sticky header. Mobile header ≈ 80px → 85px works fine.
   Tablet header is taller (56px logo + 25px+25px inner padding ≈ 106-114px)
   so we use 115px there to keep the X button fully visible. */
.mobile-nav__content {
    background-color: #082c5c !important;
    /* Premium dark navy blue matching theme */
    padding-left: 20px !important;
    padding-right: 20px !important;
    margin-top: 85px !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
    .mobile-nav__content {
        margin-top: 115px !important;
    }
}

/* Premium white card container for the dark logo */
.mobile-nav__content .logo-box {
    background-color: #ffffff !important;
    padding: 12px 20px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;
    margin-bottom: 30px !important;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2) !important;
    width: 100% !important;
    /* Stretch to fill drawer width nicely */
    box-sizing: border-box !important;
}

.mobile-nav__content .logo-box img {
    max-height: 48px !important;
    width: auto !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Darker blue semi-transparent backdrop overlay */
.mobile-nav__overlay {
    background-color: #041630 !important;
    opacity: 0.65 !important;
}

/* Clean list divider styling */
.mobile-nav__content .main-menu__list li:not(:last-child) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.mobile-nav__content .main-menu__list ul {
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    background-color: rgba(255, 255, 255, 0.03) !important;
    /* Subtle background for nested dropdowns */
}

/* Mobile navigation link typography and default state */
.mobile-nav__content .main-menu__list li>a {
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 14px !important;
    font-family: 'DM Sans', sans-serif !important;
    font-weight: 600 !important;
    height: 48px !important;
    letter-spacing: 0.5px !important;
}

/* Mobile links active/hover state with Rotary Gold */
.mobile-nav__content .main-menu__list li:hover>a,
.mobile-nav__content .main-menu__list li a.expanded {
    color: var(--careox-secondary, #f7a81b) !important;
    /* Theme gold accent */
}

/* Mobile drop-down toggle button styling with Rotary Gold */
.mobile-nav__content .main-menu__list li a button {
    background-color: var(--careox-secondary, #f7a81b) !important;
    /* Theme gold background */
    color: #ffffff !important;
    border-radius: 6px !important;
    width: 32px !important;
    height: 32px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border: none !important;
}

.mobile-nav__content .main-menu__list li a button.expanded {
    background-color: #ffffff !important;
    color: #0c3c7c !important;
    /* Theme blue text when active */
}

/* Close icon button style and hover styling */
.mobile-nav__close {
    color: #ffffff !important;
    top: 20px !important;
    right: 20px !important;
    font-size: 22px !important;
    transition: color 0.3s ease !important;
}

.mobile-nav__close:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.mobile-nav__container {
    margin-top: 35px !important;
}

/* Contact information list in drawer */
.mobile-nav__contact li {
    color: rgba(255, 255, 255, 0.85) !important;
    font-size: 14px !important;
    font-family: 'DM Sans', sans-serif !important;
}

.mobile-nav__contact li i {
    color: var(--careox-secondary, #f7a81b) !important;
    /* Theme gold icon accent */
    margin-right: 10px !important;
}

.mobile-nav__contact li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Social icons layout and hover accent */
.mobile-nav__social a {
    color: rgba(255, 255, 255, 0.85) !important;
    transition: color 0.3s ease !important;
}

.mobile-nav__social a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Google Map styling overrides for responsiveness and theme alignment */
.google-map iframe {
    transition: all 0.4s ease;
}

.google-map:hover iframe {
    mix-blend-mode: normal !important;
}

@media (max-width: 767px) {
    .google-map iframe {
        height: 350px !important;
    }
}

/* ==========================================================================
   DONATION SECTION FORM & IMAGE ALIGNMENT + EQUAL BORDER PADDING
   ========================================================================== */

/* Outer container styling (equal grey border/padding on all sides) */
.donate-two__inner {
    padding: 30px !important;
    padding-top: 14px !important;
    border: 1px solid #e6e9ef !important;
    border-radius: 30px !important;
    background-color: #ffffff !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05) !important;
}

/* Row alignment reset to keep paddings symmetric */
.donate-two__inner .row {
    margin: 0 !important;
    padding: 0 !important;
}

.donate-two__inner .row>[class*="col-"] {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Ensure equal heights and clean alignments on desktop viewports */
@media (min-width: 992px) {
    .donate-two__inner .row {
        display: flex !important;
        align-items: stretch !important;
    }

    .donate-two__inner .row>.col-lg-6:first-child {
        padding-right: 15px !important;
        padding-left: 0 !important;
    }

    .donate-two__inner .row>.col-lg-6:last-child {
        padding-left: 15px !important;
        padding-right: 0 !important;
    }

    /* Force both boxes to have the exact same height and align properly */
    .donation-simple-form,
    .donate-two .organic-about__image-block {
        height: 420px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* Mobile & Tablet padding adjustments */
@media (max-width: 991px) {
    .donate-two__inner {
        padding: 20px !important;
        border-radius: 24px !important;
    }

    .donate-two__inner .row>.col-lg-6 {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .donate-two__inner .row>.col-lg-6:first-child {
        margin-bottom: 24px !important;
    }

    .donate-two .organic-about__image-block {
        height: auto !important;
        margin-top: 20px !important;
        margin-bottom: 0 !important;
    }

    .donation-simple-form {
        height: auto !important;
    }

    .donate-two .organic-about__img-container {
        height: 320px !important;
    }
}

/* ==========================================================================
   FORM OCCASION DROPDOWN & PATIENT FIELD ALIGNMENT & EQUAL WIDTH
   ========================================================================== */

/* Enforce equal sizing and premium appearance on form inputs and dropdowns */
.donation-simple-form__group input,
.donation-simple-form__select {
    width: 100% !important;
    height: 40px !important;
    border-radius: 10px !important;
    border: 1px solid #d9dfeb !important;
    padding: 0 14px !important;
    background: #ffffff !important;
    font-size: 14px !important;
    color: var(--text) !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
}

/* Premium styled select dropdown with clean theme arrow */
.donation-simple-form__select {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230c3c7c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 16px !important;
    padding-right: 40px !important;
}

/* Focus states */
.donation-simple-form__group input:focus,
.donation-simple-form__select:focus {
    outline: none !important;
    border-color: var(--primary, #0c3c7c) !important;
    box-shadow: 0 0 0 4px rgba(12, 60, 124, 0.08) !important;
}

/* Ensure all form boxes have consistent height (46px) and border radius (10px) */
.donation-simple-form__radio span {
    height: 40px !important;
    border-radius: 10px !important;
}

.donation-simple-form__btn {
    height: 40px !important;
    border-radius: 10px !important;
    margin-top: 0 !important;
}

/* Horizontal single-row styling for Calculated Amount Box (46px height) */
.donation-amount-box {
    background: #fdfbf7 !important;
    border: 1px dashed var(--secondary, #f7a81b) !important;
    border-radius: 10px !important;
    padding: 0 14px !important;
    height: 40px !important;
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 0 !important;
    box-sizing: border-box !important;
}

.donation-amount-label {
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--primary, #0c3c7c) !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.donation-amount-display {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.donation-amount-display .currency-symbol,
.donation-amount-display .amount-value {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--secondary, #f7a81b) !important;
    line-height: 1 !important;
}

/* Standardize vertical spacing to exactly 10px between rows */
.donation-simple-form__frequency,
.donation-simple-form__durations-row,
.donation-simple-form__custom-row,
.donation-simple-form__group {
    margin-bottom: 10px !important;
}

/* New donation form wireframe elements styling */
.donation-simple-form__durations-row {
    display: flex !important;
    gap: 12px !important;
    width: 100% !important;
}

.donation-simple-form__duration-btn {
    flex: 1 !important;
    cursor: pointer !important;
}

.donation-simple-form__duration-btn input {
    display: none !important;
}

.donation-simple-form__duration-btn span {
    height: 40px !important;
    border: 2px solid #ffa415 !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    color: var(--primary, #0c3c7c) !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    font-size: 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.donation-simple-form__duration-btn span:hover {
    background: rgba(12, 60, 124, 0.05) !important;
}

.donation-simple-form__duration-btn input:checked+span {
    background: #ffa415 !important;
    color: #ffffff !important;
}

.donation-simple-form__custom-row {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
    width: 100% !important;
}

.w-33 {
    flex: 0 0 calc(33.333% - 8px) !important;
    max-width: calc(33.333% - 8px) !important;
}

.w-66 {
    flex: 0 0 calc(66.666% - 4px) !important;
    max-width: calc(66.666% - 4px) !important;
}

.donation-simple-form__custom-input-wrap input {
    width: 100% !important;
    height: 40px !important;
    border-radius: 10px !important;
    border: 2px solid #d9dfeb !important;
    padding: 0 14px !important;
    background: #ffffff !important;
    font-size: 14px !important;
    color: var(--text-muted) !important;
    transition: all 0.3s ease !important;
    box-sizing: border-box !important;
    font-weight: 600 !important;
}

.donation-simple-form__custom-input-wrap input:focus {
    outline: none !important;
    border-color: var(--primary, #0c3c7c) !important;
    box-shadow: 0 0 0 4px rgba(12, 60, 124, 0.08) !important;
}

/* OR divider between Donate button and Special occasion button */
.donation-simple-form__or-text {
    text-align: center !important;
    font-size: 13px !important;
    color: var(--light, #888888) !important;
    margin: 2px 0 8px 0 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-weight: 500 !important;
    width: 100% !important;
}

.donation-simple-form__or-text::before,
.donation-simple-form__or-text::after {
    content: "" !important;
    flex: 1 !important;
    height: 1px !important;
    background: var(--border, #d9dfeb) !important;
    margin: 0 12px !important;
}

/* Special occasion button (Row 6) */
.donation-simple-form__special-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 40px !important;
    border: 2px solid var(--primary, #0c3c7c) !important;
    border-radius: 10px !important;
    background: transparent !important;
    color: var(--primary, #0c3c7c) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
    cursor: pointer !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

.donation-simple-form__special-btn:hover {
    background: var(--primary, #0c3c7c) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Adjust desktop height of donation block boxes to fit content perfectly */
@media (min-width: 992px) {

    .donation-simple-form,
    .donate-two .organic-about__image-block {
        height: 420px !important;
    }

    .donation-simple-form {
        padding: 15px 20px !important;
    }

    .donation-simple-form__title {
        font-size: 20px !important;
        margin-bottom: 2px !important;
    }

    .donation-simple-form__text {
        font-size: 13px !important;
        margin-bottom: 8px !important;
    }
}

/* Our Services section card text color muted overrides */
.feature-three--alt .feature-three__item__text {
    color: var(--text-muted) !important;
}

.feature-three--alt .feature-three__item__list li {
    color: var(--text-muted) !important;
}

/* ==========================================================================
   ALL MERGED PAGE STYLES (COMPLETE VERBATIM CONCATENATION)
   ========================================================================== */

/* --- BEGIN about_custom.css --- */
:root {
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-red: #ff5528;
    --brand-teal: #018d8d;
    --brand-cyan: #019fcb;

    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;

    --text-dark: #282828;
    --text-muted: #686868;

    --border-warm: #EADCB9;

    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
}



/* Container height/padding reductions across sections */
.premium-about,
.organic-timeline,
.organic-ps,
.feature-three,
.donations-two,
.modern-team-section,
.organic-sponsors {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
}

@media (max-width: 767px) {

    .premium-about,
    .organic-timeline,
    .organic-ps,
    .feature-three,
    .donations-two,
    .modern-team-section,
    .organic-sponsors {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }
}

/* =========================================================
   MODERN PAGE HERO
   ========================================================= */

.page-header {
    position: relative;
    min-height: 55vh !important;

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

    overflow: hidden;
    padding: 100px 0 60px !important;

    background-color: var(--brand-blue);
}

.page-header__bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.page-header__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;

}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 22px;

    text-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 16px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

.page-header::after {
    content: '';

    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;

    /* height: 30px; */

    background: #fff;


}

/* =========================================================
ABOUT SECTION
========================================================= */

.premium-about {
    position: relative;
    background: #fff;
}



.about-sub-card {
    background: #fdfbf7;
    border: 1px solid #eadcb9;
    border-radius: 12px;
    padding: 15px 20px;
    height: 90%;
    transition: all 0.3s ease;
}

.about-sub-card:hover {
    border-color: var(--brand-gold);
    box-shadow: 0 8px 20px rgba(12, 60, 124, 0.06);
    transform: translateY(-2px);
}





/* =========================================================
TIMELINE
========================================================= */

.organic-timeline {
    position: relative;
    padding: 35px 0 !important;

    background: var(--brand-offwhite);
}

.organic-timeline__container {
    position: relative;
    max-width: 1100px;
    margin: auto;
}

.organic-timeline__track {
    position: absolute;

    left: 50%;
    top: 0;
    bottom: 0;

    width: 4px;

    background-image: linear-gradient(to bottom,
            var(--brand-gold) 60%,
            transparent 40%);

    background-size: 2px 14px;

    transform: translateX(-50%);
}

.organic-timeline__row {
    position: relative;

    display: flex;
    align-items: center;

    margin-bottom: 30px;
}

.organic-timeline__col {
    width: 50%;
}

.organic-timeline__col--left {
    padding-right: 40px;
}

.organic-timeline__col--right {
    padding-left: 40px;
}

.organic-timeline__node {
    position: absolute;

    left: 50%;
    top: 50%;

    width: 16px;
    height: 16px;

    border-radius: 50%;

    background: #fff;
    border: 3px solid var(--brand-gold);

    transform: translate(-50%, -50%);

    z-index: 2;
}

.organic-timeline__card {
    background: #fff;

    border-radius: 16px;
    padding: 20px 25px;

    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);

    transition: 0.4s;
}

.organic-timeline__card:hover {
    transform: translateY(-5px);
}

.organic-timeline__card-header {
    display: flex;
    align-items: center;
    gap: 12px;

    margin-bottom: 12px;
}

.organic-timeline__card-icon {
    width: 48px;
    height: 48px;

    border-radius: 50%;
    background: rgba(247, 168, 27, 0.12);

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

    color: var(--brand-gold);
    font-size: 20px;
}

.organic-timeline__year {
    display: inline-block;

    background: var(--brand-gold);
    color: #fff;

    padding: 3px 12px;
    border-radius: 100px;

    font-size: 12px;
    font-weight: 700;
}

.organic-timeline__card-title {
    font-size: 22px;
    color: var(--brand-blue);
    margin: 8px 0 0;
}

.organic-timeline__card-text {
    color: var(--text-muted);
    line-height: 1.8;
    margin: 0;
}

/* =========================================================
PROBLEM SOLUTION
========================================================= */

.organic-ps {
    padding: 35px 0 !important;
}

.organic-ps__grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.organic-ps__card {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    padding: 0 !important;
    border-radius: 18px;
    overflow: hidden;
    transition: border-color 0.35s ease, box-shadow 0.35s ease;
}

.organic-ps__card:hover {
    box-shadow: 0 16px 40px rgba(12, 60, 124, 0.12);
}

.organic-ps__card-image-wrap {
    width: 42%;
    position: relative;
    overflow: hidden;
    min-height: 250px;
}

.organic-ps__card-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.organic-ps__card:hover .organic-ps__card-image {
    transform: scale(1.08);
}

.organic-ps__card-content {
    width: 58%;
    padding: 30px 35px;
    display: flex;
    flex-direction: column;
    /* justify-content: center; */
}

.organic-ps__card--problem {
    background: #fffdf5;
    border: 1.5px solid rgba(247, 168, 27, 0.3) !important;
}

.organic-ps__card--solution {
    background: #eef6ff;
    border: 1.5px solid rgba(12, 60, 124, 0.2) !important;
}

.organic-ps__card-tag {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.organic-ps__card-title {
    font-size: 24px;
    margin: 10px 0 15px;
    color: var(--brand-blue);
}

.organic-ps__card-text {
    color: var(--text-muted);
    line-height: 1.7;
    margin-bottom: 20px;
    font-size: 15px;
}

.organic-ps__list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.organic-ps__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding-left: 0;
    margin-bottom: 12px;

    color: var(--text-dark);
    line-height: 1.6;
    font-size: 14px;
}

.organic-ps__item-icon {
    font-size: 15px;
    margin-top: 3px;
    flex-shrink: 0;
}

.organic-ps__card--problem .organic-ps__item-icon {
    color: var(--brand-red);
}

.organic-ps__card--solution .organic-ps__item-icon {
    color: var(--brand-teal);
}

/* =========================================================
SPONSORS
========================================================= */

.organic-sponsors {
    padding: 100px 0;
    background: var(--brand-offwhite);
}

.sponsor-logo-item {
    height: 120px;

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

    background: #fff;

    border-radius: 20px;

    padding: 20px;

    transition: 0.4s;
}

.sponsor-logo-item img {
    max-height: 60px;
    width: auto !important;

    filter: grayscale(100%);
    opacity: 0.7;

    transition: 0.4s;
}

.sponsor-logo-item:hover {
    transform: translateY(-5px);
}

.sponsor-logo-item:hover img {
    filter: grayscale(0%);
    opacity: 1;
}


/* =========================================================
MODERN TEAM
========================================================= */

.modern-team-section {
    padding: 35px 0 !important;
    background: #f8fafc;
}

.modern-team-card {
    background: #fff;
    border-radius: 16px;
    /* padding: 34px 18px 28px; */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
    transition: 0.4s ease;
    height: 100%;
    min-height: 280px;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.modern-team-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
}

.modern-team-card__image {
    position: relative;
    width: 155px;
    height: 155px;
    border-radius: 50%;
    padding: 4px;
    background: #ffffff;
    box-shadow: 0 0 0 1.5px rgba(224, 159, 62, 0.35), 0 6px 18px rgba(0, 0, 0, 0.06);
    margin: 0 auto 16px;
    transition: 0.4s ease;
    flex-shrink: 0;
}

.modern-team-card:hover .modern-team-card__image {
    box-shadow: 0 0 0 1.5px var(--brand-gold), 0 8px 22px rgba(224, 159, 62, 0.25);
}

.modern-team-card__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
    transition: 0.5s ease;
}

.modern-team-card:hover .modern-team-card__image img {
    transform: scale(1.06);
}

.modern-team-card__content {
    position: relative;
    padding: 0;
    background: transparent;
    text-align: center;
    width: 100%;
}

.modern-team-card__content::before {
    display: none;
}

.modern-team-card__content h3 {
    font-size: 18px;
    color: var(--brand-blue) !important;
    margin-bottom: 6px;
    font-weight: 700;
    line-height: 1.3;
}

.modern-team-card__content span {
    color: var(--brand-gold);
    font-size: 13px;
    letter-spacing: 0.3px;
    font-weight: 600;
    line-height: 1.35;
    display: block;
}

.admin-team-card {
    background: #fff;
    border-radius: 14px;
    padding: 24px 16px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
    border-top: 3px solid var(--brand-gold);
    transition: 0.3s ease;
    height: 100%;
    min-height: 100px;
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.admin-team-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.admin-team-card h3 {
    font-size: 18px;
    color: var(--brand-blue) !important;
    margin-bottom: 6px;
    font-weight: 700;
    line-height: 1.3;
}

.admin-team-card span {
    color: var(--brand-gold);
    font-size: 13px;
    letter-spacing: 0.3px;
    font-weight: 600;
    line-height: 1.35;
    display: block;
}

/* =========================================================
BUTTON
========================================================= */

/* All .careox-btn buttons inherit the original pill-shaped style
   from careox.css (border-radius: 30px, blue ::before background).
   No overrides needed here. */

/* =========================================================
RESPONSIVE
========================================================= */

@media(max-width:1199px) {}

@media(max-width:991px) {

    .page-header {
        min-height: 65vh;
        padding: 150px 0 120px;
    }

    .organic-ps__grid {
        grid-template-columns: 1fr;
    }

    .gallery-intro-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }

    .modern-team-card {
        padding: 30px 14px 24px;
        min-height: 260px;
    }

    .modern-team-card__image {
        width: 145px;
        height: 145px;
        margin-bottom: 14px;
    }

    .admin-team-card {
        padding: 20px 12px;
        min-height: 95px;
    }
}

@media(max-width:767px) {

    .modern-team-card {
        padding: 26px 12px 22px;
        min-height: 250px;
    }

    .modern-team-card__image {
        width: 138px;
        height: 138px;
        margin-bottom: 14px;
    }

    .modern-team-card__content h3,
    .admin-team-card h3 {
        font-size: 16px;
        margin-bottom: 4px;
    }

    .modern-team-card__content span,
    .admin-team-card span {
        font-size: 12px;
    }
}

@media(max-width:575px) {

    .modern-team-card {
        padding: 22px 10px 18px;
        min-height: 235px;
        border-radius: 14px;
    }

    .modern-team-card__image {
        width: 132px;
        height: 132px;
        margin-bottom: 12px;
    }

    .modern-team-card__content h3,
    .admin-team-card h3 {
        font-size: 15px;
        margin-bottom: 3px;
    }

    .modern-team-card__content span,
    .admin-team-card span {
        font-size: 11px;
    }

    .admin-team-card {
        padding: 18px 10px;
        min-height: 90px;
    }
}

.organic-timeline__track {
    left: 20px;
}

.organic-timeline__row {
    flex-direction: column;
    align-items: flex-start;

    padding-left: 55px;
}

.organic-timeline__col {
    width: 100%;
    padding: 0 !important;
}

.organic-timeline__node {
    left: 20px;
    top: 30px;
}

}

@media(max-width:767px) {

    .page-header {
        min-height: 55vh;
        padding: 120px 0 100px;
    }

    .page-header::after {
        height: 0px;
    }

    .organic-about__floating-badge {
        position: relative;

        right: 0;
        bottom: 0;

        margin-top: 20px;
    }

    .modern-team-section,
    .organic-ps,
    .organic-timeline,
    .organic-sponsors {
        padding: 90px 0;
    }

    .organic-ps__card {
        padding: 30px;
    }

    .organic-ps__card-title {
        font-size: 26px;
    }
}

/* =========================================================
   ADDITIONAL REDESIGN OVERRIDES
   ========================================================= */

/* =========================================================
   MISSION & VISION CARD STYLING
   ========================================================= */
.about-feature-card {
    background: #ffffff;
    border: 1px solid rgba(12, 60, 124, 0.06);
    border-top: 4px solid var(--accent-color, var(--brand-blue));
    border-radius: 16px;
    padding: 25px;
    height: 100%;
    transition: all 0.3s ease;
    position: relative;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.03);
}

.about-feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(12, 60, 124, 0.08);
}

.about-feature-card__top {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.about-feature-card__icon {
    width: 48px;
    height: 48px;
    background: color-mix(in srgb, var(--accent-color, var(--brand-blue)) 100%, transparent);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.about-feature-card__icon img {
    max-height: 24px;
    max-width: 24px;
}

.about-feature-card__title {
    font-size: 22px;
    font-weight: 700;
    color: var(--brand-blue);
    margin: 0;
}

.about-feature-card__text {
    font-size: 15px;
    line-height: 1.6;
    color: var(--text-muted);
    margin: 0;
}

/* =========================================================
   "WHAT MAKES US UNIQUE" GRID & CARDS (BEYOND SHELTER)
   ========================================================= */
.unique-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    margin-top: 30px;
}

.unique-card {
    background: #ffffff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 25px rgba(12, 60, 124, 0.04);
    border: 1px solid rgba(12, 60, 124, 0.08);
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    flex: 0 0 calc(33.333% - 20px);
    width: calc(33.333% - 20px);
    box-sizing: border-box;
}

.unique-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(12, 60, 124, 0.12);
    border-color: var(--brand-gold);
}

.unique-card__image-wrapper {
    height: 220px;
    width: 100%;
    overflow: hidden;
    position: relative;
    background: #f7f7f7;
}

.unique-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
    display: block;
}

.unique-card:hover .unique-card__image {
    transform: scale(1.06);
}

.unique-card__content {
    padding: 24px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.unique-card__title {
    font-size: 22px;
    font-weight: 700;
    color: var(--brand-blue) !important;
    margin-bottom: 12px;
    line-height: 1.3;
}

.unique-card__title a {
    color: var(--brand-blue) !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.unique-card__title a:hover {
    color: var(--brand-gold) !important;
}

.unique-card__desc {
    font-size: 16px;
    line-height: 1.6;
    color: var(--text-muted);
    margin-bottom: 20px;
    flex-grow: 1;
}

.unique-card__btn-wrapper {
    margin-top: auto;
}

.unique-card__btn {
    display: inline-block;
    background: var(--brand-blue) !important;
    color: #ffffff !important;
    font-size: 15px;
    font-weight: 700;
    padding: 10px 24px;
    border-radius: 30px;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
}

.unique-card__btn:hover {
    background: var(--brand-gold) !important;
    color: #ffffff !important;
    transform: translateY(-2px);
}

/* Responsiveness overrides for unique card button scaling */
@media (max-width: 1280px) {
    .unique-card__btn {
        font-size: 14px;
        padding: 8px 18px;
    }
}

@media (max-width: 1199px) {
    .unique-card__btn {
        font-size: 15px;
        padding: 10px 24px;
    }
}

@media (max-width: 480px) {
    .unique-card__btn {
        font-size: 14px;
        padding: 8px 18px;
    }
}

/* Responsiveness overrides for unique grid */
@media (max-width: 1199px) {
    .unique-grid {
        gap: 25px;
    }

    .unique-card {
        flex: 0 0 calc(50% - 12.5px);
        width: calc(50% - 12.5px);
    }
}

@media (max-width: 767px) {
    .unique-grid {
        gap: 20px;
    }

    .unique-card {
        flex: 0 0 100%;
        width: 100%;
    }
}

/* Timeline Cards Upgrade */
.organic-timeline__card {
    border: 1px solid rgba(12, 60, 124, 0.04) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.organic-timeline__card:hover {
    border-color: var(--brand-gold) !important;
    box-shadow: 0 20px 45px rgba(12, 60, 124, 0.12) !important;
    transform: translateY(-8px) !important;
}

/* Problem & Solution Cards Upgrade */
.organic-ps__card {
    transition: border-color 0.35s ease, box-shadow 0.35s ease !important;
}

.organic-ps__card--problem:hover {
    border-color: var(--brand-gold) !important;
    box-shadow: 0 18px 45px rgba(247, 168, 27, 0.22) !important;
}

.organic-ps__card--solution:hover {
    border-color: var(--brand-blue) !important;
    box-shadow: 0 18px 45px rgba(12, 60, 124, 0.14) !important;
}

/* Team Cards Highlight */
.modern-team-card {
    border: 1px solid rgba(12, 60, 124, 0.04) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.modern-team-card:hover {
    border-color: var(--brand-gold) !important;
    box-shadow: 0 20px 45px rgba(12, 60, 124, 0.12) !important;
    transform: translateY(-8px) !important;
}

/* Impact Stats Counters Redesign */
.funfact-one__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 0 15px;
    margin: 0;
}

.funfact-one__item {
    flex: 1 1 calc(20% - 20px);
    min-width: 170px;
    background: #ffffff !important;
    border-radius: 20px !important;
    padding: 30px 15px !important;
    box-shadow: 0 10px 30px rgba(12, 60, 124, 0.04) !important;
    border: 1px solid rgba(12, 60, 124, 0.05) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-bottom: 4px solid var(--accent-color, var(--brand-gold)) !important;
    margin: 0 !important;
}

.funfact-one__item:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 40px rgba(12, 60, 124, 0.12) !important;
}

.funfact-one__icon {
    width: 54px !important;
    height: 54px !important;
    border-radius: 50% !important;
    background: #f7f7f7 !important;
    background: color-mix(in srgb, var(--accent-color) 10%, transparent) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 15px !important;
    mask: none !important;
    -webkit-mask: none !important;
    transition: all 0.3s ease !important;
}

.funfact-one__item:hover .funfact-one__icon {
    background: color-mix(in srgb, var(--accent-color) 18%, transparent) !important;
    transform: scale(1.08) !important;
}

.funfact-one__icon img {
    max-width: 28px !important;
    max-height: 28px !important;
    width: auto !important;
    height: auto !important;
    display: block !important;
    filter: none !important;
    opacity: 1 !important;
    transition: transform 0.3s ease !important;
}

.funfact-one__item:hover .funfact-one__icon img {
    transform: scale(1.1) !important;
}

.funfact-one__count {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: var(--brand-blue) !important;
    margin-bottom: 5px !important;
}

.funfact-one__text {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    color: var(--text-muted) !important;
    margin: 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

@media (max-width: 1199px) {
    .funfact-one__item {
        flex: 1 1 calc(33.333% - 20px);
    }
}

@media (max-width: 991px) {
    .funfact-one__item {
        flex: 1 1 calc(50% - 20px);
    }
}

@media (max-width: 767px) {
    .funfact-one__item {
        flex: 1 1 100%;
    }
}

/* ==========================================================================
   CUSTOM HEADER CONTACT BUTTON & MOBILE FOOTER CENTERING OVERRIDES
   ========================================================================== */

/* Header Contact Button Style */
.header-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--careox-base, #0c3c7c);
    color: var(--careox-base, #0c3c7c) !important;
    font-size: 16px;
    font-weight: 700;
    font-family: 'DM Sans', sans-serif !important;
    padding: 0 24px;
    height: 48px;
    border-radius: 30px;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-right: 15px;
    letter-spacing: 0.25px;
    text-align: center;
    box-sizing: border-box;
}

.header-contact-btn:hover {
    background: var(--careox-base, #0c3c7c);
    color: #ffffff !important;
}

/* Hide Contact Button below 992px to prevent crowding with mobile menu toggler */
@media (max-width: 991px) {
    .header-contact-btn {
        display: none !important;
    }
}

/* ==========================================================================
   OPTIMIZED RESPONSIVE FOOTER STYLING (REDUCES EMPTY SPACE & ALIGNS TO THEME)
   ========================================================================== */

/* Global Footer hover and icon theme adjustments */
.main-footer .footer-widget__links li a:hover,
.main-footer .footer-widget__info li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer .footer-widget__info__icon {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Mobile & Tablet spacing overrides (removes excess empty vertical space) */
@media (max-width: 991px) {
    .main-footer {
        padding-top: 25px !important;
        padding-bottom: 10px !important;
    }

    .main-footer .container.pt-5 {
        padding-top: 15px !important;
    }

    .main-footer .footer-widget {
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__title {
        margin-top: 12px !important;
        margin-bottom: 15px !important;
        font-size: 20px !important;
    }

    .main-footer .footer-widget__text {
        margin-bottom: 15px !important;
        line-height: 1.5 !important;
    }

    .main-footer .footer-widget__links li {
        line-height: 32px !important;
    }

    .main-footer .footer-widget__info li {
        margin-bottom: 8px !important;
        line-height: 1.4 !important;
    }

    .main-footer__bottom {
        margin-top: 15px !important;
        padding-top: 10px !important;
    }

    .main-footer__bottom__inner {
        padding: 12px 0 !important;
    }
}

/* Tablet Footer Grid Optimization (eliminates horizontal empty spaces) */
@media (min-width: 768px) and (max-width: 1199px) {
    .main-footer .row>div:nth-child(1) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    .main-footer .row>div:nth-child(2) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(3) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(4) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    /* Format Contact Info widget to span horizontally on tablet */
    .main-footer .footer-widget--contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }

    .main-footer .footer-widget__info li {
        flex: 1 1 300px !important;
        margin-bottom: 0 !important;
        max-width: 450px !important;
    }

    .main-footer .footer-widget__social {
        margin-top: 30px !important;
    }
}

/* Mobile View Centering & Compact Overrides */
@media (max-width: 767px) {
    .main-footer {
        text-align: center !important;
    }

    .main-footer .footer-widget {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 10px auto !important;
    }

    .main-footer .footer-widget__text {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .main-footer .footer-widget__links {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__links li {
        text-align: center !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__info li {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 12px !important;
    }

    .main-footer .footer-widget__info__icon {
        position: static !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
        font-size: 18px !important;
    }

    .main-footer .footer-widget__social {
        justify-content: center !important;
        display: flex !important;
        margin-top: 12px !important;
        gap: 10px !important;
    }
}

/* =========================================================
   RESPONSIVE IMAGE BLOCK & BADGE OVERRIDES (MATCHING HOMEPAGE)
   ========================================================= */
.organic-about__image-block {
    position: relative;
    width: 100%;
    height: 400px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    margin: 10px 0;
}

/* Layout-aware padding for left-aligned vs right-aligned images */
.row>.col-lg-6:first-child .organic-about__image-block {
    padding-right: 20px;
    padding-left: 0;
}

.row>.col-lg-6:last-child .organic-about__image-block {
    padding-left: 20px;
    padding-right: 0;
}

.organic-about__back-card {
    position: absolute;
    top: -12px;
    background: var(--brand-cream);
    border: 2px solid var(--brand-gold);
    border-radius: 30px;
    z-index: 1;
    bottom: 12px;
}

/* Layout-aware back card offsets for consistency relative to the padded images */
.row>.col-lg-6:first-child .organic-about__back-card {
    left: -12px;
    right: 32px;
}

.row>.col-lg-6:last-child .organic-about__back-card {
    left: 8px;
    right: 12px;
}

.organic-about__img-container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    border-radius: 26px;
    overflow: hidden;
    border: 6px solid #fff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.organic-about__main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s ease;
    display: block;
}

.organic-about__image-block:hover .organic-about__main-img {
    transform: scale(1.04);
}

.organic-about__floating-badge {
    position: absolute;
    background: #fff;
    padding: 14px 20px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    gap: 14px;
    z-index: 3;
    border-bottom: 4px solid var(--brand-gold);
    width: max-content;
    max-width: 90%;

    /* Mobile / Fallback Centered Bottom Position */
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    top: auto;
    right: auto;
}

/* Desktop positioning (768px and up) */
@media (min-width: 768px) {
    .row>.col-lg-6:first-child .organic-about__floating-badge {
        left: 20px;
        top: auto;
        bottom: 20px;
        right: auto;
        transform: none;
    }

    .row>.col-lg-6:last-child .organic-about__floating-badge {
        right: 20px;
        top: 20px;
        bottom: auto;
        left: auto;
        transform: none;
    }
}

.organic-about__badge-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(247, 168, 27, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-gold);
    font-size: 22px;
    flex-shrink: 0;
}

.organic-about__badge-title {
    font-size: 16px;
    margin: 0;
    color: var(--brand-blue);
    font-weight: 700;
    line-height: 1.2;
}

.organic-about__badge-desc {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.3;
}

/* Tablet view styling overrides */
@media (max-width: 991px) {
    .organic-about__image-block {
        margin-top: 30px;
        padding-left: 0 !important;
        padding-right: 0 !important;
        height: auto;
        min-height: auto;
    }

    .organic-about__img-container {
        height: 360px !important;
        min-height: auto;
    }

    .organic-about__back-card {
        top: -12px !important;
        left: -12px !important;
        right: 12px !important;
        bottom: 12px !important;
    }
}

/* Custom Responsive adjustments for Problem/Solution cards */
@media (max-width: 767px) {
    .organic-ps__card {
        flex-direction: column !important;
    }

    .organic-ps__card-image-wrap {
        width: 100% !important;
        height: 220px !important;
        min-height: auto !important;
    }

    .organic-ps__card-content {
        width: 100% !important;
        padding: 24px 20px !important;
    }
}

/* --- END about_custom.css --- */

/* --- BEGIN program.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - PREMIUM PROGRAM PAGE CSS
   FULLY RESPONSIVE + COMPACT MODERN UI
   ========================================================================== */

:root {
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-red: #ff5528;
    --brand-teal: #018d8d;
    --brand-cyan: #019fcb;

    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;

    --text-dark: #282828;
    --text-muted: #686868;

    --border-warm: #EADCB9;
}

/* =========================================================
MODERN PAGE HEADER
========================================================= */

.page-header {
    position: relative;
    min-height: 55vh !important;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 90px 0 50px !important;
    background-color: var(--brand-blue);
}

.page-header::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    background: #fff;
}

.page-header__bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.page-header__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.04);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 18px;
    text-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 15px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

/* =========================================================
SECTION SPACING
========================================================= */

.program-story-section,
.program-method-section,
.where-work-section,
.impact-modern-section {
    padding-top: 45px !important;
    padding-bottom: 45px !important;
}

/* =========================================================
ACTIVITIES STORY SECTION
========================================================= */

.program-story-section {
    background: #fff;
}



/* RIGHT CONTENT */
/* RIGHT CONTENT */

.program-story-content {
    max-width: 95%;
    margin-top: 10px;
}

.program-story-content .sec-title {
    margin-bottom: 1px !important;
}

.program-story-content .sec-title__title {
    font-size: 36px;
    line-height: 1.2;
}

.program-story-content .about-one__content__text {
    margin-bottom: 18px !important;
}

/* SMALL BOXES */

.program-story-content .row.g-4 {
    --bs-gutter-x: 16px;
    --bs-gutter-y: 16px;
}

.program-small-box {
    background: #fff;
    border-radius: 18px;
    padding: 20px 18px;
    min-height: 165px;
    box-shadow: 0 8px 20px rgba(12, 60, 124, 0.04);
    border: 1px solid rgba(12, 60, 124, 0.06);
    height: 100%;
    transition: all 0.35s ease;
    border-bottom: 3px solid transparent;
}

.program-small-box:hover {
    transform: translateY(-4px);
    border-bottom-color: var(--brand-gold);
    box-shadow: 0 15px 30px rgba(12, 60, 124, 0.08);
}

.program-small-box i {
    font-size: 28px;
    color: var(--brand-gold);
    margin-bottom: 10px;
    display: inline-block;
}

.program-small-box h4 {
    font-size: 18px;
    color: var(--brand-blue);
    margin-bottom: 8px;
    font-weight: 800;
}

.program-small-box p {
    font-size: 14px;
    line-height: 1.5;
    color: var(--text-muted);
    margin: 0;
}

/* =========================================================
METHODS SECTION
========================================================= */

.program-method-section {
    background: var(--brand-offwhite);
}

.method-card {
    background: #fff;
    border-radius: 18px;
    padding: 28px 22px;
    text-align: center;
    position: relative;
    height: 100%;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.03);
    border: 1px solid rgba(234, 220, 185, 0.3);
    transition: all 0.35s ease;
}

.method-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 40px rgba(12, 60, 124, 0.08);
    border-color: #f7a81b;
}

.method-card__number {
    position: absolute;
    top: 15px;
    right: 18px;
    font-size: 32px;
    font-weight: 900;
    color: rgba(12, 60, 124, 0.05);
    line-height: 1;
}

.method-card__icon {
    width: 65px;
    height: 65px;
    margin: 0 auto 18px;
    border-radius: 18px;
    background: rgba(247, 168, 27, 0.08);
    color: var(--brand-gold);
    font-size: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: 0.4s;
}

.method-card h3 {
    font-size: 20px;
    color: var(--brand-blue);
    margin-bottom: 10px;
    font-weight: 800;
}

.method-card p {
    font-size: 14px;
    color: var(--text-muted);
    line-height: 1.6;
    margin: 0;
}

/* =========================================================
WHERE WE WORK SECTION
========================================================= */

.where-work-section {
    background: #fff;
}

.where-work-section .row.align-items-center.gy-5 {
    --bs-gutter-y: 2rem;
}

.where-work-content .sec-title {
    margin-bottom: 18px !important;
}

.where-work-content .sec-title__title {
    font-size: 34px;
    line-height: 1.2;
}



.where-work-content ul {
    margin-top: 18px !important;
}

.where-work-content ul li {
    font-size: 15px !important;
}

/* IMAGES */

.where-work-img {
    width: 100%;
    border-radius: 18px;
    height: 190px;
    object-fit: cover;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.06);
    transition: transform 0.4s ease;
}

.where-work-img:hover {
    transform: scale(1.02);
}

.where-work-img--lg {
    height: 396px;
}

/* =========================================================
IMPACT SECTION
========================================================= */

.impact-modern-section {
    background: #fff;
}

.impact-modern-wrapper {
    /* background: var(--brand-blue); */
    border-radius: 26px;
    padding: 40px 35px;
    border: 1px solid #f7a81b;
    box-shadow: 0 20px 50px rgba(12, 60, 124, 0.16);
}

.impact-left .sec-title {
    margin-bottom: 18px !important;
}

.impact-left .sec-title__title {
    font-size: 36px;
    line-height: 1.2;
}

.impact-left p {
    /* color: rgba(255, 255, 255, 0.78); */
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 18px !important;
}

.impact-btn {
    margin-top: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--brand-gold);
    color: #fff;
    font-weight: 700;
    padding: 12px 24px;
    border-radius: 10px;
    transition: 0.3s;
    border: none;
    font-size: 14px;
}

.impact-btn:hover {
    background: #e0930f;
    color: #fff;
    transform: translateY(-2px);
}

/* IMPACT CARDS */

.impact-card-modern {
    background: #0c3c7c;
    border-radius: 18px;
    padding: 28px 20px;
    text-align: center;
    backdrop-filter: blur(10px);
    /* border: 1px solid #f7a81b; */
    transition: all 0.35s ease;
}

.impact-card-modern:hover {
    transform: translateY(-4px);
    border-color: var(--brand-gold);
}

.impact-card-modern h3 {
    color: var(--brand-gold);
    font-size: 38px;
    font-weight: 800;
    margin-bottom: 5px;
}

.impact-card-modern p {
    color: rgba(255, 255, 255, 0.85);
    font-size: 14px;
    font-weight: 600;
    margin: 0;
}



/* =========================================================
BUTTONS
========================================================= */

/* All .careox-btn buttons inherit the original pill-shaped style
   from careox.css (border-radius: 30px, blue ::before background).
   No overrides needed here. */

.activity-grid-new {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
    width: 100%;
}

.activity-card-new {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.05);
    border-radius: 12px;
    padding: 10px 14px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    gap: 12px;
    box-shadow: 0 4px 12px rgba(12, 60, 124, 0.02);
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
    height: 100%;
}

.activity-card-new:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 18px rgba(12, 60, 124, 0.06);
}

.activity-card-new__icon-wrapper {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

.activity-card-new:hover .activity-card-new__icon-wrapper {
    transform: scale(1.06);
}

.activity-card-new__content {
    flex-grow: 1;
}

.activity-card-new__text {
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    font-weight: 600;
    color: var(--brand-blue, #0c3c7c);
    margin: 0;
    line-height: 1.35;
    transition: color 0.2s ease;
}

.activity-card-new:hover .activity-card-new__text {
    color: var(--brand-gold, #f7a81b);
}

/* Color theme mappings for bottom border and icons */
.activity-card-new.--blue {
    border-bottom: 3px solid #f7a81b;
}

.activity-card-new.--blue .activity-card-new__icon-wrapper {
    background: rgba(12, 60, 124, 0.15);
    color: #f7a81b;
}

.activity-card-new.--green {
    border-bottom: 3px solid #f7a81b;
}

.activity-card-new.--green .activity-card-new__icon-wrapper {
    background: rgba(12, 60, 124, 0.15);
    color: #f7a81b;
}

.activity-card-new.--purple {
    border-bottom: 3px solid #f7a81b;
}

.activity-card-new.--purple .activity-card-new__icon-wrapper {
    background: rgba(12, 60, 124, 0.15);
    color: #f7a81b;
}

.activity-card-new.--orange {
    border-bottom: 3px solid #f7a81b;
}

.activity-card-new.--orange .activity-card-new__icon-wrapper {
    background: rgba(12, 60, 124, 0.15);
    color: #f7a81b;
}

.activity-card-new.--teal {
    border-bottom: 3px solid #f7a81b;
}

.activity-card-new.--teal .activity-card-new__icon-wrapper {
    background: rgba(12, 60, 124, 0.15);
    color: #f7a81b;
}

/* For 5th item: spans full width on desktop for a balanced grid */
.activity-card-new:nth-child(5) {
    grid-column: span 2;
}

/* Responsive Rules */
@media (max-width: 575px) {
    .activity-grid-new {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .activity-card-new:nth-child(5) {
        grid-column: span 1;
    }
}

/* =========================================================
RESPONSIVE
========================================================= */



@media (max-width: 991px) {

    .page-header {
        min-height: 55vh;
        padding: 130px 0 90px;
    }

    .program-story-content {
        max-width: 100%;
        margin-top: 25px;
    }

    .organic-about__main-img {
        height: auto;
    }

    .program-small-box {
        min-height: auto;
    }

    .where-work-img,
    .where-work-img--lg {
        height: 230px;
    }

    .impact-modern-wrapper {
        padding: 30px 22px;
    }

}

@media (max-width: 767px) {

    .page-header {
        min-height: 45vh;
        padding: 110px 0 70px;
    }

    .page-header::after {
        height: 0px;
    }

    .program-story-section,
    .program-method-section,
    .where-work-section,
    .impact-modern-section {
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }



    .program-story-content .sec-title__title,
    .where-work-content .sec-title__title,
    .impact-left .sec-title__title {
        font-size: 28px;
    }

    .program-small-box {
        padding: 18px 16px;
    }

    .where-work-img,
    .where-work-img--lg {
        height: 200px;
    }

    .impact-modern-wrapper {
        padding: 25px 18px;
        border-radius: 20px;
    }

    .impact-card-modern {
        padding: 22px 16px;
    }

    .impact-card-modern h3 {
        font-size: 30px;
    }
}

/* =========================================================
HEADER CONTACT BUTTON
========================================================= */

.header-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--careox-base, #0c3c7c);
    color: var(--careox-base, #0c3c7c) !important;
    font-size: 15px;
    font-weight: 700;
    padding: 0 22px;
    height: 46px;
    border-radius: 30px;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-right: 15px;
}

.header-contact-btn:hover {
    background: var(--careox-base, #0c3c7c);
    color: #ffffff !important;
}

@media (max-width: 991px) {
    .header-contact-btn {
        display: none !important;
    }
}

/* ==========================================================================
   OPTIMIZED RESPONSIVE FOOTER STYLING (REDUCES EMPTY SPACE & ALIGNS TO THEME)
   ========================================================================== */

/* Global Footer hover and icon theme adjustments */
.main-footer .footer-widget__links li a:hover,
.main-footer .footer-widget__info li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer .footer-widget__info__icon {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Mobile & Tablet spacing overrides (removes excess empty vertical space) */
@media (max-width: 991px) {
    .main-footer {
        padding-top: 25px !important;
        padding-bottom: 10px !important;
    }

    .main-footer .container.pt-5 {
        padding-top: 15px !important;
    }

    .main-footer .footer-widget {
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__title {
        margin-top: 12px !important;
        margin-bottom: 15px !important;
        font-size: 20px !important;
    }

    .main-footer .footer-widget__text {
        margin-bottom: 15px !important;
        line-height: 1.5 !important;
    }

    .main-footer .footer-widget__links li {
        line-height: 32px !important;
    }

    .main-footer .footer-widget__info li {
        margin-bottom: 8px !important;
        line-height: 1.4 !important;
    }

    .main-footer__bottom {
        margin-top: 15px !important;
        padding-top: 10px !important;
    }

    .main-footer__bottom__inner {
        padding: 12px 0 !important;
    }
}

/* Tablet Footer Grid Optimization (eliminates horizontal empty spaces) */
@media (min-width: 768px) and (max-width: 1199px) {
    .main-footer .row>div:nth-child(1) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    .main-footer .row>div:nth-child(2) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(3) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(4) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    /* Format Contact Info widget to span horizontally on tablet */
    .main-footer .footer-widget--contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }

    .main-footer .footer-widget__info li {
        flex: 1 1 300px !important;
        margin-bottom: 0 !important;
        max-width: 450px !important;
    }

    .main-footer .footer-widget__social {
        margin-top: 30px !important;
    }
}

/* Mobile View Centering & Compact Overrides */
@media (max-width: 767px) {
    .main-footer {
        text-align: center !important;
    }

    .main-footer .footer-widget {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 10px auto !important;
    }

    .main-footer .footer-widget__text {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .main-footer .footer-widget__links {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__links li {
        text-align: center !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__info li {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 12px !important;
    }

    .main-footer .footer-widget__info__icon {
        position: static !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
        font-size: 18px !important;
    }

    .main-footer .footer-widget__social {
        justify-content: center !important;
        display: flex !important;
        margin-top: 12px !important;
        gap: 10px !important;
    }
}

/* =========================================================
DESKTOP ACTIVITIES SECTION HEIGHT MATCH & CTA SIZING
========================================================= */
@media (min-width: 992px) {
    .program-story-section .row.align-items-center {
        align-items: stretch !important;
    }

    .program-story-content {
        height: 100%;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        max-width: 100%;
        padding-left: 15px;
    }

    .program-story-content .sec-title__title {
        font-size: 40px;
        /* Standardize section heading */
        line-height: 1.2;
    }

    .program-story-content .about-one__content__text {
        margin-bottom: 12px !important;
    }

    .program-story-content .row.g-4 {
        flex-grow: 1;
        margin-top: 10px !important;
    }

    .program-story-content .row.g-4>div {
        display: flex;
    }

    .program-small-box {
        height: 100%;
        width: 100%;
        min-height: 0 !important;
        padding: 15px 14px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    .program-small-box i {
        font-size: 24px;
        margin-bottom: 6px;
    }

    .program-small-box h4 {
        font-size: 18px;
        /* Balanced activity box title */
        margin-bottom: 4px;
    }

    .program-small-box p {
        font-size: 13px;
        line-height: 1.4;
    }
}

/* =========================================================
   RESPONSIVE IMAGE BLOCK & BADGE OVERRIDES (MATCHING HOMEPAGE)
   ========================================================= */
.organic-about__image-block {
    position: relative;
    width: 100%;
    height: 400px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    margin: 10px 0;
}

/* Layout-aware padding for left-aligned vs right-aligned images */
.row>.col-lg-6:first-child .organic-about__image-block {
    padding-right: 20px;
    padding-left: 0;
}

.row>.col-lg-6:last-child .organic-about__image-block {
    padding-left: 20px;
    padding-right: 0;
}

.organic-about__back-card {
    position: absolute;
    top: -12px;
    background: var(--brand-cream);
    border: 2px solid var(--brand-gold);
    border-radius: 30px;
    z-index: 1;
    bottom: 12px;
}

/* Layout-aware back card offsets for consistency relative to the padded images */
.row>.col-lg-6:first-child .organic-about__back-card {
    left: -12px;
    right: 32px;
}

.row>.col-lg-6:last-child .organic-about__back-card {
    left: 8px;
    right: 12px;
}

.organic-about__img-container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    border-radius: 26px;
    overflow: hidden;
    border: 6px solid #fff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.organic-about__main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s ease;
    display: block;
}

.organic-about__image-block:hover .organic-about__main-img {
    transform: scale(1.04);
}

.organic-about__floating-badge {
    position: absolute;
    background: #fff;
    padding: 14px 20px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    gap: 14px;
    z-index: 3;
    border-bottom: 4px solid var(--brand-gold);
    width: max-content;
    max-width: 90%;

    /* Mobile / Fallback Centered Bottom Position */
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    top: auto;
    right: auto;
}

/* Desktop positioning (768px and up) */
@media (min-width: 768px) {
    .row>.col-lg-6:first-child .organic-about__floating-badge {
        left: 20px;
        top: 20px;
        bottom: auto;
        right: auto;
        transform: none;
    }

    .row>.col-lg-6:last-child .organic-about__floating-badge {
        right: 20px;
        top: 20px;
        bottom: auto;
        left: auto;
        transform: none;
    }
}

.organic-about__badge-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(247, 168, 27, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-gold);
    font-size: 22px;
    flex-shrink: 0;
}

.organic-about__badge-title {
    font-size: 16px;
    margin: 0;
    color: var(--brand-blue);
    font-weight: 700;
    line-height: 1.2;
}

.organic-about__badge-desc {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.3;
}

/* Tablet view styling overrides */
@media (max-width: 991px) {
    .organic-about__image-block {
        margin-top: 30px;
        padding-left: 0 !important;
        padding-right: 0 !important;
        height: auto;
        min-height: auto;
    }

    .organic-about__img-container {
        height: 360px !important;
        min-height: auto;
    }

    .organic-about__back-card {
        top: -12px !important;
        left: -12px !important;
        right: 12px !important;
        bottom: 12px !important;
    }
}

/* Mobile view styling overrides */
@media (max-width: 575px) {
    .organic-about__img-container {
        height: 280px !important;
    }
}

/* ==========================================================================
   DETAIL REPORT SECTION & TABLE
   ========================================================================== */
.report-section {
    background-color: rgb(255, 255, 255);
    position: relative;
    z-index: 1;
}

.report-table-container {
    background: #ffffff;
    border-radius: 20px;
    padding: 40px;
    box-shadow: 0 15px 40px rgba(12, 60, 124, 0.06);
    border: 1px solid rgba(12, 60, 124, 0.08);
    max-width: 850px;
    margin: 0 auto;
}

.report-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.report-table th {
    background-color: var(--brand-blue, #0c3c7c);
    color: #ffffff !important;
    font-weight: 700 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px !important;
    padding: 15px 20px;
    text-align: left;
    border-bottom: 3px solid var(--brand-gold, #f7a81b);
}

.report-table th.text-right,
.report-table td.text-right {
    text-align: right;
}

.report-table td {
    padding: 12px 20px;
    font-size: 15px;
    color: var(--text-muted);
    border-bottom: 1px solid #f0f0f0;
    font-family: 'Inter', sans-serif !important;
}

.report-table tbody tr:hover {
    background-color: rgba(12, 60, 124, 0.02);
}

/* Sub-group headers in report table */
.report-group-header td {
    background-color: rgba(248, 238, 211, 0.4);
    font-weight: 700 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 16px !important;
    color: var(--brand-blue, #0c3c7c);
    padding: 14px 20px;
    border-top: 1px solid rgba(247, 168, 27, 0.2);
    border-bottom: 2px solid rgba(247, 168, 27, 0.2);
}

/* Total row styling */
.report-total-row td {
    background-color: rgba(12, 60, 124, 0.05);
    font-weight: 800 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 17px !important;
    color: var(--brand-blue, #0c3c7c);
    padding: 16px 20px;
    border-top: 2px solid var(--brand-blue, #0c3c7c);
    /* border-bottom: 2px solid var(--brand-blue, #0c3c7c); */

    /* border-bottom: 3px double var(--brand-blue, #0c3c7c); */
}

.report-total-row1 td {
    background-color: var(--brand-blue, #0c3c7c);
    font-weight: 800 !important;
    font-family: 'DM Sans', sans-serif !important;
    font-size: 17px !important;
    color: #fff;
    padding: 16px 20px;
    border-bottom: none !important;
}

.report-download-btn-container .careox-btn {
    padding: 12px 30px;
    border-radius: 30px;
}

@media (max-width: 767px) {
    .report-table-container {
        padding: 20px 15px;
    }

    .report-table td,
    .report-table th {
        padding: 10px 12px;
        font-size: 14px;
    }

    .report-group-header td {
        font-size: 14px !important;
    }

    .report-total-row td {
        font-size: 15px !important;
    }
}

/* --- END program.css --- */

/* --- BEGIN gallary.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - PREMIUM GALLERY STYLESHEET
   FULLY RESPONSIVE + ALIGNED TO ABOUT US & PROGRAM DESIGN SYSTEMS
   ========================================================================== */

:root {
    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;

    --text-dark: #282828;
    --text-muted: #686868;

    --border-warm: #EADCB9;
}

body {
    font-family: var(--careox-font);
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: var(--careox-font);
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: var(--careox-heading-font);
    font-weight: normal !important;
}

.gallery-one,
.gallery-cta-modern,
.cta-two {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
}

/* =========================================================
MODERN PAGE HEADER
========================================================= */

.page-header {
    position: relative;
    min-height: 55vh !important;

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

    overflow: hidden;
    padding: 100px 0 60px !important;

    background-color: var(--brand-blue);
}

.page-header__bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.page-header__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 22px;

    text-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 16px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

.page-header::after {
    content: '';

    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;

    background: #fff;
}

/* =========================================================
GALLERY SECTION & CARDS
========================================================= */

.gallery-one,
.gallery-modern-section {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
    background: var(--brand-offwhite);
}

.gallery-masonry-modern {
    columns: 3 320px;
    column-gap: 24px;
}

.gallery-modern-item {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 24px;
    margin-bottom: 24px;
    break-inside: avoid;
    border: 6px solid #ffffff;
    box-shadow: 0 12px 35px rgba(12, 60, 124, 0.04);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.gallery-modern-item img {
    width: 100%;
    display: block;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    object-fit: cover;
}

.gallery-modern-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 18px 45px rgba(12, 60, 124, 0.08);
}

.gallery-modern-item:hover img {
    transform: scale(1.05);
}

.gallery-modern-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(12, 60, 124, 0.85) 0%,
            rgba(247, 168, 27, 0.3) 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.4s ease;
    gap: 12px;
}

.gallery-modern-item:hover .gallery-modern-overlay {
    opacity: 1;
}

.gallery-modern-overlay i {
    width: 68px;
    height: 68px;
    border-radius: 50%;
    background: #ffffff;
    color: var(--brand-blue);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
    transform: scale(0.8) rotate(-45deg);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gallery-modern-item:hover .gallery-modern-overlay i {
    transform: scale(1) rotate(0deg);
}

.gallery-modern-overlay span {
    color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    transform: translateY(10px);
    opacity: 0;
    transition: all 0.4s ease 0.1s;
}

.gallery-modern-item:hover .gallery-modern-overlay span {
    transform: translateY(0);
    opacity: 1;
}

.gallery-cta-modern {
    padding: 0 0 35px !important;
    background: #ffffff !important;
}

.gallery-cta-modern__wrapper {
    background: var(--brand-blue);
    border: 2px solid var(--brand-gold);
    border-radius: 28px;
    padding: 35px 20px;
    text-align: center;
    box-shadow: 0 20px 50px rgba(12, 60, 124, 0.1);
}

.gallery-cta-modern__icon {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 16px;
    color: var(--brand-gold);
    font-size: 28px;
    border: 1px solid rgba(247, 168, 27, 0.15);
    transition: transform 0.6s ease;
}

.gallery-cta-modern__wrapper:hover .gallery-cta-modern__icon {
    transform: rotateY(360deg);
}

.gallery-cta-modern__wrapper h2 {
    color: #fff;
    font-size: 34px;
    margin-bottom: 12px;
    font-weight: 800;
}

.gallery-cta-modern__wrapper p {
    color: rgba(255, 255, 255, 0.8);
    max-width: 680px;
    margin: 0 auto 20px;
    font-size: 16px;
    line-height: 1.8;
}

/* =========================================================
RESPONSIVE LAYOUT
========================================================= */

@media (max-width: 991px) {
    .page-header {
        min-height: 65vh;
        padding: 150px 0 120px;
    }

    .gallery-one {
        padding-top: 45px !important;
        padding-bottom: 45px !important;
    }

    .gallery-modern-section {
        padding: 45px 0 !important;
    }

    .gallery-cta-modern {
        padding-bottom: 45px !important;
    }

    .gallery-cta-modern__wrapper h2 {
        font-size: 38px;
    }

    .gallery-cta-modern__wrapper {
        padding: 60px 30px;
    }
}

@media (max-width: 767px) {
    .page-header {
        min-height: 55vh;
        padding: 120px 0 100px;
    }

    .page-header::after {
        height: 0px;
    }

    .gallery-one {
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }

    .gallery-cta-modern {
        padding-bottom: 35px !important;
    }

    .gallery-cta-modern__wrapper h2 {
        font-size: 32px;
    }

    .gallery-cta-modern__wrapper p {
        font-size: 15px;
    }

    .gallery-cta-modern__wrapper {
        padding: 50px 20px;
        border-radius: 28px;
    }
}

/* =========================================================
   TAGLINE & TITLE REDESIGN OVERRIDES
   ========================================================= */

.sec-title__title {
    color: var(--brand-blue) !important;
    margin-top: 15px !important;
}

/* ==========================================================================
   CUSTOM HEADER CONTACT BUTTON & MOBILE FOOTER CENTERING OVERRIDES
   ========================================================================== */

/* Header Contact Button Style */
.header-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--careox-base, #0c3c7c);
    color: var(--careox-base, #0c3c7c) !important;
    font-size: 16px;
    font-weight: 700;
    font-family: 'DM Sans', sans-serif !important;
    padding: 0 24px;
    height: 48px;
    border-radius: 30px;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-right: 15px;
    letter-spacing: 0.25px;
    text-align: center;
    box-sizing: border-box;
}

.header-contact-btn:hover {
    background: var(--careox-base, #0c3c7c);
    color: #ffffff !important;
}

/* Hide Contact Button below 992px to prevent crowding with mobile menu toggler */
@media (max-width: 991px) {
    .header-contact-btn {
        display: none !important;
    }
}

/* ==========================================================================
   OPTIMIZED RESPONSIVE FOOTER STYLING (REDUCES EMPTY SPACE & ALIGNS TO THEME)
   ========================================================================== */

/* Global Footer hover and icon theme adjustments */
.main-footer .footer-widget__links li a:hover,
.main-footer .footer-widget__info li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer .footer-widget__info__icon {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Mobile & Tablet spacing overrides (removes excess empty vertical space) */
@media (max-width: 991px) {
    .main-footer {
        padding-top: 25px !important;
        padding-bottom: 10px !important;
    }

    .main-footer .container.pt-5 {
        padding-top: 15px !important;
    }

    .main-footer .footer-widget {
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__title {
        margin-top: 12px !important;
        margin-bottom: 15px !important;
        font-size: 20px !important;
    }

    .main-footer .footer-widget__text {
        margin-bottom: 15px !important;
        line-height: 1.5 !important;
    }

    .main-footer .footer-widget__links li {
        line-height: 32px !important;
    }

    .main-footer .footer-widget__info li {
        margin-bottom: 8px !important;
        line-height: 1.4 !important;
    }

    .main-footer__bottom {
        margin-top: 15px !important;
        padding-top: 10px !important;
    }

    .main-footer__bottom__inner {
        padding: 12px 0 !important;
    }
}

/* Tablet Footer Grid Optimization (eliminates horizontal empty spaces) */
@media (min-width: 768px) and (max-width: 1199px) {
    .main-footer .row>div:nth-child(1) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    .main-footer .row>div:nth-child(2) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(3) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(4) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    /* Format Contact Info widget to span horizontally on tablet */
    .main-footer .footer-widget--contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }

    .main-footer .footer-widget__info li {
        flex: 1 1 300px !important;
        margin-bottom: 0 !important;
        max-width: 450px !important;
    }

    .main-footer .footer-widget__social {
        margin-top: 30px !important;
    }
}

/* Mobile View Centering & Compact Overrides */
@media (max-width: 767px) {
    .main-footer {
        text-align: center !important;
    }

    .main-footer .footer-widget {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 10px auto !important;
    }

    .main-footer .footer-widget__text {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .main-footer .footer-widget__links {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__links li {
        text-align: center !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__info li {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 12px !important;
    }

    .main-footer .footer-widget__info__icon {
        position: static !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
        font-size: 18px !important;
    }

    .main-footer .footer-widget__social {
        justify-content: center !important;
        display: flex !important;
        margin-top: 12px !important;
        gap: 10px !important;
    }
}

/* =========================================================
   GALLERY CTA BUTTON CONTRAST & HOVER ANIMATION FIX
   ========================================================= */
.gallery-cta-modern__wrapper .careox-btn {
    color: #ffffff !important;
    z-index: 1;
}

.gallery-cta-modern__wrapper .careox-btn::before {
    background: var(--brand-gold) !important;
    opacity: 1 !important;
    transform: scale(1) !important;
}

/* .gallery-cta-modern__wrapper .careox-btn::after {
    background: #ffffff !important;
    border: 1px solid #ffffff !important;
    opacity: 0 !important;
    transform: scale(1.2) !important;
} */

.gallery-cta-modern__wrapper .careox-btn:hover {
    color: var(--brand-gold) !important;
}

.gallery-cta-modern__wrapper .careox-btn:hover::before {
    opacity: 0 !important;
    transform: scale(0.5) !important;
}

.gallery-cta-modern__wrapper .careox-btn:hover::after {
    opacity: 1 !important;
    transform: scale(1) !important;
}

/* --- END gallary.css --- */

/* --- BEGIN get_involved.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - PREMIUM GET INVOLVED PAGE CSS
   FULLY RESPONSIVE + ALIGNED TO ABOUT US & PROGRAM DESIGN SYSTEMS
   ========================================================================== */

:root {
    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;

    --text-dark: #282828;
    --text-muted: #686868;

    --border-warm: #EADCB9;
}

body {
    font-family: var(--careox-font);
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: var(--careox-font);
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: var(--careox-heading-font);
    font-weight: normal !important;
}

/* =========================================================
MODERN PAGE HEADER
========================================================= */

.page-header {
    position: relative;
    min-height: 55vh !important;

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

    overflow: hidden;
    padding: 100px 0 60px !important;

    background-color: var(--brand-blue);
}

.page-header__bg {
    position: absolute;
    inset: 0;
    overflow: hidden;
}

.page-header__bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 22px;

    text-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 16px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

.page-header::after {
    content: '';

    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;

    background: #fff;
}

/* =========================================================
ORGANIC OVERLAPPING IMAGE CONTAINERS
========================================================= */



/* =========================================================
DONATION SECTION
========================================================= */

.donate-two {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
    background: var(--brand-offwhite) !important;
}

/* Align row properly for form + image */
.donate-two .row {
    align-items: stretch !important;
}

.donate-two .col-lg-6 {
    display: flex;
}

/* Make both columns equal height on desktop */
@media (min-width: 992px) {

    .donation-simple-form,
    .donate-two .organic-about__image-block {
        height: 420px !important;
        margin: 0 !important;
        box-sizing: border-box !important;
    }
}

/* On tablet/mobile, stack and reset */
@media (max-width: 991px) {
    .donate-two .col-lg-6 {
        display: block;
    }

    .donate-two .organic-about__image-block {
        height: auto !important;
        margin-top: 30px !important;
    }

    .donation-simple-form {
        height: auto !important;
    }
}

.donation-panel-form {
    /* background: #fff; */
    border-radius: 20px;
    padding: 22px;
    box-shadow: 0 15px 45px rgba(12, 60, 124, 0.05);
    border: 1px solid rgba(12, 60, 124, 0.06);
}

.donation-panel-form__title {
    font-size: 18px;
    margin-bottom: 12px;
    color: var(--brand-blue);
    font-weight: 800;
}

.donation-panel-form__frequency {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.donation-panel-form__radio input {
    display: none;
}

.donation-panel-form__radio span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    border-radius: 100px;
    background: #f5f5f5;
    font-weight: 700;
    color: var(--brand-blue);
    cursor: pointer;
    transition: 0.3s;
    font-size: 13px;
}

.donation-panel-form__radio input:checked+span {
    background: var(--brand-gold);
    color: #fff;
}

.donation-panel-form__amounts {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-bottom: 12px;
}

.donation-panel-form__amount-btn {
    border: 1px solid rgba(12, 60, 124, 0.08);
    background: #fdfcf7;
    border-radius: 10px;
    height: 40px;
    font-size: 13px;
    font-weight: 800;
    color: var(--brand-blue);
    transition: all 0.3s ease;
}

.donation-panel-form__amount-btn:hover,
.donation-panel-form__amount-btn.is-active {
    background: var(--brand-gold);
    border-color: var(--brand-gold);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 5px 12px rgba(247, 168, 27, 0.2);
}

.donation-panel-form input,
.donation-panel-form textarea {
    width: 100%;
    border: 1px solid rgba(12, 60, 124, 0.08);
    background: #fdfcf7;
    height: 40px;
    border-radius: 10px;
    padding: 0 15px;
    margin-bottom: 10px;
    color: var(--brand-blue);
    font-size: 14px;
    transition: all 0.3s ease;
}

.donation-panel-form textarea {
    height: 120px;
    padding-top: 10px;
    resize: none;
}

.donation-panel-form input:focus,
.donation-panel-form textarea:focus {
    outline: none;
    background: #fff;
    border-color: var(--brand-gold);
    box-shadow: 0 4px 10px rgba(247, 168, 27, 0.08);
}

.donation-panel-form__custom-wrap {
    display: none;
    animation: fadeIn 0.4s ease forwards;
}

.donation-panel-form__custom-wrap.is-visible {
    display: block;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.donation-panel-form__summary {
    background: #fdfcf5;
    border: 1px dashed var(--border-warm);
    border-radius: 12px;
    padding: 8px 12px;
    margin-bottom: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    flex-wrap: wrap;
}

.donation-panel-form__summary span {
    font-size: 13px;
    color: var(--text-muted);
}

.donation-panel-form__total {
    font-size: 18px;
    font-weight: 800;
    color: var(--brand-blue);
}

/* =========================================================
CSR SECTION
========================================================= */

.gi-csr-section {
    background: var(--brand-offwhite);
    padding: 45px 0 !important;
}

/* CSR section alignment */
.gi-csr-section .row {
    align-items: stretch !important;
}

.gi-csr-section .col-lg-6 {
    display: flex;
}

@media (min-width: 992px) {
    .gi-csr-section .organic-about__image-block {
        height: 100% !important;
        margin: 0 !important;
    }

    .gi-csr-section .csr-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        height: 100%;
    }
}

@media (max-width: 991px) {
    .gi-csr-section {
        padding: 35px 0 !important;
    }

    .gi-csr-section .col-lg-6 {
        display: block;
    }

    .gi-csr-section .organic-about__image-block {
        margin-top: 0 !important;
        margin-bottom: 20px !important;
    }
}

@media (max-width: 767px) {
    .gi-csr-section {
        padding: 25px 0 !important;
    }

    .gi-csr-section .organic-about__image-block {
        margin-top: 0 !important;
        margin-bottom: 15px !important;
    }

    .gi-csr-section .csr-content .sec-title {
        margin-bottom: 12px !important;
    }

    .gi-csr-section .csr-content .about-one__content__text {
        font-size: 15px !important;
        margin-bottom: 15px !important;
    }
}

.feature-three__item {
    background: #fff;
    border-radius: 16px;
    padding: 16px 20px;
    box-shadow: 0 10px 30px rgba(12, 60, 124, 0.03);
    border: 1px solid rgba(12, 60, 124, 0.05);
    height: 100%;
    transition: all 0.4s ease;
    border-left: 4px solid var(--accent-color, var(--brand-gold));
}

.feature-three__item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(12, 60, 124, 0.06);
}

.feature-three__item__top {
    display: flex;
    align-items: center;
    gap: 15px;
}

.feature-three__item__icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(247, 168, 27, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    color: var(--accent-color, var(--brand-gold));
}

.feature-three__item:hover .feature-three__item__icon {
    background: var(--accent-color, var(--brand-gold));
    color: #fff;
}

.feature-three__item__title {
    font-size: 16px;
    margin: 0;
    color: var(--brand-blue);
    font-weight: 800;
}

/* =========================================================
CONTACT SECTION
========================================================= */

.gi-contact-section {
    padding-top: 45px !important;
    padding-bottom: 45px !important;
    background: var(--brand-offwhite);

}

.gi-contact-section .row {
    display: flex !important;
    align-items: stretch !important;
}

.gi-contact-section .row>[class*="col-"] {
    display: flex !important;
    flex-direction: column !important;
}

.gi-contact-info-card {
    background: var(--brand-blue) !important;
    border-radius: 24px !important;
    padding: 35px !important;
    border: 2px solid var(--brand-gold) !important;
    color: #fff !important;
    box-shadow: 0 20px 50px rgba(12, 60, 124, 0.15) !important;
    flex: 1 1 auto !important;
    height: 100% !important;
}

.gi-contact-form {
    border: 2px solid var(--brand-gold) !important;
    flex: 1 1 auto !important;
    height: 100% !important;
    max-width: 100% !important;
}

.gi-contact-info-card .feature-three__item__title {
    color: #fff !important;
    font-size: 24px;
    font-weight: 800;
}

.gi-contact-info-card .feature-three__item__icon {
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--brand-gold) !important;
}

.gi-contact-detail {
    margin-bottom: 25px;
}

.gi-contact-detail h5 {
    font-size: 15px;
    color: var(--brand-gold);
    font-weight: 700;
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.gi-contact-detail p,
.gi-contact-detail a {
    color: rgba(255, 255, 255, 0.85);
    font-size: 16px;
    line-height: 1.7;
    margin: 0;
}

.gi-contact-detail a:hover {
    color: var(--brand-gold);
}

.gi-contact-form input,
.gi-contact-form textarea {
    margin-bottom: 15px;
}

/* =========================================================
BUTTONS
========================================================= */

/* All .careox-btn buttons inherit the original pill-shaped style
   from careox.css (border-radius: 30px, blue ::before background).
   No overrides needed here. */

/* =========================================================
RESPONSIVE LAYOUTS
========================================================= */

@media (max-width: 991px) {

    .page-header {
        min-height: 65vh;
        padding: 150px 0 120px;
    }

    .donate-two,
    .gi-contact-section {
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }

    .donation-panel-form {
        padding: 16px;
        margin-top: 30px;
    }

    .donation-panel-form__amounts {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {

    .page-header {
        min-height: 55vh;
        padding: 120px 0 100px;
    }

    .page-header::after {
        height: 0px;
    }

    .donate-two,
    .gi-contact-section {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }

}

@media (max-width: 575px) {
    .donation-panel-form {
        padding: 12px;
        border-radius: 12px;
    }

    .donation-panel-form__amounts {
        grid-template-columns: 1fr;
    }

    .organic-about__back-card {
        display: none;
    }

    .organic-about__img-container {
        border-width: 4px;
    }
}

/* ==========================================================================
   CUSTOM HEADER CONTACT BUTTON & MOBILE FOOTER CENTERING OVERRIDES
   ========================================================================== */

/* Header Contact Button Style */
.header-contact-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid var(--careox-base, #0c3c7c);
    color: var(--careox-base, #0c3c7c) !important;
    font-size: 16px;
    font-weight: 700;
    font-family: 'DM Sans', sans-serif !important;
    padding: 0 24px;
    height: 48px;
    border-radius: 30px;
    text-decoration: none;
    background: transparent;
    transition: all 0.3s ease;
    margin-right: 15px;
    letter-spacing: 0.25px;
    text-align: center;
    box-sizing: border-box;
}

.header-contact-btn:hover {
    background: var(--careox-base, #0c3c7c);
    color: #ffffff !important;
}

/* Hide Contact Button below 992px to prevent crowding with mobile menu toggler */
@media (max-width: 991px) {
    .header-contact-btn {
        display: none !important;
    }
}

/* ==========================================================================
   OPTIMIZED RESPONSIVE FOOTER STYLING (REDUCES EMPTY SPACE & ALIGNS TO THEME)
   ========================================================================== */

/* Global Footer hover and icon theme adjustments */
.main-footer .footer-widget__links li a:hover,
.main-footer .footer-widget__info li a:hover {
    color: var(--careox-secondary, #f7a81b) !important;
}

.main-footer .footer-widget__info__icon {
    color: var(--careox-secondary, #f7a81b) !important;
}

/* Mobile & Tablet spacing overrides (removes excess empty vertical space) */
@media (max-width: 991px) {
    .main-footer {
        padding-top: 25px !important;
        padding-bottom: 10px !important;
    }

    .main-footer .container.pt-5 {
        padding-top: 15px !important;
    }

    .main-footer .footer-widget {
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__title {
        margin-top: 12px !important;
        margin-bottom: 15px !important;
        font-size: 20px !important;
    }

    .main-footer .footer-widget__text {
        margin-bottom: 15px !important;
        line-height: 1.5 !important;
    }

    .main-footer .footer-widget__links li {
        line-height: 32px !important;
    }

    .main-footer .footer-widget__info li {
        margin-bottom: 8px !important;
        line-height: 1.4 !important;
    }

    .main-footer__bottom {
        margin-top: 15px !important;
        padding-top: 10px !important;
    }

    .main-footer__bottom__inner {
        padding: 12px 0 !important;
    }
}

/* Tablet Footer Grid Optimization (eliminates horizontal empty spaces) */
@media (min-width: 768px) and (max-width: 1199px) {
    .main-footer .row>div:nth-child(1) {
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }

    .main-footer .row>div:nth-child(2) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(3) {
        flex: 0 0 25% !important;
        max-width: 25% !important;
    }

    .main-footer .row>div:nth-child(4) {
        flex: 0 0 100% !important;
        max-width: 100% !important;
        margin-top: 15px !important;
    }

    /* Format Contact Info widget to span horizontally on tablet */
    .main-footer .footer-widget--contact {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 12px 30px !important;
        width: 100% !important;
        margin-top: 0 !important;
        padding: 0 !important;
    }

    .main-footer .footer-widget__info li {
        flex: 1 1 300px !important;
        margin-bottom: 0 !important;
        max-width: 450px !important;
    }

    .main-footer .footer-widget__social {
        margin-top: 30px !important;
    }
}

/* Mobile View Centering & Compact Overrides */
@media (max-width: 767px) {
    .main-footer {
        text-align: center !important;
    }

    .main-footer .footer-widget {
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        margin-bottom: 20px !important;
    }

    .main-footer .footer-widget__logo {
        display: inline-block !important;
        margin: 0 auto 10px auto !important;
    }

    .main-footer .footer-widget__text {
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    .main-footer .footer-widget__links {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__links li {
        text-align: center !important;
    }

    .main-footer .footer-widget__info {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        padding: 0 !important;
        margin: 0 auto !important;
    }

    .main-footer .footer-widget__info li {
        padding-left: 0 !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 4px !important;
        margin-bottom: 12px !important;
    }

    .main-footer .footer-widget__info__icon {
        position: static !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        margin-bottom: 2px !important;
        font-size: 18px !important;
    }

    .main-footer .footer-widget__social {
        justify-content: center !important;
        display: flex !important;
        margin-top: 12px !important;
        gap: 10px !important;
    }
}

/* =========================================================
   RESPONSIVE IMAGE BLOCK & BADGE OVERRIDES (MATCHING HOMEPAGE)
   ========================================================= */
.organic-about__image-block {
    position: relative;
    width: 100%;
    height: 400px;
    display: flex;
    align-items: stretch;
    justify-content: center;
    margin: 10px 0;
}

/* Layout-aware padding for left-aligned vs right-aligned images */
.row>.col-lg-6:first-child .organic-about__image-block {
    padding-right: 20px;
    padding-left: 0;
}

.row>.col-lg-6:last-child .organic-about__image-block {
    padding-left: 20px;
    padding-right: 0;
}

.organic-about__back-card {
    position: absolute;
    top: -12px;
    background: var(--brand-cream);
    border: 2px solid var(--brand-gold);
    border-radius: 30px;
    z-index: 1;
    bottom: 12px;
}

/* Layout-aware back card offsets for consistency relative to the padded images */
.row>.col-lg-6:first-child .organic-about__back-card {
    left: -12px;
    right: 32px;
}

.row>.col-lg-6:last-child .organic-about__back-card {
    left: 8px;
    right: 12px;
}

.organic-about__img-container {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    border-radius: 26px;
    overflow: hidden;
    border: 6px solid #fff;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
}

.organic-about__main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.6s ease;
    display: block;
}

.organic-about__image-block:hover .organic-about__main-img {
    transform: scale(1.04);
}

.organic-about__floating-badge {
    position: absolute;
    background: #fff;
    padding: 14px 20px;
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.12);
    display: flex;
    align-items: center;
    gap: 14px;
    z-index: 3;
    border-bottom: 4px solid var(--brand-gold);
    width: max-content;
    max-width: 90%;

    /* Mobile / Fallback Centered Bottom Position */
    left: 50%;
    bottom: 18px;
    transform: translateX(-50%);
    top: auto;
    right: auto;
}

/* Desktop positioning (768px and up) */
@media (min-width: 768px) {
    .row>.col-lg-6:first-child .organic-about__floating-badge {
        left: 20px;
        top: auto;
        bottom: 20px;
        right: auto;
        transform: none;
    }

    .row>.col-lg-6:last-child .organic-about__floating-badge {
        right: 20px;
        top: auto;
        bottom: 20px;
        left: auto;
        transform: none;
    }
}

.organic-about__badge-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: rgba(247, 168, 27, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--brand-gold);
    font-size: 22px;
    flex-shrink: 0;
}

.organic-about__badge-title {
    font-size: 16px;
    margin: 0;
    color: var(--brand-blue);
    font-weight: 700;
    line-height: 1.2;
}

.organic-about__badge-desc {
    margin: 2px 0 0;
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.3;
}

/* Tablet view styling overrides */
@media (max-width: 991px) {
    .organic-about__image-block {
        margin-top: 30px;
        padding-left: 0 !important;
        padding-right: 0 !important;
        height: auto;
        min-height: auto;
        width: 100%;
    }

    .row>.col-lg-6:first-child .organic-about__image-block,
    .row>.col-lg-6:last-child .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .donate-two .organic-about__image-block {
        margin-top: 30px !important;
    }

    .organic-about__img-container {
        height: 360px !important;
        min-height: auto;
        width: 100%;
    }

    .organic-about__back-card {
        top: -12px !important;
        left: -12px !important;
        right: 12px !important;
        bottom: 12px !important;
    }

    .row>.col-lg-6:first-child .organic-about__back-card,
    .row>.col-lg-6:last-child .organic-about__back-card {
        left: -12px !important;
        right: 12px !important;
    }
}

/* Mobile view styling overrides */
@media (max-width: 767px) {
    .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
        width: 100%;
    }

    .row>.col-lg-6:first-child .organic-about__image-block,
    .row>.col-lg-6:last-child .organic-about__image-block {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .organic-about__back-card {
        display: none !important;
    }

    .organic-about__img-container {
        height: 280px !important;
        width: 100%;
        border-width: 5px;
    }

    .organic-about__floating-badge {
        bottom: 15px;
        padding: 12px 16px;
        gap: 10px;
    }

    .organic-about__badge-icon {
        width: 45px;
        height: 45px;
        font-size: 18px;
    }

    .organic-about__badge-title {
        font-size: 14px;
    }

    .organic-about__badge-desc {
        font-size: 12px;
    }
}

/* Small mobile view */
@media (max-width: 575px) {
    .organic-about__img-container {
        height: 250px !important;
        border-width: 4px;
    }
}

/* =========================================================
   DIRECT DONATION CARDS SECTION
   ========================================================= */
.direct-donate-section {
    background-color: #ffffff;
    /* padding: 60px 0; */
}

.direct-donate-title {
    color: var(--brand-blue);
    font-family: var(--careox-heading-font);
    font-size: 32px;
    font-weight: 700 !important;
    margin-bottom: 8px;
}

.direct-donate-subtitle {
    color: #666;
    font-style: italic;
    font-size: 15px;
    margin-bottom: 40px;
}

.direct-donate-card {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 16px;
    padding: 28px 24px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.02);
    transition: all 0.3s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
}

.direct-donate-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 40px rgba(12, 60, 124, 0.08);
    border-color: rgba(12, 60, 124, 0.15);
}

.card-header-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.direct-donate-card h3 {
    font-size: 20px;
    font-weight: 700 !important;
    color: #222;
    margin: 0;
    line-height: 1.3;
}

/* Copy Button styles */
.copy-btn-circle {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(26, 115, 232, 0.08);
    border: 1px solid rgba(26, 115, 232, 0.15);
    color: #1a73e8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;
    flex-shrink: 0;
    margin-left: 10px;
}

.copy-btn-circle:hover {
    background: rgba(26, 115, 232, 0.15);
    transform: scale(1.05);
}

.copy-btn-circle:active {
    transform: scale(0.95);
}

/* Clipboard Feedback Tooltip */
.copy-tooltip {
    position: relative;
}

.copy-tooltip::after {
    content: "Copied!";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(-8px);
    background: #333;
    color: #fff;
    padding: 4px 8px;
    font-size: 11px;
    border-radius: 4px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.2s ease;
    white-space: nowrap;
    z-index: 10;
}

.copy-tooltip::before {
    content: "";
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%) translateY(0px);
    border: 4px solid transparent;
    border-top-color: #333;
    opacity: 0;
    pointer-events: none;
    transition: all 0.2s ease;
    z-index: 10;
}

.copy-tooltip.show-tooltip::after {
    opacity: 1;
    transform: translateX(-50%) translateY(-4px);
}

.copy-tooltip.show-tooltip::before {
    opacity: 1;
    transform: translateX(-50%) translateY(0px);
}

/* Card Content Details */
.direct-donate-details {
    flex-grow: 1;
}

.direct-donate-details p {
    font-size: 15px;
    color: var(--text-muted);
    margin-bottom: 10px;
    line-height: 1.6;
}

.direct-donate-details p strong {
    color: var(--text-muted);
    font-weight: 600;
}

/* Card 2 Specifics */
.paytm-brand-row {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 15px;
}

.paytm-logo-styled {
    font-size: 22px;
    font-family: 'Inter', sans-serif;
    font-weight: 800;
    letter-spacing: -0.5px;
}

.paytm-pay {
    color: #002E6E;
}

.paytm-tm {
    color: #00BAF2;
}

.brand-bracket-text {
    color: var(--brand-gold);
    font-weight: 600;
    font-size: 14px;
}

.mobile-number-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.mobile-display-val {
    font-size: 16px;
    font-weight: 700;
    color: var(--text-muted);
}

.donate-now-blue-btn {
    display: inline-block;
    background-color: var(--brand-blue);
    color: #ffffff !important;
    padding: 8px 24px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 14px;
    text-align: center;
    border: none;
    transition: all 0.3s ease;
    text-decoration: none;
}

.donate-now-blue-btn:hover {
    background-color: var(--brand-gold);
    box-shadow: 0 4px 15px rgba(247, 168, 27, 0.3);
    transform: translateY(-1px);
}

/* Card 3 Specifics */
.upi-logo-container {
    display: inline-flex;
    align-items: center;
}

.upi-id-container {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}

.upi-display-val {
    font-size: 15px;
    font-weight: 700;
    color: #222;
}

.upi-sub-info {
    font-size: 13px;
    color: #5C7080;
    margin-top: 15px;
    line-height: 1.5;
}

/* Split Card Layout for Paytm & UPI — same design on all devices */
.card-split-layout {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    height: 100%;
    width: 100%;
    gap: 12px;
}

.card-split-left {
    flex: 1;
    min-width: 0;
    padding-right: 10px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.card-split-right {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.qr-code-wrapper {
    background: #ffffff;
    border: 1px solid rgba(0, 0, 0, 0.06);
    border-radius: 8px;
    padding: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03);
}

.qr-code-wrapper img {
    display: block;
    width: 85px;
    height: 85px;
}

/* Responsiveness for direct donation cards */
@media (max-width: 1199px) {
    .direct-donate-card {
        padding: 24px 18px;
    }

    .qr-code-wrapper img {
        width: 80px;
        height: 80px;
    }
}

@media (max-width: 991px) {
    .direct-donate-section {
        padding: 40px 0;
    }

    .direct-donate-card {
        margin-bottom: 15px;
    }

    .direct-donate-card h3 {
        font-size: 18px;
    }

    .qr-code-wrapper img {
        width: 75px;
        height: 75px;
    }
}

@media (max-width: 767px) {
    .direct-donate-section {
        padding: 30px 0;
    }

    .direct-donate-card {
        padding: 20px 16px;
    }

    .direct-donate-card h3 {
        font-size: 17px;
    }

    .paytm-brand-row {
        flex-wrap: wrap;
        gap: 4px;
        margin-bottom: 10px;
    }

    .mobile-number-container {
        margin-bottom: 14px;
    }

    .mobile-display-val {
        font-size: 14px;
    }

    .brand-bracket-text {
        font-size: 12px;
    }

    .qr-code-wrapper img {
        width: 70px;
        height: 70px;
    }

    .card-split-left {
        padding-right: 8px;
    }

    .donate-now-blue-btn {
        padding: 7px 18px;
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .direct-donate-card {
        padding: 18px 14px;
    }

    .direct-donate-card h3 {
        font-size: 16px;
    }

    .card-header-row {
        margin-bottom: 14px;
    }

    .qr-code-wrapper img {
        width: 65px;
        height: 65px;
    }

    .qr-code-wrapper {
        padding: 4px;
    }

    .paytm-logo-styled {
        font-size: 18px;
    }

    .mobile-display-val {
        font-size: 13px;
    }
}

/* =========================================================
   SIMPLE DONATION RECEIPTS SECTION
   ========================================================= */
.simple-receipt-box {
    padding: 35px 0 15px 0;
    font-family: var(--careox-font);
    color: #282828;
}

.receipt-text {
    font-size: 16px;
    margin-bottom: 12px;
    color: var(--text-muted);
    line-height: 1.5;
}

.receipt-instruction {
    font-size: 16px;
    margin-top: 20px;
    margin-bottom: 15px;
    color: #282828;
    line-height: 1.6;
}

.receipt-instruction strong {
    font-weight: 700;
}

.receipt-email-link {
    color: var(--brand-blue) !important;
    font-weight: 700;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.receipt-email-link:hover {
    color: var(--brand-gold) !important;
}

.receipt-support {
    font-size: 16px;
    color: #282828;
    line-height: 1.6;
}

.receipt-support strong {
    font-weight: 700;
}

.receipt-call-link {
    color: var(--brand-blue) !important;
    font-weight: 700;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.receipt-call-link:hover {
    color: var(--brand-gold) !important;
}

.receipt-divider {
    color: var(--text-dark);
    margin: 0 4px;
    font-weight: 700;
}

.receipt-whatsapp-link {
    color: var(--brand-blue) !important;
    font-weight: 700;
    text-decoration: underline;
    transition: color 0.2s ease;
}

.receipt-whatsapp-link:hover {
    color: var(--brand-gold) !important;
}

@media (max-width: 767px) {
    .simple-receipt-box {
        padding: 20px 0 10px 0;
    }

    .receipt-text,
    .receipt-instruction,
    .receipt-support {
        font-size: 15px;
    }
}

/* ==========================================================================
   OCCASIONAL DONATIONS SECTION STYLES
   ========================================================================== */

.occasional-donations-section {
    background-color: #ffffff;
    border-bottom: 1px solid rgba(12, 60, 124, 0.05);
}

.occasional-subtitle {
    max-width: 850px;
    margin: 0 auto 12px auto;
    font-size: 16px;
    color: var(--text-muted);
    line-height: 1.6;
}

.occasional-highlight {
    font-size: 15px;
    max-width: 800px;
    margin: 0 auto 35px auto;
    line-height: 1.5;
}

.occasional-grid {
    margin-top: 15px;
}

.occasional-card {
    background: #ffffff;
    border: 1px solid rgba(12, 60, 124, 0.06);
    border-radius: 16px;
    padding: 16px;
    box-shadow: 0 10px 25px rgba(12, 60, 124, 0.04);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.occasional-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 36px rgba(12, 60, 124, 0.1);
    border-color: var(--brand-gold);
}

.occasional-card__image-wrapper {
    width: 100%;
    height: 155px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 15px;
    position: relative;
    background: #f8f8f8;
}

.occasional-card__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.occasional-card:hover .occasional-card__image {
    transform: scale(1.06);
}

.occasional-card__content {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
    align-items: center;
}

.occasional-card__title {
    font-size: 17px;
    font-weight: 700 !important;
    color: var(--brand-blue);
    margin-bottom: 8px;
    line-height: 1.3;
}

.occasional-card__subtitle {
    font-size: 13.5px;
    color: var(--text-muted);
    line-height: 1.45;
    margin-bottom: 20px;
    min-height: 60px;
    /* Aligns buttons across all cards */
}

.occasional-card__amount {
    display: inline-block;
    color: var(--brand-blue) !important;
    font-size: 14.5px;
    font-weight: 700;
    text-decoration: none !important;
    transition: all 0.25s ease;
    border: 2px solid var(--brand-blue);
    border-radius: 30px;
    padding: 6px 18px;
    margin-top: auto;
}

.occasional-card__amount:hover {
    color: #ffffff !important;
    background-color: var(--brand-gold);
    border-color: var(--brand-gold);
    box-shadow: 0 4px 12px rgba(247, 168, 27, 0.25);
    transform: translateY(-1px);
}

@media (max-width: 991px) {
    .occasional-card__subtitle {
        min-height: auto;
    }
}

/* =========================================================
   CONTACT CARD & FORM RESPONSIVE OVERRIDES
   ========================================================= */
@media (max-width: 991px) {
    .gi-contact-section .row {
        flex-direction: column !important;

    }
}

@media (max-width: 767px) {
    .gi-contact-info-card {
        padding: 25px 20px !important;
        border-radius: 16px !important;
    }

    .gi-contact-detail {
        margin-bottom: 20px;
    }

    .gi-contact-detail p,
    .gi-contact-detail a {
        font-size: 15px !important;
    }
}

@media (max-width: 480px) {
    .gi-contact-info-card {
        padding: 20px 15px !important;
        border-radius: 14px !important;
    }

    .gi-contact-detail p,
    .gi-contact-detail a {
        font-size: 14px !important;
    }

    .gi-contact-form {
        padding: 20px 15px !important;
        margin-top: 30px;
    }
}

/* =========================================================
   SPECIAL OCCASIONS & DEDICATED DONATIONS SECTION
   ========================================================= */
.special-occasions-section {
    position: relative;
    width: 100%;
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
}

.special-occasions__tabs-wrap {
    background: #ffffff;
    border: 1px solid rgba(12, 60, 124, 0.08);
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
}

.special-occasions__tab-btn {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 44px;
    padding: 0 20px;
    border-radius: 8px;
    border: 1px solid #eaeef5;
    background: #ffffff;
    color: #4a5568;
    font-size: 14px;
    font-weight: 600;
    font-family: var(--careox-heading-font);
    cursor: pointer;
    text-align: left;
    transition: all 0.3s ease;
    width: 100%;
}

.special-occasions__tab-btn:hover {
    background: rgba(12, 60, 124, 0.03);
    color: var(--brand-blue);
    border-color: rgba(12, 60, 124, 0.2);
}

.special-occasions__tab-btn.active {
    background: var(--brand-blue);
    color: #ffffff;
    border-color: var(--brand-blue);
    box-shadow: 0 8px 20px rgba(12, 60, 124, 0.15);
}

.special-occasions__tab-btn .tab-btn__icon {
    font-size: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.special-occasions__tab-btn.active .tab-btn__icon {
    color: var(--brand-gold);
}

.special-occasions__form-card {
    background: #ffffff;
    border: 1px solid rgba(12, 60, 124, 0.08);
    border-radius: 16px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
}

.special-occasions__form .form-label {
    font-family: var(--careox-heading-font);
    font-weight: 600;
    font-size: 14px;
    color: #2d3748;
    margin-bottom: 8px;
    display: block;
}

.special-occasions__input {
    width: 100%;
    height: 44px;
    border: 1px solid #d9dfeb;
    border-radius: 8px;
    padding: 0 14px;
    font-family: var(--careox-font);
    font-size: 14px;
    color: #282828;
    background-color: #ffffff;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.special-occasions__textarea {
    width: 100%;
    border: 1px solid #d9dfeb;
    border-radius: 8px;
    padding: 12px 14px;
    font-family: var(--careox-font);
    font-size: 14px;
    color: #282828;
    background-color: #ffffff;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

/* special-occasions__select removed in favor of custom-dropdown component */


.special-occasions__input:focus,
.special-occasions__textarea:focus {
    border-color: var(--brand-gold) !important;
    background-color: #ffffff !important;
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(247, 168, 27, 0.15) !important;
}

.special-occasions__price-box {
    background: #f0f7ff;
    border-left: 4px solid var(--brand-blue);
    padding: 10px 16px;
    border-radius: 0 8px 8px 0;
}

.price-display {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

.price-label {
    font-family: var(--careox-heading-font);
    font-size: 14px;
    font-weight: 600;
    color: #4a5568;
}

.price-amt-container {
    display: flex;
    align-items: center;
}

.price-display .currency {
    font-family: var(--careox-heading-font);
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-blue);
    margin-right: 2px;
}

.price-display .price-val {
    font-family: var(--careox-heading-font);
    font-size: 22px;
    font-weight: 700;
    color: var(--brand-blue);
}

.special-occasions__submit-btn {
    background-color: var(--brand-blue) !important;
    border: none !important;
    color: #ffffff !important;
    height: 44px !important;
    padding: 0 !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    cursor: pointer;
    transition: all 0.3s ease !important;
}

.special-occasions__submit-btn:hover {
    background-color: var(--brand-gold) !important;
    color: #ffffff !important;
    box-shadow: 0 8px 25px rgba(247, 168, 27, 0.3) !important;
}

/* Responsiveness */
@media (max-width: 991px) {
    .special-occasions__tabs-wrap {
        flex-direction: row !important;
        justify-content: stretch;
    }

    .special-occasions__tab-btn {
        flex: 1;
        justify-content: center;
    }
}

@media (max-width: 767px) {
    .special-occasions__form-card {
        padding: 25px 20px;
    }
}

@media (max-width: 575px) {
    .special-occasions__tabs-wrap {
        flex-direction: column !important;
        padding: 12px;
    }

    .special-occasions__tab-btn {
        padding: 12px 15px;
        font-size: 14px;
    }
}

/* =========================================================
   CUSTOM THEMABLE DROPDOWN PICKERS
   ========================================================= */
.custom-dropdown {
    position: relative;
    width: 100%;
}

.custom-dropdown__trigger {
    width: 100%;
    height: 44px;
    border: 1px solid #d9dfeb;
    border-radius: 8px;
    padding: 0 14px;
    font-family: var(--careox-font);
    font-size: 14px;
    color: #282828;
    background-color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    box-sizing: border-box;
    transition: all 0.3s ease;
}

.custom-dropdown__trigger:hover {
    border-color: var(--brand-blue);
}

.custom-dropdown.active .custom-dropdown__trigger {
    border-color: var(--brand-gold) !important;
    box-shadow: 0 0 0 4px rgba(247, 168, 27, 0.15) !important;
}

.custom-dropdown__trigger i {
    color: var(--brand-blue);
    font-size: 14px;
    transition: transform 0.3s ease;
}

.custom-dropdown.active .custom-dropdown__trigger i {
    transform: rotate(180deg);
}

.custom-dropdown__menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    width: 100%;
    background-color: #ffffff;
    border: 1px solid #d9dfeb;
    border-radius: 8px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    padding: 8px 0;
    margin: 0;
    list-style: none;
    z-index: 1050;
    display: none;
}

.custom-dropdown.active .custom-dropdown__menu {
    display: block;
}

.custom-dropdown__item {
    padding: 10px 20px;
    font-family: var(--careox-font);
    font-size: 14px;
    color: #282828;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: left;
}


.custom-dropdown__item.active {
    background-color: var(--brand-blue);
    color: #ffffff;
}

.custom-dropdown__item:hover {
    background-color: var(--brand-gold);
    color: #ffffff;
}




/* =========================================================
   CUSTOM DATE PICKER FIELD STYLING
   ========================================================= */
.careox-datepicker {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3e%3cpath fill='%230c3c7c' d='M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 32 288c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V176 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192H400V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192z'/%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 14px !important;
    padding-right: 40px !important;
    cursor: pointer;
}

/* =========================================================
   CUSTOM THEMABLE JQUERY UI CALENDAR POPUP WIDGET
   ========================================================= */
#ui-datepicker-div.ui-datepicker {
    width: 290px !important;
    max-width: 90vw !important;
    background: #ffffff !important;
    border: 1px solid #eaeef5 !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
    padding: 12px !important;
    font-family: var(--careox-font) !important;
    z-index: 9999 !important;
}

/* Header style (month and year selector) */
#ui-datepicker-div .ui-datepicker-header {
    background-color: var(--brand-blue, #0c3c7c) !important;
    background-image: none !important;
    border: none !important;
    border-radius: 8px !important;
    color: #ffffff !important;
    padding: 8px 0 !important;
    position: relative !important;
}

#ui-datepicker-div .ui-datepicker-title {
    margin: 0 !important;
    line-height: 24px !important;
    text-align: center !important;
    font-family: var(--careox-heading-font) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

/* Previous & Next month navigation buttons */
#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    color: #ffffff !important;
    cursor: pointer !important;
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    transition: background-color 0.2s ease !important;
}

#ui-datepicker-div .ui-datepicker-prev:hover,
#ui-datepicker-div .ui-datepicker-next:hover {
    background-color: rgba(255, 255, 255, 0.15) !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

#ui-datepicker-div .ui-datepicker-prev-hover,
#ui-datepicker-div .ui-datepicker-next-hover {
    top: 50% !important;
    transform: translateY(-50%) !important;
    /* Overwrite jQuery UI offset bug on hover */
}

#ui-datepicker-div .ui-datepicker-prev {
    left: 8px !important;
    right: auto !important;
}

#ui-datepicker-div .ui-datepicker-next {
    right: 8px !important;
    left: auto !important;
}

/* FontAwesome Chevron indicators */
#ui-datepicker-div .ui-datepicker-prev span,
#ui-datepicker-div .ui-datepicker-next span {
    display: none !important;
}

#ui-datepicker-div .ui-datepicker-prev::before {
    content: "\f104" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    font-size: 14px !important;
    color: #ffffff !important;
}

#ui-datepicker-div .ui-datepicker-next::before {
    content: "\f105" !important;
    font-family: "Font Awesome 5 Free" !important;
    font-weight: 900 !important;
    font-size: 14px !important;
    color: #ffffff !important;
}

/* Calendar grid styling */
#ui-datepicker-div .ui-datepicker-calendar {
    width: 100% !important;
    margin: 8px 0 0 0 !important;
    border-collapse: collapse !important;
}

#ui-datepicker-div .ui-datepicker-calendar th {
    padding: 6px 0 !important;
    text-align: center !important;
    font-family: var(--careox-heading-font) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #718096 !important;
    text-transform: uppercase !important;
}

#ui-datepicker-div .ui-datepicker-calendar td {
    padding: 2px !important;
    background-color: transparent !important;
    border: none !important;
    text-align: center !important;
}

#ui-datepicker-div .ui-datepicker-calendar td a,
#ui-datepicker-div .ui-datepicker-calendar td span {
    display: block !important;
    text-decoration: none !important;
    text-align: center !important;
    padding: 6px 0 !important;
    border-radius: 6px !important;
    font-family: var(--careox-font) !important;
    font-size: 13px !important;
    color: #4a5568 !important;
    background-color: #f7fafc !important;
    background-image: none !important;
    border: none !important;
    transition: all 0.2s ease !important;
}

/* Day hover state */
#ui-datepicker-div .ui-datepicker-calendar td a:hover {
    background-color: var(--brand-gold, #f7a81b) !important;
    color: #ffffff !important;
}

/* Today highlight indicator */
#ui-datepicker-div .ui-datepicker-calendar .ui-state-highlight {
    background-color: rgba(247, 168, 27, 0.15) !important;
    color: var(--brand-gold, #f7a81b) !important;
    font-weight: 600 !important;
    border: 1px solid rgba(247, 168, 27, 0.3) !important;
}

/* Selected active day styling */
#ui-datepicker-div .ui-datepicker-calendar .ui-state-active {
    background-color: var(--brand-gold, #f7a81b) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
}

/* Out of month range day styles */
#ui-datepicker-div .ui-datepicker-other-month {
    opacity: 0.4 !important;
}

/* Responsive adjustments for mobile viewports */
@media (max-width: 480px) {
    #ui-datepicker-div.ui-datepicker {
        width: 270px !important;
        padding: 8px !important;
    }

    #ui-datepicker-div .ui-datepicker-calendar td a,
    #ui-datepicker-div .ui-datepicker-calendar td span {
        padding: 5px 0 !important;
        font-size: 12px !important;
    }
}

/* =========================================================
   BENEFIT CARDS (80G TAX & CSR COMPLIANCE)
   ========================================================= */
.benefit-card {
    background: #ffffff;
    border: 1px solid rgba(12, 60, 124, 0.1);
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 6px 20px rgba(12, 60, 124, 0.03);
    transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
    height: 100%;
}

.benefit-card:hover {
    transform: translateY(-4px);
    border-color: var(--brand-gold, #f7a81b);
    box-shadow: 0 12px 30px rgba(12, 60, 124, 0.08);
}

.benefit-card__icon {
    width: 52px;
    height: 52px;
    min-width: 52px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
}

.benefit-card__icon--tax {
    background: rgba(12, 60, 124, 0.08);
    color: var(--brand-blue, #0c3c7c);
}

.benefit-card__icon--csr {
    background: rgba(247, 168, 27, 0.12);
    color: var(--brand-gold, #f7a81b);
}

.benefit-card__title {
    font-family: var(--careox-heading-font);
    font-size: 18px;
    font-weight: 700;
    color: var(--brand-blue, #0c3c7c);
    margin-bottom: 6px;
}

.benefit-card__desc {
    font-family: var(--careox-font);
    font-size: 14px;
    line-height: 1.5;
    color: #5c6a79;
    margin-bottom: 0;
}

/* --- END get_involved.css --- */

/* --- BEGIN privacy-policy.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - PRIVACY POLICY PAGE STYLESHEET
   ========================================================================== */

:root {
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-red: #ff5528;
    --brand-teal: #018d8d;
    --brand-cyan: #019fcb;
    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;
    --text-dark: #282828;
    --text-muted: #686868;
    --border-warm: #EADCB9;
    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
}

body {
    font-family: var(--careox-font);
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: var(--careox-font);
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: var(--careox-heading-font);
    font-weight: normal !important;
}

/* Modern Page Hero styling matching other subpages */
.page-header {
    position: relative;
    min-height: 55vh !important;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 100px 0 60px !important;
    background-color: var(--brand-blue);
}

.page-header::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    background: #fff;
}

.page-header__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.05);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 22px;
    text-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
    font-weight: 700 !important;
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 16px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

@media (max-width: 991px) {
    .page-header {
        min-height: auto !important;
        padding: 70px 0 40px !important;
    }
}

@media (max-width: 767px) {
    .page-header {
        min-height: auto !important;
        padding: 50px 0 25px !important;
    }

    .page-header::after {
        display: none !important;
        height: 0 !important;
    }
}

/* Custom Rules & Regulations Styling */
.rules-section {
    background-color: var(--brand-offwhite, #FDFBF7);
}

.rules-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

@media (max-width: 991px) {
    .rules-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

.rule-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
    border: 1px solid #eaeef5;
    transition: all 0.3s ease;
    display: flex;
    align-items: flex-start;
}

.rule-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(12, 60, 124, 0.08);
    border-color: #0c3c7c;
}

.rule-number {
    font-size: 28px;
    font-weight: 700;
    color: #0c3c7c;
    font-family: var(--careox-heading-font);
    line-height: 1;
    margin-right: 20px;
    min-width: 45px;
    position: relative;
    top: 2px;
}

.rule-card:nth-child(even) .rule-number {
    color: #ffa415;
}

.rule-content {
    flex-grow: 1;
}

.rule-en {
    font-size: 15px;
    color: #2b2b2b;
    font-weight: 600;
    margin-bottom: 12px;
    line-height: 1.6;
}

.rule-hi {
    font-size: 14px;
    color: #666666;
    line-height: 1.7;
    border-top: 1px dashed #eaeef5;
    padding-top: 12px;
    margin-top: 12px;
    font-weight: 500;
}

/* --- END privacy-policy.css --- */

/* --- BEGIN rules-regulations.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - RULES & REGULATIONS PAGE STYLESHEET
   ========================================================================== */

:root {
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-red: #ff5528;
    --brand-teal: #018d8d;
    --brand-cyan: #019fcb;
    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;
    --text-dark: #282828;
    --text-muted: #686868;
    --border-warm: #EADCB9;
    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
}

body {
    font-family: var(--careox-font);
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: var(--careox-font);
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: var(--careox-heading-font);
    font-weight: normal !important;
}

/* Modern Page Hero styling matching other subpages */
.page-header {
    position: relative;
    min-height: 55vh !important;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 100px 0 60px !important;
    background-color: var(--brand-blue);
}

.page-header::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    background: #fff;
}

.page-header__bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1.05);
    opacity: 0.45;
}

.page-header__overlay {
    position: absolute;
    inset: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
    text-align: center;
}

.page-header__title {
    color: #fff;
    margin-bottom: 22px;
    text-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
    font-weight: 700 !important;
}

.careox-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.careox-breadcrumb li {
    color: rgba(255, 255, 255, 0.8);
    font-size: 16px;
}

.careox-breadcrumb li a {
    color: var(--brand-gold);
}

@media (max-width: 991px) {
    .page-header {
        min-height: auto !important;
        padding: 70px 0 40px !important;
    }
}

@media (max-width: 767px) {
    .page-header {
        min-height: auto !important;
        padding: 50px 0 25px !important;
    }

    .page-header::after {
        display: none !important;
        height: 0 !important;
    }
}

/* Custom Rules & Regulations Styling */
.rules-section {
    background-color: var(--brand-offwhite, #FDFBF7);
}

.rules-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
}

@media (max-width: 991px) {
    .rules-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

.rule-card {
    background: #ffffff;
    border-radius: 12px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
    border: 1px solid #eaeef5;
    transition: all 0.3s ease;
    display: flex;
    align-items: flex-start;
}

.rule-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(12, 60, 124, 0.08);
    border-color: #0c3c7c;
}

.rule-number {
    font-size: 28px;
    font-weight: 700;
    color: #0c3c7c;
    font-family: var(--careox-heading-font);
    line-height: 1;
    margin-right: 20px;
    min-width: 45px;
    position: relative;
    top: 2px;
}

.rule-card:nth-child(even) .rule-number {
    color: #ffa415;
}

.rule-content {
    flex-grow: 1;
}

.rule-en {
    font-size: 15px;
    color: #2b2b2b;
    font-weight: 600;
    margin-bottom: 12px;
    line-height: 1.6;
}

.rule-hi {
    font-size: 15px;
    color: #666666;
    line-height: 1.7;
    border-top: 1px dashed #eaeef5;
    padding-top: 12px;
    margin-top: 12px;
    font-weight: 500;
}

/* Food Service Styling */
.food-rules-section {
    background-color: #ffffff;
}

.food-timings-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
    margin-bottom: 40px;
}

@media (max-width: 767px) {
    .food-timings-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

.timing-card {
    background: var(--brand-offwhite, #FDFBF7);
    border-radius: 12px;
    padding: 30px 20px;
    text-align: center;
    border: 1px solid #eaeef5;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.01);
    transition: all 0.3s ease;
}

.timing-card:hover {
    transform: scale(1.02);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
}

.timing-card.breakfast {
    border-top: 4px solid #ffa415;
}

.timing-card.lunch {
    border-top: 4px solid #0c3c7c;
}

.timing-card.dinner {
    border-top: 4px solid #019fcb;
}

.timing-icon {
    font-size: 36px;
    color: #ffa415;
    margin-bottom: 15px;
    display: inline-block;
}

.timing-card.lunch .timing-icon {
    color: #0c3c7c;
}

.timing-card.dinner .timing-icon {
    color: #019fcb;
}

.timing-title {
    font-size: 18px;
    font-weight: 600;
    color: #2b2b2b;
    margin-bottom: 8px;
}

.timing-value {
    font-size: 16px;
    font-weight: 700;
    color: #0c3c7c;
}

.food-rules-list {
    background: var(--brand-offwhite, #FDFBF7);
    border-radius: 12px;
    padding: 40px;
    border: 1px solid #eaeef5;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
}

@media (max-width: 575px) {
    .food-rules-list {
        padding: 25px;
    }
}

.food-rules-list h4 {
    color: #0c3c7c;
    font-weight: 600 !important;
    margin-bottom: 30px;
    display: flex;
    align-items: center;
    font-size: 22px;
}

.food-rules-list h4 i {
    margin-right: 12px;
    color: #ffa415;
    font-size: 26px;
}

.food-rule-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 20px;
    border-bottom: 1px solid rgba(12, 60, 124, 0.05);
    padding-bottom: 15px;
}

.food-rule-item:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}

.food-rule-icon {
    color: #0c3c7c;
    font-size: 20px;
    margin-right: 15px;
    margin-top: 1px;
    flex-shrink: 0;
}

.food-rule-text {
    font-size: 15px;
    color: #444444;
    line-height: 1.6;
}

/* --- END rules-regulations.css --- */

/* --- BEGIN contact_us.css --- */
/* ==========================================================================
   ROTARY DHARAMSHALA - CONTACT US PAGE STYLESHEET
   ========================================================================== */

:root {
    --careox-font: 'Inter', sans-serif;
    --careox-heading-font: 'DM Sans', sans-serif;
    --brand-blue: #0c3c7c;
    --brand-gold: #f7a81b;
    --brand-cream: #F8EED3;
    --brand-offwhite: #FDFBF7;
    --text-dark: #282828;
    --text-muted: #686868;
    --border-warm: #EADCB9;
}

body {
    font-family: var(--careox-font);
}

body,
p,
li,
span,
a,
input,
select,
textarea {
    font-family: var(--careox-font);
    font-weight: normal;
}

h1,
h2,
h3,
h4,
h5,
h6,
[class*="title"],
[class*="title"] a,
[class*="Title"],
[class*="Title"] a {
    font-family: var(--careox-heading-font);
    font-weight: normal !important;
}

/* ==========================================================================
   MASTER UNIFORM PAGE HEADER & POST-BANNER SECTION SPACING SYSTEM
   ========================================================================== */

/* 1. Page Header (Hero Banner) Uniform Heights across Desktop, Tablet, & Mobile */
.page-header {
    position: relative !important;
    min-height: 280px !important;
    padding: 125px 0 70px !important;
    margin-bottom: 0 !important;
}

.page-header::after {
    display: none !important;
    height: 0 !important;
    content: none !important;
}

@media (max-width: 991px) {
    .page-header {
        min-height: 240px !important;
        padding: 105px 0 55px !important;
        margin-bottom: 0 !important;
    }

    .page-header__title {
        font-size: 34px !important;
        line-height: 1.2 !important;
        margin-bottom: 10px !important;
    }
}

@media (max-width: 767px) {
    .page-header {
        min-height: 200px !important;
        padding: 90px 0 45px !important;
        margin-bottom: 0 !important;
    }

    .page-header__title {
        font-size: 28px !important;
        line-height: 1.2 !important;
        margin-bottom: 8px !important;
    }

    .careox-breadcrumb li {
        font-size: 14px !important;
    }
}

/* 2. Uniform Gap After Header Banner for ALL Subpages */
.page-header+section,
.page-header+div {
    padding-top: 35px !important;
}

@media (max-width: 767px) {

    .page-header+section,
    .page-header+div {
        padding-top: 25px !important;
    }
}

/* Hero Slider Video Section - Zero Padding */
.main-slider-four,
.main-slider-four--video-only {
    padding: 0 !important;
}

/* 3. Master Uniform 35px Section Padding Across ALL Sections */
.py-5,
section.py-5,
section[class*="section"],
.premium-about,
.organic-timeline,
.organic-ps,
.organic-sponsors,
.modern-team-section,
.donate-two,
.program-story-section,
.program-method-section,
.where-work-section,
.impact-modern-section,
.report-section,
.gi-csr-section,
.gi-contact-section,
.gallery-one,
.gallery-cta-modern,
.gallery-modern-section,
.cta-two,
.rules-section,
.food-rules-section,
.special-occasions-section,
.tax-csr-benefits-section,
.feature-three,
.unique-section,
.funfact-modern,
.donations-two,
.feature-three--alt,
.why-choose-one,
.impact-subscribe {
    padding-top: 35px !important;
    padding-bottom: 35px !important;
}

@media (max-width: 767px) {

    .py-5,
    section.py-5,
    section[class*="section"],
    .premium-about,
    .organic-timeline,
    .organic-ps,
    .organic-sponsors,
    .modern-team-section,
    .donate-two,
    .program-story-section,
    .program-method-section,
    .where-work-section,
    .impact-modern-section,
    .report-section,
    .gi-csr-section,
    .gi-contact-section,
    .gallery-one,
    .gallery-cta-modern,
    .gallery-modern-section,
    .cta-two,
    .rules-section,
    .food-rules-section,
    .special-occasions-section,
    .tax-csr-benefits-section,
    .feature-three,
    .unique-section,
    .funfact-modern,
    .donations-two,
    .feature-three--alt,
    .why-choose-one,
    .impact-subscribe {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }
}

/* 4. Mobile & Tablet Card & Typography Fixes */
@media (max-width: 767px) {
    .sec-title__title {
        font-size: 24px !important;
        line-height: 1.3 !important;
    }

    .donation-simple-form {
        padding: 16px 14px !important;
    }

    .donation-simple-form__title {
        font-size: 18px !important;
    }

    .organic-about__image-block {
        height: auto !important;
        margin-top: 15px !important;
    }

    .organic-about__img-container {
        height: 260px !important;
    }

    .rule-card {
        padding: 18px 16px !important;
    }

    .rule-number {
        font-size: 22px !important;
        margin-right: 12px !important;
        min-width: 35px !important;
    }
}

/* --- END contact_us.css --- */
/* --- END contact_us.css --- */