@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap");
:root {
  --theme-1: #1e448d;
  --theme-2: #4bbfc7;
  --theme-3: #d35a62;
  --theme-4: #7e62b2;
  --theme-5: #ffffffb0;
  --theme-6: #0d0f1e;
  --theme-7: #419f96;
  --theme-8: #427c80;
  --theme-9: #314f8d;
  --theme-10: #546382;
  --theme-11: #3565b9;
  --theme-12: #1e55a8;
  --theme-13: #919db5;
  --theme-14: #275fb4;
  --font-family-roboto: "Roboto", sans-serif;
  --font-xs: 12px;
  --font-sm: 14px;
  --font-md: 16px;
  --font-lg: 18px;
  --font-xl: 20px;
  --grad-1: linear-gradient(90deg, #5abfa5, #6078d9, #8a67be);
  --shadow-1: 4px 4px 16px rgb(0 0 0 / 24%);
  --shadow-2: 0 4px 20px rgba(0, 0, 0, 0.288); }

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  font-family: var(--font-family-roboto); }

/* Global */
a {
  text-decoration: none; }

.img-fluid {
  max-width: 100%;
  height: auto; }

.no-scroll {
  overflow: hidden; }

.container {
  max-width: 1300px;
  margin: 0 auto;
  padding-left: 1em;
  padding-right: 1em; }

.gr-line {
  height: 3px;
  width: 4em;
  margin: 0 auto;
  background-color: var(--theme-7);
  border-radius: 5em; }

.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 10px;
  padding-bottom: 10px; }
  .navbar .logo {
    width: 120px;
    height: auto; }
  .navbar #menu-btn {
    border: none;
    background-color: transparent;
    cursor: pointer;
    display: none; }
  .navbar .nav-links {
    display: flex;
    align-items: center;
    gap: 25px; }
    .navbar .nav-links li {
      list-style: none; }
      .navbar .nav-links li a {
        color: #000;
        font-size: 14px;
        font-weight: 500;
        transition: color 0.3s ease; }
        .navbar .nav-links li a:hover, .navbar .nav-links li a.active {
          color: var(--theme-1); }
      .navbar .nav-links li.button a {
        background-color: var(--theme-1);
        color: #fff;
        padding: 8px 16px;
        border-radius: 20px;
        font-size: 13px;
        font-weight: 500;
        transition: background-color 0.3s ease; }
        .navbar .nav-links li.button a:hover {
          background-color: var(--theme-2); }

