/* =========================================================
   LEON Custom CSS - Optimized
   - 폰트 @import 제거
   - 기본 폰트: Inter → 한글/미지원 글리프는 Pretendard fallback
   - i, svg icon 계열은 강제 폰트 지정하지 않음
   - 모바일에서 비용 큰 blur / infinite animation 일부 완화
   ========================================================= */

:root {
  --leon-font-base: "Inter", "Pretendard", "Pretendard Variable", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --leon-letter-spacing: -0.03em;
}

html {
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--leon-font-base);
  letter-spacing: var(--leon-letter-spacing);
  word-break: keep-all;
}

button,
input,
textarea,
select {
  font-family: inherit;
}

p,
li,
dt,
dd,
th,
td,
label,
small,
strong,
em,
b,
h1,
h2,
h3,
h4,
h5,
h6 {
  word-break: keep-all;
}

img,
video,
iframe {
  max-width: 100%;
}

img {
  height: auto;
}

.shadow-txt .text-wrapper p{text-shadow: 0 1px 20px rgba(0, 0, 0, 0.5);}

/* =========================================================
   01. Header / Navigation
   ========================================================= */
body .site-header.sticked {background-color: rgba(255, 255, 255, 0.8);backdrop-filter: blur(5px);}

/* 관리자 로그인 상태에서 WP Admin Bar 때문에 sticky header가 가려지는 문제 보정 */
body.admin-bar #masthead.site-header.sticked,
body.admin-bar #masthead.site-header.sticky.sticked {
  top: 32px !important;
}

/* 테마가 header 내부 Elementor wrapper를 직접 고정하는 경우 보정 */
body.admin-bar #masthead.site-header.sticked > .elementor {
  top: 32px !important;
}



/* 모바일/좁은 화면에서 WP 관리자 바는 보통 46px */
@media screen and (max-width: 782px) {
  body.admin-bar #masthead.site-header.sticked,
  body.admin-bar #masthead.site-header.sticky.sticked {
    top: 46px !important;
  }

  body.admin-bar #masthead.site-header.sticked > .elementor {
    top: 46px !important;
  }

  body.admin-bar #site-navigation.section-fullscreen-menu,
  body.admin-bar .section-fullscreen-menu {
    top: 46px !important;
    height: calc(100vh - 46px) !important;
  }
}

#menu-account li{position:relative;display:inline-block;margin-right:20px;}
#menu-account li:after{content:"";width:4px;height:4px;background:#aaa;border-radius:2px;position:absolute;right: -14px;top: 7px;}
#menu-account li:last-child:after{display:none;}
#menu-account li a{font-weight:700;}

