/* ============ Tokens ============ */
:root{
  --navy:#16324F;
  --navy-dark:#0E2337;
  --navy-tint:#EEF2F6;
  --orange:#D9713C;
  --orange-dark:#B85A2A;
  --orange-tint:#FBEDE3;
  --blue:#3E6FA6;
  --green:#3F7D5C;
  --purple:#6B5CA5;
  --teal:#2E8B8B;
  --grey-bg:#E8ECEF;
  --text:#1C2B3A;
  --text-secondary:#5A6B7A;
  --white:#FFFFFF;
  --border:#D7DEE4;
  --radius:10px;
  --maxw:1120px;
  --shadow:0 10px 30px rgba(22,50,79,0.08);
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text);
  background:var(--white);
  line-height:1.6;
  padding-bottom:64px; /* space for mobile sticky bar */
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
.container{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
section{padding:72px 0;}
h1,h2,h3{line-height:1.2;margin:0 0 16px;color:var(--navy);}
h1{font-size:44px;font-weight:700;}
h2{font-size:30px;font-weight:700;}
h3{font-size:19px;font-weight:600;}
p{margin:0 0 16px;color:var(--text-secondary);}
.lede{font-size:18px;max-width:640px;}
.eyebrow{font-size:13px;font-weight:600;letter-spacing:0.02em;color:var(--orange-dark);margin-bottom:10px;}
.center{text-align:center;margin-left:auto;margin-right:auto;}

/* ============ Buttons ============ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  padding:13px 26px;border-radius:8px;font-weight:600;font-size:15px;
  border:2px solid transparent;cursor:pointer;transition:transform .15s ease, box-shadow .15s ease;
}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--orange);color:var(--white);}
.btn-primary:hover{background:var(--orange-dark);}
.btn-outline{background:transparent;border-color:var(--navy);color:var(--navy);}
.btn-outline:hover{background:var(--navy);color:var(--white);}
.btn-whatsapp{background:#2E8B57;color:var(--white);}
.btn-whatsapp:hover{background:#256F46;}
.btn-block{width:100%;}

/* ============ Header ============ */
header.site-header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,0.96);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--border);
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:var(--maxw);margin:0 auto;}
.logo-link img{height:44px;width:auto;}
nav.main-nav{display:flex;gap:32px;align-items:center;}
nav.main-nav a{font-weight:500;font-size:15px;color:var(--text);padding:6px 0;border-bottom:2px solid transparent;}
nav.main-nav a.active,nav.main-nav a:hover{border-color:var(--orange);color:var(--navy);}
.nav-actions{display:flex;align-items:center;gap:14px;}
.nav-toggle{display:none;background:none;border:none;font-size:26px;cursor:pointer;color:var(--navy);}

@media (max-width:860px){
  nav.main-nav{
    position:absolute;top:100%;left:0;right:0;background:var(--white);
    flex-direction:column;gap:0;border-bottom:1px solid var(--border);
    max-height:0;overflow:hidden;transition:max-height .25s ease;
  }
  nav.main-nav.open{max-height:300px;}
  nav.main-nav a{width:100%;padding:14px 24px;border-bottom:1px solid var(--border);border-left:3px solid transparent;}
  nav.main-nav a.active,nav.main-nav a:hover{border-left-color:var(--orange);border-bottom-color:var(--border);}
  .nav-toggle{display:block;}
  .nav-actions .btn-outline-hide{display:none;}
}

/* ============ Hero ============ */
.hero{padding:64px 0 56px;background:linear-gradient(180deg,var(--navy-tint) 0%, var(--white) 75%);}
.hero-grid{display:grid;grid-template-columns:1.15fr 0.85fr;gap:48px;align-items:center;}
.hero h1{font-size:46px;}
.hero-tags{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 28px;}
.hero-tags span{background:var(--white);border:1px solid var(--border);color:var(--navy);font-size:13px;font-weight:600;padding:6px 14px;border-radius:999px;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:22px;}
.hero-trust{font-size:14px;color:var(--text-secondary);border-left:3px solid var(--orange);padding-left:12px;}
.hero-art{display:flex;justify-content:center;}
@media (max-width:860px){
  .hero-grid{grid-template-columns:1fr;}
  .hero h1{font-size:34px;}
  .hero-art{order:-1;max-width:280px;margin:0 auto;}
}

/* ============ Services ============ */
.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;}
.service-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);
  padding:28px;transition:transform .18s ease, box-shadow .18s ease;position:relative;overflow:hidden;
}
.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);}
.service-icon{
  width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  margin-bottom:16px;font-size:22px;color:var(--white);
}
.service-card p{margin-bottom:6px;font-size:14.5px;}
.learn-more{font-size:14px;font-weight:600;color:var(--orange-dark);opacity:0;transform:translateX(-4px);transition:all .18s ease;display:inline-block;margin-top:6px;}
.service-card:hover .learn-more{opacity:1;transform:translateX(0);}
.service-card.cta-card{background:var(--navy);color:var(--white);display:flex;flex-direction:column;justify-content:center;}
.service-card.cta-card h3{color:var(--white);}
.service-card.cta-card a{color:var(--orange-tint);font-weight:600;font-size:14px;}
@media (max-width:860px){.services-grid{grid-template-columns:1fr;}}

