/*
Theme Name: Total Child Theme
Theme URI: https://your-site.com
Description: Your site description. Go to Appearance > Editor to modify this file.
Author: Your Name
Author URI: https://your-site.com
Template: Total
Version: 1.0
*/

@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");


/* Visible */
.pc-show { display: block;}
.pc-hidden { display: none;}

/* Button */
.btn-basic-wrap{ display: inline-block; margin-top: 20px;}
.btn-basic{ display: flex; align-items: center; justify-content: center; padding: 15px 30px; border-radius: 30px; background: linear-gradient(to right, #00a5ff, #3a3a8d); transition: all 300ms ease-in-out;}
.btn-basic .text{ color: #fff;}
.btn-basic:hover{ text-decoration: none; background-color: #000;}
.btn-basic:hover .text{ color: #fff;}

/* Body */
body{ word-break: keep-all;}

/* Header */
header#site-header{ padding: 0px 85px;}
header#site-header.overlay-header,

header#site-header #site-header-inner #site-header-flex-aside #site-header-flex-aside-inner .cosmosfarm-members-account-links{ display: flex; gap: 32px;}
header#site-header #site-header-inner #site-header-flex-aside #site-header-flex-aside-inner .cosmosfarm-members-account-links a{ font-weight: 700;}

#site-header-sticky-wrapper.is-sticky header#site-header { background-color: #ffffff30; backdrop-filter: blur(5px);}

/* Footer */
.footer-row-wrap { display: block; padding-bottom: 25px; margin-bottom: 25px;}
.footer-row-wrap:last-child{ padding-bottom: 0px; margin-bottom: 0px;}
.footer-row-wrap .footer-row{ position: relative; display: flex; flex-wrap: nowrap; align-items: center; justify-content:space-between;}
.footer-row-wrap .footer-row .footer-info h3{ margin: 10px 0px 20px; font-size: 21px; font-weight: 700; line-height: 30px; color: #fff;}
.footer-row-wrap .footer-row .footer-info .footer-info-list{ display: flex; flex-direction: row; flex-wrap: wrap; justify-items: center;}
.footer-row-wrap .footer-row .footer-info .footer-info-list li{ position: relative; padding-right: 10px; margin-right: 10px; font-size: 14px; font-weight: 400; line-height: 30px; color: #ddd; list-style: none;}
.footer-row-wrap .footer-row .footer-info .footer-info-list li::after{ content: ''; position: absolute; top: 8px; right: 0px; width: 1px; height: 15px; background-color: #474747;}
.footer-row-wrap .footer-row .footer-info .footer-info-list li:last-child::after{ width: 0px;}
.footer-row-wrap .footer-row .footer-info .footer-copyright{ font-size: 14px; font-weight: 400; line-height: 30px;}

.footer-row-wrap.second .footer-row{ justify-content: flex-end;}
.footer-row-wrap.second .footer-row .footer-sns .footer-sns-list{ display: flex; flex-direction: row; flex-wrap: wrap; align-items: center;}
.footer-row-wrap.second .footer-row .footer-sns .footer-sns-list li{ position: relative; padding-left: 20px; font-size: 14px; font-weight: 400; line-height: 30px; color: #ddd; list-style: none;}
.footer-row-wrap.second .footer-row .footer-sns .footer-sns-list li a img{ width: 24px; height: 24px;}

/* Main */
#main-visual .main-visual-title h1{ font-size: 20px; font-weight: 700; line-height: 30px; color: #c5e7f9;}
#main-visual .main-visual-title h2{ margin-top: 20px; font-size: 56px; font-weight: 700; line-height: 1.2; color: #fff;}
#main-visual .main-visual-title p{ margin-top: 20px; font-size: 28px; font-weight: 400; line-height: 40px; color: #fff;}

#main-quotes{ padding-top: 20px; padding-bottom: 20px;}
#main-quotes .vcex-testimonials-fullslider-inner .entry{ position: relative; display: inline-block; padding: 20px 60px 0px;}
#main-quotes .vcex-testimonials-fullslider-inner .entry::before,
#main-quotes .vcex-testimonials-fullslider-inner .entry::after{ content: ''; position: absolute; width: 30px; height: 25px; background: url(/wp-content/uploads/2024/09/icon_quotes.png) no-repeat; background-size: cover;}
#main-quotes .vcex-testimonials-fullslider-inner .entry::before{ top: 0px; left: 0px;}
#main-quotes .vcex-testimonials-fullslider-inner .entry::after{ top: 0px; right: 0px; transform: rotate(180deg); visibility: visible;}
#main-quotes span.sp-arrow-inner.wpex-flex{ background: #5db4e5; border-radius: 30px;}
#main-quotes span.sp-arrow-inner.wpex-flex .wpex-svg-icon svg{ color: #fff;}

#main-monitor{ padding-top: 120px; padding-bottom: 0px;}

#main-curriculum{ padding-top: 0px; padding-bottom: 60px;}
#main-curriculum .curriculum-info-box{ padding: 0px 90px;} 
#main-curriculum .curriculum-info-box h3{ padding-bottom: 10px; font-size: 32px; font-weight: 700; line-height: 42px; color: #000;}
#main-curriculum .curriculum-info-box p{ font-size: 18px; font-weight: 400; line-height: 26px; color: #555;}

/* Subpage - 타이틀 - 이미지 포함 */
#subpage-title{ min-height: 500px;}
#subpage-title .subpage-title-info{ padding-top: 120px;}
#subpage-title .subpage-title-info h1{ font-size: 42px; font-weight: 700; line-height: 54px; letter-spacing: -.5px; color: #000;}
#subpage-title .subpage-title-info p{ margin-top: 20px; font-size: 18px; font-weight: 400; line-height: 28px; color: #000;}

#subpage-title .subpage-title-info h1.white{ color: #fff;}
#subpage-title .subpage-title-info p.white{ color: #fff;}

/* Subpage - 타이틀 - 싱글[이벤트, 프로젝트 뽐내기] */
.single-blog-content{ padding-top: 50px;}
#subpage-title-single{ display: flex;}
#subpage-title-single .subpage-title-info{ padding-top: 50px; padding-bottom: 30px;}
#subpage-title-single .subpage-title-info h1{ font-size: 40px; font-weight: 700; line-height: 50px; color: #000; text-align: center;}

/* Subpage - 섹션 */
.subpage-section-title{ text-align: center; padding-bottom: 90px;}
.subpage-section-title h3{ display: inline-block; padding: 5px 0px; font-size: 46px; font-weight: 500; line-height: 56px; color: #000; letter-spacing: -.5px;}

/* Subpage - 커리큘럼 - 수강권 구매 */
.curriculum-single-links-fixed{ position: fixed; visibility: hidden; opacity: 0; left: 50%; bottom: 0px; transform: translateX(-50%); z-index: 9999; transition: all 300ms ease-in-out;}
.curriculum-single-links-fixed .inner{ width: 100%;}
.curriculum-single-links-fixed .inner .links-wrap{ background-color: transparent;}
.curriculum-single-links-fixed .inner .links-wrap ul{ display: block; margin: 0px;}
.curriculum-single-links-fixed .inner .links-wrap ul li{ list-style: none;}
.curriculum-single-links-fixed .inner .links-wrap ul li .btn-flat{ display: inline-block; padding: 25px 60px; border-radius: 40px; background: linear-gradient(to right, #00a5ff, #3a3a8d); font-size: 16px; font-weight: 700; line-height: 26px; text-align: center; color: #fff;}
.curriculum-single-links-fixed .inner .links-wrap ul li .btn-flat:hover{ text-decoration: none;}
.curriculum-single-links-fixed.view{ visibility: visible; bottom: 30px; opacity: 1;}
.curriculum-single-links-fixed.view.end{ bottom: 10px;}

/* Subpage - 커리큘럼 & 러닝시스템 - 메뉴*/
#subpage-contents-first { padding-top: 70px;}
#subpage-contents-first .vcex-navbar .theme-button.minimal-border{ position: relative; border: 0px; border-bottom: 1px solid transparent; background-color: transparent;}
#subpage-contents-first .vcex-navbar .theme-button.minimal-border .vcex-navbar-link-text{ font-size: 22px; color: #aaa;}
#subpage-contents-first .vcex-navbar .theme-button.minimal-border:hover,
#subpage-contents-first .vcex-navbar .theme-button.minimal-border.active{ border-bottom: 1px solid #00a5ff;}
#subpage-contents-first .vcex-navbar .theme-button.minimal-border:hover .vcex-navbar-link-text,
#subpage-contents-first .vcex-navbar .theme-button.minimal-border.active .vcex-navbar-link-text{ color: #3a3a8d;}
#subpage-contents-first .vcex-navbar .theme-button.minimal-border:hover::after{ content: ''; position: absolute; top: -9px; right: -12px; width: 19px; height: 18px; background: url(/wp-content/uploads/2024/09/icon_minimal_border.png) no-repeat; -webkit-animation: fade-up-icon 1s; animation: fade-up-icon 1s; animation-iteration-count: 1;}

/* Subpage - Animation */
@keyframes fade-up-icon {
    0% { opacity: 10%; transform: translateY(5px); }
    100% { opacity: 100%; transform: translateY(0);}
}

/* Subpage - 커리큘럼 - 인트로 */
#subpage-contents-first .curriculum-contents-row{ padding: 50px 0px 0px;}
#subpage-contents-first .curriculum-contents-row .curriculum-contents-box{ padding: 70px 30px 70px 0px;}
#subpage-contents-first .curriculum-contents-row .curriculum-contents-box h3{ margin-top: 0px; font-size: 40px; font-weight: 700; line-height: 50px; color: #000; letter-spacing: -1px; word-break: keep-all;}
#subpage-contents-first .curriculum-contents-row .curriculum-contents-box h3 span.point{ margin-top: 0px; font-size: 24px; font-weight: 700; line-height: 50px; color: #000; letter-spacing: -1px;}
#subpage-contents-first .curriculum-contents-row .curriculum-contents-box p{ margin-top: 20px; font-size: 20px; font-weight: 400; line-height: 30px; color: #555;}

/* Subpage - 커리큘럼 - 특징 */
#curriculum-feature{ padding-top: 0px; padding-bottom: 20px; background: #fff;}
#curriculum-feature .curriculum-feature-row{ margin-bottom: 40px; border-bottom: 1px solid #ddd;}
#curriculum-feature .curriculum-feature-row.last{ border-bottom: 0px solid #ddd;}
#curriculum-feature .curriculum-feature-row h3{ position: relative; padding-left: 15px; font-size: 24px; font-weight: 700; line-height: 34px; color: #000;}
#curriculum-feature .curriculum-feature-row h3::before{ position: absolute; content: ''; top: 4px; left: 0px; width: 7px; height: 24px; background: #000;}

#curriculum-feature .curriculum-feature-box{ padding: 40px; border: 1px solid #ddd; border-radius: 10px;}
#curriculum-feature .curriculum-feature-box dl{ display: block;}
#curriculum-feature .curriculum-feature-box dl dt{ padding-bottom: 10px; font-size: 24px; font-weight: 700; line-height: 34px; color: #000;}
#curriculum-feature .curriculum-feature-box dl dd{ position: relative; padding-left: 15px; font-size: 16px; font-weight: 400; line-height: 32px; color: #555;}
#curriculum-feature .curriculum-feature-box dl dd::before{ position: absolute; content: ''; top: 12px; left: 3px; width: 5px; height: 5px; border-radius: 3px; background-color: #555;}

/* Subpage - 커리큘럼 - 콘텐츠 포인트 */
#curriculum-contents-point{ padding-top: 100px; padding-bottom: 70px; background: #f7f7f7;}
#curriculum-contents-point .curriculum-contents-point-row{ padding-bottom: 100px;}
#curriculum-contents-point .curriculum-contents-point-row.last{ padding-bottom: 0px;}
#curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title{ text-align: center; padding-bottom: 90px;}
#curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title h3{ font-size: 26px; font-weight: 500; line-height: 40px; color: #000;}
#curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title h3 strong{ display: inline-block; padding: 5px 0px; font-size: 46px; font-weight: 700; line-height: 56px; letter-spacing: -1px; color: #000;}
#curriculum-contents-point .curriculum-icon-box-title{ margin-top: 20px; text-align: center;}
#curriculum-contents-point .curriculum-icon-box-title h3{ font-size: 22px; font-weight: 700; line-height: 30px; color: #333; letter-spacing: -.5px;}

/* Subpage - 커리큘럼 - 학생 제작 결과물 */
#curriculum-portfolio{ padding-top: 100px; padding-bottom: 0px; background: #fff;}

/* Subpage - 커리큘럼 - 넥스트 글로컬 리더스 */
.curriculum-next-row{ padding-top: 40px; padding-bottom: 10px; border-bottom: 1px solid #ddd;}
.curriculum-next-row.last{ border-bottom: 0px solid #ddd;}
.curriculum-next-row .curriculum-next-contents-box h3{ padding-bottom: 10px; font-size: 24px; font-weight: 700; line-height: 36px; color: #000;}

/* Subpage - 러닝시스템 - 시스템 */
.system-contents-head-row{ padding: 50px 0px 0px; background-color: #f7f7f7;}
.system-contents-head-row .system-contents-head-title{ padding: 60px 30px 0px;}
.system-contents-head-row .system-contents-head-title h3{ margin-bottom: 20px; font-size: 46px; font-weight: 400; line-height: 56px; letter-spacing: -1px; color: #000;}
.system-contents-head-row .system-contents-head-title h3 strong{ font-weight: 700;}
.system-contents-head-row .system-contents-head-title p{ font-size: 18px; font-weight: 400; line-height: 28px; color: #000;}

.system-contents-list-row{ padding: 100px 0px; border-bottom: 1px solid #ddd;}
.system-contents-list-row.last{ border-bottom: 0px solid #ddd;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper{ position: relative; display: block;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .nbr{ position: relative; display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; margin-bottom: 10px; border-radius: 10px; background: #fff; font-size: 24px; font-weight: 700; line-height: 42px; color: #3a3a8d;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .nbr::after{ content: ''; position: absolute; width: 50px; height: 50px; background: linear-gradient(to right, #00a5ff, #3a3a8d); border-radius: 15px; z-index: -1; animation: gradient-animation 1s infinite;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap{ padding-left: 50px; padding-top: 0px;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap h3{ font-size: 36px; font-weight: 700; line-height: 46px; color: #000;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap h3 strong{ display: inline-block; padding: 5px 0px 20px; font-size: 46px; font-weight: 700; line-height: 56px; letter-spacing: -1px; color: #000;}
.system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap .desc{ font-size: 18px; font-weight: 400; line-height: 28px; color: #555;}

/* Subpage - 러닝시스템 - 수업방식 */
.method-contents-row{ padding: 0px;}
.method-contents-row.first{ padding: 70px 0px 0px;}
.method-contents-row .vc_column_container.method-contents-col .vc_column-inner{ padding: 60px 60px 40px; border: 1px solid #ebebeb; border-radius: 30px; background: #f7f7f7;}

.method-contents-row .method-contents-list-item .wpb_wrapper{ padding: 0px;}
.method-contents-row .method-contents-list-item .wpb_wrapper .title-wrap{ padding: 20px 0px; text-align: left;}
.method-contents-row .method-contents-list-item .wpb_wrapper .title-wrap h3{ font-size: 36px; font-weight: 700; line-height: 46px; letter-spacing: -1px; color: #000;}
.method-contents-row .method-contents-list-item .wpb_wrapper .title-wrap .slogun{ margin-top: 15px; font-size: 20px; font-weight: 400; line-height: 32px; letter-spacing: -1px; color: #777;}

.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap{ padding: 0px;}
.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap h4{ display: inline-block; padding-bottom: 15px; margin-top: 0px; margin-bottom: 0px; font-size: 20px; font-weight: 700; line-height: 30px; color: #777;}
.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap ul{ display: flex; align-items: center; justify-content: space-around; flex-direction: column; gap: 20px; margin: 0px;}
.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap ul li{ display: flex; align-items: center; gap: 20px; width: 100%; padding: 20px; border: 1px solid #ddd; border-radius: 10px; background-color: #fff;}
.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap ul li img{ width: 60px; height: 60px;}
.method-contents-row .method-contents-list-item .wpb_wrapper .feature-wrap ul li .text{ font-size: 16px; font-weight: 500; line-height: 26px; color: #000; list-style: none; text-align: left;}

.method-contents-row .vcex-toggle { border: 1px solid #ddd; padding: 22px 20px; margin-bottom: 20px; border-radius: 10px;}

/* Subpage - 러닝시스템 - 학습관리 */
#manage-contents{ padding-top: 100px; padding-bottom: 50px;}
.manage-contents-row{ padding: 0px 0px 40px}
.manage-contents-row .vc_column_container.manage-contents-col .vc_column-inner{ padding: 60px 60px; margin-bottom: 0px; border: 1px solid #ebebeb; border-radius: 30px; background: #f7f7f7;}

.manage-contents-row .manage-contents-list-item .wpb_wrapper{ padding: 40px 20px 0px;}
.manage-contents-row .manage-contents-list-item .wpb_wrapper h3{ font-size: 32px; font-weight: 700; line-height: 42px; letter-spacing: -1px; color: #000;}
.manage-contents-row .manage-contents-list-item .wpb_wrapper p{ margin-top: 15px; font-size: 16px; font-weight: 400; line-height: 26px; color: #555;}

/* Subpage - 튜터 */
.tutor-info-box{ padding: 30px; text-align: center;}
.tutor-info-box h3{ font-size: 24px; font-weight: 700; line-height: 34px; letter-spacing: -1px; color: #000;}
.tutor-info-box p{ margin-top: 10px; font-size: 18px; font-weight: 400; line-height: 28px; color: #777;}

ul.vcex-filter-links li .theme-button.minimal-border{ border: 1px solid #ddd; border-radius: 30px; background-color: #f7f7f7;}
ul.vcex-filter-links li.active .theme-button.minimal-border{ background-color: #000;}

.tutor-title-box{ text-align: center;}
.tutor-title-box h3{ padding-bottom: 10px; font-size: 46px; font-weight: 700; line-height: 56px; letter-spacing: -1px; color: #000;}
.staff-entry-inner.entry-inner{ overflow: hidden; border-radius: 10px;}
.staff-entry-details.entry-details{ padding: 0px 30px; border: 0px !important;}
.staff-entry-details.entry-details h3.staff-entry-title{ font-size: 28px; line-height: 1.4;}
.staff-entry-details.entry-details .staff-entry-categories{ font-size: 18px; font-weight: 700; line-height: 30px;}

/* Subpage - 튜터 - 상세보기 */
.tutor-detail-row{ padding-top: 50px;}
.tutor-detail-row .tutor-detail-box{ padding: 25px 50px;}

.tutor-detail-row .tutor-detail-box .bio-wrap{ padding-top: 50px; padding-left: 20px;}
.tutor-detail-row .tutor-detail-box .bio-wrap h3{ font-size: 32px; font-weight: 700; line-height: 42px; letter-spacing: -1px; color: #000;}
.tutor-detail-row .tutor-detail-box .bio-wrap .job{ font-size: 20px; font-weight: 400; line-height: 30px; letter-spacing: -1px; color: #000;}
.tutor-detail-row .tutor-detail-box .bio-wrap .categories { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-left: 0px;}
.tutor-detail-row .tutor-detail-box .bio-wrap .categories li{ padding: 10px 20px; border-radius: 30px; background-color: #000; list-style: none; color: #fff;}

.tutor-detail-row .tutor-detail-box .talk-wrap{ padding-top: 25px; padding-left: 20px; margin-top: 25px; border-top: 1px solid #ddd;}
.tutor-detail-row .tutor-detail-box .talk-wrap h3{ font-size: 24px; font-weight: 700; line-height: 34px; letter-spacing: -1px; color: #000;}
.tutor-detail-row .tutor-detail-box .talk-wrap .talk{ font-size: 20px; font-weight: 400; line-height: 30px; letter-spacing: -1px; color: #000;}

.tutor-detail-row .tutor-detail-box .nav-wrap{ display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; padding-top: 30px;}
.tutor-detail-row .tutor-detail-box .nav-wrap a{ display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; width: 140px; height: 70px; border-radius: 40px; background: linear-gradient(to right, #00a5ff, #3a3a8d); color: #fff;}

/* Subpage - 이벤트 */
.event-detail-row{ padding-top: 50px;}
.event-detail-row ul.vcex-filter-links.center{ display: flex; flex-direction: row-reverse;}
.event-detail-row ul.vcex-filter-links.center li{ width: 50%;}
.event-detail-row ul.vcex-filter-links li{ margin-right: 0px; }
.event-detail-row ul.vcex-filter-links li .theme-button.outline{ width: 100%; padding: 20px 10px; border-top: 0px solid #ddd; border-left: 0px solid #ddd; border-right: 0px solid #ddd; border-bottom: 1px solid #111; border-radius: 0px; background-color: #f7f7f7; color: #111;}
.event-detail-row ul.vcex-filter-links li .theme-button.outline:hover{ border-bottom: 1px solid #111 !important;}
#subpage-contents .event-detail-row ul.vcex-filter-links li.active .theme-button.outline{ border-top: 1px solid #ddd; border-left: 1px solid #ddd; border-right: 1px solid #ddd; border-bottom: 0px solid #111; border-color: #111 !important; background-color: #fff;}
#subpage-contents .event-detail-row ul.vcex-filter-links li.active .theme-button.outline:hover{ border-bottom: 0px solid #fff !important;}

/* Subpage - 프로젝트 뽐내기 */
.project-detail-row{ padding-top: 50px;}

/* Subpage - 수강권 구매 */
.product{ margin-top: 50px;}
.products .product img{ border-radius: 10px;}
.products .wpex-card .wpex-card-details h2.wpex-card-title.wpex-heading{ font-size: 20px; font-weight: 700;}

.woocommerce.single-product .entry-content{ padding: 50px 0px;}
.woocommerce.single-product .woocommerce-product-gallery.images { overflow: hidden; border-radius: 10px;}

.woocommerce.single-product .product .summary{ padding: 30px; border: 1px solid #ddd; border-radius: 10px; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;}
.woocommerce.single-product .product .summary .woocommerce-product-rating{ display: none;}
.woocommerce.single-product .product .summary .product_title.single-post-title{ font-size: 24px; font-weight: 700; letter-spacing: -.5px; color: #111;}
.woocommerce.single-product .product .summary span.woocommerce-Price-amount.amount bdi{ font-size: 36px; font-weight: 700; letter-spacing: -1px; color: #111;}
.woocommerce.single-product .product .summary span.woocommerce-Price-amount.amount span.woocommerce-Price-currencySymbol{ font-size: 24px;}
.woocommerce.single-product .product .summary .woocommerce-product-details__short-description{ padding-top: 20px; border-top: 1px solid #ddd;}
.woocommerce.single-product .product .summary .woocommerce-product-details__short-description p{ font-size: 20px; font-weight: 400; color: #777;}

.woocommerce.single-product .product .summary form.cart{ display: flex; flex-wrap: nowrap; align-items: center; gap: 15px; margin-top: 30px; margin-bottom: 0px;}
.woocommerce.single-product .product .summary form.cart .single_add_to_cart_button, .woocommerce .product .summary form.cart .added_to_cart, .woocommerce .product .summary a.button.alt{ width: 50%; padding: 20px 0px; border-radius: 10px; background-color: #555;}
.woocommerce.single-product .product .summary form.cart .single_add_to_cart_button:hover, .woocommerce .product .summary form.cart .added_to_cart:hover, .woocommerce .product .summary a.button.alt:hover{ width: 50%; padding: 20px 0px; background-color: #3a3a8d;}

.woocommerce.single-product .entry-content{ padding: 0px;}

.product-list{ width: 100%; padding-top: 50px;}
.product-list ul{ display: flex; flex-direction: row; flex-wrap: wrap; gap: 2%; width: 100%; margin-left: 0px;}
.product-list ul .item{ width: 32%; margin-bottom: 20px; border: 1px solid #ddd; border-radius: 10px; list-style: none;}
.product-list ul .item a{ display: flex; align-items: center; justify-content: space-between; width: 100%; padding: 30px 20px;}
.product-list ul .item a .text{ font-size: 20px; font-weight: 700; line-height: 1.2; letter-spacing: -1px; color: #111;}
.product-list ul .item a .icon{ display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 30px; background-color: #555; font-size: 13px; color: #fff;}
.product-list ul .item:hover{ border: 1px solid #3a3a8d; box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px; }
.product-list ul .item a:hover{ text-decoration: none;}
.product-list ul .item a:hover .icon{ background-color: #3a3a8d;}

/* Subpage - 코스모스팜 정기 결제 화면 */
.cosmosfarm-members-subscription form button[type=submit]{ width: 100%; padding: 20px 0px;}
.cosmosfarm-members-subscription .checkout-attr-row .attr-name{ color: #000;}
.cosmosfarm-members-subscription .checkout-attr-row .attr-value{ padding-bottom: 15px;}
.cosmosfarm-members-subscription .subscription-description.subscription-type{ display: none;}
.cosmosfarm-members-subscription.cosmosfarm-members-subscription-checkout{ padding: 50px; margin: 20px 0px 50px; border-radius: 10px; background-color: #fff;}

body.page .cosmosfarm-members-subscription form textarea,
body.page .cosmosfarm-members-subscription form select,
body.page .cosmosfarm-members-subscription form input[type=text], 
body.page .cosmosfarm-members-subscription form input[type=email], 
body.page .cosmosfarm-members-subscription form input[type=number], 
body.page .cosmosfarm-members-subscription form input[type=date], 
body.page .cosmosfarm-members-subscription form input[type=password]{ height: 50px; padding: 0 10px; border-radius: 5px; line-height: 50px;}

/* Subpage - 운영정책 */
.reg-title{ padding-top: 40px; margin-top: 40px; border-top: 1px solid #ededed;}
.reg-title .inner h2{ font-size: 28px; font-weight: 700; line-height: 1.2; color: #000;}
.reg-title .inner p{ padding-top: 10px; margin-bottom: 0;}

.reg-content-group{ padding-bottom: 0px;}
.reg-content-group .inner{ padding: 20px 20px 0px;}
.reg-content-group .inner h3{ margin-bottom: 10px; font-size: 24px; font-weight: 700; line-height: 1.2; color: #777;}
.reg-content-group .inner h4{ margin-bottom: 10px; font-size: 18px; font-weight: 700; line-height: 1.2; color: #777; text-align: center;}
.reg-content-group .inner > dl{ padding: 20px 20px 10px;}
.reg-content-group .inner dl dt{ margin-bottom: 10px; font-size: 17px; font-weight: 700; line-height: 1.4; color: #777;}
.reg-content-group .inner dl dd{ position: relative; padding-left: 10px; margin-left: 10px; margin-bottom: 10px; font-size: 16px; font-weight: 400; line-height: 1.4; color: #555;}
.reg-content-group .inner dl dd::before{ content: ''; position: absolute; top: 8px; left: 0; width: 3px; height: 3px; background-color: #777; border-radius: 3px;}
.reg-content-group .inner dl dd ul{ margin-top: 5px; margin-bottom: 10px; margin-left: 10px;}
.reg-content-group .inner dl dd ul > li{ position: relative; padding-left: 10px; margin-bottom: 10px; list-style: none;}
.reg-content-group .inner dl dd ul > li::before{ content: ''; position: absolute; top: 8px; left: 0; width: 3px; height: 3px; background-color: #777; border-radius: 3px; list-style: none;}
.reg-content-group .inner dl dd ul > li:has(ul)::before{ display: none;}
.reg-content-group .inner dl dd ul > li ul{ margin-left: 10px;}
.reg-content-group .inner dl dd ul > li ul li{ position: relative; padding-left: 10px; list-style: none;}
.reg-content-group .inner dl dd ul > li ul li::before{ content: ''; position: absolute; top: 8px; left: 0; width: 3px; height: 3px; background-color: #777; border-radius: 3px; list-style: none;}

.reg-content-group .inner table{ text-align: center;}

/* Responsive */
@media screen and (max-width: 1500px) {

    /* Visible */
    .small-pc-show { display: block;}
    .small-pc-hidden{ display: none;}
}
    
@media screen and (max-width: 1300px) {
    
    /* Header */
    header#site-header{ padding: 0px 15px;}
    header#site-header #site-header-inner #site-header-flex-aside #site-header-flex-aside-inner .cosmosfarm-members-account-links{ gap: 15px;}
    header#site-header #site-header-inner #site-header-flex-aside .cosmosfarm-members-account-links a{ font-size: 15px;}
    header#site-header #site-header-inner .wpex-flush-dropdowns .main-navigation-ul>.menu-item>a{ padding: 0px 10px;}
    header#site-header #site-header-inner .wpex-flush-dropdowns .main-navigation-ul>.menu-item>a .link-inner{ font-size: 15px;}
}

@media screen and (max-width: 768px) {

    /* Visible */
    .tablet-show { display: block;}
    .tablet-hidden{ display: none;}

    /* Width */
    .tablet-width-50{ width: 50%;}

    /* Header */
    header#site-header{ padding: 0px;}
    header #site-header-inner #site-header-flex-aside{ display: none;}

    /* Footer */
    .footer-row-wrap { padding-bottom: 10px; margin-bottom: 10px;}
    .footer-row-wrap .footer-row .footer-info .footer-info-list li::after{ width: 0px;}
    .footer-row-wrap .footer-row .footer-info .footer-copyright{ margin-bottom: 0px;}

    .footer-row-wrap.second .footer-row{ justify-content: flex-start;}
    .footer-row-wrap.second .footer-row .footer-sns .footer-sns-list li{ padding-left: 0px; padding-right: 20px;}

    /* Main */
    #main-visual .main-visual-title{ padding-top: 50vh; padding-left: 10px;}
    #main-visual .main-visual-title h1{ font-size: 18px; line-height: 28px;}
    #main-visual .main-visual-title h2{ margin-top: 10px; font-size: 36px; font-weight: 700; line-height: 1.2; color: #fff;}
    #main-visual .main-visual-title p{ margin-top: 20px; font-size: 16px; line-height: 28px;}
    #main-visual .wpex-bg-overlay-wrap span.wpex-bg-overlay.wpex-bg-black{ background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgb(0 0 0)) !important; opacity: 100% !important;}

    #main-quotes{ padding-top: 10px; padding-bottom: 10px;}
    #main-quotes .vcex-testimonials-fullslider-avatar{ margin-bottom: 5px;}
    #main-quotes .vcex-testimonials-fullslider-avatar img{ width: 100px; height: 100px;}

    #main-curriculum .curriculum-info-box { padding: 0px 30px;}

    /* Subpage - 섹션 */
    .subpage-section-title{ text-align: center; padding-bottom: 60px;}
    .subpage-section-title h3{ display: inline-block; padding: 5px 0px; font-size: 34px; font-weight: 500; line-height: 40px; color: #000; letter-spacing: -.5px;}

    /* Subpage - 타이틀 - 이미지 포함 */
    #subpage-title{ min-height: 500px;}
    #subpage-title .subpage-title-info{ padding-top: 60px;}
    #subpage-title .subpage-title-info h1{ font-size: 32px; line-height: 42px;}
    #subpage-title .subpage-title-info p{ padding-bottom: 20px; margin-top: 10px; font-size: 18px; font-weight: 400; line-height: 28px; color: #000;}    

    /* Subpage - 커리큘럼 & 러닝시스템 - 메뉴*/
    #subpage-contents-first { padding-top: 25px;}
    #subpage-contents-first .vcex-navbar { font-size: 16px;}
    #subpage-contents-first .vcex-navbar .vcex-navbar-mobile-select{ border: 1px solid #333;}
    #subpage-contents-first .vcex-navbar .vcex-navbar-mobile-select select{ height: 60px;}        

    /* Subpage - 커리큘럼 - 인트로 */
    #subpage-contents-first .curriculum-contents-row{ padding: 0px;}
    #subpage-contents-first .curriculum-contents-row .curriculum-contents-box{ padding: 0px 10px; text-align: center;}

    /* Subpage - 커리큘럼 - 콘텐츠 포인트 */
    #curriculum-contents-point{ padding-top: 50px; padding-bottom: 0px; background: #f7f7f7;}
    #curriculum-contents-point .curriculum-contents-point-row{ padding-bottom: 50px;}    
    #curriculum-contents-point .curriculum-contents-point-row-inner{ display: flex; flex-wrap: wrap;}
    #curriculum-contents-point .curriculum-contents-point-row-inner img{ width: 100px; }
    #curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title{ padding-bottom: 60px;}
    #curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title h3{ font-size: 18px; line-height: 28px;}
    #curriculum-contents-point .curriculum-contents-point-row .curriculum-contents-point-title h3 strong{ font-size: 34px; line-height: 46px;}
    #curriculum-contents-point .curriculum-icon-box-title{ margin-top: 15px; margin-bottom: 15px; text-align: center;}
    #curriculum-contents-point .curriculum-icon-box-title h3{ font-size: 16px; line-height: 24px;}

    /* Subpage - 커리큘럼 - 학생 제작 결과물 */
    #curriculum-portfolio{ padding-top: 60px; padding-bottom: 0px; background: #fff;}

    /* Subpage - 러닝시스템 - 시스템 */
    .system-contents-head-row{ padding: 50px 0px 0px; background-color: #f7f7f7;}
    .system-contents-head-row .system-contents-head-title{ padding: 0px 15px 0px; text-align: center;}
    .system-contents-head-row .system-contents-head-title h3{ margin-bottom: 10px; font-size: 36px; line-height: 48px;}    

    /* Subpage - 러닝시스템 - 시스템 */
    .system-contents-list-row{ padding: 50px 0px;}  
    .system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap{ padding-left: 60px; padding-top: 0px; margin-top: -55px;}
    .system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap h3{ font-size: 36px; font-weight: 700; line-height: 46px; color: #000;}
    .system-contents-list-row .system-contents-list-item .wpb_wrapper .info-wrap h3 strong{ display: inline-block; padding: 0px 0px 10px; font-size: 28px; font-weight: 700; line-height: 40px; letter-spacing: -1px; color: #000;}
    .system-contents-head-row .system-contents-head-title p{ font-size: 16px; line-height: 28px;}

    /* Subpage - 러닝시스템 - 학습관리 */
    #manage-contents{ padding-top: 50px; padding-bottom: 0px;}
    .manage-contents-row{ padding: 0px 0px 0px}
    .manage-contents-row .vc_column_container.manage-contents-col{ padding: 0px 30px 20px;}
    .manage-contents-row .vc_column_container.manage-contents-col .vc_column-inner{ padding: 30px; margin-bottom: 0px; border: 1px solid #ebebeb; border-radius: 30px; background: #f7f7f7;}
    .manage-contents-row .manage-contents-list-item .wpb_wrapper{ padding: 20px 0px 0px;}
    .manage-contents-row .manage-contents-list-item .wpb_wrapper h3{ font-size: 20px; font-weight: 700; line-height: 32px; letter-spacing: -1px; color: #000;}
    .manage-contents-row .manage-contents-list-item .wpb_wrapper p{ margin-top: 5px; font-size: 14px;}

    /* Subpage - 튜터 */
    .tutor-title-box h3{ font-size: 24px; line-height: 36px;}

    /* Subpage - 수강권 구매 */
    .product{ margin-top: 0px;}
    .product-list ul .item{ width: 48%;}

    /* Subpage - 운영정책 */
    .reg-title{ padding-top: 40px; }
    .reg-content-group .inner { padding: 20px 0px 0px;}
}

@media screen and (max-width: 600px) {

    /* Visible */
    .mobile-show { display: block;}
    .mobile-hidden{ display: none;}

    /* Footer */
    .footer-row-wrap .footer-row .footer-info .footer-info-list li{ font-size: 13px;}

    /* Subpage - 커리큘럼 - 특징 */    
    #curriculum-feature .curriculum-feature-box{ padding: 20px; border: 1px solid #ddd; border-radius: 10px;}
    #curriculum-feature .curriculum-feature-box dl dt{ padding-bottom: 10px; font-size: 24px; font-weight: 700; line-height: 34px; color: #000;}
    #curriculum-feature .curriculum-feature-box dl dd{ margin-bottom: 10px; font-size: 14px; line-height: 26px;}

    /* Subpage - 커리큘럼 - 수강권 구매 */
    .curriculum-single-links-fixed.view{ visibility: visible; width: 100%; bottom: 0px; opacity: 1;}
    .curriculum-single-links-fixed.view.end{ visibility: hidden; bottom: 10px;}
    
    .curriculum-single-links-fixed .inner .links-wrap ul li .btn-flat{ width: 100%; border-radius: 40px;}
    .curriculum-single-links-fixed.view .inner .links-wrap ul li .btn-flat{ width: 100%; border-radius: 0px;}
    
    /* Subpage - 커리큘럼 - 인트로 */
    #subpage-contents-first .curriculum-contents-row{ padding: 0px;}
    #subpage-contents-first .curriculum-contents-row .curriculum-contents-box{ text-align: center;}

    /* Subpage - 튜터 */
    ul.vcex-filter-links li .theme-button.minimal-border{ border: 1px solid #ddd; border-radius: 30px; background-color: #f7f7f7;}
    ul.vcex-filter-links li.active .theme-button.minimal-border{ background-color: #000;}

    .tutor-title-box{ padding-top: 30px;}
    .tutor-title-box h3{ font-size: 28px; line-height: 42px;}    
    .staff-entry-details.entry-details{ padding: 0px 15px; border: 0px !important;}
    .staff-entry-details.entry-details h3.staff-entry-title{ font-size: 20px; line-height: 1.4;}
    .staff-entry-details.entry-details .staff-entry-categories{ font-size: 14px; line-height: 24px;}

    /* Subpage - 튜터 - 상세보기 */
    .tutor-detail-row{ padding-top: 0px;}
    .tutor-detail-row .tutor-detail-box{ padding: 20px;}

    .tutor-detail-row .tutor-detail-box .bio-wrap{ padding-top: 0px; padding-left: 0px;}
    .tutor-detail-row .tutor-detail-box .talk-wrap{ padding-top: 20px; padding-left: 0px; margin-top: 20px;}
    .tutor-detail-row .tutor-detail-box .nav-wrap a{ width: 100%; border-radius: 0px;}

    /* Subpage - 수강권 구매 */
    .product-list ul .item{ width: 100%;}
}