@charset "UTF-8";
/*
@File: Sinmun Template Styles

* This file contains the styling for the actual template, this
is the file you need to edit to change the look of the
template.

This files table contents are outlined below>>>>>

*******************************************
*******************************************

** - Default CSS
** - Header CSS
** - Default News CSS
** - New News CSS
** - Popular News CSS
** - Technology News CSS
** - International News CSS
** - Video News CSS
** - Hot News CSS
** - Gallery News CSS
** - Blog Home News CSS
** - Featured News CSS
** - ALL News CSS
** - More News CSS
** - Page Title CSS
** - ALL Category News CSS
** - Pagination CSS
** - Sidebar CSS
** - News Details CSS
** - Instagram CSS
** - Coming Soon CSS
** - 404 Error CSS
** - Login CSS
** - Sign Up CSS
** - Author CSS
** - Contact CSS
** - Footer CSS
** - Go Top CSS
*/
/*================================================
Default CSS
=================================================*/
@import url("https://fonts.googleapis.com/css?family=Arimo:400,400i,700,700i&display=swap");
@import url("https://fonts.googleapis.com/css?family=Heebo:100,300,400,500,700,800,900&display=swap");

/*================================================
Default CSS
=================================================*/
/*================================================
header CSS
=================================================*/
.top-header .header-date {
    margin-right: 20px;
    color: #967c45;
    background-color: #ffffff;
    padding: 12px 15px;
    font-weight: 300;
    font-size: 12px;
}

.top-header .top-nav li {
    margin-right: 14px; /* 기본 10px — 유틸 메뉴 항목 간격 소폭 확대 */
}

.top-header .top-nav li a {
    font-size: 12px;
    color: #000000;
}

@keyframes blink {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.1;
    }

    100% {
        opacity: 1;
    }
}

.icon-gift {
    font-size: 11px;
    animation: blink 1.1s infinite;
    background: none !important;
    padding: 19px 10px 19px 20px !important;
}

.sinmun-nav {
    padding-top: 0;
}

.top-ad-wrap {
    border-bottom: 7px solid #d5d5d5;
}

.top-news-ad {
    width: 1050px;
    margin: 20px auto;
}

.top-news-ad img {
    width: 100% !important;
    height: 100px;
}

@media only screen and (max-width: 1199px) {
    .top-news-ad {
        width: 100%;
        height: auto !important;
    }

    .top-news-ad img {
        width: 100%;
        height: auto !important;
    }

    .dcmads.chmb {
        width: 100% !important;
    }
}

.shorting-menu a {
    display: inline-block;
}

/*================================================
footer CSS
=================================================*/
.copyright-area .copyright-cont {
    position: relative;
    text-align: center;
}

/* 링크 사이 공백이 JSX에서 제거돼도 항목 단위로 줄바꿈되도록(모바일 가로 오버플로 방지, 2026-07-22) */
.copyright-area .copyright-cont span {
    display: inline-block;
}

.copyright-area .copyright-cont span a {
    display: inline;
    color: #ffffff;
    padding: 0 17px;
    font-size: 13px;
    text-decoration: none;
    background: url("/assets/img/line_footer_span.png") 0 3px no-repeat;
}

.copyright-area .copyright-cont span:first-child a {
    background: none;
}

.copyright-area .copyright-cont p {
    padding-top: 0.5rem;
    font-size: 13px;
    font-weight: 300;
    color: #bababa;
    letter-spacing: 0.5px;
}

.copyright-area .copyright-cont .inc {
    position: absolute;
    right: 0;
    top: 24px;
    width: 210px;
}

@media only screen and (max-width: 767px) {
    .top-header .top-nav {
        padding-left: 0;
        display: none;
    }

    .top-header .header-date {
        display: none;
    }

    nav .others-options .nav-search .nav-search-inner {
        display: flex;
    }

    .mean-container .mean-nav ul li.icon-gift {
        padding-top: 0 !important;
        padding-left: 0 !important;
        font-size: 13px;
    }

    .mean-bar .mean-nav .others-options {
        right: 67px;
        top: 3px;
    }

    .mean-bar .mean-nav .others-options a {
        font-size: 21px;
        margin-right: 13px;
    }

    .mean-bar .mean-nav .others-options .nav-search form {
        width: 280px;
        right: -60px;
        top: 48px;
    }

    .mean-bar .mean-nav .others-options .nav-search .nav-search-close-button {
        right: 90px;
    }

    .copyright-area .copyright-cont span a {
        padding: 0 11px;
        word-break: keep-all;
    }
}

@media only screen and (min-width: 1280px)  {
    .navbar .mean-menu .others-options {
        width: 156px;
        text-align: right;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .container {
        max-width: 100%;
    }

    nav .others-options .nav-search .nav-search-inner {
        display: flex;
    }

    .mean-container {
        padding-top: 0 !important;
    }

    .mean-container .mean-bar {
        height: 70px;
    }

    .mean-container .mean-nav {
        margin-top: 70px;
    }

    .mean-container .mean-nav ul {
        max-height: 548px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .container {
        max-width: 100%;
    }

    .col-lg-9 {
        width: 70%;
        padding-left: 1.5rem;
        padding-right: 1.5rem !important;
    }

    .aside-25n.col-lg-3 {
        width: 30%;
        padding-left: 1rem;
    }

    .sinmun-nav nav .navbar-nav .nav-item a {
        font-size: 0.9rem;
    }
}

/*================================================
Default CSS
=================================================*/
/*================================================
main CSS
=================================================*/
.news-2025 {
    max-width: 1324px !important;
}

.news-2025.news-main {
    padding-bottom: 50px;
}

.shorting-menu a {
    display: inline-block;
    background-color: #F1F5F9;
    border-radius: 4px;
    border: 1px solid #94A3B8;
    color: #334155;
    font-weight: 500;
    padding: 6px 15px;
    margin: 2px;
    font-size: 1rem;
}

.shorting-menu a:hover {
    background:#E2E8F0;
  border-color:#64748B;
}

.shorting-menu a:active{
  background:#CBD5E1;
  border-color:#475569;
}

.shorting-menu.tech a {
    display: inline-block;
    background-color: #EFF6FF;
    border-radius: 4px;
    border: 1px solid #93C5FD;
    color: #1E3A8A;
    font-weight: 500;
    padding: 6px 15px;
    margin: 2px;
    font-size: 1rem;
}

.shorting-menu.tech a:hover {
    background:#DBEAFE;
  border-color:#60A5FA;
}

.shorting-menu.tech a:active{
  background:#bed2ea;
  border-color:#1E3A8A;
}

.shorting-menu.indust a {
    display: inline-block;
    background-color: #FFF7ED;
    border-radius: 4px;
    border: 1px solid #f2b371;
    color: #9A3412;
    font-weight: 500;
    padding: 6px 15px;
    margin: 2px;
    font-size: 1rem;
}

.shorting-menu.indust a:hover {
    background:#FFEDD5;
  border-color:#FB923C;
}

.shorting-menu.indust a:active{
  background:#FED7AA;
  border-color:#F97316;
}

.shorting-menu a:last-of-type img {
    width: 75px;
}

.shorting-menu.make-menu {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.shorting-menu.make-menu a {
    background-color: #fff;
    border: none;
    position: relative;
    font-size: 1.6rem;
    font-weight: 600;
    color: #b3b3b3;
    padding: 6px 10px 0 10px;
    margin-left: 1rem;
    margin-right: 1rem;
}

.shorting-menu.make-menu a.on {
    color: #111;
}

.shorting-menu.make-menu a.on::after {
    display: block;
    content: "";
    width: 100%;
    height: 3px;
    background: #249fe8;
    position: absolute;
    left: 0;
    top: 105%;
}

.embed-responsive-item {
    width: 100%;
}

.wm_head.wm_live .embed-responsive-item {
    height: 243px;
}

.wm_title_area {
    background-color: #cc0000;
    padding: 0.7rem 0 0 2rem;
    margin-bottom: 1rem;
}

.wm_title_area .wm_title {
    font-size: 1.6rem;
    font-weight: 600;
    color: #ffffff;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.wm_title_area .wm_title span {
    font-size: 1.7rem;
    font-weight: 900;
    padding-right: 2.5rem;
}

.wm_summ {
    padding-bottom: 10px;
    height: auto;
    line-height: 1.6em;
    min-height: 47%;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 5;
}

.wm_btns .btn {
    padding: 9px 20px;
    margin-right: 0.5rem;
    font-size: 1rem;
    color: #ffffff;
    font-weight: 500;
}

.wm_btns .btn-regist {
    background-color: #cc0000;
}

.wm_btns .btn-webinar-detail {
    background-color: #3d7dde;
}

.liveQnaCont {
    border: 1px solid #ccc;
    height: 244px;
    margin-left: 20px;
    overflow-y: scroll;
    padding: 5px;
    background: url(/images/live_qna.png) no-repeat center;
}

.main-top-area .news-content h3 {
    display: block;
    line-height: 1.4;
    margin-bottom: 17px;
    margin-right: 5px;
    color: #111111;
    font-size: 20px;
    letter-spacing: -0.5px;
    font-weight: bold;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.main-top-area .news-content p {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.main-top-area .headline .news-image img {
    width: 630px;
    height: 354px;
    -o-object-fit: cover;
    object-fit: cover;
}

.main-top-area .headline h3 {
    font-size: 30px;
    word-break: keep-all;
    margin-bottom: 10px;
}

.main-top-area .headline p {
    font-size: 1.05rem;
    line-height: 1.8;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.main-top-notice {
    margin-top: 40px;
}

.main-top-notice div {
    position: relative;
    width: 630px;
    height: 50px;
    padding: 6px 0;
    margin: 0 auto;
    background-color: #f5f5f5;
    padding-left: 140px;
}

.main-top-notice div .tit {
    position: absolute;
    color: #fb6b3f;
    left: 23px;
    top: 12px;
    font-size: 17px;
}

.rolling {
    margin: 0;
    padding: 0;
    list-style: none;
    overflow: hidden;
    height: 30px;
}

.rolling li {
    position: relative;
    line-height: 50px;
    padding: 10px 0;
}

.rolling li a {
    display: block;
    font-size: 16px;
    line-height: 1;
    color: #434343;
}

.rolling li a i {
    position: absolute;
    right: 23px;
    top: 11px;
    color: #666666;
}

.main-thumb-right:hover h3 {
    text-decoration: underline;
}

.main-thumb-right img {
    width: 295px;
    height: 255px;
    -o-object-fit: cover;
    object-fit: cover;
}

.main-thumb-right .news-content h3 {
    color: #fff;
    margin-bottom: 0;
}

.main-thumb-right .news-content h3 span {
    vertical-align: top !important;
}
.main-thumb-right .news-content h3 span img {
    height: auto !important;
}

.main-thumb-right .link-overlay {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
}

.bl-plus {
    display: inline-block !important;
    padding-right: 0.2rem;
    vertical-align: middle;
}

.special-news {
    margin-bottom: 40px;
    padding-top: 30px;
    width: 100%;
    background-color: #f0f7ff;
}

.special-news .nav-tabs {
    border-bottom: 1px solid #ddd;
    width: 100%;
}

.special-news .nav-tabs>li {
    position: relative;
}

.special-news .nav-tabs>li button {
    border: none;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    font-size: 18px;
    font-weight: 500;
    color: #000000;
    border-radius: 0;
}

.special-news .nav-tabs>li button.active {
    color: #ffffff;
    cursor: default;
    background-color: #3d7dde;
}

.special-news .nav-tabs>li button.active:after {
    position: absolute;
    bottom: -10px;
    left: 50%;
    margin-left: -10px;
    content: "";
    display: block;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 10px solid #3d7dde;
}

.special-news .news-more {
    position: absolute;
    right: 10px;
    top: -70px;
    z-index: 100;
}

.special-news .tab-content {
    margin-top: 30px;
    position: relative;
}

.special-news .tab-content h3 {
    font-size: 1rem;
    line-height: 1.6;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.special-news .tab-content .news-image {
    position: relative;
    width: 228px;
    height: 128px;
    -o-object-fit: cover;
    object-fit: cover;
}

.special-news .single-popular-news {
    position: relative;
}

.special-news .single-popular-news .image-video {
    position: absolute;
    bottom: 0;
    left: 0;
    color: #ffffff;
    background: #232323;
    padding: 10px;
    opacity: 0.7;
}

.space-news-list {
    margin-top: 2rem;
}

.main-banner .col-lg-6:last-child {
    text-align: right !important;
}

.main-banner img {
    width: 630px;
    height: 130px;
}

.default-video-news .single-video-news .image img {
    width: 300px;
    height: 169px;
}

@media only screen and (min-width: 992px) {
    .default-video-news {
        padding-left: 0 !important;
    }
}

@media only screen and (max-width: 991px) {
    .default-video-news {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
}

.main-news-right {
    padding-left: 50px;
}

.main-news-right ul {
    padding: 10px 0 0 20px;
}

.main-news-right ul li {
    padding: 8px 0;
    list-style: none;
}

.main-news-right ul li a {
    display: block;
    font-size: 16px;
    color: #000000;
    line-height: 1.5;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    word-break: break-all;
}

.main-news-right ul li a:hover {
    text-decoration: underline !important;
}

.main-news-right ul li a span {
    font-size: 15px;
    font-weight: 700;
    padding-right: 10px;
}

.main-news-right ul li a span.subject1 {
    color: #3a73e7;
}

.main-news-right ul li a span.subject2 {
    color: #2eb272;
}

.main-news-right ul li a span.subject3 {
    color: #f6552f;
}

.main-news-right ul li a span.subject4 {
    color: #953ff6;
}

.news-scene {
    width: 1324px !important;
    padding-left: 12px !important;
    padding-right: 0 !important;
}

.news-scene .single-video-news {
    margin: 0 20px;
    border-bottom: none;
}

.news-scene .single-video-news:first-child {
    margin-left: 0;
}

.news-scene .single-video-news .image {
    width: 228px;
}

.news-scene .single-video-news .image img {
    width: 228px;
    height: 129px;
    -o-object-fit: cover;
    object-fit: cover;
}

.news-scene .single-video-news .image a {
    font-size: 15px;
}

.footer-area h3 {
    font-size: 30px;
    margin-bottom: 15px;
    font-weight: 600;
}

.footer-webinar ul {
    padding-left: 0;
    padding-right: 2rem;
}

.footer-webinar ul li a {
    width: 97%;
    color: #ffffff;
    overflow: hidden;
    white-space: nowrap;
    font-size: 1.05rem;
    font-weight: 300;
    line-height: 2.5;
    display: block;
    text-overflow: ellipsis;
}

.footer-make .section-title {
    color: #ffffff !important;
}

.footer-make .news-content p {
    color: #ffffff;
}

.footer-make .news-content ul {
    display: flex;
}

.footer-make .news-content ul li {
    display: block;
}

.footer-make .single-more-news img {
    height: 257px;
}

@media only screen and (max-width: 767px) {
    .mean-container .mean-bar {
        height: 67px;
    }

    .row.col-lg-6.col-md-12 {
        padding-right: 0;
        padding-right: 0;
        margin-right: 0;
    }

    .main-thumb-right img {
        width: 100%;
        height: auto;
    }

    .main-news-right {
        padding-left: 0;
        padding-top: 40px;
    }

    .single-popular-news .news-image img {
        width: 100%;
    }

    .default-video-news .single-video-news {
        margin-bottom: 2rem !important;
    }

    .default-video-news .single-video-news .image {
        width: 100%;
    }

    .default-video-news .single-video-news .image img {
        width: 100%;
        height: auto;
    }

    .default-video-news.news-scene {
        width: 100% !important;
        display: block !important;
    }

    .default-video-news.news-scene .single-video-news {
        width: 100% !important;
        margin: 0 0 2rem 0 !important;
    }

    .main-banner img {
        width: 100%;
        height: auto;
        margin-bottom: 2rem;
    }

    .special-news {
        margin-bottom: 20px;
        padding-top: 0;
        padding-bottom: 40px !important;
    }

    .special-news .nav-tabs>li {
        width: 33.333%;
    }

    .special-news .nav-tabs>li button {
        width: 100%;
        font-size: 14px;
        padding: 1rem 0;
    }

    .special-news .nav-tabs>li button.active:after {
        bottom: -10px;
    }

    .special-news .tab-content .news-image {
        width: 100%;
        height: auto;
    }

    .special-news .news-more {
        top: auto;
        bottom: -20px;
    }

    .popular-news-slides .owl-nav {
        top: -26px;
    }

    .single-default-news .video-btn {
        right: 42%;
        top: 80px;
    }

    .section-title .view-more {
        right: 3%;
        font-size: 1.5rem;
    }

    .new-news-list .single-new-news>img {
        height: auto !important;
    }

    .copyright-area .copyright-cont {
        padding-bottom: 70px;
    }

    .copyright-area .copyright-cont .inc {
        left: 50%;
        top: auto;
        bottom: 26px;
        width: 150px;
        margin-left: -75px;
    }

    .shorting-menu.make-menu a {
        font-size: 1.4rem;
        padding: 6px 5px 0 5px;
        margin-left: 0.5rem;
        margin-right: 0.5rem;
    }

    .shorting-menu.make-menu a.on::after {
        display: block;
        content: "";
        width: 100%;
        height: 3px;
        position: absolute;
        left: 0;
        top: 105%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .news-2025 {
        padding-bottom: 40px !important;
    }

    .main-banner {
        text-align: center;
    }

    .main-banner .col-lg-6:last-child {
        text-align: center !important;
        padding-top: 2rem;
    }

    .main-banner img {
        height: auto;
    }

    .main-top-area .headline .news-image img {
        width: 100%;
        height: auto;
        -o-object-fit: cover;
        object-fit: cover;
    }

    .out-banner.renew .inc img {
        width: 200px !important;
        padding-bottom: 1rem;
    }

    .news-content-25n.col-lg-9 .e4ds-news-content {
        font-size: 1rem !important;
    }

    .col-md-9 {
        width: 100%;
    }

    .main-thumb-right img {
        width: 100%;
    }

    .special-news .news-more {
        top: -96px;
    }

    .single-default-news .video-btn {
        left: auto;
        right: 45%;
        top: 42%;
    }

    .popular-news-slides .owl-nav {
        top: -23px;
    }

    .news-scene {
        width: 100% !important;
        padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
        padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
    }

    .news-scene .single-video-news {
        width: 20%;
        margin: 0 1rem 0 0 !important;
    }

    .news-scene .single-video-news:last-child {
        margin-right: 0 !important;
    }

    .news-scene .single-video-news .image {
        width: 100% !important;
    }

    .news-scene .single-video-news .image img {
        width: 100% !important;
    }

    .default-video-news .col-md-12 {
        width: 50%;
    }

    .main-news-right {
        padding-left: 0;
    }

    .single-footer-widget .latest-news-media {
        display: block;
    }

    .single-footer-widget .latest-news-media .content {
        width: 100%;
    }

    .wid-50 {
        width: 50% !important;
    }

    .copyright-area .copyright-cont {
        padding-bottom: 70px;
    }

    .copyright-area .copyright-cont .inc {
        left: 50%;
        top: auto;
        bottom: 26px;
        width: 150px;
        margin-left: -75px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .main-news-right {
        padding-left: 0;
    }

    .main-banner img {
        height: auto;
    }

    .news-scene {
        width: 100% !important;
        padding-left: calc(var(--bs-gutter-x) * 0.5) !important;
        padding-right: calc(var(--bs-gutter-x) * 0.5) !important;
    }

    .news-scene .single-video-news {
        width: 20% !important;
        margin: 0 !important;
    }
}

@media only screen and (min-width: 1199px) and (max-width: 1650px) {
    .container {
        max-width: 1320px;
    }

    .aside-25n.col-lg-3 {
        width: 25% !important;
    }
}

/*================================================
Default CSS
=================================================*/
.tab-ui {
    border-bottom: 1px solid #d9d9d9;
    margin-bottom: 1.5rem;
}

.tab-ui .nav-tabs .nav-item a {
    padding: 0.8rem 2.5rem;
}

/*================================================
sub CSS
=================================================*/
/* new-news-top 히어로 이미지: 원본 소스는 1650px 이상에서만 height를 고정해 그 아래
   화면폭에서는 비율 제한이 없었다(운영도 동일). 비율이 안 맞는 원본 이미지가 들어오면
   레이아웃이 깨지는 것을 막기 위해 전 폭에서 비율 고정 + object-fit으로 방어. */
.new-news-top .single-default-news > img {
    width: 100%;
    aspect-ratio: 638 / 366;
    object-fit: cover;
}

@media only screen and (min-width: 1650px) {
    .new-news-top .owl-carousel .owl-item img {
        height: 366px;
    }

    .new-news-top .single-default-news .thumb-left {
        width: 638px;
        height: 366px;
    }

    .new-news-top .single-default-news > img {
        height: 366px;
    }
}

.news-2025 {
    padding-bottom: 70px;
}

.news-2025 .section-title {
    padding-left: 15px;
    padding-bottom: 5px;
    font-size: 39px;
    font-weight: 700;
    color: #111111;
}
.news-2025 .section-title small {
    font-size: 0.8rem;
}

.news-2025 .section-title .badge {

    display: inline-block;
    border-radius: 5px; 
    font-weight: 400;
    padding: 6px 15px;
    margin-left: 8px;
    font-size: 1rem;
    vertical-align: middle;


}

.news-2025 .section-title .badge.tech {

    background-color: #1d4ed8;

    color: #fff;
}

.news-2025 .section-title .badge.indust {
    
    background-color: #c2410c;
    color: #fff;
}

.news-2025 .section-title.main {
    padding-left: 0;
}

.default-news-area {
    background-color: #fff;
}

.default-news-area .container {
    max-width: 1324px !important;
}

.news-content-25n.col-lg-9 {
    width: 974px;
    padding-right: 60px;
    border-right: 1px solid #ddd;
}

.news-content-25n.col-lg-9 h2 {
    font-weight: 700;
}

.news-content-25n.col-lg-9 .e4ds-news-content {
    font-size: 1.2rem;
    line-height: 1.7;
    letter-spacing: 1px;
    word-spacing: 2px;
}

.news-content-25n.col-lg-9 .e4ds-news-content strong {
    font-size: 1.5rem;
    color: #222;
    font-weight: 700;
}

.news-content-25n.col-lg-9 .e4ds-news-content span strong {
    font-size: inherit;
}

.news-content-25n.col-lg-9 .e4ds-news-content .img-fluid {
    display: block;
    padding-bottom: 0.3rem;
}

.news-content-25n.col-lg-9 .e4ds-news-content .img-mg-left {
    float: left;
    margin-right: 40px;
}

.news-content-25n.col-lg-9 .e4ds-news-content .img-mg-right {
    float: right;
    margin-left: 40px;
}

/* 2026-07-21 본문 이미지 자동 정돈 — 클래스 없는 레거시/신규 이미지도 글이 옆으로 자연스럽게
   감기고(좌측 플로트) 글이 바짝 붙지 않도록 여백 부여. 큰 이미지는 폭 제한(글 슬리버 방지).
   명시 클래스(.img-mg-left/right/.img-fluid)는 각자 규칙 유지(위에서 제외). 전 기사+향후 글에 일괄 적용. */
.news-content-25n.col-lg-9 .e4ds-news-content img:not(.img-mg-left):not(.img-mg-right):not(.img-fluid):not(.img-wide) {
    float: left;
    max-width: min(46%, 460px);
    height: auto;
    margin: 0.4rem 40px 1rem 0;
    border-radius: 4px;
}
/* 2026-07-26 본문 이미지 비율 보존 — 레거시 본문 12,021건이 인라인 style="width:..;height:..px"로
   치수를 고정하는데, max-width 캡(위 규칙·전역 img max-width:100%)은 인라인 width만 이기고
   height는 그대로 남아 폭만 줄어드는 왜곡 발생. 인라인 height를 !important로 제압해
   렌더 폭이 어떻게 줄든 비율을 항상 따라가게 한다(뉴스 본문 스코프 한정). */
.news-content-25n.col-lg-9 .e4ds-news-content img {
    height: auto !important;
}
/* 와이드 이미지(w/h≥1.75·w≥500px — 렌더 시 tagWideNewsImages가 img-wide 태깅):
   46% 플로트로 욱여넣으면 도표·파노라마가 판독 불가로 작아지므로 제자리에서 한 줄 전체 블록으로. */
.news-content-25n.col-lg-9 .e4ds-news-content img.img-wide {
    float: none;
    display: block;
    width: 100%; /* 2026-08-05 기사 폭 전체로(비율은 height:auto가 유지) — 사용자 요청 */
    max-width: 100%;
    margin: 0.6rem auto 1rem;
    border-radius: 4px;
}
/* 2026-08-07 Enter(문단)/Shift+Enter(줄바꿈) 간격 동일화 — 사용자 요청. p 기본 여백(1rem) 제거,
   문단 사이 여백은 저자가 빈 줄로 표현(에디터 compactParagraphs와 짝). 뉴스 본문 스코프 한정. */
.news-content-25n.col-lg-9 .e4ds-news-content p {
    margin: 0;
}
/* 2026-08-07 이미지 캡션(figure.e4ds-img/figcaption) — 어드민 에디터 캡션 기능과 짝.
   figure가 이미지 자동 플로트 규칙과 같은 자리를 차지하고, 캡션은 이미지 아래 중앙. */
.news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img {
    float: left;
    max-width: min(46%, 460px);
    margin: 0.4rem 40px 1rem 0;
}
/* :not 체인은 위 '이미지 자동 정돈' 규칙(:not 4개)보다 특이도를 높여 figure 내부 이미지에서 플로트를 무효화 */
.news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img img:not(.img-mg-left):not(.img-mg-right):not(.img-fluid):not(.img-wide) {
    float: none;
    max-width: 100%;
    margin: 0;
    border-radius: 4px;
}
.news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img figcaption {
    font-size: 0.85rem;
    color: #777;
    line-height: 1.5;
    text-align: center;
    padding-top: 6px;
    letter-spacing: 0;
    word-spacing: normal;
}
/* 와이드 이미지가 figure 안에 있으면 figure째 전폭 블록으로 */
.news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img:has(img.img-wide) {
    float: none;
    max-width: 100%;
    width: 100%;
    margin: 0.6rem auto 1rem;
}
.news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img:has(img.img-wide) img {
    width: 100%;
    float: none;
    margin: 0;
}
/* 본문 끝에서 플로트 해제 — 다음 요소(기사정보/광고 등)가 이미지 옆으로 밀리지 않게 */
.news-content-25n.col-lg-9 .e4ds-news-content::after {
    content: "";
    display: table;
    clear: both;
}

.aside-25n.col-lg-3 {
    width: 324px;
}

@media only screen and (max-width: 1199px) {
    .default-news-area .container {
        max-width: 100% !important;
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .news-content-25n.col-lg-9 {
        width: 70%;
        padding-right: calc(var(--bs-gutter-x) * 0.5);
    }

    .aside-25n.col-lg-3 {
        width: 30%;
    }
}

@media only screen and (max-width: 991px) {
    .news-content-25n.col-lg-9 {
        width: 100%;
    }

    .aside-25n.col-lg-3 {
        width: 100%;
        margin-top: 5rem;
    }

    .news-content-25n.col-lg-9 .e4ds-news-content .img-mg-left {
    float: none;
    margin-right:0;
    display: block;
    }

    .news-content-25n.col-lg-9 .e4ds-news-content .img-mg-right {
        float: none;
        margin-left: 0;
        display: block;
    }

    /* 클래스 없는 본문 이미지도 모바일에선 전체폭 블록(플로트 해제) */
    .news-content-25n.col-lg-9 .e4ds-news-content img:not(.img-mg-left):not(.img-mg-right):not(.img-fluid) {
        float: none;
        max-width: 100%;
        margin: 0.5rem auto 1rem;
        display: block;
    }

    /* 캡션 figure도 모바일에선 전체폭 블록 */
    .news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img {
        float: none;
        max-width: 100%;
        margin: 0.5rem auto 1rem;
    }
    .news-content-25n.col-lg-9 .e4ds-news-content figure.e4ds-img img:not(.img-mg-left):not(.img-mg-right):not(.img-fluid) {
        margin: 0;
    }
}

.news-details .news-details-title {
    border-bottom: 1px solid #5c5c5c;
    margin-bottom: 20px;
}

.news-details .news-details-title h3 {
    font-weight: 700;
    font-size: 34px;
    line-height: 1.4;
}

.news-content .date span {
    margin-left: 0.5rem;
    color: #666666;
}

.social-cluster {
    text-align: right !important;
}

.social-cluster ul li {
    display: inline-block;
    list-style-type: none;
    font-size: 1.15rem;
    margin-left: 0.4rem;
}

.social-cluster ul li a {
    color: #666666;
}

.social-cluster ul li .facebook {
    font-size: 1.3rem;
    color: #3a589b;
}

.social-cluster ul li .twitter {
    font-size: 1.3rem;
    color: #111;
}

.social-cluster ul .webinar_link {
    background-color: #cc0000;
    border: 1px solid #b30000;
    border-radius: 4px;
    padding: 0.1rem 1rem;
    margin-right: 1rem;
}

.social-cluster ul .webinar_link a.webinar {
    color: #fff;
    font-size: 1rem;
}

.reporter-wrap {
    margin: 40px 0;
}

.reporter-wrap h2 {
    font-size: 24px;
    margin-bottom: 1rem;
}

.reporter-title {
    display: flex;
    align-items: center;
    padding: 20px 0 14px;
    margin-bottom: 30px;
}

.reporter-title h3 {
    font-size: 35px;
    font-weight: 600;
}

.reporter-title .pic {
    margin-right: 20px;
}

.reporter-title .pic .img {
    display: block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
}

.reporter-title .pic .img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.reporter-email {
    margin-left: 30px;
    vertical-align: middle;
    float: right;
}

.reporter-email a {
    display: inline-block;
    padding-top: 11px;
    padding-left: 7px;
    font-size: 1rem;
    color: #5b90ae;
}

.reporter-email svg {
    vertical-align: middle;
    color: #5b90ae;
    margin-top: -1px;
}

.reporter-info {
    display: flex;
}

.reporter-info .reporter-img {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    margin-right: 12px;
    overflow: hidden;
}

.reporter-info .reporter-img img {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border-right: 1px solid #d5d5d5;
}

.reporter-info .mail {
    padding-top: 13px;
    font-size: 16px;
    font-weight: 500;
}

.reporter-info .mail span {
    padding-left: 10px;
    font-size: 14px;
    font-weight: normal;
    color: #666666;
}

.reporter-info div:last-child {
    float: right;
}

.reporter-info .ms-auto {
    margin-left: auto !important;
}

.reporter-info .ms-auto a {
    display: inline-block;
    width: 115px;
    text-align: center;
    padding: 3px 0;
    margin-right: 14px;
    border-radius: 30px;
    border: 1px solid #b2b2b2;
}

.reporter-info .ms-auto button {
    display: inline-block;
    width: 115px;
    text-align: center;
    padding: 3px 0;
    margin-right: 14px;
    border-radius: 30px;
    border: 1px solid #b2b2b2;
}

.reporter-info .ms-auto .all {
    color: #666666;
}

.reporter-info .ms-auto .report {
    border: 1px solid #eec59d;
    color: #665648;
    background-color: #fee9d4;
    font-weight: 400;
    font-size: 0.95rem;
}

/*modal report*/
#exampleModal .modal-content {
    height: 580px;
}

#exampleModal .modal-header {
    background-color: #f1f1f1;
    color: #111111;
    padding-bottom: 10px;
}

#exampleModal .modal-header h1 {
    padding-left: 1rem;
    font-weight: 600;
    font-size: 1.5rem;
}

#exampleModal .modal-header button.btn-close {
    color: #ffffff;
    opacity: 1 !important;
    font-size: 22px;
    padding-right: 3px;
    font-weight: 400;
}

#exampleModal .modal-title {
    border-bottom: none;
    font-size: 24px;
    font-weight: 500;
}

#exampleModal .modal-body {
    width: 92%;
    margin: 20px auto 0 auto;
}

#exampleModal .modal-body .form-group {
    display: flex;
}

#exampleModal .modal-body .form-group label {
    width: 80px;
    font-weight: 400;
    font-size: 15px;
}

#exampleModal .modal-body .form-group .form-control {
    border-radius: 0;
    padding-top: 4px;
    padding-bottom: 4px;
    margin-bottom: 1rem;
}

#exampleModal .modal-body .form-group textarea {
    height: 140px;
}

#exampleModal .modal-footer {
    border-top: none;
    text-align: center;
    padding-bottom: 1rem;
}

