/* FONT IMPORT */
@import url(layout.min.css);
/* Google Font */
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --white: #fff;
    --black: #000;
    --primary: #2C6BAA;
    --secondary: #333333;
}

html {
    scroll-behavior: smooth;
    height: 100%;
}

body {
    position: relative;
    background: #fff;
    overflow-x: hidden;
    height: 100%;
    font-family: "Roboto", sans-serif;
}

::selection {
    background: var(--primary);
    color: #fff;
    text-shadow: none;
}

::-webkit-scrollbar {
    width: 5px;
    background-color: #f5f5f5;
}

::-webkit-scrollbar-button:start:decrement,
::-webkit-scrollbar-button:end:increment {
    display: none;
}

::-webkit-scrollbar-track-piece {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    background-color: #fff;
}

::-webkit-scrollbar-thumb:vertical {
    border-radius: 10px;
    background-color: var(--primary);
}

section {
    position: relative;
}

.img-auto {
    display: block;
    max-width: 100%;
    margin: 0 auto;
}

a,
button {
    text-decoration: none !important;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

a:hover,
button:hover {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

ul {
    padding: 0;
    margin: 0;
    list-style: none;
}

figure {
    margin: 0;
}

/* PRELOADER */

.preLoader {
    width: 100%;
    height: 100%;
    z-index: 1111;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.preLoader.black {
    background-color: var(--secondary);
    z-index: 11113;
}

.preLoader.white {
    z-index: 11112;
    background-color: var(--primary);
}

/* PRELOADER */

/* GLOBAL CSS */

.themeBtn {
    background: var(--primary);
    font-size: 0.875rem;
    color: var(--white);
    text-transform: uppercase;
    font-weight: 500;
    display: inline-block;
    padding: 0.9375rem 2em;
    border-radius: 50px;
    line-height: normal;
    position: relative;
    z-index: 1;
    overflow: hidden;
}

.themeBtn:before {
    content: "";
    position: absolute;
    background: var(--black);
    inset: 0;
    z-index: -1;
    transform: translateY(100%);
    transition: 0.5s ease;
}

.themeBtn:hover:before {
    transform: translateY(0);
}

.themeBtn:hover {
    color: var(--white) !important;
}

/* !GLOBAL CSS */

/* Main Banner Css Start */

.mainBanner {
    background: url(../images/mainBanner.png)center/cover fixed;
    height: 965px;
    display: flex;
    align-items: center;
}

.mainBanner:before {
    content: "";
    position: absolute;
    background: var(--black);
    inset: 0;
    opacity: 55%;
}

.bannerContent {
    margin-top: 8rem;
}

.bannerContent h1 {
    color: var(--white);
    font-weight: bold;
    text-transform: capitalize;
    font-size: 5.3125rem;
    letter-spacing: -1.7px;
    margin: 0;
}

.bannerContent p {
    color: var(--white);
    font-size: 1.125rem;
    letter-spacing: -0.37px;
    margin: 2.5rem 0;
}

.themeBtn1 {
    letter-spacing: 0.69px;
    font-weight: 500;
    padding: 1.75rem 4em;
}

/* Main Banner Css End */

/* Collabrating Sec Css Start */

.collabratingSec {
    padding: 3.75rem 0 9.375rem 0;
}

.secHeading {
    font-size: 3.125rem;
    font-weight: bold;
    color: var(--black);
    letter-spacing: -1.01px;
}

.collabratingContent p {
    color: var(--black);
    letter-spacing: -0.37px;
    font-size: 1.5625rem;
    margin: 0;
    width: 94%;
    line-height: 1.3;
}

.collabratingContent p+p {
    margin-top: 1.25rem;
}

.collabratingContent h2 {
    margin-bottom: 2.5rem;
}

.collabratingImage img,
.aboutImage img {
    border-radius: 20px;
}

/* Collabrating Sec Css End */

/* About Sec Css Start */

.aboutSec {
    background: var(--primary);
    padding: 3.75rem 0;
}

.aboutContent p {
    color: var(--white);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    margin: 1.25rem 0 0 0;
    width: 93%;
    line-height: 1.3;
}

.aboutContent .themeBtn {
    background: var(--white);
    color: var(--black);
    margin-top: 3.125rem;
}

/* About Sec Css End */

/* Service Sec Css Start */

.serviceSec {
    padding: 3.75rem 0;
}

.serviceHeading p {
    color: var(--black);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    width: 50%;
    margin: 1.875rem auto 6.25rem;
    line-height: 1.3;
}

.serviceCard {
    position: relative;
    display: block;
    border-radius: 20px;
    overflow: hidden;
    margin-top: 0.75rem;
}

.serviceCard figure img {
    width: 100%;
}

.serviceContent {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: baseline;
    flex-direction: column;
    justify-content: end;
    background: rgb(0 0 0 / 50%);
    padding: 0 0 1.875rem 4.375rem;
    transition: 0.5s ease;
}

.serviceCard:hover .serviceContent {
    background: rgb(0 0 0 / 70%);
}

.serviceContent h4 {
    color: var(--white);
    font-size: 1.5625rem;
    font-weight: bold;
    letter-spacing: -0.5px;
    margin-bottom: 1.25rem;
}

.serviceContent p {
    color: var(--white);
    margin: 0;
    font-size: 1.125rem;
    letter-spacing: -0.37px;
    width: 88%;
}

/* Service Sec Css End */

/* Featured Sec Css Start */

.featuredSec {
    background: #FAFAFA;
    padding: 6.25rem 0;
}

.featuredContent p {
    color: var(--black);
    letter-spacing: -0.37px;
    font-size: 1.5625rem;
    width: 50%;
    margin: 2.5rem auto 0;
    line-height: 1.4;
}

/* Featured Sec Css End */

/* Donation Sec Css Start */

.donationSec {
    padding: 5.625rem 0;
}

.donationContent p {
    color: var(--black);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    line-height: 1.4;
    margin: 1.25rem 0 0 0;
    width: 93%;
}

.donationContent h2 {
    margin-bottom: 2.5rem;
}

.donationImage img {
    border-radius: 20px;
}

.donation-widget {
    margin-top: 6.25rem;
}

/* Amount buttons */
.amount-row {
    display: flex;
    gap: 0.625rem;
    flex-wrap: wrap;
    margin-bottom: 1.75rem;
}

.amount-btn {
    padding: 0.625rem 1.125rem;
    font-size: 0.875rem;
    border: 1px solid #333;
    background: #fff;
    color: #111;
    border-radius: 3px;
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
}

.amount-btn:hover {
    background: #f2f2f2;
}

.amount-btn.selected {
    background: var(--black);
    color: #fff;
    border-color: var(--black);
}

.custom-amount-input {
    padding: 0.625rem 1.125rem;
    font-size: 0.875rem;
    border: 1px solid var(--black);
    border-radius: 3px;
    width: 110px;
    display: none;
}

.custom-amount-input.visible {
    display: inline-block;
}

/* Frequency dropdown */
.frequency-section {
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-bottom: 0.875rem;
    margin-bottom: 1.375rem;
    cursor: pointer;
    user-select: none;
}

.frequency-display {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 1.125rem;
    color: #111;
}

.frequency-display .chevron {
    transition: transform 0.2s ease;
    font-size: 0.875rem;
}

.frequency-display.open .chevron {
    transform: rotate(180deg);
}

.frequency-options {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    display: none;
    z-index: 10;
    overflow: hidden;
}

.frequency-options.open {
    display: block;
}

.frequency-option {
    padding: 0.75rem 1rem;
    font-size: 0.9375rem;
    color: #111;
}

.frequency-option:hover {
    background: #f2f2f2;
}

.frequency-option.active {
    font-weight: 600;
}

/* Cover fee checkbox */
.cover-fee-row {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-bottom: 1.625rem;
    cursor: pointer;
    user-select: none;
}

.cover-fee-row input[type="checkbox"] {
    width: 16px;
    height: 16px;
    cursor: pointer;
    accent-color: #111;
}

.cover-fee-row label {
    font-size: 0.875rem;
    color: var(--black);
    cursor: pointer;
    margin: 0;
    letter-spacing: -0.27px;
}

/* Totals */
.totals {
    margin-bottom: 1.5rem;
}

.totals-row {
    display: flex;
    justify-content: space-between;
    font-size: 1rem;
    color: #111;
    padding: 3px 0;
}

.totals-row.total {
    font-weight: 700;
}

.donation-widget .themeBtn1 {
    border: unset;
    outline: unset;
    padding: 1.125rem 3em;
    background: var(--black);
}

/* Donation Sec Css End */

/* Footer Css Start */

footer {
    background: var(--black);
    padding-top: 5.625rem;
}

footer h2 {
    color: var(--white);
    font-weight: bold;
    letter-spacing: -0.83px;
    font-size: 2.5625rem;
}

.footLogo p {
    color: var(--white);
    font-size: 1.0625rem;
    letter-spacing: -0.37px;
    width: 95%;
    margin: 0;
}

.contactInfo ul li a {
    font-size: 1.125rem;
    letter-spacing: -0.37px;
    color: var(--white);
    display: flex;
    align-items: center;
    gap: 1rem;
}

.contactInfo ul li a i {
    font-size: 1.625rem;
}

.contactInfo ul,
.footLinks ul {
    margin-top: 1.875rem;
}

.contactInfo ul li+li {
    margin-top: 1rem;
}

.footLinks ul li a {
    font-size: 1.125rem;
    letter-spacing: -0.37px;
    color: #DCDCDC;
}

.footLinks ul li+li {
    margin-top: 1rem;
}

.contactInfo,
.footLinks {
    margin-left: 4rem;
}

.newsletter {
    text-align: right;
}

.newsletter p {
    color: var(--white);
    margin: 1.875rem 0;
    font-size: 1.125rem;
    letter-spacing: -0.37px;
}

.newsForm {
    display: flex;
    align-items: center;
    justify-content: end;
    gap: 0.625rem;
}

.newsForm input {
    outline: unset;
    border: unset;
    box-shadow: unset;
    width: 260px;
    height: 65px;
    padding-left: 2rem;
}

.newsForm button {
    outline: unset;
    border: unset;
    font-size: 0.875rem;
    letter-spacing: 0.69px;
    color: var(--black);
    background: #DCDCDC;
    text-transform: uppercase;
    border-radius: 50px;
    padding: 1.375rem 2.3em;
    font-weight: 500;
}

.newsletter span {
    color: #FAFAFA;
    font-size: 0.875rem;
    letter-spacing: -0.27px;
    display: block;
    margin-top: 1.875rem;
}

.copyRight p {
    margin: 0;
    text-align: center;
    color: #FAFAFA;
    font-size: 1.125rem;
    letter-spacing: -0.37px;
}

.copyRight {
    border-top: 1px solid #FAFAFA;
    padding: 2rem 0;
    margin-top: 5rem;
}

/* Footer Css End */

.reveal {
    visibility: hidden;
    position: relative;
    overflow: hidden;
}

/* Inner Css Start */

.aboutBanner {
    background: url(../images/aboutBanner.png)center/cover;
    height: 650px;
    display: flex;
    align-items: center;
    z-index: 1;
}

.aboutBanner:before {
    content: "";
    position: absolute;
    background: var(--black);
    inset: 0;
    opacity: 55%;
    z-index: -1;
}

.aboutBanner h2 {
    text-align: center;
    color: var(--white);
    margin: 8rem auto 0;
    font-size: 5.3125rem;
    letter-spacing: -1.7px;
}

.aboutInner {
    background: unset;
    padding: 7.5rem 0;
}

.aboutInner .aboutContent p {
    color: var(--black);
}

.faqSec {
    background: var(--primary);
    padding: 7.5rem 0;
}

.faqSec div#accordion {
    border-top: 1px solid var(--white);
    padding-top: 1.5rem;
    width: 90%;
}

.faqSec #accordion .card {
    border: none;
    border-bottom: 1px solid var(--white);
    padding: 0 0 1.5rem 0;
    background: transparent;
    margin-bottom: 1.5rem;
    border-radius: unset;
}

.faqSec #accordion .card .btn-link {
    --height: 5rem;
    --width: 4.5rem;
    width: 100%;
    display: flex;
    align-items: center;
    color: var(--white);
    padding: 0;
    border: 0;
    font-size: 2.5rem;
    font-weight: 400;
    border-radius: 5px;
    letter-spacing: -0.83px;
    text-decoration: none;
    overflow: hidden;
    border-bottom-left-radius: 0;
    text-align: left;
}

