:root{ --brand:#176B87; --brand-2:#19A7CE; --accent:#F4D160; --ink:#0b1b25; --muted:#637585; --bg:#f7fbfd; --card:#fff; --radius:16px;}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial}
a{color:var(--brand);text-decoration:none} a:hover{text-decoration:underline}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
header{background:#fff;border-bottom:1px solid #e6eef3}
.header{display:flex;align-items:center;justify-content:space-between;padding:12px 0;gap:16px;flex-wrap:wrap}
.main-logo{height:96px}
@media (max-width: 960px){ .main-logo{height:72px} }
@media (max-width: 640px){ .main-logo{height:60px} }
nav ul{list-style:none;display:flex;gap:14px;margin:0;padding:0;flex-wrap:wrap}
nav a{padding:10px 12px;border-radius:12px}
nav a:hover,nav a.active{background:#f0f7fb}

/* Slider */
.slider{position:relative;overflow:hidden}
.slides{display:flex;transition:transform .7s ease-in-out}
.slide{min-width:100%;height:360px;position:relative;background:#e8f5f9}
.slide img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:contrast(102%)}
.slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.18))}
.slider .caption{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center;max-width:900px;padding:0 20px}

/* Global hero headings: black + bold */
.slider .caption h1,
.hero-img .title{
  color:#000 !important;
  font-weight:800 !important;
  text-shadow:none !important;
}
/* White text on the green second slide */
.slide.on-dark .caption h1,
.slide.on-dark .caption p{
  color:#ffffff !important;
  text-shadow:0 3px 14px rgba(0,0,0,.45) !important;
}

