/* ------------------- General Reset ------------------- */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; overflow-x: hidden; font-family: "Poppins", sans-serif; }
a { text-decoration: none; }
ul { list-style: none; margin: 0; padding: 0; }
img { max-width: 100%; height: auto; }

/* ------------------- Fullscreen Video Section ------------------- */
.video-section { position: relative; width: 100%; height: 100vh; overflow: hidden; }
.bg-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
@media (max-width: 768px) {
  .video-section { height: auto; }
  .bg-video { position: relative; width: 100%; height: auto; object-fit: contain; }
}

/* ------------------- Contact Cards Section ------------------- */
.contact-cards {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 25px;
  padding: 60px 20px;
  border-radius: 12px;
  align-items: start;
  align-content: start;
  grid-auto-rows: min-content;
}
.contact-cards-theme1 { background: linear-gradient(180deg, #eaf6fc, #f6fbff); }
.contact-cards-theme2 { background: #FFF0F5; }
.contact-cards-theme3 { background: #E5E4E2; }
.contact-cards-theme4 { background: #eff3ff; }
.contact-cards-theme5 { background: #eff3ff; }

.contact-card {
  background: #fff;
  border-radius: 18px;
  padding: 40px 20px;
  text-align: center;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12);
  transition: all 0.3s ease;
  cursor: pointer;
  text-decoration: none;
}
.card-icon-wrap {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px;
  background: rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}
.contact-card img { width: 32px; height: 32px; object-fit: contain; }
.contact-card p { font-size: 16px; font-weight: 600; color: #111; margin: 0; }
.contact-card:hover { transform: translateY(-8px); box-shadow: 0 14px 32px rgba(0,0,0,0.18); }

@media (max-width: 992px) {
  .contact-cards {
    grid-template-columns: repeat(2, 1fr);
    padding: 50px 15px;
    align-content: start;
    grid-auto-rows: min-content;
  }
}
@media (max-width: 576px) {
  .contact-cards {
    grid-template-columns: repeat(2, 1fr);
    padding: 40px 10px;
    align-content: start;
    grid-auto-rows: min-content;
  }
  .contact-card { padding: 30px 15px; }
  .contact-card img { width: 40px; }
  .contact-card p { font-size: 15px; }
}

/* ------------------- Contact & Social Section ------------------- */
.contact-social-section { padding: 80px 20px; text-align: center; }
.contact-social-section-theme1 { background: linear-gradient(180deg, #eaf6fc, #f6fbff); }
.contact-social-section-theme2 { background: #FFF0F5; }
.contact-social-section-theme3 { background: #E5E4E2; }
.contact-social-section-theme4 { background: #eff3ff; }
.contact-social-section-theme5 { background: #eff3ff; }
.save-contact { margin-bottom: 40px; }
.save-btn { background: #111; color: #fff; padding: 16px 40px; border: none; border-radius: 12px; font-size: 1.2rem; font-weight: 600; display: inline-flex; align-items: center; gap: 12px; cursor: pointer; transition: 0.3s; }
.save-btn:hover { background: #333; }
.social-cards { display: flex; justify-content: center; gap: 35px; flex-wrap: wrap; }
.social-card { background: #fff; border-radius: 20px; padding: 25px; width: 100px; height: 100px; display: flex; justify-content: center; align-items: center; box-shadow: 0 10px 25px rgba(0,0,0,0.15); transition: all 0.3s ease; }
.social-card:hover { transform: translateY(-10px); box-shadow: 0 15px 30px rgba(0,0,0,0.2); }
.social-card img { width: 50px; height: 50px; }
@media (max-width: 768px) {
  .save-btn { padding: 14px 30px; font-size: 1.1rem; }
  .social-card { width: 85px; height: 85px; padding: 20px; }
  .social-card img { width: 40px; height: 40px; }
}
@media (max-width: 480px) {
  .save-btn { padding: 12px 26px; font-size: 1rem; }
  .social-card { width: 75px; height: 75px; padding: 16px; }
  .social-card img { width: 34px; height: 34px; }
}

/* ------------------- Banner & Slider Section ------------------- */
.banner { position: relative; width: 100%; overflow: hidden; }
.slider { width: 100%; max-width: 100%; margin: 0 auto; }
.slick-list { overflow: hidden; }
.slick-track { display: flex; align-items: stretch; }
.slick-slide { display: block; outline: none; }
.slide-bg { height: calc(var(--vh, 1vh) * 100); min-height: 60vh; background-size: cover; background-position: center; display: flex; align-items: center; justify-content: center; position: relative; padding: 0 20px; }
.slide-bg::before { content: ""; position: absolute; inset: 0; background: rgba(0,0,0,0.45); z-index: 1; }
.slide-content { position: relative; z-index: 2; color: #fff; text-align: center; padding: 0 12px; width: 100%; max-width: 1000px; }

/* ------------------- Buttons ------------------- */
.btn-Know-theme1 { background: #1285c1; color: #fff; }
.btn-Know-theme1:hover, .btn-Know-theme1:focus { background: #0f6fa1; color: #fff; }
.btn-Know-theme2 { background: #FFB6C1; color: #770737; }
.btn-Know-theme2:hover, .btn-Know-theme2:focus { background: #770737; color: #fff; }
.btn-Know-theme3 { background: #fff; color: #36454F; }
.btn-Know-theme3:hover, .btn-Know-theme3:focus { background: #4c565c; color: #fff; }
.btn-Know-theme4 { background: #fff; color: #36454F; }
.btn-Know-theme4:hover, .btn-Know-theme4:focus { background: #101064; color: #fff; }
.btn-Know-theme5 { background: #fff; color: #2e4ea7; }
.btn-Know-theme5:hover, .btn-Know-theme5:focus { background: #0f6fa1; color: #fff; }
.btn-Know { display: inline-block; padding: 0.9rem 2.4rem; border-radius: 35px; font-family: "Poppins", sans-serif; font-weight: 800; font-size: 1.15rem; letter-spacing: 0.5px; text-decoration: none; text-transform: uppercase; transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease; box-shadow: 0 6px 18px rgba(18,133,193,0.2); border: none; cursor: pointer; }
.btn-Know:hover, .btn-Know:focus { transform: translateY(-4px) scale(1.05); box-shadow: 0 14px 32px rgba(15,111,161,0.28); outline: none; }
.btn-Know:active { transform: translateY(-2px) scale(1.02); }

.btn-slide { background: #ffffff; color: #111; display: inline-block; padding: 0.9rem 2.4rem; border-radius: 35px; font-family: "Poppins", sans-serif; font-weight: 800; font-size: 1.15rem; letter-spacing: 0.5px; text-decoration: none; text-transform: uppercase; transition: transform 0.25s ease, box-shadow 0.25s ease, background 0.25s ease, color 0.25s ease; box-shadow: 0 6px 18px rgba(0,0,0,0.15); border: none; cursor: pointer; }
.btn-slide:hover, .btn-slide:focus { background: #f0f0f0; color: #000; transform: translateY(-4px) scale(1.05); box-shadow: 0 14px 32px rgba(0,0,0,0.25); outline: none; }
.btn-slide:active { transform: translateY(-2px) scale(1.02); }
.slide-content h2 { font-size: 3rem; font-weight: 700; margin: 0 0 1.25rem; color: #fff; line-height: 1.05; }
.slick-dots, .slick-prev, .slick-next { display: none !important; }

@media (max-width: 992px) {
  .slide-bg { height: calc(var(--vh, 1vh) * 80); }
  .slide-content h2 { font-size: 2.2rem; }
  .btn-Know { font-size: 1rem; padding: 0.8rem 1.8rem; }
}
@media (max-width: 576px) {
  .slide-bg { height: calc(var(--vh, 1vh) * 65); }
  .slide-content h2 { font-size: 1.6rem; }
  .btn-Know { font-size: 0.95rem; padding: 0.7rem 1.5rem; }
}