/* :root {
  --layout-width: 1280px;
  --sidebar-width: 320px;
} */

button, a {
  outline: none;
  transition: transform 0.2s ease;
}

button:focus-visible,
a:focus-visible {
  outline: 2px solid #006b5b;
  outline-offset: 2px;
}

button:active,
a:active {
  transform: scale(0.97);
}

/* #footer {display:none;} */
body.is-event #footer {display:none;}
body.is-event-page #footer {display: block;}

.event-page {margin:100px 0;padding-top:60px;}
.event-page.is-empty {padding-bottom:200px;}
.event-layout {width:100%;max-width:1286px;margin:0 auto;display:flex;gap:40px;align-items: flex-start;position:relative;}

/* 좌측 이벤트 메인 */
.event-main {width:945px;}

.event-hero__label {font-size:40px;font-weight:700;line-height:50px;margin-bottom:20px;letter-spacing: -1.6px;}

/* 디데이 */
.event-hero__meta {display: flex;align-items: center;gap:20px;font-size:18px;}
.event-hero__meta .event-hero__dday {color:#00594C;font-weight:700;}
.event-hero__divider {--progress: 0%;position: relative;display: inline-block;width: 80px;height: 4px;overflow: hidden;vertical-align: middle;flex-shrink: 0;background:#D9D9D9;}
.event-hero__divider::after {content: '';position: absolute;left: 0;top: 0;width: var(--progress, 0%);height: 100%;display: block;background:#393939;}
.event-hero__dday.is-urgent {color: red;font-weight: 700;}

.event-hero__banner {display: block;width:100%;margin:40px 0;}

/* 이벤트 그룹 */
.product-group {padding:40px;border: 1px solid #EBECEF;border-radius:20px;}
.product-group + .product-group {margin-top:40px;}
.product-group__head {display: flex;justify-content: space-between;align-items: flex-end;gap: 20px;padding-bottom: 20px;border-bottom: 2px solid #0d6b5d;}
.product-group__title-sub {color:rgba(166, 188, 167, 0.79);line-height:20px;font-size:20px;font-weight:500;letter-spacing: -0.8px;}
.product-group__title {font-size:40px;line-height:70px;font-weight:700;letter-spacing: -1.6px;}
.product-group__notice {font-size:16px;line-height:45px;font-weight:400;color: #B4B4B4;}

/* 이벤트 리스트 */
.product-item + .product-item {border-top: 1px dotted #D9D9D9;}
.product-item:last-child {border-bottom: 1px dotted #D9D9D9;}

.product-card {position:relative;padding:30px 20px;width:100%;text-align: left;background: none;border: 0;cursor: pointer;}
.product-card__list {display: flex;justify-content: space-between;width: 100%;}
.product-card.is-selected {background: rgba(13, 107, 93, 0.08);}
.product-card.is-selected .product-overlay {opacity: 0;display:none;}
.product-card__title {font-size:22px;font-weight:500;line-height:22px;display:block;letter-spacing: -0.88px;}
.product-card__desc {font-size: 16px;line-height:16px;color:#B0B0B0;margin-top:10px;}
.product-card__price {text-align:right;display:flex;justify-content:center;align-self:center;line-height:30px;}
.product-card__origin {display: block;color: #B0B0B0;font-size: 16px;align-self:flex-end;line-height:normal;margin-right:20px;letter-spacing: -1.2px;}
.product-card__sale {display: block;color: #00594C;font-size: 30px;font-weight: 700;}
/* 모바일 버전 */
.product-card__action {display: none;}

/* 아이템 하버 - js로 구현*/
.product-overlay__inner {position:absolute;inset:0;display:flex;justify-content:center;color:#fff;opacity: 0;transition: opacity 0.2s ease;pointer-events: none;background: rgba(0, 89, 76, 0.60);}
.product-overlay.is-show .product-overlay__inner {opacity: 1;}  
.product-overlay .icon {font-size:42px;line-height:42px;outline:2px #fff solid;border-radius:50%;width:41px;height:41px;display:flex;align-items: center;justify-content: center;align-self:center;}
.product-overlay .text {font-size:40px;line-height:40px;font-weight:700;margin-left:20px;align-self: center;}

/* 사이드바 */
.event-sidebar {position:sticky;top:164px;right: max(20px, calc((100vw - 1280px) / 2));width:300px;overflow: hidden;transition: top 0.2s ease; align-self: flex-start;}
.event-search {position:relative;line-height:0;margin-bottom: 20px;}
.event-search::before {content:'';width:100%;position:absolute;right:20px;top:0;bottom:0;margin:auto;display:block;width:26px;height:26px;background:url('/images/upic/event/event-search.svg') no-repeat center center;}
.event-search input:hover, .event-search input:focus {outline:none;border: 0;}

.event-sidebar__inner { display: flex;flex-direction: column;gap: 20px;}
.event-sidebar__inner input {width:100%;border:none;height:60px;line-height:60px;font-size:18px;color:#7F7F7F;border-radius:10px;box-sizing:border-box;padding: 0 50px 0 20px;background:#F5F5F5;}
.event-sidebar__inner input::placeholder {color:#7F7F7F;}

.event-category-wrap {position:relative;}
.event-category {max-height: calc(100vh - 264px);overflow-y:auto;box-sizing: border-box;padding:20px;background:#F5F5F5;}
.event-category__list li + li {margin-top:10px;}
.event-category__list button {display:block;width:100%;padding:0 0 0 20px;text-align:left;font-size:18px;line-height:24px;color:#353C49;height:80px;border-radius:10px;letter-spacing: -0.72px;background:#fff;}
.event-category__list button.is-active {font-weight:700;color:#fff;background:#00594C;}
.event-category__list button:hover {color:#00594C;font-weight:700;background: rgba(0, 89, 76, 0.10);}

.event-category::-webkit-scrollbar {width: 6px;}  
.event-category::-webkit-scrollbar-track {background: rgba(0, 89, 76, 0.10);} 
.event-category::-webkit-scrollbar-thumb {background:#00594C;border-radius: 10px;}
.event-category::-webkit-scrollbar-button {display: none;}

/* 푸터 버튼*/
.event-sidebar__footer {position:fixed;bottom:0;left:0;width:100%;}
.event-sidebar__footer button {display:block;width:100%;text-align:center;color:#fff;font-size:30px;font-weight:700;line-height:80px;height:80px;background:#00594C;}

/* 모바일용 */
.event-category-toggle {display: none;}

/* 팝업 */
.consult-panel[hidden] {display: none !important;}  
.consult-panel {position: fixed;inset: 0;z-index: 999;background: rgba(0, 0, 0, 0.5);display: flex;align-items: center;justify-content: center;}
.consult-panel__inner {position:relative;width:min(1080px,100%);padding:40px;background: linear-gradient(0deg, rgba(0, 89, 76, 0.10) 0%, rgba(0, 89, 76, 0.10) 100%), #FFF;}
.consult-form {display: flex;gap:40px;}
.consult-form__left, .consult-form__right {flex: 1;}
.consult-form__title {margin-bottom:20px;font-size:22px;font-weight: 700;color: #000;}
.consult-form__row + .consult-form__row {margin-top:10px;}
.consult-form__group + .consult-form__group {margin-top:40px;}
.consult-form__row--double {display: flex;gap:10px;}
.consult-form__row--double .consult-input {width:50%;} 
.consult-input, .consult-textarea {width: 100%;border: 0;border-radius: 10px;font-size: 18px;color: #7F7F7F;box-sizing: border-box;background: #fff;}
.consult-input {height: 74px;padding: 0 20px;}
.consult-textarea {height: 198px;padding: 24px 28px;resize: none;}
.consult-gender-wrap {width:50%;}
.consult-gender { display: flex;width: 100%;height: 74px;overflow: hidden;border-radius: 10px;background: #fff;}
.consult-gender__btn {flex: 1;border: 0;background: #fff;font-size:18px;font-weight: 400;color: #7F7F7F;cursor: pointer;transition: background .2s ease, color .2s ease;}  
.consult-gender__btn.is-active {background: #006b5b;color: #fff;font-weight: 700;}
.consult-apply-box {min-height:267px;max-height:267px;padding:5px 20px 20px;border-radius: 10px;overflow-y:auto;background: #fff;}
.consult-apply-box::-webkit-scrollbar {width: 4px;}  
.consult-apply-box::-webkit-scrollbar-track {background: rgba(0, 89, 76, 0.10);} 
.consult-apply-box::-webkit-scrollbar-thumb {border-radius: 10px;background:#00594C;}
.consult-apply-box::-webkit-scrollbar-button {display: none;}
.consult-apply-item {display: flex;align-items: center;gap: 14px;padding: 18px 0;border-bottom: 1px dashed #ddd;}
.consult-apply-item__remove {border: 0;background: none;width:16px;height:16px;font-size:10px;border-radius:4px; color:#fff;cursor: pointer;background:#858585;}
.consult-apply-item__title {flex: 1;font-size: 20px;font-weight: 600;color: #111;}
.consult-apply-item__price {font-size: 22px;font-weight: 700;color: #006b5b;}
.consult-agree {margin-top:20px;}
.consult-check {display: flex;align-items: center;font-size:14px;gap: 10px;color: #888;}
.consult-check + .consult-check {margin-top:5px;}
.consult-submit-btn {width: 100%;height: 84px;margin-top:20px;border: 0;border-radius: 16px;background: #006b5b;color: #fff;font-size: 28px;font-weight: 700;}
.consult-close-btn {position: absolute;top: 20px;right: 20px;color:#393939;}


@media all and (max-width:1000px) {

    .event-page {margin:0;padding:0 0 200px 0;}
    .event-layout {flex-direction: column-reverse;gap:0;}

    /* 좌측 이벤트 메인 */
    .event-main {width:100%;}

    .event-hero {display:flex;flex-direction: column-reverse;}
    .event-hero__banner {margin:0;}
    .event-hero__banner img {width: 100%;height: auto;}

    .event-hero__meta {margin:20px 0 40px;text-align:center;justify-content:center;}    

    /* 이벤트그룹 */
    .product-group {border:none;border-radius:0;padding:20px 16px;}
    .product-group + .product-group {margin-top:20px;}
    .product-group__head {display:block;}
    .product-group__title-sub {font-size:16px;line-height:16px;}
    .product-group__title {font-size:24px;line-height:24px;margin:16px 0 10px;}
    .product-group__notice {font-size:14px;line-height:14px;margin-top:10px;}

    .product-card {padding:20px 16px;}
    .product-card__list {display:block ;}
    .product-card__info {padding:0 20px 0 0;}
    .product-card__title {font-size:18px;line-height:22px;}
    .product-card__desc {font-size:16px;line-height:16px;}
    .product-card__price {justify-content:right;margin-top:15px;}
    .product-card__origin {margin-right:10px;font-size:16px;line-height:16px;align-self:flex-end;}
    .product-card__sale {font-size:26px;line-height:26px;}
    /* .product-card__action {position:absolute !important;right:20px !important;top:20px !important;left:auto !important;width:21px;height:21px;line-height:21px;font-size:21px;border-radius:50%;color:#fff;display:inline-flex;align-items:center;justify-content:center;background:#B0B0B0;transition: transform 0.4s cubic-bezier(.68,-0.55,.27,1.55), background 0.3s ease;transform: rotate(0deg);} */
    .product-card__action {position:absolute !important;right:20px !important;top:20px !important;left:auto !important;color:#fff;display:inline-flex;align-items:center;justify-content:center;background:url('/images/upic/event/event-plus.svg') no-repeat center center;background-size:100% 100%;width:21px;height:21px;transition: transform 0.4s cubic-bezier(.68,-0.55,.27,1.55), background 0.3s ease;transform: rotate(0deg);}
    .product-card.is-selected .product-card__action {transform: rotate(180deg);background:url('/images/upic/event/event-plus-active.svg') no-repeat center center;background-size:100% 100%;}

    /*  */
    .product-overlay {display:none !important;}

    /* 사이드바 */
    .event-sidebar {width:100%;position:static;width: 100%; top: auto;right: auto;width: 100%;}    
    .event-sidebar__inner {display: block;}
    .event-search {margin-bottom:0;padding:20px;}
    .event-search::before {right:40px;}

    .event-category {display: none;padding:0;width:100%;height:auto;z-index: 20;border: 1px solid #d9d9d9;background: #fff;}
    .event-category.is-open {display: block;}
    .event-category__list {max-height: 280px;}
    .event-category__list li + li {margin-top:0;}
    .event-category__list button {border-radius: 0;font-size:16px;line-height:24px;height:40px; }

    .event-category-wrap {margin-bottom: 0;}
    .event-category-toggle {position: relative;display: flex;align-items: center;justify-content: space-between;width: 100%;min-height:60px;padding: 0 44px 0 16px;border: 1px solid #d9d9d9;font-size: 18px;font-weight: 500;color: #00594C;text-align: left;background: rgba(0, 89, 76, 0.10);}
    .event-category-toggle::before {content:"";position:absolute;right:40px;top:0;bottom:0;margin:auto;height:30%;width:1px;background:#02594D;}
    .event-category-toggle::after {content:"";position:absolute;right:16px;top:50%;width:10px;height:10px;border-right:3px solid #006b5b;border-bottom:3px solid #006b5b;transform: translateY(-70%) rotate(45deg);transition: transform .2s ease;}
    .event-category-toggle.is-open::after {transform: translateY(-30%) rotate(-135deg);}    
    .event-category-toggle .event-category-toggle__text {letter-spacing: -0.72px;}
    
    .event-category__btn {display: block;width: 100%;padding: 14px 16px;border: 0;border-bottom: 1px solid #eee;background: #fff;text-align: left;font-size: 15px;line-height: 1.4;color: #333;border-radius: 0;}
    .event-category__btn.is-active {background: #f7f7f7;color: #006b5b;font-weight: 700;}

    .event-sidebar__footer {position: fixed;left:0;bottom:76px;width:100%;z-index: 30;}
    .event-sidebar__footer button {border-radius:0;}

    .event-consult-btn {width: 100%;min-height: 56px;border-radius: 12px;}

    /* 팝업 */
    .consult-form {display:block;}
    .consult-panel {inset:auto;top:70px;width:100%;}
    .consult-panel__inner {height: calc(100vh - 146px);width:100%;overflow-y:auto;padding:40px 20px;}
    .consult-form__title {margin-bottom: 10px;}
    .consult-input {height:60px;margin-top:10px;}
    .consult-gender-wrap {width:100%;margin-top:10px;}
    .consult-gender {height:60px;}
    .consult-form__row--double .consult-input {width:100%;}
    .consult-form__row--double {display: block;}
    .consult-form__row + .consult-form__row {margin-top:0px;}
    .consult-apply-item__title {font-size:16px;line-height:22px;}
    .consult-apply-item__price {font-size:22px;line-height:22px;}
    .consult-submit-btn {height:60px;font-size:18px;border-radius:10px;}

}