.faqSec #accordion .card .btn-link i {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    margin-left: auto;
    background: 000;
    font-size: 1rem;
}

.faqSec #accordion .card .btn-link i::before {
    content: "\f068";
}

.faqSec #accordion .card .btn-link.collapsed i::before {
    content: "\f067";
}

.faqSec #accordion .card+.card {
    margin-top: 0;
}

.faqSec #accordion .card .card-body {
    padding: 0rem 4rem 0.5rem 0rem;
}

.faqSec #accordion .card .card-body p {
    color: var(--white);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    width: 70%;
    margin: 1.5rem auto 0;
}

.faqImage img,
.leaderImage img {
    border-radius: 20px;
}

.leaderSec {
    padding: 3.75rem 0 6.25rem 0;
}

.leaderSec .row+.row {
    margin-top: 7.5rem;
}

.leaderContent p {
    color: var(--black);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    margin: 1.25rem 0 2.5rem 0;
    line-height: 1.4;
    width: 95%;
}

.leaderContent .themeBtn {
    background: var(--black);
}

.leaderContent2 p {
    width: 100%;
    margin: 1.25rem 0 0 0;
}

.boardBanner {
    background: url(../images/boardBanner.png)center/cover;
}

.boardSect {
    padding: 3.75rem 0 6.875rem 0;
}