.hero {
  background-image: url("asset/hero-element.png");
  background-size: cover;
  background-position: bottom;
  background-repeat: no-repeat; }
  .hero .container {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding-top: 80px;
    padding-bottom: 160px; }
    .hero .container .hero-content {
      color: #fff; }
      .hero .container .hero-content h1 {
        font-size: 4em;
        font-weight: 800;
        margin-bottom: 0.5em;
        line-height: 1.1; }
        .hero .container .hero-content h1 .gradient-text {
          background: var(--grad-1);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent; }
      .hero .container .hero-content p {
        margin-bottom: 2em;
        width: 45%; }
      .hero .container .hero-content .hero-buttons {
        display: flex;
        gap: 15px; }
        .hero .container .hero-content .hero-buttons .btn {
          padding: 10px 20px;
          border-radius: 20px;
          text-decoration: none;
          font-weight: 600;
          font-size: 14px;
          transition: all 0.3s ease; }
          .hero .container .hero-content .hero-buttons .btn.green {
            background-color: var(--theme-2);
            color: #fff; }
            .hero .container .hero-content .hero-buttons .btn.green:hover {
              background-color: var(--theme-7); }
          .hero .container .hero-content .hero-buttons .btn.white {
            background-color: #fff;
            color: var(--theme-1); }
            .hero .container .hero-content .hero-buttons .btn.white:hover {
              background-color: #e6e6e6; }
    .hero .container .hero-logo {
      display: flex;
      align-items: center; }

.about-section {
  padding: 5em 0; }
  .about-section .container .about-header {
    text-align: center;
    margin-bottom: 2.5em; }
    .about-section .container .about-header .subtitle {
      color: var(--theme-2);
      text-transform: uppercase;
      font-size: var(--font-sm);
      font-weight: bold;
      margin-bottom: 10px; }
    .about-section .container .about-header h2 {
      font-size: 2.2em;
      margin: 0;
      color: var(--theme-1); }
    .about-section .container .about-header .description {
      margin-top: 0.75em;
      color: #555; }
  .about-section .container .about-content {
    display: flex;
    justify-content: space-between;
    gap: 2.5em; }
    .about-section .container .about-content .about-text {
      flex: 1 1 40%;
      display: flex;
      flex-direction: column;
      justify-content: space-between; }
      .about-section .container .about-content .about-text .block {
        margin-bottom: 2em; }
        .about-section .container .about-content .about-text .block:last-child {
          margin-bottom: 0; }
        .about-section .container .about-content .about-text .block h3 {
          font-size: var(--font-xl);
          color: var(--theme-1);
          margin-bottom: 0.5em; }
        .about-section .container .about-content .about-text .block p {
          font-size: var(--font-sm);
          color: #333;
          line-height: 1.6; }
    .about-section .container .about-content .about-pillars {
      flex: 1 1 60%;
      background-color: #f9f9f9;
      padding: 2em;
      border-radius: 1em;
      box-shadow: var(--shadow-1); }
      .about-section .container .about-content .about-pillars h4 {
        font-size: var(--font-xl);
        color: var(--theme-1); }
      .about-section .container .about-content .about-pillars ul {
        list-style: none;
        padding: 2em 0;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 1em 2em; }
        .about-section .container .about-content .about-pillars ul li {
          display: flex;
          flex-direction: column;
          justify-content: start;
          gap: 1em;
          margin-bottom: 1.25em; }
          .about-section .container .about-content .about-pillars ul li .icon {
            min-width: 2.2em;
            min-height: 2.2em;
            width: 2.2em;
            height: 2.2em;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%; }
            .about-section .container .about-content .about-pillars ul li .icon.blue {
              background-color: var(--theme-2); }
            .about-section .container .about-content .about-pillars ul li .icon.red {
              background-color: var(--theme-3); }
            .about-section .container .about-content .about-pillars ul li .icon.purple {
              background-color: var(--theme-4); }
            .about-section .container .about-content .about-pillars ul li .icon.navy {
              background-color: var(--theme-1); }
          .about-section .container .about-content .about-pillars ul li strong {
            display: block;
            margin-bottom: 5px;
            color: var(--theme-1); }
          .about-section .container .about-content .about-pillars ul li p {
            font-size: var(--font-xs);
            color: #333;
            margin: 0; }
      .about-section .container .about-content .about-pillars .visit-link {
        display: inline-block;
        color: var(--theme-1);
        text-decoration: none;
        font-weight: 600;
        font-size: var(--font-sm); }
        .about-section .container .about-content .about-pillars .visit-link:hover {
          text-decoration: underline; }

.services-section {
  padding: 5em 0; }
  .services-section .container .services-header {
    text-align: center;
    margin-bottom: 2.5em; }
    .services-section .container .services-header h2 {
      font-size: 2.2em;
      margin: 0;
      color: var(--theme-1); }
    .services-section .container .services-header p {
      color: #555;
      width: 50%;
      margin: 0.5em auto 1.5em auto; }
  .services-section .container .tabs {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1em;
    margin-bottom: 2.5em; }
    .services-section .container .tabs .tab-button {
      padding: 0.6em 1.5em;
      border: none;
      border-radius: 20px;
      background-color: #e0e0e0;
      cursor: pointer;
      font-weight: 400;
      transition: background-color 0.3s; }
      .services-section .container .tabs .tab-button.active {
        background-color: var(--theme-1);
        color: #fff; }
  .services-section .container .tab-contents .tab-content {
    display: none;
    gap: 2em; }
    .services-section .container .tab-contents .tab-content.active {
      display: flex; }
    .services-section .container .tab-contents .tab-content .content-text {
      flex: 1 1 55%;
      display: flex;
      gap: 1em;
      flex-direction: column;
      justify-content: space-between; }
      .services-section .container .tab-contents .tab-content .content-text h3 {
        color: var(--theme-1);
        font-size: var(--font-xl); }
      .services-section .container .tab-contents .tab-content .content-text p {
        margin-top: 0.5em;
        color: var(--theme-6);
        font-size: var(--font-md);
        line-height: 1.6; }
      .services-section .container .tab-contents .tab-content .content-text ul {
        list-style: none;
        padding-left: 0; }
        .services-section .container .tab-contents .tab-content .content-text ul li {
          background: url(asset/check.png) no-repeat left 7px;
          padding-left: 15px;
          margin: 5px 0;
          font-size: var(--font-sm);
          color: var(--theme-6); }
      .services-section .container .tab-contents .tab-content .content-text .cta-button {
        display: inline-block;
        margin-top: 15px;
        padding: 10px 18px;
        background-color: var(--theme-7);
        color: #fff;
        border: none;
        border-radius: 5px;
        cursor: pointer;
        font-size: var(--font-sm);
        transition: all 0.3s ease; }
        .services-section .container .tab-contents .tab-content .content-text .cta-button:hover {
          background-color: var(--theme-2); }
    .services-section .container .tab-contents .tab-content .content-image {
      flex: 1 1 45%;
      display: flex;
      align-items: center; }
      .services-section .container .tab-contents .tab-content .content-image img {
        width: 100%;
        border-radius: 12px;
        object-fit: cover; }

.programs-section {
  padding: 5em 0; }
  .programs-section .programs-header {
    text-align: center;
    margin-bottom: 40px; }
    .programs-section .programs-header h2 {
      font-size: 2.2em;
      margin: 0;
      color: var(--theme-1); }
    .programs-section .programs-header p {
      color: #555;
      width: 50%;
      margin: 0.5em auto 1.5em auto; }
  .programs-section .programs-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 2em;
    justify-content: center; }
    .programs-section .programs-grid .program-card {
      flex: 1 1 45%;
      box-shadow: var(--shadow-1);
      overflow: hidden;
      display: flex;
      flex-direction: column; }
      .programs-section .programs-grid .program-card__header {
        padding: 3em;
        color: #fff;
        text-align: center; }
        .programs-section .programs-grid .program-card__header h3 {
          margin: 0; }
      .programs-section .programs-grid .program-card.trl-program .program-card__header {
        background-color: var(--theme-9); }
      .programs-section .programs-grid .program-card.stp-program .program-card__header {
        background-color: var(--theme-8); }
      .programs-section .programs-grid .program-card.stp-program .program-card__header {
        background-color: var(--theme-8); }
      .programs-section .programs-grid .program-card__body {
        padding: 2.5em 1.5em; }
        .programs-section .programs-grid .program-card__body h4 {
          font-size: var(--font-md);
          color: var(--theme-6);
          margin-bottom: 10px; }
        .programs-section .programs-grid .program-card__body p {
          font-size: var(--font-sm);
          color: #444;
          margin-bottom: 1em; }
        .programs-section .programs-grid .program-card__body h5 {
          font-size: var(--font-sm);
          color: var(--theme-6);
          margin: 2em 0 1em 0; }
        .programs-section .programs-grid .program-card__body ul {
          list-style: none;
          padding-left: 0;
          margin-bottom: 1em; }
          .programs-section .programs-grid .program-card__body ul li {
            background: url(asset/check.png) no-repeat left 7px;
            padding-left: 15px;
            display: flex;
            align-items: flex-start;
            gap: 0.5em;
            font-size: var(--font-sm);
            margin-bottom: 0.5em; }
            .programs-section .programs-grid .program-card__body ul li span {
              flex-shrink: 0; }
        .programs-section .programs-grid .program-card__body .program-link {
          font-size: var(--font-sm);
          font-weight: 500;
          color: var(--theme-2);
          text-decoration: none;
          display: inline-block;
          transition: all 0.3s ease; }
          .programs-section .programs-grid .program-card__body .program-link span {
            color: #7e7d7d;
            margin-left: 1em; }
          .programs-section .programs-grid .program-card__body .program-link:hover {
            color: var(--theme-1); }
            .programs-section .programs-grid .program-card__body .program-link:hover span {
              color: var(--theme-1); }
    .programs-section .programs-grid.invesment .program-card {
      flex: 1; }
      .programs-section .programs-grid.invesment .program-card.card-blue {
        border-color: var(--theme-2); }
        .programs-section .programs-grid.invesment .program-card.card-blue .program-card__header {
          background: var(--theme-2); }
      .programs-section .programs-grid.invesment .program-card.card-red {
        border-color: var(--theme-3); }
        .programs-section .programs-grid.invesment .program-card.card-red .program-card__header {
          background: var(--theme-3); }
      .programs-section .programs-grid.invesment .program-card.card-purple {
        border-color: var(--theme-4); }
        .programs-section .programs-grid.invesment .program-card.card-purple .program-card__header {
          background: var(--theme-4); }
  .programs-section .investments-section {
    margin-top: 8em; }
    .programs-section .investments-section .investments-header {
      margin-bottom: 40px; }
      .programs-section .investments-section .investments-header .investments-title {
        font-size: 2.2em;
        color: var(--theme-1);
        text-align: center;
        margin-bottom: 0.5em; }
    .programs-section .investments-section .investments-grid {
      display: flex;
      flex-wrap: wrap;
      gap: 1em;
      justify-content: center;
      padding-top: 3em; }
      .programs-section .investments-section .investments-grid .investment-column {
        flex: 1 1 32%;
        border-radius: 1em;
        border: 2px solid #e0e0e0;
        padding: 20px;
        width: 100%;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
        transition: 0.3s;
        position: relative;
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
        .programs-section .investments-section .investments-grid .investment-column.card-blue {
          border-color: var(--theme-2); }
          .programs-section .investments-section .investments-grid .investment-column.card-blue h5 {
            background: var(--theme-2); }
        .programs-section .investments-section .investments-grid .investment-column.card-red {
          border-color: var(--theme-3); }
          .programs-section .investments-section .investments-grid .investment-column.card-red h5 {
            background: var(--theme-3); }
        .programs-section .investments-section .investments-grid .investment-column.card-purple {
          border-color: var(--theme-4); }
          .programs-section .investments-section .investments-grid .investment-column.card-purple h5 {
            background: var(--theme-4); }
        .programs-section .investments-section .investments-grid .investment-column ul {
          list-style: none;
          margin-top: 30px; }
          .programs-section .investments-section .investments-grid .investment-column ul li {
            line-height: 1.6;
            margin-bottom: 8px;
            display: flex;
            align-items: center;
            gap: 0.5em;
            font-size: var(--font-sm);
            color: #333; }
            .programs-section .investments-section .investments-grid .investment-column ul li img {
              flex-shrink: 0;
              min-width: 9px; }
        .programs-section .investments-section .investments-grid .investment-column h5 {
          font-size: var(--font-sm);
          color: #ffffff;
          font-weight: 600;
          margin-bottom: 1em;
          position: absolute;
          width: 100%;
          top: -11px;
          left: 0;
          border-radius: 5em;
          padding: 1em 1.5em;
          min-height: 45px;
          max-height: 45px;
          height: 45px; }
        .programs-section .investments-section .investments-grid .investment-column p {
          font-size: var(--font-sm);
          color: #333;
          margin-bottom: 1em; }
          .programs-section .investments-section .investments-grid .investment-column p.read {
            margin-bottom: 2em; }
        .programs-section .investments-section .investments-grid .investment-column a {
          color: var(--theme-7);
          transition: all 0.3s ease-in; }
          .programs-section .investments-section .investments-grid .investment-column a:hover {
            color: var(--theme-8); }
        .programs-section .investments-section .investments-grid .investment-column .investment-link {
          font-size: var(--font-xs);
          color: var(--theme-2);
          font-weight: 500;
          transition: all 0.3s ease-in; }
          .programs-section .investments-section .investments-grid .investment-column .investment-link span {
            color: #7e7d7d;
            margin-left: 1em; }
          .programs-section .investments-section .investments-grid .investment-column .investment-link:hover {
            color: var(--theme-1); }
            .programs-section .investments-section .investments-grid .investment-column .investment-link:hover span {
              color: var(--theme-1); }
  .programs-section .join-portfolio {
    margin-top: 2em;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    .programs-section .join-portfolio p {
      font-size: var(--font-sm);
      color: #333;
      margin-bottom: 1em; }
    .programs-section .join-portfolio .apply-btn {
      padding: 10px 20px;
      border: none;
      background: var(--theme-1);
      color: white;
      border-radius: 25px;
      font-size: var(--font-sm);
      display: inline-flex;
      align-items: center;
      gap: 8px;
      cursor: pointer;
      transition: all 0.3s ease-in; }
      .programs-section .join-portfolio .apply-btn img {
        width: 16px;
        height: 16px; }
      .programs-section .join-portfolio .apply-btn:hover {
        background: var(--theme-2); }

.ventures-section {
  padding: 5em 0; }
  .ventures-section .container .ventures-header {
    text-align: center;
    margin-bottom: 2.5em; }
    .ventures-section .container .ventures-header h2 {
      font-size: 2.2em;
      margin: 0;
      color: var(--theme-1); }
    .ventures-section .container .ventures-header p {
      color: #555;
      width: 50%;
      margin: 0.5em auto 1.5em auto; }
  .ventures-section .container .venture-tabs {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1em;
    margin-bottom: 2em; }
    .ventures-section .container .venture-tabs .tab-btn {
      padding: 8px 16px;
      border: none;
      background: #f1f1f1;
      border-radius: 5em;
      font-size: var(--font-sm);
      cursor: pointer;
      transition: all 0.3s;
      box-shadow: 4px 4px 7px rgba(138, 160, 223, 0.33); }
      .ventures-section .container .venture-tabs .tab-btn.active, .ventures-section .container .venture-tabs .tab-btn:hover {
        background: var(--theme-1);
        color: #fff; }
  .ventures-section .container .ventures-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1em;
    justify-content: center; }
    .ventures-section .container .ventures-grid .venture-card {
      border-radius: 1em;
      box-shadow: var(--shadow-1);
      padding: 2em;
      text-align: left;
      position: relative;
      transition: all 0.3s ease; }
      .ventures-section .container .ventures-grid .venture-card .card-top {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15px; }
        .ventures-section .container .ventures-grid .venture-card .card-top .badge {
          font-size: var(--font-xs);
          color: #acacac; }
      .ventures-section .container .ventures-grid .venture-card h4 {
        font-size: var(--font-md);
        color: var(--theme-1);
        margin-bottom: 0.3em; }
      .ventures-section .container .ventures-grid .venture-card p {
        color: #555;
        font-size: var(--font-sm);
        margin-bottom: 1.25em; }
      .ventures-section .container .ventures-grid .venture-card small {
        font-size: var(--font-xs);
        color: #999;
        display: block;
        margin-bottom: 1.5em; }
      .ventures-section .container .ventures-grid .venture-card a {
        font-size: var(--font-sm);
        font-weight: 500;
        color: #505055;
        display: flex;
        justify-content: space-between;
        transition: all 0.3s ease-in; }
        .ventures-section .container .ventures-grid .venture-card a:hover {
          color: var(--theme-1); }

.subsidiaries-section {
  padding: 5em 0; }
  .subsidiaries-section .container .subsidiaries-header {
    text-align: center;
    margin-bottom: 2.5em; }
    .subsidiaries-section .container .subsidiaries-header h2 {
      font-size: 2.2em;
      margin-bottom: 0.6em;
      color: var(--theme-1); }
  .subsidiaries-section .container .subsidiary-cards {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1em; }
    .subsidiaries-section .container .subsidiary-cards .network-card {
      flex: 1 1 32%;
      background: #fff;
      border-radius: 16px;
      padding: 2em;
      display: flex;
      flex-direction: column;
      align-items: center;
      box-shadow: var(--shadow-1);
      text-align: center;
      transition: transform 0.3s ease; }
      .subsidiaries-section .container .subsidiary-cards .network-card:hover {
        transform: translateY(-4px); }
      .subsidiaries-section .container .subsidiary-cards .network-card .network-icon {
        margin-bottom: 1em;
        min-height: 7em;
        display: flex;
        justify-content: center;
        align-items: center; }
      .subsidiaries-section .container .subsidiary-cards .network-card h3 {
        margin-bottom: 0.5em; }
      .subsidiaries-section .container .subsidiary-cards .network-card p {
        font-size: var(--font-xs);
        color: #555;
        margin-bottom: 12px;
        line-height: 1.4;
        width: 70%;
        text-align: center; }
      .subsidiaries-section .container .subsidiary-cards .network-card .visit-link {
        font-size: var(--font-xs);
        color: var(--theme-1);
        font-weight: 500;
        transition: all 0.3s ease-in; }
        .subsidiaries-section .container .subsidiary-cards .network-card .visit-link:hover {
          color: var(--theme-7); }

.contact-section {
  background-color: var(--theme-12);
  color: #fff;
  padding-top: 4em;
  padding-bottom: 3em; }
  .contact-section.contact-page {
    background-color: transparent;
    padding-bottom: 0em; }
    .contact-section.contact-page .contact-options .contact-card:nth-child(1) {
      background-color: var(--theme-1); }
    .contact-section.contact-page .contact-options .contact-card:nth-child(2) {
      background-color: var(--theme-10); }
    .contact-section.contact-page .contact-options .contact-card:nth-child(3) {
      background-color: var(--theme-11); }
    .contact-section.contact-page .contact-form-container {
      border: 1px solid var(--theme-1);
      margin-bottom: 2em; }
    .contact-section.contact-page .copyright {
      background-color: var(--theme-12);
      padding: 2em 1em;
      text-align: center;
      font-weight: 600; }
  .contact-section .container .contact-header {
    text-align: center;
    margin-bottom: 2em; }
    .contact-section .container .contact-header h2 {
      font-size: 2.2em;
      margin-bottom: 0.2em; }
    .contact-section .container .contact-header p {
      color: #d1e1ff; }
  .contact-section .container .contact-options {
    display: flex;
    flex-wrap: wrap;
    gap: 1em;
    margin-bottom: 1em; }
    .contact-section .container .contact-options .contact-card {
      background-color: rgba(255, 255, 255, 0.08);
      padding: 2em;
      border-radius: 12px;
      color: #fff;
      flex: 1 1 32%; }
      .contact-section .container .contact-options .contact-card .contact-card-icon {
        margin-bottom: 1em; }
      .contact-section .container .contact-options .contact-card h4 {
        font-size: var(--font-lg);
        font-weight: 500; }
      .contact-section .container .contact-options .contact-card p {
        font-size: var(--font-sm);
        margin: 0.5em 0;
        color: #bcd4ff; }
      .contact-section .container .contact-options .contact-card a {
        color: var(--theme-2);
        text-decoration: none;
        font-size: var(--font-sm); }
        .contact-section .container .contact-options .contact-card a:hover {
          text-decoration: underline; }
  .contact-section .container .contact-form-container {
    background-color: #fff;
    border-radius: 1em;
    color: #333;
    padding: 2em;
    display: flex;
    gap: 2em; }
    .contact-section .container .contact-form-container .form-section {
      flex: 1 1 55%; }
      .contact-section .container .contact-form-container .form-section h3 {
        color: var(--theme-1);
        font-size: 1.5em;
        margin-bottom: 1em; }
      .contact-section .container .contact-form-container .form-section form {
        display: flex;
        flex-direction: column;
        gap: 1em; }
        .contact-section .container .contact-form-container .form-section form .input-group {
          display: flex;
          gap: 1em; }
        .contact-section .container .contact-form-container .form-section form .input-group-item {
          flex: 1;
          display: flex;
          flex-direction: column;
          gap: 0.5em; }
          .contact-section .container .contact-form-container .form-section form .input-group-item label {
            font-size: var(--font-sm);
            color: #333;
            font-weight: 500; }
        .contact-section .container .contact-form-container .form-section form input,
        .contact-section .container .contact-form-container .form-section form select,
        .contact-section .container .contact-form-container .form-section form textarea {
          padding: 10px;
          border: 1px solid #ccc;
          border-radius: 6px;
          font-size: 14px; }
        .contact-section .container .contact-form-container .form-section form textarea {
          resize: vertical;
          min-height: 100px; }
        .contact-section .container .contact-form-container .form-section form button, .contact-section .container .contact-form-container .form-section form input[type="submit"] {
          background-color: var(--theme-1);
          color: #fff;
          padding: 10px 20px;
          border: none;
          border-radius: 6px;
          cursor: pointer;
          font-weight: 500;
          font-size: var(--font-sm);
          width: fit-content; }
          .contact-section .container .contact-form-container .form-section form button:hover, .contact-section .container .contact-form-container .form-section form input[type="submit"]:hover {
            background-color: var(--theme-2); }
    .contact-section .container .contact-form-container .visit-section {
      flex: 1 1 45%;
      display: flex;
      justify-content: center; }
      .contact-section .container .contact-form-container .visit-section .visit-section-wrap {
        width: 50%;
        height: 100%; }
        .contact-section .container .contact-form-container .visit-section .visit-section-wrap h3 {
          color: var(--theme-1);
          font-size: 1.5em;
          margin-bottom: 1em; }
        .contact-section .container .contact-form-container .visit-section .visit-section-wrap .visit-section-wrap-list {
          width: 100%;
          display: flex;
          flex-direction: column;
          justify-content: space-between;
          height: calc(100% - 67px); }
          .contact-section .container .contact-form-container .visit-section .visit-section-wrap .visit-section-wrap-list .visit-section-wrap-list-item {
            margin-bottom: 0.75em;
            font-size: var(--font-sm);
            font-weight: 500;
            display: flex;
            align-items: start; }
            .contact-section .container .contact-form-container .visit-section .visit-section-wrap .visit-section-wrap-list .visit-section-wrap-list-item span {
              margin-right: 0.5em; }
  .contact-section .container .copyright {
    text-align: center;
    padding-top: 3em;
    font-weight: 600; }

.bookmark-section {
  background-image: url("asset/top-shape.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  min-height: 343px;
  display: flex;
  justify-content: center;
  align-items: center; }
  .bookmark-section .container h1 {
    font-size: 3em;
    font-weight: 700;
    color: #ffffff;
    text-align: center; }
  .bookmark-section .container p {
    color: #ffffff;
    opacity: 60%;
    max-width: 610px;
    margin: 0 auto;
    text-align: center; }

.about-main-section {
  padding: 4em 0; }
  .about-main-section .container .about-main-img {
    margin-bottom: 2em; }
    .about-main-section .container .about-main-img img {
      width: 100%;
      height: auto; }
  .about-main-section .container .about-main-content {
    max-width: 83%;
    margin: 0 auto; }
    .about-main-section .container .about-main-content p {
      text-align: center;
      color: #333;
      line-height: 1.6;
      font-size: var(--font-sm); }
      .about-main-section .container .about-main-content p:not(:last-child) {
        margin-bottom: 1em; }

.carousel-section {
  width: 100%;
  padding: 5em 0;
  position: relative;
  overflow: hidden; }
  .carousel-section .container {
    position: relative; }

.carousel-title {
  text-align: center;
  font-size: 1.7em;
  font-weight: bold;
  margin-bottom: 2em;
  color: var(--theme-1); }

.owl-carousel .carousel-item {
  display: flex;
  background: #fff;
  text-align: left;
  min-height: 280px;
  border: 2px solid var(--theme-13);
  border-radius: 1em;
  padding: 3em;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
  gap: 2em; }
  .owl-carousel .carousel-item .content-image {
    width: 30%;
    flex: 1 1 45%;
    display: flex;
    align-items: top; }
    .owl-carousel .carousel-item .content-image img {
      width: 100%;
      border-radius: 12px;
      object-fit: cover; }
  .owl-carousel .carousel-item .text {
    width: 70%; }
  .owl-carousel .carousel-item h3 {
    font-size: 1.2rem;
    font-weight: 600;
    margin-bottom: 12px;
    color: #000; }
  .owl-carousel .carousel-item p {
    font-size: 0.95rem;
    color: #333;
    line-height: 1.6;
    margin-bottom: 0.75rem; }
  .owl-carousel .carousel-item ul {
    padding-left: 20px; }
    .owl-carousel .carousel-item ul li {
      font-size: 0.95rem;
      line-height: 1.6;
      margin-bottom: 5px;
      list-style: none; }
      .owl-carousel .carousel-item ul li::before {
        content: "✓";
        margin-right: 8px;
        color: #4caf50; }

.owl-carousel .owl-item {
  opacity: 0.2;
  transform: scale(0.92) !important;
  transition: all 0.3s ease; }

.owl-carousel .owl-item.active.center {
  opacity: 1;
  transform: scale(1) !important;
  z-index: 1; }

/* Fading edge overlays */
.carousel-section::before,
.carousel-section::after {
  content: "";
  position: absolute;
  top: 0;
  width: 80px;
  height: 100%;
  z-index: 3;
  pointer-events: none; }

.carousel-section::before {
  left: 0;
  background: linear-gradient(to right, white 60%, transparent); }

.carousel-section::after {
  right: 0;
  background: linear-gradient(to left, white 60%, transparent); }

/* Custom Arrows */
.custom-nav {
  position: absolute;
  top: calc(50% + 2em);
  left: 50%;
  width: calc(100% - 4em);
  z-index: 4;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%) translatex(-50%);
  pointer-events: none; }

.custom-nav button {
  background: white;
  color: #003366;
  font-size: 18px;
  border: 2px solid #003366;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  cursor: pointer;
  opacity: 0.8;
  transition: all 0.2s ease;
  pointer-events: all; }

.custom-nav button:hover {
  background: #003366;
  color: white;
  opacity: 1; }

@media (max-width: 768px) {
  .custom-nav button {
    font-size: 17px;
    width: 40px;
    height: 40px; } }
.commercial-section {
  padding: 5em 0; }
  .commercial-section .container .section-title {
    font-size: 1.7em;
    color: var(--theme-1);
    text-align: center;
    margin-bottom: 1em; }
  .commercial-section .container .commercial-card-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 1em; }
  .commercial-section .container .card {
    width: calc((100% / 2) - 1em);
    border: 2px solid var(--theme-13);
    border-radius: 1em;
    padding: 3em;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04); }

.commercialization-section {
  background: #ededed;
  padding-top: 5em;
  padding-bottom: 3em; }
  .commercialization-section .container .section-title {
    text-align: center;
    margin-bottom: 2em;
    font-size: 1.6em;
    color: var(--theme-12); }
  .commercialization-section .container .accordion-container {
    width: 100%; }
    .commercialization-section .container .accordion-container .accordion-item {
      border-bottom: 1px dashed #333; }
      .commercialization-section .container .accordion-container .accordion-item.active .accordion-content {
        max-height: 1000px;
        padding: 2em;
        padding-top: 0;
        background: #fff; }
      .commercialization-section .container .accordion-container .accordion-item.active .accordion-header {
        color: var(--theme-1);
        background-color: #fff;
        font-weight: bold;
        font-size: 18px;
        padding-left: 2em;
        padding-top: 2em; }
        .commercialization-section .container .accordion-container .accordion-item.active .accordion-header::before {
          background-image: url("asset/minus.svg");
          width: 20px;
          height: 4px; }
      .commercialization-section .container .accordion-container .accordion-item .accordion-header {
        width: 100%;
        text-align: left;
        padding: 1em;
        padding-right: 3em;
        font-weight: 400;
        border: none;
        font-size: 16px;
        background-color: transparent;
        cursor: pointer;
        transition: background-color 0.3s;
        position: relative; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-header:hover {
          color: var(--theme-2);
          background-color: #fff; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-header::before {
          content: "";
          position: absolute;
          background-image: url("asset/plus.svg");
          background-position: center;
          background-repeat: no-repeat;
          background-size: cover;
          width: 20px;
          height: 20px;
          top: 50%;
          right: 1em;
          transform: translateY(-50%); }
      .commercialization-section .container .accordion-container .accordion-item .accordion-content {
        overflow: hidden;
        max-height: 0;
        transition: max-height 0.3s ease;
        padding: 0 1em; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-content h3 {
          color: #333;
          font-size: 16px;
          margin-top: 2em;
          font-weight: 500; }
          .commercialization-section .container .accordion-container .accordion-item .accordion-content h3:first-of-type {
            margin-top: 0; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-content p {
          margin-top: 0.5em;
          font-size: 14px;
          line-height: 1.6; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-content ul,
        .commercialization-section .container .accordion-container .accordion-item .accordion-content ol {
          margin: 1em 0;
          padding-left: 20px; }
          .commercialization-section .container .accordion-container .accordion-item .accordion-content ul li,
          .commercialization-section .container .accordion-container .accordion-item .accordion-content ol li {
            margin-bottom: 0.5em;
            line-height: 1.6;
            color: #333;
            font-size: 14px; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-content ul {
          padding-left: 0; }
          .commercialization-section .container .accordion-container .accordion-item .accordion-content ul li {
            background: url(asset/check-white.png) no-repeat left 7px;
            padding-left: 15px;
            display: flex;
            align-items: center;
            gap: 0.5em; }
            .commercialization-section .container .accordion-container .accordion-item .accordion-content ul li img {
              flex-shrink: 0; }
        .commercialization-section .container .accordion-container .accordion-item .accordion-content a {
          color: var(--theme-1);
          text-decoration: underline; }
          .commercialization-section .container .accordion-container .accordion-item .accordion-content a:hover {
            color: #4ec9f0; }
  .commercialization-section .container footer {
    text-align: center;
    color: #333;
    margin-top: 3em;
    font-weight: 600; }

#coming-soon-page .bookmark-section {
  background-image: none;
  background-color: var(--theme-12);
  border-bottom: 13px solid #fff; }

@media (max-width: 991px) {
  .navbar {
    flex-wrap: wrap;
    position: relative; }
    .navbar #menu-btn {
      display: flex;
      flex-direction: column;
      gap: 6px; }
      .navbar #menu-btn div {
        width: 24px;
        height: 2px;
        background-color: #000;
        border-radius: 1em;
        transition: transform 0.3s ease, opacity 0.3s ease; }
      .navbar #menu-btn.active div:nth-child(1) {
        transform: rotate(-45deg); }
      .navbar #menu-btn.active div:nth-child(2) {
        opacity: 0;
        transform: scale(0); }
      .navbar #menu-btn.active div:nth-child(3) {
        transform: rotate(45deg);
        position: relative;
        margin-top: -15px; }
    .navbar .nav-links {
      z-index: 1020;
      overflow: hidden;
      flex-direction: column;
      align-items: start;
      gap: 1em;
      padding: 0;
      position: absolute;
      top: 0;
      left: 0;
      background-color: var(--theme-12);
      padding: 2em 2.5em 2.5em 2.5em;
      opacity: 0;
      transform: translateX(-200%);
      transition: all 0.5s ease-in;
      border-bottom-right-radius: 1em; }
      .navbar .nav-links li a {
        color: #ffffff88;
        font-size: 16px;
        padding: 0.5em;
        border-bottom: 1px solid #ffffff63;
        width: 100%;
        position: relative; }
        .navbar .nav-links li a:hover, .navbar .nav-links li a.active {
          color: #ffffff; }
        .navbar .nav-links li a::before {
          content: "";
          position: relative;
          width: 20px;
          height: 20px;
          background-image: url(asset/arrow.svg);
          display: inline-block;
          background-position: center;
          background-size: cover;
          background-repeat: no-repeat;
          margin-right: 0.5em; }
      .navbar .nav-links li.button a {
        font-size: 16px;
        padding: 0.5em;
        border-radius: 0;
        background-color: transparent;
        color: #ffffff88; }
        .navbar .nav-links li.button a:hover {
          color: #ffffff;
          background-color: transparent; }
      .navbar .nav-links.active {
        display: flex;
        opacity: 1;
        transform: translateX(0%); } }
@media (max-width: 1000px) {
  #service-page .owl-carousel .carousel-item .content-image {
    display: none; }
  #service-page .carousel-section::before, #service-page .carousel-section::after {
    display: none; }
  #service-page .owl-carousel .carousel-item .text {
    width: 100%; }
  #service-page .custom-nav {
    top: 90px;
    left: auto;
    right: 49px;
    transform: translate(10px, 10px);
    width: 90px; } }
@media (max-width: 769px) {
  .hero .container {
    flex-direction: column-reverse;
    align-items: center;
    gap: 1em; }
    .hero .container .hero-content h1 {
      text-align: center;
      font-size: 3.5em; }
    .hero .container .hero-content p {
      width: 100%;
      text-align: center; }
    .hero .container .hero-content .hero-buttons {
      flex-direction: column;
      align-items: center;
      gap: 1em; }
      .hero .container .hero-content .hero-buttons .btn {
        width: max-content;
        text-align: center; }

  .about-section {
    padding: 3em 0; }
    .about-section .container .about-content {
      flex-direction: column;
      align-items: center;
      gap: 2em; }
      .about-section .container .about-content .about-text {
        flex: 1 1 100%;
        text-align: center; }
      .about-section .container .about-content .about-pillars {
        flex: 1 1 100%;
        padding: 2em 1.5em;
        text-align: center; }
        .about-section .container .about-content .about-pillars ul {
          grid-template-columns: repeat(1, 1fr); }
          .about-section .container .about-content .about-pillars ul li {
            margin: 0 auto;
            text-align: center; }
            .about-section .container .about-content .about-pillars ul li .icon {
              margin: 0 auto; }

  .services-section {
    padding: 3em 0; }
    .services-section .container .services-header h2 {
      font-size: 2em; }
    .services-section .container .services-header p {
      width: 100%; }
    .services-section .container .tabs .tab-button {
      width: max-content;
      text-align: center; }
    .services-section .container .tab-contents .tab-content {
      flex-direction: column;
      align-items: center; }
      .services-section .container .tab-contents .tab-content .content-text {
        flex: 1 1 100%;
        text-align: center; }
      .services-section .container .tab-contents .tab-content .content-image {
        flex: 1 1 100%; }

  .programs-section {
    padding: 3em 0; }
    .programs-section .programs-header h2 {
      font-size: 2em; }
    .programs-section .programs-header p {
      width: 100%; }
    .programs-section .programs-grid {
      flex-direction: column;
      align-items: center; }
      .programs-section .programs-grid .program-card {
        flex: 1 1 100%;
        max-width: 100%;
        margin: 0 auto;
        text-align: center; }
        .programs-section .programs-grid .program-card__header {
          padding: 2em; }
        .programs-section .programs-grid .program-card__body {
          padding: 1.5em; }
    .programs-section .investments-section {
      margin-top: 5em;
      text-align: center; }
      .programs-section .investments-section .investments-header .investments-title {
        font-size: 2em; }
      .programs-section .investments-section .investments-grid {
        flex-direction: column;
        align-items: center; }
        .programs-section .investments-section .investments-grid .investment-column {
          flex: 1 1 100%;
          max-width: 100%;
          text-align: center; }

  .ventures-section {
    padding: 3em 0; }
    .ventures-section .container .ventures-header h2 {
      font-size: 2em; }
    .ventures-section .container .ventures-header p {
      width: 100%; }
    .ventures-section .container .venture-tabs .tab-btn {
      padding: 0.5em 1em;
      font-size: var(--font-sm); }
    .ventures-section .container .ventures-grid {
      grid-template-columns: repeat(2, 1fr); }
      .ventures-section .container .ventures-grid .venture-card {
        margin: 0 auto;
        max-width: 100%; }

  .subsidiaries-section {
    padding: 3em 0; }
    .subsidiaries-section .container .subsidiaries-header h2 {
      font-size: 2em; }
    .subsidiaries-section .container .subsidiary-cards .network-card {
      flex: 1 1 100%;
      margin: 0 auto;
      padding: 1.5em; }
      .subsidiaries-section .container .subsidiary-cards .network-card p {
        width: 100%; }
      .subsidiaries-section .container .subsidiary-cards .network-card .network-icon {
        min-height: 4em; }

  .contact-section .container .contact-header h2 {
    font-size: 2em; }
  .contact-section .container .contact-header p {
    width: 100%; }
  .contact-section .container .contact-form-container {
    flex-direction: column;
    gap: 2em; }
    .contact-section .container .contact-form-container .form-section {
      flex: 1 1 100%; }
      .contact-section .container .contact-form-container .form-section h3 {
        text-align: center; }
    .contact-section .container .contact-form-container .visit-section {
      flex: 1 1 100%;
      text-align: center; }
      .contact-section .container .contact-form-container .visit-section .visit-section-wrap {
        width: 100%;
        height: auto; }

  .commercial-section {
    padding: 3em 0; }
    .commercial-section .container .card {
      width: 100%;
      padding: 2em; }

  .commercialization-section {
    padding: 3em 0; }

  .bookmark-section {
    min-height: 270px; }
    .bookmark-section .container h1 {
      font-size: 2.5em; }

  .about-main-section .container .about-main-content {
    max-width: 100%;
    margin: 0 auto; } }
@media (max-width: 561px) {
  .hero .container .hero-content h1 {
    font-size: 3em; }

  .ventures-section .container .ventures-grid {
    grid-template-columns: repeat(1, 1fr); }
    .ventures-section .container .ventures-grid .venture-card {
      max-width: 100%; }

  .contact-section .container .contact-options {
    flex-direction: column;
    align-items: center;
    gap: 2em; }
    .contact-section .container .contact-options .contact-card {
      flex: 1 1 100%;
      max-width: 100%;
      text-align: center; }
  .contact-section .container .contact-form-container .form-section form .input-group {
    flex-direction: column; }
  .contact-section .container .contact-form-container .visit-section {
    flex: 1 1 100%; }
    .contact-section .container .contact-form-container .visit-section .visit-section-wrap {
      width: 100%;
      height: auto;
      text-align: left; } }

/*# sourceMappingURL=style.css.map */