#exampleModal .modal-footer .btn {
    font-size: 17px;
    padding: 8px 30px;
    background-color: #2b76c2;
    border-color: #1e62a7;
}

.report_captcha {
    padding-left: 70px;
    margin: 10px 0;
}

.nav-tabs.comments-tab {
    border: none;
}

.nav-tabs.comments-tab .nav-item {
    border: none;
    margin-right: 0.5rem;
}

.nav-tabs.comments-tab .nav-item .nav-link {
    border: none;
    border-radius: 25px;
    background-color: #f1f1f1;
}

.nav-tabs.comments-tab .nav-item .nav-link.active {
    background-color: #2f68c2;
    color: #ffffff;
}

.msrHeadWrap {
    border-top: 2px solid #337ab7;
    border-bottom: 1px solid #efefef;
    margin-bottom: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.comments-area .comment-meta {
    display: flex;
}

.comments-area .comment-meta .comment-metadata {
    padding-left: 1rem;
    padding-top: 0.1rem;
}

.comments-area .comment-respond textarea {
    display: inline-block;
    width: 89%;
}

.comments-area .comment-respond .form-submit {
    width: 10%;
    float: right;
}

.comments-area .comment-body {
    margin-left: 0;
}

.fb-comments {
    margin-bottom: 4rem;
}

.fb-comments iframe {
    width: 100%;
}

.related-news .news-title .cate {
    display: inline-block;
    border-radius: 5px;
    font-weight: 400;
    margin-bottom: 10px;
    padding: 1px 14px;
    font-size: 1rem;
}

.related-news .news-title .cate.tech {
 color: #1d4ed8;
 background-color: #EFF6FF;
}

.related-news .news-title .cate.indust {
    color: #9A3412;
    background-color: #FFF7ED;
}

.related-news .news-title h2 {
    display: flex;
    border-bottom: 2px solid #222;
    border-left: none;
    margin-bottom: 30px;
    padding-bottom: 12px;
    font-weight: 700;
    font-size: 30px;
}

.related-news .news-title h2 span {
    font-size: 1rem;
    color: #666666;
    font-weight: normal;
    margin-left: 1rem;
    padding-top: 0.9rem;
}

.related-news .news-title form .form-control {
    height: 40px;
}

.related-news .news-title form .btn-u {
    width: 50px;
    font-size: 0.95rem;
    background: opacity(0.4);
}

.related-news .ratio {
    margin-bottom: 1rem;
}

.related-news .ratio .embed-responsive-item {
    height: 100%;
}

.related-news .section-title {
    padding-left: 0;
}

.related-news .section-title h2 {
    font-weight: 700;
    border-bottom: 2px solid #222;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
}

.single-default-news .news-content h3 a {
    font-size: 27px;
    line-height: 1.4;
    font-weight: 700;
}

.single-default-news .link-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.single-category-news {
    padding-bottom: 10px;
    margin-bottom: 0;
    border-bottom: 1px solid #eee;
}

.single-category-news .category-news-image img {
    width: 100%;
}

.single-category-news .category-news-content p {
    line-height: 1.7;
    margin-bottom: 0;
}

.single-category-news .category-news-content p.date {
    padding-top: 10px;
}

.single-category-news .category-news-content p.date span.writer {
    display: inline-block;
    padding-left: 1rem;
}

.single-category-news .category-news-content h3 .cate-atticle {
    display: inline;
    padding-right: 1rem;
    color: #f6552f;
}

.single-category-news .category-news-content .embed-responsive-item {
    height: 352px;
}

.single-category-news .category-news-content a {
    color: #232323;
    font-size: 1.25rem;
    font-weight: 500;
}

/* 오른쪽 2x2 그리드 총 높이를 왼쪽 히어로 이미지 높이(비율 고정, 화면폭별로 가변)와
   맞추기 위해, 고정 px 높이 대신 부모(row stretch로 왼쪽과 같은 높이가 된 col) 기준
   flex 비율 분배 + object-fit로 렌더링한다. 고정 172px였을 때는 화면폭에 따라 왼쪽
   히어로 높이와 어긋나 오른쪽 이미지 아래에 빈 공간이 생겼다. */
.new-news-list {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.new-news-list .single-new-news {
    flex: 1 1 0;
}

.new-news-list .single-new-news>img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: none;
}

.new-news-list .single-new-news .news-content img {
    border: none;
    width: 21px !important;
}

.new-news-list .single-new-news .news-content h3 a {
    line-height: 1.3;
}

.new-news-list .single-new-news .link-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.news-tab {
    padding: 1.5rem 0 0 0;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #d9d9d9;
}

.news-tab li button,
.news-tab li a {
    position: relative;
    padding: 0.8rem 2.5rem;
    color: #666666;
    border: none !important;
    font-size: 1.05rem;
}

.news-tab li button:hover,
.news-tab li a:hover {
    color: #2f68c2;
}

.news-tab li button.active,
.news-tab li a.active {
    color: #2f68c2;
}

.news-tab li button.active::before,
.news-tab li a.active::before {
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    border-bottom: 5px solid #2f68c2;
}

.main_news_list {
    padding-left: 0;
}

.h2-line {
    display: flex;
    border-bottom: 2px solid #000000;
    margin-bottom: 0;
    padding-bottom: 12px;
    font-weight: 700;
}

.h2-line form.form-inline {
    margin-left: auto;
}

.h2-line form.form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
}

.h2-line .total {
    display: inline-block;
    padding-left: 10px;
    padding-top: 8px;
    font-size: 17px;
    font-weight: 400;
    color: #777777;
}

.news-content.plus-inner {
    letter-spacing: 1px;
    word-spacing: 2px;
}

/* e4ds+ 유료기사 요약문 — 무료 공개 영역(2026-08-13). 본문 첫 문단처럼 읽히도록 기사 본문 톤을 따른다.
   ★잠금 래퍼(.e4ds-plus-locked) 밖에 있어야 한다 — 구조화 데이터 hasPart 와 정합. */
.news-content.plus-inner .e4ds-plus-summary {
    padding: 10px 0 0 0;
}

.news-content.plus-inner .e4ds-plus-summary p {
    margin: 0;
    font-size: 17px;
    line-height: 1.9;
    color: #333;
    word-break: keep-all;
}

/* 잠긴 영역 — 요약문 아래로 자연스럽게 이어지도록 상단 여백만 준다(기존 guide 여백과 중복 방지). */
.news-content.plus-inner .e4ds-plus-locked .e4ds-plus-guide {
    padding-top: 24px;
}

.news-content.plus-inner .e4ds-plus-guide {
    padding: 40px 0 10px 0;
    text-align: center;
}

.news-content.plus-inner .e4ds-plus-guide span {
    display: inline-block;
    box-shadow: inset 0 -10px 0 #fef1dd;
    font-size: 18px;
    color: #4d4a82;
    letter-spacing: -0.5px;
}

.news-content.plus-inner .plus-free-perm {
    margin: 5rem auto 0 auto;
    width: 88%;
    font-size: 18px;
    line-height: 1.7;
    text-align: center;
}

.news-content.plus-inner .plus-free-perm p {
    line-height: 2;
    color: #363232;
    letter-spacing: -0.2px;
    margin-bottom: 0;
}

.news-content.plus-inner .plus-free-perm p:first-of-type {
    background-color: #f25f4c;
    color: #fff;
    padding-left: 2rem;
    padding-right: 2rem;
}

.news-content.plus-inner .plus-free-perm p:last-of-type {
    font-size: 16px;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    background: #f1f1f1;
}

.news-content.plus-inner .plus-free-perm p:last-of-type span {
    display: block;
    font-size: 14px;
    padding-top: 0.7rem;
    padding-bottom: 1rem;
    letter-spacing: -0.5px;
}

.news-content.plus-inner .plus-free-perm span {
    font-size: 14px;
}

.news-content.plus-inner .e4ds-plus-ad {
    overflow: hidden;
    text-align: center;
    padding-bottom: 4rem;
}

.news-content.plus-inner .e4ds-plus-ad-title {
    position: relative;
    padding-bottom: 40px;
    margin-top: 20px;
}

.news-content.plus-inner .e4ds-plus-ad-title p {
    display: inline-block;
    background-color: #fd6000;
    font-weight: 500;
    font-size: 15px;
    color: #fff;
    padding: 0.5rem 3rem;
}

.news-content.plus-inner .e4ds-plus-ad-title p span {
    position: absolute;
    left: 50%;
    top: 45px;
    margin-left: -9px;
}

.news-content.plus-inner .e4ds-plus-ad-title p span img {
    animation: motion 0.4s linear 0s infinite alternate;
    /* 무한 반복 */
}

@keyframes motion {
    0% {
        margin-top: 0px;
    }

    /* 처음 위치 */
    100% {
        margin-top: 10px;
    }

    /* 마지막 위치 */
}

.news-content.plus-inner .e4ds-plus-ad .e4ds-plus-countdown .progress {
    margin: 4rem auto;
}

.thumb-box {
    position: relative;
    margin-bottom: 50px;
}

.thumb-box .Dday {
    position: absolute;
    right: 30px;
    bottom: 0;
    display: inline-block;
    width: 74px;
    height: 30px;
    text-align: center;
    color: #ffffff;
    background-color: #f6212b;
    font-size: 17px;
    line-height: 28px;
}

/*more 페이지*/
.category-article-header {
    height: 200px;
    background-position: 0 0;
    background-repeat: no-repeat;
    margin-bottom: 20px;
}

.category-article-header h2 {
    padding: 75px 0 0 70px;
    margin-top: 0;
    font-size: 40px;
    font-weight: bold;
    color: #ffffff;
}

.category-article-header.feature-article {
    background-image: url("/assets/img/bg_cate_01.jpg");
}

.category-article-header.interview-article {
    background-image: url("/assets/img/bg_cate_02.jpg");
}

.category-article-header.technical-articl {
    background-image: url("/assets/img/bg_cate_03.jpg");
}

.news-keywords {
    padding-top: 1rem;
}

.news-keywords a {
    display: inline;
}

.keyword a {
    display: inline-block;
    width: 19%;
    color: #000000;
    padding: 7px 0;
}

/*newsletter*/
.news-content-25n.newsletter_list {
    border: none;
}

.newsletter_list {
    position: relative;
    margin-top: 1.6rem;
    border-top: 2px solid #2f68c2;
    border-bottom: 2px solid #2f68c2;
}

.newsletter_list .row {
    border-bottom: 1px dashed #ddd;
    padding-bottom: 1.2rem;
    padding-top: 1.2rem;
}

.newsletter_list .row .date {
    color: #666666;
    text-align: center;
    font-weight: 300;
}

.newsletter_list .row .title a {
    padding-left: 2rem;
    color: #111111;
}

.newsletter_list .row .title a:hover {
    text-decoration: underline;
}

.newsletter_list .newsletter_listbtn {
    position: absolute;
    right: 0;
    top: -10px;
}

.subscribe-inner {
    margin-top: 2rem;
    margin-bottom: 2rem;
    border: 1px solid #dee2e6;
    padding: 2rem;
}

.subscribe-inner .blue-email-title {
    border-bottom: 1px solid #dee2e6;
    padding-bottom: 1rem;
    font-size: 1.1rem;
}

.subscribe-inner .blue-email-title span {
    padding-left: 2rem;
    color: #2f68c2;
    font-weight: 700;
}

.subscribe-inner .gbn p {
    font-size: 1rem;
    font-weight: 500;
    padding-top: 1rem;
}

.subscribe-inner .gbn div {
    padding-left: 2rem;
    padding-bottom: 2rem;
    border-bottom: 1px solid #dee2e6;
}

.subscribe-inner .gbn div label {
    padding: 0.2rem 3rem 0.2rem 0;
}

.subscribe-inner .gbn div label input {
    margin-right: 0.5rem;
    vertical-align: middle;
}

.subscribe-inner .captcha-input {
    padding-top: 2rem;
}

.subscribe-inner .captcha-input a {
    display: inline-block;
}

.subscribe-inner .captcha-input .captcha-img {
    border: 1px solid #dee2e6;
    background-color: #fff;
    padding: 0.2rem;
    margin-left: 1rem;
}

.subscribe-inner .captcha-input .blue-email-btxt .form-control {
    display: inline-block;
    width: 45%;
    margin-left: 2rem;
}

.subscribe-inner .btn-primary {
    margin-top: 3rem;
}

/*event page*/
.section.event-wrap {
    padding-right: 60px;
}

.event-list .event-title {
    font-size: 1.25rem;
    font-weight: 600;
    color: #ee640f;
}

.event-list .event-date {
    font-size: 1rem;
    color: #000;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.event-list .event-desc {
    padding-right: 2rem;
    word-break: keep-all;
    font-size: 0.9rem;
    color: #333;
    font-weight: 400;
}

.event-list .text-end span {
    display: inline-block;
    padding: 0.3rem 2rem;
    background-color: #888888;
    color: #ffffff;
}

.event-list .text-end.state span {
    background-color: #f6212b;
}

/*company-info*/
.company-info {
    padding-top: 2rem;
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.6;
}

.company-info .blue {
    padding: 0.2rem 0 0 0;
    font-size: 1.2rem;
    color: #1b3c88;
    font-weight: 500;
}

.support-cont {
    padding-top: 2rem;
    font-weight: 300;
    line-height: 1.6;
}

.support-cont h3 {
    font-size: 1.3rem;
    font-weight: 700;
}

.support-cont h4 {
    font-size: 1.1rem;
    font-weight: 500;
}

/*buttons*/
.btn-primary {
    background-color: #2f68c2;
    border: 1px solid #2f68c2;
    color: #ffffff;
    padding: 0.7rem 2.5rem;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    border-radius: 0;
    text-transform: uppercase;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 1.1rem;
}

.btn-primary:hover,
.btn-primary::after,
.btn-primary:focus {
    background-color: #25549f;
}

.btn-primary.btn-xs {
    font-size: 15px;
    padding: 0.3rem 0.7rem;
    margin-left: 0.3rem;
    color: #ffffff;
}

.btn-secondary {
    border: 1px solid #6c757d;
    padding: 0.7rem 2.5rem;
    border-radius: 0;
    font-size: 1.1rem;
    font-weight: 400;
}

.section_title {
    font-size: 34px;
    font-weight: 700;
    padding: 30px 0 10px 0;
    line-height: 1;
    color: #333;
}

.section_title .plus {
    padding-bottom: 0;
}

.keyword_desc {
    border: 1px solid #efefef;
    padding: 10px 0 10px 20px;
}