/* copy + grids */
.slider .caption h1{font-size:44px;line-height:1.1;margin:0 0 8px}
.slider .caption p{margin:0;opacity:.95;color:#33424f}

.section{padding:40px 0}
h2{margin:10px 0}
.lead{color:var(--muted);max-width:840px}
.card{background:var(--card);border:1px solid #e6eef3;border-radius:var(--radius);padding:18px;box-shadow:0 2px 12px rgba(0,0,0,.03)}
.grid{display:grid;gap:20px}
.grid.cols-3{grid-template-columns:repeat(3,1fr)}
@media (max-width: 960px){.grid.cols-3{grid-template-columns:1fr 1fr}}
@media (max-width: 640px){.grid.cols-3{grid-template-columns:1fr}}
.card img{width:100%;border-radius:12px;border:1px solid #e6eef3;background:#fff}

/* Inner hero */
.hero-img{position:relative;height:280px;background:#e8f5f9;display:flex;align-items:center}
.hero-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-img::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(0,0,0,.15))}
.hero-img .title{position:relative;font-size:38px;line-height:1.1;margin-left:24px}

footer{margin-top:40px;border-top:1px solid #e6eef3;background:#fff}
.footer{padding:18px 0;color:var(--muted);text-align:center}
.kicker{display:inline-block;padding:6px 10px;border-radius:999px;background:#eef7fb;color:var(--brand);font-weight:700;font-size:12px;letter-spacing:.3px;text-transform:uppercase}
.btn{display:inline-block;padding:10px 14px;border-radius:12px;border:1px solid #2d8a3e;background:#2d8a3e;color:#fff}
.btn:hover{filter:brightness(.95)}
.inquiry-button{display:inline-block;margin-top:10px;padding:10px 20px;background-color:#4caf50;color:#fff;border-radius:10px}
.inquiry-button:hover{background:#45a049}

/* Section titles with emoji icon */
.section-title{display:flex;gap:10px;align-items:center;font-size:28px;margin:18px 0 10px}
.section-title .icon{font-size:26px}

/* Social icons */
.social-icons { margin-top: 10px; text-align:center; }
.social-icons a { margin: 0 8px; font-size: 22px; color: #000; transition: color 0.3s; }
.social-icons a:hover { color: #0a66c2; }

/* --- Divisions section --- */
.divisions-section { padding: 40px 0; }
.divisions-section h2 { font-size: 1.8rem; margin: 0 0 12px; }
.divisions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 28px;
  margin-top: 16px;
}
.division-card {
  display: block;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 16px;
  padding: 20px;
  text-decoration: none;
  color: inherit;
  box-shadow: 0 6px 22px rgba(0,0,0,0.06);
  transition: transform .2s ease, box-shadow .2s ease;
}
.division-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0,0,0,0.1);
}
.division-card img {
  width: 100%;
  height: 180px;
  object-fit: contain;
  border-radius: 12px;
  background: #f7fafc;
}
.division-card h3 {
  margin: 14px 0 6px;
  font-size: 1.1rem;
}
.division-card p {
  margin: 0;
  color: #4a5568;
  font-size: 0.95rem;
}

.welcome-title {
  margin: 0 0 10px;
  font-size: 1.8rem;
  line-height: 1.35;
  font-weight: 800; /* Bold, black heading */
  color: #000;
}

@media (max-width: 640px) {
  
  
  
}


/* --- Intro card (designed welcome block) --- */
.intro-card { padding: 28px 0 10px; }
.intro-surface {
  position: relative;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.08);
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  border-radius: 18px;
  padding: 22px 24px;
  overflow: hidden;
}
.intro-accent {
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 6px;
  background: linear-gradient(180deg, #1e90ff 0%, #00c389 100%);
}
.intro-content { margin-left: 12px; }
.intro-title {
  margin: 0 0 10px;
  font-size: 1.6rem;
  line-height: 1.35;
  font-weight: 800;
  color: #000;
}
.intro-content p {
  margin: 8px 0;
  font-size: 1.05rem;
  line-height: 1.75;
  color: #2d3748;
  max-width: 1100px;
}
@media (max-width: 640px) {
  .intro-title { font-size: 1.35rem; }
  .intro-surface { padding: 18px; border-radius: 14px; }
  .intro-accent { width: 4px; }
}


/* --- Footer layout with dual addresses & contacts --- */
.footer .copyright { margin-top: 10px; color: #4a5568; font-size: 0.95rem; }
.footer-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 18px;
  margin-bottom: 10px;
}
.footer .office h4 { margin: 0 0 6px; font-size: 1rem; }
.footer .office p { margin: 0; color: #2d3748; font-size: 0.95rem; }
.contact-lines { margin: 10px 0; display: flex; flex-wrap: wrap; gap: 14px; }
.contact-lines a { text-decoration: none; color: #000; font-size: 0.95rem; }
.contact-lines i { margin-right: 6px; }
.social-icons { margin-top: 4px; text-align: left; }
.social-icons a { margin: 0 8px 0 0; font-size: 22px; color: #000; transition: color .2s; text-decoration:none; }
.social-icons a:hover { color: #0a66c2; }
@media (max-width: 640px) {
  .contact-lines { flex-direction: column; gap: 8px; }
}


/* --- Footer: three-column layout with centered contacts --- */
.footer-grid-3 {
  display: grid;
  grid-template-columns: 1fr minmax(320px, 520px) 1fr;
  gap: 18px;
  align-items: start;
}
.footer .office { text-align: center; }
.footer .office h4 { margin: 0 0 6px; font-size: 1rem; color:#4a6472; }
.footer .office p { margin: 0; color: #2d3748; font-size: 0.95rem; }
.contact-center { text-align: center; }
.contact-lines { margin: 4px 0 10px; display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; }
.contact-lines a { text-decoration: none; color: #000; font-size: 0.95rem; }
.contact-lines i { margin-right: 6px; }
.social-icons { text-align: center; margin-top: 2px; }
.social-icons a { margin: 0 8px; font-size: 22px; color: #000; transition: color .2s; text-decoration: none; }
.social-icons a:hover { color: #0a66c2; }
.footer .copyright { margin-top: 10px; color: #4a5568; font-size: 0.95rem; text-align: center; }
@media (max-width: 800px) {
  .footer-grid-3 { grid-template-columns: 1fr; gap: 12px; }
}
