   @keyframes forwardRotate {
      from {
        transform: rotate(0deg), translate(-50% -50%);
      }

      to {
        transform: rotate(360deg);
      }
    }

    @keyframes reverseRotate {
      from {
        transform: rotate(-0deg);
      }

      to {
        transform: rotate(-360deg);
      }
    }

    @keyframes fadeInUp {
      from {
        opacity: 0;
        transform: translate3d(0, 30%, 0);
      }

      to {
        opacity: 1;
        transform: translateZ(0);
      }
    }


    @keyframes fadeInMild {
      from {
        opacity: 0.5;
      }

      to {
        opacity: 1;
      }
    }

    @font-face {
      font-family: 'KIMM_Bold';
      src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/noonfonts_2212@1.0/KIMM_Bold.woff2') format('woff2');
      font-weight: 700;
      font-style: normal;
    }

    /*

    * {
      padding: 0;
      margin: 0;
      list-style: none;
      box-sizing: border-box;
      text-decoration: none;
      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;
    }
    */

    html{
      width: 100vw;
      overflow-x: hidden!important;
    }

    #IBMxRedhat_pc {
      width: 100vw;
      overflow-x: hidden;

      h2 {
        font-size: 70px;
        text-align: center;
        font-weight: 700;
        letter-spacing: -1px;
      }

      h3 {
        font-size: 50px;
        font-weight: 500;
      }

      h4 {
        font-size: 30px;
        font-weight: 400;
        line-height: 32px;
      }

      h5 {
        font-size: 24px;
        font-weight: 200;
        color: #333;
        line-height: 32px;
      }

      p,
      h2,
      h3,
      h4,
      h5,
      td {
        letter-spacing: -0.4px;
        color: #fff;
      }

      img {
        display: block;
      }

      .inner {
        width: 1200px;
        margin: 0 auto;
      }

      /*
      header {
        position: fixed;
        background: #fff;
        width: 100vw;
        z-index: 99;
        border-bottom:1px solid #E0E0E0;
        nav {
          width: 1200px;
          height: 130px;
          margin: 0 auto;
          display: flex;
          justify-content: space-between;
          align-items: center;
          
          ul {
            display: flex;
            gap: 50px;
          }

          li {
            text-align: center;
            align-content: center;
            font-size: 24px;

            button {
              border: none;
              background: none;
              font-size: 24px;
              cursor: pointer;
            }
          }
        }
      }
        */

      main {
        background: #000;
        text-align: center;

        section {
          margin: 80px 0;
        }

        img {
          display: inline;
          vertical-align: top;
        }

        .mainBg {
          background: #000;
          width: 100vw;
          height: 15400px;
          position: absolute;
          z-index: -2;

          .purDot {
            background: url(/home/images/main/ibm/new/info_pdot.png) no-repeat center;
            height: 500px;
            width: 500px;
            position: absolute;
            z-index: -1;
            top: 650px;
            left: 350px;
            animation: fadeInMild 1s alternate infinite ease-in-out;
          }

          .blueDot {
            background: url(/home/images/main/ibm/new/ai_bdot.png) no-repeat center;
            width: 1000px;
            height: 1000px;
            animation: fadeInMild 1s alternate infinite ease-in-out;
            position: absolute;
            z-index: -1;
            top: 2600px;
            right: 0;
          }

          .pinkDot {
            background: url(/home/images/main/ibm/new/ai_pdot.png) no-repeat center;
            width: 820px;
            height: 780px;
            animation: fadeInMild 1s alternate infinite ease-in-out;
            position: absolute;
            z-index: -1;
            top: 6400px;
            left: 0;
          }

          .orangeDot {
            background: url(/home/images/main/ibm/new/photo_odot.png) no-repeat center;
            width: 820px;
            height: 780px;
            animation: fadeInMild 1s alternate infinite ease-in-out;
            position: absolute;
            z-index: -1;
            bottom: 3400px;
            right: 0;
          }
        }


        .info {
          padding-top: 30px;

          .infoTitle {
            width: 100vw;
            background: url(/home/images/main/ibm/new/info_bg.jpg) no-repeat center;
            padding: 100px 0 80px 0;

            p,
            span,
            h2,
            h3,
            h4 {
              font-family: 'KIMM_Bold';
              text-align: left;
            }

            h2 {
              letter-spacing: -2.8px;
              line-height: 80px;

              span {
                color: #1E9EFF;
              }
            }

            h4 {
              padding-top: 20px;
            }

            .sup {
              color: #AFAFAF;
              font-size: 16px;
              padding-bottom: 10px;
            }

            .btnCont {
              background: #E6E6E6;
              display: flex;
              align-items: center;
              border-radius: 15px;
              padding: 10.5px 25px;
              margin: 15px 0 0 0;
              width: 520px;
              cursor: pointer;

              span {
                color: #000;
                font-size: 44px;
                transition: 0.2s ease-in;

              }

              p {
                color: #000;
                font-size: 24px;
                line-height: 25px;
              }

              .zero {
                flex: 0.4;
                transition: 0.6s ease-in-out;
                padding-left: 3px;
              }

              .apply {
                flex: 1;
              }

              .radio {
                width: 120px;
                height: 28px;
                background-color: #dbdbdb;
                border-radius: 50px;
                box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.4) inset;
                margin-left: 10px;
                padding: 10px;

                .radioBg {
                  background: #989898;
                  width: 100px;
                  height: 10px;
                  border-radius: 50px;
                  position: relative;
                  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.7) inset;
                  transition: 0.6s ease-in-out;

                  .radioBtn {
                    background: url(/home/images/main/ibm/new/info_btn.png) no-repeat center;
                    width: 61px;
                    height: 21px;
                    position: absolute;
                    top: -6.5px;
                    left: -2px;
                    box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
                    border-radius: 50px;
                    transition: 0.6s ease-in-out;
                  }
                }
              }
            }

            .btnCont:hover {
              .radioBtn {
                transform: translateX(44px);
              }

              span,
              .zero {
                color: #016DF9;
              }

              .radioBg {
                background: #016DF9;
              }
            }
          }

          .infoCont {
            text-align: left;
            display: flex;
            position: relative;
            width: 100vw;
            padding: 100px 0;

            .inner {
              display: flex;
              justify-content: center;
              align-items: center;
              gap: 200px;
            }

            .title {
              padding-left: 100px;

              p {
                font-size: 18px;
                font-weight: 100;
                padding-top: 30px;
                width: 260px;
                line-height: 24px;
              }

              span {
                font-weight: 400;
              }
            }

            .cont {
              width: 640px;


              .ani {
                animation: fadeInUp 1.8s;
              }

              ul {
                margin: 0 auto;

                li {
                  display: flex;
                  align-items: center;
                  gap: 20px;
                  padding: 0 0 30px 0;
                  text-align: left;

                  h4 {
                    padding-left: 20px;
                    line-height: 40px;
                    font-weight: 500;
                  }

                  .time {
                    font-size: 24px;
                    color: #fff;
                  }
                }

                li:last-child {
                  padding-bottom: 0;
                }

                li:first-child h5 {
                  padding-top: 30px;
                }
              }

              span {
                color: #C5C5C5;
              }

              .icon01 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/new/init_icon01.png) no-repeat center;
              }

              .icon02 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/new/init_icon02.png) no-repeat center;
              }

              .icon03 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/new/init_icon03.png) no-repeat center;
              }

              .icon04 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/new/init_icon04.png) no-repeat center;
              }

              .icon05 {
                width: 48px;
                height: 56px;
                background: url(/home/images/main/ibm/new/init_icon05.png) no-repeat center;
              }
            }

          }
       .infoBanner {
          background: #1B1B1B;
          padding: 40px 0;
          
          ul {
            display: flex;
            width: 1080px;
            justify-content: center;
            align-items: flex-start;
            margin: 0 auto;
            gap: 40px;
            text-align: left;
            position: relative;
            li {
              display: flex; gap: 40px; 
              & + li {margin-left: 100px;}
              .icon {width: 115px;
                img {width: 100%;image-rendering: crisp-edges;}
              }
              .txt {padding-top: 20px;
                .main-txt {
                  .top {
                    span {font-size: 18px;font-weight: 300;
                      &.t1 {color: #46ACFF;font-weight: 500;}
                      &.line {margin-left: 10px;text-decoration: line-through;}
                      &.low-level {color: #666;}
                    }
                  }
                  strong {margin-top: 6px;display: block;font-size: 32px;font-weight: 600;color: #fff;letter-spacing: -0.01em;}
                }
                .sub-txt {
                  margin-top: 8px;
                  p {font-size: 14px;font-weight: 500;letter-spacing: -0.01em;line-height: 1.4;color: #d8d8d8;white-space: nowrap;}
                }
              }
            }
          }
	    }



        }

        /* //info */


        .ai {
          position: relative;

          span {
            color: #1E9EFF;
            font-weight: 600;
          }

          .aiHead {
            width: 100vw;
            margin: 100px auto;

            p {
              font-size: 18px;
              font-weight: 200;
              padding-top: 20px;

              span {
                color: #1E9EFF;
                font-weight: 600;
              }
            }

            .aiSlide {
              display: flex;
              justify-content: center;
              margin: 50px 0 100px 0;

              li {
                margin-right: 25px;

                p {
                  font-size: 24px;
                  padding-top: 50px;
                }
              }
            }
          }

          /* //aiHead */


          .aiCont {
            position: relative;
            width: 100vw;
            margin: 100px auto;

            h4 {
              padding-bottom: 20px;
              font-weight: 200;
            }

            p {
              font-size: 24px;
              font-weight: 200;
            }

            .source {
              font-size: 18px;
            }

            .aiTable {
              margin: 100px 0;

              h3 {
                padding-bottom: 50px;

                span {
                  color: #1E9EFF;
                }
              }

              .table {
                width: 910px;
                margin: 0 auto;

                .unit {
                  text-align: right;
                  padding-right: 10px;
                }

                p {
                  font-size: 18px;
                }

                img {
                  padding: 10px 0 40px 0;
                }
              }
            }

            .aiRank {
              display: flex;
              justify-content: center;
              gap: 80px;
              margin: 100px 0;
            }

            .aiGraph {
              margin: 100px 0;

              .sup {
                font-size: 18px;
                padding-bottom: 15px;
              }

              h3 {
                padding-bottom: 80px;
              }

              h4 {
                font-weight: 200;
                padding: 50px 0;
              }

              .sub {
                padding-bottom: 80px;
              }

              .now {
                padding-bottom: 20px;
              }
            }
          }
        }

        /* // ai */


        .curriHead {
          background: #000;
          position: relative;
          margin: 100px auto;

          h4 {
            color: #227AD7;
            padding: 15px 0 50px 0;
          }


          .curriTab {
            .tabTitle {
              width: 1200px;
              display: flex;
              color: #fff;
              margin: 0 auto;
              font-size: 20px;

              p {
                padding: 30px;
                border: 1px solid #000;

                &:nth-of-type(1) {
                  width: 400px;
                  background: #1F2B3C;
                }

                &:nth-of-type(2) {
                  width: 800px;
                  background: #1F2B3C;
                }
              }
            }

            .tabWrap {
              display: flex;

              .tabMenu {
                width: 400px;

                button {
                  width: 400px;
                  height: 80px;
                  cursor: pointer;
                  border: 1px solid #000;
                  background-color: #55657B;
                  color: #fff;
                  text-align: left;
                  padding-left: 20px;
                  font-size: 20px;
                  transition: 0.6s;

                  &:hover {
                    background-color: #536878;
                  }
                }

                button.active {
                  background-color: #CA0202;
                }
              }

              .tabCont {
                text-align: left;
                font-weight: 300;

                p {
                  color: #666;
                }

                span {
                  color: #F91818;
                  font-weight: 600;
                  line-height: 25px;
                }

                div:not(.table) {
                  display: none;
                  width: 800px;
                  height: 960px;
                  background-color: #fff;
                  border: 1px solid #011B5C;
                  font-size: 18px;
                  padding: 40px;
                  line-height: 24px;
                }

                div.table {
                  display: flex;
                  padding-top: 40px;
                  line-height: 24px;

                  p:nth-of-type(1) {
                    border: 1px solid #C8C8C8;
                    display: inline-block;
                    background: #FFF2F2;
                    align-content: center;
                    text-align: center;
                    width: 200px;
                  }

                  p:nth-of-type(2) {
                    border: 1px solid #C8C8C8;
                    border-left: none;
                    display: inline-block;
                    width: 520px;
                    padding: 25px 0 25px 20px;
                  }
                }

                div.table:nth-of-type(2),
                div.table:nth-of-type(3) {
                  padding: 0;

                  p {
                    border-top: none;
                  }
                }

                div.narrow {
                  padding: 20px 0 15px 0;

                  p:nth-of-type(1) {
                    width: 160px;
                  }

                  p:nth-of-type(2) {
                    width: 540px;
                    padding: 15px 0 15px 15px;
                    font-size: 17px;
                  }
                }

                div.active {
                  display: block;
                }
              }

              /* //tabCont */
            }
          }
        }

        /* //curriHead */


        .curriTail {
          background: #000;
          margin: 100px 0;
          position: relative;
          text-align: center;
          position: relative;

          img {
            margin: 0 auto;
          }

          .sup {
            font-size: 18px;
            font-weight: 200;
            padding-bottom: 15px;
          }

          h3 {
            padding-bottom: 50px;
          }

          .curriEdge {
            width: 480px;
            height: 480px;
            position: absolute;
            border-radius: 50%;
            margin: 70px 0;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);


            .edge_wrap {
              position: absolute;
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              border-radius: 50%;
            }

            .edge_box {
              position: absolute;
              top: -20.5%;
              left: -21%;
              width: 145%;
              height: 145%;
              animation: forwardRotate 30s linear infinite;
              line-height: 1rem;
              border-radius: 50%;

              div {
                width: 165px;
                height: 165px;
                font-size: 18px;
                color: #426190;
                animation: reverseRotate 30s linear infinite;
                border-radius: 50%;
                align-content: center;

                p {
                  letter-spacing: -0.5px;
                  color: #fff;
                  padding-top: 10px;
                  font-weight: 200;
                  letter-spacing: -0.7px;
                }
              }
            }

            .edge_box1 {

              div {
                position: relative;
                top: -8%;
                left: 56%;
              }
            }

            .edge_box2 {
              div {
                position: relative;
                top: 16.5%;
                left: 83%;
              }
            }

            .edge_box3 {
              div {
                position: relative;
                top: 55%;
                left: 85%;
              }
            }

            .edge_box4 {
              div {
                position: relative;
                top: 84%;
                left: 56%;
              }
            }

            .edge_box5 {
              div {
                position: relative;
                top: 84%;
                left: 19%;
              }
            }

            .edge_box6 {
              div {
                position: relative;
                top: 54.5%;
                left: -8%;
              }
            }

            .edge_box7 {
              div {
                position: relative;
                top: 17.5%;
                left: -8%;
              }
            }

            .edge_box8 {
              div {
                position: relative;
                top: -8%;
                left: 19%;
              }
            }
          }
        }

        /* //curriTail */


        .benefit {
          margin: 100px 0;

          .sup {
            font-size: 18px;
            font-weight: 200;
            padding-bottom: 15px;
          }

          h3 {
            padding-bottom: 50px;
          }

          h4 {
            line-height: 36px;
            font-weight: 200;
          }

          ul {
            width: 1200px;
            margin: 0 auto;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 65px 60px;
          }
        }

        /* //benefit */


        .photo {
          p {
            font-size: 18px;
            padding: 10px 0 50px 0;
            color: #999;

            span {
              font-weight: 700;
              color: #333;
            }
          }

          .photoCont {
            display: flex;
            flex-wrap: wrap;
            gap: 50px 40px;
          }
        }

        /* //photo */


        .step {
          h3 {
            padding-bottom: 50px;
          }

          p {
            font-size: 18px;
            font-weight: 200;
            background: #333;
            width: 950px;
            padding: 15px 0;
            border-radius: 10px;
            margin: 50px auto;
          }

          ul {
            display: flex;
            justify-content: center;
            gap: 50px;

            li {
              text-align: center;

              h4 {
                font-weight: 500;
                margin: 30px 0 0 0;
              }

              &:nth-child(4) {
                h4 {
                  color: #0BD800;
                }
              }
            }
          }
        }

        /* //step */


        .guide {

          h3 {
            padding-bottom: 20px;
          }

          p:not(li p) {
            &:nth-of-type(1) {
              font-size: 18px;
              color: #fff;
              padding-bottom: 50px;
            }
          }

          ul {
            text-align: left;
            display: flex;
            justify-content: center;
            gap: 100px;

            li {
              width: 310px;

              h5,
              p {
                display: inline-block;
              }

              p {
                color: #999;
                padding: 40px 0 0 15px;

                span {
                  font-weight: 600;
                  font-size: 24px;
                  color: #fff;
                  line-height: 45px;
                }
              }
            }
          }
        }

        /* //guide */


        .faq {
          background: #fff;
          margin: 100px 0;


          h3 {
            color: #333;
            font-weight: 700;
            padding: 100px 0 50px 0;
          }

          .faqAccordian {
            text-align: left;
          }


          details:nth-of-type(1) {
            border-top: 2px solid #a2a2a2;
          }

          details:nth-of-type(5) {
            border-bottom: 2px solid #a2a2a2;

            summary {
              border-bottom: none;
            }

            p.answer {
              border-top: 1px solid #E8ECEE;
            }
          }

          details[open] .question::after {
            transform: translate(0, -50%) rotate(180deg);
          }

          .question {
            background: #fff;
            font-size: 30px;
            font-weight: 600;
            padding: 30px 40px;
            border-top: 1px solid #E8ECEE;
            border-bottom: 2px solid #E8ECEE;

            p {
              color: #222;
              display: inline-block;
              margin-top: 2px;
            }
          }

          .question::before {
            content: '';
            display: block;
            width: 40px;
            height: 40px;
            background: url(/home/images/main/ibm/question.png) no-repeat center / cover;
            margin: 0 20px 0 0;
            float: left;
          }

          .question::after {
            content: '';
            display: block;
            width: 25px;
            height: 16px;
            background: url(/home/images/main/ibm/more_close.png) no-repeat center / cover;
            float: right;
            margin-top: 15px;
          }


          .answer {
            background: #F0FBFF;
            font-size: 18px;
            font-weight: 300;
            color: #444;
            padding: 30px 100px;
            line-height: 26px;
          }
        }
      }
      /* // main */


      .contact {
        .cont_logo {
            background: #f9f9f9;
            padding: 30px 0;
            
            img{
              margin: 0 auto;
            }
        }
      }
    }

    .supermodal-container .supermodal-title .supermodal-close{color:#fff !important;}



    /*남은일정 타이머 기능 */
    .timer{
        position: fixed;
        bottom: 20px;
        left: 50vw;
        transform: translateX(-50%);
        z-index: 99;

        .timerCont{
          width: 1200px;
          margin: 0 auto;
          background: #E41915;
          display: flex;
          justify-content: space-between;
          align-items: center;
          padding: 20px 60px;
          border-radius: 5px;

          p{
            color: #fff;
            font-size: 25px;
            font-weight: 600;
          }

          .day,.h,.m,.s{
              padding-left:10px;
          }
                    
          button{
            border: none;
            background-color: #fff;
            padding: 15px 30px;
            border-radius: 5px;
            font-size: 23px;
            font-weight: 600;
            cursor: pointer;
            color: #222;
          }          
        }
      }



    /* 추가 */
    /*
    .footerCont {
      display: flex;
      align-items: center;
      font-size: 12px;
      line-height: 18px;
      letter-spacing: -0.4px;
      width: 1200px;
      height: 120px;
      margin: 0 auto;
    }
      */

    /* 추가 */


/* 사용자가 준 기본값(그대로 적용) */
.footerCont{
  display: flex;
  align-items: center;
  font-size: 15px;
  line-height: 18px;
  letter-spacing: -0.4px;
  width: 1200px;
  height: 120px;
  margin: 0 auto;
  box-sizing: border-box;
}

/* 내부 그리드: label/value/divider x3 = 총 8컬럼 */
.footer-grid{
  width: 100%;
  display: grid;
  /* label 고정폭 / value 유연 / divider 좁게 */
  grid-template-columns: 90px 2fr 10px 90px 1.6fr 10px 80px 2fr; /* ✅ 이 라인 수정 */
  align-items: center;
  column-gap: 12px; /* 텍스트들 사이 간격 */
  row-gap: 6px;
  /* 텍스트 수직 중앙 정렬을 위해 높이 그대로 사용 */
}

/* 공통 스타일 */
.footer-grid .label {
  font-weight: 700;
  text-align: left;
  padding-left: 6px;
  color: #222;
}

.footer-grid .value {
  text-align: left;
  color: #333;
  padding-left: 6px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.footer-grid .divider {
  text-align: center;
  color: #999;
  font-weight: 400;
}


    .topBtn{
        border: none;
        width: 60px;
        height: 60px;
        background-color: rgba(92, 100, 114, 0.5);
        background-image: url(/home/images/main/top_btn.png?ver=3);
        border-radius: 50%;
        cursor: pointer;
        z-index: 50;
        position: fixed;
        left: 90vw;
        bottom: 9vh;
        display: none;
      }
      