/*=========================================
AVAILABLE SUPPORT
AKAORU FOUNDATION
=========================================*/

:root{

--primary:#0d6efd;
--secondary:#0b5ed7;
--accent:#ffc107;
--dark:#05264d;
--light:#f8fbff;
--white:#ffffff;
--text:#5c677d;

}

/*=========================================
HERO
=========================================*/

.support-hero{

position:relative;

overflow:hidden;

padding:160px 0 90px;

min-height:820px;

display:flex;

align-items:center;

background:
linear-gradient(
135deg,
rgba(5,38,77,.88),
rgba(7,58,114,.82)
),
url("/uploads/support-hero.jpg");

background-size:cover;
background-position:center center;
background-repeat:no-repeat;

color:#fff;

}

.support-hero .container{

position:relative;
z-index:2;

}

.hero-overlay{

position:absolute;
top:0;
left:0;
right:0;
bottom:0;

background:
linear-gradient(
90deg,
rgba(5,38,77,.45),
rgba(5,38,77,.08)
);

pointer-events:none;

}

.hero-title{

font-size:64px;

font-weight:800;

line-height:1.1;

margin-bottom:25px;

color:#ffffff;

text-shadow:
0 3px 15px rgba(0,0,0,.35);

}

.hero-title span{

display:block;

margin-top:8px;

color:#ffc107;

}

.hero-text{

font-size:20px;

line-height:1.9;

max-width:650px;

margin-bottom:45px;

color:rgba(255,255,255,.92);

}

.hero-card{

position:relative;

margin-left:40px;

}


.hero-card{

margin-top:40px;

}

@media(min-width:992px){

.hero-card{

margin-top:0;

margin-left:60px;

}

}
/*=========================================
FLOATING CARD
=========================================*/

.hero-card{

background:rgba(255,255,255,.12);

backdrop-filter:blur(18px);

border:1px solid rgba(255,255,255,.18);

border-radius:24px;

padding:35px;

box-shadow:

0 25px 50px rgba(0,0,0,.25);

animation:floatCard 5s ease-in-out infinite;

}

.hero-card-header{

font-size:24px;

font-weight:700;

margin-bottom:30px;

display:flex;

align-items:center;

gap:10px;

}

.hero-item{

display:flex;

justify-content:space-between;

align-items:center;

padding:10px 0;

}

.hero-item strong{

display:block;

font-size:34px;

font-weight:800;

}

.hero-item small{

display:block;

opacity:.8;

font-size:15px;

}

.hero-item i{

font-size:34px;

color:var(--accent);

}

/*=========================================
SCROLL ICON
=========================================*/

.scroll-indicator{

display:none;

}

/*=========================================
ANIMATIONS
=========================================*/

@keyframes bounce{

0%,100%{

transform:translate(-50%,0);

}

50%{

transform:translate(-50%,12px);

}

}

@keyframes floatCard{

0%,100%{

transform:translateY(0);

}

50%{

transform:translateY(-12px);

}

}

/*=========================================
SECTION DEFAULT
=========================================*/

.section{

padding:90px 0;

}

.section-tag{

display:inline-block;

background:#eef5ff;

color:var(--primary);

padding:8px 20px;

border-radius:50px;

font-weight:700;

margin-bottom:18px;

}

.section-title{

font-size:42px;

font-weight:800;

color:var(--dark);

margin-bottom:20px;

}

.section-text{

font-size:18px;

color:var(--text);

max-width:760px;

margin:auto;

line-height:1.8;

}

/*=========================================
RESPONSIVE
=========================================*/

@media(max-width:991px){

.support-hero{

padding:130px 0 70px;

min-height:auto;

}

.hero-title{

font-size:44px;

}

.hero-card{

margin:60px 0 0;

}

}

@media(max-width:768px){

.support-hero{

padding:120px 0 60px;

}

.hero-title{

font-size:34px;

}

.hero-text{

font-size:17px;

}

.hero-search{

margin-top:35px;

}

}



/*=========================================
STATISTICS
=========================================*/

.support-statistics{

background:#f7fbff;

}

.stat-card{

background:#fff;

padding:45px 30px;

border-radius:18px;

text-align:center;

transition:.35s;

height:100%;

box-shadow:0 15px 40px rgba(0,0,0,.05);

border:1px solid #edf3fb;

}

.stat-card:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(13,110,253,.12);

}

.stat-icon{

width:85px;

height:85px;

margin:auto;

margin-bottom:25px;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

background:linear-gradient(135deg,#0d6efd,#1f7dff);

color:#fff;

font-size:32px;

}

.stat-card h2{

font-size:42px;

font-weight:800;

color:#05264d;

margin-bottom:10px;

}

.stat-card p{

margin:0;

font-size:17px;

color:#6c757d;

}




/*=========================================
CATEGORY CARDS
=========================================*/

.category-section{

background:#fff;

}

.category-card{

background:#fff;

border-radius:20px;

padding:35px;

height:100%;

transition:.35s;

box-shadow:0 12px 35px rgba(0,0,0,.06);

border:1px solid #eef3fb;

display:flex;

flex-direction:column;

}

.category-card:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(13,110,253,.15);

}

