/* =========================
GLOBAL RESET
========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}



/* =========================
BODY
========================= */

body{

font-family:Arial, Helvetica, sans-serif;
background:#eef2f6;
color:#333;
line-height:1.5;

}



/* =========================
HEADER
========================= */

.site-header{

background:#0b3b6e;
color:#fff;
box-shadow:0 2px 8px rgba(0,0,0,0.08);

}

.header-container{

max-width:1200px;
margin:auto;
display:flex;
align-items:center;
justify-content:space-between;
padding:18px 20px;

}



/* =========================
LOGO AREA
========================= */

.logo-area{

display:flex;
align-items:center;

}

.logo-area img{

height:48px;
margin-right:12px;

}



/* =========================
COMPANY TEXT
========================= */

.company-text h1{

font-size:20px;
font-weight:700;
letter-spacing:0.5px;

}

.company-text p{

font-size:12px;
opacity:0.85;
margin-top:2px;

}



/* =========================
NAVIGATION
========================= */

.main-nav a{

color:#fff;
text-decoration:none;
margin-left:24px;
font-weight:600;
font-size:14px;
transition:0.25s;

}

.main-nav a:hover{

opacity:0.8;

}



/* =========================
FOOTER
========================= */

.site-footer{

background:linear-gradient(-45deg,#0b3b6e,#0a2e55,#0c417a,#082b4a);
background-size:400% 400%;
animation:footerFlow 14s ease infinite;

color:#fff;
margin-top:70px;
padding:55px 0 35px 0;

border-top:1px solid rgba(255,255,255,0.15);

}



/* FOOTER GRID */

.footer-container{

max-width:1200px;
margin:auto;
display:grid;
grid-template-columns:repeat(4,1fr);
gap:40px;
padding:0 20px;

}



/* FOOTER COLUMN */

.footer-col{

transition:all 0.3s ease;

}

.footer-col:hover{

transform:translateY(-4px);

}



/* HEADINGS */

.footer-col h4{

font-size:16px;
margin-bottom:16px;
font-weight:600;
letter-spacing:0.3px;

}



/* TEXT */

.footer-col p{

font-size:14px;
line-height:1.7;
opacity:0.9;

}



/* LINKS */

.footer-col ul{

list-style:none;
padding:0;

}

.footer-col ul li{

margin-bottom:10px;

}

.footer-col a{

color:#ffffff;
text-decoration:none;
font-size:14px;

position:relative;
transition:0.3s;

}



/* LINK HOVER ANIMATION */

.footer-col a::after{

content:"";
position:absolute;
width:0%;
height:1px;
left:0;
bottom:-3px;
background:#4fc3f7;

transition:0.3s;

}

.footer-col a:hover::after{

width:100%;

}



/* =========================
SOCIAL ICONS
========================= */

.footer-social{

text-align:center;
margin-top:35px;

padding-top:20px;
border-top:1px solid rgba(255,255,255,0.15);

}



.footer-social a{

display:inline-flex;
align-items:center;
justify-content:center;

width:38px;
height:38px;

margin:0 8px;

border-radius:50%;

background:rgba(255,255,255,0.08);

color:#fff;
font-size:16px;

transition:all 0.3s ease;

}



/* ICON HOVER */

.footer-social a:hover{

background:#4fc3f7;
color:#0b3b6e;

transform:translateY(-4px) scale(1.05);

box-shadow:0 10px 20px rgba(0,0,0,0.25);

}



/* =========================
BOTTOM
========================= */

.footer-bottom{

text-align:center;
margin-top:22px;
font-size:13px;
opacity:0.8;

}



/* =========================
RESPONSIVE FOOTER
========================= */

@media(max-width:900px){

.footer-container{

grid-template-columns:repeat(2,1fr);

}

}



@media(max-width:600px){

.footer-container{

grid-template-columns:1fr;
text-align:center;

}

.header-container{

flex-direction:column;
align-items:flex-start;
gap:10px;

}

.main-nav a{

margin-left:0;
margin-right:16px;

}

}



/* =========================
ANIMATED GRADIENT
========================= */

@keyframes footerFlow{

0%{
background-position:0% 50%;
}

50%{
background-position:100% 50%;
}

100%{
background-position:0% 50%;
}

}