@media only screen and (max-width: 767px) {
    .category-article-header {
        height: 120px;
        background-size: cover;
        background-position-x: 40%;
    }

    .category-article-header h2 {
        padding: 42px 0 0 40px;
        font-size: 30px;
    }

    .h2-line {
        display: block;
    }

    .h2-line form.form-inline {
        margin-top: 0.5rem;
    }

    .h2-line form.form-inline input.form-control {
        width: 47%;
    }

    .h2-line form.form-inline .btn {
        padding-top: 13px;
        padding-bottom: 13px;
    }

    .news-details .news-details-title h3 {
        font-size: 26px;
    }

    .news-content .date span {
        margin-left: 0.5rem;
        color: #666666;
    }

    .news-content-25n.col-lg-9 .e4ds-news-content {
        font-size: 1rem;
    }

    .news-content-25n.col-lg-9 .e4ds-news-content strong {
        font-size: 1.3rem;
        line-height: 1.6;
    }

    .newsletter-src {
        padding-top: 4.5rem;
    }

    .newsletter_list .newsletter_listbtn {
        top: 48px;
        right: auto;
        left: 50%;
        margin-left: -80px;
    }

    .newsletter_list .newsletter_listbtn .btn {
        font-size: 1rem;
        padding: 0.4rem 0;
        width: 160px;
        text-align: center;
    }

    .reporter-title {
        display: block;
        height: 105px;
    }

    .reporter-title .pic {
        display: inline-block;
        float: left;
    }

    .reporter-title h3 {
        display: inline-block;
        font-size: 1.8rem;
    }

    .reporter-title .reporter-email {
        margin-left: 0;
        float: left;
    }

    .reporter-title .reporter-email a {
        padding-top: 0;
    }

    .single-category-news .category-news-content .embed-responsive-item {
        height: 215px;
    }

    /*event page*/
    .section.event-wrap {
        padding-right: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .related-news .col-md-9 {
        width: 75%;
    }

    .single-category-news .category-news-content .embed-responsive-item {
        height: 286px;
    }

    .main_news_list .single-category-news .col-lg-9 {
        width: 75%;
    }

    /*event page*/
    .section.event-wrap {
        padding-right: 0;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .single-category-news .category-news-content .embed-responsive-item {
        height: 286px;
    }
}

/*================================================
Default CSS
=================================================*/
/*================================================
webinar CSS
=================================================*/
.shorting-menu.webinar a:hover {
    background-color: #1b3c88;
    color: #fff;
}

.shorting-menu.webinar a.on {
    background-color: #1b3c88;
    color: #fff;
}

.webinar-inner .title {
    position: relative;
    padding-left: 1rem;
    padding-right: 1rem;
}

.webinar-inner .title h2 {
    padding: 1rem 0 0 0;
    font-size: 30px;
    font-weight: 700;
    margin-bottom: 0 !important;
}

.webinar-inner .title a {
    position: absolute;
    right: 1rem;
    top: 20px;
    color: #666666;
    font-weight: 300;
}

.webinar-inner .col {
    margin-bottom: 2rem;
}

.webinar-inner .col .mw-txt {
    padding-top: 0.6rem;
    padding-bottom: 1rem;
    font-size: 1rem;
    font-weight: 400;
    color: #111111;
    line-height: 1.3;
    letter-spacing: -0.3px;
}

.webinar-inner .col .mw-txt .mw-day {
    border-radius: 5px;
    background-color: red;
    color: #ffffff;
    font-size: 12px;
    line-height: 1.7;
    padding: 2px 6px;
    margin-right: 5px;
}

.list-unstyled {
    margin-top: 30px !important;
}

.webinar-tab .nav-item {
    color: #2f68c2;
    position: relative;
}

.webinar-tab .nav-item .nav-link {
    padding: 0.6rem 2rem;
    margin-right: 0.5rem;
    color: #444444;
    border: none;
    font-size: 0.94rem;
    background-color: #fdfdfd;
    border-radius: 0;
    border-left: 1px solid #dee2e6;
    border-top: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}

.webinar-tab .nav-item .active {
    color: #2f68c2;
    background-color: #fff;
    border-left: 1px solid #2f68c2;
    border-top: 1px solid #2f68c2;
    border-right: 1px solid #2f68c2;
}

.webinar-tab-content {
    position: relative;
    padding-top: 2rem;
}

.webinar-tab-content .more {
    position: absolute;
    right: 1rem;
    top: -2rem;
}

.webinar-tab-content .techvideo-box {
    padding-bottom: 3rem;
}

.webinar-tab-content .techvideo-box .techvideo-img {
    display: block;
    position: relative;
}

.webinar-tab-content .techvideo-box .techvideo-img .time {
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 12px;
    color: #ffffff;
    display: inline-block;
    background-color: #000000;
    padding: 0px 5px;
    font-weight: bold;
    opacity: 0.7;
    line-height: 1.7;
}

.webinar-tab-content .techvideo-box .techvideo-txt {
    padding-top: 0.5rem;
    color: #111111;
}

.webinar-tab-content .technote-row {
    border-bottom: 1px dashed #ddd;
    padding-bottom: 0.3rem;
    margin-bottom: 0.3rem;
}

.webinar-tab-content .technote-row a {
    color: #111111;
}

.webinar-tab-content .technote-row .btn {
    padding-left: 1rem;
    padding-right: 1rem;
    color: #ffffff;
}

.webinar-tab-content .key-box {
    margin: 30px 0;
    text-align: center;
}

.webinar-tab-content .key-img {
    display: block;
    margin: 0 0 10px 0;
    padding: 0;
    text-align: center;
}

.webinar-tab-content .key-img img {
    width: 140px;
    height: 180px;
    padding: 0;
    border: solid 1px #bebebe;
}

.webinar-tab-content .key-txt {
    text-align: center;
    font-size: 14px;
    color: #000000;
    overflow: hidden;
    height: 45px;
    white-space: normal;
    line-height: 1.7;
    word-wrap: break-word;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.webinar-tab-content .bestqna-box a {
    color: #111111;
    font-size: 0.95rem;
    font-weight: 300;
}

.webinar-tab-content .bestqna-box a strong {
    color: #087edc;
}

.webinar-tab-content .bestqna-box a strong.black {
    color: #111111 !important;
}

.webinar-tab-content .bestqna-box ul {
    margin: 0;
    padding: 0;
}

.webinar-tab-content .bestqna-box ul li {
    font-size: 13px;
    line-height: 1.6;
    color: #000;
}

.webinar-tab-content .bestqna-box ul li.tit {
    padding: 10px;
    background-color: #e6e6e6;
    margin: 0px 0 0 0;
    font-size: 13px;
    line-height: 1.6;
    color: #111111;
}

.webinar-tab-content .bestqna-box span.best-icon {
    font-size: 12px;
    color: #ffffff;
    display: inline-block;
    border-radius: 5px;
    background-color: #cc0000;
    padding: 0px 8px;
    margin: 0 10px 0 0;
    font-weight: bold;
    line-height: 2;
}

.webinar-tab-content .dot {
    display: flex;
    border-bottom: 1px dashed #cfcfcf;
    padding-bottom: 10px;
}

.webinar-tab-content .cont {
    padding: 10px 8px 10px 36px;
    text-align: justify;
    word-break: break-all;
    line-height: 150%;
    background: #ebf1f5 url(/assets/img/icon_reply.png) 15px 14px no-repeat;
}

.webinar-tab-content .cont strong {
    color: #087edc;
}

.webinar-tab-content .view {
    font-size: 11px;
    font-weight: bold;
    padding-left: 10px;
}

.wbn-field-item {
    border: 1px solid #ccc;
    border-radius: 12px;
    padding: 10px 0;
    border-radius: 100px;
    background-image: linear-gradient(to right, #2b5876 0%, #4e4376 51%, #2b5876 100%);
    border: 2px solid #2b5876;
    float: left;
}

.col-lg-2.wbn-field-item:hover {
    background-image: linear-gradient(to right, #ffffff 0%, #ffffff 51%, #ffffff 100%);
}

.col-lg-2.wbn-field-item:hover a {
    color: #2b5876;
    font-weight: 900;
}

.col-lg-2.wbn-field-item a {
    color: #fff;
    letter-spacing: -0.5px;
    font-size: 15px;
    font-weight: 700;
}

.list-unstyled::after {
    display: block;
    content: "";
    clear: both;
    margin-bottom: 2rem;
}

.webinar-list {
    padding-right: 20px !important;
}

.webinar-list .webinar-list-search {
    padding: 10px 15px;
    margin: 0 0 20px 0;
}

.webinar-list .webinar-list-search .text-end {
    border-bottom: 1px solid #cfcfcf;
    padding-bottom: 0.5rem;
}

.webinar-list .webinar-list-search .form-select {
    display: inline;
    width: auto;
    font-size: 0.9rem;
}

.webinar-list .webinar-list-search .form-control {
    display: inline;
    width: auto;
    padding: 5px 15px;
    height: 35px;
}

.webinar-list .webinar-list-search .location-home {
    line-height: 35px;
    font-weight: 500;
    color: #111;
    text-align: center;
}

.webinar-list .webinar-list-search .btn-u {
    padding: 6px 0 7px 0;
    vertical-align: top;
}

.webinar-list .webinar-list-search .btn-u:hover {
    background-color: #555;
    color: #ffffff;
}

.webinar-list .webinar-list-search .btn-secondary {
    border: 1px solid;
    padding: 0.2rem;
    font-size: 0.88rem;
    min-width: 130px;
}

.webinar-list .webinar-list-search .btn-outline-secondary {
    border: 1px solid;
    padding: 0.2rem 0.7rem;
}

.tech-video {
    position: relative;
}

.tech-video .title {
    font-size: 1.6rem;
    font-weight: 600;
}

.tech-video .vbox-cover {
    margin: 1px 0px;
    padding: 5px;
    box-sizing: border-box;
}

.tech-video .vbox-cover ul {
    border: 1px solid #dee2e6;
    margin: 0;
    padding: 10px;
    text-align: left;
    min-height: 240px;
}

.tech-video .vbox-cover ul .fl {
    float: left;
    color: #ffffff;
    font-weight: normal;
    padding: 2px 5px 3px 5px;
    margin: 5px 5px 0 0;
    font-size: 0.88rem;
}

.tech-video .vbox-cover ul .fr {
    float: right;
    padding-top: 0.4rem;
    color: #666;
}

.tech-video .vbox-cover ul li.text {
    clear: both;
    padding: 10px 0 0 0;
    line-height: 18px;
}

.tech-video .all-more {
    width: 130px;
    position: absolute;
    right: 0;
    top: 10px;
}

.tech-video .all-more a {
    color: #2f68c2;
}

.table-tech .td-txt {
    padding-top: 1.2rem;
    padding-bottom: 1.2rem;
}

.table-tech .td-txt p a.btn {
    border: 1px solid;
    padding: 0.2rem 0.7rem;
}

.table-tech .td-btn {
    padding-top: 1.2rem;
}

#view-head {
    border: 1px solid #00a3e0;
    background-color: #00a3e0;
    margin-bottom: 10px;
    display: table;
    width: 100%;
    color: white;
    padding: 15px 20px;
    word-break: keep-all;
}

#view-head .title {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.4;
}

.webinar-tech-btn {
    padding-top: 1rem;
    padding-right: 0;
    padding-bottom: 1rem;
}

.webinar-tech-btn div a {
    font-size: 0.93rem;
    padding: 0.4rem 1rem;
    border-radius: 0;
}

.webinar-tech-btn .sns-btn a {
    display: inline;
    margin-left: 0;
    padding: 0.2rem;
}

.webinar_tech-reply .eewebinar_title {
    border-top: 1px solid #2f68c2;
    margin-bottom: 2px;
    margin-top: 3rem;
    padding-top: 8px;
    padding-bottom: 7px;
    color: #2f68c2;
    font-size: 1rem;
}

.webinar_tech-reply .recomm {
    background: #fafafa;
    padding: 20px 25px;
    overflow: hidden;
    border: 1px solid #eeeeee;
}

.webinar_tech-reply .recomm .input-group-btn input {
    font-size: 0.88rem;
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
}

.lmenu-pc ul {
    margin: 0px 20px 0 0;
    padding: 0;
    border: 1px solid #c7c7c7;
    border-top: 0px !important;
}

.lmenu-pc ul li a {
    display: inline-block;
    width: 100%;
    padding: 15px 10px;
    font-size: 14px;
    font-weight: 300;
    color: #000000;
    border-top: 1px solid #c7c7c7;
    background-color: #ffffff;
}

.lmenu-pc ul li a:hover {
    background-color: #eeeeee;
    color: #040440;
    font-weight: 500;
}

.lmenu-pc ul li a.on {
    color: #040440;
    background-color: #eeeeee;
    font-weight: 500;
}

.webinar-list-cont {
    padding: 1.1rem 0.6rem;
    margin-bottom: 1.2rem;
    background-color: #f9f9f9;
}

.webinar-list-cont .webinar-text {
    position: relative;
    padding-top: 0.7rem;
    /* 버튼 줄(등록하기+관심담기, absolute bottom) 공간 예약 — 썸네일 없는 카드는
       텍스트 높이만큼 칼럼이 줄어 버튼이 제목·날짜를 덮었음(2026-08-20).
       썸네일 있는 카드는 이미지 높이로 충분히 늘어나 시각 변화 없음. 모바일(4405행 3rem)과 동일 처리 */
    padding-bottom: 3.4rem;
}

.webinar-list-cont .webinar-text .tit-txt {
    letter-spacing: -0.2px;
    font-size: 1.05rem;
    color: #111;
    overflow: hidden;
    height: 60px;
    font-weight: 400;
    white-space: normal;
    line-height: 1.5;
    text-align: left;
    word-wrap: break-word;
    word-break: keep-all;
    display: -webkit-box;
    -webkit-box-orient: vertical;
}

.webinar-list-cont .webinar-text .webinar-adate {
    display: block;
    padding-top: 0.7rem;
    color: #666666;
    font-size: 0.9rem;
}

.webinar-list-cont .webinar-text .day-txt {
    font-size: 12px;
    color: #ffffff;
    display: inline-block;
    border-radius: 5px;
    background-color: #12305e; /* 웨비나 홈 디데이(.wbt-dday)와 동일 네이비 (2026-08-20 사용자 지시, 기존 #cc0000) */
    padding: 0px 8px;
    font-weight: bold;
    margin-right: 6px;
}

.webinar-list-cont .webinar-btn {
    position: absolute;
    bottom: 4%;
    width: 95%;
    text-align: right;
}

.webinar-list-cont .webinar-btn .regi-btn {
    display: inline-block;
    width: 30%;
    padding: 3px 0px;
    font-size: 15px;
    font-weight: 500;
    text-align: center;
    color: #ffffff;
    background-color: #cc0000;
    border: 0;
}

/* 목록 버튼 라운드 — 상세(wd-reg·wbk-btn 라운드 버튼)와 통일감(2026-08-20 사용자 지시).
   높이 30px 고정 — 관심담기는 테두리 1.5px 탓에 등록하기보다 3px 커서 나란히 두면 어긋나 보임 */
.webinar-list-cont .webinar-btn .regi-btn {
    border-radius: 8px;
    height: 30px;
    line-height: 24px;
    box-sizing: border-box;
}

/* 버튼 줄 상단 정렬 — 관심담기 래퍼는 클릭 후 안내문이 아래 붙어 키가 커지는데,
   기본 baseline 정렬이면 안내문 줄에 등록하기가 맞춰져 관심담기 버튼이 위로 밀림(2026-08-20) */
.webinar-list-cont .webinar-btn > .regi-btn,
.webinar-list-cont .webinar-btn > span { vertical-align: top; }
/* 안내문(담았습니다/해제했습니다)을 흐름에서 분리 — 흐름에 두면 나타날 때마다
   bottom 고정인 버튼 줄이 위로 밀려 이동함. 래퍼 기준 절대배치로 버튼 위치 고정 */
.webinar-list-cont .webinar-btn > span { position: relative; }
.webinar-list-cont .webinar-btn > span > span {
    position: absolute;
    top: 100%;
    right: 0;
    white-space: nowrap;
}

/* 관심담기(F3, 2026-08-20 디자인) — 상세 wbk-btn(8910행)과 같은 팔레트/상태 언어.
   ★width:auto 필수 — 공용 .regi-btn의 width:30%가 내용 크기 인라인 래퍼 기준이라
   버튼이 수십 px로 쪼그라들어 라벨이 세로 한 글자씩 깨졌음(적용 전 실측). */
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark {
    width: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 0 14px;
    margin-left: 6px;
    background-color: #ffffff;
    color: #344054;
    border: 1.5px solid #d8dee8;
    /* 계산값은 등록하기와 동일(15px)이나, 빨간 바탕 흰 글자가 광학적으로 더 굵어 보여
       아웃라인 쪽을 600+진한 색으로 보정해야 둘이 같아 보임(2026-08-20 실측·비교) */
    font-size: 15px;
    font-weight: 600;
    white-space: nowrap;
    transition: background-color .15s, border-color .15s, color .15s;
}
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark:hover {
    background-color: #f8fafc;
    border-color: #b9c3d2;
    color: #344054;
}
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark i { color: #98a2b3; }
/* 담긴 상태 — 상세 wbk-btn.is-on과 동일한 블루 채움. 별 색은 컴포넌트 인라인(골드) 상쇄 */
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark[aria-pressed="true"] {
    background-color: #e4f3fb;
    border-color: #bfe4f5;
    color: #0075ad;
}
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark[aria-pressed="true"]:hover {
    background-color: #d3ecf8;
}
.webinar-list-cont .webinar-btn .regi-btn.regi-btn--bookmark[aria-pressed="true"] i { color: #0090d4 !important; }
/* 지난 웨비나(등록하기 없음) — 관심담기 단독일 때도 우측 정렬 유지, 여백 정리 */
.webinar-list-cont.Off-webinar .webinar-btn .regi-btn.regi-btn--bookmark { margin-left: 0; }

.webinar-list-cont.On-webinar {
    background-color: #eeeeff;
}

/* 웨비나 상세만 우측여백 축소 — 공용 .news-content-25n.col-lg-9(60px)보다 특이도 우선 */
.news-content-25n.col-lg-9.webinar-detail-cont {
    padding-right: 40px;
}

.webinar-detail-cont .wbn-detail-head {
    border: 1px solid #00a3e0;
    background-color: #00a3e0;
    margin-bottom: 10px;
    display: table;
    width: 100%;
    color: white;
    padding: 15px 20px;
}

.webinar-detail-cont .wbn-detail-head.offline {
    border: 1px solid #15a561;
    background-color: #15a561;
}

.webinar-detail-cont .wbn-detail-head .longtitle {
    font-size: 16px;
}

.webinar-detail-cont .wbn-detail-title {
    font-weight: 700;
    font-size: 1.6em;
    word-break: keep-all;
}

.webinar-detail-cont .wbn-detail-info {
    padding-top: 11px;
    padding-bottom: 7px;
    text-align: right;
}

.webinar-detail-cont .wbn-detail-info p {
    color: white;
    line-height: 1em;
}

.webinar-detail-cont .wbn-detail-info p .wm_dday {
    padding-right: 20px;
    color: #f9ff00;
}

.webinar-detail-cont .wbn-detail-info p.presenter {
    word-break: keep-all;
    line-height: 1.3;
    padding-top: 7px;
    text-align: right;
}

.webinar-detail-cont .wbn-detail-info .wm_date {
    margin-bottom: 7px;
    text-align: right;
}

.webinar-detail-cont .wbn-detail-snb {
    margin-bottom: 20px !important;
    padding-bottom: 10px;
    border-bottom: 2px solid #00a3e0;
}

.webinar-detail-cont .wbn-detail-snb a {
    display: block;
    width: 50%;
    text-align: center;
    font-size: 17px;
    color: #333333;
    border-left: 1px solid #d8d8d8;
}

.webinar-detail-cont .wbn-detail-snb a:first-child {
    border: 0;
}

.webinar-detail-cont .wbn-detail-snb a.selected {
    font-weight: 500;
    color: #4195f5;
}

.webinar-detail-cont .wbn-desc {
    font-size: 1.15rem;
    font-weight: 300;
    line-height: 1.8;
}

.webinar-detail-cont .btn-reg {
    color: #fff;
    background-color: #cc0000;
    border-color: #aa1339;
    height: 95px;
    padding-top: 30px;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 7px;
    font-weight: 700;
    font-size: 24px;
}

.webinar-detail-cont .btn-event {
    color: #fff;
    background-color: #6a5acd;
    border-color: #5344b0;
    height: 95px;
    padding-top: 30px;
    padding-left: 0;
    padding-right: 0;
    margin-bottom: 7px;
    font-weight: 600;
    font-size: 23px;
    
    i {
        padding-right: 0.3rem;
    }
}

.webinar-detail-cont .btn-reg:focus {
    color: #fff;
    background-color: #cc0000;
    border-color: #aa1339;
}

.webinar-detail-cont .btn-lightgray {
    color: #000;
    background-color: #f2f2f2;
    border-color: #d4d4d4;
}

.webinar-detail-cont .eewebinar_title {
    border-top: 2px solid #337ab7;
    border-bottom: 1px solid #eee;
    padding: 0.6rem 1rem;
    margin-bottom: 1rem;
    color: #337ab7;
    font-size: 1.05rem;
    font-weight: 700;
}

.webinar-detail-cont .recomm .reply {
    background: #fafafa;
    padding: 15px 25px 20px 25px;
    margin-bottom: 1rem;
    overflow: hidden;
    border: 1px solid #eeeeee;
}

.webinar-detail-cont .recomm .reply label {
    padding-bottom: 0.2rem;
}

.webinar-detail-cont .recomm .reply .input-group-btn .btn {
    border-radius: 0;
}

.webinar-detail-cont .recomm .list .total {
    font-size: 1.1rem;
    padding-bottom: 1rem;
}

.webinar-detail-cont .recomm .list .mem-id {
    color: #337ab7;
    margin-bottom: 0.2rem;
}

.webinar-detail-cont .recomm .list .mem-id .cmt-date {
    padding-left: 0.3rem;
    color: #8a8a8a;
    text-transform: uppercase;
    font-size: 13px;
}

.webinar-detail-cont .recomm .list .mem-text {
    border-bottom: 1px solid #eee;
    margin-bottom: 1.5rem;
    padding-bottom: 0.8rem;
    margin-bottom: 0.8rem;
}

.webinar-detail-cont .webinar-detail-top {
    margin-left: -10px;
    margin-right: -10px;
}

.webinar-detail-cont .webinar-video {
    padding-left: 0;
}

.webinar-detail-cont .webinar-btns {
    padding-right: 0;
    padding-left: 30px;
}

.webinar-detail-cont .webinar-btns .wbn-files {
    width: 100%;
}

.webinar-detail-cont .webinar-btns .wbn-files a {
    display: block;
    margin-right: 0 !important;
}

.webinar-detail-cont .webinar-btns .btn-group {
    padding-top: 0.2rem;
}

.webinar-detail-cont .webinar-btns .btn-group .btn {
    padding: 0.3rem 0.45rem;
    margin-right: 0.3rem;
    font-size: 15px;
    color: #111111;
    font-weight: 400;
    border: 1px solid #ddd;
}

.webinar-detail-cont .webinar-btns .btn-group .sns-wrap a {
    display: inline;
}

.webinar-detail-cont .webinar-btns .add-wbn {
    width: 100%;
}

.webinar-detail-cont .webinar-btns .ifpro {
    display: none;
}

.webinar-detail-cont .webinar-btns .payment {
    border: 1px solid #d8d8d8;
    display: inline-block;
    padding: 2px 5px;
    margin-bottom: 5px;
}

.wbn-offline-info .wbn-offline-details {
    padding-top: 2rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(28, 35, 32, 0.3);
    margin-bottom: 1rem;
}

.wbn-offline-info .wbn-offline-details p {
    margin-bottom: 10px;
    font-size: 1.2rem;
}

.wbn-offline-info .wbn-offline-details p i {
    padding-right: 0.5rem;
    border-radius: 6px;
    background-color: #15a561;
    color: #ffffff;
    padding: 0.5rem 0.6rem 0.6rem 0.6rem;
    font-size: 1rem;
    margin-right: 0.5rem;
}

.wbn-offline-info .wbn-offline-details p span {
    color: #15a561;
    margin-right: 0.4rem;
}

.wbn-offline-info .wbn-offline-details .loc {
    padding-bottom: 0;
    margin-bottom: 10px;
}

.wbn-desc .btn-webinar {
    display: inline-block;
    margin-top: 1.5rem;
    background-color: #1c2320;
    color: #02ff87;
    border-radius: 8px;
    padding: 8px 30px;
    font-size: 1.2rem;
}

/* 웨비나 정보 */
.wbn-desc,
.wbn_gift {
    padding: 15px 0;
}

.wbn-desc.img-auto img {
    display: block;
    margin: 0px auto;
    height: auto !important;
}

/* 2024-10-22 kbc  */
.wbn-desc,
.wbn-desc p,
.wbn-desc div,
.wbn-desc span,
.wbn-presenter,
.wbn-presenter span {
    font-size: 18px !important;
    line-height: 1.7;
}

.wbn-gift img {
    margin-top: 20px;
    margin-bottom: 20px;
}

.wbn_speaker {
    width: 100%;
    margin-bottom: 10px;
}

.wbn_speaker th {
    border: 1px solid #888;
    width: 15%;
    text-align: center;
    font-weight: bold;
    color: #333;
}

.wbn_speaker td {
    width: 85%;
    background: #777;
    border: 1px solid #777;
    color: #fff;
    padding: 6px 10px 6px 15px;
    line-height: 130%;
}

.wbn-desc .tbl_type {
    width: 100%;
    border-bottom: 1px solid #000;
    font-size: 0.85rem;
    border-collapse: collapse;
    margin: 10px 0 10px 0;
}

.wbn-desc .tbl_type caption {
    display: none;
}

.wbn-desc .tbl_type tfoot {
    background-color: #f5f7f9;
    font-weight: bold;
}

.wbn-desc .tbl_type th {
    padding: 10px 4px 10px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    border-left: 1px solid #000;
    background-color: #f5f7f9;
    color: #666;
    font-size: 12px;
    font-weight: bold;
    text-align: center;
}

.wbn-desc .tbl_type td {
    padding: 8px 6px 6px;
    border: 1px solid #000;
    color: #4c4c4c;
}

.wbn-desc .tbl_type2 {
    width: 100%;
    color: #333333;
    border-top: 1px solid #5a83b1;
    border-left: #ddd 1px solid;
    border-right: #ddd 1px solid;
}

.wbn-desc .tbl_type2 th {
    border-bottom: #ddd 1px solid;
    background-color: #ececec;
    padding: 9px 7px;
    color: #3b341d;
    color: #384c80;
}

.wbn-desc .tbl_type2 td {
    border-bottom: #ddd 1px solid;
    text-align: center;
    padding: 7px;
    background-color: #fff;
    font-weight: bold;
}

.wbn-desc .tbl_type3 {
    font-size: 12px;
    width: 100%;
    color: #333333;
    margin-top: 20px;
    margin-bottom: 10px;
}

.wbn-desc .tbl_type3 th {
    border-top: 2px solid #666666;
    border-right: #b9b9b9 1px solid;
    border-left: #b9b9b9 1px solid;
    border-bottom: #ddd 1px solid;
    background-color: #ececec;
    padding: 9px 7px;
    color: #333333;
}

.wbn-desc .tbl_type3 td {
    border: #ddd 1px solid;
    text-align: center;
    padding: 7px;
}

.wbn-desc .tbl_type4 {
    font-size: 12px;
    width: 100%;
    color: #333333;
    border-top: #ccc 1px solid;
    margin-bottom: 15px;
}

.wbn-desc .tbl_type4 th {
    border-right: #666666 2px solid;
    border-bottom: #ccc 1px solid;
    background-color: #ececec;
    padding: 11px 7px;
    color: #666;
    font-size: 11px;
}

.wbn-desc .tbl_type4 td {
    border-bottom: #ccc 1px solid;
    text-align: left;
    padding: 8px 7px 7px 20px;
}

.wbn-desc a.link01 {
    color: #006699;
    text-decoration: underline;
}

/*웨비나 직급 및 이름 css*/
.wbn_presenter_right {
    text-align: right;
    margin-bottom: 10px;
}

.wbn_presenter_right .wbn_presenter_class {
    font-size: 15px;
    color: #161616;
}

.wbn_presenter_right .wbn_presenter_name {
    font-size: 1.1rem;
    font-weight: 700;
    text-decoration: underline;
    letter-spacing: -1px;
    color: #000;
}

/*수강신청*/
.reg-preview h3 {
    font-size: 2rem;
    font-weight: 600;
    margin-top: 1rem;
}

.reg-preview form {
    padding-left: 0;
    padding-right: 0;
}

.reg-preview h5 {
    padding-left: 0.3rem;
    font-size: 1.1rem;
    font-weight: 600;
}

.reg-preview .table-regist-preview {
    margin-bottom: 2rem;
    border-top: 1px solid #000;
}

.reg-preview .table-regist-preview th {
    background-color: #fbfcfe;
    text-align: center;
    color: #375c96;
    font-weight: 400;
}

.reg-preview .table-regist-preview td {
    font-weight: 300;
    padding-left: 1rem;
}

.reg-preview .btn-primary {
    padding-left: 3rem;
    padding-right: 3rem;
}

.point-box {
    border: 1px solid #dee2e6;
    padding-left: 0;
    padding-right: 0;
    margin-top: 2rem;
}

.point-box .title {
    background-color: #f1f1f1;
    font-size: 1.2rem;
    font-weight: 500;
    padding: 0.5rem 1.5rem;
}

.point-box .point-link {
    padding: 1rem 1.5rem;
}

.point-box .point-link p {
    padding: 0.2rem 0;
    font-size: 1.05rem;
}

.point-box .point-link p .btn {
    border: 1px solid;
    padding: 0.2rem 1.3rem;
    margin-left: 1rem;
}

/*사전설문*/
.presurvey .alert-warning {
    font-size: 1.1rem;
}

.presurvey .btn-danger {
    font-size: 1.2rem;
    border-radius: 0;
    padding: 0.6rem 1.8rem;
}

.seminar_blue_box {
    border: 1px solid #00a3e0;
    background-color: #00a3e0;
    margin-bottom: 10px;
    display: table;
    width: 100%;
    color: white;
    padding: 18px 20px;
    margin-top: 2rem;
}

.seminar_blue_box p {
    color: white;
    line-height: 1em;
}

ul.poll_list {
    padding-left: 1rem;
}

ul.poll_list li {
    padding-bottom: 3rem;
}

ul.poll_list li p.poll_q {
    font-size: 1.2em;
    font-weight: 400;
    color: #222;
    word-break: keep-all;
}

ul.poll_list li ol li {
    font-size: 1.1em;
    padding-bottom: 0.3rem;
}

ul.poll_list li ol li input {
    margin-right: 1rem;
}

/* 웨비나 설문 */
.wbn-survey {
    margin-top: 30px;
}

.wbn-survey-form {
    margin: 10px 0;
}

.wbn-survey-form .survey_question {
    font-size: 1.2em;
    padding-left: 20px;
}

.wbn-survey-form ol {
    margin: 0 !important;
}

.wbn-qna {
    margin-top: 30px;
}

.wbn-qna li.user_q {
    padding: 15px 5px 14px 40px;
    background: url(/assets/img/i_q.png) 10px 21px no-repeat;
}

.wbn-qna li.seminar_a {
    padding: 15px 5px 14px 40px;
    background: #eee url(/assets/img/i_a.png) 10px 21px no-repeat;
    border-bottom: 1px solid #ccc;
}

.wbn-qna .user_id {
    color: #1a619a;
}

.wbn-qna li p {
    margin-bottom: 5px;
}

.wbn-qna li span.time {
    color: #888;
    margin-left: 30px;
    font-size: 12px;
}

.wbn-qna .wbn_qna_list {
    padding-left: 0;
}

/* key seminar 2017-08-08*/
.ilive {
    margin-top: 30px;
}

#tabs ul li {
    float: left;
}

#tabs ul.subject {
    margin: 30px 0 11px 0;
    padding: 0;
    height: 40px;
    border-bottom: 1px solid #d7dee4;
}

#tabs ul.subject li:first-child a {
    margin-left: 0;
    border-right: 1px solid #d7dee4;
}

#tabs ul.subject li:last-child a {
    border-right: 1px solid #d7dee4;
}

#tabs ul.subject li a {
    display: block;
    padding-right: 25px;
    padding-left: 25px;
    background-color: #fff;
    border: 1px solid #d7dee4;
    border-right: 0;
    margin-left: -1px;
    height: auto;
    padding-top: 10px;
    padding-bottom: 10px;
    color: #004b87;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    line-height: 18px;
    transition: all 0.3s;
}

