/* =====================================================
   YAYASAN BIRU LESTARI NUSANTARA (YBLN)
   Website Style
   Author : YBLN
   Version : 1.0
===================================================== */

/* ===========================
   GOOGLE FONT
=========================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');


/* ===========================
   ROOT COLOR
=========================== */

:root{

    --primary:#0A4D8C;
    --secondary:#0F6FAF;
    --green:#2E7D32;
    --light:#F5FAFC;
    --white:#ffffff;

    --dark:#0D1B2A;
    --gray:#6C757D;

    --shadow:0 10px 30px rgba(0,0,0,.08);

    --radius:15px;

    --transition:.35s ease;

    --max-width:1200px;

}


/* ===========================
   RESET
=========================== */

*{

    margin:0;
    padding:0;
    box-sizing:border-box;

}

html{

    scroll-behavior:smooth;

}

body{

    font-family:'Poppins',sans-serif;
    background:var(--white);
    color:var(--dark);
    line-height:1.7;

}

img{

    width:100%;
    display:block;

}

a{

    text-decoration:none;

}

ul{

    list-style:none;

}

button{

    border:none;
    cursor:pointer;
    font-family:'Poppins',sans-serif;

}

section{

    padding:100px 0;

}


/* ===========================
   CONTAINER
=========================== */

.container{

    width:90%;
    max-width:var(--max-width);
    margin:auto;

}


/* ===========================
   TYPOGRAPHY
=========================== */

.section-subtitle{

    color:var(--secondary);
    font-size:15px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:2px;

}

.section-title{

    font-size:42px;
    font-weight:700;
    color:var(--dark);
    margin:15px 0;

}

.section-text{

    color:var(--gray);
    font-size:17px;

}


/* ===========================
   BUTTON
=========================== */

.btn{

    display:inline-block;

    padding:15px 35px;

    border-radius:50px;

    transition:var(--transition);

    font-weight:600;

}

.btn-primary{

    background:var(--primary);
    color:white;

}

.btn-primary:hover{

    background:var(--secondary);

}

.btn-outline{

    border:2px solid white;
    color:white;

}

.btn-outline:hover{

    background:white;
    color:var(--primary);

}


/* ===========================
   HEADER
=========================== */

/* HEADER AWAL */

/* ==========================================
   HEADER
========================================== */

/* HEADER */



/*====================================================
HEADER
====================================================*/

#header{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 18px 0;
    background: transparent;
    transition: all .35s ease;
    z-index: 9999;
}

/* Header saat di-scroll */

/* Header saat scroll */

#header.active{

    background:var(--primary);

    box-shadow:0 12px 30px rgba(0,0,0,.18);

}

/*====================================================
NAVBAR
====================================================*/

.navbar{
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 90px;
}

/*====================================================
LOGO
====================================================*/

.logo{
    display: flex;
    align-items: center;
    gap: 15px;
}

.logo img{
    width: 65px;
    display: block;
}

.logo-text{
    display: flex;
    flex-direction: column;
}

.logo-text h2{
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    margin: 0;
}

.logo-text span{
    color: rgba(255,255,255,.85);
    font-size: 12px;
    margin-top: 3px;
}

/*====================================================
MENU
====================================================*/

.nav-menu{
    display: flex;
    align-items: center;
    gap: 35px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.nav-menu li{
    list-style: none;
}

.nav-menu a{
    color: #fff;
    font-size: 17px;
    font-weight: 600;
    transition: .3s;
    position: relative;
}

.nav-menu a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:-6px;
    width:0;
    height:2px;
    background:#4FC3F7;
    transition:.3s;
}

.nav-menu a:hover::after{
    width:100%;
}

.nav-menu a:hover{
    color:#4FC3F7;
}

/*====================================================
BUTTON
====================================================*/

/* .btn-primary{
    background:#1565C0;
    color:#fff;
    padding:15px 35px;
    border-radius:50px;
    font-weight:600;
    transition:.3s;
}

.btn-primary:hover{
    background:#1976D2;
} */