.boardContent p {
    letter-spacing: -0.37px;
    font-size: 1.5625rem;
    line-height: 1.4;
    margin: 1.25rem auto 0;
    width: 82%;
}

.boardContent h2 {
    margin-bottom: 2.5rem;
}

.memberSec {
    padding: 6.25rem 0 9.375rem 0;
    background: #FAFAFA;
}

.memberSec .row+.row {
    margin-top: 6.25rem;
}

.memberImage img {
    width: 100%;
}

.memberDetail h3 {
    font-size: 1.5625rem;
    font-weight: bold;
    color: var(--black);
    letter-spacing: -0.5px;
    margin: 0;
}

.memberDetail span {
    color: var(--black);
    letter-spacing: -0.23px;
    font-size: 0.75rem;
    display: block;
    margin-top: 1.25rem;
}

.memberDetail p {
    font-size: 1.125rem;
    color: var(--black);
    letter-spacing: -0.37px;
    margin: 1.125rem 0 0 0;
}

.memberWraps {
    display: flex;
    gap: 5rem;
    margin-top: 6.25rem;
}

.memberWraps .memberDetail {
    flex: 1;
}

.memberLeft {
    margin-right: 3rem;
}

.memberRight {
    margin-left: 3rem;
}

.togetterSec {
    background: url(../images/togetherBg.png)center/cover;
    padding: 12.5rem 0;
}

