/** Header */
header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background-color: transparent;
    transition: all 0.3s ease;
}

header.scrolled {
    background-color: rgba(255, 255, 255, 0.95);
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

header.scrolled #top-menu #logo img {
    content: url('/wp-content/uploads/2025/05/virex-logo-color-1.png');
}

header.scrolled #top-menu .horizontal-menu .top-menu-item a {
    color: var(--gray999);
}

header.scrolled #search-bar .search-icon {
    filter: none;
}

header.scrolled #btn-menu img {
    content: url(/wp-content/uploads/2025/05/icon-menu-black.svg);
}

header #top-menu {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 111.25rem;
    width: 100%;
    margin: 0 auto;
    position: relative; /* Added for positioning context of megamenu */
    z-index: 1000; /* Ensure it's above other elements */
    padding: 1rem 1.25rem;
    transition: all 0.3s ease; /* Add transition for smooth changes */
}

header #logo {
    margin-right: auto;
}

header #logo img {
    height: 3.125rem;
    transition: content 0.3s ease;
}

/* Horizontal line in header */
header .horizontal-line {
    width: 100%;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.2);
}

header.scrolled .horizontal-line {
    background-color: rgba(0, 0, 0, 0.1);
}

#header-attached-menu {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;

    background-color: #0D1322;
}
    #header-attached-menu[data-theme="white"] {
      background-color: var(--white);
      border-bottom: solid 1px var(--gray200);
    }

#header-attached-menu .menu-container {
    display: flex;
    width: 100%;
    max-width: var(--mw-container);
    height: 4.375rem;
    justify-content: flex-start;
}

#header-attached-menu .menu-container .horizontal-menu {
    display: flex;
    justify-content: flex-start;

    color: var(--gray600);
    font-size: 1.125rem;
}

#header-attached-menu .menu-container .horizontal-menu .menu-item {
    height: 4.375rem;
    align-content: center;
    padding: 0 2.7rem;
}

#header-attached-menu .menu-container .horizontal-menu .menu-item.active {
    border-bottom: 5px solid var(--secondary);
    color: var(--white);
}

#header-attached-menu[data-theme="white"] .menu-container .horizontal-menu .menu-item.active {
    color: var(--gray999) !important;
}

.mobile-menu-icon {
    display: none;
}

/** Menu */
.menu-item {
    cursor: pointer;
    font-weight: 600;
}
    .menu-item a {
      text-decoration: none;
      color: inherit;
    }


.top-menu-item,
.top-menu-item a {
    color: white;
    font-family: var(--ft-default);
    font-weight: bold;
    font-size: 1rem;
    text-decoration: none;
}

/* Megamenu styles */
#megamenu-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  overflow: hidden;
  transition: height 0.3s ease;
  background-color: var(--primary);
  background-image: url(/wp-content/uploads/2025/05/bg-megamenu-1.svg);
  background-repeat: no-repeat;
  background-position: bottom right;
  background-size: auto;
  z-index: 999;
}

#megamenu-container .megamenu-wrapper {
  position: relative;
  height: 100%;
  padding: 2.5rem 0;
  max-width: var(--mw-container);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
}

#megamenu-container.active {
  height: 480px; /* Adjusted height for better appearance */
}

/* Hide all submenu columns by default */
.submenu-column {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    background-color: transparent;
    margin-top: 2.3rem;
    opacity: 0.6;
    transition: opacity 0.3s ease;
}

/* Make visible and active when parent is hovered/active */
.top-menu-item.active .submenu-column {
    opacity: 1;
}

/* Show ALL submenu columns when megamenu is active - this is the key change */
#megamenu-container.active ~ #top-menu .submenu-column {
    display: block;
}

/* Alternative selector if the above doesn't work due to DOM structure */
header.megamenu-active .submenu-column {
    display: block;
}

/* Adjust horizontal menu item styling for hover state */
header .horizontal-menu {
    display: flex;
    justify-content: flex-start;
    gap: 6.125rem;
    width: 100%;
    max-width: 50rem;
    position: relative; /* For absolute positioning of submenus */
}

header .horizontal-menu .top-menu-item {
    position: static; /* This allows children to be positioned relative to horizontal-menu */
    cursor: pointer;
}

header .horizontal-menu .top-menu-item a {
    transition: color 0.2s ease;
}

header .horizontal-menu .top-menu-item:hover a,
header .horizontal-menu .top-menu-item.active a {
    color: white;
    font-weight: bold;
}

/* Set specific positions for each submenu column to create a table-like layout */
.top-menu-item[data-menu="products"] .submenu-column {
    left: -2rem;
}

.top-menu-item[data-menu="knowledge"] .submenu-column {
    left: 5.5rem; /* Adjusted to align properly */
}

.top-menu-item[data-menu="news"] .submenu-column {
    left: 14.8rem; /* Adjusted to align properly */
}

.top-menu-item[data-menu="support"] .submenu-column {
    left: 23.5rem; /* Adjusted to align properly */
}

.top-menu-item[data-menu="contact"] .submenu-column {
    left: 33rem; /* Adjusted to align properly */
}

.top-menu-item[data-menu="company"] .submenu-column {
    left: 41.3rem; /* Adjusted to align properly */
}

/* Style the submenu content */
.submenu-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.submenu-column ul li {
    margin-bottom: 0.5rem;
    text-align: center;
    line-height: 2rem;
}

.submenu-column ul li a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: color 0.2s ease;
    font-weight: 400;
}

.submenu-column ul li a:hover {
    color: white;
}

/* Highlight the active menu item's submenu */
.top-menu-item.active .submenu-column {
    opacity: 1;
}

#page-content-container {
    width: 100%;
    min-height: 23rem;
    padding-top: 3rem;
    margin-top: -5.7875rem;
    position: relative;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

/* Default background if no specific one is found */
.default-header-background {
    background-image: url(/wp-content/uploads/2025/05/top-bg.jpg);
}

/* 기존 페이지 콘텐츠 스타일 유지 */
#page-content-container #page-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: var(--mw-container);
    margin: 0 auto;
    padding: 6rem 1.25rem 2.5rem 1.25rem;
    gap: 1rem;
}

.-header-background {
    width: 100%;
    background-image: url(/wp-content/uploads/2025/05/top-bg.jpg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    color: white;
    padding: 0;
    padding-top: 3rem;
    min-height: 23rem;
    margin-top: -1px;
}
/* Breadcrumb styling */
#page-content #breadcrumb {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    font-size: 0.875rem;
    margin-bottom: 1rem;
    width: 100%;
    justify-content: flex-start;
}

#page-content #breadcrumb span a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: color 0.2s ease;
}

#page-content #breadcrumb span a:hover {
    color: white;
}

#page-content #breadcrumb .active {
    color: var(--white);
    font-weight: 500;
}

