/* Pentaprime brand tokens — sourced from pentaprime.org theme.json */
:root{
  --primary:#07121C;
  --secondary:#52BFB2;
  --third:#11569B;
  --fourth:#FFFFFF;
  --fifth:#474D53;
  --sixth:#CED2DC;
  --seventh:#E6F1FC;
  --eighth:#0E4881;
  --ninth:#A2A2A2;
  --tenth:#104F8E;
  --font-primary:'Lato',sans-serif;
  --font-secondary:'Open Sans',sans-serif;
}

*{box-sizing:border-box;margin:0;padding:0;}

body{
  font-family:var(--font-secondary);
  color:var(--primary);
  background:var(--fourth);
  line-height:1.6;
}

h1,h2,h3,h4{
  font-family:var(--font-primary);
  font-weight:700;
  color:var(--primary);
  line-height:1.25;
}

a{color:var(--third);text-decoration:none;}
a:hover{color:var(--eighth);}

img{max-width:100%;display:block;}

.container{
  max-width:1140px;
  margin:0 auto;
  padding:0 24px;
}

/* Header */
header.site-header{
  background:var(--fourth);
  border-bottom:1px solid var(--sixth);
  position:sticky;
  top:0;
  z-index:100;
}
.nav-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px 24px;
  max-width:1140px;
  margin:0 auto;
}
.logo img{height:48px;}
nav ul{
  display:flex;
  gap:28px;
  list-style:none;
}
nav a{
  color:var(--primary);
  font-weight:600;
  font-size:15px;
}
.nav-cta{
  background:var(--secondary);
  color:var(--primary)!important;
  padding:10px 22px;
  border-radius:4px;
  font-weight:700;
}
.nav-cta:hover{background:var(--third);color:var(--fourth)!important;}

/* Hero */
.hero{
  background:linear-gradient(135deg, rgba(7,18,28,0.88), rgba(17,86,155,0.82)), url('../images/hero-bg.jpg');
  background-size:cover;
  background-position:center;
  color:var(--fourth);
  padding:110px 24px;
  text-align:center;
}
.hero h1{
  color:var(--fourth);
  font-size:42px;
  max-width:780px;
  margin:0 auto 20px;
}
.hero p{
  font-size:18px;
  max-width:640px;
  margin:0 auto 32px;
  color:var(--seventh);
}
.btn{
  display:inline-block;
  background:var(--secondary);
  color:var(--primary);
  padding:14px 32px;
  border-radius:4px;
  font-weight:700;
  font-family:var(--font-primary);
}
.btn:hover{background:var(--third);color:var(--fourth);}
.btn-outline{
  background:transparent;
  border:2px solid var(--fourth);
  color:var(--fourth);
}
.btn-outline:hover{background:var(--fourth);color:var(--primary);}

/* Sections */
section{padding:80px 0;}
.section-alt{background:var(--seventh);}
.section-dark{background:var(--primary);color:var(--fourth);}
.section-dark h2{color:var(--fourth);}
.section-title{text-align:center;margin-bottom:48px;}
.section-title h2{font-size:32px;margin-bottom:12px;}
.section-title p{color:var(--fifth);max-width:600px;margin:0 auto;}

.grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:32px;
}
.grid-2{grid-template-columns:repeat(2,1fr);}

.card{
  background:var(--fourth);
  border:1px solid var(--sixth);
  border-radius:8px;
  padding:32px;
}
.card h3{font-size:20px;margin-bottom:12px;color:var(--third);}
.card p{color:var(--fifth);font-size:15px;}

.icon-circle{
  width:56px;height:56px;
  border-radius:50%;
  background:var(--seventh);
  display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;
  color:var(--third);
  font-size:24px;
  font-weight:700;
}

.stats{display:flex;justify-content:space-around;text-align:center;flex-wrap:wrap;gap:24px;}
.stat h3{font-size:36px;color:var(--secondary);}
.stat p{color:var(--sixth);}

.cta-banner{
  background:var(--eighth);
  color:var(--fourth);
  text-align:center;
  padding:64px 24px;
}
.cta-banner h2{color:var(--fourth);margin-bottom:16px;}

footer{
  background:var(--primary);
  color:var(--sixth);
  padding:48px 0 24px;
}
.footer-grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:32px;
  margin-bottom:32px;
}
footer h4{color:var(--fourth);margin-bottom:16px;font-size:16px;}
footer ul{list-style:none;}
footer ul li{margin-bottom:8px;}
footer a{color:var(--sixth);font-size:14px;}
footer a:hover{color:var(--secondary);}
.footer-bottom{
  border-top:1px solid var(--fifth);
  padding-top:20px;
  text-align:center;
  font-size:13px;
  color:var(--ninth);
}

/* Page header (non-home pages) */
.page-header{
  background:var(--primary);
  color:var(--fourth);
  padding:64px 24px;
  text-align:center;
}
.page-header h1{color:var(--fourth);}

/* Form */
form{display:flex;flex-direction:column;gap:16px;max-width:560px;}
input,textarea{
  font-family:var(--font-secondary);
  padding:12px 14px;
  border:1px solid var(--sixth);
  border-radius:4px;
  font-size:15px;
}
label{font-weight:600;font-size:14px;color:var(--primary);}

.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
.contact-info p{margin-bottom:12px;}
.contact-info strong{color:var(--third);}

@media (max-width:860px){
  nav ul{display:none;}
  .grid{grid-template-columns:1fr;}
  .grid-2{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr;}
  .contact-grid{grid-template-columns:1fr;}
  .hero h1{font-size:30px;}
}