.togetherContent p {
    color: var(--white);
    font-size: 1.5625rem;
    letter-spacing: -0.37px;
    width: 75%;
    margin: 2.5rem auto 0;
}

.mediaBanner {
    background: url(../images/mediaBanner.png)center/cover;
}

.eventBanner {
    background: url(../images/eventBanner.png)center/cover;
}

.eventInner {
    padding: 6.25rem 0 5rem 0;
}

.eventContent p {
    color: var(--black);
    letter-spacing: -0.37px;
    font-size: 1.5625rem;
    line-height: 1.4;
    width: 82%;
    margin: 1.25rem auto 0;
}

.eventContent {
    margin-bottom: 7.5rem;
}

.eventText ul {
    display: flex;
    gap: 0.625rem;
    margin: 2.5rem 0 1.25rem 0;
}

.eventText ul li {
    font-size: 0.75rem;
    letter-spacing: -0.23px;
    color: var(--black);
}

.eventText ul li+li {
    border-left: 1px solid var(--black);
    padding-left: 0.625rem;
}

.eventText h2 {
    font-size: 2.5625rem;
    font-weight: 400;
    letter-spacing: -0.83px;
    color: var(--black);
    width: 70%;
    margin-bottom: 2.5rem;
}

.eventText a {
    font-size: 0.875rem;
    color: var(--black);
    letter-spacing: -0.27px;
}

.contactBanner {
    background: url(../images/contactBanner.png)center/cover;
}

.contactInner {
    padding: 5.625rem 0;
}

.contactText {
    width: 85%;
}

.contactText p {
    color: var(--black);
    letter-spacing: -0.37px;
    font-size: 1.125rem;
    width: 75%;
    margin-bottom: 4rem;
}

.contactText label {
    color: var(--black);
}

.contactText .form-control {
    border: unset;
    outline: unset;
    box-shadow: unset;
    border-bottom: 1px solid var(--black);
    border-radius: unset;
}

.contactText textarea {
    height: 100px;
}

.contactText button {
    background: var(--black);
    border: unset;
    outline: unset;
    padding: 1.25rem 2.75rem;
}

.contactText .form-group {
    margin-bottom: 1.5rem;
}

.contactImage img{
    border-radius: 20px;
}

.mapSec iframe{
    display: block;
    filter: grayscale(1);
}

.igcSect{
    padding-top: 6rem;
}

/* Inner Css End */