.btn-primary{

    background:var(--primary);

    color:#fff;

}

.btn-primary:hover{

    background:#0A4D8C;

}

/*====================================================
HEADER ACTIVE
====================================================*/

#header.active .logo-text h2,
#header.active .logo-text span,
#header.active .nav-menu a{
    color:#fff;
}

#header.active .btn-primary{
    background:#fff;
    color:#0A4D8C;
}

#header.active .btn-primary:hover{
    background:#4FC3F7;
    color:#fff;
}

/*====================================================
HAMBURGER
====================================================*/

.hamburger{
    display:none;
    flex-direction:column;
    gap:6px;
    cursor:pointer;
}

.hamburger span{
    width:28px;
    height:3px;
    background:#fff;
    border-radius:3px;
}

/*====================================================
RESPONSIVE
====================================================*/

@media(max-width:991px){

    .nav-menu{
        display:none;
    }

    .btn-primary{
        display:none;
    }

    .hamburger{
        display:flex;
    }

    .logo-text span{
        display:none;
    }

}


:root{

    --primary:#072746;
    --secondary:#0A4D8C;
    --accent:#2BB3E8;
    --light:#F5F9FC;
    --text:#1D2A35;

}


/*==================================
HERO SECTION
===================================*/


/*==========================================
HERO
==========================================*/

#hero{

position:relative;

min-height:100vh;

display:flex;

align-items:center;

background:#072746;

overflow:hidden;

}

.hero-overlay{

position:absolute;

width:100%;

height:100%;

background:
linear-gradient(
90deg,
rgba(7,39,70,.95),
rgba(7,39,70,.70)
);

}

.hero-wrapper{

position:relative;

z-index:2;

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:80px;

padding-top:120px;

}

.hero-tag{

display:inline-block;

padding:12px 22px;

background:rgba(255,255,255,.12);

border:1px solid rgba(255,255,255,.2);

border-radius:40px;

color:#6bd2ff;

font-weight:600;

margin-bottom:25px;

backdrop-filter:blur(10px);

}

.hero-content h1{

font-size:72px;

line-height:1.1;

color:white;

margin-bottom:25px;

}

.hero-content p{

font-size:18px;

line-height:1.9;

color:#d6e3ef;

max-width:600px;

margin-bottom:40px;

}

.hero-buttons{

display:flex;

gap:20px;

margin-bottom:50px;

}

.btn-outline{

padding:16px 40px;

border:2px solid rgba(255,255,255,.4);

color:white;

border-radius:50px;

}

.btn-outline:hover{

background:white;

color:#0A4D8C;

}

.hero-stats{

display:flex;

gap:50px;

}

.hero-stats h3{

font-size:34px;

color:white;

margin-bottom:6px;

}

.hero-stats span{

color:#9fc4da;

}

.hero-image{

position:relative;

}

.hero-image img{

width:100%;

height:650px;

object-fit:cover;

border-radius:30px;

box-shadow:0 30px 60px rgba(0,0,0,.25);

}

.floating-card{

position:absolute;

left:-40px;

bottom:40px;

background:white;

padding:25px;

width:280px;

border-radius:20px;

box-shadow:0 20px 40px rgba(0,0,0,.2);

}

.floating-card h4{

margin-bottom:12px;

color:#0A4D8C;

}

.floating-card p{

font-size:15px;

line-height:1.7;

color:#666;

}

@media(max-width:992px){

.hero-wrapper{

grid-template-columns:1fr;

text-align:center;

}

.hero-content p{

margin:auto auto 35px;

}

.hero-buttons{

justify-content:center;

}

.hero-stats{

justify-content:center;

}

.hero-image{

margin-top:50px;

}

.floating-card{

position:relative;

left:0;

bottom:0;

margin-top:20px;

width:100%;

}

.hero-content h1{

font-size:48px;

}

.hero-image img{

height:450px;

}

}


