@charset "UTF-8";
.contact-form .input-group {
  width: 100%;
  margin-bottom: 12px; }

.contact-form label {
  font-weight: 600;
  margin-bottom: 8px; }

.contact-form .input-group input,
.contact-form .input-group textarea {
  height: 45px;
  width: 100%;
  font-weight: 400;
  padding: 10px 12px;
  background: #FAFAFA;
  border: 1px solid #F5F5F5;
  border-radius: 2px;
  box-shadow: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none; }

.contact-form .input-group textarea {
  width: 100%;
  height: 130px;
  padding: 10px 16px; }

.contact-form .input-group textarea:focus {
  outline: none; }

.contact-bannertop {
  position: relative; }
  .contact-bannertop .contact-bannertop-wrap {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 160px 40px 32px 40px;
    background: linear-gradient(0deg, rgba(3, 78, 162, 0.8) 0%, rgba(3, 78, 162, 0) 100%); }
    .contact-bannertop .contact-bannertop-wrap h1 {
      color: #fff;
      font-size: 56px;
      font-weight: 600;
      margin-bottom: 24px;
      letter-spacing: -3px; }
    .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists {
      display: flex;
      flex-wrap: wrap;
      gap: 16px; }
      .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item {
        border-radius: 4px;
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(12px);
        padding: 24px;
        flex: 0 0 calc(25% - 12px);
        max-width: calc(25% - 12px); }
        .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .icon {
          margin-bottom: 10px; }
          .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .icon img {
            width: 40px;
            height: 40px;
            aspect-ratio: 1/1; }
        .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .title {
          color: #fff;
          font-size: 24px;
          font-weight: 600;
          letter-spacing: -1px; }
        .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .desc {
          border-top: 1px solid #fff;
          padding-top: 12px;
          margin-top: 12px;
          color: #fff;
          letter-spacing: -0.5px; }
  @media (min-width: 992px) {
    .contact-bannertop img {
      width: 100%;
      aspect-ratio: 21/9;
      object-fit: cover; } }
  @media (max-width: 991.98px) {
    .contact-bannertop img {
      width: 100%; }
    .contact-bannertop .contact-bannertop-wrap {
      padding: 32px 0; }
      .contact-bannertop .contact-bannertop-wrap h1 {
        font-size: 36px; }
      .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists {
        display: flex;
        flex-wrap: wrap;
        gap: 16px; }
        .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item {
          flex: 0 0 calc(50% - 8px);
          max-width: calc(50% - 8px);
          padding: 16px; } }
  @media (max-width: 767.98px) {
    .contact-bannertop img {
      width: 100%; }
    .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item {
      padding: 8px; }
      .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .icon img {
        width: 30px;
        height: 30px; }
      .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .title {
        font-size: 14px; }
      .contact-bannertop .contact-bannertop-wrap .contact-bannertop-lists .contact-bannertop-item .desc {
        font-size: 12px; } }