.category-icon{

width:75px;

height:75px;

border-radius:18px;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:30px;

margin-bottom:25px;

}

.category-card h4{

font-weight:700;

margin-bottom:15px;

color:#05264d;

}

.category-card p{

color:#6c757d;

line-height:1.7;

flex:1;

}

.category-footer{

display:flex;

justify-content:space-between;

align-items:center;

margin-top:25px;

padding-top:20px;

border-top:1px solid #edf2f7;

}

.category-footer span{

font-weight:700;

color:#0d6efd;

}

.category-footer a{

text-decoration:none;

font-weight:700;

}



/*=========================================
FEATURED SUPPORT
=========================================*/

.featured-support{

background:#f7fbff;

}

.support-card{

position:relative;

background:#fff;

border-radius:22px;

overflow:hidden;

transition:.35s;

height:100%;

box-shadow:0 18px 45px rgba(0,0,0,.08);

}

.support-card:hover{

transform:translateY(-12px);

box-shadow:0 28px 70px rgba(13,110,253,.16);

}

.support-image{

position:relative;

height:250px;

overflow:hidden;

}

.support-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.support-card:hover img{

transform:scale(1.08);

}

.support-overlay{

position:absolute;

left:0;

right:0;

bottom:0;

padding:18px;

background:linear-gradient(transparent,rgba(0,0,0,.85));

}

.support-overlay span{

display:inline-block;

background:#0d6efd;

padding:8px 18px;

border-radius:30px;

font-size:14px;

font-weight:700;

color:#fff;

}

.support-ribbon{

position:absolute;

top:18px;

right:-40px;

background:#ffc107;

color:#222;

padding:8px 50px;

font-weight:700;

transform:rotate(45deg);

z-index:5;

}

.support-content{

padding:30px;

}

.support-content h3{

font-size:24px;

font-weight:700;

margin-bottom:15px;

color:#05264d;

}

.support-content p{

color:#6c757d;

line-height:1.8;

margin-bottom:25px;

}

.support-meta{

display:flex;

justify-content:space-between;

flex-wrap:wrap;

gap:10px;

margin-bottom:20px;

font-size:15px;

color:#6c757d;

}

.support-progress{

margin-bottom:20px;

}

.support-price{

font-size:28px;

font-weight:800;

color:#0d6efd;

margin-bottom:20px;

}

.support-buttons{

display:flex;

gap:12px;

}

.support-buttons .btn{

flex:1;

border-radius:10px;

font-weight:700;

}

.progress{

height:10px;

border-radius:30px;

background:#edf2f7;

}

.progress-bar{

border-radius:30px;

}



/*=========================================
AVAILABLE LIST
=========================================*/

.opportunity-card{

background:#fff;

border-radius:22px;

overflow:hidden;

height:100%;

transition:.35s;

box-shadow:0 12px 35px rgba(0,0,0,.06);

border:1px solid #edf2f7;

}

.opportunity-card:hover{

transform:translateY(-8px);

box-shadow:0 25px 60px rgba(13,110,253,.14);

}

.opportunity-image{

position:relative;

height:230px;

overflow:hidden;

}

.opportunity-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.45s;

}

.opportunity-card:hover img{

transform:scale(1.08);

}

.opportunity-category{

position:absolute;

left:18px;

bottom:18px;

background:#0d6efd;

color:#fff;

padding:8px 18px;

border-radius:30px;

font-size:14px;

font-weight:700;

}

.opportunity-body{

padding:28px;

}

.opportunity-body h3{

font-size:24px;

font-weight:700;

margin-bottom:15px;

color:#05264d;

}

.opportunity-body p{

line-height:1.8;

color:#6c757d;

margin-bottom:20px;

}

.support-details{

display:flex;

flex-direction:column;

gap:12px;

font-size:15px;

margin-bottom:22px;

}

.support-value{

font-size:30px;

font-weight:800;

color:#0d6efd;

}

.support-details i{

width:22px;

}



/*=========================================
APPLICATION PROCESS
=========================================*/

.apply-process{

background:#fff;

}

.timeline{

display:grid;

grid-template-columns:repeat(6,1fr);

gap:25px;

position:relative;

margin-top:50px;

}

.timeline::before{

content:"";

position:absolute;

top:48px;

left:7%;

right:7%;

height:4px;

background:#dbe8ff;

z-index:0;

}

.timeline-step{

position:relative;

text-align:center;

z-index:1;

}

.timeline-icon{

width:95px;

height:95px;

margin:auto;

margin-bottom:25px;

background:#fff;

border:5px solid #0d6efd;

border-radius:50%;

display:flex;

flex-direction:column;

justify-content:center;

align-items:center;

transition:.35s;

box-shadow:0 15px 40px rgba(13,110,253,.10);

}

.timeline-step:hover .timeline-icon{

background:#0d6efd;

color:#fff;

transform:translateY(-10px);

}

.timeline-icon span{

font-size:13px;

font-weight:700;

}

.timeline-icon i{

font-size:28px;

margin-top:4px;

}