.icon-orange{background:var(--orange);}
.icon-blue{background:var(--blue);}
.icon-green{background:var(--green);}
.icon-purple{background:var(--purple);}
.icon-teal{background:var(--teal);}

/* ============ News ============ */
.news-section{background:var(--navy-tint);}
.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;}
.news-card{
  background:var(--white);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;
  cursor:pointer;display:flex;flex-direction:column;transition:box-shadow .18s ease;
}
.news-card:hover{box-shadow:var(--shadow);}
.news-thumb{width:100%;height:150px;object-fit:cover;background:var(--grey-bg);}
.news-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1;}
.news-source{font-size:12px;font-weight:600;color:var(--teal);}
.news-title{font-size:15px;font-weight:600;color:var(--navy);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.news-read{font-size:13px;font-weight:600;color:var(--orange-dark);margin-top:auto;}
.news-empty{color:var(--text-secondary);font-size:14px;}
@media (max-width:860px){.news-grid{grid-template-columns:1fr;}}

/* News modal */
.modal-overlay{
  position:fixed;inset:0;background:rgba(14,35,55,0.55);display:none;
  align-items:center;justify-content:center;z-index:200;padding:20px;
}
.modal-overlay.open{display:flex;}
.modal-box{background:var(--white);border-radius:var(--radius);max-width:520px;width:100%;padding:30px;position:relative;}
.modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:22px;cursor:pointer;color:var(--text-secondary);}
.modal-source{font-size:12px;font-weight:600;color:var(--teal);margin-bottom:6px;}
.modal-box h3{margin-bottom:12px;}

/* ============ Trust section ============ */
.trust-section{background:var(--navy);color:var(--white);text-align:center;}
.trust-section h2{color:var(--white);}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:40px 0;text-align:left;}
.trust-item{border-top:3px solid var(--orange);padding-top:14px;}
.trust-item h3{color:var(--white);font-size:17px;}
.trust-item p{color:#C7D2DC;font-size:14px;margin:0;}
.trust-cta{margin-top:36px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
@media (max-width:860px){.trust-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:520px){.trust-grid{grid-template-columns:1fr;}}

/* ============ Footer ============ */
footer.site-footer{background:var(--navy-dark);color:#B9C6D2;padding:56px 0 24px;}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px;}
.footer-grid h4{color:var(--white);font-size:14px;margin-bottom:14px;}
.footer-grid ul{list-style:none;padding:0;margin:0;}
.footer-grid li{margin-bottom:9px;font-size:14px;}
.footer-grid li a:hover{color:var(--orange);}
.footer-logo img{height:36px;margin-bottom:14px;}
.footer-social{display:flex;gap:10px;margin-top:16px;}
.footer-social a{width:36px;height:36px;border:1px solid #2C4460;border-radius:8px;display:flex;align-items:center;justify-content:center;}
.footer-social a:hover{border-color:var(--orange);}
.footer-bottom{border-top:1px solid #223347;margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px;color:#7E93A6;}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr;}}

/* ============ Sticky mobile bar ============ */
.mobile-cta-bar{
  position:fixed;bottom:0;left:0;right:0;z-index:60;display:none;
  background:var(--white);border-top:1px solid var(--border);padding:10px 14px;gap:10px;
}
.mobile-cta-bar a{flex:1;text-align:center;padding:12px 0;border-radius:8px;font-weight:600;font-size:14px;}
@media (max-width:760px){.mobile-cta-bar{display:flex;}}

.whatsapp-float{
  position:fixed;bottom:24px;right:24px;background:#2E8B57;color:#fff;
  width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:26px;box-shadow:var(--shadow);z-index:55;
}
@media (max-width:760px){.whatsapp-float{display:none;}}

/* ============ Page header (inner pages) ============ */
.page-hero{background:var(--navy-tint);padding:56px 0;text-align:center;}
.page-hero h1{font-size:36px;}

/* ============ About / Contact bits ============ */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
@media (max-width:860px){.two-col{grid-template-columns:1fr;}}

.value-list{list-style:none;padding:0;margin:0;}
.value-list li{padding:12px 0;border-bottom:1px solid var(--border);display:flex;gap:12px;}
.value-list li span.dot{width:8px;height:8px;border-radius:50%;background:var(--orange);margin-top:8px;flex-shrink:0;}

.form-card{background:var(--white);border:1px solid var(--border);border-radius:var(--radius);padding:32px;box-shadow:var(--shadow);}
.form-row{margin-bottom:16px;}
.form-row label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--navy);}
.form-row input,.form-row select,.form-row textarea{
  width:100%;padding:11px 13px;border:1px solid var(--border);border-radius:8px;font-size:14.5px;font-family:inherit;
}
.checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.checkbox-grid label{display:flex;align-items:center;gap:8px;font-weight:400;font-size:14px;color:var(--text);}
.checkbox-grid input{width:auto;}
.contact-info-card{background:var(--navy-tint);border-radius:var(--radius);padding:28px;}
.contact-info-card a{color:var(--navy);font-weight:600;}
.contact-info-card .info-row{margin-bottom:14px;font-size:14.5px;}