/* ===========================
   CARD
=========================== */

.card{

    background:white;

    border-radius:var(--radius);

    box-shadow:var(--shadow);

    padding:35px;

    transition:.4s;

}

.card:hover{

    transform:translateY(-10px);

}


/* ===========================
   GRID
=========================== */

.grid-2{

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:50px;

}

.grid-3{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:30px;

}

.grid-4{

    display:grid;

    grid-template-columns:repeat(4,1fr);

    gap:25px;

}


/* ===========================
   FOOTER
=========================== */

/* footer{

    background:#071521;

    color:white;

    padding:70px 0 30px;

} */

#footer{

    background:var(--primary);

    color:#fff;

}

footer p{

    color:#bbb;

}


/* ===========================
   SCROLLBAR
=========================== */

::-webkit-scrollbar{

    width:8px;

}

::-webkit-scrollbar-thumb{

    background:var(--primary);

    border-radius:50px;

}


/* ===========================
   RESPONSIVE
=========================== */

@media(max-width:992px){

.grid-2{

grid-template-columns:1fr;

}

.grid-3{

grid-template-columns:1fr 1fr;

}

.grid-4{

grid-template-columns:1fr 1fr;

}

.hero-content h1{

font-size:48px;

}

.section-title{

font-size:34px;

}

}


@media(max-width:768px){

.menu{

display:none;

}

.hero-content h1{

font-size:38px;

}

.grid-3{

grid-template-columns:1fr;

}

.grid-4{

grid-template-columns:1fr;

}

section{

padding:70px 0;

}

}

/*==================================
LOGO
===================================*/

.logo{

display:flex;
align-items:center;
gap:15px;

}

.logo img{

width:60px;

}

.logo-text{

display:flex;
flex-direction:column;

}

.logo-text h2{

font-size:22px;
font-weight:700;
margin:0;
color:white;

}

.logo-text span{

font-size:11px;
letter-spacing:1px;
color:#d8f2ff;

}

header.active .logo-text h2{

color:var(--primary);

}

header.active .logo-text span{

color:var(--gray);

}

/*==================================
NAV BUTTON
===================================*/

nav .btn{

padding:12px 25px;

}

/*==================================
HAMBURGER
===================================*/

.hamburger{

display:none;

width:35px;
cursor:pointer;

}

.hamburger span{

display:block;
height:3px;
margin:6px 0;
background:white;
border-radius:5px;

}

header.active .hamburger span{

background:var(--dark);

}

/*==================================
RESPONSIVE
===================================*/

@media(max-width:992px){

nav .btn{

display:none;

}

.menu{

display:none;

}

.hamburger{

display:block;

}

.logo img{

width:50px;

}

.logo-text h2{

font-size:18px;

}

.logo-text span{

display:none;

}

}

/*=====================================
FOOTER
======================================*/

.footer{

background:#071521;
color:#fff;
padding:80px 0 30px;

}

.footer-grid{

display:grid;
grid-template-columns:2fr 1fr 1fr 1.5fr;
gap:50px;

}

.footer-logo{

width:80px;
margin-bottom:20px;

}

.footer h3{

font-size:24px;
margin-bottom:15px;

}

.footer p{

color:#bfc7cf;
font-size:15px;
line-height:1.8;

}

.tagline{

margin-top:20px;
color:#8fd8ff;
font-style:italic;
font-weight:500;

}

.footer h4{

margin-bottom:20px;
font-size:18px;

}

.footer ul{

list-style:none;
padding:0;

}

.footer ul li{

margin-bottom:12px;

}

.footer a{

color:#d9e5ef;
transition:.3s;

}

.footer a:hover{

color:#69c7ff;

}

.footer-social{

margin-top:25px;
display:flex;
gap:15px;
flex-wrap:wrap;

}

.footer-social a{

padding:8px 15px;
border:1px solid rgba(255,255,255,.2);
border-radius:30px;
font-size:14px;

}