#tabs ul.subject li a:hover {
    background-color: #e7eef6;
}

#tabs ul.subject li.active a {
    background-color: #004b87;
    color: #fff;
    font-size: 14px;
    border: 1px solid #004b87;
}

.keyseminar p.date {
    width: 88px;
    height: 28px;
    padding: 2px;
    float: left;
    text-align: center;
    background-color: #07b17f;
    color: #fff;
    vertical-align: middle;
}

.keyseminar input.check_box {
    float: left;
    width: 21px;
    height: 21px;
    margin-left: 14px;
    margin-top: 0;
}

.keyseminar span.complete {
    display: inline-block;
    text-align: center;
    width: 88px;
    height: 28px;
    padding: 4px;
    margin-left: 15px;
    background-color: #a1a1a1;
    color: #fff;
}

.keyseminar .caption h5 {
    min-height: 48px;
}

.keyseminar .caption h5 a {
    padding-top: 0.3rem;
    font-size: 0.95rem;
    font-weight: 400;
    color: #111111;
    line-height: 1.4;
}

.keyseminar .caption p {
    font-size: 0.88rem;
}

.keyseminar .caption .btn_watching {
    background-color: #040440 !important;
    border: 0;
    padding: 0.2rem 1rem;
    font-size: 0.88rem;
}

.keyseminar .btn_survey {
    background-color: #040440 !important;
    border: 0;
}

.thumbnail {
    display: block;
    padding: 4px;
    margin-bottom: 20px;
    line-height: 1.42857143;
    border-radius: 4px;
    transition: border 0.2s ease-in-out;
    min-height: 275px;
}

.thumbnail h5 a {
    min-height: 33px;
    display: inline-block;
}

.btn-submit-area {
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #bbb;
    padding: 20px 0 20px 0;
    margin: 0 0 20px 0;
}

.bestqna {
    margin-top: 30px;
}

.bestqna .list {
    border-bottom: 1px solid #ccc;
}

.bestqna .list .semi {
    margin-top: 10px;
    padding-top: 10px;
    padding-bottom: 6px;
    border-bottom: 1px solid #ccc;
}

.bestqna .list .semi .semi-company-logo {
    padding-bottom: 10px;
}

.bestqna .list .semi .qa.answer .cont {
    padding: 8px 8px 8px 36px;
    text-align: justify;
    word-break: break-all;
    line-height: 150%;
    background: #ebf1f5 url(/assets/img/icon_reply.png) 15px 9px no-repeat;
}

.bestqna .list .semi .qa.answer .cont span {
    color: #087edc;
    font-weight: bold;
}

.bestqna .list .semi .qa.question .cont span {
    font-weight: bold;
}

.bestqna .list .semi .qnaCont h4 a {
    color: #111111;
    font-size: 1.3rem;
    font-weight: 600;
}

.bestqna .list .semi .cont {
    font-size: 0.85rem;
    font-weight: 400;
}

.bestqna .list .semi .btn-secondary {
    border-radius: 4px;
}

.bestqna .table .icon-file {
    width: 9%;
}

/* 2025-04-16 */
.agreement-modal-wrap {
    background-color: #fff;
    padding: 1.5rem 0 8rem 0;
}

.agreement-modal-wrap .title {
    font-size: 1.7rem;
    font-weight: 700;
    color: #000;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #333;
}

.agreement-modal-wrap .btn-lg {
    font-size: 1.1rem;
    padding: 0.6rem 2.5rem;
    margin-top: 1rem;
}

/* 모달의 기본 스타일 */
.agg_popup {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    padding: 20px;
    z-index: 1001;
    width: 80%;
    max-width: 1000px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    max-height: 80%;
    overflow: auto;
}

.agg_popup .f-15 {
    font-size: 15px;
    line-height: 1.5;
    color: #222;
}

/* 배경 어둡게 처리 */
.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1000;
    display: none;
}

/* 닫기 버튼 스타일 */
.close {
    cursor: pointer;
    float: right;
    font-size: 18px;
    font-weight: bold;
    opacity: 0.7;
}

/* 모달 내의 테이블 스타일 */
.agg_popup table {
    width: 100%;
    border-collapse: collapse;
    /* 테이블 경계선 중복 방지 */
    margin-top: 15px;
    margin-bottom: 15px;
}

.agg_popup table td a {
    color: #0a8276;
    font-size: 18px;
    display: inline;
}

.agg_popup table td b {
    color: #0a8276;
    font-size: 18px;
}

.agg-popup-title {
    padding-bottom: 8px;
    font-size: 18px;
}

.agg-popup-title b {
    color: #000;
}

.agg_popup b {
    padding-bottom: 1rem;
}

.agg-popup-p1 {
    font-size: 15px;
    padding-top: 4px;
    line-height: 1.3;
}

/* 테이블 헤더 스타일 */
.agg_popup th {
    background-color: #f2f2f2;
    /* 헤더 배경색 */
    color: #333;
    /* 헤더 텍스트 색상 */
    padding: 10px 15px;
    border: 1px solid #ddd;
    /* 헤더 경계선 */
    text-align: left;
    font-weight: 500;
    font-size: 15px;
}

.agg_popup td {
    padding: 12px;
    border: 1px solid #ddd;
    /* 셀 경계선 */
    vertical-align: top;
    font-size: 15px;
    color: #222;
    line-height: 1.4;
    word-break: keep-all;
}

.agg_popup table td.policy4 a {
    font-size: 15px !important;
}

.agg_popup tr:nth-child(even) {
    background-color: #fafafa;
    /* 짝수 줄 배경색 */
}

.agg_popup u {
    color: #111111;
    /* 원하는 색상으로 변경 가능 */
    text-decoration: underline;
    /* 밑줄 유지 */
    font-weight: 500;
    /* 강조를 위해 굵게 */
}

.agg_popup .c-black.fz-18,
.agg_popup .fz-18 {
    font-size: 18px;
}

.agg_popup .c-black u {
    color: #000 !important;
}

/* 테이블 셀 스타일 */
/* 테이블 줄 간격 */
/* 강조된 <u> 요소 색상 */
/* 2025-01-23 */
/* 인피니언 개인정보 동의 */
.agreement_addition.infineon {
    padding-top: 2rem;
    font-size: 15px;
    position: relative;
}

.agreement_addition.infineon .aga_ch5korea {
    background: #f7f7f7;
    padding: 1rem 2rem;
    margin-bottom: 1rem;
}

.aga_infineon {
    padding: 0 0 2rem 0;
    border-bottom: 1px solid #333;
    margin-bottom: 1rem;
}

.aga_infineon>div {
    padding: 0.7rem 0 0.7rem 1rem;
    line-height: 1.5;
    word-break: keep-all;
}

.aga_infineon>div a {
    display: inline;
    text-decoration: underline;
}

.box_agrees .agreement_addition.infineon input+label em {
    background: none;
}

.box_agrees .agreement_addition.infineon input[type="checkbox"] {
    width: 17px;
    height: 17px;
    margin-left: 1rem;
}

.box_agrees .agreement_addition.infineon label {
    font-size: 15px;
}

.ag-all {
    position: absolute;
    bottom: 1.5rem;
    left: 1.4rem;
}

.ag-all .ag0>div:last-child {
    padding-left: 2.5rem;
}

.btn_wrap .regist_box {
    width: 250px;
    height: 52px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 0;
    margin-bottom: 6rem;
}

.btn_wrap .regist_box button {
    font-size: 22px;
    line-height: 43px;
}

.carousel.slide {
    margin-bottom: 2rem;
}

.carousel-control-next,
.carousel-control-prev {
    width: 4%;
}

.carousel-control-next-icon,
.carousel-control-prev-icon {
    width: 1.6rem;
    height: 1.6rem;
}

.aside-25n.col-lg-3 .webinarBtn {
    padding-left: 0;
    padding-bottom: 3rem;
}

.aside-25n.col-lg-3 .webinarBtn .ws_desc {
    margin-bottom: 1rem !important;
}

.aside-25n.col-lg-3 .webinarBtn .ws_desc .ws_title {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.3;
    padding-bottom: 0.5rem;
}

/* 연결 웨비나 aside(webinar.css .ws_date/.ws_company 이식) */
.aside-25n.col-lg-3 .webinarBtn .ws_desc .ws_date {
    color: #333;
}

.aside-25n.col-lg-3 .webinarBtn .ws_desc .ws_company {
    color: #999;
}

.aside-25n.col-lg-3 .webinarBtn .btn-group-justified {
    width: 49.3%;
}

.aside-25n.col-lg-3 .webinarBtn .btn-lightgray {
    border: 1px solid #ddd;
    font-size: 0.875rem;
    font-weight: 500;
    padding: 0.3rem 0.8rem;
    border-radius: 4px;
}

.aside-25n.col-lg-3 .webinarBtn .btn-lightgray i {
    padding-right: 0.3rem;
}

.aside-25n.col-lg-3 .webinarBtn .btn-group .btn-sns i {
    font-size: 2rem;
    margin-right: 0.3rem;
}

@media screen and (max-width: 767px) {
    .webinar-detail-cont .wbn-detail-info .wm_date {
        text-align: left;
    }

    .webinar-detail-cont .wbn-detail-info p.presenter {
        text-align: left;
        padding-top: 3px;
        padding-bottom: 5px;
    }

    .agreement-modal-wrap {
        background-color: #fff;
        padding: 2rem 1.5rem 8rem 1.5rem;
    }

    .agreement_addition.infineon {
        font-size: 13px;
    }

    .agreement_addition.infineon .aga_ch5korea {
        padding: 1rem 1rem 1rem 1rem;
        margin-bottom: 1rem;
        line-height: 1.4;
    }

    .aga_infineon>div {
        padding: 1rem 0 0.7rem 1rem;
        line-height: 1.4;
    }

    .box_agrees .agreement_addition.infineon input[type="checkbox"] {
        width: 17px;
        height: 17px;
        margin-left: 0;
    }

    .box_agrees .agreement_addition.infineon label {
        font-size: 13px;
    }

    .aga_infineon>div {
        display: block;
    }

    .aga_infineon .w1 {
        width: 100%;
    }

    .aga_infineon>div {
        word-break: keep-all;
    }

    .ag-all .ag0>div:last-child {
        padding-left: 0;
    }

    .agg_popup {
        height: 700px;
        overflow: auto;
    }

    .agg_popup div p {
        line-height: 1.3;
    }

    .agg_popup .close {
        font-size: 16px;
    }

    .agg_popup th {
        font-size: 12px;
        padding: 5px;
    }

    .agg_popup td {
        font-size: 12px;
        padding: 5px;
        word-break: break-all;
    }

    .agg_popup .c-black.fz-18,
    .agg_popup .fz-18 {
        font-size: 15px;
    }

    .agg-popup-p1 {
        font-size: 12px;
    }

    .agg_popup table td a {
        font-size: 15px;
    }

    .agg_popup table td a b {
        font-size: 15px;
    }

    .agg-popup-title {
        font-size: 15px;
    }

    .agg_popup table td.policy4 a {
        font-size: 12px !important;
    }

    .webinar-inner .col {
        padding-left: 0;
        padding-right: 0;
    }

    .webinar-inner img {
        width: 100%;
    }

    #tabs ul.subject li a {
        line-height: 18px;
        height: 58px;
        overflow: hidden;
    }

    .wbn-field-item {
        width: 48%;
        float: left;
        margin-left: 1%;
        margin-right: 1%;
    }

    .wbn-field-item a {
        font-size: 13px !important;
    }

    .webinar-detail-cont {
        padding-right: 0;
    }

    .webinar-detail-cont .webinar-video {
        padding-left: 0.75rem;
    }

    .webinar-detail-cont .webinar-video iframe {
        height: 230px !important;
    }

    .webinar-detail-cont .webinar-btns {
        padding-top: 1rem;
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    .webinar-detail-cont .webinar-btns .btn-group {
        position: relative;
        display: block;
    }

    .webinar-detail-cont .webinar-btns .btn-group .btn {
        padding-top: 0.6rem;
        padding-bottom: 0.6rem;
    }

    .webinar-detail-cont .webinar-btns .btn-group .btn-thumbup {
        margin-right: 50px;
    }

    .webinar-detail-cont .webinar-btns .btn-group .sns-wrap {
        display: inline-flex;
        position: absolute;
        right: 0;
        width: 117px;
    }

    .webinar-detail-cont .webinar-btns .btn-group .sns-wrap .btn-sns-fb {
        margin-left: 0.7rem;
        margin-right: 0.7em;
    }

    .webinar-detail-cont .webinar-btns .btn-group .sns-wrap a img {
        max-width: 43px;
    }

    .webinar-detail-cont .wbn-detail-title {
        font-size: 1.4rem;
        padding-bottom: 0.4rem;
    }

    .webinar-detail-cont .wbn-desc {
        font-size: 1rem !important;
    }

    .webinar-detail-cont .wbn-desc div {
        font-size: 1rem !important;
    }

    .webinar-tab .nav-item .nav-link {
        padding: 0.6rem;
    }

    .webinar-tab-content {
        padding-top: 3rem;
    }

    .webinar-tab-content .more {
        top: 8px;
    }

    .webinar-tab-content .dot {
        display: block;
    }

    .webinar-tab-content .techvideo-box {
        padding-bottom: 2rem;
    }

    .webinar-tab-content .technote-row .btn {
        line-height: 1.1;
    }

    .webinar-tech-btn {
        text-align: center;
    }

    .webinar-tech-btn div {
        margin-bottom: 1.3rem;
    }

    .webinar_tech-reply .recomm .input-group-btn input {
        padding-left: 0.7rem;
        padding-right: 0.7rem;
    }

    .webinar-list {
        padding-right: 0.75rem !important;
    }

    .webinar-list .webinar-list-cont .webinar-img a img {
        width: 100%;
    }

    .webinar-list .webinar-list-cont .webinar-text {
        padding-bottom: 3rem;
    }

    .webinar-list .webinar-list-cont .webinar-text .tit-txt {
        padding-top: 0.5rem;
        height: auto;
    }

    .webinar-list .webinar-list-cont.On-webinar,
    .webinar-list .webinar-list-cont.Off-webinar {
        margin-left: 0;
        margin-right: 0;
    }

    .search-box-mobile {
        padding-bottom: 1rem;
    }

    .search-box-mobile input.form-control {
        display: inline-block;
        width: 80%;
    }

    .search-box-mobile .btn-u {
        width: 20%;
    }

    .aside-25n.col-lg-3 .webinarBtn .btn-reg {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }
}

@media screen and (min-width: 768px) {
    .bestqna .list .semi .qnaCont {
        padding-left: 20px;
    }
}

@media (min-width: 992px) {
    .col-lg-2.wbn-field-item {
        flex: 0 0 auto;
        width: 19.2%;
        margin: 0.4%;
    }

    .col-lg-2.wbn-field-item a {
        letter-spacing: -0.5px;
        font-size: 15px;
        font-weight: 300;
    }
}