.timeline-step h4{

font-size:22px;

font-weight:700;

margin-bottom:15px;

color:#05264d;

}

.timeline-step p{

font-size:15px;

line-height:1.8;

color:#6c757d;

}

@media(max-width:1200px){

.timeline{

grid-template-columns:repeat(3,1fr);

}

.timeline::before{

display:none;

}

}

@media(max-width:768px){

.timeline{

grid-template-columns:1fr;

gap:40px;

}

.timeline::before{

display:none;

}

}




/*=========================================
ELIGIBILITY
=========================================*/

.eligibility-section{

background:#f8fbff;

}

.eligibility-card{

background:#fff;

border-radius:22px;

padding:35px;

height:100%;

text-align:center;

transition:.35s;

box-shadow:0 15px 45px rgba(0,0,0,.05);

border:1px solid #edf2f7;

display:flex;

flex-direction:column;

}

.eligibility-card:hover{

transform:translateY(-10px);

box-shadow:0 25px 60px rgba(13,110,253,.12);

}

.eligibility-icon{

width:90px;

height:90px;

margin:auto;

margin-bottom:25px;

border-radius:50%;

background:linear-gradient(135deg,#0d6efd,#0052cc);

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-size:34px;

}

.eligibility-card h4{

font-size:23px;

font-weight:700;

margin-bottom:18px;

color:#05264d;

}

.eligibility-card p{

color:#6c757d;

line-height:1.8;

flex:1;

margin-bottom:25px;

}

.eligibility-link{

text-decoration:none;

font-weight:700;

color:#0d6efd;

}

.eligibility-link:hover{

color:#084298;

}

.eligibility-note{

background:#fff;

padding:40px;

border-radius:22px;

box-shadow:0 15px 45px rgba(0,0,0,.05);

border-left:6px solid #0d6efd;

}

.eligibility-note h4{

font-weight:700;

margin-bottom:15px;

color:#05264d;

}

.eligibility-note p{

margin:0;

line-height:1.9;

color:#5c677d;

}



/*=========================================
NEWSLETTER
=========================================*/

.newsletter-section{

background:#0d6efd;

color:#fff;

}

.newsletter-box{

background:rgba(255,255,255,.08);

padding:60px;

border-radius:25px;

backdrop-filter:blur(10px);

}

.newsletter-title{

font-size:42px;

font-weight:800;

margin-bottom:20px;

}

.newsletter-box p{

font-size:18px;

line-height:1.8;

margin-bottom:25px;

}

.newsletter-benefits{

list-style:none;

padding:0;

margin:0;

}

.newsletter-benefits li{

padding:10px 0;

font-size:17px;

}

.newsletter-form{

background:#fff;

padding:35px;

border-radius:20px;

}

.newsletter-form .form-control{

height:60px;

border-radius:12px;

}

.newsletter-form .btn{

height:60px;

border-radius:12px;

font-weight:700;

}



/*=========================================
FINAL CTA
=========================================*/

.final-support-cta{

background:#f7fbff;

}

.cta-card{

background:#fff;

padding:80px 60px;

border-radius:30px;

box-shadow:0 20px 60px rgba(0,0,0,.08);

}

.cta-card h2{

font-size:46px;

font-weight:800;

color:#05264d;

margin-bottom:25px;

}

.cta-card p{

font-size:19px;

line-height:1.9;

max-width:850px;

margin:auto;

margin-bottom:35px;

color:#6c757d;

}

.cta-card .btn{

padding:15px 35px;

border-radius:50px;

font-weight:700;

margin-bottom:12px;

}

@media(max-width:768px){

.newsletter-box{

padding:35px;

}

.newsletter-title{

font-size:30px;

}

.cta-card{

padding:45px 25px;

}

.cta-card h2{

font-size:32px;

}

}



/*=========================================
ASSISTANCE HUBS
=========================================*/

.assistance-hubs{

background:#f8fbff;

}

.hub-card{

background:#fff;

border-radius:25px;

padding:45px;

box-shadow:0 15px 45px rgba(0,0,0,.06);

margin-bottom:35px;

}

.hub-card img{

width:100%;

height:320px;

object-fit:cover;

}

.hub-card h2{

font-size:34px;

font-weight:800;

margin-bottom:15px;

color:#05264d;

}

.hub-card p{

font-size:17px;

line-height:1.8;

margin-bottom:30px;

color:#6c757d;

}

.hub-list{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:15px;

}

.hub-item{

background:#f8fbff;

border:2px solid #e9ecef;

padding:18px;

border-radius:14px;

font-weight:700;

text-align:left;

transition:.3s;

cursor:pointer;

}

.hub-item i{

width:35px;

color:#0d6efd;

}

.hub-item:hover{

background:#0d6efd;

color:#fff;

border-color:#0d6efd;

transform:translateY(-4px);

}

.hub-item:hover i{

color:#fff;

}

@media(max-width:768px){

.hub-list{

grid-template-columns:1fr;

}

.hub-card{

padding:25px;

}

.hub-card h2{

font-size:28px;

}

}