.elementor-10294 .elementor-element.elementor-element-c252760{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-10294 .elementor-element.elementor-element-c252760 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-10294 .elementor-element.elementor-element-f1ed16c > .elementor-widget-container{margin:0px 0px -117px 0px;padding:0px 0px 0px 0px;}.elementor-10294 .elementor-element.elementor-element-4f3928e > .elementor-container{max-width:1500px;}/* Start custom CSS for html, class: .elementor-element-f1ed16c *//* HERO SECTION */
.program-s2-hero {
  position: relative;
  width: 100%;
  min-height: clamp(400px, 55vh, 600px); /* dikurangi tinggi background */
  
  /* Background gradient + image */
  background: linear-gradient(
      135deg,
      rgba(26,138,203,0.85) 0%,
      rgba(19,123,181,0.88) 35%,
      rgba(11,95,138,0.92) 70%,
      rgba(8,61,98,0.95) 100%
    ),
    url("http://map.ugm.ac.id/wp-content/uploads/sites/290/2026/01/DSC02392-scaled-e1769575151699.jpg");
  background-size: cover;
  background-position: center;
  display: flex;
  justify-content: center;
  text-align: center;
  overflow: hidden;
}

/* Inner container, gunakan column flex */
.program-s2-hero-inner {
  display: flex;
  flex-direction: column;
  justify-content: center; /* teks di tengah */
  align-items: center;
  width: 100%;
  max-width: 1000px;
  height: 100%;
  padding: 20px 0;
  gap: clamp(30px, 5vh, 60px); /* jarak teks &amp; gambar sedikit mengecil */
  z-index: 1;
}

/* Hero Text */
.program-s2-hero-text {
  margin-top: clamp(20px, 1vh, 60px); /* turunkan teks ke posisi lebih pas */
}

.program-s2-hero-text h1 {
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(40px, 3.5vw, 48px);
  font-weight: 900;
  color: #ffffff;
  margin: 0;
}

.program-s2-hero-text p {
  font-family: 'Montserrat', sans-serif;
  font-size: clamp(16px, 1.5vw, 22px);
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  opacity: 0.95;
}

/* IMAGE BAWAH TEKS: DIPAKSA DI TENGAH &amp; PADA BOTTOM */
.program-s2-hero-photo {
  width: 100%;
  display: flex;
  justify-content: center; /* center horizontal */
}

.program-s2-hero-photo img {
  width: clamp(400px, 200%, 900px); /* ukuran gambar lebih besar */
  height: auto;
  display: block;
  border-radius: 0; 
  box-shadow: none; 
  object-fit: cover;
  object-position: bottom center; 
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .program-s2-hero-inner {
    gap: 20px;
  }
  .program-s2-hero-text {
    margin-top: clamp(15px, 5vh, 40px);
  }
  .program-s2-hero-photo img {
    width: 80%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-35631b5 *//* Container tab menu */
.tab-menu {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: center;
  background: #ffffff;
  border-top: 6px solid #ffc107; /* garis tebal kuning */
  border-bottom: 1px solid #ddd; /* garis bawah */
  box-shadow: 0 4px 12px rgba(0,0,0,0.08); /* shadow halus */
  padding: 5px 0;
  font-family: 'Montserrat', sans-serif;
  z-index: 1000;
}

/* Horizontal list */
.tab-menu ul {
  display: flex;
  gap: 25px; /* jarak antar tab */
  margin: 0;
  padding: 0;
  list-style: none;
  flex-wrap: wrap; /* responsive */
  position: relative;
}

/* Tab items */
.tab-menu li a {
  display: block;
  padding: 12px 28px; /* lebih besar, nyaman klik */
  text-decoration: none;
  color: #1e3a5f; /* teks biru default */
  font-weight: 700;
  font-size: 16px;
  border-radius: 12px 12px 0 0;
  transition: all 0.3s ease;
  position: relative;
}

/* Hover effect */
.tab-menu li a:hover {
  background: linear-gradient(145deg, #2b5391, #3a6bb9); /* gradient biru */
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.15);
}

/* Active tab */
.tab-menu li.active a {
  background: linear-gradient(145deg, #1e3a5f, #30588c);
  color: #ffffff;
  box-shadow: 0 6px 14px rgba(0,0,0,0.2);
}

/* Bottom yellow indicator with smooth transition */
.tab-menu li.active a::after {
  content: '';
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 4px;
  background: #ffc107;
  border-radius: 4px 4px 0 0;
  transition: all 0.3s ease;
}

/* Responsive: scrollable tabs on mobile */
@media (max-width: 768px) {
  .tab-menu ul {
    overflow-x: auto;
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 5px;
  }
  .tab-menu li {
    flex: 0 0 auto;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d890994 */.card-s2 {
  display: block;
  width: 100%;
  height: 120px;
  border-radius: 18px;
  overflow: hidden;
  position: relative;
  text-decoration: none !important;
  font-family: Montserrat, Arial, sans-serif;
  box-shadow: 0 14px 30px rgba(0,0,0,.15);
}

/* Background Gradient */
.s2-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    #2f5c8f 0%,
    #3f7fbc 55%,
    #69a7e0 100%
  );
}

/* Konten Tengah */
.s2-inner {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

/* Style Khusus H1 */
.s2-title {
  color: #ffffff;
  font-size: 32px;
  font-weight: 900;
  letter-spacing: .3px;
  line-height: 1.15;
  margin: 0;     /* Menghapus margin bawaan H1 */
  padding: 0 10px; /* Opsional: memberi sedikit nafas di sisi kiri-kanan */
}

/* Reset Link */
.card-s2,
.card-s2 * {
  text-decoration: none !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f45d49d */.jadwal-penerimaan {
  max-width: 1200px;
  margin: 50px auto;
  padding: 0 20px;
  font-family: 'Montserrat', sans-serif;
}

.jadwal-penerimaan h2 {
  font-size: 28px;
  font-weight: 700;
  color: #1e3a5f;
  margin-bottom: 25px;
}

.table-wrapper {
  overflow-x: auto; /* agar scroll di mobile */
}

table {
  width: 100%;
  border-collapse: collapse;

  min-width: 600px;
}

thead th {
  background-color: #1e3a5f;
  color: #fff;
  font-weight: 600;
  padding: 12px;
  border: 1px solid #ddd;
    text-align: center;
}

tbody td {
  padding: 12px;
  border: 1px solid #ddd;
  font-size: 16px;
  color: #333;
}

tbody tr:nth-child(even) {
  background-color: #f5f7fa;
}

tbody tr td[colspan] {
  text-align: center;
  font-style: italic;
}

/* Responsive mobile */
@media (max-width: 768px) {
  table {
    font-size: 14px;
  }
  tbody td {
    padding: 8px;
  }
  thead th {
    padding: 10px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-eb5bb9f *//* Section S2 Info */


.s2-info-section {
  width: 100%;
  max-width: 1000px;
  margin: 50px auto;
  padding: 0 20px;
  display: flex;
  justify-content: center;
}

.s2-info-container {
  display: flex;
  gap: 30px;
  flex-wrap: wrap;
  justify-content: center;
}

.s2-card {
  background-color: #ffffff;
  padding: 25px 30px;
  border-radius: 8px;
  box-shadow: 0 8px 16px rgba(0,0,0,0.08);
  flex: 1;
  min-width: 280px;
}

.s2-card h3 {
  font-size: 22px;
  font-weight: 700;
  color: #1e3a5f;
  margin-bottom: 15px;
}

.s2-card ul {
  list-style-type: disc;
  padding-left: 20px;
  margin: 0;
}

.s2-card ul li {
  font-size: 16px;
  color: #1e3a5f;
  line-height: 1.6;
  margin-bottom: 8px;
}

.s2-card ul ul {
  list-style-type: circle;
  padding-left: 20px;
  margin-top: 5px;
}

.s2-card ul ul li {
  font-size: 15px;
  font-style: italic;
  margin-bottom: 5px;
}

/* Responsive Mobile */
@media (max-width: 768px) {
  .s2-info-container {
    flex-direction: column;
    gap: 20px;
  }
  .s2-card h3 {
    font-size: 20px;
  }
  .s2-card ul li {
    font-size: 14px;
  }
}
/* Font default: Montserrat */

/* Terapkan ke seluruh halaman */
body, h1, h2, h3, h4, p, ul, li, a, ol {
    font-family: 'Montserrat', sans-serif;
}

/* Syarat Umum dan isi table */
.syarat-umum-section {
  width: 100%;
  max-width: 1200px;
  margin: 50px auto;
  padding: 0 20px;
}

.adm-card, .adm-table {
  font-family: 'Montserrat', sans-serif;
}

/* Tabel */
.adm-table table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-family: 'Montserrat', sans-serif;
}

.adm-table th, .adm-table td {
  padding: 12px;
  border: 1px solid #ddd;
  font-size: 16px;
  color: #333;
}

/* List di table */
.adm-ol li, .adm-ol--inner li {
  font-family: 'Montserrat', sans-serif;
  font-size: 16px;
}

/* Card Biaya &amp; Masa Studi */
.s2-info-section, .s2-card {
  font-family: 'Montserrat', sans-serif;
}

/* Program S2 Classes */
.program-s2-classes .container, .class-card {
  font-family: 'Montserrat', sans-serif;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c5a380f *//* ---------- SYARAT UMUM ---------- */
.syarat-umum {
  max-width: 1250px;
  margin: 50px auto;
  padding: 0 20px;
  font-family: 'Montserrat', sans-serif;
}

.syarat-umum h2 {
  font-size: 28px;
  font-weight: 700;
  color: #1e3a5f;
  text-align: center;
  margin-bottom: 25px;
}

/* CARD INFORMASI AWAL */
.adm-card {
  background-color: #ffffff;
  padding: 25px 30px;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  margin-bottom: 25px;
}

.adm-card:hover {
  box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

.adm-lead {
  font-size: 16px;
  color: #1e3a5f;
  margin-bottom: 15px;
}

.adm-lead a {
  color: #1e3a5f;
  font-weight: 600;
  text-decoration: underline;
}

.adm-ol {
  padding-left: 20px;
  margin: 0;
}

.adm-ol li {
  margin-bottom: 10px;
  font-size: 16px;
  line-height: 1.6;
}

/* TABLE */
.adm-table {
  overflow-x: auto;
  margin-top: 25px;
  
}

.adm-table table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  min-width: 600px;
}

.adm-table th, .adm-table td {
  padding: 12px;
  border: 1px solid #ddd;
}

.adm-table thead th {
  background-color: #1e3a5f;
  color: #ffffff;
  font-weight: 600;
}

.adm-table tbody td {
  font-size: 16px;
  color: #333;
}

.adm-table tbody tr:nth-child(even) {
  background-color: #f5f7fa;
}

.col-no {
  width: 50px;
  text-align: center;
}

.col-format {
  width: 120px;
  text-align: center;
}

.adm-note {
  font-style: italic;
  margin-top: 5px;
  font-size: 15px;
}

.adm-ol--inner {
  margin-top: 10px;
}

/* Responsive */
@media (max-width: 768px) {
  .adm-table table {
    font-size: 14px;
  }
  .adm-table th, .adm-table td {
    padding: 8px;
  }
  .adm-lead, .adm-ol li {
    font-size: 14px;
  }
}

.syarat-note {
  background-color: #1e3a5f;
  color: #ffffff;
  border-radius: 8px;
  padding: 15px 20px;
  font-size: 16px;
  text-align: center;
  margin-top: 15px;
}

/* Responsive */
@media (max-width: 768px) {
  .syarat-umum table,
  .syarat-umum th,
  .syarat-umum td {
    font-size: 14px;
    padding: 8px;
  }

  .syarat-ol li {
    font-size: 15px;
  }

  .syarat-note {
    font-size: 14px;
    padding: 12px 15px;
  }
}/* End custom CSS */
/* Start custom CSS *//* Terapkan Montserrat ke semua heading */
h1, h2, h3, h4 {
  font-family: 'Montserrat', sans-serif;
}/* End custom CSS */