@media (max-width: 991px) {
    .wbn-field-item {
        margin-bottom: 1rem;
    }

    .webinar-list .webinar-list-search .form-select {
        display: block;
        width: 100%;
        margin-bottom: 0.3rem;
    }

    .webinar-list .webinar-list-search .form-control {
        width: 80%;
        float: inline-start;
    }

    .webinar-list .webinar-list-search .btn-u {
        width: 18.8%;
    }

    .wbn-offline-info .wbn-offline-details p {
        margin-bottom: 10px;
        font-size: 1rem;
        position: relative;
        padding-left: 97px;
    }

    .wbn-offline-info .wbn-offline-details p i {
        position: absolute;
        left: 0;
    }

    .wbn-offline-info .wbn-offline-details p span {
        position: absolute;
        left: 47px;
        top: 3px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .webinar-detail-cont {
        padding-right: 0;
    }

    .webinar-detail-cont .webinar-video {
        padding-left: 0.75rem !important;
    }

    .webinar-detail-cont .webinar-btns {
        padding-left: 0;
    }

    .webinar-detail-cont .webinar-btns .btn-group {
        display: block;
    }

    .webinar-detail-cont .webinar-btns .btn-group .sns-wrap {
        padding-top: 0.2rem;
    }

    .wbn-qna .wbn_qna_list {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    .bestqna .list .semi .qnaCont {
        padding-left: 14px;
        padding-top: 1rem;
    }

    .webinar-list .col-lg-9 {
        width: 75%;
    }

    .out-banner .inc {
        text-align: center;
    }

    .out-banner .inc img {
        width: 200px !important;
        padding-bottom: 1rem;
    }

    .webinar-detail-cont .wbn-detail-info .wm_date {
        text-align: left;
    }

    .webinar-detail-cont .wbn-detail-info p.presenter {
        text-align: left;
        padding-top: 3px;
        padding-bottom: 5px;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .col-lg-2.wbn-field-item {
        height: 47px;
    }

    .webinar-detail-cont .webinar-btns .btn-group {
        display: block;
    }

    .webinar-detail-cont .webinar-btns .btn-group .sns-wrap {
        margin: 0.3rem 0 0.2rem 0;
    }

    .webinar-video {
        padding-left: 0.75rem;
    }

    .webinar-video iframe {
        height: 250px !important;
    }

    .aside_login .save a {
        padding-left: 1px !important;
        padding-right: 1px !important;
    }

    .webinar-list .col-lg-9 {
        width: 75%;
        padding-right: 0 !important;
        padding-right: 0 !important;
    }

    .lmenu-pc ul {
        margin-right: 0;
    }
}

/*================================================
Default CSS
=================================================*/
/*================================================
member CSS
=================================================*/
.member-area {
    width: 72%;
}

.member-area h2 {
    font-weight: 700;
}

/* 정보수정 폼 하단 버튼 — 푸터와 간격 확보 (m_modi_form/기업·서치펌 수정 공통) */
.member-area .btn-area {
    margin-top: 24px;
    margin-bottom: 64px;
}

.member-area h3 {
    font-weight: 600;
}

.member-area .btn {
    background-color: #2f68c2;
    border: 1px solid #2f68c2;
    color: #ffffff;
    padding: 0.7rem 2.5rem;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    border-radius: 0;
    text-transform: uppercase;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 1.1rem;
}

.member-area .btn.btn-outline-secondary {
    color: #6c757d;
    background-color: transparent;
    background-image: none;
    border-color: #6c757d;
    color: #484848;
}
.member-area .btn.btn-outline-secondary:hover {
    color: #ffffff;
    background-color: #6c757d;
}

.member-area .btn.btn-sm {
    padding: .25rem .5rem;
    font-size: 0.93rem;
    line-height: 1.5;
    border-radius: .1rem;
}

.cs-area .cs-area-search {
    position: relative;
    background-color: #f1f1f1;
    padding-bottom: 18px;
}

.cs-area .cs-area-search .input-group {
    width: 80%;
    margin: 0 auto;
    padding-top: 1.5rem;
}

.cs-area .cs-area-search .kwd {
    padding-top: 1rem;
    text-align: center;
}

.cs-area .cs-area-search .kwd span {
    margin-right: 1rem;
    font-weight: 700;
}

.cs-area .cs-area-search .kwd a {
    display: inline;
    color: #444444;
    padding: 0 0.3rem;
    font-weight: 300;
}

.cs-area .cs-area-search .more-all {
    position: absolute;
    right: 1.5rem;
    bottom: 1rem;
    color: #2f68c2;
}

.cs-area .cs-area-search .input-group-btn .btn-u {
    line-height: 46px;
}

.cs-faq-list {
    padding-top: 3rem;
}

.cs-faq-list h3 {
    font-size: 26px;
}

.cs-faq-list .cs-tab {
    padding: 1.5rem 0 0 0;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid #d9d9d9;
}

.cs-faq-list .cs-tab li button,
.cs-faq-list .cs-tab li a {
    position: relative;
    padding: 0.8rem 2.5rem;
    color: #666666;
    border: none;
    font-size: 1.05rem;
}

.cs-faq-list .cs-tab li button:hover,
.cs-faq-list .cs-tab li a:hover {
    color: #2f68c2;
}

.cs-faq-list .cs-tab li button.active {
    color: #2f68c2;
}

.cs-faq-list .cs-tab li button.active::before {
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    border-bottom: 5px solid #2f68c2;
}

.cs-faq-list .cs-tab .active a {
    color: #2f68c2;
}

.cs-faq-list .cs-tab .active a::before {
    content: "";
    bottom: 0;
    left: 0;
    right: 0;
    position: absolute;
    border-bottom: 5px solid #2f68c2;
}

.cs-faq-list .tab-content ul {
    padding-left: 0;
    padding-bottom: 2rem;
}

.cs-faq-list .tab-content ul li {
    list-style: none;
    line-height: 1.8;
    padding: 0.9rem 0 0.9rem 1rem;
    border-bottom: 1px solid #ececec;
}

.cs-faq-list .tab-content ul li a {
    color: #232323;
}

.cs-faq-list .tab-content ul li a span {
    margin-right: 0.6rem;
}

.mypage-area {
    padding-right: 60px;
}

.mypage-area h2 {
    font-weight: 700;
}

.mypage-area .col-lg-6 {
    padding-right: 1.5rem;
}

.mypage-area .btn-danger {
    margin-top: 2rem;
    margin-bottom: 2rem;
    border-radius: 0;
    font-size: 0.88rem;
    padding-left: 2rem;
    padding-right: 2rem;
}

.mypage-area .btn.btn-info {
    padding: 0.3rem 1rem;
    margin-left: 1rem;
    font-size: 0.88rem;
    font-weight: 500;
}

.mypage-area .btn-outline-secondary {
    border: 1px solid;
    padding: 0.3rem 1rem;
}

.page-header.mypage {
    padding-top: 2rem;
    padding-bottom: 2rem;
    margin-bottom: 0.7rem;
}

.page-header.mypage .page-header-title {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 0;
}

.page-header.mypage .btn-sm {
    color: #ffffff;
    padding: 0.35rem 1.2rem;
    display: inline-block;
    cursor: pointer;
    outline: 0;
    border-radius: 0.25rem;
    text-transform: uppercase;
    transition: 0.5s;
    position: relative;
    z-index: 1;
    font-weight: 400;
    font-size: 1rem;
    margin-left: 0.5rem;
}

.page-header.mypage .btn-point {
    background-color: #ff5b5b;
    border: 1px solid #ff5b5b;
}

.page-header.mypage .btn-point span {
    background-color: #fff;
    color: #ff5b5b;
    border-radius: 0.25rem;
    font-size: 14px;
    padding: 0.2rem 0.5rem;
    margin-left: 0.3rem;
}

.page-header.mypage .btn-winner {
    background-color: #536de6;
    border: 1px solid #536de6;
}

.mypage-tab {
    margin-bottom: 1.2rem;
}

.mypage-tab .btn-group {
    width: 100%;
    display: block;
    border-bottom: 1px solid #e7e8eb;
    border-radius: 0;
    padding-bottom: 1rem;
}

.mypage-tab span {
    position: relative;
    font-size: 1.3rem;
    font-weight: 700;
    padding-right: 1rem;
}

.mypage-tab span:after {
    content: "";
    display: block;
    width: 2px;
    height: 18px;
    background: #444;
    right: 0;
    top: 13%;
    position: absolute;
}

.mypage-tab a {
    font-size: 1rem;
    padding: 0.2rem 0.4rem 0 0.5rem;
    font-weight: 400;
}

.mypage-tab a.active {
    color: #2f68c2;
    font-weight: 500;
}

.mypage-tab a.active::after {
    content: "";
    width: 100%;
    position: absolute;
    bottom: -16px;
    left: 0;
    border-top: 3px solid #2f68c2;
}

.mypage-list {
    border: 1px solid #e7e8eb;
    border-radius: 0.5rem;
    box-shadow: 0 0.375rem 0.55rem rgba(140, 152, 164, 0.075);
}

.mypage-list h5 {
    position: relative;
    background-color: #f8fafd;
    padding: 0.7rem 1rem 0.5rem 1rem;
    font-size: 1rem;
    border-bottom: 1px solid #eef0f7;
    border-top-right-radius: 0.5rem;
    border-top-left-radius: 0.5rem;
}

.mypage-list h5 .more {
    position: absolute;
    right: 1rem;
    top: 0.7rem;
    font-size: 13px;
    color: #666666;
}

.mypage-list .card {
    border: none;
}

.mypage-list .card .card-body {
    color: #666666;
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    line-height: 2;
}

.mypage-list .card .card-body a {
    color: #444444;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mypage-list .card .card-body .col-lg-3 {
    font-size: 0.85rem;
    font-weight: 300;
}

.my-webinar {
    margin-bottom: 40px;
}

.my-webinar .my-webinar-title {
    font-weight: 600;
}

.my-webinar .my-webinar-date span {
    position: relative;
    display: inline-block;
    margin-right: 1rem;
    font-weight: 300;
}

.my-webinar .my-webinar-date span::after {
    display: inline-block;
    content: "";
    width: 1px;
    height: 10px;
    background-color: #e1e1e1;
    margin-right: -5px;
    margin-left: 10px;
}

.my-webinar .my-webinar-desc a {
    padding-top: 0.2rem;
    color: #444444;
    font-size: 0.94rem;
    line-height: 1.5;
    font-weight: 400;
}

.my-webinar .print {
    display: inline-block;
    font-size: 1rem;
    background-color: #10c469;
    border: 1px solid #10c469;
    color: #ffffff;
    padding: 10px 20px;
    margin-top: 0.6rem;
    border-radius: 0;
}

.alert.alert-light {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
}

.webinarInfo {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #ddd;
}

.webinarInfo .title {
    font-weight: 600;
    font-size: 16px;
}

.qnaCont .cont {
    margin: 10px 0;
    border: 0 solid #aaa;
}

.qnaCont .cont .userid {
    font-weight: 700;
    color: #111111;
}

.cont.answer {
    padding-left: 30px;
}

.cont.answer .owner {
    color: #46b8da;
}

.table-basic .paid-webinar-title {
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 15px;
    line-height: 1.5;
    text-align: left;
}

   

/*================================================
login CSS
=================================================*/
.login-form {
    padding-right: 5rem !important;
    padding-left: 0 !important;
    max-width: none;
    box-shadow: none;
}

.login-form h1 {
    font-weight: 700;
    padding-bottom: 2rem;
}

.login-form h1 span {
    display: block;
    font-size: 1.1rem;
    font-weight: 500;
}

.login-form form .container_loginbox {
    margin-left: auto;
    margin-right: auto;
    width: 60%;
}

.login-form form .container_loginbox .form-group .form-control {
    padding-left: 90px;
}

.login-form form .container_loginbox .form-group label {
    width: 60px;
    background-color: #ffffff !important;
    border: 1px solid #eee;
    left: auto;
}

.login-form form .container_loginbox .form-group label i {
    font-size: 1.1rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.login-form form .container_loginbox .btn-gray {
    background-color: #7d7d7d;
}

.login-form form .container_loginbox .btn-charcoal {
    background-color: #232323;
}

.login-form.only {
    padding-left: 1.9rem !important;
    padding-right: 1.9rem !important;
}

.login-form.only .btn-login {
    width: 100%;
    height: 120px;
    border: none;
    margin-top: 0;
}

.login-form.only .mem-idpw {
    padding-left: 10px;
}

.login-form.only .mem-idpw div {
    padding: 5px 0;
    text-align: left;
    margin-top: 0.6rem;
}

.login-form.only .mem-idpw div a {
    display: inline;
    margin-left: 1.2rem;
    font-size: 15px;
    background: none;
    padding: 0.1rem;
    color: #7d7d7d;
    border-bottom: 1px solid #7d7d7d;
}

.find-id-inner {
    padding-bottom: 50px;
}

.find-id-inner .find-id-txt {
    padding-top: 100px;
    padding-bottom: 20px;
    background: url("../img/ic_find_id.png") no-repeat center 5px;
    font-size: 18px;
    letter-spacing: -1px;
}

.find-id-inner .find-id-txt span {
    display: block;
    padding-top: 15px;
    text-align: center;
    font-size: 21px;
    font-weight: 600;
    color: #1076be;
}

.find-id-inner .find-id-txt .btn {
    margin-top: 0 !important;
    border-radius: 0;
    line-height: 52px;
    padding: 0 23px !important;
    font-size: 15px;
    font-weight: 500;
    margin-left: 5px;
    margin-right: 5px;
    letter-spacing: normal;
}

.find-id-inner .find-id-txt .btn-charcoal {
    background-color: #232323;
}

.find-id-inner .form-cell-box .form-cell {
    padding: 10px;
}

.find-id-inner .form-cell-box .form-cell label {
    width: 130px;
}

.find-id-inner .form-cell-box .form-cell input {
    width: 200px;
    vertical-align: middle;
}

.find-id-inner .form-cell-box .form-cell button {
    width: 110px;
    height: 50px;
    line-height: 48px;
    border: 1px solid #232323;
    background-color: #232323;
    vertical-align: middle;
    color: #ffffff;
    font-size: 0.85rem;
}

.find-id-inner .form-cell {
    padding: 10px;
}

.find-id-inner .form-cell label {
    width: 15%;
}

.find-id-inner .form-cell input {
    width: 60%;
}

.find-id-inner .form-control {
    display: inline-block;
    width: 68%;
    border-radius: 0;
    height: 50px;
    line-height: 48px;
    box-shadow: none;
}

.find-id-inner label {
    margin-right: 10px;
}

.find-id-inner button.btn-fin {
    width: 75%;
    text-align: center;
    margin: 1rem auto;
    border-color: #b2882c;
    background-color: #b2882c;
    color: #ffffff;
    font-size: 20px;
    font-weight: 500;
    border-radius: 0;
}

.modal-dialog {
    z-index: 20000;
}

/*회원가입 2020-12*/
.login-wrap {
    width: 500px;
    margin: 20px auto;
    padding: 10px 50px 30px 50px;
    background-color: #ffffff;
    border: 1px solid #ddd;
}

.login-wrap .copyright {
    text-align: center;
    font-size: 12px;
    margin-top: 20px;
}

.login-wrap h1 {
    text-align: center;
    margin-bottom: 0;
}

.form-signin {
    max-width: 480px;
    padding: 0 0 0 0;
}

.form-signin label {
    font-size: 14px;
    padding-top: 20px;
    padding-bottom: 0;
}

.form-signin label.pt-2 {
    padding-top: 0.5rem !important;
}

.form-signin label.pt-2 .pl-1 {
    padding-left: 0.25 !important;
}

.form-signin .checkbox {
    font-weight: 400;
}

.form-signin .form-control {
    position: relative;
    box-sizing: border-box;
    height: auto;
    padding: 10px;
    font-size: 15px;
    border-radius: 0;
    border: 1px solid #9e9e9e;
}

.form-signin .form-control:focus {
    z-index: 2;
}

.form-signin .form-select {
    box-sizing: border-box;
    height: auto;
    padding: 7px 10px;
    font-size: 15px;
    border: 1px solid #eee;
}

.form-signin .form-control.mb-2 {
    margin-bottom: 0.5rem !important;
}

.form-signin input[type="email"] {
    margin-bottom: -1px;
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
    margin-bottom: 0;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.form-signin a.text-dark {
    font-size: 14px;
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 80%;
    color: #dc3545;
}

.btn.btn-login {
    margin-top: 15px;
    padding: 6px 12px;
    border-radius: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 52px;
    background-color: #b2882c !important;
    color: #ffffff;
}

.btn.btn-login:hover {
    background-color: #231f20;
    color: #ffffff !important;
}

.agreement-wrap p.pb-1 {
    padding-top: 25px;
    padding-bottom: 0.25rem !important;
    margin-bottom: 0;
    font-size: 16px;
    font-weight: bold;
}

.agreement-box {
    background-color: #f7f6f5;
    padding: 10px 30px;
}

.agreement-box span {
    display: inline-block;
    margin-left: 10px;
    font-size: 13px;
    color: #777777;
}

.agreement-box label {
    padding-top: 8px;
    padding-left: 8px;
}

.agreement-box button {
    float: right;
    font-size: 13px;
    border: 1px solid #ccc;
    padding-top: 3px;
    padding-bottom: 3px;
    margin-top: 1px;
    margin-bottom: 1px;
}

.agreement-box button:hover {
    background-color: #231f20;
    color: #ffffff;
}

.agreement-box button.btn-light {
    color: #212529;
    background-color: #f8f9fa;
}

.modal.layer-popup {
    top: 35%;
}

.modal.layer-popup .modal-body {
    padding: 3rem 2rem;
}

.join-comp p {
    text-align: center;
    font-size: 15px;
    padding-top: 16px;
    letter-spacing: -0.3px;
}

.join-comp p:first-child {
    padding-top: 50px;
    font-size: 60px;
    font-weight: 100;
}

.join-comp p strong {
    font-size: 17px;
    padding-top: 10px;
}

.join-comp p strong span {
    color: #1076be;
}

.join-comp a {
    margin-top: 70px;
    margin-bottom: 130px;
}

.login-inner .modal {
    width: 100%;
    height: 100%;
}

.login-inner .modal .modal-dialog {
    transform: none;
    max-width: 500px;
    margin: 1.75rem auto;
}

.login-inner .modal .modal-dialog .modal-content {
    height: auto;
}

.login-inner .modal .modal-dialog .modal-title {
    padding-top: 15px;
    font-size: 22px;
    border-bottom: none;
}

.login-inner .modal .modal-dialog .modal-header .close {
    padding: 1rem;
    margin: -1rem -1rem -1rem auto;
    font-size: 3.5rem;
    margin-top: -55px;
}

.modal-dialog-scrollable {
    display: flex;
    max-height: calc(100% - 3.5rem);
}

.modal-dialog-scrollable .modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
    overflow-y: auto;
    height: 600px;
    width: 100%;
}

@media (max-width: 575px) {
    .login-inner .modal .modal-dialog .modal-title {
        padding-top: 10px;
        font-size: 17px;
    }

    .login-inner .modal .modal-dialog .modal-header {
        padding: 8px;
    }

    .login-inner .modal .modal-dialog .modal-header .close {
        padding: 1rem;
        margin: -1rem -1rem -1rem auto;
        font-size: 3.5rem;
        margin-top: -55px;
    }

    .modal-dialog-scrollable .modal-body {
        height: 400px;
        font-size: 13px;
        line-height: 1.5;
    }

    .modal-dialog-scrollable .modal-body h3 {
        font-size: 18px !important;
    }
}

@media only screen and (max-width: 1199px) {
    .login-form {
        padding-right: 0 !important;
    }

    .login-form form .container_loginbox {
        width: 100%;
    }
}

/*================================================
e4ds plus CSS
=================================================*/
.e4ds-plus-intro {
    padding: 2rem 0;
    margin-top: 2rem;
    background-color: #ffffff;
    border-radius: 8px;
    border-left: 4px solid #6865d3;
    border-right: 4px solid #6865d3;
    margin-bottom: 40px;
}

.e4ds-plus-intro .e4ds-mb-desc p {
    font-size: 19px;
    color: #222;
    font-weight: 400;
    letter-spacing: -0.5px !important;
}

.e4ds-plus-intro .e4ds-mb-desc p:first-child {
    font-size: 25px;
    padding: 10px 0 0 0;
    word-break: keep-all;
}

.e4ds-plus-intro .e4ds-mb-desc p:first-child span {
    font-size: 25px;
    color: #6865d3;
    font-weight: 700;
}

.e4ds-plus-intro .e4ds-mb-desc p:first-child strong {
    font-size: 25px;
    color: #000000;
    font-weight: 700;
}

.e4ds-plus-intro.membership {
    background-color: transparent;
    margin-top: 7rem;
    margin-bottom: 5rem;
    width: 86%;
    margin-left: auto;
    margin-right: auto;
}

.membership-year {
    background-color: #7264d2;
    border-radius: 16px;
    padding: 35px 46px;
    width: 794px;
    margin: auto;
}

.membership-year .d-flex {
    display: flex;
    margin-bottom: 0.6rem;
}

.membership-year .year-txt {
    padding-left: 30px;
    padding-top: 10px;
}

.membership-year .year-txt .price {
    text-align: center;
    color: #ffffff;
    padding-top: 1rem;
    font-size: 22px;
    font-weight: 500;
}

.membership-year .benefit {
    padding-left: 60px;
    padding-top: 10px;
}

.membership-year .benefit ul li {
    padding: 5px 3px;
    color: #ffffff;
    font-size: 16px;
}

.membership-year .benefit ul li span {
    display: inline-block;
    background-image: url("../img/year_bl.png");
    background-repeat: no-repeat;
    background-position: 0 2px;
    width: 21px;
    margin-right: 8px;
    text-align: center;
    font-size: 16px;
}

.membership-year .e4ds-pay-btn {
    position: static;
    margin-left: 0;
    display: inline;
    padding: 1rem 0;
    width: 144px;
    text-align: center;
    font-weight: 500;
    border-radius: 50px;
    background-color: #ffffff;
    color: #fe533c;
    font-size: 19px;
}

.membership-year .e4ds-pay-btn:hover {
    background-color: #272466;
    color: #ffffff;
}

.plus-guides {
    background-color: #fff;
    padding: 2rem 5rem 5rem 5rem;
}

.plus-guides p {
    margin-top: 3rem;
    color: #fe533c;
    font-weight: 500;
}

.plus-guides p:first-of-type {
    color: #272466;
}

.plus-guides ul {
    padding-left: 1.3rem;
}

.plus-guides ul li {
    line-height: 1.4;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    position: relative;
    padding-left: 15px;
    font-size: 15px;
    word-break: keep-all;
}

.plus-guides ul li::before {
    position: absolute;
    left: 1px;
    content: "•";
    /* Unicode bullet symbol */
    color: #7264d2;
    /* Bullet color */
    /* Optional tweaks */
    font-weight: bold;
    padding-right: 10px;
}

.plus-guides .mt-2 {
    margin-top: 30px;
}

.plus-guides .mt-2 p {
    font-size: 15px;
}

@media (max-width: 1199px) {
    .e4ds-plus-intro.membership {
        margin-top: 3rem;
        margin-bottom: 4rem;
        width: 90%;
    }

    .e4ds-plus-intro.membership p img {
        width: 80%;
    }

    .e4ds-plus-intro .e4ds-mb-desc p {
        font-size: 16px !important;
        word-break: keep-all;
    }

    .e4ds-plus-intro .e4ds-mb-desc p:first-child {
        font-size: 20px !important;
        line-height: 1.4;
    }

    .membership-year {
        padding: 35px 30px;
        width: 90%;
    }

    .membership-year>.d-flex {
        display: block !important;
    }

    .membership-year .d-flex .d-flex div:first-of-type {
        width: 45%;
    }

    .membership-year .d-flex .d-flex img {
        width: 80%;
    }

    .membership-year .year-txt {
        padding-left: 0;
        padding-top: 10px;
        text-align: center;
    }

    .membership-year .benefit {
        padding-left: 0;
    }

    .membership-year .benefit ul {
        padding-left: 0;
        padding-top: 1.5rem;
        padding-bottom: 0.7rem;
    }

    .membership-year .benefit ul li {
        font-size: 15px;
    }

    .membership-year .benefit ul li span {
        font-size: 14px;
        height: 22px;
    }

    .plus-guides {
        padding: 1rem 1rem 0 1rem;
    }

    .plus-guides ul {
        padding-left: 0;
    }

    .plus-guides p:first-of-type {
        font-size: 1.2rem;
    }
}

.e4ds-pay-renew-btn {
    padding: 10px 25px;
    border: 1px solid #272466;
    background-color: #272466;
    color: #ffffff !important;
    border-radius: 20px;
}

.e4ds-pay-renew-btn:hover {
    color: #272466 !important;
    border: 1px solid #272466;
}

.e4ds-pay-info-btn {
    padding: 8px 25px;
    border: 1px solid rgba(39, 36, 102, 0.4);
    background-color: #ffffff;
    border-radius: 20px;
}

.plus-title {
    text-align: center;
    padding-top: 15px;
    padding-bottom: 5px;
}

.plus-title img {
    padding-right: 20px;
    vertical-align: top;
}

.plus-title.subs {
    padding-bottom: 0;
    font-size: 33px;
    font-weight: 700;
    line-height: 63px;
    color: #faa61a;
}

.mt100 {
    margin-top: 100px;
}

.plus-cs {
    margin-top: 4rem;
    padding-top: 26px;
    height: 179px;
    background-image: url("../images/plus/plus_cs_bg.png");
    background-repeat: no-repeat;
    text-align: center;
}

.plus-cs ul li {
    padding: 0.5rem 0;
    font-size: 14px;
    color: #666666;
}

.plus-cs ul li::before {
    content: "";
    display: inline-block;
    width: 5px;
    height: 5px;
    background: rgba(133, 133, 139, 0.7);
    vertical-align: top;
    margin-top: 9px;
    margin-right: 7px;
    border-radius: 50%;
}

.plus-cs ul li::before a {
    display: inline-block;
    color: #fe533c;
    margin-left: 8px;
}

.plus-cs ul li::before a:hover {
    text-decoration: underline !important;
}

.h3-plus {
    padding-top: 2rem;
    font-size: 27px;
    font-weight: 900;
}

.e4ds-plus-join-info {
    padding: 17px 0 7px 0;
    font-size: 16px;
    font-weight: 500;
}

.e4ds-plus-join-info::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    background: #4f47fa;
    border-radius: 50%;
    vertical-align: top;
    margin-top: 3px;
    margin-right: 1px;
}

h3.blue {
    font-size: 22px;
    border-bottom: 1px solid #b4b4b4;
    padding-bottom: 8px;
    margin-top: 25px;
    margin-bottom: 20px;
    font-size: 22px;
    color: #337ab7;
    font-weight: 600;
    background-color: transparent;
}

.table-result {
    border: 1px solid #cfcfcf;
}

.table-result th {
    border-top: 1px solid #ccc;
    width: 20%;
    border: 1px solid #cfcfcf;
    background-color: #dcecf9;
    background-image: linear-gradient(to bottom, #ebf5fc, #dcecf9);
    padding-left: 20px !important;
}

.table-result td {
    width: 80%;
    background: #fff;
    padding-left: 20px !important;
    border-top: 1px solid #ccc;
}

#payinfo_wrap {
    margin-top: 3rem;
}

#payinfo_wrap .payinfo-title {
    padding-left: 37px;
    font-size: 23px;
    color: #272466;
    font-weight: 700;
    background-image: url("../img/icon_payinfo.png");
    background-repeat: no-repeat;
    background-position: 0 1px;
}

#payinfo_wrap .payinfo-title.credit {
    background-image: url("../img/icon_card.png");
}

#payinfo_wrap .text-center {
    text-align: center;
}