.footer hr{

margin:50px 0 25px;
border:none;
height:1px;
background:rgba(255,255,255,.1);

}

.footer-bottom{

display:flex;
justify-content:space-between;
align-items:center;
flex-wrap:wrap;
gap:15px;

}

.footer-bottom p{

font-size:14px;
color:#9fa8b3;

}

@media(max-width:992px){

.footer-grid{

grid-template-columns:1fr 1fr;

}

}

@media(max-width:768px){

.footer-grid{

grid-template-columns:1fr;

}

.footer-bottom{

flex-direction:column;
text-align:center;

}

}

/*==================================
RESPONSIVE HERO
===================================*/

@media(max-width:992px){

.hero-content h1{

font-size:52px;

}

.hero-content p{

font-size:17px;

}

}

@media(max-width:768px){

#hero{

text-align:center;

}

.hero-content{

margin:auto;

}

.hero-content h1{

font-size:38px;

}

.hero-content p{

font-size:16px;

}

.hero-button{

justify-content:center;

}

.hero-tag{

font-size:12px;

}

}

/*==================================
ABOUT
===================================*/


/*==================================================
ABOUT
===================================================*/

#about{

padding:140px 0;

background:#f7fbfd;

}

.about-wrapper{

display:grid;

grid-template-columns:1.1fr 1fr;

gap:90px;

align-items:center;

}

/* IMAGE */

.about-image{

position:relative;

}

.about-image img{

width:100%;

height:650px;

object-fit:cover;

border-radius:25px;

box-shadow:0 30px 60px rgba(0,0,0,.12);

transition:.6s;

}

.about-image:hover img{

transform:scale(1.03);

}

/* BADGE */

.about-badge{

position:absolute;

bottom:40px;

right:-40px;

background:white;

padding:28px 35px;

border-radius:18px;

box-shadow:0 20px 50px rgba(0,0,0,.15);

}

.about-badge h3{

font-size:28px;

color:var(--primary);

margin-bottom:8px;

}

.about-badge p{

font-size:15px;

color:#666;

}

/* CONTENT */

.about-content{

display:flex;

flex-direction:column;

justify-content:center;

}

.about-content .section-title{

font-size:54px;

line-height:1.2;

margin:20px 0 30px;

}

.about-content p{

font-size:17px;

line-height:2;

color:#6d7785;

margin-bottom:25px;

}

/* FEATURE */

.about-feature{

margin:40px 0;

display:flex;

flex-direction:column;

gap:28px;

}

.feature-item{

display:flex;

align-items:center;

gap:22px;

}

.feature-item i{

width:70px;

height:70px;

background:linear-gradient(135deg,#0A4D8C,#0F6FAF);

color:white;

display:flex;

justify-content:center;

align-items:center;

border-radius:50%;

font-size:28px;

flex-shrink:0;

box-shadow:0 15px 30px rgba(10,77,140,.25);

}

.feature-item h4{

font-size:21px;

margin-bottom:5px;

}

.feature-item span{

color:#7b8794;

font-size:15px;

}

/* BUTTON */

.about-content .btn{

width:fit-content;

padding:16px 38px;

margin-top:15px;

}

/* RESPONSIVE */

@media(max-width:992px){

.about-wrapper{

grid-template-columns:1fr;

gap:60px;

}

.about-image img{

height:500px;

}

.about-content{

text-align:center;

}

.about-feature{

align-items:center;

}

.feature-item{

text-align:left;

}

.about-content .btn{

margin:auto;

}

.about-badge{

right:20px;

bottom:20px;

}

.about-content .section-title{

font-size:42px;

}

}

@media(max-width:768px){

#about{

padding:90px 0;

}

.about-image img{

height:380px;

}

.about-content .section-title{

font-size:34px;

}

.feature-item{

flex-direction:column;

text-align:center;

}

.about-badge{

position:relative;

right:0;

bottom:0;

margin-top:20px;

width:100%;

text-align:center;

}

}


/*==================================
WHY YBLN
===================================*/

#why{