.section:has(.related-wrap){border-top:1px solid #aaa;}

/* =========================================================
   02. Contact Form 7
   ========================================================= */
form.wpcf7-form>div label{position:relative !important;top:initial !important;pointer-events: auto !important;}

body .wpcf7-form h4{font-weight:800;margin-bottom:20px;}
body .wpcf7-form .two-col {margin-left:-10px;margin-right:-10px;}
body .two-col p{width:50%;display:block;float:left;padding:0 10px;line-height:1.5em !important;}
body .two-col p label{height:auto !important}
body .wpcf7-form label input,body form.wpcf7-form>div textarea{width:100%;background:#fff !important;border-radius:3px;resize:none;border: 1px solid rgba(0, 0, 0, 0.25) !important;}
body .wpcf7-form label input,body .wpcf7-form label select{height:50px !important;padding:0 14px !important;}
body .wpcf7-form label>span{display:block;color:rgba(0, 0, 0, 0.85);font-weight:700;margin-bottom:20px;    font-size: 20px;}
body .wpcf7-form label>span.essential:after{content:"*";color:#d63637;margin-left:5px;}
body .wpcf7-form label>span[data-name="project"]{margin-bottom:-20px !important;}
body .wpcf7-form label span[data-name="date-621"],body .wpcf7-form label span[data-name="reserv-time"]{width:49%;float:left;display:block;}
body .wpcf7-form label span[data-name="date-621"]{margin-right:2%;}
body .wpcf7-form label input[type="date"],body .wpcf7-form label select{}
body .wpcf7-form .two-col:after{content:"";display:block;clear:both;}
body .one-col{margin-left:-10px;margin-right:-10px;padding:0 10px;}
body .one-col p{margin-bottom:20px !important;width:100%;}
body .wpcf7-form input[type="submit"]{height:50px !important;line-height:50px;background:#000;min-width:150px;color:#fff;font-weight:700;border-radius:2px;font-size:16px;padding: 0 !important;margin-top:40px;}
body .wpcf7-form label select { -webkit-appearance: none; -moz-appearance: none;background-color:#fff;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23333' d='M4.2 5.6 8 9.4l3.8-3.8 1.2 1.2L8 11.8 3 6.8z'/%3E%3C/svg%3E");background-size:10px; background-repeat: no-repeat; background-position-x: calc(100% - 15px); background-position-y: calc(50% - 1px); border: 1px solid rgba(0, 0, 0, 0.25) !important; margin-right: 2rem; padding: 1rem; padding-right: 2rem; width: 100%;border-radius:3px;}
::placeholder{color:#aaa !important;}
body .wpcf7-form-control.wpcf7-radio{display: flex;flex-wrap: wrap;}
body .wpcf7-form-control.wpcf7-radio .wpcf7-list-item{margin-left:0 !important;flex: 0 1 33.3%;}
body .wpcf7-form-control.wpcf7-radio .wpcf7-list-item>label{display: flex;justify-content: left; align-items: center;gap: 10px;margin-bottom: 20px;}
body .wpcf7-form-control.wpcf7-radio .wpcf7-list-item input[type="radio"]{width:16px !important;height:16px !important;}
body .wpcf7-list-item .wpcf7-list-item-label{font-size:16px !important;margin-bottom:0 !important;}
body form.wpcf7-form>div textarea{height:120px;padding:14px !important;}
body .wpcf7 input:not([type=submit]):focus, .wpcf7 select:focus, .wpcf7 textarea:focus{border: 1px solid var(--nectar-accent-color);}
.btn-group{text-align:center}
.elementor-460 .elementor-element.elementor-element-13bdb2c .eael-contact-form-7 .wpcf7-not-valid-tip{display: block !important;position: absolute;font-size: 14px;}
form.wpcf7-form>div{padding-top: 40px !important;padding-bottom: 20px !important;}

/* =========================================================
   03. Visual Helpers / Motion
   ========================================================= */
.of-hidden>.elementor-widget-wrap{overflow:hidden !important;}
.elementor-widget-icon-box .elementor-icon-box-title{margin-top:0 !important;}
.fit-video{height: 100%;}
.leon-video-hero video {
  filter: contrast(1.12) saturate(1.08) brightness(1.02) !important;
  opacity: 1 !important;
  object-fit: cover !important;
  image-rendering: auto !important;
  backface-visibility: hidden;}
.custom-bg-sec .single-image:before{content:"";display: block;position: absolute; width: 15vw;height: 15vw;border:1px solid #999; z-index: -1;border-radius: 999px; top:100px;left: 6vw; opacity: 0.5;
  -webkit-transform: translateX(-4vw) translateY(-50px);transform: translateX(-4vw) translateY(-50px);-webkit-animation: pulse-border 3.5s cubic-bezier(.25,1,.33,1) infinite;animation: pulse-border 3s cubic-bezier(.25,1,.33,1) infinite;}
.custom-bg-sec .single-image:after{content:"";display: block;position: absolute; width: 15vw;height: 15vw;border:1px solid #999; z-index: -1;border-radius: 999px; top:100px;left: 6vw; opacity: 0.5;
  -webkit-transform: translateX(-4vw) translateY(-50px);transform: translateX(-4vw) translateY(-50px);-webkit-animation: pulse-border 3.5s cubic-bezier(.25,1,.33,1) infinite;animation: pulse-border 3s cubic-bezier(.25,1,.33,1) infinite;animation-delay: 1s;}


  @keyframes pulse-border{
0% {
    -webkit-transform: translateX(-4vw) translateY(-50px) translateZ(0) scale(0.6);
    transform: translateX(-4vw) translateY(-50px) translateZ(0) scale(0.6);
    opacity: 0.8;
}

100% {
    -webkit-transform: translateX(-4vw) translateY(-50px) translateZ(0) scale(1.8);
    transform: translateX(-4vw) translateY(-50px) translateZ(0) scale(1.8);
    opacity: 0;
}}
 

.speech-bb::after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  background: transparent;
  border-style: solid;
  pointer-events: none;
}

/* 왼쪽 말풍선: 꼬리가 오른쪽 아래를 향함 */
.speech-bb.left-side::after {
  right: 26px;
  bottom: -13px;

  border-top: 14px solid #fff;
  border-left: 14px solid transparent;
  border-right: 0 solid transparent;
  border-bottom: 0 solid transparent;
}

/* 오른쪽 말풍선: 꼬리가 왼쪽 아래를 향함 */
.speech-bb.right-side::after {
  left: 24px;
  bottom: -14px;

  border-width: 14px 14px 0 0;
  border-color: #fff transparent transparent transparent;
}
.float-visual{animation: soft-float 3s ease infinite;
  will-change: transform;}

@keyframes soft-float {
  0% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }

  50% {
    transform: translate3d(0, -10px, 0) rotate(-1.2deg);
  }

  100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }
}

/* =========================================================
   04. Product Cards / Shop Common
   ========================================================= */
.nayla-cart-button>span{position: relative; top: -1px;}
span.cart-count>span{font-size:12px;}
/**/
.nayla-single-product.metro .product-meta{mix-blend-mode: initial !important;font-weight:700;padding: 10px 30px;background: #fff; border-radius: 30px;margin: 15px; width: calc(100% - 30px);}
.nayla-single-product .product-meta>div.product-name,.nayla-single-product.metro .product-meta .product-price{font-size:16px;color:#000}
.nayla-single-product .product-meta>div:last-child{opacity:1 !important;}
.nayla-single-product a, .nayla-single-product .product-wrap{overflow:visible;}
.nayla-single-product img{border-radius: 10px;}
.elementor-widget-naylasingleproduct .product-acts a,.nayla-single-product .product-acts a.button{color:#fff !important;font-weight:700;background:#000 !important;padding:7px 15px;border-radius:3px;font-size:12px !important;}
.elementor-element.main-pick .nayla-single-product{transform: rotate(0deg);transition: all .45s cubic-bezier(0.25,1,0.33,1), transform .45s;}
.elementor-element.main-pick.col2 .nayla-single-product{transform: rotate(10deg);}
.elementor-element.main-pick.col3 .nayla-single-product{transform: rotate(-10deg);}
.elementor-element.main-pick .nayla-single-product:hover{transform: rotate(0deg);}
.main-pick:hover{z-index:10 !important;}
.main-pick.col1 .nayla-single-product img{box-shadow: 0 50px 170px -10px #0000004d;}
.main-pick.main-pick:hover .nayla-single-product img{box-shadow: 0 50px 170px -10px #0000004d;}
.woocommerce-shop main#primary.shop-page{padding-left: 40px;padding-right: 40px;}

h1.woocommerce-products-header__title.page-title{text-transform:initial !important;}
.woocommerce-shop .widget{background:none;}
.woocommerce-shop .wp-block-heading{font-size:24px;font-weight:700 !important;margin-bottom:0 !important;}
.wc-block-product-filter-price-slider .text input[type=text]{max-width:70px !important;border:none !important;background:none !important;padding:0 !important;font-weight:700;}
.wc-block-product-filter-price-slider .text input[type=text]:hover{border-bottom:2px solid var(--e-global-color-accent);}
.product-description{max-width:100% !important;word-break:keep-all;}
.product-image{position:relative;}
.product-tags{position:absolute;bottom:25px;left:15px;}
.product-tags span{background:#333;color:#fff;border-radius:5px;font-size:12px;padding:5px 10px;margin-right:5px;}
.product-category-above-title{display: inline-block;}
.product-category-above-title a{background:#000;color:#fff;border-radius:5px;font-size:12px;padding:5px 10px;margin-right:5px;font-weight:700}
.tagged_as a{background:#ddd;color:#000;border-radius:5px;font-size:12px;padding:5px 10px;margin-right:5px;font-weight:700}
.nayla-single-product .product-acts{mix-blend-mode: normal;}
.product-name h1.product_title.entry-title{margin-top:30px;margin-bottom:30px}
.nayla-single-product .product-acts a.button{background:#000 !important;color:#fff;font-size:12px;}
/*.product-tags span:before{content:"#";margin-right:3px}*/
.nayla-single-product .product-meta>div.product-name, .nayla-single-product.metro .product-meta .product-price{font-weight:700;line-height:1.5em !important;}
.product-meta.text-h6{line-height:1em !important;}
.text-h6 .woocommerce-Price-amount{font-size:16px;line-height:1.5em !important;font-weight:700;}
.main-pick .product-price{font-size:16px !important;}
.woocommerce-Price-amount .woocommerce-Price-currencySymbol{font-size:80%;}
.nayla-products-filtering ul li{font-weight:700}
#block-10{margin-top:35px;}
.wc-block-product-filter-price-slider__range .range-bar{background: linear-gradient(to right, #333 0%,var(--e-global-color-accent) 100%) !important;}
fieldset>.wc-block-product-filter-checkbox-list__item{display: flex;gap: 15px;flex-wrap:wrap;}
fieldset>.wc-block-product-filter-checkbox-list__item>.wc-block-product-filter-checkbox-list__item{flex:calc(33.3% - 10px);}
.icon-small svg{width:50px;height:50px}
.q-btn{position: absolute; top: 15px; left: 15px; background: var(--e-global-color-accent); height: 30px; border-radius: 15px;color: #fff;font-size: 12px;padding: 0 15px;line-height: 30px;}
.q-btn svg{width:12px;height:12px;fill:#fff;margin-right:5px;position:relative;top:2px;}
.custom-info-carousel .nayla-info-box-content .text-h4{position: absolute; font-size: 16px; font-weight: 700; right: -5px; margin: 0; width: 20px; height: 250px; top: 0; text-orientation: sideways-right; writing-mode: vertical-rl; display: block; margin-top: 10px;}
.nayla-product-head>div.nayla-product-image{width:50%;}
.nayla-product-head>div.product-info{width: 50%;padding-left: 5%;padding-right: 5%;}
.product-price{font-size: 30px !important;font-weight: 700;margin-bottom:30px;}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.single_buy_now_button{background:none;color:var(--e-global-color-accent);}

.product-attributes>span.sku_wrapper{margin-bottom:5px;}
.product-attributes>span.sku_wrapper .sku-title{font-weight:700;min-width:115px;display:inline-block;}
.woocommerce table.shop_attributes{border:none;width:auto;margin-bottom:0;border-collapse: collapse;}
.woocommerce table.shop_attributes th,.woocommerce table.shop_attributes td{width:initial;padding:0;border:none !important;text-align:left;background:none !important;font-style: normal;}
.woocommerce table.shop_attributes th{min-width:120px;}
.woocommerce table.shop_attributes td p{padding:0;}
.demo-button-wrap{display: inline-block; vertical-align: top;}
.demo-button-wrap a.demo-button{padding: 13px 12px 13px 14px;background: #000;border-radius: 40px;margin:12px 7px; width: 46px; height: 46px;}
.demo-button-wrap a.demo-button:hover{background:var(--e-global-color-accent);}
.demo-button-wrap a.demo-button svg{fill:#fff;}
/*.nayla-product-details.wrapper{display:none;}*/
.wrapper-full.related-wrap{padding:0 50px;}
.related-products h4{font-weight:700 !important;}
div.section:has(.wrapper-full.related-wrap){float:left;padding-top: 50px;margin-bottom:0;}
.product-detail-tabs>div{float:none;width:100%;}
.product-detail-tabs>div .tab-title{font-size:24px !important;font-weight:700;}
.product-description-full{width: 100%;}
th.product-total{display:none;}


/* =========================================================
   05. WooCommerce Checkout / Payment / Cart
   ========================================================= */
/*결제*/
.checkout-layout{border-top:3px solid #000;margin-top:30px}
.checkout-layout .wrapper-small{max-width:none;margin-left:-15px;display: block;width:auto;}
.checkout-layout h3{margin-top:0;font-size:24px;font-weight:700;margin-bottom:0;line-height:2em;}
.checkout-layout p{font-size:15px;margin-top:0;margin-bottom:15px}
.checkout-layout .form-row,.woocommerce-form-coupon-toggle{position:relative;padding-left:0 !important;}
#billing_first_name_field,#billing_company_field,#billing_phone_field,#billing_email_field{width:49%;display:inline-block;margin:0 0 15px;}
#billing_first_name_field,#billing_phone_field{margin-right:15px;}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea{padding:30px 15px 10px !important;font-size:15px}
.woocommerce form .form-row textarea{min-height:150px;margin-bottom:15px !important;}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea{background:#f7f7f7 !important;border:1px solid #ccc !important;}
.woocommerce form .form-row label,.showcoupon{position:absolute;left:17px;font-size:12px;top:10px;color:#777;z-index: 10;}
.woocommerce-additional-fields h3{margin: 30px 0px 0px;}
.woocommerce-privacy-policy-text{display:none;}
.woocommerce-terms-and-conditions-wrapper-txt{padding-left:25px;position:relative;}
.woocommerce-terms-and-conditions-wrapper-txt a{color:var(--e-global-color-accent);}
.woocommerce-terms-and-conditions-wrapper-txt:before{content:"";display:inline-block;width:6px;height:12px;border-bottom:2px solid var(--e-global-color-accent);border-right:2px solid var(--e-global-color-accent);transform:rotate(45deg);position:absolute;left:5px;top:3px;}
.woocommerce table.shop_table td.product-total,.woocommerce table .cart-subtotal td,.woocommerce table .order-total td{text-align:right !important;}

.woocommerce .woocommerce-terms-and-conditions, .woocommerce-page .woocommerce-terms-and-conditions{margin-bottom: 0 !important;}
.woocommerce form #payment .form-row label.woocommerce-form__label-for-checkbox{position:relative !important;left:0;}
.woocommerce form #payment .form-row label.woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text{font-size:0;}
.woocommerce form #payment .form-row label.woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text:before{content:"구매를 진행하시면";font-size:16px;}
.woocommerce form #payment .form-row label.woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text a{font-size:16px;color:var(--e-global-color-accent);font-weight:700;margin:0 0 0 5px;}
.woocommerce form #payment .form-row label.woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text:after{content:"에 동의하는 것입니다.";font-size:16px;}

.c-col-4.check-right{background:none;}
.woocommerce-checkout-review-order{border:1px solid #aaa !important;border-radius:5px 5px 0 0;}
.woocommerce table.shop_table{margin:0 ;border-collapse: collapse;}
.woocommerce table.shop_table th{    padding: 15px 15px;    font-size: 14px;}
.cart-prdtc-det span{font-weight:700;}
.cart-subtotal,.order-total{border-top:1px solid #aaa;}
.custom-checkout-coupon-form{background:#333;border-radius:0 0 5px 5px;padding:1em;position:relative;}
.custom-checkout-coupon-form .form-row.form-row-first {width:100% !important;}
.custom-checkout-coupon-form .form-row.form-row-last{width:80px;position:absolute;right:calc(1em - 5px);top:calc(1em + 15px);}
.woocommerce form .custom-checkout-coupon-form .form-row input.input-text{padding-right:80px !important;}
.custom-checkout-coupon-form p{margin:0 !important;}
.woocommerce-checkout #payment ul.payment_methods{display:flex;}
.woocommerce-checkout #payment ul.payment_methods li{margin-right:30px;}
:where(body:not(.woocommerce-block-theme-has-button-styles)):where(:not(.edit-post-visual-editor)) .woocommerce button.button{background:#000;color:#fff;}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{padding:0 15px;min-width: 200px; height: 50px; border-radius: 0; padding: 0;}

/* 라디오 버튼 숨기기 */
.wc_payment_methods input[type="radio"] { display: none;}

/* 전체 컨테이너 → 가로 정렬 */
.wc_payment_methods { display: grid; grid-template-columns: repeat(3, 1fr); gap:0px; margin: 20px 0 !important;padding:0 !important;border:none !important;}

/* 카드 기본 스타일 */
.wc_payment_methods .wc_payment_method label {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; padding: 20px; font-size: 14px; font-weight: 500; color: #777; cursor: pointer; border: 2px solid #fff; border-radius: 5px; background: #fff; transition: all 0.25s ease; text-align: center; min-height: 120px;width: 150px;}

/* 아이콘 공통 스타일 */
.wc_payment_methods .wc_payment_method label::before { content: ""; display: block; width: 60px; height: 36px; background-size: contain; background-repeat: no-repeat; background-position: center;}

/* 신용카드 */
.wc_payment_method.payment_method_nicepay_instant_card label::before { background-image: url("https://cdn-icons-png.flaticon.com/512/633/633611.png");}

/* 네이버페이 */
.wc_payment_method.payment_method_nicepay_instant_naverpaycard label::before { background-image: url("https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQMe6jelIGKUqp-zJPV5CfQ_yA6jnUTXrAOaw&s");}

/* 카카오페이 */
.wc_payment_method.payment_method_nicepay_instant_kakaopay label::before { background-image: url("https://i.namu.wiki/i/DRTBUHA314XYTx-pkzY4XSmQ0Job0j10vQhiETotjLCGUULQemriSC67Yh9UCsYq7Dw7WyvK0GkP9f3jP8r8gA.svg");}

/* 삼성페이 */
.wc_payment_method.payment_method_nicepay_instant_samsungpaycard label::before { background-image: url("https://upload.wikimedia.org/wikipedia/commons/2/2e/Samsung_Pay_Logo.png");}

/* 선택된 카드 */
.wc_payment_methods input[type="radio"]:checked + label { border-color: #f52f23; color: #000; font-weight: 700; box-shadow: 0 0 8px rgba(245, 47, 35, 0.25);background:#fff;}
.wc_payment_method.payment_method_nicepay_instant_vbank{display:none !important;}
/*장바구니*/
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name{font-weight: 700; font-size: 20px;}
.wc-block-cart-item__prices,.wc-block-components-product-metadata__description p{text-align:left;}
.wc-block-cart-item__wrap{position: relative;}
.wc-block-cart-item__wrap .wc-block-cart-item__quantity{position: absolute;right: 30px;top: 0;}
.wc-block-cart table.wc-block-cart-items,
.wc-block-cart .wp-block-woocommerce-cart-order-summary-block{border-top:3px solid #000;}
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image,
table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-total,
.wc-block-cart .wc-block-cart__totals-title{font-size:16px !important;padding-top:15px !important;padding-bottom:15px !important;}
.wc-block-cart-item__product .wc-block-cart-item__wrap .wc-block-components-product-price{display:none;}
.wc-block-components-formatted-money-amount{color: #000;}
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link){background: #000;color: #fff;}
body .woocommerce-no-js .showcoupon,.woocommerce-no-js .woocommerce-form-coupon-toggle{display:block !important;}

/* 단계별 숨김 처리 */
.step { display: none; }
.step.active { display: block; }

/* 버튼 스타일 */
.step-btn {margin-top: 20px;padding: 10px 20px;background: #333;color: #fff;border: none;cursor: pointer;}
/* 체크박스 숨기기 */
.div_checkbox.agree input[type="checkbox"] { display: none;}

/* 라벨 스타일 */
.div_checkbox.agree label { position: relative; display: inline-flex; align-items: center; cursor: pointer; font-size: 15px; font-weight: 500; color: #333; padding-left: 32px;transition: color 0.2s ease;}

/* 커스텀 체크박스 박스 */
.div_checkbox.agree label::before { content: ""; position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 20px; height: 20px; border: 2px solid #999; border-radius: 6px; background: #fff; transition: all 0.2s ease;}

/* 애니메이션 체크 표시 */
.div_checkbox.agree label::after {content: ""; position: absolute; left: 7px;top: 9px; width: 6px; height: 12px; border: solid #fff; border-width: 0 2px 2px 0; transform: translateY(-50%) rotate(45deg) scale(0); opacity: 0; transition: transform 0.2s ease, opacity 0.2s ease;}

/* 체크 상태 스타일 */
.div_checkbox.agree label.checked::before { background: var(--e-global-color-accent); border-color: var(--e-global-color-accent); box-shadow: 0 0 6px rgba(0, 0, 0, 0.15);}
.div_checkbox.agree label.checked::after { transform: translateY(-50%) rotate(45deg) scale(1); opacity: 1;}

/* 라벨 호버 효과 */
.div_checkbox.agree label:hover::before {border-color: var(--e-global-color-accent);}

/* =========================================================
   06. Terms / Account / Members
   ========================================================= */
/*이용약관*/
#terms-of-service h2,#privacy-policy h2{font-size:20px;}
#terms-of-service p,#terms-of-service li,#privacy-policy p,#privacy-policy li{font-size:14px;line-height:1.5em;}
#terms-of-service ol,#terms-of-service ul,#privacy-policy ol,#privacy-policy ul{padding-left:0;margin-bottom: 20px;margin-left:20px;}
#terms-of-service ul li,#privacy-policy ul li{list-style:disc;}
.header-login-btn-group .cosmosfarm-members-account-links{}
.header-login-btn-group .cosmosfarm-members-account-links a{font-weight:700;}
.header-login-btn-group .cosmosfarm-members-account-links .cosmosfarm-members-account-link,.header-login-btn-group .cosmosfarm-members-account-links .cosmosfarm-members-register-link{display:none;}
.header-login-btn-group .cosmosfarm-members-account-links > div:not(.cosmosfarm-members-loginout-link){display:none !important;}
.header-login-btn-group .cosmosfarm-members-account-links .cosmosfarm-members-loginout-link{display:inline-block;}

/*테마 로그인 페이지 커스텀*/
body.wp-theme-nayla .woocommerce h4:has(+ form.woocommerce-form-login),
body.wp-theme-nayla .woocommerce form .form-row .required{display:none;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login{position:relative;border: none !important;padding: 0;max-width:360px;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row label{position:relative;left: 0;font-size: 15px;top: 0; color: #191919;}
body.wp-theme-nayla .woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme{display:block;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row{padding:0;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row input.input-text{padding: 0 12px !important;height:50px;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row input[type="checkbox"]{margin-right: 7px;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row .woocommerce-form__label-for-checkbox{margin-bottom:5px;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login .form-row .woocommerce-form__label-for-checkbox span{font-size:14px;}
body.wp-theme-nayla .woocommerce .woocommerce-form-login .woocommerce-form-login__submit{float:none !important;margin: 0; padding: 0 20px !important;width: 100%;max-width: 100%;height: 50px;margin-bottom: 10px;}
body.wp-theme-nayla .woocommerce .woocommerce-form-login .woocommerce-form-login__submit:hover{background:var(--e-global-color-accent) !important;color:#fff !important;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login .link-text.register{margin-top:30px;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login .link-text.register,
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login .woocommerce-LostPassword.lost_password{text-align:center;}
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login .link-text.register a,
body.wp-theme-nayla .woocommerce form.woocommerce-form-login.login .woocommerce-LostPassword.lost_password span{color:var(--e-global-color-accent);font-weight:700;}

/*마이페이지 커스텀*/
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{float: none;width: 100%;}
.woocommerce-account .woocommerce-MyAccount-navigation ul{display: flex;gap: 20px;}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a{font-size:42px;font-weight:700;display: block;}
.woocommerce table.shop_table.woocommerce-orders-table{margin-top:20px;}
.woocommerce table.shop_table.woocommerce-orders-table,
.woocommerce table.shop_table.woocommerce-table--order-details{border-top:2px solid #000 !important;}
.woocommerce table.shop_table.woocommerce-orders-table tr th{height:50px;padding:0 10px !important;font-size:18px !important;text-align:center;}
.woocommerce table.shop_table.woocommerce-orders-table tr th,.woocommerce table.shop_table.woocommerce-orders-table tr td{border-bottom:1px solid #ccc !important;}
.woocommerce table.my_account_orders td, .woocommerce table.my_account_orders th{padding-top:10px;padding-bottom:10px;}
.woocommerce-orders-table__header.woocommerce-orders-table__header-order-thumbnail,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-thumbnail{width:126px;}
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-product .product-name{font-size:18px !important;}
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-date,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-status,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-total{font-size:16px !important;}
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-date,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-status,
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-total{text-align:center !important;}
.woocommerce-orders-table__header.woocommerce-orders-table__header-order-thumbnail{display:none !important;}
.woocommerce-orders-table__cell.woocommerce-orders-table__cell-order-actions a{background:#000 !important;color:#fff !important;}

.woocommerce-order-details h2,.woocommerce-customer-details h2{font-size:30px !important;}
.woocommerce table.shop_table.woocommerce-table--order-details td,
.woocommerce table.shop_table.woocommerce-table--order-details tfoot th{border-bottom: 1px solid #ccc !important;}
.woocommerce table.shop_table.woocommerce-table--order-details tfoot th,
.woocommerce table.shop_table.woocommerce-table--order-details tfoot td{text-align:right;}
.woocommerce table.shop_table.woocommerce-table--order-details .product-quantity,
.woocommerce table.shop_table.woocommerce-table--order-details tfoot td del{display:none;}
.woocommerce-customer-details address{padding: 30px !important;background: #fff;font-size: 24px;font-weight: 700;}
.wc-backward.button.wp-element-button{height:50px;line-height:50px;padding:0 20px;background:#000;color:#fff;}
.wc-backward.button.wp-element-button:hover{background:var(--e-global-color-accent);color:#fff;}

/*코스모스팜 회원관리 커스텀*/
.cosmosfarm-members-form .add-buttons .add-buttons-wrap{right: 10px;top: 10px;}
.cosmosfarm-members-form .profile-header .avatar-img label{position: relative;}
.cosmosfarm-members-form .profile-header .avatar-img img{ width: 100px; height: 100px;}
.cosmosfarm-members-form .profile-header .avatar-img .change-avatar-message{display:none;position: absolute; top: 0; left: 0; background: rgba(0, 0, 0, 0.5); width: 100%; height: 100%; border-radius: 50%; margin: 0; color: #fff; font-weight: 700;line-height: 100px;transition: all 0.3s; opacity: 0;cursor:pointer;}
.cosmosfarm-members-form .profile-header .avatar-img:hover .change-avatar-message{display:block;opacity:1;}
.cosmosfarm-members-form .profile-header .display-name{font-size: 18px;}
.cosmosfarm-members-form .members-link{display: flex; flex-direction: column;gap: 20px; background:none;border:none;}
.cosmosfarm-members-form .members-link li{display: initial;float: none;flex: 0 1 100%;width: 100%;}
.cosmosfarm-members-form .members-link li a{display: block; padding: 0; height: 50px;line-height: 50px;background: #000;border: none;}
.cosmosfarm-members-form .members-link li.logout{display:none;}
.cosmosfarm-members-form .members-link li a:hover {border-bottom: none;text-decoration: none;background:var(--e-global-color-accent);}

ul.grid-portfolio-filtering{margin-left:-15px !important;}

/* =========================================================
   07. Portfolio / Nayla Components
   ========================================================= */
/*portfolio custom*/
.elementor .project-image img, .project-image img, .project-image video, .project-image nayla-video{-o-object-position: center !important; object-position: center !important;}
body.single-portfolio .md-title{font-size: 100px !important;}
body.single-portfolio .section-project-half-image .nayla-button-wrap .nayla-button{font-size:18px !important;}

.next-project-caption,.next-project-title,.next-project-metas>div{font-weight: 700;}

.nayla-accordion{border-top: 2px solid #333;}
.nayla-accordion .accordion-wrap .accordion-item{border-bottom:1px solid #aaa;}
.nayla-accordion .accordion-title{padding-top:1em !important;padding-bottom: 0.75em !important;}
.nayla-accordion .accordion-title>span.has-anim-text.text-h4{font-size:30px;font-weight:700;}
.nayla-accordion .accordion-title .anim_line{padding-bottom:0 !important;}
.nayla-accordion .accordion-toggle i{font-size: 1.5em;}

.plan-badge{margin-left:auto !important;margin-right:auto !important;}
.subscribe-price .text-h3:before{content:"월";font-size:20px;}
.subscribe-price .text-h3:after{content:"원";font-size:20px;}

/* Nayla Circular Text 보호 */
.nayla-circular-text,
.nayla-circular-text * {
    word-break: normal !important;
    overflow-wrap: normal !important;
    white-space: nowrap !important;
    letter-spacing: normal !important;
}

.nayla-circular-text .circle-text,
.nayla-circular-text .circle-char,
.nayla-circular-text .circle-word {
    font-family: inherit !important;
    letter-spacing: normal !important;
    line-height: 1 !important;
    word-break: normal !important;
    white-space: nowrap !important;
}

.nayla-circular-text .circle-char,
.nayla-circular-text .circle-word {
    position: absolute !important;
    display: inline-block !important;
    transform-origin: bottom center !important;
    text-align: center !important;
}

.plus-num div.anim_line>span:after{content:"+";font-size:70%;margin-left:-5px;position:relative;top:-10px;}
.percent-num div.anim_line>span:after{content:"%";font-size:50%;margin-left:-5px;position:relative;top:-10px;}

/* =========================================================
   08. Badges / FAQ / Subscription Checkout
   ========================================================= */
/* Nayla 상품 카드 NEW 배지 */
.nayla-single-product .leon-nayla-new-badge {display: inline-flex;align-items: center;justify-content: center;flex: 0 0 auto;width: 22px;height: 22px;border-radius: 999px;background: rgba(216, 0, 0, 0.92);
    color: #fff;border: 1px solid rgba(255, 255, 255, 0.22);backdrop-filter: blur(8px);-webkit-backdrop-filter: blur(8px);font-size: 12px;font-weight: 700;line-height: 1;letter-spacing: -0.02em;box-sizing: border-box;z-index: 5;}

/* 썸네일 좌상단 배지 */
.nayla-single-product .leon-nayla-new-badge-thumb {position: absolute;top: 12px;right: 12px;width: 60px;height:26px;line-height:26px;border-radius:3px;}

/* 제목 옆 배지 */
.nayla-single-product .product-name {display: flex;align-items: center;gap: 7px;}
.nayla-single-product .leon-nayla-new-badge-title {position: relative;top: -5px;background: none;color: #f00;font-weight: 900; margin-bottom: 0 !important;}
/* Nayla N 배지 - 고급스러운 미세 펄스 */
.nayla-single-product .leon-nayla-new-badge-thumb {overflow: hidden; isolation: isolate; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.18); animation: leonNBadgeSoftPulse 2.8s ease-in-out infinite;}

/* 은은한 하이라이트 */
.nayla-single-product .leon-nayla-new-badge-thumb::after {content: "";position: absolute;top: -30%;left: -120%;width: 80%; height: 160%;background: linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, 0.28) 45%, rgba(255, 255, 255, 0.72) 50%, rgba(255, 255, 255, 0.28) 55%, transparent 100%); transform: rotate(18deg); animation: leonNBadgeSheen 4.8s ease-in-out infinite; pointer-events: none; z-index: -1;}

/* 너무 번쩍이지 않게, 살짝만 호흡 */
@keyframes leonNBadgeSoftPulse {
    0%, 100% {
        transform: translateZ(0) scale(1);
        opacity: .94;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.16);
    }

    50% {
        transform: translateZ(0) scale(1.035);
        opacity: 1;
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.24);
    }
}

/* 가끔 한 번씩 빛이 지나가는 느낌 */
@keyframes leonNBadgeSheen {
    0% {
        left: -120%;
        opacity: 0;
    }

    18% {
        opacity: 0;
    }

    35% {
        opacity: 1;
    }

    52% {
        left: 130%;
        opacity: 0;
    }

    100% {
        left: 130%;
        opacity: 0;
    }
}

/* 사용자가 움직임 줄이기 설정한 경우 애니메이션 제거 */
@media (prefers-reduced-motion: reduce) {
    .nayla-single-product .leon-nayla-new-badge-thumb,
    .nayla-single-product .leon-nayla-new-badge-thumb::after {
        animation: none;
    }
}

.woocommerce .woocommerce-ordering select{padding: 8px 35px 8px 20px !important;}
/* FAQ 더보기 버튼 영역 */
.ls-faq-section + .ls-faq-loadmore-wrap,
.ls-faq-loadmore-wrap {
  margin-top: 40px;
  text-align: center;
}

/* FAQ 더보기 버튼 */
.ls-faq-loadmore-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  min-height: 48px;
  padding: 0 28px;
  border: 1px solid rgba(0, 0, 0, 0.16);
  border-radius: 999px;
  background: #fff;
  color: #111;
  font-size: 15px;
  font-weight: 500;
  line-height: 1;
  cursor: pointer;
  transition: all 0.25s ease;
}

.ls-faq-loadmore-btn:hover {
  border-color: rgba(0, 0, 0, 0.42);
  transform: translateY(-2px);
}

/* 숨김 처리 */
.ls-faq-section .nayla-accordion.ls-faq-limited .accordion-item.ls-faq-hidden {
  display: none !important;
}


/* ========================================================= 
Cosmosfarm Members Subscription Checkout - LEON Style 
========================================================= */ 
.cosmosfarm-members-subscription-checkout { margin: 0 auto; color: #111; } 
/* 전체 배경 */ 
body:has(.cosmosfarm-members-subscription-checkout) { background: #ededed; } 
/* 상품명 */ .cosmosfarm-members-subscription-checkout .subscription-product-title { font-size: 38px; line-height: 1.2; font-weight: 900; letter-spacing: -0.05em; margin: 0 0 32px; padding-bottom: 28px; border-bottom: 3px solid #111; } 
/* 기본 상품 설명/가격은 화면에서 과하지 않게 정리 */ 
.cosmosfarm-members-subscription-checkout > .subscription-description, .cosmosfarm-members-subscription-checkout > .subscription-price, .cosmosfarm-members-subscription-checkout > .subscription-type { display: none; } 
.cosmosfarm-members-subscription-checkout > hr { display: none; } 
/* 폼 */ 
.cosmosfarm-members-subscription-checkout form { margin: 0; } 
/* 그룹 */ 
.cosmosfarm-members-subscription-checkout .checkout-attr-group { width: 100%; } 
/* 섹션 제목 */ 
.cosmosfarm-members-subscription-checkout .subscription-checkout-title { font-size: 22px; line-height: 1.35; font-weight: 900; letter-spacing: -0.04em; margin: 54px 0 14px; color: #111; } 
.cosmosfarm-members-subscription-checkout .subscription-checkout-title:first-child { margin-top: 0; } 
/* 구분선 */ 
.cosmosfarm-members-subscription-checkout hr { border: 0; border-top: 1px solid rgba(0, 0, 0, 0.16); margin: 34px 0 0; } 
/* 입력 행 */ 
.cosmosfarm-members-subscription-checkout .checkout-attr-row { margin: 0 0 12px; } 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_name, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_email, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_tel, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-site_url, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-host_info, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-user_id, 
.cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-ftp_pass{background:#fff; padding:10px 20px; border-radius:3px; border:1px solid #ddd;} 
/* 라벨 */ 
.cosmosfarm-members-subscription-checkout .attr-name { display: block; margin: 0; font-size: 12px; line-height: 1.3; font-weight: 400; color: #777; letter-spacing: -0.02em; } 
.cosmosfarm-members-subscription-checkout .required { color: #ff2b2b; font-weight: 800; } 
/* 입력 영역 */ 
.cosmosfarm-members-subscription-checkout .attr-value { width: 100%; } 
/* input/select 공통 */ 
body .cosmosfarm-members-subscription-checkout input[type="text"],
body .cosmosfarm-members-subscription-checkout input[type="email"], 
body .cosmosfarm-members-subscription-checkout input[type="number"], 
body .cosmosfarm-members-subscription-checkout input[type="password"], 
body .cosmosfarm-members-subscription-checkout select { width: 100%; height: 30px; margin: 0; padding: 0; border: none !important; border-radius: 3px; background: transparent!important; color: #111; font-size: 15px; font-weight: 700; letter-spacing: -0.02em; box-shadow: none; outline: none; transition: border-color 0.18s ease, background-color 0.18s ease, box-shadow 0.18s ease; box-sizing: border-box; } 
/* placeholder */ 
.cosmosfarm-members-subscription-checkout input::placeholder { color: #999; font-weight: 500; } 
/* focus */ 
body .cosmosfarm-members-subscription-checkout input[type="text"]:hover, 
body .cosmosfarm-members-subscription-checkout input[type="email"]:hover, 
body .cosmosfarm-members-subscription-checkout input[type="number"]:hover, 
body .cosmosfarm-members-subscription-checkout input[type="password"]:hover, 
body .cosmosfarm-members-subscription-checkout select:hover, 
body .cosmosfarm-members-subscription-checkout input[type="text"]:focus, 
body .cosmosfarm-members-subscription-checkout input[type="email"]:focus, 
body .cosmosfarm-members-subscription-checkout input[type="number"]:focus, 
body .cosmosfarm-members-subscription-checkout input[type="password"]:focus, 
body .cosmosfarm-members-subscription-checkout select:focus { border:none !important;box-shadow:none !important; } 
/* 설명 문구 */ 
.cosmosfarm-members-subscription-checkout .description { margin-top: 7px; font-size: 12px !important; line-height: 1.45; color: #777; letter-spacing: -0.02em; position: absolute; right: 20px; top: 10px; } 
/* 주문자 정보 일부 2열 배치 */ 
.cosmosfarm-members-subscription-checkout .meta-key-buyer_name, 
.cosmosfarm-members-subscription-checkout .meta-key-buyer_email, 
.cosmosfarm-members-subscription-checkout .meta-key-buyer_tel, 
.cosmosfarm-members-subscription-checkout .meta-key-site_url { display: inline-block; width: calc(50% - 7px); vertical-align: top; } 
.cosmosfarm-members-subscription-checkout .meta-key-buyer_name, 
.cosmosfarm-members-subscription-checkout .meta-key-buyer_tel { margin-right: 10px; } 
/* 호스팅 정보는 풀 너비 */ 
.cosmosfarm-members-subscription-checkout .meta-key-host_info, 
.cosmosfarm-members-subscription-checkout .meta-key-user_id, 
.cosmosfarm-members-subscription-checkout .meta-key-ftp_pass { display: block; width: 100%; } 
/* 카드 정보 입력 영역을 카드처럼 */ 
.cosmosfarm-members-subscription-checkout .meta-key-card-number, 
.cosmosfarm-members-subscription-checkout .meta-key-card-expiry, 
.cosmosfarm-members-subscription-checkout .meta-key-pwd-2digit, 
.cosmosfarm-members-subscription-checkout .meta-key-birth-business { background:#fff;padding:10px 20px;border-radius:3px; border:1px solid #ddd;position:relative; } 
/* 만료일 select */ 
.cosmosfarm-members-subscription-checkout .meta-key-card-expiry .attr-value { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 700; color: #555; } 
.cosmosfarm-members-subscription-checkout .meta-key-card-expiry select { width: 130px !important; min-width: 130px; padding-right: 36px; } 
/* 비밀번호 앞 2자리 */ 
.cosmosfarm-members-subscription-checkout .meta-key-pwd-2digit input[type="password"] { max-width: 160px; } 
/* 생년월일/사업자번호 */ 
.cosmosfarm-members-subscription-checkout .meta-key-birth-business input[type="password"] { max-width: 260px; } 
/* 동의 체크박스 영역 */ 
.cosmosfarm-members-subscription-checkout .meta-key-billing-agree { margin-top: 34px; } 
.cosmosfarm-members-subscription-checkout .meta-key-billing-agree .attr-value label { display: flex; align-items: center; gap: 8px; font-size: 14px; line-height: 1.5; font-weight: 600; color: #666; letter-spacing: -0.03em; } 
.cosmosfarm-members-subscription-checkout input[type="checkbox"] { width: 14px; height: 14px; margin: 0; accent-color: #111; } 
/* 결제 버튼 */
.cosmosfarm-members-subscription-checkout button[type="submit"] { display: inline-flex; align-items: center; justify-content: center; min-width: 180px; height: 48px; margin-top: 18px; padding: 0 28px; border: 0; border-radius: 0; background: #111; color: #fff; font-size: 15px; font-weight: 900; letter-spacing: -0.03em; cursor: pointer; box-shadow: none; transition: background-color 0.18s ease, transform 0.18s ease; } 
.cosmosfarm-members-subscription-checkout button[type="submit"]:hover { background: #333; transform: translateY(-1px); } 
.cosmosfarm-members-subscription-checkout button[type="submit"]:active { transform: translateY(0); } 

.leon-shop-attribute-filters{border-top: 1px solid #ccc;padding-top: 20px;}
.leon-shop-attribute-filters .leon-filter-group{padding-bottom:30px;margin-bottom:20px;border-bottom:1px solid #ccc;}
.leon-shop-attribute-filters>div:last-child{border-bottom:0;margin-bottom:0;padding-bottom:0;}
.leon-shop-attribute-filters h4.leon-filter-title{font-size:24px;margin:0;line-height:44px; margin-bottom: 5px;}
.leon-shop-attribute-filters .leon-filter-list li.leon-filter-item{display:inline-block;margin-right:8px;width: auto;float: none;}
.leon-shop-attribute-filters .leon-filter-list li.leon-filter-item a.leon-filter-link{background:#fff;padding: 5px 7px 5px 15px; border-radius: 999px;font-size: 14px;text-transform: uppercase;font-weight: 700;letter-spacing: 0px;}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item a.leon-filter-link:before{content:"";display:inline-block;width:10px;height:10px;background:#aaa;border-radius:999px;position: relative;left: -5px;}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-01 a.leon-filter-link:before{background:#222}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-02 a.leon-filter-link:before{background:#DC2626}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-03 a.leon-filter-link:before{background:#2563EB}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-04 a.leon-filter-link:before{background:#F2C94C}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-05 a.leon-filter-link:before{background:#4F8F6B}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-06 a.leon-filter-link:before{background:#14B8C6}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-07 a.leon-filter-link:before{background:#5B3F77}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-08 a.leon-filter-link:before{background:#E7A6B4}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-09 a.leon-filter-link:before{background:#E58A2A}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-10 a.leon-filter-link:before{background:#aaa}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-11 a.leon-filter-link:before{background:#1F2A44}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-12 a.leon-filter-link:before{background:#87CEEB}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-13 a.leon-filter-link:before{background:#D08A9B}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-14 a.leon-filter-link:before{background:#C8B79A;}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-15 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-16 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-17 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-18 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-19 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-group-color .leon-filter-list li.leon-filter-item.leon-filter-item-col-20 a.leon-filter-link:before{}
.leon-shop-attribute-filters .leon-filter-list li.leon-filter-item a.leon-filter-link .leon-filter-count{display: inline-block; width: 16px; height: 16px; background: #000; color: #fff; text-align: center; position: relative; margin-left: 5px; border-radius: 999px; font-size: 12px; line-height: 16px; top: -1px;}
.leon-shop-attribute-filters .leon-filter-list li.leon-filter-item.is-active .leon-filter-link{background:#000 !important;color:#fff !important;}
.leon-shop-attribute-filters .leon-filter-list li.leon-filter-item.is-active .leon-filter-link .leon-filter-count{background:var(--e-global-color-accent) !important;}

.wp-block-woocommerce-product-filter-active .wp-block-woocommerce-product-filter-removable-chips,.leon-shop-attribute-filters .leon-filter-reset-wrap{display:none;}
.wp-block-woocommerce-product-filter-clear-button :where(.wp-block-buttons){margin-top:0 !important;}
.wp-block-buttons>.wp-block-button.has-custom-width .wp-block-button__link{height:50px;}

.cosmosfarm-floating-menu .floating-menu-item img{box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22) !important;border-radius: 999px;}

 /* =========================================================
   LEON Shop Filter Button in Cosmosfarm Floating Menu
   - 상품 리스트 모바일에서만 사용
   ========================================================= */

@media (max-width: 767px) {

  :where(.wc-block-product-filters).is-overlay-opened .wc-block-product-filters__overlay-dialog{background: #eee;}
  :where(.wc-block-product-filters) .wc-block-product-filters__apply{ border-radius: 999px;}

  /* 상품 리스트의 원래 WooCommerce 필터 버튼은 화면에서 숨김 */
  body.woocommerce-shop .wc-block-product-filters__open-overlay,
  body.post-type-archive-product .wc-block-product-filters__open-overlay,
  #primary.shop-page .wc-block-product-filters__open-overlay {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  /* 원래 필터 블록이 빈 공간을 차지하지 않도록 정리 */
  body.woocommerce-shop #block-10,
  body.post-type-archive-product #block-10,
  #primary.shop-page #block-10 {
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    height: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  /* 코스모스팜 플로팅 메뉴 안에 삽입되는 필터 버튼 */
  .cosmosfarm-floating-menu .leon-filter-floating-menu-item {
    display: flex !important;
    width: 40px !important;
    height: 40px !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .cosmosfarm-floating-menu .leon-filter-floating-button {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 50% !important;

    background: #111 !important;
    color: #fff !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.22) !important;

    cursor: pointer !important;
    transition: transform 0.22s ease, opacity 0.22s ease !important;
  }

  .cosmosfarm-floating-menu .leon-filter-floating-button svg {
    width: 22px !important;
    height: 22px !important;
    display: block !important;
  }

  .cosmosfarm-floating-menu .leon-filter-floating-button:active {
    transform: scale(0.92) !important;
  }

  /* 필터 모달이 열려 있을 때는 플로팅 필터 버튼 숨김 */
  body.leon-filter-modal-open .cosmosfarm-floating-menu .leon-filter-floating-menu-item {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  /* WooCommerce 필터 모달이 플로팅 메뉴보다 위에 오도록 */
  #primary.shop-page .wc-block-product-filters__overlay,
  .wc-block-product-filters__overlay {
    z-index: 100000 !important;
  }
}

@media (min-width: 768px) {
  .cosmosfarm-floating-menu .leon-filter-floating-menu-item {
    display: none !important;
  }
}

/* ========================================================= 
선택사항: 주문 요약 박스 느낌을 만들고 싶은 경우 실제 HTML에 
요약 박스가 없으므로 기존 상품명/가격을 상단 카드처럼 보이게 처리 
========================================================= */ 

.cosmosfarm-members-subscription-checkout::after { content: ""; display: block; clear: both; } 
/* 데스크탑에서 폼 영역 여백 확보 */ 
@media (min-width: 1025px) { 
    .cosmosfarm-members-subscription-checkout form { float: left; width: calc(100% - 430px); } 
    .cosmosfarm-members-subscription-checkout { position: relative; } 
    
}
/* =========================================================
   LEON Checkout - Mobile Refinement & Focus Description
   현재 CSS 맨 아래에 추가
   ========================================================= */

/* 각 필드를 기준점으로 설정 */
.cosmosfarm-members-subscription-checkout .checkout-attr-row {
  position: relative;
}

/* description 기본 숨김 */
.cosmosfarm-members-subscription-checkout .description {
  display: none;
  opacity: 0;
  pointer-events: none;
}

/* 해당 필드 안에 focus가 들어왔을 때만 description 표시 */
.cosmosfarm-members-subscription-checkout .checkout-attr-row:focus-within .description {
  display: block;
  opacity: 1;
}
/* =========================================================
   Portfolio Detail Image More Button
   대상: .pf-img 내부 이미지 3개까지만 노출
========================================================= */

/* 숨김 처리된 이미지 */
.pf-img .pf-hidden-image {
  display: none !important;
}

/* 더보기 버튼 영역 */
.pf-img-more-wrap {
  width: 100%;
  display: flex;
  justify-content: center;
  margin: 48px 0 20px;
}

/* 더보기 버튼 */
.pf-img-more-btn {
  appearance: none;
  border: 1px solid #111;
  background: #111;
  color: #fff;
  min-width: 180px;
  height: 52px;
  padding: 0 28px;
  border-radius: 999px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: -0.02em;
  cursor: pointer;
  transition: all 0.25s ease;
}

/* 버튼 hover */
.pf-img-more-btn:hover {
  background: transparent;
  color: #111;
}




/* PC에서는 기존처럼 우측 상단 안내문구 형태 유지 */
@media (min-width: 768px) {
  .cosmosfarm-members-subscription-checkout .description {
    position: absolute;
    right: 20px;
    top: 10px;
    max-width: 260px;
    margin-top: 0;
    font-size: 12px !important;
    line-height: 1.45;
    color: #777;
    letter-spacing: -0.02em;
    text-align: right;
  }

  .cosmosfarm-members-subscription-checkout .checkout-attr-row:focus-within {
    border-color: #111;
    background: #fff;
  }
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767px) {

  /* 전체 여백 */
  .cosmosfarm-members-subscription-checkout {

  }

  /* 상품명 */
  .cosmosfarm-members-subscription-checkout .subscription-product-title {
    font-size: 28px;
    line-height: 1.2;
    margin-bottom: 28px;
    padding-bottom: 22px;
    border-bottom-width: 2px;
  }

  /* 섹션 제목 */
  .cosmosfarm-members-subscription-checkout .subscription-checkout-title {
    font-size: 20px;
    line-height: 1.35;
    margin: 42px 0 14px;
  }

  .cosmosfarm-members-subscription-checkout .subscription-checkout-title:first-child {
    margin-top: 0;
  }

  /* 모바일에서는 모든 입력 필드 1열 */
  .cosmosfarm-members-subscription-checkout .meta-key-buyer_name,
  .cosmosfarm-members-subscription-checkout .meta-key-buyer_email,
  .cosmosfarm-members-subscription-checkout .meta-key-buyer_tel,
  .cosmosfarm-members-subscription-checkout .meta-key-site_url,
  .cosmosfarm-members-subscription-checkout .meta-key-host_info,
  .cosmosfarm-members-subscription-checkout .meta-key-user_id,
  .cosmosfarm-members-subscription-checkout .meta-key-ftp_pass {
    display: block;
    width: 100%;
    margin-right: 0;
  }

  /* 카드형 필드 모바일 패딩 조정 */
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_name,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_email,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-buyer_tel,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-site_url,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-host_info,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-user_id,
  .cosmosfarm-members-subscription-checkout .checkout-attr-row.meta-key-ftp_pass,
  .cosmosfarm-members-subscription-checkout .meta-key-card-number,
  .cosmosfarm-members-subscription-checkout .meta-key-card-expiry,
  .cosmosfarm-members-subscription-checkout .meta-key-pwd-2digit,
  .cosmosfarm-members-subscription-checkout .meta-key-birth-business {
    padding: 12px 16px;
    border-radius: 4px;
  }

  /* 모바일 input 높이 재정의 */
  body .cosmosfarm-members-subscription-checkout input[type="text"],
  body .cosmosfarm-members-subscription-checkout input[type="email"],
  body .cosmosfarm-members-subscription-checkout input[type="number"],
  body .cosmosfarm-members-subscription-checkout input[type="password"],
  body .cosmosfarm-members-subscription-checkout select {
    height: 34px;
    font-size: 15px;
  }

  /* 모바일 라벨 */
  .cosmosfarm-members-subscription-checkout .attr-name {
    font-size: 11px;
    margin-bottom: 2px;
  }

  /* 모바일에서는 description을 absolute가 아니라 아래에 자연스럽게 표시 */
  .cosmosfarm-members-subscription-checkout .description {
    position: static;
    right: auto;
    top: auto;
    max-width: none;
    margin-top: 6px;
    padding-top: 6px;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    font-size: 12px !important;
    line-height: 1.45;
    color: #777;
    text-align: left;
  }

  /* focus된 필드 강조 */
  .cosmosfarm-members-subscription-checkout .checkout-attr-row:focus-within {
    border-color: #111 !important;
    background: #fff;
  }

  /* 만료일 영역 */
  .cosmosfarm-members-subscription-checkout .meta-key-card-expiry .attr-value {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 6px;
  }

  .cosmosfarm-members-subscription-checkout .meta-key-card-expiry select {
    width: 50% !important;
    min-width: 0;
    height: 34px;
  }

  /* 비밀번호/생년월일 필드도 모바일에서는 자연스럽게 전체 너비 */
  .cosmosfarm-members-subscription-checkout .meta-key-pwd-2digit input[type="password"],
  .cosmosfarm-members-subscription-checkout .meta-key-birth-business input[type="password"] {
    max-width: 100%;
  }

  /* 체크박스 영역 */
  .cosmosfarm-members-subscription-checkout .meta-key-billing-agree {
    margin-top: 28px;
  }

  .cosmosfarm-members-subscription-checkout .meta-key-billing-agree .attr-value label {
    align-items: flex-start;
    font-size: 13px;
    line-height: 1.5;
  }

  .cosmosfarm-members-subscription-checkout input[type="checkbox"] {
    flex: 0 0 auto;
    margin-top: 3px;
  }

  /* 결제 버튼 */
  .cosmosfarm-members-subscription-checkout button[type="submit"] {
    width: 100%;
    height: 54px;
    margin-top: 18px;
    font-size: 15px;
  }

  .pf-img-more-wrap {
    margin: 36px 0 16px;
  }

  .pf-img-more-btn {
    width: 100%;
    max-width: 280px;
    height: 50px;
    font-size: 14px;
  }
}

/* =========================================================
   09. Responsive
   ========================================================= */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    body,body *{letter-spacing:-1px;}
}
@media only screen and (max-width: 480px) {
    .m-hidden{display:none !important;}
    .m-br-none br{display:none;}
    .header-login-btn-group .cosmosfarm-members-account-links a{ font-size: 12px; position: relative; top: -3px; background: #fff; padding: 3px 15px; border-radius: 10px;}
    .elementor .elementor-background-video-hosted {object-position: 25% top;}
    .grid-projects-wrapper{display:block !important;padding-top: 0px !important;}
    .grid-project-wrap{padding-top:20px;}
    .nayla-infinite-tabs .tab-contents-wrap{padding-top:60px;}
    .nayla-single-product .product-meta>div.product-name,
    .nayla-single-product .product-meta>div{float:none;}
    .nayla-infinite-tabs .tab-title{margin-right:40px;}
    .products-carousel .carousel--item{padding-right:20px !important;}
    .m-inline-itm ul{text-align:left;}
    .m-inline-itm li{display:inline-block !important;margin-right:25px;}
    .m-inline-itm li:last-child{margin-right:0;}
    
    .woocommerce-shop main#primary.shop-page{padding-left: 10px !important;padding-right: 10px !important;}
    h1.woocommerce-products-header__title.page-title{font-size: 30px;}
    .nayla-products-filtering ul li{ font-size: 16px;}
    .shop-page-header .page-title>span{font-size:14px;}
    .site-main.shop-page .c-col-12{margin-bottom:20px;}
    .custom-info-carousel .carousel--item,
    .design-point .carousel--item{ width: 300px !important;}
    .custom-info-carousel .carousel--item .nayla-top-image{width:235px !important;}
    .design-point .carousel--item .nayla-top-image{width:260px !important;}
    .custom-info-carousel .carousel--fraction .text-h6,
    .custom-info-carousel .carousel--navigation .text-h6,
    .design-point .carousel--fraction .text-h6,
    .design-point .carousel--navigation .text-h6{font-size: 14px !important;}
    .grid-projects-wrapper hr{display:none;}
    ul.grid-portfolio-filtering{flex-wrap: wrap;}
    .portfolio-filters.hovered ul.grid-portfolio-filtering li{ margin-bottom: 15px;}
    .design-point .carousel--item,
    .design-point .nayla-info-box{min-height:initial !important;height: auto !important;}
    .design-point .nayla-info-box-content p{font-size:14px;margin:0;}
    .design-point .nayla-info-box-content .text-h4{font-size:20px !important;margin: 10px 0 0 !important;}
    
    body .wpcf7-form label>span{font-size:15px; margin-bottom: 10px;}
    body .wpcf7-form .two-col,body .one-col{margin-left:0;margin-right:0;}
    body .two-col p{width: 100%;}
    body .wpcf7-form-control.wpcf7-radio .wpcf7-list-item{ flex: 0 1 100%;}
    body .wpcf7-list-item .wpcf7-list-item-label {font-size: 14px !important;}
    body .wpcf7-form-control.wpcf7-radio{margin-top: 20px !important;}
    body .wpcf7-form label input, body .wpcf7-form label select{height: 40px !important;font-size: 14px;}
    body form.wpcf7-form>div textarea{font-size: 14px;}
    .wpcf7-spinner{position: absolute;margin-top: 40px;}
    
    .cosmosfarm-members-form .members-link li a{font-size: 14px;}
    .checkout-layout{margin-top:15px;}
    .nayla-checkout-sec.section{margin-top: 30px;}
    .checkout-layout .wrapper-small{margin-left: 0;}
    .checkout-layout .wrapper-small .c-col-8{padding:0 !important;}
    #billing_first_name_field, #billing_company_field, #billing_phone_field, #billing_email_field{width:100% !important;margin-right:0 !important;}
    .woocommerce-checkout #payment ul.payment_methods{flex-wrap: wrap;}
    .woocommerce-checkout #payment ul.payment_methods li{margin: 0 7.5px 15px 7.5px !important;}
    .woocommerce-checkout #payment div.form-row {padding-top:0 !important;padding-right:0 !important;}
    
    .nayla-product-head>div{float:none !important;width:100% !important;}
    .nayla-product-head>div.product-info{padding: 40px 20px 50px !important;}
    .product-category-above-title{display: block;margin-bottom: 20px;}
    .nayla-product-details.wrapper{max-width: 100vw;}
    
    .single-product .product-name h1.product_title.entry-title {margin-top: 10px; margin-bottom: 0px;font-size: 30px;}
    .single-product .product-price{font-size: 24px !important;margin-bottom: 10px;}
    .single-product .product-description {margin-bottom: 20px;}
    .single-product .product-description p{font-size:14px;line-height: 1.7em;}
    .single-product .product-attributes>span.sku_wrapper .sku-title,
    .single-product .product-attributes>span.sku_wrapper .sku,
    .woocommerce.single-product  table.shop_attributes th,
    .woocommerce.single-product  table.shop_attributes td p{font-size:14px !important;}
    .single-product .product-attributes>span.sku_wrapper .sku-title{min-width: 95px;}
    .woocommerce.single-product  table.shop_attributes th {min-width: 100px;}
    
    .woocommerce.single-product  .nayla-product-head .product-add-to-cart{position: fixed; bottom: 0; left: 0; z-index: 999999999; width: 100vw; background: #191919;display: flex;justify-content: space-between;}
    .single-product button.single_add_to_cart_button.button.alt,
    .single-product .nayla_add_to_cart input,
    .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt.single_buy_now_button{font-size: 14px;}
    .woocommerce .quantity .qty{width: 45px;}
    .single-product .nayla_add_to_cart{padding: 15px 20px;border-radius: 0;}
    .nayla_add_to_cart::after{border-radius: 0 !important;}
    .single-product button.single_add_to_cart_button.button.alt,
    .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button{padding: 5px;}
    .single-product .demo-button-wrap a.button.demo-button{ padding: 0; margin: 0; height: 60px; width: 60px; border-radius: 0; text-align: center; line-height: 60px;background:var(--e-global-color-accent);}
    .single-product .demo-button-wrap a.button.demo-button svg{width:16px;height:16px;}
    
    .nayla-accordion .accordion-title>span.has-anim-text.text-h4{font-size:16px;font-weight:700;}
    .nayla-accordion .accordion-title {padding-top: 0.75em !important;}
    
    .custom-bg-sec .single-image:before,
    .custom-bg-sec .single-image:after{width: 60vw;height: 60vw;}
    .nayla-button.fill.icon-left a, .nayla-button.outline.icon-left a{font-size:14px;}
}
@media all and (min-width:481px) and (max-width: 1024px){
 .elementor-section.tb-wide .elementor-container{max-width:100% !important;}
 .nayla-infinite-tabs .tab-contents-wrap{padding-top:60px}
 .grid-project-meta>div span{font-size:14px !important;}
    
}

/* =========================================================
   10. Mobile Performance Guards
   ========================================================= */
@media (max-width: 767px) {
  body .site-header.sticked {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background-color: rgba(255, 255, 255, 0.96) !important;
  }

  .leon-video-hero video {
    filter: none !important;
  }

  .custom-bg-sec .single-image::before,
  .custom-bg-sec .single-image::after,
  .float-visual,
  .nayla-single-product .leon-nayla-new-badge-thumb,
  .nayla-single-product .leon-nayla-new-badge-thumb::after {
    /*animation: none !important;*/
  }

}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}