#payinfo_wrap .text-center .btn {
    padding: 10px 35px;
    border: 1px solid #272466;
    background-color: #272466;
    color: #ffffff;
    font-size: 15px;
}

#payinfo_wrap .text-center .btn-plus {
    border: 1px solid #272466;
    background-color: #ffffff;
    color: #272466;
}

.table-pay-info th {
    width: 19%;
    padding-left: 35px !important;
    background-color: #f8f6ff;
    color: #4c498d;
    border-bottom: 1px solid #e1e1ee;
    font-weight: 400;
}

.table-pay-info th:first-child {
    border-top: 1px solid #272466 !important;
}

.table-pay-info td {
    padding-left: 25px !important;
    background-color: #ffffff;
    border-bottom: 1px solid #e1e1ee;
}

.table-pay-info td:first-child {
    border-top: 1px solid #272466 !important;
}

.btn-quit {
    display: inline-block;
    padding: 0.25rem 1.5rem;
    background-color: #231f20;
    color: #ffffff;
}

.btn-quit:hover {
    color: #ffffff;
}

.btn-quit:active {
    background-color: #444444;
}

.desc_ci_wrap {
    margin-bottom: 20px;
    padding: 0.9rem 0 0.9rem 2rem;
    background-color: #f7f7f7;
}

.desc_ci_wrap .bul_list {
    margin: 0;
    padding: 0 0 0 10px;
}

.desc_ci_wrap .bul_list li {
    background: url("/assets/img/notice_bul02.png") 0 8px no-repeat;
    padding-left: 15px;
    font-size: 15px;
    line-height: 24px;
}

.desc_ci_wrap .bul_list .point {
    color: #f95555;
    font-weight: normal;
    word-break: keep-all;
}

.m-modify h2 {
    padding-bottom: 1rem;
}

.m-modify .form-modi .form-group {
    padding-bottom: 1.5rem;
}

.m-modify .form-modi .form-group label {
    position: relative;
    margin-top: 1rem;
    font-weight: 500;
    padding-bottom: 0.2rem;
    padding-left: 1rem;
    font-size: 1rem;
}

.m-modify .form-modi .form-group label::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 5px;
    width: 3px;
    height: 3px;
    border-radius: 100%;
    background-color: #232323;
}

.m-modify .form-modi .form-group .receive label::before {
    display: none;
}

.m-modify .form-modi .form-group input {
    height: 40px;
}

.m-modify .form-modi .form-group input[type="radio"] {
    height: auto;
}

.m-modify .form-modi .form-group .annotation {
    padding-left: 1.5rem;
    color: #2f68c2;
    font-size: 0.85rem;
}

.m-modify .form-modi .form-group .annotation.mem-alert {
    display: inline-block;
    color: red;
    font-size: 0.85rem;
    font-weight: 300;
    padding-top: 0.2rem;
    padding-left: 0;
}

.m-modify .form-modi .zipcode div {
    padding-bottom: 0.2rem;
}

.m-modify .form-modi .zipcode div .form-control {
    display: inline;
    width: auto;
}

.m-modify .form-modi .zipcode div .btn {
    font-size: 0.95rem;
    padding-top: 0.4rem;
    padding-bottom: 0.5rem;
    vertical-align: top;
    font-weight: 300;
}

.m-modify .form-modi .tech-gbn .tech-checkbox {
    width: 100%;
}


.m-modify .form-modi .tech-gbn .tech-checkbox span {
    display: inline-block;
    padding-left: 1rem;
    margin-right: 3rem !important;
    margin-top: 1rem;
}

.m-modify .form-modi .tech-gbn .tech-checkbox input[type="checkbox"] {
    height: auto;
    padding-left: 0.1rem;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
    transform: scale(1.2);
    cursor: pointer;
}

.m-modify .form-modi .tech-gbn .tech-checkbox label {
    margin-top: 0;
    padding-bottom: 0;
    padding-left: 0.7rem;
    font-weight: 400 !important;
    font-size: 0.937rem;
}

.m-modify .form-modi .tech-gbn .tech-checkbox label::before {
    display: none;
}




/*================================================
table CSS
=================================================*/
.table-mem {
    border-top: 1px solid #000;
}

.table-mem th {
    font-weight: 500;
    padding-left: 2rem;
    vertical-align: middle;
}

.table-mem td {
    font-weight: 300;
    padding-left: 3rem;
}

.table-plus-info tr:nth-child(even) td {
    background-color: #f8f6ff;
}

.table-plus-info th {
    font-size: 14px;
    color: #fff;
    line-height: 1.4;
    background-color: #6c7ae0;
    text-align: center;
}

.table-plus-info th:first-child {
    text-align: center;
}

.table-plus-info td {
    padding-top: 10px;
    padding-bottom: 10px;
    background-color: #ffffff;
    line-height: 1.4;
    vertical-align: middle !important;
    text-align: center;
    border-bottom: 1px solid #dddddd;
}

.table-plus-info td:first-child {
    text-align: center;
}

.table-plus-info td span.plus-remains {
    color: #4f47fa;
}

.table-plus-info td a {
    color: #111111;
}

.table-certi th {
    font-weight: 500;
    padding: 1rem;
}

.table-certi td {
    padding: 1rem;
}

.table-certi td p {
    margin-bottom: 0;
}

/*notice page*/
.table-basic tr:hover {
    background-color: #eff5ff !important;
}

.table-basic tr th {
    border-bottom: 1px solid #dee2e6;
    border-top: 1px solid #dee2e6;
    background-color: #eff5ff;
    color: #2f68c2;
    font-weight: 500;
    font-size: 14px;
    text-align: center;
    padding-bottom: 0.6rem;
    padding-top: 0.6rem;
}

.table-basic tr td {
    border-bottom: 1px solid #dee2e6;
    color: #6c757d;
    font-size: 14px;
    text-align: center;
    padding-bottom: 1rem;
    padding-top: 1rem;
    padding-left: 0;
    padding-right: 0;
}

.table-basic tr td:first-child {
    border-top: 1px solid #dee2e6;
}

.table-basic tr td:nth-child(2) {
    text-align: left;
    font-size: 15px;
}

.table-basic tr td a {
    display: inline-block;
    color: #232323;
}

.table-basic tr td i {
    padding-left: 1rem;
}

.table-basic.cs-brd td:nth-child(2) {
    text-align: center;
    padding-left: 0;
    padding-right: 0;
    letter-spacing: -1px;
}

.table-basic.cs-brd td:nth-child(3) {
    text-align: left;
    padding-left: 2rem;
    font-size: 15px;
}

.table-basic.cs-faq td {
    text-align: center;
}

.table-basic.cs-faq td:nth-child(2) {
    text-align: center;
    padding-left: 0;
    padding-right: 0;
    letter-spacing: -1px;
}

.table-basic.cs-faq td:nth-child(3) {
    text-align: left;
    padding-left: 5rem;
    font-size: 15px;
}

.table-basic-view td {
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 2rem;
    color: #6c757d;
}

.table-basic-view .notice-title {
    font-size: 1.15rem;
    color: #111111;
    font-weight: 500;
    line-height: 1.2;
    background-color: #eff5ff;
}

.table-basic-view .notice-cont {
    padding-top: 3rem;
    padding-bottom: 7rem;
}

.table-basic-view .hits {
    text-align: right;
    padding-right: 2rem;
}

.table-basic-view.cs-brd-view th {
    border-top: 1px solid #dee2e6;
    background-color: #eff5ff;
    color: #2f68c2;
    font-weight: 500;
    font-size: 14px;
    text-align: center;
}

.table-basic-view.cs-brd-view td {
    padding-left: 0;
}

.table-basic-view.cs-brd-view .lts-1 {
    letter-spacing: -1px;
}

.table-basic-view.cs-brd-view .cb-title {
    color: #111111;
    padding-left: 2rem;
}

.table-basic-view.cs-brd-view .cb-answer {
    background-color: #f7f7f7;
    color: #111111;
    padding-left: 2rem;
}

.table-basic-view.cs-brd-view .btn {
    border: 1px solid;
    margin-left: 1rem;
    margin-right: 1rem;
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
    border-radius: 0;
}

.btn-cs-brd {
    margin-top: 3rem;
}

.btn-cs-brd .btn {
    font-size: 1rem;
    font-weight: 300;
    padding: 0.5rem 2rem;
    border-radius: 0;
    margin-left: 0.3rem;
    margin-right: 0.3rem;
}

.cs-brd-form div {
    padding-top: 0.6rem;
}

.cs-brd-form div label {
    font-weight: 500;
}

.cs-brd-form div .form-control {
    margin-top: 0.3rem;
}

.cs-brd-form div a {
    display: inline;
}

.cs-brd-form div .cont {
    min-height: 100px;
}

caption {
    overflow: hidden !important;
    position: relative;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
}

#cs-pw-Modal .modal-title {
    font-size: 1.3rem;
    font-weight: 500;
}

/*웨비나*/
.my_webinar_qna .qnaCont .webinarInfo .title a {
    display: inline-block;
    color: #111111;
}

.my_webinar_qna .qnaCont .webinarInfo .comname {
    display: block;
    margin: 0.2rem 0 0.7rem 0;
}

.my_webinar_qna .qnaCont .webinarInfo .comname a {
    margin-left: 0;
}

.no_data {
    text-align: center;
    padding-top: 2rem;
}

.my_webinar_qna .qnaCont .label {
    display: inline;
    padding: 0.2em 0.6em 0.3em;
    margin-right: 0.3rem;
    font-size: 0.9rem;
    font-weight: 700;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    vertical-align: baseline;
    border-radius: 0.25em;
}

.my_webinar_qna .qnaCont .label-default {
    background-color: #777;
}

.my_webinar_qna .qnaCont .label-info {
    background-color: #5bc0de;
}

.my_webinar_reg_paid .table-basic td {
    font-size: 14px;
}

/*테크톡*/
.webinar {
    padding-left: 0;
    padding-right: 0;
}

.webinar .alert-success {
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
    border-radius: 0;
    margin-top: 1rem;
}

.webinar .alert-success .btn-outline-dark {
    border: 1px solid;
    margin-left: 1rem;
    border-radius: 0;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    font-size: 0.94rem;
}

.webinar .ciq-semi-list img {
    vertical-align: top;
}

.webinar .ciq-semi-list .title {
    font-weight: 600;
    color: #111111;
    font-size: 1.1rem;
}

.webinar .ciq-semi-list .date {
    padding-bottom: 0;
    padding-top: 0 !important;
    color: #777777;
}

.webinar .ciq-semi-list .desc {
    line-height: 1.4;
}

.webinar .ciq-semi-list .btn-danger {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    border-radius: 0;
}

.mypage-ci .nav-tabs.ci-tab li {
    position: relative;
}

.mypage-ci .nav-tabs.ci-tab li .nav-link {
    padding: 0.6rem 2rem;
    margin-right: 0.5rem;
    color: #777777;
    border: none;
    font-size: 0.94rem;
    background-color: #fdfdfd;
    border-radius: 0;
    border-left: 1px solid #dee2e6;
    border-top: 1px solid #dee2e6;
    border-right: 1px solid #dee2e6;
}

.mypage-ci .nav-tabs.ci-tab .active .nav-link {
    color: #2f68c2;
    background-color: #fff;
    border-left: 1px solid #2f68c2;
    border-top: 1px solid #2f68c2;
    border-right: 1px solid #2f68c2;
}

.mypage-ci .list .webniar-info {
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: 1.3rem;
    font-weight: 600;
    color: #111111;
}

.mypage-ci .list .answer-form {
    padding-bottom: 1.5rem;
    border-bottom: 1px solid #dee2e6;
}