background:white;

}

.section-heading{

text-align:center;

max-width:850px;

margin:0 auto 70px;

}

.why-card{

background:white;

padding:40px 30px;

border-radius:18px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.4s;

text-align:center;

border-top:5px solid transparent;

}

.why-card:hover{

transform:translateY(-12px);

border-color:var(--primary);

}

.why-icon{

width:90px;

height:90px;

margin:auto;

margin-bottom:25px;

background:linear-gradient(135deg,#0A4D8C,#0F6FAF);

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

color:white;

font-size:34px;

}

.why-card h3{

font-size:23px;

margin-bottom:15px;

color:var(--dark);

}

.why-card p{

color:var(--gray);

line-height:1.8;

font-size:15px;

}

/*==================================
PROGRAMS
===================================*/

#program{

background:#F7FBFD;

}

.program-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

}

.program-card{

background:white;

border-radius:20px;

overflow:hidden;

box-shadow:0 20px 40px rgba(0,0,0,.08);

transition:.4s;

}

.program-card:hover{

transform:translateY(-12px);

}

.program-image{

overflow:hidden;

height:260px;

}

.program-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.program-card:hover img{

transform:scale(1.08);

}

.program-content{

padding:35px;

}

.program-content span{

display:inline-block;

font-size:12px;

font-weight:600;

letter-spacing:1px;

color:var(--secondary);

margin-bottom:15px;

}

.program-content h3{

font-size:26px;

margin-bottom:18px;

line-height:1.3;

}

.program-content p{

color:var(--gray);

line-height:1.8;

margin-bottom:25px;

}

.program-content a{

color:var(--primary);

font-weight:600;

display:inline-flex;

align-items:center;

gap:10px;

transition:.3s;

}

.program-content a:hover{

gap:15px;

}

@media(max-width:992px){

.program-grid{

grid-template-columns:1fr;

}

}

/*==================================
IMPACT
===================================*/

#impact{

position:relative;

background:linear-gradient(rgba(6,37,66,.92),
rgba(6,37,66,.92)),
url("../assets/images/coastline.jpg") center center/cover;

padding:120px 0;

color:white;

}

#impact .section-title{

color:white;

}

#impact .section-text{

color:#d6e7f5;

}

#impact .section-subtitle{

color:#8fd8ff;

}

.impact-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:30px;

margin-top:60px;

}

.impact-card{

background:rgba(255,255,255,.08);

backdrop-filter:blur(10px);

padding:45px 20px;

border-radius:20px;

text-align:center;

transition:.35s;

border:1px solid rgba(255,255,255,.12);

}

.impact-card:hover{

transform:translateY(-10px);

background:rgba(255,255,255,.12);

}

.impact-card i{

font-size:45px;

margin-bottom:25px;

color:#7fdcff;

}

.impact-card h3{

font-size:48px;

margin-bottom:10px;

font-weight:700;

}

.impact-card span{

font-size:16px;

color:#d7e6ef;

}

@media(max-width:992px){

.impact-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.impact-grid{

grid-template-columns:1fr;

}

}


/*==================================================
GALLERY
===================================================*/

#gallery{

padding:120px 0;

background:white;

}

.gallery-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

grid-auto-rows:280px;

gap:20px;

}

.gallery-item{

position:relative;

overflow:hidden;

border-radius:20px;

cursor:pointer;

}

.gallery-item.large{

grid-row:span 2;

}

.gallery-item img{

width:100%;

height:100%;

object-fit:cover;

transition:.6s;

}

.gallery-item:hover img{

transform:scale(1.08);

}

.gallery-overlay{

position:absolute;

left:0;

bottom:0;

width:100%;

padding:30px;

background:linear-gradient(
transparent,
rgba(0,0,0,.82)
);

color:white;

opacity:0;

transition:.35s;

}

.gallery-item:hover .gallery-overlay{

opacity:1;

}

.gallery-overlay h3{

font-size:24px;

margin-bottom:8px;

}