#page-content #breadcrumb .arrow {
    margin: 0 0.5rem;
}

/* Title styling */
#page-content .page-title-en {
    color: rgba(255, 255, 255, 0.4);
    font-family: "Montserrat", sans-serif;
    font-size: 1rem;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
    letter-spacing: -0.03rem;
    margin-top: 2.69rem;
}

#page-content .page-title-en-light {
    font-family: var(--ft-en);
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.2;
    text-align: center;
    color: white;
    opacity: 0.8;
}

#page-content .page-title-ko {
    font-size: 2.75rem;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    color: white;
    margin: 1.5rem 0;
}

#page-content .page-description {
    color: var(--white-light);
    font-size: 1rem;
    font-style: normal;
    font-weight: 300;
    line-height: 1.5rem;
    /* 160% */
    letter-spacing: -0.02813rem;
    margin-top: 0.75rem;
}
/* 모바일/데스크톱 전용 표시 */
@media screen and (min-width: 768px) {
    .mobile-only {
      display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .desktop-only {
      display: none !important;
    }
}
/* Add styles for sort icons */
.sort-icon {
    cursor: pointer;
    transition: transform 0.2s;
}
    .sort-icon.asc {
      transform: rotate(0deg);
    }
    .sort-icon.desc {
      transform: rotate(180deg);
    }
    .sort-active {
      color: #3d86ff;
    }




    .button-category-list {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 0.625rem;
    }
      .button-category-item {
        cursor: pointer;
        display: flex;
        min-width: 6.875rem;
        padding: 0.75rem 1rem;
        justify-content: center;
        align-items: center;
        gap: 0.375rem;
    
        border-radius: 6.25rem;
        background: var(--gray100);
    
        text-align: center;
        font-family: var(--ft-default);
        font-size: 1.0625rem;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        letter-spacing: -0.51px;
      }
      .button-category-item.selected {
        display: flex;
        padding: 0.75rem 1rem;
        justify-content: center;
        align-items: center;
        gap: 0.375rem;
    
        background: var(--gray900);
    
        color: var(--white);
      }
    
    
      .content-body form {
        display: flex;
        flex-direction: column;
        max-width: 75rem;
        margin: 0 auto; 
      }
        .content-body form .form-row {
          display: flex;
          flex-direction: row;
          flex-wrap: wrap;
          padding: 0.75rem;
          column-gap: 5rem;
        }
        .content-body form .black-border-top {
          border-top: 1px solid var(--gray700);
        }
        .content-body form .gray-border-top {
          border-top: 1px solid var(--gray200);
        }
    
        .content-body form .form-row .form-item {
          flex-grow: 1;
          display: flex;
          flex-wrap: wrap;
          align-items: center;
          justify-content: center;;
        }
    
          .content-body form input[type=text],
          .content-body form input[type=email] {
            height: 3rem;
            padding: 0.625rem 1rem;
            color: var(--gray500);
    
            font-size: 1rem;
            font-family: var(--ft-default);
            font-weight: 400;
            line-height: 1.5rem;
            letter-spacing: -0.48px;
    
            border-radius: 6px;
            border: 1px solid var(--gray300);
          }
          
          .content-body form textarea {
            padding: 0.625rem 1rem;
            color: var(--gray500);
    
            font-size: 1rem;
            font-family: var(--ft-default);
            font-weight: 400;
            line-height: 1.5rem;
            letter-spacing: -0.48px;
    
            border-radius: 6px;
            border: 1px solid var(--gray300);
          }
          
        /* Fixed width for labels */
        .content-body form .form-row .form-item label {
          width: 7rem;
          min-width: 7rem;
          margin-right: 1rem;
          font-weight: 600;
          letter-spacing: -0.035em;
        }
        
        .content-body form .form-row .form-item:has(.privacy) label {
          margin-bottom: 0.5rem;
          width: 100%;
        }
    
        /* Target .privacy div */
        .content-body form .form-row .form-item .privacy {
          flex-basis: 100%;
          height: 100px;
          overflow-y: auto;
          padding: 1rem;
          
          color: var(--gray700);
          font-size: 0.875rem;
          font-style: normal;
          font-weight: 400;
          line-height: normal;
          letter-spacing: -0.42px;
    
          border-radius: 6px;
          border: 1px solid var(--gray300);
          background: var(--gray000);
        }
        
        /* Make inputs take the remaining space */
        .content-body form .form-row .form-item input[type=text],
        .content-body form .form-row .form-item input[type=email],
        .content-body form .form-row .form-item input[type=file],
        .content-body form .form-row .form-item textarea {
          flex-grow: 1;
        }
    
        /* Target labels of required inputs */
        .content-body form .form-row .form-item:has(input[required]) label::after {
          content: "*";
          color: red;
          margin-left: 4px;
        }
    
        .content-body form .form-row .form-item .ext-description {
          flex-basis: 100%;
          margin-top: 0.5rem;
          margin-left: 8rem;
    
          color: var(--gray600);
          font-family: var(--ft-default);
          font-size: 0.875rem;
          font-style: normal;
          font-weight: 500;
          line-height: normal;
          letter-spacing: -0.42px;
        }
    
        .content-body form .form-row .form-item .agree-privacy {
          margin-top: 0.7rem;
          justify-content: end;
          width: 100%;
          display: flex;
          gap: 0.5rem;
          align-items: center;
    
          color: var(--gray900);
          font-size: 1rem;
          font-style: normal;
          font-weight: 600;
          line-height: normal;
          letter-spacing: -0.48px;
        }
    
        /* file attachment box */
        .file-input-container {
            position: relative;
            display: flex;
            height: 48px;
            padding: 10px 16px;
            align-items: center;
            gap: 10px;
            flex: 1 0 0;
            border-radius: 6px;
            border: 1px solid var(--gray300);
            width: 400px;
        }
    
        .file-input-container label {
            color: var(--gray500);
            font-size: 16px;
            font-style: normal;
            font-weight: 400;
            line-height: 24px;
            letter-spacing: -0.48px;
            flex-grow: 1;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }
    
        .file-input-container input[type="file"] {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            opacity: 0;
            cursor: pointer;
        }
    
        .file-button {
            display: flex;
            width: 100px;
            height: 38px;
            padding: 0px 5px;
            justify-content: center;
            align-items: center;
            gap: 10px;
            position: absolute;
            right: 6px;
            top: 5px;
            border-radius: 6px;
            background: var(--primary);
            color: #FFF;
            font-size: 14px;
            font-style: normal;
            font-weight: 500;
            line-height: 20px;
            letter-spacing: -0.42px;
            border: none;
            cursor: pointer;
            pointer-events: none;
        }
    
        .content-body form .btn-submit {
          width: 200px;
          height: 48px;
          min-width: 100px;
          padding: 0px 24px;
          flex-shrink: 0;
          font-size: 1.125rem;
          font-style: normal;
          font-weight: 600;
          line-height: normal;
          letter-spacing: -0.54px;
          box-shadow: none; /* No shadow */
          appearance: none; /* Reset default button appearance */
          -webkit-appearance: none; /* For Safari/Chrome */
          -moz-appearance: none; /* For Firefox */
          border: none; /* Remove default border */
          border-radius: 100px;
          background: var(--primary); /* Define your own background */
          color: var(--white); /* Define your own text color */
          cursor: pointer; /* Ensure pointer cursor for interactivity */
        }
        
        .content-body form .btn-submit:disabled {
          background: var(--gray400); /* Your disabled background */
          color: var(--gray600); /* Your disabled text color */
          box-shadow: none; /* No shadow */
          appearance: none; /* Reset default appearance */
          -webkit-appearance: none;
          -moz-appearance: none;
          border: none; /* No border */
          cursor: not-allowed; /* Disabled cursor */
        }
    
    
          /* Remove bullet points from all lists within the privacy section */
          .content-body form .form-row .form-item .privacy ul,
          .content-body form .form-row .form-item .privacy ol {
            list-style-type: none;
            padding-left: 0;
            margin-left: 0;
          }
    
          /* Remove dots/numbers from list items within the privacy section */
          .content-body form .form-row .form-item .privacy li {
            display: block;
            margin-bottom: 8px;
          }
    
          /* Format definition lists consistently within the privacy section */
          .content-body form .form-row .form-item .privacy dl {
            margin-bottom: 20px;
          }
    
          .content-body form .form-row .form-item .privacy dt {
            font-weight: bold;
            margin-top: 15px;
            margin-bottom: 5px;
          }
    
          .content-body form .form-row .form-item .privacy dd {
            margin-left: 0;
            margin-bottom: 10px;
          }
    
          /* Format nested content within the privacy section */
          .content-body form .form-row .form-item .privacy .sTxt {
            margin-left: 0;
            padding-left: 0;
          }
    
          .content-body form .form-row .form-item .privacy .sTxt h3 {
            margin-top: 15px;
            margin-bottom: 5px;
            font-size: 1em;
            font-weight: bold;
          }
    
          /* Format paragraphs within the privacy section */
          .content-body form .form-row .form-item .privacy p {
            margin-bottom: 10px;
          }    
    
  
          #general-article-list-header {
            display: flex;
            justify-content: space-between;
            align-items: end;
            width: 100%;
            font-size: 0.875rem;
            font-weight: 600;
            letter-spacing: -0.42px;
          }
            #general-article-list-header .cnt-area{
              display: inline-flex;
              gap: 0.4rem;
            }
          
            #general-article-list-header .search-area {
              position: relative;
              margin-right: 0.75rem;
              width: 15.3125rem;
              height: 2.75rem;
              
              display: flex;
              width: 334px;
              height: 42px;
              padding: 6px 8px 6px 16px;
              align-items: center;
              gap: 10px;
              flex-shrink: 0;
          
              border-radius: 6px;
              border: 1px solid var(--gray300, #DEE2E6);
              background: #FFF;
          
            }
              
              #general-article-list-header .search-area input {
                width: 100%;
                height: 100%;
                size: 1rem;
                color: var(--gray500);
                font-weight: 400;
                line-height: normal;
          
                border: 0;
                outline: none;
                color: var(--gray500);
          
                font-family: var(--ft-default);
                font-size: 1rem;
                font-style: normal;
                font-weight: 400;
                line-height: 1.5rem; /* 150% */
                letter-spacing: -0.48px;
              }
              
              #general-article-list-header .search-area .search-icon {
                position: absolute;
                cursor: pointer;
                right: 0.75rem;
                /* 12px */
                top: 50%;
                transform: translateY(-50%);
                width: 2rem;
                /* Adjust icon size as needed */
                height: 2rem;
                background-image: url(/wp-content/uploads/2025/04/icon-search.svg);
                background-size: contain;
                background-repeat: no-repeat;
                pointer-events: none;
                /* Prevent icon from blocking input interaction */
              }
          
            
          #general-article-list {
              width: 100%;
              border-spacing: 0;
              border-top: 1px solid var(--gray600);
              border-bottom: 1px solid var(--gray600);
              margin-top: 0.75rem;
          }
          
            #general-article-list thead tr {
              height: 3.5rem;
            }
              #general-article-list thead tr th {
                font-size: 1rem;
                border-bottom: 1px solid var(--gray400);
              }
          
              #general-article-list th,
              #general-article-list td {
                padding: 0.8rem;
                text-align: center;
                align-content: center;
                background: var(--white);
              }
          
              #general-article-list tbody td {
                border-top: 1px solid var(--gray300);
                color: var(--gray900);
                font-family: var(--ft-default);
                font-size: 1.125rem;
                font-style: normal;
                font-weight: 600;
                line-height: normal;
                letter-spacing: -0.54px;
              }
  
              #general-article-list tbody td a {
                text-decoration: none;
                color: var(--gray900);
              }
  
            #general-article-list tbody tr {
              height: 4.5rem;
            }
          
            #general-article-list tbody tr:hover {
              background: var(--gray000);
            }
          
          /* General Article View */
            
          #general-article-view {
            width: 100%;
            border-spacing: 0;
            border-top: 2px solid var(--zinc-950, #09090B);
          }
            #general-article-view .article-view-header {
              padding: 1.5rem;
              display: flex;
              flex-direction: column;
              gap: 1rem;
              border-bottom: 1px solid var(--zinc-200, #E4E4E7);
            }
          
              #general-article-view .article-view-header h2.article-view-title {
                color: #000;
                font-size: 1.5625rem;
                font-style: normal;
                font-weight: 700;
                line-height: 150%;
                letter-spacing: -0.04688rem;
              }
  
              #general-article-view .article-view-header .article-view-info {
                color: var(--zinc-500, #71717A);
                font-size: 0.875rem;
                font-style: normal;
                font-weight: 600;
                line-height: 1.25rem;
                letter-spacing: -0.02625rem;
                display: flex;
                flex-direction: row;
                gap: 1.5rem;
              }
  
              #general-article-view .article-view-header .article-view-info label {
                margin-right: 0.5rem;
                color: var(--zinc-500, #71717A);
              }
  
            #general-article-view .article-view-content {
              padding: 5rem;
              text-align: center;
              color: #000;
              font-size: 1.125rem;
              font-style: normal;
              font-weight: 500;
              line-height: 1.875rem;
              letter-spacing: -0.03375rem;
            }
              .article-view-content img {
                max-width: 100%;
                height: auto;
              }
  
            #general-article-view .article-view-footer {
              display: flex;
              flex-direction: column;
            }
  
              #general-article-view .article-view-footer .article-view-button-group {
                justify-content: center;
                align-items: center;
                text-align: center;
              }
  
                #general-article-view .article-view-footer .article-view-button-group .btn-default {
                  padding: 0.625rem 1rem;
                  border-radius: 0.375rem;
                  background: var(--gray100, #F1F3F5);
                  color: var(--zinc-800, #27272A);
                  font-family: Pretendard;
                  font-size: 1rem;
                  font-style: normal;
                  font-weight: 600;
                  line-height: 1.5rem; /* 150% */
                  text-decoration: none;
                }
                  #general-article-view .article-view-footer .article-view-button-group .btn-default:hover {
                    background: var(--gray200, #E4E4E7);
                  }
                  #general-article-view .article-view-footer .article-view-button-group .btn-default:active {
                    background: var(--gray300, #D1D5DB);
                  }
                  #general-article-view .article-view-footer .article-view-button-group .btn-default:focus {
                    outline: none;
                    box-shadow: 0 0 0 2px var(--gray400, #9CA3AF);
                  }
  
              #general-article-view .article-view-footer .article-view-navigation {
                border-bottom: 1px solid var(--zinc-200, #E4E4E7);
              }
  
                #general-article-view .article-view-footer .article-view-navigation .article-view-navigation-item {
                  color: var(--gray999);
                  font-family: var(--ft-default);
                  font-size: 0.875rem;
                  font-style: normal;
                  font-weight: 700;
                  line-height: 1.25rem; /* 142.857% */
                  letter-spacing: -0.02625rem;
  
                  display: grid;
                  grid-template-columns: 2.8rem 0.8rem 1fr;
                  gap: 2rem;
                  width: 100%;
  
                  padding: 1rem 0;
  
                  border-top: 1px solid var(--zinc-200, #E4E4E7);
                }
  
                #general-article-view .article-view-footer .article-view-navigation .article-view-navigation-item a {
                  text-decoration: none;
                  color: var(--gray999);
                }
  
                #general-article-view .article-view-footer .article-view-navigation .article-view-navigation-item a.no-link {
                  color: var(--zinc-400, #A1A1AA);
                  font-weight: 500;
                }
  
  
  
            
          /** News > Media */
          
          #general-article-list-header .search-area {
            position: relative;
            /* 50px */
            margin-right: 0.75rem;
            /* 12px */
            width: 15.3125rem;
            /* 245px */
            height: 2.75rem;
            /* 44px */
          
            
            display: flex;
            width: 334px;
            height: 42px;
            padding: 6px 8px 6px 16px;
            align-items: center;
            gap: 10px;
            flex-shrink: 0;
          
            border-radius: 6px;
            border: 1px solid var(--gray300, #DEE2E6);
            background: #FFF;
          }
          
          /* Grid Item Layout */
          .grid-container {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
            width: 100%;
            max-width: var(--mw-container);
            margin: 2rem auto;
          }
          
            .grid-item {
              display: flex;
              flex-direction: column;
              overflow: hidden;
              transition: transform 0.3s ease, box-shadow 0.3s ease;
              background-color: var(--white);
              border-bottom: 1px solid var(--gray200);
            }
            .grid-item:hover {
              transform: translateY(-4px);
              /* padding: 1rem; */
              box-shadow: 0px 8px 16px rgba(0, 0, 0, 0.1);
            }
              .grid-item-thumbnail {
                width: 100%;
                min-height: 200px;
                /* height: 270px; */
                height: auto;
                overflow: hidden;
                position: relative;
              }
                .grid-item-thumbnail img {
                  width: 100%;
                  height: 100%;
                  object-fit: cover;
                }
          
              .grid-item-content {
                display: flex;
                flex-direction: column;
                flex-grow: 1;
              }
          
              .grid-item-title {
                font-size: 1.375rem;
                font-weight: 700;
                color: var(--gray999);
                line-height: normal;
                font-style: normal;
                letter-spacing: -0.66px;
                overflow: hidden;
                text-overflow: ellipsis;
              }
              .grid-item-title:hover {
                text-decoration: underline;
              }
              .grid-item-title a{
                color: inherit;
                text-decoration: none;
              }
          
              .grid-item-date {
                margin-top: auto;
                font-family: var(--ft-en);
                font-size: 0.875rem;
                color: var(--gray600);
                font-weight: 400;
              }
  
  /* Mobile responsive styles for form elements and container */
  @media screen and (max-width: 47.9375rem) {
    /* Container and content title */
    .container {
      padding: 1rem;
    }
  
    .container .content-title {
      font-size: 1.5rem;
      margin-bottom: 1.25rem;
    }
  
    /* Button category list */
    .button-category-list {
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      justify-content: center;
    }
  
    .button-category-item {
      flex: 1 1 calc(50% - 0.25rem);
      min-width: 120px;
      font-size: 0.875rem;
      padding: 0.625rem 0.5rem;
    }
  
    /* Form layout */
    .content-body form .form-row {
      flex-direction: column;
      padding: 1rem 0;
      column-gap: 0;
    }
  
    .content-body form .form-row .form-item {
      margin-bottom: 0.75rem;
      flex-direction: column;
      align-items: center;
    }
  
    /* Form labels */
    .content-body form .form-row .form-item label {
      width: 100%;
      min-width: auto;
      margin-right: 0;
      margin-bottom: 0.5rem;
    }
  
    /* Form inputs */
    .content-body form .form-row .form-item input[type=text],
    .content-body form .form-row .form-item input[type=email],
    .content-body form .form-row .form-item textarea {
      width: 100%;
      font-size: 0.9375rem;
    }
  
    .content-body form .form-row .form-item textarea {
      min-height: 120px;
    }
  
    /* Extra descriptions */
    .content-body form .form-row .form-item .ext-description {
      margin-left: 0;
      font-size: 0.8125rem;
    }
  
    /* File input */
    .file-input-container {
      width: 100%;
    }
  
    .file-button {
      width: 80px;
      font-size: 0.875rem;
    }
  
    /* Privacy section */
    .content-body form .form-row .form-item .privacy {
      max-height: 120px;
      font-size: 0.8125rem;
    }
  
    .content-body form .form-row .form-item .agree-privacy {
      font-size: 0.9375rem;
    }
  
    /* Submit button */
    .content-body form .btn-submit {
      width: 100%;
      max-width: 200px;
      font-size: 1rem;
    }
  
    #page-content #breadcrumb {
      gap: 0;
    }
    #page-content-container #page-content {
      padding: 4rem 1.25rem 2.5rem 1.25rem
    }
  
    #page-content #breadcrumb span a {
      font-size: 12px;
    }
  
    #page-content .page-title-en {
      font-size: 14px;
      margin-top: 1.69rem;
    }
  
    #page-content .page-title-ko {
      font-size: 35px;
    }
  }
  
  /* Media Query for Mobile */
  @media screen and (max-width: 47.9375rem) {
    /* Header mobile styles */
    header #top-menu {
      padding: 0.75rem 1rem;
    }
  }
  
  /* 반응형 메가메뉴 스타일 */
  @media screen and (max-width: 1200px) {
    header .horizontal-menu {
      gap: 3rem;
    }
    
    /* 메가메뉴 위치 조정 */
    .top-menu-item[data-menu="products"] .submenu-column {
      left: 0;
    }
    
    .top-menu-item[data-menu="knowledge"] .submenu-column {
      left: 6rem;
    }
    
    .top-menu-item[data-menu="news"] .submenu-column {
      left: 12rem;
    }
    
    .top-menu-item[data-menu="support"] .submenu-column {
      left: 18rem;
    }
    
    .top-menu-item[data-menu="contact"] .submenu-column {
      left: 24rem;
    }
    
    .top-menu-item[data-menu="company"] .submenu-column {
      left: 30rem;
    }
  }
  
  /* 태블릿 크기 메가메뉴 스타일 */
  @media screen and (min-width: 768px) and (max-width: 992px) {
    /* 태블릿에서의 메뉴 스타일 조정 */
    #megamenu-container.active {
      height: auto;
      max-height: 85vh;
    }
    
    /* 상단 메뉴 영역에 약간의 여백 추가 */
    header #top-menu {
      padding: 0.9rem 1.5rem;
    }
    
    /* 로고 크기 조정 */
    header #logo img {
      height: 2.8rem;
    }
    
    /* 햄버거 메뉴 버튼 크기 조정 */
    .megamenu-toggle {
      width: 2.2rem;
      height: 1.7rem;
    }
    
    /* 메가메뉴 내 항목들의 여백 조정 */
    #megamenu-container.active .top-menu-item {
      padding: 0.875rem 0;
    }
    
    /* 서브메뉴 항목들을 2열 그리드로 배치 */
    #megamenu-container.active .submenu-column ul {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 0.5rem;
    }
    
    /* 서브메뉴 항목 스타일 조정 */
    #megamenu-container.active .submenu-column ul li {
      padding: 0.25rem 0.5rem;
      margin: 0.25rem 0;
    }
    
    /* 서브메뉴가 열렸을 때 패딩 조정 */
    #megamenu-container.active .top-menu-item.active .submenu-column {
      padding: 0.5rem 1rem 0.5rem 2rem;
      margin: 0.5rem 0;
    }
  }
  
  /* 모바일 메가메뉴 스타일 */
  @media screen and (max-width: 992px) {
    /* 상단 메뉴 구조 수정 */
    header #top-menu {
      flex-wrap: wrap;
      justify-content: space-between;
    }
    
    header .horizontal-menu {
      display: none; /* 모바일에서는 기본 메뉴 숨김 */
      width: 100%;
      order: 3;
      margin-top: 1rem;
    }
    
    /* 메가메뉴 컨테이너 전체 화면 표시 */
    #megamenu-container.active {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100vh;
      z-index: 1001;
      overflow-y: auto;
      display: block;
    }
    
    #megamenu-container .megamenu-wrapper {
      padding: 4rem 1rem 2rem;
      display: block;
      height: auto;
      min-height: 100%;
    }
    
    /* 모바일 메뉴 활성화 시 메뉴 표시 */
    #megamenu-container.active ~ #top-menu .horizontal-menu,
    header.megamenu-active .horizontal-menu,
    #megamenu-container.active .horizontal-menu {
      display: block;
      position: static;
      z-index: 1002;
      max-width: 100%; /* 가로폭 제한 해제 */
    }
    
    /* 메인 메뉴 아이템 스타일 */
    header .horizontal-menu .top-menu-item,
    #megamenu-container .horizontal-menu .top-menu-item {
      width: 100%;
      padding: 0.75rem 0;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
      position: relative;
    }
    
    header .horizontal-menu .top-menu-item a,
    #megamenu-container .horizontal-menu .top-menu-item a {
      display: block;
      font-size: 1.25rem;
      padding: 0.5rem 0;
      color: white !important;
    }
    
    /* 메가메뉴 아이템 재배치 */
    .submenu-column,
    #megamenu-container .submenu-column {
      position: relative;
      top: 0;
      margin-top: 1rem;
      margin-bottom: 1.5rem;
      width: 100%;
      left: 0 !important; /* 위치 고정 */
    }
    
    /* 모든 서브메뉴 열 항상 표시 */
    #megamenu-container.active ~ #top-menu .submenu-column,
    header.megamenu-active .submenu-column,
    #megamenu-container.active .top-menu-item.active .submenu-column {
      display: block;
      left: 0 !important;
      opacity: 1;
    }
    
    /* 서브메뉴 스타일 조정 */
    .submenu-column,
    #megamenu-container .submenu-column {
      margin-top: 0.5rem;
      padding-left: 1rem;
      position: static;
      width: 100%;
    }
    
    .submenu-column ul,
    #megamenu-container .submenu-column ul {
      display: block;
    }
    
    .submenu-column ul li,
    #megamenu-container .submenu-column ul li {
      width: 100%;
      flex: none;
      text-align: left;
      margin-bottom: 0.5rem;
    }
    
    .submenu-column ul li a,
    #megamenu-container .submenu-column ul li a {
      font-size: 1rem;
      display: block;
      padding: 0.5rem 0;
    }
    
    /* 서브메뉴 표시 로직 */
    .top-menu-item .submenu-column,
    #megamenu-container .top-menu-item .submenu-column {
      display: none; /* 기본적으로 서브메뉴 숨김 */
    }
    
    .top-menu-item.active .submenu-column,
    #megamenu-container .top-menu-item.active .submenu-column {
      display: block; /* 클릭된 메뉴의 서브메뉴만 표시 */
      opacity: 1;
    }
    
    /* 토글 버튼 */
    .top-menu-item .menu-toggle,
    #megamenu-container .top-menu-item .menu-toggle {
      position: absolute;
      right: 1rem;
      top: 50%;
      transform: translateY(-50%);
      width: 30px;
      height: 30px;
      text-align: center;
      line-height: 30px;
      color: white;
      font-size: 1.5rem;
      cursor: pointer;
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.1);
      display: flex;
      align-items: center;
      justify-content: center;
    }
    
    .top-menu-item .menu-toggle:after,
    #megamenu-container .top-menu-item .menu-toggle:after {
      content: '+';
    }
    
    .top-menu-item.active .menu-toggle:after,
    #megamenu-container .top-menu-item.active .menu-toggle:after {
      content: '-';
    }
    
    /* 메가메뉴 표시 시 body 스크롤 차단 */
    body.megamenu-open {
      overflow: hidden;
    }
    
    /* 모바일 메뉴 닫기 버튼 */
    .mobile-menu-close {
      position: absolute;
      top: 1rem;
      right: 1rem;
      width: 32px;
      height: 32px;
      cursor: pointer;
      z-index: 1003;
    }
    
    .mobile-menu-close:before,
    .mobile-menu-close:after {
      content: '';
      position: absolute;
      top: 50%;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: white;
    }
    
    .mobile-menu-close:before {
      transform: rotate(45deg);
    }
    
    .mobile-menu-close:after {
      transform: rotate(-45deg);
    }
  }
  
  /* 메가메뉴 토글 버튼 스타일 */
  .megamenu-toggle {
    display: none;
    width: 32px;
    height: 32px;
    cursor: pointer;
    position: relative;
    z-index: 1002;
  }
  
  @media screen and (max-width: 992px) {
    .megamenu-toggle {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      width: 2rem;
      height: 1.5rem;
      margin-right: 1rem;
    }
    
    /* 햄버거 메뉴 아이콘 */
    .megamenu-toggle span {
      width: 100%;
      height: 2px;
      background-color: white;
      transition: all 0.3s ease;
    }
    
    /* 활성화된 햄버거 메뉴 (X 모양) */
    .megamenu-toggle.active span:nth-child(1) {
      transform: rotate(-45deg) translate(-5px, 6px);
    }
    
    .megamenu-toggle.active span:nth-child(2) {
      opacity: 0;
    }
    
    .megamenu-toggle.active span:nth-child(3) {
      transform: rotate(45deg) translate(-5px, -6px);
    }
    
    /* 스크롤된 헤더에서의 햄버거 메뉴 색상 */
    header.scrolled .megamenu-toggle span {
      background-color: var(--gray999);
    }
  }
  
  /* Mobile Header Styles */
  .mobile-header {
    display: none; /* Hidden by default, shown on mobile */
  }
  
  /* Mobile Search Container */
  .mobile-search-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.95);
    z-index: 2000;
    display: none;
    padding: 1rem;
  }
  
  .mobile-search-container.active {
    display: block;
    animation: fadeIn 0.2s;
  }
  
  .mobile-search-wrapper {
    position: relative;
    width: 100%;
    padding: 0.75rem 0;
    margin-top: 2rem;
    border-bottom: 1px solid #e0e0e0;
    display: flex;
    align-items: center;
  }
  
  .mobile-search-wrapper input {
    width: 100%;
    border: none;
    outline: none;
    background: transparent;
    font-size: 1.125rem;
    color: #333;
    padding: 0.5rem 2.5rem 0.5rem 0.5rem;
  }
  
  .mobile-search-wrapper .search-icon {
    position: absolute;
    right: 0.5rem;
    width: 1.5rem;
    height: 1.5rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-search.svg);
    background-size: contain;
    background-repeat: no-repeat;
    cursor: pointer;
  }
  
  .mobile-search-close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 1rem;
    height: 1rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-close.svg);
    background-size: contain;
    background-repeat: no-repeat;
    cursor: pointer;
  }
  
  /* Mobile Menu Container */
  .mobile-menu-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: white;
    z-index: 1999;
    display: none;
    overflow: hidden;
  }
  
  .mobile-menu-container.active {
    display: block;
    animation: slideInRight 0.3s;
  }
  
  .mobile-menu-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    border-bottom: 1px solid #eee;
  }
  
  .mobile-menu-header .user-info {
    display: flex;
    align-items: center;
    gap: 0.5rem;
  }
  
  .mobile-menu-header .user-info .user-icon {
    width: 2.5rem;
    height: 2.5rem;
    background-color: #f0f0f0;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .mobile-menu-header .user-info .user-status {
    font-size: 1rem;
    font-weight: 500;
    color: #333;
  }
  
  .mobile-menu-header .menu-close {
    width: 1rem;
    height: 1rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-close.svg);
    background-size: contain;
    background-repeat: no-repeat;
    cursor: pointer;
  }
  
  .mobile-menu-list {
    padding: 0;
    margin: 0;
    list-style: none;
  }
  
  .mobile-menu-item {
    border-bottom: 1px solid #eee;
  }
  
  .mobile-menu-item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    color: #333;
    font-size: 1.125rem;
    font-weight: 600;
    text-decoration: none;
  }
  
  .mobile-menu-item > a .main-menu-text {
    display: flex;
    gap: 1rem;
  }
  
  .mobile-menu-item > a .main-menu-text .menu-title {
    color: var(--gray600);
  }
  
  .mobile-menu-item > a .main-menu-text .menu-category {
    color: var(--primary);
  }
  
  .mobile-menu-item > a .menu-arrow {
    width: 0.75rem;
    height: 0.75rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-arrow-right.svg);
    background-size: contain;
    background-repeat: no-repeat;
    transition: transform 0.3s;
  }
  
  .mobile-menu-item.active > a .menu-arrow {
    transform: rotate(90deg);
  }
  
  .mobile-submenu {
    display: none;
    padding: 0;
    background-color: #f9f9f9;
  }
  
  .mobile-menu-item.active .mobile-submenu {
    display: block;
  }
  
  .mobile-submenu-item {
    border-bottom: 1px solid #eee;
  }
  
  .mobile-submenu-item:last-child {
    border-bottom: none;
  }
  
  .mobile-submenu-item a {
    display: block;
    padding: 0.875rem 1rem 0.875rem 2rem;
    color: #333;
    font-size: 1rem;
    text-decoration: none;
  }
  
  @media screen and (max-width: 992px) {
    /* Show mobile header and hide desktop on mobile */
    .mobile-header {
      display: flex;
      width: 100%;
      align-items: center;
      justify-content: space-between;
      padding: 1rem;
      position: relative;
      z-index: 1000;
    }
    
    .mobile-header.scrolled {
      background-color: white;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }
    
    .mobile-header.scrolled .mobile-logo img {
      content: url('/virex-blog/wp-content/uploads/2025/05/virex-logo-color.png');
    }
    
    .mobile-header.scrolled .mobile-search-icon {
      filter: none;
      background-image: url('/virex-blog/wp-content/uploads/2025/05/icon-search.svg');
    }
    
    .mobile-header.scrolled .mobile-menu-icon {
      filter: none;
      background-image: url('/virex-blog/wp-content/uploads/2025/05/icon-menu-black.svg');
    }
    
    .mobile-logo img {
      height: 2.5rem;
    }
    
    .mobile-controls {
      display: flex;
      align-items: center;
      gap: 1rem;
    }
    
    .mobile-search-icon, .mobile-menu-icon {
      width: 1.5rem;
      height: 1.5rem;
      background-size: contain;
      background-repeat: no-repeat;
      cursor: pointer;
      display: block;
    }
    
    .mobile-search-icon {
      background-image: url('/virex-blog/wp-content/uploads/2025/05/icon-search.svg');
      filter: brightness(0) invert(1);
    }
    
    .mobile-menu-icon {
      background-image: url('/virex-blog/wp-content/uploads/2025/05/icon-menu.svg'); 
    }
    
    .mobile-header.scrolled .mobile-search-icon {
      filter: none;
      background-image: url('/virex-blog/wp-content/uploads/2025/05/icon-search.svg');
    }
    
    /* Hide desktop header on mobile */
    header #top-menu {
      display: none;
    }
    
    /* Hide the horizontal line in header */
    header .horizontal-line {
      display: none;
    }
    
    /* Animation for mobile menu */
    @keyframes slideInRight {
      from {
        transform: translateX(100%);
      }
      to {
        transform: translateX(0);
      }
    }
    
    @keyframes fadeIn {
      from {
        opacity: 0;
      }
      to {
        opacity: 1;
      }
    }
  }
  
  /* Mobile Menu Optimizations */
  /* Ensure the mobile menu is always positioned correctly */
  body.megamenu-open {
    overflow: hidden;
  }
  
  /* Better handling for iOS devices */
  @supports (-webkit-touch-callout: none) {
    .mobile-search-container, .mobile-menu-container {
      height: -webkit-fill-available;
    }
  }
  
  /* Improved mobile menu styling to match design */
  @media screen and (max-width: 992px) {
    /* Background overlay for menu and search */
    .mobile-menu-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 1998;
      display: none;
    }
    
    .mobile-menu-overlay.active {
      display: block;
    }
    
    /* Enhanced mobile search container */
    .mobile-search-container {
      background-color: white;
      z-index: 2000;
    }
    
    .mobile-search-wrapper {
      border-bottom: 2px solid #333;
      margin-top: 3rem;
    }
    
    .mobile-search-wrapper input {
      font-size: 1.25rem;
      padding: 0.75rem 0.5rem;
    }
    
    .mobile-search-wrapper .search-icon {
      right: 0;
      top: 50%;
      transform: translateY(-50%);
    }
    
    /* Enhanced mobile menu container */
    .mobile-menu-container {
      z-index: 1999;
      right: 0;
      left: auto;
      width: 100%;
      max-width: 100%;
      background-color: white;
      box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
      animation: slideInRight 0.3s;
    }
    
    .mobile-menu-header {
      padding: 1.5rem;
      border-bottom: 1px solid #eee;
    }
    
    .mobile-menu-header .user-info {
      gap: 1rem;
    }
    
    .mobile-menu-header .user-info .user-icon {
      width: 3rem;
      height: 3rem;
    }
    
    .mobile-menu-header .menu-close {
      width: 1rem;
      height: 1rem;
    }
    
    .mobile-menu-item > a {
      padding: 1.25rem 1.5rem;
    }
    
    .mobile-menu-item > a .main-menu-text {
      gap: 1.5rem;
    }
    
    .mobile-menu-item > a .main-menu-text .menu-title {
      font-weight: 600;
      font-size: 1.25rem;
    }
    
    .mobile-menu-item > a .main-menu-text .menu-category {
      font-weight: 600;
      font-size: 1.25rem;
    }
    
    .mobile-menu-item > a .menu-arrow {
      width: 0.875rem;
      height: 0.875rem;
    }
    
    .mobile-submenu-item a {
      padding: 1rem 1.5rem 1rem 3rem;
      font-size: 1.125rem;
    }
  }
  
  /* Mobile menu styles */
  @media screen and (max-width: 992px) {
    /* Enhanced mobile menu container */
    .mobile-menu-container {
      z-index: 1999;
      top: 0;
      right: 0;
      left: 0;
      width: 100%;
      height: 100vh; /* Use viewport height for better mobile compatibility */
      max-width: 100%;
      background-color: white;
      box-shadow: -2px 0 10px rgba(0, 0, 0, 0.1);
      animation: slideInRight 0.3s;
      position: fixed;
      overflow: hidden;
    }
    
    .mobile-menu-header {
      padding: 1.25rem 1.5rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      border-bottom: 1px solid #F0F0F0;
    }
    
    .mobile-menu-header .user-info {
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }
    
    .mobile-menu-header .user-info .user-icon {
      width: 2.75rem;
      height: 2.75rem;
      display: flex;
      align-items: center;
      justify-content: center;
      background-color: #F5F5F5;
      border-radius: 50%;
      overflow: hidden;
    }
    
    .mobile-menu-header .user-info .user-icon img {
      width: 60%;
      height: 60%;
      opacity: 0.7;
    }
    
    .mobile-menu-header .user-info .user-status {
      font-size: 1.125rem;
      font-weight: 600;
      color: #333;
    }
    
    .mobile-menu-header .menu-close {
      width: 1rem;
      height: 1rem;
      background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-close.svg);
      background-size: contain;
      background-repeat: no-repeat;
      cursor: pointer;
      opacity: 0.75;
      transition: opacity 0.2s ease;
    }
    
    .mobile-menu-header .menu-close:hover {
      opacity: 1;
    }
    
    /* Split menu layout */
    .mobile-menu-content {
      display: flex;
      height: calc(100% - 4.5rem); /* Account for header height */
    }
    
    /* Left menu panel */
    .mobile-menu-main {
      width: 35%;
      border-right: 1px solid #F0F0F0;
      height: 100%;
      overflow-y: auto;
      background-color: #FAFAFA;
      -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
    }
    
    .mobile-menu-list {
      padding: 0;
      margin: 0;
      list-style: none;
    }
    
    .mobile-menu-item {
      border-bottom: 1px solid #F0F0F0;
    }
    
    .mobile-menu-item a {
      display: flex;
      padding: 1.25rem 1.5rem;
      color: #555;
      font-size: 1.125rem;
      font-weight: 500;
      text-decoration: none;
      transition: all 0.2s ease;
      position: relative;
      justify-content: space-between;
      align-items: center;
    }
    
    .mobile-menu-item a:after {
      content: '›';
      font-size: 1.5rem;
      line-height: 1;
      color: #CCC;
      position: absolute;
      right: 1.5rem;
      transition: all 0.2s ease;
      opacity: 0.8;
      transform: none;
      border: none;
    }
    
    .mobile-menu-item.active a {
      color: #3D86FF;
      font-weight: 600;
      background-color: #EFF6FF;
    }
    
    .mobile-menu-item.active a:after {
      color: #3D86FF;
      opacity: 1;
      transform: translateX(3px);
    }
    
    /* Right submenu panel */
    .mobile-menu-submenu {
      width: 65%;
      height: 100%;
      overflow-y: auto;
      padding: 0;
      background-color: white;
      -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
    }
    
    .mobile-submenu-panel {
      display: none;
      padding: 0;
      height: 100%;
    }
    
    .mobile-submenu-panel.active {
      display: block;
    }
    
    .submenu-title {
      font-size: 1.25rem;
      font-weight: 600;
      color: #333;
      margin: 0;
      padding: 1.25rem 1.5rem;
      border-bottom: 1px solid #F0F0F0;
      background-color: white;
      position: sticky;
      top: 0;
      z-index: 10;
    }
    
    .mobile-submenu-list {
      padding: 1rem 0;
      margin: 0;
      list-style: none;
    }
    
    .mobile-submenu-item {
      margin: 0;
    }
    
    .mobile-submenu-item a {
      display: block;
      padding: 1rem 1.5rem;
      color: #555;
      font-size: 1rem;
      text-decoration: none;
      transition: all 0.2s ease;
      position: relative;
      border-bottom: 1px solid transparent;
    }
    
    .mobile-submenu-item a:hover {
      color: #3D86FF;
      background-color: #F9FBFF;
    }
    
    .mobile-submenu-item a:after {
      content: '›';
      font-size: 1.5rem;
      line-height: 1;
      color: #CCC;
      position: absolute;
      right: 1.5rem;
      top: 50%;
      transform: translateY(-50%);
      transition: all 0.2s ease;
      opacity: 0.7;
    }
    
    .mobile-submenu-item a:hover:after {
      color: #3D86FF;
      opacity: 1;
      transform: translate(3px, -50%);
    }
  }
  
  /* Adjustments for smaller mobile screens */
  @media screen and (max-width: 576px) {
    .mobile-menu-content {
      flex-direction: column;
      height: calc(100% - 4.5rem);
    }
    
    .mobile-menu-main {
      width: 100%;
      height: auto;
      max-height: 45%;
      border-right: none;
      border-bottom: 1px solid #F0F0F0;
    }
    
    .mobile-menu-submenu {
      width: 100%;
      height: 55%;
    }
    
    .mobile-menu-item a {
      padding: 1rem 1.5rem;
    }
    
    .submenu-title {
      font-size: 1.125rem;
      padding: 1rem 1.5rem;
    }
    
    .mobile-submenu-item a {
      padding: 0.875rem 1.5rem;
      font-size: 0.9375rem;
    }
  }
  
  /* Touch device enhancements */
  .touch-device .mobile-menu-item a,
  .touch-device .mobile-submenu-item a {
    -webkit-tap-highlight-color: transparent;
  }
  
  .touch-device .mobile-menu-item a.touch-active,
  .touch-device .mobile-submenu-item a.touch-active {
    background-color: rgba(61, 134, 255, 0.08);
    transition: background-color 0.1s ease;
  }
  
  /* Animation for menu appearance */
  @keyframes fadeInMenu {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
  
  .mobile-menu-container.active .mobile-menu-content {
    animation: fadeInMenu 0.3s ease;
  }
  
  @keyframes arrowPulse {
    0% {
      transform: translateX(0);
    }
    50% {
      transform: translateX(3px);
    }
    100% {
      transform: translateX(0);
    }
  }
  
  /* Make megamenu override scrolled header styles */
  header.scrolled.megamenu-active {
    background-color: transparent;
    box-shadow: none;
  }
  
  header.scrolled.megamenu-active #top-menu #logo img {
    content: url(/virex-blog/wp-content/uploads/2025/04/logo-w.png); /* Use white logo when megamenu is active */
  }
  
  header.scrolled.megamenu-active #top-menu .horizontal-menu .top-menu-item a {
    color: white; /* Make menu text white for better readability in megamenu */
  }
  
  header.scrolled.megamenu-active #search-bar .search-icon {
    filter: brightness(0) invert(1); /* Make search icon white when megamenu is active */
  }
  
  header.scrolled.megamenu-active #btn-menu img {
    content: url(/virex-blog/wp-content/uploads/2025/05/icon-menu.svg); /* Use white menu icon when megamenu is active */
  }
  
  /* Position search bar */
  #search-bar {
    display: flex;
    align-items: center;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 2rem;
    padding: 0.5rem 1rem;
    margin-left: 1rem;
    margin-right: 1rem;
    transition: all 0.3s ease;
  }
  
  #search-bar input {
    background: transparent;
    border: none;
    color: white;
    width: 12rem;
    outline: none;
    font-size: 0.875rem;
  }
  
  #search-bar input::placeholder {
    color: rgba(255, 255, 255, 0.7);
  }
  
  #search-bar .search-icon {
    width: 1rem;
    height: 1rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-search.svg);
    background-size: contain;
    background-repeat: no-repeat;
    filter: brightness(0) invert(1);
    cursor: pointer;
  }
  
  #search-bar .close-icon {
    width: 1rem;
    height: 1rem;
    background-image: url(/virex-blog/wp-content/uploads/2025/04/icon-close.svg);
    background-size: contain;
    background-repeat: no-repeat;
    filter: brightness(0) invert(1);
    margin-left: 0.5rem;
    display: none;
    cursor: pointer;
  }
  
  header.scrolled #search-bar {
    background-color: rgba(0, 0, 0, 0.05);
  }
  
  header.scrolled #search-bar input {
    color: var(--gray999);
  }
  
  header.scrolled #search-bar input::placeholder {
    color: rgba(0, 0, 0, 0.5);
  }
  
  header.scrolled #search-bar .close-icon {
    filter: none;
  }
  
  /* Override scrolled header styles when megamenu is active */
  header.scrolled.megamenu-active #search-bar {
    background-color: rgba(255, 255, 255, 0.1);
  }
  
  header.scrolled.megamenu-active #search-bar input {
    color: white;
  }
  
  header.scrolled.megamenu-active #search-bar input::placeholder {
    color: rgba(255, 255, 255, 0.7);
  }
  
  header.scrolled.megamenu-active #search-bar .close-icon {
    filter: brightness(0) invert(1);
  }
  
  /* 메가메뉴 컬럼 스타일 */
  .megamenu-columns {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 2rem;
    padding: 2rem 0;
  }

  .megamenu-column {
    padding: 0 1rem;
  }

  .megamenu-column-title {
    color: white;
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }

  .submenu-list {
    list-style: none;
    padding: 0;
    margin: 0;
  }

  .submenu-list li {
    margin-bottom: 0.8rem;
  }

  .submenu-list li a {
    color: rgba(255, 255, 255, 0.7);
    font-size: 1rem;
    text-decoration: none;
    transition: color 0.2s ease;
  }

  .submenu-list li a:hover {
    color: white;
  }

  /* 반응형 스타일 */
  @media screen and (max-width: 1200px) {
    .megamenu-columns {
      grid-template-columns: repeat(3, 1fr);
    }
  }

  @media screen and (max-width: 768px) {
    .megamenu-columns {
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem;
    }
    
    .megamenu-column-title {
      font-size: 1.1rem;
      margin-bottom: 1rem;
    }
  }
  