.mypage-ci .list .answer-form .my_answer .btn-secondary {
    border-radius: 0;
    font-weight: 500;
    font-size: 0.88rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

.mypage-ci .list .cont {
    margin-bottom: 1rem;
}

.mypage-ci .list .cont .userid {
    font-weight: 700;
}

.mypage-ci .list .cont .regdate {
    font-size: 12px;
    color: #999;
    display: inline-block;
    padding-left: 0.7rem;
}

.mypage-ci .list .cont .text-bg-danger {
    vertical-align: middle;
}

.mypage-ci .list .cont .btn-secondary.btn-sm {
    margin-left: 1rem;
    padding: 0.2rem 1rem;
    font-size: 0.86rem;
}

.mypage-ci .nav-tabs.ci-tab.support li .nav-link {
    padding-left: 1rem;
    padding-right: 1rem;
}

/*my gift*/
/*당첨자 이벤트 관련*/
.vm {
    vertical-align: middle;
}

.my_event_btn_blue {
    display: block;
    margin: 20px 10px;
    padding: 0.9rem 1.6rem;
    font-size: 75%;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #337ab7;
}

.my_event_btn_green {
    display: block;
    margin: 20px 10px;
    padding: 9rem 1.6rem;
    font-size: 75%;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    background-color: #62b55d;
}

.my_event_btn_red {
    display: inline-block;
    margin: 4px auto;
    padding: 8px 12px;
    font-size: 0.88rem;
    font-weight: 500;
    line-height: 1;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
}

.my_event_btn_red a {
    color: #d8554b;
}

.my_event_btn_gray {
    display: block;
    margin: 20px 10px;
    padding: 0.9rem 1.6rem;
    font-size: 0.85rem;
    font-weight: 500;
    line-height: 1;
    color: #666666;
    text-align: center;
    white-space: nowrap;
    background-color: #f1f1f1;
    border: 1px solid #d6d6d6;
}

.event_webinar {
    border-bottom: 1px solid #d6d6d6;
    padding-bottom: 20px;
    margin: 0 0 20px 0;
    vertical-align: middle;
}

.event_webinar h4 {
    margin-bottom: 0;
    margin-top: 0.5rem;
    color: #111111;
    font-weight: 500;
}

.event_webinar h4 a {
    font-size: 1.2rem;
    color: #111111;
    font-weight: 500;
}

.event_webinar .webinar-date {
    color: #666666;
    font-size: 0.85rem;
    padding-top: 0.3rem;
}

.event_webinar .gift-view-link .date a {
    padding-top: 0.3rem;
    color: #2f68c2;
}

.event_webinar .gift-view-link .btn {
    display: inline-block;
    padding: 0.4rem 1rem;
    border-radius: 0;
    color: #ffffff;
}

.myevent_con_redtxt {
    padding-top: 1rem;
    font-size: 1.4rem;
    font-weight: 500;
    color: #ff0000;
}

.btn-fin {
    padding: 10px 40px;
    font-weight: bold;
    font-size: 16px;
    background-color: #d9534f;
    border-radius: 3px;
}

.myevent_addressedit {
    font-size: 18px;
}

.winnerList {
    overflow: hidden;
    margin: 0 auto 2rem auto;
    display: table;
    padding: 0;
}

.winnerGift {
    float: left;
    margin: 0px;
    padding: 15px;
}

.winnerGift .winnerGiftTitle {
    font-weight: 500;
    font-size: 1rem;
    padding: 10px 35px;
    margin: 5px 0 0 0;
    background-color: #313a46;
    color: #ffffff;
    text-align: center;
    border-radius: 3px;
}

.winnerByGift ul {
    margin: 0;
    padding: 15px 0px 0 0;
    text-align: center;
}

.winnerByGift ul li {
    margin: 0;
    padding: 0 17px;
    line-height: 25px;
    text-align: center;
    color: #000000;
    letter-spacing: 0.2rem;
}

.myevent_oktext {
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    color: #337ab7;
}

.table-basic.tbl_quit {
    margin-top: 1.5rem;
}

.table-basic.tbl_quit td {
    padding-left: 2rem;
    border-top: 1px solid #dee2e6;
}

.table-basic.tbl_quit td .special {
    display: block;
    padding-top: 0.4rem;
}

@media screen and (max-width: 500px) {
    .winnerGift {
        float: none;
    }
}

.pr10 {
    padding-right: 10px;
}

.pb10 {
    padding-bottom: 10px;
}

/*search page*/
.search-main .single-category-news:last-of-type {
    border-bottom: none;
}

.search-main.wbn .wbn-list .wbn-item {
    padding-bottom: 1rem;
    border-bottom: 1px solid #eee;
    margin-bottom: 1.5rem;
}

.search-main.wbn .wbn-list .wbn-item .wbn-title {
    margin-bottom: 8px;
}

.search-main.wbn .wbn-list .wbn-item .wbn-title a {
    color: #232323;
    font-weight: 500;
    line-height: 1.3;
    font-size: 1.05rem;
}

.search-main.wbn .wbn-list .wbn-item p {
    line-height: 1.5;
    word-break: keep-all;
}

.search-main.wbn .wbn-list .wbn-item .btn {
    border: 1px solid #232323;
    padding-top: 8px;
    padding-bottom: 8px;
}

.search_result_cont form {
    padding-bottom: 14px;
}

.search_result_cont .btn-u {
    line-height: 46px;
}

.single-category-news.search-news {
    padding-top: 1.5rem;
}

.single-category-news.search-news .col-lg-9 {
    padding-left: 2rem;
}

.single-category-news.search-news .col-lg-9 .date {
    font-weight: 300;
}

.single-category-news.search-news .col-lg-9 .date .writer {
    padding-left: 1rem;
    color: #666666;
}

.single-category-news.search-news .col-lg-9 h4 a {
    color: #232323;
    font-weight: 500;
    font-size: 1.25rem;
}

@media only screen and (max-width: 767px) {
    .mypage-area {
        padding-right: 0.75rem;
    }

    .mypage-area .col-lg-6 .btn-group .pl-1 {
        padding-left: 0.75rem;
    }

    .mypage-tab span {
        display: block;
    }

    .mypage-tab span::after {
        display: none;
    }

    .mypage-ci .nav-tabs.ci-tab li .nav-link {
        padding: 0.6rem 1.5rem;
    }

    .mypage-ci .webinar .list {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    .mypage-ci .list .webniar-info {
        line-height: 1.4;
    }

    .mypage-ci .list .webniar-info a {
        margin-left: 0;
    }

    .mypage-ci .event_webinar .text-center a img {
        width: 100%;
    }

    .desc_ci_wrap {
        padding-left: 0;
    }

    .member-area {
        width: 100%;
    }

    .cs-faq-list h3 {
        font-size: 20px;
    }

    .cs-faq-list .cs-tab {
        padding-top: 1rem;
    }

    .cs-faq-list .cs-tab li button {
        padding-left: 1.6rem;
        padding-right: 1.6rem;
        font-size: 1rem;
    }

    .cs-faq-list .cs-tab li a {
        font-size: 0.88rem;
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }

    .cs-area .cs-area-search {
        padding-bottom: 50px;
    }

    .cs-area .cs-area-search .kwd span {
        display: block;
    }

    .cs-area .cs-area-search .input-group {
        width: 92%;
    }

    .table-basic.cs-brd tr th:nth-child(1),
    .table-basic.cs-brd tr th:nth-child(4),
    .table-basic.cs-brd tr th:nth-child(5) {
        display: none;
    }

    .table-basic.cs-brd tr td:nth-child(1),
    .table-basic.cs-brd tr td:nth-child(4),
    .table-basic.cs-brd tr td:nth-child(5) {
        display: none;
    }

    .table-basic.e4ds-notice tr th:nth-child(1),
    .table-basic.e4ds-notice tr th:nth-child(3),
    .table-basic.e4ds-notice tr th:nth-child(4),
    .table-basic.e4ds-notice tr th:nth-child(5) {
        display: none;
    }

    .table-basic.e4ds-notice tr td:nth-child(1),
    .table-basic.e4ds-notice tr td:nth-child(3),
    .table-basic.e4ds-notice tr td:nth-child(4),
    .table-basic.e4ds-notice tr td:nth-child(5) {
        display: none;
    }

    .table-basic-view.cs-brd-view .btn {
        display: flow;
    }

    .table-mem {
        font-size: 0.88rem;
    }

    .table-mem th {
        padding-left: 1rem;
    }

    .table-mem td {
        padding-left: 1rem;
    }

    .login-form form .container_loginbox .btn-block {
        margin-bottom: 1rem;
    }

    .login-form.only .btn-login {
        height: auto;
    }

    .page-header.mypage .page-header-title {
        padding-left: 0.75rem;
    }

    .login-wrap {
        width: 99%;
        padding: 14px 14px 30px 14px;
    }

    .login-wrap .agreement-box {
        padding-left: 10px;
        padding-right: 10px;
    }

    .membership-year {
        width: 100%;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .member-area {
        width: 100%;
    }

    .mypage-area {
        padding-right: 0;
    }

    .mypage-tab span {
        display: block;
    }

    .mypage-tab span::after {
        display: none;
    }

    .my-webinar .col-md-9 {
        width: 75%;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .member-area {
        width: 70%;
    }

    .mypage-tab span {
        display: block;
    }

    .mypage-tab span::after {
        display: none;
    }

    .mypage-tab a {
        padding-left: 0.6rem;
        padding-right: 0.6rem;
    }

    .my-webinar .print {
        word-break: keep-all;
    }

    .event_webinar .col-lg-2 {
        width: 20%;
    }

    .event_webinar .col-lg-2 .my_event_btn_blue {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .event_webinar .gift-view-link .btn {
        padding-left: 0.5rem !important;
        padding-right: 0.5rem !important;
    }

    .event_webinar .col-lg-6 {
        width: 40%;
    }

    .membership-year {
        padding: 35px 30px;
        width: 90%;
    }

    .membership-year .d-flex .d-flex div:first-of-type {
        width: 24%;
    }

    .membership-year .d-flex .d-flex img {
        width: 80%;
    }
}

/*================================================
Default CSS
=================================================*/
/*================================================
aside CSS
=================================================*/
.rank-list {
    margin-bottom: 65px;
    margin-top: 50px;
}

.rank-list h3 {
    text-align: left;
}

.rank-list ul {
    padding-left: 0;
}

.rank-list li {
    list-style: none;
    border-bottom: 1px solid #dedede;
    padding-top: 13px;
    padding-bottom: 8px;
}

.rank-list li>a {
    display: flex;
}

.rank-list li>a p {
    padding-bottom: 3px;
    font-size: 16px;
    line-height: 1.5;
    color: #000000;
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.rank-list li .rank-badge {
    color: #1e82b9;
    font-size: 18px;
    line-height: 23px;
    font-weight: 500;
    padding: 2px 12px 0 8px;
}

/*================================================
aside webinar CSS
=================================================*/
.aside_login {
    padding: 0.8rem 1.2rem;
    border: 1px solid #ddd;
    background-color: #f7f7f7;
    margin-bottom: 3rem;
}

.aside_login .icon-plus {
    padding-bottom: 0.6rem;
}

.aside_login .aside_login_btns {
    padding-top: 0.4rem;
}

.aside_login .aside_login_btns a {
    padding: 2px 7px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    background-color: #fff;
    border: 1px solid #ddd;
}

.aside_login .aside_my_content {
    padding: 1rem;
}

.aside_login .aside_my_content a {
    display: inline-block;
    color: #666666;
    padding-left: 0.4rem;
}

.aside_login .aside_my_content a span {
    color: #2f68c2;
    font-weight: 500;
    padding-left: 0.5rem;
}

.aside_login .save {
    margin-top: 8px;
}

.aside_login .save a {
    display: inline;
    padding: 4px 5px;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: 0.4px;
}

.aside_login.login-form {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    padding-bottom: 0.7rem !important;
}

.aside_login.login-form .row {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
}

.aside_login.login-form .btn-login {
    padding-left: 0;
    padding-right: 0;
    margin-top: 0;
    line-height: 63px;
}

.aside_login.login-form form .form-group {
    margin-bottom: 5px;
}

.aside_login.login-form form .form-group .form-control {
    padding-top: 5px;
    padding-bottom: 5px;
    height: 35px;
    font-size: 14px;
}

.aside_login.login-form form .form-group label {
    line-height: 39px;
}

.aside-webinar-news {
    margin: 30px 0;
    background: #fff;
}

.aside-webinar-news h2 {
    padding: 9px 0 9px 20px;
    font-size: 1.1rem;
    font-weight: 600;
    color: #fff;
    background: #32b3c9;
    letter-spacing: 0.5px;
}

.aside-webinar-news h2.navy {
    background: #040440;
}

.aside-webinar-news ul {
    padding: 13px 10px 10px 10px;
    margin-bottom: 0;
}

.aside-webinar-news ul li {
    margin-bottom: 20px;
}

.aside-webinar-news ul li::after {
    content: "";
    clear: both;
    display: block;
}

.aside-webinar-news ul li a {
    color: #333333;
    word-break: keep-all;
    line-height: 1.4;
    font-size: 0.9rem;
}

.aside-webinar-news ul li img {
    float: left;
    width: 35%;
    margin-right: 7px;
}

.aside-webinar-news ul li span {
    margin-left: 5px;
    display: block;
    float: right;
    width: 60%;
}

.sponsor_title {
    background: #646464;
    text-align: left;
    color: #fff;
    padding: 9px 0 9px 15px;
}

.sponsor {
    background-color: #f7f7f7;
    margin-bottom: 3rem;
}

.sponsor ul {
    padding: 8px 0 11px 23px;
}

.sponsor ul li {
    padding: 7px 0;
}

.sponsor ul li a {
    color: #222;
    font-weight: 500;
    font-size: 1rem;
}

.sponsor ul li span {
    display: block;
    font-weight: normal;
    margin-top: 2px;
    margin-bottom: 5px;
    font-size: 13px;
    color: #666;
}

.principle {
    padding: 10px 0 20px 0;
    background-color: #ffffff;
}

.principle>div {
    width: 302px;
    margin: 0 auto;
    padding: 10px 0 10px 15px;
    background-color: #ffffff;
    border: 1px dashed #b3b3b3;
    box-sizing: border-box;
}

.principle p {
    font-size: 12px;
    line-height: 1.5;
    letter-spacing: -0.3px;
    color: #646464;
    margin: 0;
    word-break: keep-all;
}

.principle p:nth-child(2) {
    padding-top: 5px;
}

.principle p span {
    color: #f04d15;
    font-weight: 700;
}

.out-banner.renew .inc {
    text-align: center;
}

.out-banner.renew .inc img {
    width: 80%;
}

@media only screen and (max-width: 767px) {
    .aside-25n.col-lg-3 {
        margin-top: 1rem;
    }

    .newsletter-box {
        margin-top: 3rem;
    }

    .out-banner.renew .inc img {
        width: 60%;
    }

    .aside_login.login-form {
        display: none;
    }

    .hot-news-ads img {
        width: 100%;
    }

    .reporter-info {
        display: block;
    }

    .reporter-info .reporter-img {
        float: left;
    }

    .reporter-info div:last-child {
        float: none;
        margin-top: 2rem;
    }

    .comments-area .comment-respond .form-submit input {
        padding-left: 10px;
        padding-right: 10px;
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .aside-webinar-news ul li img {
        width: 150px;
        height: auto;
        margin-right: 1rem;
    }

    .aside-webinar-news ul li a {
        display: flex;
    }
}

/*================================================
btn style
=================================================*/
.btn-block {
    display: block;
    width: 100%;
}

.btn-u {
    margin-left: 0;
    width: 60px;
    background-color: #232323;
    color: #ffffff;
    border: 1px solid #232323;
    border-radius: 0;
}

.btn-txt {
    padding-left: 0;
    padding-right: 0;
    font-size: 15px;
    font-weight: 300;
}

/*================================================
form style
=================================================*/
.form-select {
    border-radius: 0 !important;
}

/*================================================
reset style
=================================================*/
ol,
ul,
li {
    list-style: none;
}

/*================================================
table style
=================================================*/
.table-point th {
    text-align: center;
    background-color: #f3f8fa;
    color: #215884;
}

/* 2025-09-01 kbc  */
.wbn-desc ol,
.wbn-desc ol li {
    list-style-type: initial !important;
}

.wbn-desc ul,
.wbn-desc ul li {
    list-style-type: initial !important;
}

/* 2025-09-19 kbc  */
#carouselWebinarBanner .carousel-indicators {
    margin-bottom: 0.5rem;
}


/*  */
.conference_table { width:100%; border:0; font-size: 1.006rem; border-bottom:1px solid #828282; }
.conference_table th { text-align:center; background-color: #0099da; color:#ffffff; padding: 10px; }
.conference_table td { text-align:left; border-left:0;  border-right:0; border-top:1px solid #c5c5c5; padding: 10px 0 10px 20px;  }


.conference_table_center { border:0; font-size: 1.006rem; border-bottom:1px solid #828282; }
.conference_table_center th { text-align:center; background-color: #0099da; color:#ffffff; padding: 10px; }
.conference_table_center td { text-align:left; border-left:0;  border-right:0; border-top:1px solid #c5c5c5; padding: 10px 0 10px 40px !important;  white-space: normal !important; }
.conference_table_center td.info { text-align:center !important; padding: 10px 0 10px 0px !important; }
.speaker_title div { text-align:center; background-color: #0099da; color:#ffffff; padding: 10px 0; border:0; }
.table-info .name { text-align:center; background-color: #0099da; color:#ffffff !important;  }
.Highlights { font-size:1.15rem; font-weight:bold; color:#000000;  line-height:25px; }
.Highlights strong { font-size:1.581rem; font-weight:bold; color:#004a85; letter-spacing:-1px;  }

@media screen and (max-width: 767px) {
.conference_table_center td { padding: 10px !important; }
}

/*================================================
Webinar Required Fields - 웨비나 필수 입력 표시
=================================================*/
/* 필수 입력 표시 - 파란색 계열 보더 */
.webinar-required {
    border-color: #4a90d9 !important;
    border-width: 1px !important;
    border-style: solid !important;
}

/* 기술군 체크박스 영역 필수 표시 */
.tech-checkbox.webinar-required {
    border: 1px solid #4a90d9;
    border-radius: 4px;
    padding: 0px 10px 10px 10px;
}

/* 기술군 최소 1건 선택 안내 문구 */
.tech-gbn-notice {
    color: #4a90d9;
    font-size: 0.875rem;
    margin-top: 5px;
    display: none;
}

.tech-gbn-notice.show {
    display: block;
}

/*================================================
Micro Site Carousel - 마이크로사이트 캐러셀 - 2026.02.02
=================================================*/ 
.micro-site-carousel .item {
display: flex !important;
align-items: center;
justify-content: center;
min-height: 80px;
}
.single-micro-site {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
}
.single-micro-site a {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.single-micro-site img {
max-height: 60px;
max-width: 100%;
width: auto;
height: auto;
object-fit: contain;
}
.sponsored-text {
text-align: right;
margin-top: 15px;
font-size: 14px;
color: #666;
}



/*================================================
webinar renewal - 2026.03.06
=================================================*/ 
.webinar-list-3 {
    margin-bottom: 5rem;

    .row {
        gap:0 20px;
        justify-content: space-evenly;

        .card {
        display: block;
        width: 32.3%;
        padding: 22px 20px 0;
        margin-bottom: 0;
        border-radius: 0;
        border: none;
        text-decoration: none;
        box-sizing: border-box;
        transition:
            box-shadow 0.28s ease,
            transform 0.28s ease,
            background-color 0.28s ease;

            &:hover {
            background: #fff;
            transform: translateY(-4px);
            box-shadow:
                0 10px 30px rgba(0, 0, 0, 0.12),
                0 3px 10px rgba(0, 0, 0, 0.06);
            }

            a {
                display: block;

                img {
                    width: 100%;
                    max-height:214px !important;
                }
            }
            
            .mw-txt {
                position: relative;
                width: 100%;
                display: inline-flex;
                align-items: baseline;
                padding-top: 0.9rem;
                gap: 5px;
                font-size: 19px;
                font-weight: 600;
                color: #111;
                text-decoration: none;
                line-height: 1.3;

              .mw-day {
                position: absolute;
                left: 50%;
                margin-left: -30px;
                top: -11px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-width: 50px;
                height: 22px;
                padding: 0 12px;
                background: linear-gradient(135deg, #ff6b6b, #ff3d3d);
                transform: skewX(-25deg);
                font-style: normal;
                color: #fff;
                font-size: 13px;
                font-weight: 500;
                border-radius: 9px;
                box-shadow: 0 4px 10px rgba(255, 61, 61, 0.25);
                flex-shrink: 0;

                span {
                    transform: skewX(25deg);
                }
                } 
            }
        }

    }
}


.webinar-list-all {

    .webinar-list-card {
        background-color: #f6f2ef;
        border: none;
        border-radius: 0;

        img {
            border-radius: 0;
        }

        .card-body {
            padding: 1.5rem 0.5rem 1rem 1.5rem;
            height: 170px;


            .card-title {

                a {
                     line-height: 1.2;
                     color: #111;
                }
                    min-height: 78px;
                }
            .card-text {
                margin-bottom: 0;
            }
        }

        &.On-webinar {
            background-color: #04031d;
            
            .card-body {
                position: relative;

                .card-title {
                    
                    a {
                         color: #fff;
                    }

                }

                .card-text {
                    color: #cddfff;
                }

                .btn-webinar-regist {
                    background-color: transparent;
                    color: #fff;
                    display: block;
                    text-align: right;
                    padding: 0.5rem 2rem;
                    font-size: 1rem;
                }

                .mw-day {
                position: absolute;
                left: 50%;
                margin-left: -30px;
                top: -11px;
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-width: 50px;
                height: 22px;
                padding: 0 12px;
                background: linear-gradient(135deg, #ff6b6b, #ff3d3d);
                transform: skewX(-25deg);
                font-style: normal;
                color: #fff;
                font-size: 13px;
                font-weight: 500;
                border-radius: 9px;
                box-shadow: 0 4px 10px rgba(255, 61, 61, 0.25);
                flex-shrink: 0;

                span {
                    transform: skewX(25deg);
                }
                } 
            }
        }

        &.Off-webinar {

            .card-body { 
                 
                .mw-day {
                    display: none;
                }

                .btn {
                    display: none;
                }
            }
        }
    }
}



 .webinar-detail-top {
      max-width: 1080px;
      margin: 0 auto;
      background: #fff;
      padding: 32px 20px 48px 0;
      margin: 0 !important;

      .top-meta {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-bottom: 18px;

        .badge {
          display: inline-flex;
          align-items: center;
          justify-content: center;
          height: 30px;
          padding: 0 12px;
          border-radius: 8px;
          font-size: 15px;
          font-weight: 400;
          line-height: 1;
          white-space: nowrap;

          &.d-day {
            background: #fee8e6;
            color: #ff0000;
          }

          &.paid,
          &.point,
          &.offline {
            background: #fefad6;
            color: #703910;
          }
        }
      }

      .title {
		display: flex;
		align-items: flex-start;
		gap: 12px;
		margin: 0 0 22px;
		font-size: 40px;
		line-height: 1.3;
		font-weight: 800;
		letter-spacing: -0.03em;
		word-break: keep-all;
		flex-wrap: nowrap;

		.badge {
			flex: 0 0 auto;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			height: 40px;
			padding: 0 14px;
			border-radius: 999px;
			font-size: 22px;
			font-weight:500;
			line-height: 1;
			white-space: nowrap;

			&.online {
			background: #0aa35c;
			color: #fff;
            font-size: 16px;
            letter-spacing: normal;
            margin-top: 6px;
			}
		}

		.title-text {
			flex: 1 1 auto;
			min-width: 0;
		}
		}

      .info-row {
        display: flex;
        flex-wrap: wrap;
        gap: 24px 42px;
        align-items: center;
        font-size: 15px;
        margin-bottom: 40px;
        font-weight: 300;

        .info-item {
          display: flex;
          align-items: center;
          gap: 6px;
          min-width: fit-content;

          .icon {
            width: 20px;
            height: 20px;
            flex: 0 0 20px;
            background-repeat: no-repeat;
            background-size: 20px;

            &.date {
                background-image: url(/webinar/images/calendar-clock-light-full.svg);
            }
            &.speaker {
                background-image: url(/webinar/images/user-hair-light-full.svg);
            }
            &.location {
                background-image: url(/webinar/images/location-dot-light-full.svg);
            }
          }
        }
      }

      .tab-menu {
        display: flex;
        border-bottom: 1px solid #d8d8d8;
        margin-bottom: 24px;

        .tab {
          position: relative;
          padding: 0 54px 8px;
          font-size: 18px;
          font-weight: 300;
          color: #8a8a8a;

          &.active {
            color: #2d4da8;
            font-weight: 600;

            &::after {
              content: "";
              position: absolute;
              left: 0;
              bottom: -1px;
              width: 100%;
              height: 4px;
              background: #5f77da;
            }
          }
        }
      }

	.content-wrap {
	position: relative;
	}

	.share-bar {
	position: absolute;
	top: 0;
	left: -72px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	z-index: 10;

	.share-btn {
		width: 56px;
		height: 48px;
		border-radius: 4px;
		display: flex;
		align-items: center;
		justify-content: center;

		img,
		svg {
		width: 56px;
		height: 48px;
		}

		&.facebook {
		background: #4267b2;
		}

		&.x {
		background: #000;
		}

		&.kakao {
		background: #f9e000;
		}
	}
	}

	.media-area {
	width: 100%;
	background: #0d1426;
	padding: 40px 100px 34px;

	.thumb {
		overflow: hidden;
		margin-bottom: 28px;

		img {
		width: 100%;
		display: block;
		object-fit: cover;
		}
	}

	.action-row {
		display: flex;
		gap: 18px;
		align-items: stretch;

		.apply-btn {
		width: 250px;
		min-height: 86px;
		border: 0;
		background: #ff4a4a;
		color: #fff;
		font-size: 27px;
		font-weight: 600;
		border-radius: 6px;
		cursor: pointer;
		}

		.quick-actions {
		flex: 1;
		display: grid;
		grid-template-columns: repeat(5, 1fr);
		border: 1px solid rgba(255, 255, 255, 0.18);
		border-radius: 6px;
		overflow: hidden;
		background: rgba(255, 255, 255, 0.02);

		.quick-item {
			min-height: 86px;
			display: flex;
			flex-direction: column;
			align-items: center;
			justify-content: space-around;
			gap: 7px;
			color: #fff;
			font-size: 15px;
			text-align: center;
			padding: 8px 6px 15px 6px;

                .icon {
                    background-repeat: no-repeat;
                    width: 30px;
                    height: 30px;
                    margin-top: 5px;

                    &.save {
                        background-image: url(/webinar/images/bookmark-light-full.svg);
                    }

                    &.like {
                        background-image: url(/webinar/images/thumbs-up-light-full.svg);
                    }

                    &.calendar {
                        background-image: url(/webinar/images/calendar-circle-plus-light-full.svg);
                    }

                    &.outlook {
                        background-image: url(/webinar/images/layer-plus-light-full.svg);
                    }

                    &.Related {
                        background-image: url(/webinar/images/arrow-up-right-from-square-light-full.svg);
                    }
                }

                .txt {
                    font-size: 13px;
                    font-weight: 200;
                    line-height: 1;
                }
		    }
		}
	}
	}
    }

    @media (max-width: 1024px) {
      .webinar-detail-top {
        .title {
          font-size: 40px;
        }

        .tab-menu {
          .tab {
            font-size: 26px;
            padding: 0 24px 16px;
          }
        }

        .media-area {
          padding: 28px 24px 24px;

          .action-row {
            .apply-btn {
              width: 220px;
              font-size: 22px;
            }

            .quick-actions {
              .quick-item {
                font-size: 14px;
              }
            }
          }
        }
      }
    }

    @media (max-width: 768px) {
      .webinar-detail-top {
        padding: 24px 16px 36px;

        .top-meta {
          .badge {
            height: 28px;
            font-size: 13px;
            padding: 0 10px;
          }
        }

        .title {
			gap: 8px;
			font-size: 30px;

			.badge {
			height: 28px;
			padding: 0 10px;
			font-size: 14px;
			}
		}

        .info-row {
          gap: 14px 18px;
          font-size: 15px;
          margin-bottom: 20px;
        }

        .tab-menu {
          margin-bottom: 18px;

          .tab {
            font-size: 20px;
            padding: 0 16px 14px;
          }
        }

        .content-wrap {
			position: static;
		}

        .share-bar {
			position: static;
			flex-direction: row;
			gap: 10px;
			margin-bottom: 16px;
            margin-top: 0.6rem;

			.share-btn {
                width: 40px;
                height: 34px;

                img {
                    width: 100%;
                    height: auto;
                }
			}
		}

		.media-area {
			width: 100%;
			padding: 18px 16px 16px;

			.thumb {
			margin-bottom: 16px;
			}

			.action-row {
			flex-direction: column;
			gap: 12px;

			.apply-btn {
				width: 100%;
				min-height: 64px;
				font-size: 22px;
			}

			.quick-actions {
				grid-template-columns: repeat(3, 1fr);

				.quick-item {
				min-height: 72px;
				font-size: 13px;
				}
			}
			}
		}	
      }
        
        .news-content .date span {
            margin-left: 0;
        }
        
        .news-content .date .google-pref-badge {
            padding-bottom: 0 !important;
        }
        
    }

    @media (max-width: 480px) {
      .webinar-detail-top {
        .title {
          font-size: 24px;
        }

        .info-row {
          flex-direction: column;
          align-items: flex-start;
        }

        .media-area {
			.action-row {
			.quick-actions {
				grid-template-columns: repeat(2, 1fr);
			}
			}
		}
      }
    }



/* ============================================================
   연결 웨비나 카드(.news-webinar-card) — 뉴스 상세 aside #webinar_div 재디자인
   기능/분기는 1:1 유지, 표현만 카드형(브랜드 블루·시안). 2026-07
   ============================================================ */
.news-webinar-card {
    position: relative;
    background: #fff;
    border: 1px solid #e6eaf2;
    border-radius: 0;
    padding: 18px 16px 16px;
    margin-bottom: 24px;
    box-shadow: 0 6px 20px rgba(23, 43, 77, 0.07);
    overflow: hidden;
}
/* 상단 컬러 액센트 바 */
.news-webinar-card::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
    background: linear-gradient(90deg, #272466 0%, #2f68c2 45%, #00a3e0 100%);
}

/* 헤더: WEBINAR + D-day */
.news-webinar-card .nwc-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}
.news-webinar-card .nwc-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.09em;
    color: #2f68c2;
}
.news-webinar-card .nwc-eyebrow i { font-size: 12px; }
.news-webinar-card .nwc-dday {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 11px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1;
    color: #fff;
}
.news-webinar-card .nwc-dday.is-upcoming { background: linear-gradient(135deg, #2f68c2, #00a3e0); }
.news-webinar-card .nwc-dday.is-today {
    background: #e01f2b;
    box-shadow: 0 0 0 0 rgba(224, 31, 43, 0.5);
    animation: nwc-dday-pulse 1.4s ease-out infinite;
}
.news-webinar-card .nwc-dday.is-ended { background: #eef1f6; color: #8390a3; }

/* 본문 */
.news-webinar-card .nwc-body { margin-bottom: 14px; }
.news-webinar-card .nwc-title {
    display: block;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.4;
    color: #17233d;
    margin-bottom: 10px;
    transition: color 0.15s ease;
}
.news-webinar-card .nwc-title:hover { color: #2f68c2; text-decoration: none; }
.news-webinar-card .nwc-meta { list-style: none; padding: 0; margin: 0; }
.news-webinar-card .nwc-meta li {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    font-size: 13px;
    color: #5b6675;
    line-height: 1.5;
    margin-bottom: 4px;
}
.news-webinar-card .nwc-meta li i {
    color: #2f68c2;
    width: 14px;
    margin-top: 3px;
    text-align: center;
    flex-shrink: 0;
}

/* 등록/방송보기 CTA — 그라디언트 + 깜빡이는 일러스트 */
.news-webinar-card .wbn_btn { margin-bottom: 10px; }
.news-webinar-card .wbn_btn .btn-reg {
    position: relative;
    display: block;
    width: 100%;
    height: auto;
    padding: 15px 14px;
    border: 0;
    border-radius: 11px;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0;
    color: #fff;
    background: linear-gradient(135deg, #2f68c2 0%, #00a3e0 100%);
    box-shadow: 0 8px 18px rgba(47, 104, 194, 0.28);
    overflow: hidden;
    transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}
.news-webinar-card .wbn_btn .btn-reg:hover,
.news-webinar-card .wbn_btn .btn-reg:focus {
    color: #fff;
    filter: brightness(1.05);
    transform: translateY(-1px);
    box-shadow: 0 11px 22px rgba(47, 104, 194, 0.34);
}
.news-webinar-card .wbn_btn .btn-reg .glyphicon { margin-right: 4px; }
/* 깜빡이는 라이브 도트(일러스트) — 우상단 */
.news-webinar-card .wbn_btn .btn-reg::before {
    content: "";
    position: absolute;
    top: 11px; right: 13px;
    width: 8px; height: 8px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.85);
    animation: nwc-live-dot 1.2s ease-out infinite;
}
/* 은은한 샤인 스윕 */
.news-webinar-card .wbn_btn .btn-reg::after {
    content: "";
    position: absolute;
    top: 0; left: -60%;
    width: 40%; height: 100%;
    background: linear-gradient(100deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transform: skewX(-20deg);
    animation: nwc-shine 3.4s ease-in-out infinite;
}

/* 보조 링크(상세/관련사이트) */
.news-webinar-card .nwc-links { display: flex; gap: 8px; margin-bottom: 0; }
.news-webinar-card .nwc-links .btn-lightgray {
    flex: 1;
    padding: 9px 6px;
    border: 1px solid #e3e8f0;
    border-radius: 0;
    background: #f6f8fc;
    color: #45536a;
    font-size: 12.5px;
    font-weight: 600;
    line-height: 1.2;
    transition: all 0.15s ease;
}
.news-webinar-card .nwc-links .btn-lightgray i { margin-right: 3px; color: #2f68c2; }
.news-webinar-card .nwc-links .btn-lightgray:hover {
    border-color: #2f68c2;
    background: #edf4fd;
    color: #2f68c2;
}

/* 애니메이션 */
@keyframes nwc-live-dot {
    0%   { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.85); opacity: 1; }
    70%  { box-shadow: 0 0 0 7px rgba(255, 255, 255, 0); opacity: 0.55; }
    100% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); opacity: 1; }
}
@keyframes nwc-shine {
    0%        { left: -60%; }
    55%, 100% { left: 130%; }
}
@keyframes nwc-dday-pulse {
    0%   { box-shadow: 0 0 0 0 rgba(224, 31, 43, 0.5); }
    70%  { box-shadow: 0 0 0 8px rgba(224, 31, 43, 0); }
    100% { box-shadow: 0 0 0 0 rgba(224, 31, 43, 0); }
}
@media (prefers-reduced-motion: reduce) {
    .news-webinar-card .wbn_btn .btn-reg::before,
    .news-webinar-card .wbn_btn .btn-reg::after,
    .news-webinar-card .nwc-dday.is-today { animation: none; }
}

/* ============================================================
   헤더 검색 재디자인(.hdr-search) — 데스크톱 상시 pill + 모바일 전폭 오버레이. 2026-07
   구 .nav-search(아이콘 토글 오버레이) 대체. 제출은 GET /search_news.asp?sWrd 유지.
   ============================================================ */
.sinmun-nav .others-options {
    display: flex;
    align-items: center;
    margin-left: auto;   /* GNB와 무관하게 우측 정렬(collapse 우측 끝) */
    flex: 0 0 210px;     /* 고정 폭 → pill이 이 폭을 채우고 컨테이너 안에 들어옴 */
    width: 210px;
}
.hdr-search { display: flex; align-items: center; width: 100%; }
/* 데스크톱: 사용자 아이콘은 상단 유틸바(마이페이지/로그인)와 중복 → 숨김. 모바일에서만 노출 */
.sinmun-nav .hdr-user { display: none; }

/* 데스크톱: 상시 노출 pill */
.hdr-search__pill {
    display: flex;
    align-items: center;
    gap: 8px;
    width: 100%;
    height: 40px;
    padding: 0 14px;
    margin: 0;
    background: #f4f6fa;
    border: 1px solid #dce3ec;
    border-radius: 999px;
    transition: background 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.hdr-search__pill:focus-within {
    background: #fff;
    border-color: #2f68c2;
    box-shadow: 0 0 0 3px rgba(47, 104, 194, 0.14);
}
.hdr-search__pill-icon { color: #8a94a3; font-size: 16px; flex-shrink: 0; line-height: 1; }
.hdr-search__pill:focus-within .hdr-search__pill-icon { color: #2f68c2; }
.hdr-search__pill-input {
    flex: 1;
    min-width: 0;
    border: 0;
    background: transparent;
    outline: 0;
    font-size: 14px;
    color: #333;
    padding: 0;
}
.hdr-search__pill-input::placeholder { color: #8a94a3; }
.hdr-search__mtrigger { display: none; }
.hdr-user a { color: #232323; font-size: 20px; }
.hdr-user a:hover { color: #2f68c2; }

/* 중간 폭에서 pill 축소(오버플로 방지) */
@media (min-width: 992px) and (max-width: 1279px) {
    .sinmun-nav .others-options { flex-basis: 175px; width: 175px; }
}

/* 모바일: pill 숨기고 아이콘 트리거 노출 */
@media (max-width: 991px) {
    .hdr-search__pill { display: none; }
    .hdr-search__mtrigger {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 38px;
        height: 38px;
        padding: 0;
        border: 0;
        background: transparent;
        color: #232323;
        font-size: 20px;
        cursor: pointer;
        line-height: 1;
    }
    .mean-bar .mean-nav .others-options { display: flex; align-items: center; gap: 14px; } /* 검색·회원 아이콘 사이 간격(2px→14px, 2026-07-23) */
}

/* 모바일 전폭 검색 오버레이 */
.hdr-msearch {
    position: fixed;
    inset: 0;
    z-index: 9950; /* 모바일 헤더 로고(.logo z-index 9910)보다 위 — 검색 오버레이 위로 로고 노출 방지(2026-07-23). 모달(20000)보다는 아래 */
    background: rgba(15, 23, 42, 0.45);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease;
}
.hdr-msearch.is-open { opacity: 1; visibility: visible; }
.hdr-msearch__panel {
    position: absolute;
    top: 0; left: 0; right: 0;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 14px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
    transform: translateY(-100%);
    transition: transform 0.25s ease;
}
.hdr-msearch.is-open .hdr-msearch__panel { transform: translateY(0); }
.hdr-msearch__form {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    height: 44px;
    padding: 0 14px;
    margin: 0;
    background: #f4f6fa;
    border: 1px solid #dce3ec;
    border-radius: 999px;
}
.hdr-msearch__form:focus-within { background: #fff; border-color: #2f68c2; }
.hdr-msearch__icon { color: #8a94a3; font-size: 18px; flex-shrink: 0; }
.hdr-msearch__input {
    flex: 1;
    min-width: 0;
    border: 0;
    background: transparent;
    outline: 0;
    font-size: 16px; /* iOS 자동 확대 방지 */
    color: #333;
}
.hdr-msearch__input::placeholder { color: #8a94a3; }
.hdr-msearch__submit {
    flex-shrink: 0;
    height: 32px;
    padding: 0 14px;
    border: 0;
    border-radius: 999px;
    background: #2f68c2;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
}
.hdr-msearch__close {
    flex-shrink: 0;
    width: 40px; height: 40px;
    border: 0;
    background: transparent;
    color: #555;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
}
body.hdr-msearch-open { overflow: hidden; }
@media (min-width: 992px) { .hdr-msearch { display: none; } }

/* ============================================================
   통합검색 결과 UI (.search-uni) — Typesense 컷오버(7단계). 타입탭·패싯·하이라이트. 2026-07
   ============================================================ */
.search-uni { padding-top: 24px; padding-bottom: 60px; }
.search-uni .h2-line .q { color: #2f68c2; }
.search-uni .h2-line .total { font-size: 0.6em; color: #8a94a3; font-weight: 600; margin-left: 6px; }

/* 타입 탭 */
.su-tabs {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    border-bottom: 2px solid #eef1f6; padding-bottom: 12px; margin-bottom: 20px;
}
.su-tab {
    display: inline-flex; align-items: center; gap: 6px;
    padding: 8px 14px; border-radius: 999px; font-size: 14px; font-weight: 600;
    color: #45536a; background: #f4f6fa; border: 1px solid #e6eaf2; transition: all 0.15s ease;
}
.su-tab span { font-size: 12px; color: #8a94a3; font-weight: 700; }
.su-tab:hover { border-color: #2f68c2; color: #2f68c2; text-decoration: none; }
.su-tab.active { background: #2f68c2; border-color: #2f68c2; color: #fff; }
.su-tab.active span { color: #cfe0f7; }
.su-sort { margin-left: auto; display: flex; gap: 10px; font-size: 13px; }
.su-sort a { color: #8a94a3; font-weight: 600; }
.su-sort a.active { color: #17233d; text-decoration: underline; }

/* 제조사 패싯 */
.su-facet { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin-bottom: 18px; }
.su-facet-label { font-size: 13px; font-weight: 700; color: #17233d; margin-right: 4px; }
.su-chip { font-size: 12.5px; padding: 4px 10px; border-radius: 999px; background: #eef4fd; color: #2f68c2; border: 1px solid #dbe7f8; }
.su-chip em { font-style: normal; color: #8aa6d0; margin-left: 2px; }
.su-chip:hover { background: #2f68c2; color: #fff; text-decoration: none; }

/* 결과 리스트 */
.su-list { list-style: none; padding: 0; margin: 0; }
.su-item { padding: 18px 0; border-bottom: 1px solid #eef1f6; }
.su-item-head { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin-bottom: 6px; }
.su-badge {
    font-size: 11px; font-weight: 800; letter-spacing: 0.02em;
    padding: 2px 8px; border-radius: 6px; color: #fff; flex-shrink: 0;
}
.su-badge-article { background: #2f68c2; }
.su-badge-qna { background: #00a3e0; }
.su-badge-maker { background: #6c5ce7; }
.su-badge-shop { background: #12b886; }
.su-badge-best { background: #e01f2b; }
.su-title { font-size: 17px; font-weight: 700; color: #17233d; line-height: 1.4; }
.su-title:hover { color: #2f68c2; text-decoration: none; }
.su-snippet { font-size: 14px; color: #5b6675; line-height: 1.6; margin: 4px 0 6px; }
.su-snippet mark { background: #fff3bf; color: inherit; padding: 0 1px; border-radius: 2px; }
.su-meta { display: flex; flex-wrap: wrap; gap: 10px; font-size: 12.5px; color: #99a3b2; }
.su-meta .su-url { color: #b6bdc9; }
.su-empty { padding: 60px 0; text-align: center; color: #8a94a3; font-size: 15px; }

@media (max-width: 767px) {
    .su-sort { margin-left: 0; width: 100%; margin-top: 6px; }
    .su-title { font-size: 15.5px; }
}

/* 헤더 검색 자동완성 드롭다운 (7단계) */
.hdr-search__box { position: relative; width: 100%; }
.hdr-ac {
    position: absolute; top: calc(100% + 6px); left: 0; right: 0; z-index: 2500;
    list-style: none; margin: 0; padding: 6px;
    background: #fff; border: 1px solid #e6eaf2; border-radius: 12px;
    box-shadow: 0 12px 28px rgba(23, 43, 77, 0.14); max-height: 60vh; overflow-y: auto;
}
.hdr-ac-item {
    display: flex; align-items: center; gap: 8px;
    padding: 8px 10px; border-radius: 8px; cursor: pointer;
}
.hdr-ac-item.active { background: #f2f6fc; }
.hdr-ac-badge {
    flex-shrink: 0; font-size: 10px; font-weight: 800; color: #fff;
    padding: 2px 6px; border-radius: 5px;
}
.hdr-ac-article { background: #2f68c2; }
.hdr-ac-qna { background: #00a3e0; }
.hdr-ac-maker { background: #6c5ce7; }
.hdr-ac-shop { background: #12b886; }
.hdr-ac-title {
    font-size: 13.5px; color: #17233d; line-height: 1.35;
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.hdr-ac-all {
    margin-top: 4px; padding: 9px 10px; border-top: 1px solid #eef1f6;
    font-size: 12.5px; font-weight: 600; color: #2f68c2; cursor: pointer; text-align: center;
}
.hdr-ac-all:hover { background: #f2f6fc; border-radius: 8px; }

/* ── 모바일 섹션 여백 축소(2026-07-23, 디자이너 조정) ──
   헤드라인/중간배너 컨테이너(.news-2025)의 pb 70px, 배너 이미지 mb 2rem이 모바일에서 과대 —
   운영(레거시)도 동일하지만 모바일 가독을 위해 신규에서 축소. 데스크톱/태블릿 값은 유지. */
@media only screen and (max-width: 767px) {
    .news-2025 {
        padding-bottom: 24px;
    }
    .main-banner img {
        margin-bottom: 12px;
    }
    /* 마지막 배너 아래 마진 중복 제거 + 리스트 섹션 pt 축소 — 리듬 24/12/32 */
    .main-banner .col-lg-6:last-child img {
        margin-bottom: 0;
    }
    .default-news-area.ptb-40 {
        padding-top: 8px;
    }
    /* 카테고리 타이틀 축소 + 썸네일과의 간격 축소 */
    .news-2025 .section-title {
        font-size: 26px;
        margin-bottom: 0;
        padding-bottom: 0;
    }
    .new-news-area .new-news-top {
        margin-top: 12px;
    }
    /* PC 우측 4개 기사 — 모바일에선 가로형 컴팩트 카드로 복원(플렉스 높이 붕괴로 안 보이던 것) */
    .new-news-list {
        height: auto;
    }
    .new-news-list .single-new-news {
        flex: none;
        display: flex;
        align-items: center;
        gap: 12px;
        margin: 14px 0 0;
        overflow: visible;
    }
    .new-news-list .single-new-news::before {
        display: none; /* 그라디언트 오버레이 제거(가로형에선 불필요) */
    }
    .new-news-list .single-new-news > img {
        width: 118px;
        height: 74px;
        object-fit: cover;
        flex: none;
        background: #eef1f5; /* 썸네일 로드 실패 시에도 자리 유지 */
    }
    .new-news-list .single-new-news .news-content {
        position: static;
        padding: 0;
        min-width: 0;
    }
    .new-news-list .single-new-news .news-content h3 {
        font-size: 14.5px;
        line-height: 1.45;
        margin: 0;
    }
    .new-news-list .single-new-news .news-content h3 a {
        color: #1a2233;
    }
}

/* ── webinar.asp 모바일(2026-07-23, 디자이너 조정) ──
   카드가 width 32.3% 고정이라 모바일에서 2~3열로 뭉개짐 → 1열 전폭.
   분야 버튼(15개)이 세로 나열로 화면을 길게 차지 → 가로 스크롤 칩 한 줄. */
@media only screen and (max-width: 767px) {
    .webinar-list-3 {
        margin-bottom: 2.5rem;
    }
    .webinar-list-3 .row .card {
        width: 100%;
        padding: 14px 12px 0;
    }
    .wbn-field-list {
        display: flex;
        flex-wrap: nowrap;
        overflow-x: auto;
        gap: 8px;
        padding: 4px 12px 10px;
        margin: 0 0 24px;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }
    .wbn-field-list::-webkit-scrollbar {
        display: none;
    }
    .wbn-field-list .wbn-field-item {
        float: none;
        flex: none;
        width: auto;
        padding: 8px 18px;
        white-space: nowrap;
    }
}

/* =========================================================================
   웨비나 상세(webinar_detail.asp) 상단 리디자인 — 2026-07
   헤더 · 서브탭 · 영상 · 등록 사이드. 기능/데이터 배선은 page.tsx 그대로 유지.
   accent 색상은 온라인(브랜드 블루)/오프라인(그린)에 따라 --wd-accent 로 분기.
   ========================================================================= */
.webinar-detail-cont .wd-top {
    --wd-accent: #00a3e0;
    --wd-accent-soft: #e4f3fb;
    --wd-head-bg: #edf7fc;
}
.webinar-detail-cont .wd-top.wd-top--offline {
    --wd-accent: #15a561;
    --wd-accent-soft: #e5f6ec;
    --wd-head-bg: #edf9f1;
}

/* --- 헤더 --- */
.webinar-detail-cont .wd-head {
    margin-bottom: 16px;
    padding: 22px 26px 20px;
    background: var(--wd-head-bg);
    border-top: 4px solid var(--wd-accent);
}
/* accent 바는 카드 상단 테두리로 대체 */
.webinar-detail-cont .wd-head__accent {
    display: none;
}
.webinar-detail-cont .wd-head__titlerow {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    margin-bottom: 20px;
}
.webinar-detail-cont .wd-cat {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    margin-top: 3px;
    padding: 7px 14px;
    border-radius: 9px;
    background: var(--wd-accent);
    color: #fff;
    font-size: 14px;
    font-weight: 800;
    white-space: nowrap;
}
.webinar-detail-cont .wd-title {
    flex: 1;
    margin: 0;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.34;
    letter-spacing: -0.6px;
    color: #0f1c33;
    word-break: keep-all;
}
.webinar-detail-cont .wd-title--long {
    font-size: 22px;
}

/* --- 메타(일시 · 발표자 · 장소) --- */
.webinar-detail-cont .wd-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 11px 28px;
}
.webinar-detail-cont .wd-meta__item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    font-weight: 600;
    color: #475467;
    word-break: keep-all;
}
.webinar-detail-cont .wd-meta__item i {
    color: var(--wd-accent);
    font-size: 15px;
}
.webinar-detail-cont .wd-meta__dday {
    color: #d5232e;
    font-weight: 800;
}
.webinar-detail-cont .wd-meta__dday i {
    color: #d5232e;
}

/* --- 서브탭 --- */
.webinar-detail-cont .wd-snb {
    display: flex;
    gap: 34px;
    border-bottom: 1px solid #eef1f6;
    margin-bottom: 28px;
}
.webinar-detail-cont .wd-snb a {
    position: relative;
    display: inline-block;
    width: auto;
    padding: 13px 2px;
    border: 0;
    text-align: left;
    font-size: 17px;
    font-weight: 600;
    color: #aab2bf;
    transition: color 0.16s ease;
}
.webinar-detail-cont .wd-snb a:hover {
    color: #0f1c33;
}
.webinar-detail-cont .wd-snb a.selected {
    color: #0f1c33;
    font-weight: 700;
}
.webinar-detail-cont .wd-snb a.selected::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: -1px;
    height: 3px;
    border-radius: 3px;
    background: var(--wd-accent);
}

/* --- 영상 + 등록 사이드 (그리드) --- */
.webinar-detail-cont .wd-main {
    display: grid;
    grid-template-columns: 1fr 250px;
    gap: 24px;
    align-items: start;
}
.webinar-detail-cont .wd-media {
    min-width: 0;
}
.webinar-detail-cont .wd-media .seminar_video {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background: #0f1723;
}
.webinar-detail-cont .wd-media .seminar_video .ratio,
.webinar-detail-cont .wd-media .seminar_video iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.webinar-detail-cont .wd-media .seminar_video img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* --- 사이드: 태그 --- */
.webinar-detail-cont .wd-side {
    min-width: 0;
}
.webinar-detail-cont .wd-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}
.webinar-detail-cont .wd-tag {
    display: inline-flex;
    align-items: center;
    padding: 6px 12px;
    border-radius: 7px;
    background: #f2f4f7;
    color: #475467;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.2;
}
.webinar-detail-cont .wd-tag--free {
    background: var(--wd-accent-soft);
    color: var(--wd-accent);
}
.webinar-detail-cont .wd-tag--paid {
    background: #fbf2d4;
    color: #8a6a12;
}
.webinar-detail-cont .wd-tag--offline {
    background: #e5f6ec;
    color: #15a561;
}
.webinar-detail-cont .wd-tag--vod {
    background: #efe8fb;
    color: #6a4bd0;
}

/* --- 사이드: 등록 버튼 (기존 .btn-reg / .btn-event 재정의) --- */
.webinar-detail-cont .wd-reg {
    margin-bottom: 8px;
}
.webinar-detail-cont .wd-reg .btn-reg,
.webinar-detail-cont .wd-reg .btn-event,
.webinar-detail-cont .wd-reg .btn-out {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    height: auto;
    padding: 21px 16px;
    border: none;
    border-radius: 12px;
    font-size: 19px;
    font-weight: 800;
    line-height: 1.2;
}
.webinar-detail-cont .wd-reg .btn-reg,
.webinar-detail-cont .wd-reg .btn-reg:focus,
.webinar-detail-cont .wd-reg .btn-reg:hover {
    background: #d5232e;
    border-color: #d5232e;
    color: #fff;
    box-shadow: 0 8px 20px rgba(213, 35, 46, 0.28);
}
.webinar-detail-cont .wd-reg .btn-reg:hover {
    filter: brightness(1.07);
}
.webinar-detail-cont .wd-reg .btn-event {
    background: #6a5acd;
    border-color: #6a5acd;
    color: #fff;
    box-shadow: 0 8px 20px rgba(106, 90, 205, 0.26);
}
.webinar-detail-cont .wd-reg .btn i {
    padding-right: 0;
}

/* --- 사이드: 자료 / 관련 링크 (WebinarFiles) --- */
.webinar-detail-cont .wd-side .wbn-files {
    width: 100%;
    display: flex;
    flex-direction: column;
    border-top: 1px solid #eef1f6;
    margin-top: 6px;
}
.webinar-detail-cont .wd-side .wbn-files a {
    position: relative;
    display: flex;
    align-items: center;
    gap: 11px;
    width: 100%;
    margin: 0 !important;
    padding: 15px 24px 15px 2px;
    border: 0;
    border-bottom: 1px solid #f1f4f8;
    border-radius: 0;
    background: none;
    text-align: left;
    color: #344054;
    font-size: 14px;
    font-weight: 600;
    transition: color 0.16s ease;
}
.webinar-detail-cont .wd-side .wbn-files a:hover {
    color: var(--wd-accent);
}
.webinar-detail-cont .wd-side .wbn-files a i,
.webinar-detail-cont .wd-side .wbn-files a .glyphicon {
    color: var(--wd-accent);
    font-size: 15px;
}
.webinar-detail-cont .wd-side .wbn-files a::after {
    content: "\f054"; /* chevron-right */
    font-family: "Font Awesome 6 Pro", "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 4px;
    color: #c4cbd6;
    font-size: 12px;
}
.webinar-detail-cont .wd-side .ifpro {
    display: none;
}

/* --- 반응형 --- */
@media (max-width: 991px) {
    .webinar-detail-cont .wd-main {
        grid-template-columns: 1fr;
        gap: 22px;
    }
    .webinar-detail-cont .wd-title {
        font-size: 24px;
    }
}
@media (max-width: 767px) {
    .webinar-detail-cont .wd-head__accent {
        margin-bottom: 18px;
    }
    .webinar-detail-cont .wd-head__titlerow {
        gap: 10px;
        margin-bottom: 16px;
    }
    .webinar-detail-cont .wd-title {
        font-size: 21px;
        line-height: 1.4;
    }
    .webinar-detail-cont .wd-title--long {
        font-size: 19px;
    }
    .webinar-detail-cont .wd-meta {
        flex-direction: column;
        gap: 9px;
    }
    .webinar-detail-cont .wd-snb {
        gap: 24px;
        margin-bottom: 22px;
    }
    .webinar-detail-cont .wd-snb a {
        font-size: 16px;
    }
    .webinar-detail-cont .wd-reg .btn-reg,
    .webinar-detail-cont .wd-reg .btn-event,
    .webinar-detail-cont .wd-reg .btn-out {
        padding: 18px 14px;
        font-size: 18px;
    }
}

/* ============================================================
   관심 웨비나 담기 버튼(wbk-) — 2026-08-18 리디자인(1a 시안: 아웃라인 → 블루 채움 풀와이드 토글).
   공용 WebinarBookmarkButton 기본 변형(웨비나 상세 aside·기사 내 웨비나 카드).
   목록 카드는 자체 클래스(regi-btn--bookmark)라 무관. !important = 전역 a 링크색·밑줄 상쇄.
   ============================================================ */
.wbk-btn { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 13px; background: #fff; border: 1.5px solid #d8dee8; border-radius: 11px; color: #475467 !important; font-size: 15px; font-weight: 700; line-height: 1.4; text-decoration: none !important; cursor: pointer; transition: background .15s ease, border-color .15s ease, color .15s ease; }
.wbk-btn:hover { background: #f8fafc; border-color: #b9c3d2; color: #344054 !important; }
.wbk-btn i { font-size: 16px; }
.wbk-btn.is-on { background: #e4f3fb; border-color: #bfe4f5; color: #0075ad !important; }
.wbk-btn.is-on i { color: #0090d4; }
.wbk-btn.is-on:hover { background: #d9eefa; border-color: #a9dcf3; color: #0075ad !important; }
.wbk-btn[aria-disabled='true'] { opacity: .6; }
.wbk-note { display: block; margin-top: 10px; font-size: 13px; color: #667085; text-align: center; }
.wbk-note a { color: #0090d4 !important; font-weight: 700; text-decoration: none; }
.wbk-note a:hover { color: #00aeef !important; }