.gallery-overlay p{

font-size:15px;

color:#ddd;

}

@media(max-width:992px){

.gallery-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.gallery-grid{

grid-template-columns:1fr;

grid-auto-rows:260px;

}

.gallery-item.large{

grid-row:span 1;

}

}

/*==================================================
LATEST NEWS
===================================================*/

#news{

padding:120px 0;

background:#F7FBFD;

}

.news-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:35px;

margin-top:60px;

}

.news-card{

background:white;

border-radius:20px;

overflow:hidden;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

}

.news-card:hover{

transform:translateY(-10px);

}

.news-image{

height:240px;

overflow:hidden;

}

.news-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.5s;

}

.news-card:hover img{

transform:scale(1.08);

}

.news-content{

padding:30px;

}

.news-date{

display:inline-block;

font-size:13px;

font-weight:600;

color:var(--secondary);

margin-bottom:15px;

}

.news-content h3{

font-size:24px;

line-height:1.4;

margin-bottom:18px;

color:var(--dark);

}

.news-content p{

font-size:15px;

line-height:1.8;

color:var(--gray);

margin-bottom:20px;

}

.news-content a{

display:inline-flex;

align-items:center;

gap:10px;

font-weight:600;

color:var(--primary);

transition:.3s;

}

.news-content a:hover{

gap:15px;

}

.news-button{

text-align:center;

margin-top:60px;

}

@media(max-width:992px){

.news-grid{

grid-template-columns:1fr;

}

}


/*==================================================
PARTNERS
===================================================*/

#partners{

padding:120px 0;

background:white;

}

.partners-grid{

display:grid;

grid-template-columns:repeat(6,1fr);

gap:30px;

margin-top:60px;

align-items:center;

}

.partner-item{

height:120px;

background:#fff;

border:1px solid #edf2f7;

border-radius:18px;

display:flex;

justify-content:center;

align-items:center;

transition:.35s;

box-shadow:0 10px 25px rgba(0,0,0,.05);

}

.partner-item:hover{

transform:translateY(-8px);

box-shadow:0 20px 40px rgba(0,0,0,.08);

}

.partner-item img{

max-width:120px;

max-height:60px;

filter:grayscale(100%);

opacity:.75;

transition:.35s;

}

.partner-item:hover img{

filter:none;

opacity:1;

transform:scale(1.05);

}

@media(max-width:992px){

.partners-grid{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:768px){

.partners-grid{

grid-template-columns:repeat(2,1fr);

gap:20px;

}

.partner-item{

height:100px;

}

}

/*==================================================
CTA
===================================================*/

#cta{

position:relative;

padding:140px 0;

background:url("../assets/images/cta-bg.jpg") center center/cover no-repeat;

overflow:hidden;

}

.cta-overlay{

position:absolute;

top:0;

left:0;

width:100%;

height:100%;

background:linear-gradient(rgba(7,39,70,.90),rgba(7,39,70,.90));

}

.cta-content{

position:relative;

z-index:2;

max-width:850px;

margin:auto;

text-align:center;

color:white;

}

.cta-content h2{

font-size:54px;

line-height:1.25;

margin:20px 0 30px;

}

.cta-content p{

font-size:18px;

line-height:1.9;

color:#d8e8f2;

max-width:720px;

margin:auto auto 45px;

}

.cta-buttons{

display:flex;

justify-content:center;

gap:20px;

flex-wrap:wrap;

}

.btn-outline-light{

padding:16px 36px;

border:2px solid rgba(255,255,255,.7);

color:white;

background:transparent;

transition:.3s;

}

.btn-outline-light:hover{

background:white;

color:var(--primary);

}

@media(max-width:768px){

#cta{

padding:90px 0;

}

.cta-content h2{

font-size:34px;

}

.cta-content p{

font-size:16px;

}

}

/*==================================================
CONTACT
===================================================*/

#contact{

padding:120px 0;

background:#F7FBFD;

}