.section-formcontact {
  padding-top: 64px; }
  .section-formcontact .section-formcontact-wrapper {
    display: flex;
    flex-wrap: wrap; }
    .section-formcontact .section-formcontact-wrapper .banner-formcontact {
      flex: 0 0 50%;
      max-width: 50%; }
      .section-formcontact .section-formcontact-wrapper .banner-formcontact img {
        height: 100%;
        object-fit: cover; }
    .section-formcontact .section-formcontact-wrapper .formcontact-wrapper {
      flex: 0 0 50%;
      max-width: 50%;
      padding: 32px;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      background: #fff; }
      .section-formcontact .section-formcontact-wrapper .formcontact-wrapper h2 {
        font-size: 40px;
        font-weight: 600;
        margin-bottom: 30px;
        letter-spacing: -2.5px; }
      .section-formcontact .section-formcontact-wrapper .formcontact-wrapper form .cta-submitform {
        width: 100%;
        margin-top: 12px;
        background: #034EA2;
        font-size: 16px;
        padding: 10px 40px;
        font-weight: 700;
        color: #fff;
        transition: all 0.5s ease; }
        .section-formcontact .section-formcontact-wrapper .formcontact-wrapper form .cta-submitform:hover {
          background: linear-gradient(270deg, #00AEEF 0.08%, #034EA2 99.97%); }
  @media (max-width: 991.98px) {
    .section-formcontact {
      padding-top: 32px; }
      .section-formcontact .section-formcontact-wrapper .banner-formcontact {
        flex: 0 0 100%;
        max-width: 100%; }
      .section-formcontact .section-formcontact-wrapper .formcontact-wrapper {
        flex: 0 0 100%;
        max-width: 100%;
        padding: 24px 16px; }
        .section-formcontact .section-formcontact-wrapper .formcontact-wrapper h2 {
          font-size: 24px; } }

.section-contact-social {
  padding: 64px 0; }
  .section-contact-social h2 {
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 40px;
    text-align: center;
    letter-spacing: -2.5px; }
  .section-contact-social .contact-social-lists {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px; }
    .section-contact-social .contact-social-lists .social-item {
      flex: 1 1 0;
      height: 380px;
      display: flex;
      align-items: center;
      justify-content: center;
      background: #fff;
      border-radius: 4px;
      overflow: hidden;
      transition: all 0.5s ease;
      background: linear-gradient(180deg, #FFF 0%, #DEF3FF 100%); }
      .section-contact-social .contact-social-lists .social-item a {
        display: flex;
        gap: 20px;
        flex-direction: column;
        text-align: center;
        align-items: center;
        width: 100%;
        height: 100%;
        justify-content: center; }
      .section-contact-social .contact-social-lists .social-item svg {
        width: 80px;
        height: 80px;
        transition: all 0.5s ease; }
        .section-contact-social .contact-social-lists .social-item svg path {
          transition: all 0.5s ease; }
      .section-contact-social .contact-social-lists .social-item span {
        width: 100%;
        text-align: center;
        font-size: 24px;
        font-weight: 600;
        transition: all 0.5s ease;
        letter-spacing: -1.7px; }
      .section-contact-social .contact-social-lists .social-item:hover {
        background: linear-gradient(0deg, #034EA2 0.05%, #00AEEF 99.95%); }
        .section-contact-social .contact-social-lists .social-item:hover span {
          color: #fff; }
        .section-contact-social .contact-social-lists .social-item:hover.facebook svg path#bgpath1 {
          fill: #fff; }
        .section-contact-social .contact-social-lists .social-item:hover.facebook svg path#bgpath2 {
          fill: #034EA2; }
        .section-contact-social .contact-social-lists .social-item:hover.linkedin {
          background: linear-gradient(0deg, #034EA2 0.05%, #00AEEF 99.95%); }
          .section-contact-social .contact-social-lists .social-item:hover.linkedin svg path {
            fill: #fff; }
        .section-contact-social .contact-social-lists .social-item:hover.youtube {
          background: #FF0302; }
          .section-contact-social .contact-social-lists .social-item:hover.youtube svg path#path-ytb-1 {
            fill: #fff; }
          .section-contact-social .contact-social-lists .social-item:hover.youtube svg path#path-ytb-2 {
            fill: #FF0302; }
        .section-contact-social .contact-social-lists .social-item:hover.tiktok {
          background: #000; }
          .section-contact-social .contact-social-lists .social-item:hover.tiktok svg path#path-tiktok-2 {
            fill: #fff; }
  @media (max-width: 991.98px) {
    .section-contact-social {
      padding: 32px 0; }
      .section-contact-social h2 {
        font-size: 24px;
        margin-bottom: 32px; }
      .section-contact-social .contact-social-lists .social-item {
        flex: 0 0 calc(50% - 8px);
        max-width: calc(50% - 8px);
        height: 200px; }
        .section-contact-social .contact-social-lists .social-item svg {
          width: 50px;
          height: 50px; }
        .section-contact-social .contact-social-lists .social-item span {
          font-size: 16px; } }

/* ===== Responsive Scale Rule — Liên hệ ===== */
@media (min-width: 1200px) and (max-width: 1599px) {
  .contact-bannertop .contact-bannertop-wrap h1 {
    font-size: 48px; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .contact-bannertop .contact-bannertop-wrap h1 {
    font-size: 44px; }
  .section-formcontact .section-formcontact-wrapper .formcontact-wrapper h2 {
    font-size: 36px; }
  .section-contact-social h2 {
    font-size: 30px; } }
