@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard/dist/web/variable/pretendardvariable.css");

      * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
      }

      body {
        background-color: #fff;
        font-family: "Pretendard Variable", Pretendard, -apple-system,
            BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI",
            "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji",
            "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
      }

      a[href^="tel"], a[href^="mailto"] {
        pointer-events: none;
        text-decoration: none;
        color: inherit;
      }

      .scroll-fade {
        opacity: 0;
        transform: translateY(30px);
        transition: all 0.6s ease-out;
      }

      .scroll-fade.show {
        opacity: 1;
        transform: translateY(0);
      }

      /* header */
      .header {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        transition: transform 0.3s ease-in-out;
        background-color: #fff;
      }

      .header-inner {
        width: 100%;
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        justify-content: space-between;
        align-items: center;
      }

      .header-logo {
        width: 120px;
      }

      .menu-icon {
        width: 22px;
        cursor: pointer;
      }

      .mobile-menu-overlay {
        position: absolute;
        top: 0; 
        left: 0;
        right: 0;
        bottom: 0;
        height: 100vh; 
        display: none;
        z-index: 999;
      }

      .mobile-menu-overlay.show {
        display: block;
      }

      .mobile-menu {
        position: absolute;
        top: 60px;
        right: -100%;
        width: 100%;
        height: 100%; 
        background-color: rgba(0, 0, 0, 0.9);
        display: flex;
        flex-direction: column;
        justify-content: center;
        transition: right 0.2s ease-in-out;
      }

      .mobile-menu ul {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
        list-style: none;
        margin: 0;
        padding: 0 0 80px;
      }

      .mobile-menu ul li a {
        text-decoration: none;
        color: #fff;
        font-size: 18px;
        font-weight: 500;
      }

      .mobile-menu.show {
        right: 0;
      }

      /* intro */
      .intro-section {
        width: 100%;
        padding: 120px 0 20px 0;
      }

      .intro-inner {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
      }

      .intro-texts {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
      }

      .intro-texts img {
        width: 150px;
      }

      .intro-title {
        font-weight: bold;
        font-size: 28px;
        text-align: center;
        color: #3478f6; 
      }

      .intro-subtexts {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
      }

      .intro-subtitle {
        font-weight: 600;
        font-size: 22px;
        text-align: center;
        color: #000;
      }

      .intro-description {
        font-weight: normal;
        font-size: 15px;
        color: #999999;
        text-align: center;
        line-height: 1.4;
      }

      .intro-card {
        overflow: hidden;
        border: none;
      }

      .intro-card-image {
        width: 100%;
        height: 256px; 
        border-radius: 15px;
      }

      .intro-card-image img {
        width: 320px;
      }

      /* Service */
      .services-section {
        width: 100%;
        padding: 40px 0;
        display: flex;
        flex-direction: column;
        align-items: center;
      }
      .services-header {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 15px;
          margin-bottom: 40px;
      }
      .services-header-symbol {
          width: 31px;
          height: 30px;
      }
      .services-header-text {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 10px;
      }
      .services-header-subtitle {
          font-weight: 500;
          font-size: 20px;
          color: black;
          text-align: center;
          white-space: nowrap;
      }
      .services-header-description {
          font-size: 26px;
          line-height: 1.2;
          color: black;
          text-align: center;
      }
      .services-header-description span {
          line-height: 28px;
      }
      .services-header-description .bold {
          font-weight: 800;
      }
      .services-card-container {
          width: 320px;
          position: relative;
      }
      .service-card {
          width: 320px;
          height: 320px;
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 10px;
          position: relative;
          background-color: transparent;
          border: none;
      }
      .service-card:first-child {
          margin-bottom: -40px; 
          z-index: 1;
      }
      .service-card:last-child {
          z-index: 2;
      }
      .service-card-wrapper-blue {
          position: absolute;
          top: 0;
          left: 0;
          width: 320px;
          height: 320px;
          border-radius: 50%;
          border: 2px solid transparent;
          background: linear-gradient(135deg, #306FDB 40%, #fff 75%) border-box;
          -webkit-mask: 
              linear-gradient(#fff 0 0) padding-box, 
              linear-gradient(#fff 0 0);
          -webkit-mask-composite: destination-out;
          mask: 
              linear-gradient(#fff 0 0) padding-box, 
              linear-gradient(#fff 0 0);
          mask-composite: exclude;
          z-index: -1;
      }
      .service-card-wrapper-black {
          position: absolute;
          top: 0;
          left: 0;
          width: 320px;
          height: 320px;
          border-radius: 50%;
          border: 2px solid transparent;
          background: linear-gradient(135deg, #000 40%, #fff 75%) border-box;
          -webkit-mask: 
              linear-gradient(#fff 0 0) padding-box, 
              linear-gradient(#fff 0 0);
          -webkit-mask-composite: destination-out;
          mask: 
              linear-gradient(#fff 0 0) padding-box, 
              linear-gradient(#fff 0 0);
          mask-composite: exclude;
          z-index: -1;
      }
      .service-card-inner {
          position: absolute;
          top: 2px;
          left: 2px;
          width: calc(100% - 4px);
          height: calc(100% - 4px);
          border-radius: 50%;
          background-color: transparent;
      }
      .service-card-logo {
          height: 35px;
      }
      .service-card-description {
          font-size: 15px;
          color: #686868;
          text-align: center;
      }
      .service-card-title-black {
          color: black;
          font-weight: 800;
          font-size: 20px;
          text-align: center;
      }
      .service-card-title-blue {
          color: #306FDB;
          font-weight: 800;
          font-size: 20px;
          text-align: center;
      }

      /* chatbot */
      .chatbot-section {
        position: relative;
        width: 100%;
      }

      .chatbot-bg-section {
          width: 100%;
          height: 1100px;
          background: url("../images/m/bg_chatbot.png") 50% 50% / cover;
      }

      .chatbot-bg-section-small {
          height: 860px;
      }

      .chatbot-bg-section-recommend {
          height: 820px;
      }

      .chatbot-header {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 20px;
          padding-top: 50px;
          padding-left: 59px;
          padding-right: 59px;
      }

      .chatbot-logo-container {
          display: flex;
          align-items: center;
          gap: 10px;
      }

      .chatbot-logo-img {
          width: 129px;
          height: 30px;
      }

      .chatbot-logo-img-small {
          width: 96px;
          height: 18px;
      }

      .chatbot-dot {
          width: 5px;
          height: 5px;
          background-color: white;
          border-radius: 2.5px;
      }

      .chatbot-header-content {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 20px;
      }

      .chatbot-title {
          font-weight: 700;
          color: white;
          font-size: 26px;
          text-align: center;
          line-height: 1.2;
      }

      .subchatbot-title {
          color: white;
          font-weight: 500;
          font-size: 22px;
          text-align: center;
      }

      .chatbot-button-container {
          display: flex;
          align-items: start;
          gap: 15px;
      }

      .chatbot-button {
          height: 45px;
          padding: 0 30px;
          border-radius: 25px;
          font-weight: 700;
          color: white;
          cursor: pointer;
          border: none;
      }

      .chatbot-button-outline {
          background-color: transparent;
          border: 1px solid white;
      }

      .chatbot-button-primary {
          background-color: #0d5cdf;
      }

      .chatbot-card-section {
          display: flex;
          flex-direction: column;
          width: 100%;
          align-items: center;
          gap: 20px;
          margin-top: 50px;
      }

      .chatbot-card-section-small {
          padding-top: 35px;
          margin-top: 0;
      }

      .chatbot-card {
          width: 320px;
          height: 635px;
          border-radius: 20px;
          box-shadow: 1px 2px 6px rgba(0, 0, 0, 0.1);
          background-color: white;
          overflow: hidden;
          position: relative;
      }

      .slider-container {
          width: 100%;
          height: 100%;
          position: relative;
          overflow: hidden;
      }

      .slider-wrapper {
          display: flex;
          width: 300%;
          height: 100%;
          transition: transform 0.5s ease;
      }

      .slide {
          flex: 0 0 33.333%;
          height: 100%;
          background-position: 50% 50%;
          background-size: cover;
      }

      .chatbot-indicator {
          display: flex;
          width: 70px;
          align-items: center;
          justify-content: space-between;
          margin-top: 15px;
      }

      .chatbot-indicator-dot {
          width: 10px;
          height: 10px;
          border-radius: 5px;
          cursor: pointer;
          transition: background-color 0.3s;
      }

      .chatbot-indicator-dot-active {
          background-color: white;
      }

      .chatbot-indicator-dot-inactive {
          background-color: #0d5cdf;
      }

      .chatbot-recommend-container {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          gap: 15px;
          padding-top: 20px;
          padding-left: 63px;
          padding-right: 63px;
          border-radius: 15px;
      }

      .chatbot-recommend-title {
          font-weight: 600;
          color: white;
          font-size: 22px;
          text-align: center;
          line-height: 30px;
      }

      .chatbot-recommend-list {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 30px;
          width: 100%;
      }

      .chatbot-recommend-item {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 19px;
          width: 100%;
      }

      .chatbot-recommend-icon {
          width: auto;
          height: auto;
      }

      .chatbot-recommend-item-content {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 5px;
          width: 100%;
      }

      .chatbot-recommend-item-content h3 {
          font-weight: 500;
          color: white;
          font-size: 18px;
          text-align: center;
      }

      .chatbot-recommend-item-content p {
          font-weight: 400;
          color: #c2c2c2;
          font-size: 15px;
          text-align: center;
          white-space: nowrap;
      }

      /* insight */
      .insight-section {
        position: relative;
        width: 100%;
        padding: 3rem 0;
        background: linear-gradient(0deg, rgba(255,255,255,0.6) 0%, rgba(255,255,255,0.6) 100%), url(../images/m/bg_insight.png) 50% 50% / cover;
      }
      .insight-header-section {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 15px;
        padding: 0 1.5rem;
        margin-bottom: 4rem;
      }
      .insight-logo-container {
        display: flex;
        align-items: end;
        justify-content: center;
        gap: 0.625rem;
      }
      .insight-logo-group {
        display: flex;
        align-items: center;
        gap: 0.625rem;
      }
      .insight-logo-dot {
        width: 5px;
        height: 5px;
        background-color: black;
        border-radius: 2.5px;
      }
      .insight-section-title {
        font-weight: 800;
        color: black;
        font-size: 22px;
        text-align: center;
        line-height: 1.2;
      }
      .insight-button-group {
        display: flex;
        align-items: start;
        gap: 15px;
        margin-top: 0.5rem;
      }
      .insight-button {
        height: 45px;
        padding: 0 30px;
        border-radius: 25px;
        font-weight: bold;
        font-size: 14px;
        cursor: pointer;
      }
      .insight-button-outline {
        background-color: transparent;
        border: 1px solid #0d5cdf;
        color: #0d5cdf;
      }
      .insight-button-filled {
        background-color: #0d5cdf;
        border: none;
        color: white;
      }
      .ai-qurator-section {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 25px;
        padding: 0 1rem;
        margin-bottom: 4rem;
      }
      .ai-qurator-title {
        font-weight: 600;
        color: black;
        font-size: 20px;
        text-align: center;
        line-height: 1.3;
      }
      .insight-card {
        width: 20rem;
        height: 635px;
        border-radius: 20px;
        box-shadow: 1px 2px 6px rgba(0, 0, 0, 0.1);
        overflow: hidden;
        position: relative;
      }
      .insight-card-content {
        display: flex;
        width: 300%;
        height: 100%;
        transition: transform 0.5s ease;
      }
      .insight-card-slide {
          width: 33.333%;
          height: 100%;
          flex-shrink: 0;
          overflow: hidden;
      }
      .insight-card-slide img {
          width: 100%;
          height: 100%;
          object-fit: cover;
      }
      .insight-tabs {
        display: flex;
        width: auto;
      }
      .insight-tabs-list {
        display: flex;
        background-color: transparent;
        padding: 0;
        gap: 5px;
      }
      .insight-tab {
        height: 40px;
        padding: 0 20px;
        border-radius: 20px;
        font-weight: normal;
        font-size: 12px;
        background-color: transparent;
        border: none;
        cursor: pointer;
        transition: all 0.3s ease;
      }
      .insight-tab.active {
        background-color: #4b5563;
        color: white;
      }
      .insight-recommended-insight-companies-section {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
        padding: 0 1rem;
      }
      .recommend-title {
        font-weight: 800;
        color: black;
        font-size: 22px;
        text-align: center;
        line-height: 30px;
      }
      .insight-companies-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
        width: 100%;
        margin-top: 1rem;
      }
      .insight-company-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 21px;
        width: 100%;
      }
      .insight-company-description {
        font-weight: 500;
        color: black;
        font-size: 15px;
        text-align: center;
        line-height: 20px;
        white-space: pre-line;
      }

      /* aiqurator */
      .aiqurator-section {
        width: 100%;
        padding: 2rem 0;
        display: flex;
        justify-content: center;
      }

      .aiqurator-container {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 30px;
        max-width: 393px;
      }

      .aiqurator-header {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 15px;
      }

      .aiqurator-logo {
        width: 173px;
        height: 40px;
      }

      .aiqurator-badge {
        padding: 10px 25px;
        border-radius: 25px;
        border: 1px solid #3478f6;
        background-color: transparent;
        font-weight: 500;
        font-size: 18px;
        text-align: center;
        color: #3478f6;
      }

      .aiqurator-title {
        font-weight: 700;
        font-size: 22px;
        text-align: center;
        color: #000;
      }

      .aiqurator-description {
        font-size: 15px;
        font-weight: 400;
        text-align: center;
        color: #888;
        line-height: 1.4;
      }

      .aiqurator-steps {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
        width: 100%;
      }

      .aiqurator-card {
        width: 190px;
        height: 190px;
        border-radius: 250px;
        border: 1px solid #000;
        background-color: #fff;
        box-shadow: 1px 4px 8px #0000001a;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 1rem;
        text-align: center;
        gap: 10px;
      }

      .aiqurator-card h3 {
        font-weight: 600;
        font-size: 20px;
        color: #000;
      }

      .aiqurator-card p {
        font-size: 14px;
        color: #666;
        line-height: 1.5;
      }

      .aiqurator-separator {
        width: 5px;
        height: 5px;
        background-color: #000;
        border-radius: 2.5px;
      }

      .aiqurator-layer {
        width: 15.08px;
        height: 15px;
      }

      .aiqurator-card-highlighted {
        width: 190px;
        height: 190px;
        border-radius: 250px;
        color: #fff;
        background-color: #3478f6;
        border: 1px solid #3478f6;
        box-shadow: 1px 4px 8px #0000001a;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 1rem;
        text-align: center;
        gap: 10px;
      }
      .aiqurator-card-highlighted h3 {
        color: #fff;
      }
      .aiqurator-card-highlighted p {
        color: #fff;
        font-size: 14px;
        line-height: 1.5;
      }

      /* 가격 */
      .pricing-main {
        display: flex;
        flex-direction: column;
        width: 100%;
        min-height: 100vh;
        padding: 60px 0;
    }

    .pricing-banner {
        width: 100%;
        position: relative;
        text-align: center;
    }

    .pricing-banner img {
        width: 320px;
    }

    .pricing-intro-section {
        width: 100%;
        padding: 20px;
    }

    .pricing-intro-content {
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .pricing-intro-title {
        font-weight: bold;
        font-size: 23px;
        line-height: 1.2;
        color: black;
    }

    .pricing-intro-text {
        color: #6B7280;
        font-size: 16px;
        line-height: normal;
    }

    .pricing-consult-button {
        width: 220px;
        height: 50px;
        background-color: #306FDB;
        border: none;
        border-radius: 30px;
        color: white;
        font-weight: 600;
        font-size: 16px;
        cursor: pointer;
        transition: background-color 0.2s;
    }

    .pricing-consult-button:hover {
        background-color: rgba(48, 111, 219, 0.9);
    }

    .pricing-section {
        width: 100%;
        position: relative;
        overflow: hidden;
    }

    .pricing-container {
        display: flex;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scroll-behavior: smooth;
        cursor: grab; 
        user-select: none;
    }

    .pricing-container:active {
        cursor: grabbing; 
    }

    .pricing-labels {
        min-width: 120px;
        width: 120px;
        flex-shrink: 0; 
        border-right: 1px solid #e5e7eb;
        background-color: white;
        position: sticky;
        left: 0;
        z-index: 10;
    }

    .pricing-label-cell {
        height: 60px;
        padding: 10px;
        border-bottom: 1px solid #e5e7eb;
        display: flex;
        align-items: center;
        justify-content: center;
        text-align: center;
        font-weight: 600;
        font-size: 13px;
    }

    .pricing-label-cell:first-child {
        border-bottom: 1px solid #3478F6;
        font-size: 15px;
    }

    .pricing-tall {
        height: 80px;
    }

    .pricing-extra-pricing-tall {
        height: 130px;
    }

    .pricing-table-container {
        flex-grow: 1;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        min-width: 0;
    }

    .pricing-table-container::-webkit-scrollbar {
    height: 8px;
    }

    .pricing-table-container::-webkit-scrollbar-track {
    background: #fff;
    border-radius: 4px;
    }

    .pricing-table-container::-webkit-scrollbar-thumb {
    background: #306FDB;
    border-radius: 4px;
    }

    .pricing-table-container::-webkit-scrollbar-thumb:hover {
    background: #3478F6;
    }

    .pricing-table-container {
    scrollbar-width: thin;
    scrollbar-color: #306FDB #fff;
    }

    .pricing-table {
        min-width: 660px;
        border-collapse: collapse;
    }

    .pricing-table th {
        width: 220px;
        height: 60px;
        border-bottom: 1px solid #3478F6;
        font-size: 20px;
        font-weight: 700;
        text-align: center;
    }

    .pricing-table td {
        height: 60px;
        border-bottom: 1px solid #e5e7eb;
        text-align: center;
        vertical-align: middle;
        padding: 10px;
    }

    .pricing-price {
        color: #3478F6;
        font-weight: 700;
        font-size: 20px;
    }

    .pricing-unit {
        color: #3478F6;
        font-weight: 600;
        font-size: 15px;
    }

    .pricing-target-row {
        height: 80px;
        color: #306FDB;
        font-weight: 600;
    }

    .pricing-features-row {
        height: 130px;
        line-height: 22px;
    }

    .pricing-negotiable {
        font-size: 14px;
    }

    .pricing-scroll-indicator {
        display: none;
        position: absolute;
        right: 10px;
        bottom: 10px;
        background-color: rgba(0,0,0,0.3);
        color: white;
        padding: 5px 10px;
        border-radius: 20px;
        font-size: 12px;
    }
    
    @media (min-width: 768px) {
        .pricing-main {
            padding: 20px;
        }
        
        .pricing-container {
            margin-top: 20px;
        }
    }

      /* functionality */
      .functionality-section {
        width: 100%;
        padding: 4rem 0;
        background: linear-gradient(
            0deg,
            rgba(0, 0, 0, 0.2) 0%,
            rgba(0, 0, 0, 0.2) 100%
          ),
          url('../images/m/bg_function.png') center center / cover no-repeat;
      }

      .functionality-container {
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: center;
        padding: 0 40px;
      }

      .functionality-title {
        font-size: 20px;
        font-weight: 600;
        color: #ffffff;
        text-align: center;
        line-height: 1.5;
      }

      .functionality-cards {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
      }

      .function-card {
        background-color: #ffffff;
        border-radius: 20px;
        box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.25);
        padding: 30px;
      }

      .function-card-content {
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
      }

      .function-card-icon {
        width: 31px;
        height: 30px;
      }

      .function-card-text h3 {
        font-size: 18px;
        font-weight: 600;
        color: #000000;
        line-height: 1.5;
      }

      .function-card-text p {
        font-size: 14px;
        font-weight: 400;
        color: #888888;
        line-height: 1.6;
      }

      /* free-trial */
      .free-trial-section {
        position: relative;
        width: 100%;
        height: 380px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(
            0deg,
            rgba(0, 0, 0, 0.5) 0%,
            rgba(0, 0, 0, 0.5) 100%
          ),
          url('../images/m/bg_free_trial.png') center center / cover no-repeat;
      }

      .free-trial-card {
        background: transparent;
        border: none;
        box-shadow: none;
      }

      .free-trial-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 23px;
        padding: 0;
      }

      .text-group {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
      }

      .text-group h2 {
        font-weight: bold;
        font-size: 26px;
        color: white;
        text-align: center;
        line-height: normal;
        margin-top: -1px;
      }

      .text-group p {
        font-weight: 300;
        font-size: 16px;
        color: #E4E4E7;
        text-align: center;
        line-height: normal;
      }

      .free-trial-button {
        width: 280px;
        height: 60px;
        padding: 0 35px;
        background-color: #3478f6; 
        color: white;
        font-size: 18px;
        font-weight: 600;
        border: none;
        border-radius: 35px;
        cursor: pointer;
        transition: background-color 0.3s;
      }

      .free-trial-button:hover {
        background-color: #fff;
        color: #000;
      }

      /* footer */
      .footer-section {
        width: 100%;
        background-color: #27272A; 
        padding: 3.5rem 1.75rem; 
      }

      .footer-container {
        max-width: 340px;
        margin: 0 auto;
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: flex-start;
      }

      .footer-logo {
        width: 137px;
        height: 15px;
      }

      .footer-info {
        display: flex;
        flex-direction: column;
        gap: 20px;
        width: 100%;
      }

      .company-info {
        display: flex;
        flex-direction: column;
        gap: 10px;
        color: #d1d5db; 
        font-size: 12px;
        white-space: nowrap;
      }

      .footer-note {
        color: #9ca3af; 
        font-size: 12px;
        line-height: normal;
      }

      .footer-copy {
        width: 100%;
        color: #9ca3af; 
        font-size: 12px;
      }

      .copy-bold {
        font-weight: 600;
        color: #d4d4d8; /* Tailwind zinc-400 */
      }

      /* 팝업 */
      .popup-section {
        width: 100%;
        margin: 0 auto;
        padding: 80px 20px;
        display: block;
      }

      .popup-section .popup-container {
        width: 100%;
        background-color: transparent;
        height: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 40px;
        padding: 0;
        position: relative;
        top: 0;
        left: 0;
        z-index: 1;
      }

      .popup-form-container {
        width: 100%;
        background-color: rgba(0, 0, 0, 0.6);
        height: 100vh;
        display: none;
        justify-content: center;
        align-items: center;
        padding: 0 20px;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1000;
      }

      .popup-header {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        max-width: 350px;
        width: 100%;
      }

      .popup-header-icon {
        width: 50px;
        height: 49px;
      }

      .popup-header-text h2 {
        font-size: 22px;
        font-weight: 600;
        text-align: center;
        color: #000;
        margin-bottom: 10px;
      }

      .popup-header-text p {
        font-size: 14px;
        font-weight: 500;
        text-align: center;
        color: #888;
        line-height: 1.3;
      }

      .popup-header-button-wrap {
        display: flex;
        flex-direction: column;
        gap: 10px;
        width: 100%;
      }

      .popup-button {
        width: 100%;
        height: 50px;
        background-color: #306FDB; 
        color: white;
        font-size: 15px;
        font-weight: 600;
        border-radius: 10px;
        border: none;
        cursor: pointer;
      }

      .popup-button:hover {
        background-color: #000;
        color: #fff;
      }

      .popup-sub-text {
        text-align: center;
        font-size: 14px;
        color: #5985D1;
        font-weight: 500;
      }

      .popup-process {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
      }

      .popup-process h3 {
        font-size: 18px;
        font-weight: 600;
        text-align: center;
        color: #000;
        margin-bottom: 20px;
      }

      .popup-process-steps {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
      }

      .popup-step-card {
        width: 210px;
        height: 180px;
        background: white;
        border-radius: 20px;
        box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.08);
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 5px;
        padding: 1rem;
        text-align: center;
      }

      .popup-step-card p {
        font-size: 15px;
        font-weight: 500;
        color: #666;
        line-height: 1.4;
      }

      .popup-step-card .mt {
        margin-top: 15px;
      }

      .popup-arrow {
        width: 20.73px;
        height: 26.19px;
      }

      .popup01-form-wrapper {
        width: 100%;
        max-width: 500px;
        background-color: white;
        border-radius: 20px;
        padding: 20px;
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: center;
      }

      .popup01-title {
        font-size: 18px;
        font-weight: 600;
        color: black;
        text-align: center;
        margin-top: -1px;
      }

      .popup01-form-content {
        display: flex;
        flex-direction: column;
        gap: 15px;
        width: 100%;
      }

      .popup01-form-group {
        display: flex;
        flex-direction: column;
        gap: 8px;
      }

      .popup01-form-group-privacy {
        display: flex;
        flex-direction: row;
        gap: 8px;
        align-items: center;
        font-size: 13px;
      }

      .popup01-form-group label {
        font-weight: 500;
        font-size: 13px;
        color: #000;
      }

      input[type="text"],
      input[type="email"],
      textarea,
      select {
        border: 1px solid #d4d4d4;
        border-radius: 10px;
        padding: 10px 15px;
        font-size: 14px;
      }

      textarea {
        height: 110px;
        resize: none;
      }

      .popup01-phone-input {
        display: flex;
        gap: 9px;
      }

      .popup01-phone-input select,
      .popup01-phone-input input {
        flex: 1;
      }

      .popup01-phone-input input {
        flex: 1;
        width: 100%;
      }

      /* select는 비율을 좀 더 작게 */
      .popup01-phone-input select {
        flex: 0.4;
        min-width: 60px;
        height: 45px;
        border: 1px solid #d4d4d4;
        border-radius: 10px;
        padding: 0 10px;
        font-size: 14px;
        appearance: none;
        background-color: #fff;
        background-image: url("../images/ico_select_lind.svg");
        background-repeat: no-repeat;
        background-position: right 12px center;
        background-size: 14px 14px;
        cursor: pointer;
      }

      input::placeholder,
      textarea::placeholder {
      color: #D4D4D8;
      }

      input[type="text"]:focus,
      input[type="email"]:focus,
      textarea:focus,
      select:focus,
      input[type="text"]:not(:placeholder-shown),
      input[type="email"]:not(:placeholder-shown),
      textarea:not(:placeholder-shown) {
        outline: none;
        border: 1px solid #000;
      }

      .popup01-privacy {
        display: flex;
        align-items: flex-start;
        gap: 5px;
        flex-direction: row;
      }

      .popup01-underline {
        text-decoration: underline;
        font-weight: 600;
        color: black;
      }

      .gray {
        color: #737373;
      }

      .button-group {
        display: flex;
        gap: 10px;
        justify-content: center;
      }

      button {
        height: 45px;
        padding: 0 35px;
        border-radius: 25px;
        font-size: 13px;
        font-weight: 500;
        cursor: pointer;
        font-family: 'Inter', sans-serif;
      }

      .popup01-cancel {
        background-color: white;
        border: 1px solid black;
        color: black;
      }

      .popup01-submit {
        background-color: black;
        border: none;
        color: white;
      }

      /* 개인정보 처리 방침 */
      .privacy-popup-container {
        width: 100%;
        background-color: rgba(0, 0, 0, 0.6);
        height: 100vh;
        display: none;
        justify-content: center;
        align-items: center;
        padding: 0 20px;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 1001;
      }

      .popup02-form-wrapper {
        width: 100%;
        background-color: white;
        border-radius: 20px;
        padding: 20px;
        display: flex;
        flex-direction: column;
        gap: 20px;
        align-items: center;
      }

      .popup02-card-content {
        width: 100%;
        display: flex;
        flex-direction: column;
        gap: 10px;
      }

      .popup02-card-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
      }

      .popup02-title {
        font-size: 22px;
        font-weight: 600;
        color: black;
        letter-spacing: -0.4px;
      }

      .popup02-close-button {
        width: 30px;
        height: 30px;
        background-color: gray;
        border: none;
        border-radius: 20px;
        padding: 10px;
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
      }

      .popup02-x-icon {
        color: white;
        font-size: 20px;
        display: inline-block;
      }

      .popup02-policy-box {
        display: flex;
        flex-direction: column;
        width: 100%;
        gap: 15px;
        padding: 15px;
        background-color: #f9f9f9;
        border-radius: 10px;
        height: 560px;
        overflow-y: auto;
      }
      /* 스크롤바 전체 영역 */
      .popup02-policy-box::-webkit-scrollbar {
        width: 6px;
      }
      /* 스크롤바 트랙 (배경) */
      .popup02-policy-box::-webkit-scrollbar-track {
        background: transparent;
        border-radius: 10px;
      }
      /* 스크롤바 핸들 (움직이는 부분) */
      .popup02-policy-box::-webkit-scrollbar-thumb {
        background-color: #d1d5db; /* 연한 회색 */
        border-radius: 10px;
      }
      /* 마우스 hover 시 스크롤바 핸들 색상 변경 */
      .popup02-policy-box::-webkit-scrollbar-thumb:hover {
        background-color: #9ca3af;
      }

      .popup02-intro {
        color: #4b5563;
        font-size: 13.5px;
      }

      .popup02-section {
        display: flex;
        flex-direction: column;
        gap: 5px;
        width: 100%;
      }

      .popup02-section-title {
        font-weight: 500;
        color: #4b5563;
        font-size: 13.5px;
        margin-top: -1px;
      }

      .popup02-section p {
        color: #9ca3af;
        font-size: 12.5px;
        margin: 0;
        line-height: 1.4;
      }

      .popup-container {
        position: fixed;
        inset: 0;
        background-color: rgba(0, 0, 0, 0.6); 
        display: none; /* 초기 상태를 none으로 설정 */
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        padding: 20px;
      }

      .popup03-card {
        background-color: white;
        border-radius: 20px;
        padding: 24px;
        width: 100%;
        box-sizing: border-box;
      }

      .popup03-content {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
      }

      .popup03-title {
        font-size: 22px;
        font-weight: 600;
        color: black;
        text-align: center;
        letter-spacing: -0.4px;
        line-height: normal;
      }

      .popup03-message {
        width: 100%;
        height: 130px;
        background-color: #f5f5f5; 
        border-radius: 15px;
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 16px;
        box-sizing: border-box;
      }

      .popup03-message p {
        font-size: 16px;
        font-weight: 400;
        color: #4b5563; 
        text-align: center;
        letter-spacing: -0.4px;
        line-height: 22px;
      }

      .popup03-close-button {
        height: 45px;
        padding: 0 35px;
        border-radius: 25px;
        border: 1px solid black;
        background-color: white;
        color: black;
        font-size: 14px;
        font-weight: 500;
        cursor: pointer;
      }

      /* 완료 팝업 */
      .completion-popup-container {
        position: fixed;
        inset: 0;
        background-color: rgba(0, 0, 0, 0.6); 
        display: none;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%;
        padding: 20px;
        z-index: 1002;
      }