.contact-wrapper{

display:grid;

grid-template-columns:1fr 1fr;

gap:70px;

margin-top:70px;

}

/* LEFT */

.contact-info{

display:flex;

flex-direction:column;

justify-content:center;

}

.contact-info h3{

font-size:34px;

margin-bottom:20px;

}

.contact-info p{

line-height:1.9;

color:#666;

margin-bottom:40px;

}

.contact-item{

display:flex;

align-items:flex-start;

gap:20px;

margin-bottom:28px;

}

.contact-item i{

width:60px;

height:60px;

border-radius:50%;

background:linear-gradient(135deg,#0A4D8C,#0F6FAF);

display:flex;

justify-content:center;

align-items:center;

color:white;

font-size:22px;

flex-shrink:0;

}

.contact-item h4{

margin-bottom:5px;

font-size:19px;

}

.contact-item span{

color:#666;

}

/* RIGHT */

.contact-form{

background:white;

padding:45px;

border-radius:20px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.form-group{

margin-bottom:22px;

}

.form-group input,

.form-group textarea{

width:100%;

padding:16px 20px;

border:1px solid #ddd;

border-radius:12px;

font-size:15px;

outline:none;

transition:.3s;

font-family:inherit;

}

.form-group input:focus,

.form-group textarea:focus{

border-color:var(--primary);

box-shadow:0 0 0 3px rgba(10,77,140,.12);

}

.contact-form button{

border:none;

cursor:pointer;

padding:16px 35px;

}

/* Responsive */

@media(max-width:992px){

.contact-wrapper{

grid-template-columns:1fr;

}

.contact-form{

padding:30px;

}

}

@media(max-width:768px){

#contact{

padding:90px 0;

}

.contact-info{

text-align:center;

}

.contact-item{

justify-content:center;

text-align:left;

}

}

/*==================================================
HEADER
===================================================*/


/* ===============================
HEADER
=============================== */

#header{

    position:fixed;

    top:0;

    left:0;

    width:100%;

    padding:18px 0;

    z-index:9999;

    transition:all .35s ease;

    background:transparent;

}

/* ketika scroll */

#header.scrolled{

    background:#0A4D8C;

    box-shadow:0 8px 30px rgba(0,0,0,.18);

}

#header.scrolled{

    background:#0A4D8C !important;

}


/* NAVBAR */

.navbar{

display:flex;

justify-content:space-between;

align-items:center;

}

/* LOGO */

.logo{

display:flex;

align-items:center;

gap:15px;

}

.logo img{

width:60px;

}

.logo-text h2{

font-size:24px;

color:white;

margin-bottom:2px;

}

.logo-text span{

font-size:11px;

letter-spacing:.5px;

color:white;

}

/* Saat scroll */

#header.scrolled .logo-text h2{

color:#0A4D8C;

}

#header.scrolled .logo-text span{

color:#666;

}

/* MENU */

.nav-menu{

display:flex;

align-items:center;

gap:35px;

list-style:none;

}

.nav-menu a{

font-weight:500;

color:white;

transition:.3s;

position:relative;

}

.nav-menu a::after{

content:"";

position:absolute;

bottom:-6px;

left:0;

width:0;

height:2px;

background:#49C5FF;

transition:.3s;

}

.nav-menu a:hover::after{

width:100%;

}

.nav-menu a:hover{

color:#49C5FF;

}

#header.scrolled .nav-menu a{

color:#222;

}

/* BUTTON */

#header .btn{

padding:14px 30px;

}

/* HAMBURGER */

.hamburger{

display:none;

flex-direction:column;

gap:5px;

cursor:pointer;

}

.hamburger span{

width:28px;

height:3px;

background:white;

transition:.3s;

}

#header.scrolled .hamburger span{

background:#222;

}

/* RESPONSIVE */

@media(max-width:992px){

.nav-menu{

display:none;

}

#header .btn{

display:none;

}

.hamburger{

display:flex;

}

.logo-text span{

display:none;

}

}