@charset "utf-8";

/* 컨테이너 영역 */
#wrap {
    background-color: #fff; 
    background-image: url("../../img/frt/main/e_main_bg.jpg");
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% 1080px;     
   /*  min-height: 100vh;*/}

#krds-header {background-color: transparent; }
#krds-header .krds-main-menu {background-color: transparent;  }
#krds-header .header-container .logo a {background-image:url(../../img/frt/main/e_logo_w.png);}
#sub_container {padding-top:0;}
#sub_container .inner {margin:0 auto; max-width:192rem;padding: 0 2rem;box-sizing: border-box;}

/* 0. 메뉴 클릭 시 또는 스크롤 시 로고 변경 */
.hasScrollY .header-container .logo a {background-image: url(../../img/frt/main/logo.png) !important;}
.scroll-up .header-container .logo a {background-image: url(../../img/frt/main/logo.png) !important;}


/* 1. 기본 상태:  글자 흰색 */
#krds-header .krds-main-menu .gnb-menu .gnb-main-trigger {color: #fff;}
.krds-main-menu .gnb-menu .gnb-main-trigger::after {background-image: url(../../img/frt/main/e_ico_angle_w.svg); width:1.3rem; height:1.3rem;}
.is-gnb-web.hasScrollY .krds-main-menu .gnb-menu .gnb-main-trigger::after {background-image: url(../../img/frt/main/e_ico_angle.svg); width:1.3rem; height:1.3rem;}
.scroll-up .krds-main-menu .gnb-menu .gnb-main-trigger::after {background-image: url(../../img/frt/main/e_ico_angle.svg); width:1.3rem; height:1.3rem;}
.krds-main-menu .gnb-menu .gnb-main-trigger .svg-icon.ico-go {background-image: url(../../img/frt/main/e_ico_go_w.svg);width:1.8rem; height:1.8rem;}
.is-gnb-web.hasScrollY .krds-main-menu .gnb-menu .gnb-main-trigger .svg-icon.ico-go {background-image: url(../../img/frt/main/e_ico_go.svg);width:1.8rem; height:1.8rem;}
.scroll-up .krds-main-menu .gnb-menu .gnb-main-trigger .svg-icon.ico-go {background-image: url(../../img/frt/main/e_ico_go.svg);width:1.8rem; height:1.8rem;}

/* 스크롤 시 또는 메뉴가 열렸을 때 배경 흰색 고정 */
.hasScrollY #krds-header,
.scroll-up #krds-header,
#krds-header.hasScrollY, 
#krds-header.is-open {background-color: #ffffff !important; }
.hasScrollY #krds-header,
.scroll-up #krds-header { background-color: #fff !important; }

/* 3. 배경이 흰색일 때 글자색 및 아이콘 색상 변경 */
.hasScrollY #krds-header .gnb-menu .gnb-main-trigger,
.scroll-up #krds-header .gnb-menu .gnb-main-trigger {color: var(--krds-color-light-gray-70) !important;}
.scroll-up #krds-header .gnb-menu .gnb-main-trigger {color: var(--krds-color-light-gray-70) !important;}

/* 4. 메뉴가 활성화(Active) 되었을 때 빨간색으로 변경 */
#krds-header .gnb-menu .gnb-main-trigger.active,
#krds-header .gnb-menu li:hover .gnb-main-trigger {color:var(--krds-color-light-point-60) !important;}

/* 5. 서브 메뉴 레이어기본 글자색*/
.gnb-toggle-wrap .gnb-sub-trigger,
.gnb-toggle-wrap .gnb-sub-list a {color: var(--krds-color-light-gray-70);}
.gnb-toggle-wrap .gnb-sub-list a:hover { color: var(--krds-color-light-point-60); }
.krds-main-menu .gnb-menu .gnb-main-trigger:focus {background-color:transparent;}
.krds-main-menu .gnb-menu .gnb-main-trigger:hover {background-color:transparent;}

/* korean글자 흰색 */
#krds-header .header-utility-wrap {border-bottom:0.1rem solid #4b4647;}
.scroll-up #krds-header .header-utility-wrap {border-bottom:0.1rem solid #ddd;}
.is-gnb-web.hasScrollY #krds-header .header-utility-wrap {border-bottom:0.1rem solid #ddd;}
.krds-btn.text.small { color: #fff;}
.krds-btn.text:active, .krds-btn.text:focus, .krds-btn.text:hover {color: #333;}
.is-gnb-web.hasScrollY .krds-btn.text.small {color: #333;}
#mobile-nav .krds-btn.text.small {color: #333;}

/* header-actions 글자 흰색 */
#krds-header .header-container .header-actions button, #krds-header .header-container .header-actions a { color: #fff;}
.scroll-up .krds-btn.text.small {color: #333;}

/* header-actions 글자 검정색 */
.is-gnb-web.hasScrollY #krds-header .header-actions a,
.is-gnb-web.hasScrollY #krds-header .header-actions button,
.scroll-up #krds-header .header-actions a,
.scroll-up #krds-header .header-actions button,
#krds-header.is-open .header-actions a,
#krds-header.is-open .header-actions button {color: var(--krds-color-light-gray-70);}

/* header-actions 아이콘 */
#krds-header .header-container .btn-navi.all::before {background-image: url(../../img/frt/main/e_ico_all_w.svg);width:1.8rem; height:1.8rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.all::before {background-image: url(../../img/frt/main/e_ico_all.svg);} 
.scroll-up #krds-header .header-container .btn-navi.all::before {background-image: url(../../img/frt/main/e_ico_all.svg);} 

#krds-header .header-container .btn-navi.sch::before {background-image: url(../../img/frt/main/e_ico_sch_w.svg);width:1.8rem; height:1.8rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.sch::before {background-image: url(../../img/frt/main/e_ico_sch.svg);} 
.scroll-up #krds-header .header-container .btn-navi.sch::before {background-image: url(../../img/frt/main/e_ico_sch.svg);} 
#krds-header .header-container .btn-navi.login::before {background-image: url(../../img/frt/main/e_ico_login_w.svg);width:1.8rem; height:1.8rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.login::before {background-image: url(../../img/frt/main/e_ico_login.svg);} 
.scroll-up #krds-header .header-container .btn-navi.login::before {background-image: url(../../img/frt/main/e_ico_login.svg);} 

#krds-header .header-container .btn-navi.logout::before {background-image: url(../../img/frt/main/e_ico_login_w.svg);width:1.8rem; height:1.8rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.logout::before {background-image: url(../../img/frt/main/e_ico_login.svg);} 
.scroll-up #krds-header .header-container .btn-navi.logout::before {background-image: url(../../img/frt/main/e_ico_login.svg);} 

#krds-header .header-container .btn-navi.join::before {background-image: url(../../img/frt/main/e_ico_join_w.svg);width:2rem; height:2rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.join::before {background-image: url(../../img/frt/main/e_ico_join.svg);} 
.scroll-up #krds-header .header-container .btn-navi.join::before {background-image: url(../../img/frt/main/e_ico_join.svg);} 

#krds-header .header-container .btn-navi.my::before {background-image: url(../../img/frt/main/e_ico_my_w.svg);width:2rem; height:2rem;}
.is-gnb-web.hasScrollY #krds-header .header-container .btn-navi.my::before {background-image: url(../../img/frt/main/e_ico_my.svg);} 
.scroll-up #krds-header .header-container .btn-navi.my::before {background-image: url(../../img/frt/main/e_ico_my.svg);} 

#krds-header .header-actions a:hover, #krds-header .header-actions a:focus, #krds-header .header-actions a:focus-visible, #krds-header .header-actions button:hover, #krds-header .header-actions button:focus, #krds-header .header-actions button:focus-visible, #krds-header .header-actions .action-item:hover, #krds-header .header-actions .action-item:focus {color: var(--krds-color-light-gray-70) !important; cursor: pointer;}

/* header-actions 아이콘 호버/포커스 시 아이콘 교체 */
#krds-header .header-container .btn-navi.sch:hover::before, #krds-header .header-container .btn-navi.sch:focus::before, #krds-header .header-container .btn-navi.sch:focus-visible::before {background-image: url(../../img/frt/main/e_ico_sch.svg);}
#krds-header .header-container .btn-navi.login:hover::before, #krds-header .header-container .btn-navi.login:focus::before, #krds-header .header-container .btn-navi.login:focus-visible::before {background-image: url(../../img/frt/main/e_ico_login.svg);}
#krds-header .header-container .btn-navi.join:hover::before, #krds-header .header-container .btn-navi.join:focus::before, #krds-header .header-container .btn-navi.join:focus-visible::before { background-image: url(../../img/frt/main/e_ico_join.svg);}
#krds-header .header-container .btn-navi.all:hover::before, #krds-header .header-container .btn-navi.all:focus::before, #krds-header .header-container .btn-navi.all:focus-visible::before { background-image: url(../../img/frt/main/e_ico_all.svg);}
#krds-header .header-container .btn-navi.logout:hover::before, #krds-header .header-container .btn-navi.logout:focus::before, #krds-header .header-container .btn-navi.logout:focus-visible::before {background-image: url(../../img/frt/main/e_ico_login.svg);}
#krds-header .header-container .btn-navi.my:hover::before, #krds-header .header-container .btn-navi.my:focus::before, #krds-header .header-container .btn-navi.my:focus-visible::before {background-image: url(../../img/frt/main/e_ico_my.svg);}

/* 메인 콘텐츠 영역 */
.main-content {display: flex; flex-direction: column; /*gap: 2rem;*/}
#sub_container > .inner:not(.in-between) {padding-bottom:4.5rem;}

/* 그리드*/
.top-grid {display: flex; justify-content: flex-start; align-items: stretch; padding: 4rem 5rem 4rem 2.7rem; margin: 0; box-sizing: border-box; width: 100%; flex-wrap: wrap; gap: 4rem;}
.bottom-grid {display: flex; justify-content: flex-start; align-items: stretch; padding: 0 5rem 0 2.7rem; margin: 0; box-sizing: border-box; width: 100%; flex-wrap: wrap; gap: 4rem;}

/* 좌측과 우측 */
.top-left, .bottom-left, .top-right, .bottom-right { flex: 1 1 0; min-width: 0;}
.top-center, .bottom-center { flex: 0.7 1 0; min-width: 28rem; min-width: 0; }
.top-left, .top-center, .top-right {display: flex; flex-direction: column;}
.top-left > section, .top-center > section, .top-right > section { flex: 1; display: flex; flex-direction: column; height: auto; }
.top-left, .top-center, .top-right, .bottom-left, .bottom-center, .bottom-right { display: flex; flex-direction: column;}
.top-left > section, .top-center > section, .top-right > section, .bottom-left > section, .bottom-center > section, .bottom-right > section {flex: 1 1 auto; display: flex; flex-direction: column; height: auto; }

/* 공통 */
.section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1.5rem;}
.section-title {font-size: 1.2rem; font-weight: 700; color: #fff;}
.section-title-wrap {display: flex; align-items: center; gap: 0.8rem;}

/* 히어로/검색 섹션 */
.slogan-search-section {display:flex; flex-direction: column; height: auto; min-height: min-content; max-width: 60rem; color: #fff; margin: 0 0 2rem 2.5rem; position: relative; /*overflow: hidden;*/}
.slogan-search-section > * { position: relative; z-index: 1;}
.slogan-title {font-size: 3.9rem; font-weight: 700; color: #fff; margin-bottom: 2rem; line-height: 1.3; letter-spacing: -0.01em;}
.search-wrapper {margin-bottom: 2.5rem; }
.search-input-wrap {display: flex; align-items: center;background: rgba(255, 255, 255, 0.08); border: 1px solid rgba(255, 255, 255, 0.15); border-radius: 1.5rem; padding: 1.1rem 2.5rem;  transition: all 0.3s;}
.search-input-wrap:focus-within { border-color: rgba(255, 255, 255, 0.3); background: rgba(255, 255, 255, 0.12);}
.hero-search-input { flex: 1;background: transparent; border: none; color: #fff; padding: 0.75rem 1rem; font-size: 2.4rem; font-weight:600;outline: none;}
.hero-search-input::placeholder {color: #fff;}
.search-icon-btn {background: transparent; border: none; color: #fff; padding: 0.5rem; cursor: pointer; display: flex; align-items: center; justify-content: center; transition: opacity 0.3s;}
.search-icon-btn .svg-icon {width: 2.6rem; height: 2.6rem; background-image: url("../../img/frt/main/e_ico_sch.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent;}

.filter-buttons {display: flex; align-items: flex-start; gap: 0.8rem;}
.filter-buttons h3 {font-size:1.7rem; color:#fff; opacity: 0.6; font-weight:600; margin: 0; flex-shrink: 0;   line-height: 3.4rem; }
.btn-group {display:flex; gap:0.75rem; flex-wrap: wrap; flex: 1; }
.filter-btn { width:12rem; min-width: 0; padding: 0.2rem 1.2rem 0.2rem 1.2rem; border-radius: 25rem; /*background: rgba(255, 255, 255, 0.05);*/ border: 1px solid rgba(255, 255, 255, 0.5); color: rgba(255, 255, 255, 0.7);  font-size: 1.6rem;  font-weight: 400; cursor: pointer;  transition: all 0.3s; height: 3.4rem; }
.filter-btn span {display: block;flex-grow: 1; text-align: center; overflow: hidden;  text-overflow: ellipsis;  white-space: nowrap;}
.filter-btn:hover {background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.25);}
.filter-btn.active {background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.25);}

/* Showcase 섹션 */
.showcase-section { max-width:60rem; margin:1.4rem 0 0 2.5rem; background-color:#293139; padding:3rem 3.5rem; border-radius: 1.2rem; }
.showcase-section .section-header {margin-bottom: 1.5rem; border-bottom:0.1rem solid #3f464d; padding-bottom:1.4rem;}
.showcase-section .section-title {color: #fff; font-size: 2.2rem; font-weight: 600;}
.showcase-add-btn {width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid rgba(212, 214, 215, 0.2);display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0;}
.add-icon {font-size: 1.4rem; font-weight: 500; line-height: 1;color: #fff;}
.showcase-main-card {margin-botto1.5rem; color: #fff;}
.card-title {font-size: 2.8rem;font-weight: 700;margin-bottom: 0.75rem; line-height: 1.3; }
.card-title a {display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.card-title.highlight { color: #da2e65;}
.card-subtitle { color: rgba(255, 255, 255, 0.6); margin-bottom: 0.5rem; font-size: 1.2rem; font-weight: 400;}
.smcard-btm {position: relative; align-items: center; display:flex; margin-top: 1.5rem;}
.card-date {color: rgba(255, 255, 255, 1); background: rgba(255, 255, 255, 0.1);border-radius:0.4rem; padding:0.5rem 1.4rem; font-size: 1.2rem; margin-bottom: 1.5rem; font-weight: 400;}
.card-featuring {display: flex; align-items: center; gap: 0.8rem; position: absolute; top: 0; right: 0;}
.featuring-label {color: #fff; font-size: 1.2rem;font-weight: 400;}
.featuring-count {background: #fff; color: #000; padding: 0.2rem 0.7rem; border-radius: 0.25rem; font-size: 1.5rem; font-weight: 600; min-width: 2rem; text-align: center;}

/* 스와이퍼 섹션 */
.swiper-section {position: relative; display:flex;/*max-width:64.6rem;*/margin: 0 auto;padding: 0 3rem; /*margin-top: 3.5rem;*/}
.showcase-carousel .swiper-wrapper {gap:2.5rem;}
.showcase-carousel .swiper-wrapper .swiper-slide {width:auto;}
.showcase-carousel .swiper-wrapper .swiper-slide > a { display: block;text-decoration: none;  border-radius: 0.8rem; outline: none; }
.showcase-carousel .swiper-wrapper .swiper-slide > a:focus {box-shadow: 0 0 0 0.3rem rgba(215, 35, 74, 0.5); }
.showcase-carousel .swiper-wrapper .swiper-slide > a:focus .item-details {opacity: 1; visibility: visible; transform: translateY(0);}
.showcase-carousel {width: 100%;max-width: 60rem;margin: 3rem auto 0; position: relative; overflow: visible !important;}
.carousel-item { position: relative;border-radius: 0.8rem; overflow: hidden; height: 100%;}
.carousel-image { position: relative; width: auto; height:26rem; border-radius:0.8rem; overflow: hidden;  background: #f0f0f0 url(../../img/frt/main/noImg.svg); background-repeat:no-repeat;background-position:center center;}
.carousel-image img {width: 100%;height: 100%; object-fit: cover; display:block;}
.item-title-overlay { position: absolute;top: 0;left: 0;width: 100%; height:100%; padding: 2rem; background: linear-gradient(to bottom, rgba(0,0,0,0.1), rgba(0,0,0,0.8) 80%); display:flex; justify-content: center; align-items: center; text-align: left;color: #fff; font-size: 1.7rem; font-weight: 600; margin: 0;}
.item-details {position: absolute;bottom: 0;left: 0; width: 100%; height: 17.5rem; display: flex; flex-direction: column; justify-content: flex-start; background: rgba(0, 0, 0, 0.85); color: #fff; padding:2rem 1.5rem 2rem 1.5rem;opacity: 0;visibility: hidden; transform: translateY(2rem); transition: all 0.3s ease-in-out;z-index: 10;}
.carousel-item:hover .item-details {opacity: 1; visibility: visible; transform: translateY(0);}
.item-divider { flex-shrink: 0; border-bottom: 0.1rem solid #81807f;padding-bottom: 0.8rem; }
.item-divider p {font-size:1.6rem; line-height: 1.3; font-weight:600; display: -webkit-box;-webkit-line-clamp: 2;  -webkit-box-orient: vertical;  overflow: hidden; word-break: break-all;}
.item-info {display: flex;flex-direction: column;gap: 0.5rem;  padding-top: 1.2rem;}
.item-info dt {display: block; font-size:1.2rem; font-weight:400;}
.item-info dd {display: block; font-size:1.3rem; font-weight:600;}

/* swiper-section(Showcase 캐러셀) Swiper 사용 시 간격 중복 방지 */
.showcase-carousel .showcase-viewport .swiper-wrapper {gap: 0 !important;}
/* Showcase 캐러셀: 슬라이드는 3개만 보이고, 버튼은 바깥쪽(-3rem) 배치 유지 */
.showcase-carousel { overflow: visible !important;}
.showcase-carousel .showcase-viewport.swiper {overflow: hidden; width: 100%;}
.showcase-carousel .swiper-button-prev,
.showcase-carousel .swiper-button-next { z-index: 50;}
/* Showcase Swiper: 더 이상 이동할 콘텐츠 없을 때 버튼 비활성(회색) */
.showcase-carousel .showcase-prev.disabled,
.showcase-carousel .showcase-next.disabled {opacity: 0.35; cursor: not-allowed; pointer-events: none;}

/* Swiper 네비게이션 버튼 */
.showcase-carousel .swiper-button-prev,
.showcase-carousel .swiper-button-next {width: 1.2rem; height: 2rem;top: 50% !important;  border:0; background-color: transparent; z-index: 20; margin-top: 0;}
.showcase-carousel .swiper-button-prev {left: -3rem;}
.showcase-carousel .swiper-button-next {right: -3rem;}
.showcase-carousel .swiper-button-next::after {width: 1.2rem; height: 2rem;background-image: url("../../img/frt/main/e_showcase-next.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent; transform: none; background-position: center center; background-repeat: no-repeat;background-size:contain; }
.showcase-carousel .swiper-button-prev::after {width: 1.2rem; height: 2rem;background-image: url("../../img/frt/main/e_showcase-next.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent;background-position: center center; background-repeat: no-repeat;background-size:contain;transform:rotate(-180deg); }

/*포커스*/
/* 1. 기본 브라우저 아웃라인 초기화 */
.showcase-carousel .swiper-slide a:focus,
.showcase-carousel .swiper-slide a:focus-visible {
	outline: none !important;
	box-shadow: none !important;
}

/* 2. 키보드 탭 키 포커스 시 슬라이드 부모 컨테이너 처리
   💡 Swiper 특성상 양옆 슬라이드가 잘리지 않도록 z-index만 확실하게 격상시킵니다.
*/
.showcase-carousel .swiper-slide:has(a:focus-visible) {
	position: relative !important;
	z-index: 10 !important; /* 포커스 시 인접 슬라이드나 그림자 위로 띄움 */
}

/* 3. [핵심] a::after를 최상위 스킨으로 얹어 KRDS 보라색 테두리 표출
   💡 내부 복잡한 마크업(.carousel-item, 이미지, 텍스트 등)을 건드리지 않고
      가장 완벽하게 핏을 맞추는 방식입니다.
*/
.showcase-carousel .swiper-slide a:focus-visible::after {
	content: '' !important;
	position: absolute !important;
	
	/* 💡 슬라이드 전체 영역 `.carousel-item` 외곽선에 완벽히 밀착하도록 0 프리셋 */
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	
	/* 💡 KRDS 규격 2px 보라색 실선 정의 */
	border: var(--krds-number-2) solid var(--krds-color-light-primary-50) !important;
	
	/* 💡 디자인에 맞는 카드 곡률 반경 적용 (기존 테두리 라운딩 값과 동일하게 맞춤) */
	border-radius: var(--krds-number-5) !important; 
	
	/* 💡 최상위 레이어 안착 및 마우스 인터랙션 방해 차단 */
	z-index: 99999 !important;
	pointer-events: none;
}

/* Event 섹션 */
.event-section { /*height: 50.8rem;*/ background: #d7234a; box-shadow: 1.2rem 1.2rem 0.1rem rgba(0, 0, 0, 0.2); border-radius:1.2rem;padding:2rem 4rem 4rem 4rem; width: 100%;height: auto;box-sizing: border-box;word-break: break-all; 
    overflow-wrap: break-word;
    white-space: normal;overflow: visible;}
.event-section .section-header { position: relative;color: #fff;margin-bottom: 1rem;border-bottom: 0.1rem solid #fff;  padding-bottom: 1rem; }
.event-section .section-title {color: #fff;font-size: 2.4rem; font-weight: 700;}
.event-new-badge { position: absolute; top:-3.5rem; left:0;display: inline-block; padding: 0.4rem 1.2rem 0.3rem 1.2rem; background: #00a2a4; color: #fff; border-radius: 15rem; font-size: 1.2rem; font-weight: 600; }
.event-add-btn {width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid #fff;display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0;color: #fff; }
	.event-add-btn:focus, .event-add-btn:focus-visible, .event-add-btn:focus-within {
	  outline: var(--krds-number-2) dotted var(--krds-color-light-gray-0) !important;
	  outline-offset: 0.2rem !important;
	}
.event-carousel { position: relative; padding: 0 0;}
.event-carousel .swiper-slide {flex-shrink: 1;}
.event-carousel, .event-carousel.swiper { width: 100% !important; max-width: 100%; min-width: 0; margin: 0 auto;}
.event-carousel .swiper-slide { width: 100% !important; box-sizing: border-box;}
.event-view {display: flex;align-items: center; gap: 1rem; margin:1.5rem  0 1.5rem 0;}
.event-badge {font-size:2.4rem;padding: 0.5rem 2rem; background:#df4f6e; border-radius: 0.8rem; color: #fff;font-weight: 600; }
.event-dday {padding: 0.5rem 2rem;background:#000;border-radius: 0.8rem; color: #fff; font-weight: 600;font-size: 2.4rem;}
.event-main-card {padding: 0;color: #fff; min-height: 39rem;display: block; text-decoration: none; color: inherit;}
.event-main-card .card-title {font-size: 3.5rem; font-weight: 600;color: #fff;margin-bottom: 1.5rem;line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.event-main-card:focus-visible { 
	outline: var(--krds-number-2) solid var(--krds-color-light-gray-0) !important; 
	outline-offset: -0.2rem !important;
	background-color: rgba(255, 255, 255, 0.1); 
}

.event-main-card:active, .event-main-card:focus:not(:focus-visible) {
	outline: var(--krds-number-2) solid var(--krds-color-light-gray-0) !important; 
	outline-offset: -0.2rem !important;
	background-color: rgba(255, 255, 255, 0.1);
}

.event-detail {display: flex;flex-direction: column; color: #fff; gap: 0.5rem; margin-bottom: 1.25rem;}
.detail-label {font-size: 1.2rem;font-weight: 400;}
.detail-value {font-size: 2rem;font-weight: 600;}

/* Event Swiper 네비게이션 버튼 */
.event-carousel .swiper-button-prev,
.event-carousel .swiper-button-next { background-color: transparent;border-radius: 50%;color: #fff;margin-top: 0; top: 50%; transform: translateY(-50%); border:0;}
.event-carousel .swiper-button-prev::after {width: 1.2rem; height: 2rem;background-image: url("../../img/frt/main/e_showcase-next.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent; transform: none; background-position: center center; background-repeat: no-repeat;background-size:contain; transform:rotate(-180deg); }
.event-carousel .swiper-button-next::after {width: 1.2rem; height: 2rem; background-image: url("../../img/frt/main/e_showcase-next.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent; transform: none; background-position: center center; background-repeat: no-repeat;background-size:contain; }
.event-controls {position: absolute;bottom: 0; right: 0; display: flex; z-index: 10;}
.event-controls .swiper-button-prev,
.event-controls .swiper-button-next {position: static;margin-top: 0;}

/* Event Swiper: 2개 이상일 때 레이아웃 깨짐 방지 */
.event-carousel,
.event-carousel.swiper {overflow: hidden !important;}
.event-carousel .swiper-wrapper {box-sizing: border-box; display: flex;}
.event-carousel .swiper-slide {flex: 0 0 100% !important; width: 100% !important; box-sizing: border-box;}
/* Event 섹션 이전/다음 버튼 - 더 이상 이동할 콘텐츠 없을 때 비활성(회색) */
.event-carousel .event-prev.disabled,
.event-carousel .event-next.disabled {opacity: 0.4; cursor: not-allowed; pointer-events: none;}

/* Marketplace 섹션 */
.marketplace-section { /* height: 22.3rem;*/ background: #293139; box-shadow: 1.2rem 1.2rem 0.1rem rgba(0, 0, 0, 0.2); border-radius:1.2rem;padding:4rem; margin-top: 3rem; flex-grow: 1; }
.marketplace-card {  color: #fff; position: relative; display: flex;   flex-direction: column;}
.marketplace-logo-wrap {width:11.4rem; height: 4.8rem; display: flex; align-items: baseline; background-image: url("../../img/frt/main/e_market-logo.png"); margin-bottom:0.8rem; }
.marketplace-headline {font-size: 2.8rem; color: #fff; margin-bottom: 1rem; margin-top: 0.5rem;  }
.marketplace-subheadline { font-size: 1.2rem; color: #fff; line-height: 1.3;}
.marketplace-link { position: absolute; top: 0; right: 0; width: 2rem; height: 2rem; display: flex; align-items: center; justify-content: center;color: #fff;}
.marketplace-link:hover {background: rgba(255, 255, 255, 0.2);}
.marketplace-link .svg-icon {width: 1.8rem; height: 1.8rem;background-image: url("../../img/frt/main/e_site-go.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent; transform: none; background-position: center center; background-repeat: no-repeat;background-size:contain;}

/* Business Centers 섹션 */
.business-centers-section {position: relative;display: flex;flex-direction: column;height: 100%;/*max-width:65rem;*/background: #fff; box-shadow: 1.2rem 1.2rem 0.1rem rgba(0, 0, 0, 0.2); border-radius:1.2rem; box-sizing: border-box; padding:3rem 4rem 4rem 4rem;overflow: hidden;}
.business-centers-section .section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom:2.5rem;}
.business-centers-section .section-title { color: #000;  font-size:2.2rem; font-weight: 700; word-break:keep-all;}
.business-centers-section .section-subtitle { color: rgba(0, 0, 0, 0.5); font-size: 1.2rem;}
.business-add-btn {width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid #000;display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0; color: #000; }
.business-add-btn .add-icon {font-size: 1.4rem; font-weight: 600; line-height: 1;color: #000;}
.world-map {position: relative;width: 100%; background: #fff;/*overflow: hidden;*/ flex-grow: 1;display: flex;align-items: center;overflow: visible;}
.world-map img { width: 100%;height: auto;display: block;object-fit: contain;}
.centers-summary { display: grid; grid-template-columns: repeat(2, 1fr); gap: 3rem; margin-top:2rem;}
.center-card { padding:1.8rem 3rem; background: #f2f4f6; border-radius: 1rem; display: flex; flex-direction: column; justify-content: space-between; gap: 0.5rem; }
.center-card.highlight { background: #d7234a; color: #fff;}
.centers-summary > a:focus, .centers-summary > a:focus-visible{
	box-shadow:none;
}
.centers-summary > a.active:focus, .centers-summary > a.active:focus-visible{
	outline: var(--krds-number-2) dotted var(--krds-color-light-secondary-70) !important;
	outline-offset: -0.2rem !important;

}
.center-label { display: block; font-size: 1.8rem; color: #000; font-weight: 700; margin-bottom:0.8rem; word-break:keep-all;}
.center-card.highlight .center-label { color: rgba(255, 255, 255, 0.9);}
.center-count { display: flex;align-items: flex-end; justify-content: flex-end; font-size: 1.4rem; font-weight: 600; color: rgba(0, 0, 0, 0.6); line-height: 1; }
.center-count strong {color: #d7234a; font-size: 4.3rem; line-height: 0.8; margin-left: 0.5rem; }
.center-card.highlight .center-count {color: rgba(225, 225, 225, 0.7); font-weight: 400;}
.center-card.highlight .center-count strong {color: #fff;}

/* 공통 스타일 수정 */
.region-popup {position: absolute; background: #df4f6e; border-radius: 1rem; padding: 1.2rem;z-index: 10; transform: translate(-50%, -110%);  display: none; width: auto;max-width: 25rem;box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,0.15);}
.region-popup::after {content: ""; position: absolute;  bottom: -0.6rem; left: 50%; transform: translateX(-50%); border-left: 0.7rem solid transparent; border-right: 0.7rem solid transparent; border-top: 0.7rem solid #df4f6e;}
.region-popup.target-circle1 { top: 44.5%; left: 17.5%; }
.region-popup.target-circle2 { top: 46.5%; left: 74.5%; }
.region-popup.target-circle3 { top: 65%; left: 41.5%; }
.region-popup.target-circle4 { top: 46.5%; left: 39.5%; }
.region-tags-grid {display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.6rem;min-width: 22.5rem; flex-shrink: 0; }
.region-tag {background: #fff; color: #d7234a; border-radius: 0.5rem; font-size: 1.5rem; font-weight: 500;  display: -webkit-box; -webkit-line-clamp: 1;  -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.region-tag a { display: block; padding: 0.4rem 0.75rem; }
	.region-tag a:focus, .region-tag a:focus-visible{outline: none !important; box-shadow: none !important;}
	.region-tag a:focus-visible:after{}
	
	.region-tag:has(a:focus-visible) { position: relative !important; z-index: 100 !important; border-radius: 0.5rem !important;}
	.region-tag a:focus-visible::after { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; bottom:0 !important; z-index: 99999 !important; pointer-events: none;
		border: var(--krds-number-2) dotted var(--krds-color-light-secondary-70) !important;
		border-radius:0.5rem !important;
	}

.region-popup { display: block; opacity: 0; visibility: hidden;transform: translate(-50%, -80%) scale(0.9); transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);}
.region-popup.show {opacity: 1;visibility: visible; transform: translate(-50%, -110%) scale(1); }

/* 지도 위 포인트 공통 스타일 */
.world-map [class^="point"] { position: absolute; width: 1rem; height: 1rem; background-color: #d7234a; border: 0.3rem solid #fff; border-radius: 50%; font-size: 0;  cursor: pointer; z-index: 5; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);box-sizing: content-box; transition: transform 0.2s ease, background-color 0.2s ease;}

/* 호버(Hover) 또는 활성화(Active) 시 효과 */
.world-map [class^="point"]:hover,
.world-map [class^="point"].active { transform: scale(1.2);  background-color: #fe1447; border-color: #fff;}

/* 위치 예시 (반응형을 위해 % 사용 추천) */
.point1 { top: 42.5%; left: 16.5%; }/*유럽*/
.point2 { top: 46%; left: 73%; }/*아메리카*/
.point3 { top: 65%; left: 40%; }/*오세아니아*/
.point4 { top: 44%; left: 38.5%; }/*아시아*/

  /* SVG 영역 */
#svg-canvas { /*무조건 요 안에서 그려지는구만!!! */ position: absolute;  top: 0;  left: 0;  width: 100%;  height: 100%;  pointer-events: none;z-index:10;overflow: visible !important; }
#connection-path { stroke: #d7234a !important; stroke-width: 1.5 !important; fill: none; stroke-linecap: round;   stroke-linejoin: round;  transition: stroke-dashoffset 0.6s ease-in-out;}

@keyframes drawLine {
    to { stroke-dashoffset: 0; }
}

/* K-Content News 섹션 */
.news-section { position: relative; /*width: 60rem;*/ background: #fff; border:0.1rem solid #ddd; box-shadow: 1rem 1rem 0.1rem rgba(0, 0, 0, 0.1);border-radius: 1.2rem; padding:1.5rem 4rem 4rem 4rem; margin-left: 3rem;margin-right: 2.2rem; }
.news-section .section-header {display: flex; justify-content: space-between; align-items: center; margin-bottom: 2.5rem; border-bottom: 0.1rem solid #d9d9d9; }
.news-new-badge  {position: absolute; top:-1.5rem; left:3.2rem;display: inline-block; padding: 0.4rem 1.2rem 0.3rem 1.2rem; background: #00a2a4; color: #fff; border-radius: 15rem; font-size: 1.2rem; font-weight: 600; }
.news-section .tab-menu {display: flex; gap: 3rem; margin-bottom: 0;}
.news-section .tab-btn { padding: 0.5rem 0; border: none; background: transparent; color: #999; cursor: pointer; font-size: 2.2rem; font-weight: 400;}
.news-section .tab-btn.active {color: #000; font-weight: 400; text-shadow: 0.05rem 0 0 #000, -0.05rem 0 0 #000;}
.news-upper-more-btn {position: absolute; top:-6rem; right:0; display:flex; align-items: center; gap:0.8rem; z-index: 10;}
.news-upper-more-btn .add-icon {width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid #000;display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0; color: #000; }
.news-add-btn .add-icon {font-size: 1.4rem; font-weight: 600; line-height: 1;color: #000;}
.news-category-badge { display: inline-block; padding: 0.4rem 0.85rem; background: rgba(215, 35, 74, 0.1); color: #df4f6e; border-radius: 0.5rem; font-size: 1.2rem; font-weight: 500; margin-bottom:0.8rem;}

/* K-Content News 기사 */
.news-carousel {position: relative; width: auto;overflow: visible !important;}
.news-carousel .swiper-wrapper .swiper-slide { width: 100% !important; box-sizing: border-box;}
.news-carousel .swiper-wrapper .swiper-slide > a { display: block;text-decoration: none; outline: none; }
.news-carousel.swiper {padding: 0; margin: 0; overflow: hidden; }
.news-section {padding: 1.5rem 4rem 4rem 4rem; }
.news-carousel .swiper-slide > a { display: block; margin: 0.2rem; }
.news-section .news-carousel .swiper-wrapper {width: 100% !important; box-sizing: border-box;}
.article-title {font-size: 2rem; font-weight: 700; color: #000; margin-bottom: 0.75rem; line-height: 1.4; display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.article-summary {color:#000; margin-bottom: 0.75rem; line-height: 1.6; font-size: 1.4rem;display: -webkit-box; -webkit-line-clamp: 2;  -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.article-date {color:#000; font-size: 1.3rem; margin-top:1rem;}

/* K-Content News 탭 패널 표시/숨김 - 활성 탭만 노출 */
.news-section .news-tab-panel { display: none !important; position: relative;}
.news-section .news-tab-panel.active { display: block !important;}
.news-section .news-carousel,
.news-section .news-carousel.swiper {overflow: hidden !important;}
.news-section .news-tab-panel .news-carousel {overflow: hidden !important;}
.news-section .news-carousel .swiper-wrapper { box-sizing: border-box;}
.news-section .news-carousel .swiper-slide {width: 100%; flex-shrink: 0;box-sizing: border-box;}

/* K-Content News 공통 이전/다음 버튼 */
.news-section .news-carousel-nav { position: absolute; bottom: 4rem; right: 4rem; display: flex; width: auto; /* height: 3.2rem; */ border: 0.1rem solid #ddd; border-radius: 0.5rem; overflow: hidden; background: #fff;}
.news-section .news-carousel-nav .news-nav-prev,
.news-section .news-carousel-nav .news-nav-next { flex: 0 0 3rem; width: 3rem; height: 3rem; margin: 0; padding: 0; border: none; border-radius: 0;  background: #fff; color: #000; font-size: 2rem; line-height: 1; cursor: pointer; display: flex; align-items: center;   justify-content: center;cursor: pointer;padding-bottom: 0.5rem; box-sizing:border-box;}    
.news-section .news-carousel-nav .news-nav-prev {border-right: 0.1rem solid #ddd;}
.news-section .news-carousel-nav .news-nav-prev:hover,
.news-section .news-carousel-nav .news-nav-next:hover {background: #f5f5f5;border-color: #ff6b9d;}
.news-section .news-carousel-nav .news-nav-prev:hover {border-right-color: #ddd;}
/* K-Content News 이전/다음 버튼 회색 비활성 */
.news-section .news-carousel-nav .news-nav-prev.disabled,
.news-section .news-carousel-nav .news-nav-next.disabled {background: #e5e5e5 !important; color: #999; border-color: #ccc; cursor: not-allowed; pointer-events: none;}
.news-section .news-carousel-nav .news-nav-prev.disabled {border-right-color: #ccc;}


/* Newsletter 섹션 */
.newsletter-section {background: #df4f6e; padding: 4rem;  position: relative; color: #fff;  box-shadow: 1rem 1rem 0.1rem rgba(0, 0, 0, 0.1);border-radius: 1.2rem;}
.newsletter-add-btn { position: absolute; top: 3rem; right: 4rem; width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid #fff;display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0; color: #000; z-index: 10;}
.newsletter-add-btn .add-icon {font-size: 1.4rem; font-weight: 600; line-height: 1;color: #fff;margin-top: -0.2rem;}
/*포커스*/
.newsletter-add-btn:focus, .newsletter-add-btn:focus-visible, .newsletter-add-btn:focus-within { 
	outline: var(--krds-number-2) solid var(--krds-color-light-gray-0) !important; outline-offset:0rem !important; 
}
.newsletter-badge { position: absolute; top: 1.5rem; left: 50%; margin-left: -7rem; background: #000; border-radius: 50%; width: 7rem; height: 7rem; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; z-index: 20; text-align: center;line-height:0.8;gap: 0.2rem;}
.newsletter-badge span {display:block; font-size: 1.5rem;margin-bottom: 0 !important;}
.newsletter-badge .month {display: block;font-size: 2rem; font-weight: 700; margin-top: -1rem;}
.newsletter-content { display: flex; gap: 1.5rem; align-items: flex-end; margin-bottom: 2rem; position: relative; z-index: 1;  flex-wrap: nowrap;}
.newsletter-content:has(a:focus), .newsletter-content:has(a:focus-visible){ z-index:15;}
.newsletter-link-box:focus, .newsletter-link-box:focus-visible, .newsletter-link-box:focus-within { 
	outline: var(--krds-number-2) solid var(--krds-color-light-gray-0) !important; outline-offset:0rem !important;
	background:var(--krds-color-light-primary-40); 
}
.newsletter-poster-wrap { flex: 0 0 45%; max-width: 45%;position: relative;max-height: 16.5rem; aspect-ratio: 3 / 4; background-color: #f0f0f0;background-image: url("../../img/frt/main/noImg.svg"); background-repeat: no-repeat; background-position: center; background-size: 50%; border-radius: 0.8rem; overflow: hidden;}
.newsletter-poster {width:100%; height: auto; max-height: 16.5rem; object-fit: cover;  aspect-ratio: 3 / 4; border-radius: 0.8rem; display: block;}
.newsletter-text {flex: 1;margin-left: 2rem;  min-width: 0;  }
.newsletter-title { font-size: 2.6rem; font-weight: 700; color: #fff; margin-bottom: 1rem; line-height: 1.2; word-break:keep-all;}
.newsletter-subtitle {color: #fff; line-height: 1.6;}
.newsletter-subtitle p {font-size: 1.2rem; margin-bottom: 0.25rem; font-weight: 400; }
.newsletter-subscribe-btn {width: 100%; padding: 2rem;background: #293139; border: none; border-radius: 1rem;color: #fff; font-size: 1.7rem; font-weight: 600; cursor: pointer;display: flex;align-items: center;justify-content: center;gap: 0.5rem;}
.newsletter-subscribe-btn:hover {background: #1a1a1a;}
.newsletter-subscribe-btn:focus, .newsletter-subscribe-btn:focus-visible, .newsletter-subscribe-btn:focus-within { 
	outline: var(--krds-number-2) solid var(--krds-color-light-gray-0) !important; outline-offset:0rem !important;
}
.newsletter-subscribe-btn .ico-mail { width: 2.1rem; height: 1.7rem; background-image: url("../../img/frt/main/e_ico-mail.png");-webkit-mask-image: none !important; mask-image: none !important; background-color: transparent; transform: none; background-position: center center; background-repeat: no-repeat;background-size:contain; margin-right: 0.8rem;}
.newsletter-link-box {display: flex; align-items: flex-end; text-decoration: none; width: 100%;}

/* Report 섹션 */
.report-section { position: relative; background: #fff; border:0.1rem solid #ddd; box-shadow: 1rem 1rem 0.1rem rgba(0, 0, 0, 0.1);border-radius: 1.2rem; padding:1.5rem 4rem 4rem 4rem;}
.report-section .section-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 2rem; border-bottom: 0.1rem solid #d9d9d9; padding-bottom: 0.8rem; }
.report-section .section-title {color: #000; font-size: 2.2rem; font-weight: 700;}
.report-tab-menu {display: flex;gap: 2.4rem; margin-bottom: 1rem;}
.report-tab-btn {padding: 0.5rem 0; border: none; background: transparent; color: #999; cursor: pointer; font-size: 2.2rem; font-weight: 400; line-height:0.8;}
.report-tab-btn.active { color: #d7234a; border-bottom: 0.3rem solid #f7d3db; font-weight: 400; text-shadow: 0.06rem 0 0 #d7234a, -0.06rem 0 0 #d7234a;}
.report-category-tag { margin-bottom: 1.5rem;}
.report-category-badge { display: inline-block;padding: 0.5rem 1rem; background: rgba(255, 107, 157, 0.15); color: #ff6b9d; border-radius: 1.5rem; font-size: 0.85rem; font-weight: 500; line-height: 1.4;}
.report-list { margin-top: 1rem;}
.report-item { padding:0 0 0.8rem 0; border-bottom: 0.1rem solid #eee;display: block;}
.report-item:not(:first-child):last-child {border-bottom: none;padding-bottom:0;}
.report-item-category {}
.report-list .report-item .report-item-category {display: none;}
.report-list .report-item:first-child .report-item-category {display: block;}
.report-item-badge {display: inline-block; padding: 0.4rem 0.75rem; background: rgba(215, 35, 74, 0.15); color: #df4f6e; border-radius: 0.4rem; font-size: 1.2rem; font-weight: 500;}
.report-title { font-size: 2rem; font-weight: 400; color: #000; margin:0.8rem 0 0.2rem 0; line-height: 1.4;display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 1; }
.report-date { color: #999; font-size: 1.2rem;}
 /* K-Content Report 탭 패널 - 활성 탭만 노출 */
.report-section .report-tab-panel {display: none !important;}
.report-section .report-tab-panel.active { display: block !important;}
.report-more-container {position: absolute;top:1.9rem; right:4rem; display:flex; align-items: center; gap:0.8rem;}
.report-more-container .report-more-btn {width: 2.2rem;height: 2.2rem;border-radius: 50%;  border: 0.2rem solid #000;display: flex;align-items: center; justify-content: center; cursor: pointer; padding: 0; color: #000; }
.report-more-container .report-more-btn .more-icon {font-size: 1.4rem; font-weight: 600; line-height: 1;color: #000;}


@media screen and (max-width: 1920px) {
    .swiper-section {max-width: 100%;}
}

@media screen and (min-width: 1281px) and (max-width: 1700px) {
    .top-grid, .bottom-grid { display: flex; gap: 3rem; width: 100%; align-items: stretch;}
    .top-grid {padding: 3.5rem 0 3.5rem 0; }
    .bottom-grid {padding: 0; }
    .top-left, .bottom-left {flex: 1.5 1 0; min-width: 0;}
    .top-right, .bottom-right {flex: 1.5 1 0; min-width: 0;}
    .top-center, .bottom-center {flex: 0.8 1 0; min-width: 0;}
    
    .slogan-search-section {max-width:100%;}
    .showcase-section {max-width:100%;}
    .swiper-section {max-width:100%;}
    .event-section {padding:2rem 3rem 2rem 3rem;}
    .event-main-card .card-title { display: -webkit-box; -webkit-line-clamp:3;  -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; font-size:3rem;}
    .event-badge {font-size:2rem;padding:0.5rem 1rem;}
    .event-dday  {font-size:2rem;padding:0.5rem 1rem;}
    .business-centers-section {padding:2rem 2.5rem 4rem 2.5rem;}
    .center-card {padding:1.8rem 1.8rem;}
    
    .centers-summary {gap:1.8rem;}
    .center-label {font-size:1.4rem;}
    .marketplace-section {padding:4rem 4rem 4rem 4rem;}
    .marketplace-headline {font-size:2.4rem;}
    .news-section {margin:0; width:100%;}
    .newsletter-section {margin-bottom:0;}
    .newsletter-content {display:flex; flex-direction:column; gap:2rem; align-items: center; margin-bottom:2rem; }
    .newsletter-link-box {display:flex; flex-direction:column; width: 100%;}
    .newsletter-poster-wrap { flex: 0 0 100%; max-width: 100%; width:100%; max-height:12rem;aspect-ratio: 3 / 4;}
    .newsletter-text { flex: 1; width:100%; margin-left:0;}
    .newsletter-title {margin-top:1rem; font-size:2.3rem;}
    .newsletter-badge {left:0; margin-left:2rem;}
    .newsletter-add-btn {top:1rem;}
    .newsletter-subtitle {display:none;}
    .bottom-left > section,  .bottom-center > section,  .bottom-right > section {height: 100%; display: flex; flex-direction: column;flex: 1; }
       /* 1. 기본 상태:  글자 흰색 */
    #krds-header .krds-main-menu-mobile .gnb-menu .gnb-main-trigger {color: var(--krds-color-light-gray-90); }

}

@media screen and (min-width: 1281px) and (max-width: 1535px) {
    .top-grid { display: flex; flex-wrap: wrap;padding:3rem 0 0 0;}
    .bottom-grid {display:flex; flex-wrap: wrap; justify-content: flex-end; gap:3rem; margin-top: 3rem;}  
    .top-left {flex: 1.5 1 0;}
    .top-center {flex: 1 1 0;}
    .top-right {flex: 0 0 100%;}
    .bottom-left, .bottom-center {display: flex;flex-direction: column;  flex: 0 0 calc(50% - 1.75rem);}
    .bottom-right { flex: 0 0 100%; margin-top: 1rem;}
    .news-section {width:100%;}
    .newsletter-section {margin-bottom:0;}
    .marketplace-section {padding:5rem 4rem 5rem 4rem;}
    .marketplace-subheadline {display:block;}   
  
}
@media screen and (min-width: 901px) and (max-width: 1280px) {   
    .top-grid {display: flex; flex-wrap: wrap; padding: 3rem 0; gap: 3rem;align-items: stretch;}
    .bottom-grid {display: grid; grid-template-columns: 6fr 4fr; padding:0; gap: 3rem; align-items: stretch; margin-top: 1rem; }
    .top-left, .top-center {flex: 1 1 calc(50% - 1.5rem); }
    .top-right {flex: 1 1 100%;}
    .bottom-left {display: flex; flex-direction: column; }
    .bottom-center { display: flex; flex-direction: column; }
    .bottom-right { grid-column: 1 / span 2;  width: 100%;}  
    
    .slogan-search-section {max-width:100%;}
    .showcase-section {max-width:100%; margin:0;}
    .swiper-section {max-width:100%;}
    .event-main-card .card-title {font-size:3rem;}
     .business-centers-section {border:0.1rem solid #ddd;}
    .news-section {margin:0; max-width: 100%; width:100%;}    
    .marketplace-section {padding:5rem 4rem 5rem 4rem; margin-top:3rem;}
    .marketplace-headline {font-size:2.4rem;}
    .marketplace-subheadline {display:block;}   
  
    
}



@media screen and (max-width: 900px) {
    .top-grid {gap:3rem; padding:3rem 0 0 0;}
    .bottom-grid {gap:3rem; padding:3rem 0 0 0;}
    .top-center, .top-right {flex: 0 0 100%; margin: 0 0 0 0;}
    
    .bottom-grid {height: auto; margin:0;}
    .top-left, .bottom-left {flex: 0 0 100%; width: 100%; margin: 0 0 0 0;  }
    .bottom-center {flex: 0 0 100%; width: 100%; margin: 0 0 0 0;  }
    .bottom-right {flex: 0 0 100%; width: 100%; margin: 0 0 0 0;  }
    
    .slogan-search-section {max-width:100%; margin:0;}
    .search-input-wrap {padding:1.1rem 1.5rem}
    .hero-search-input {font-size:2rem; min-width:0;}
    .showcase-section {padding:2.5rem 2.5rem 2rem 2.5rem;max-width:100%; margin:3rem 0 0 0;}
    .showcase-section .section-title {font-size:2rem;}
    .card-title {font-size:2.2rem;}
    /* event 섹션 */
    .event-section {flex:none;padding:2.5rem 2.5rem 2.5rem 2.5rem;box-shadow:none; margin-bottom: 3rem;}
    .event-main-card .card-title {font-size:2.8rem;display: -webkit-box; overflow: hidden; text-overflow: ellipsis; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
    .event-badge {font-size:2rem;}
    .event-dday {font-size:2rem;}
    
    .showcase-carousel {max-width:100%;}
    .swiper-section {max-width:100%;}
    
    .marketplace-section {padding:2.5rem 2.5rem 2.5rem 2.5rem;box-shadow:none; margin:0 0 0 0;}
    .marketplace-headline {font-size:2.2rem;}
     
    /* business-centers 섹션 */
    .business-centers-section {padding:2.5rem 1.5rem 2.5rem 1.5rem;box-shadow:none;border:0.1rem solid #ddd;}
    .center-label {font-size:1.6rem;}
    .centers-summary {gap:0.8rem;}
    .center-card {padding:1.8rem 1.5rem; height:100%;}
    .region-popup.target-circle1{left:22.5%}
    
    .news-section {width:100%; padding:1.5rem 2.5rem 5rem 2.5rem;box-shadow:none; margin:0;}
    .news-section .tab-btn {font-size: 2rem; }    
    .newsletter-section {padding:2.5rem 2.5rem 2.5rem 2.5rem;box-shadow:none; margin:0;}
    .news-section .news-carousel-nav {bottom:2.5rem;}
    
    /* Report 섹션 */
    .report-section { padding:2.5rem 2.5rem 3rem 2.5rem;box-shadow:none;}
    .report-section .section-title {font-size: 2rem; }
    .report-tab-btn { font-size: 1.8rem; word-break:keep-all; }
    .report-title { font-size: 1.8rem;}
    
   
    .business-centers-section {position: relative; min-height: 50rem;}
    #svg-canvas {display: block !important; width: 100%; height: 100%; position: absolute; top: 0; left: 0; overflow: visible;}
    .region-popup.target-circle1 { top: 43.5%; left: 17.5%; }
     /* 1. 기본 상태:  글자 흰색 */
    #krds-header .krds-main-menu-mobile .gnb-menu .gnb-main-trigger {color: var(--krds-color-light-gray-90); }

}

@media screen and (max-width: 690px) {
    .region-popup.target-circle1 { top: 43.5%; left: 22.5%; }
}

@media screen and (max-width: 560px) {
	.region-popup.target-circle1, .region-popup.target-circle2, .region-popup.target-circle3, .region-popup.target-circle4{top:80%; left:50%;}
	.region-popup{max-width:20rem; padding:1rem;}
	/* .region-popup::after{display:none;} */
	.region-tags-grid{min-width:18rem}
	#svg-canvas{display:none !important;}
}


@media screen and (max-width: 425px) {
	.slogan-title{font-size:3rem;}
	
	.news-section .section-header{padding-right:3rem;}
	.news-section .tab-menu{gap:1.5rem;}	
	.news-section .tab-btn{font-size:1.7rem; line-height:1.24; word-break:keep-all; }	
	.news-upper-more-btn{top:-5.5rem;}
	
	.newsletter-add-btn{right:2.5rem;}
}

@media screen and (max-width: 375px) {
	.filter-btn{width:auto; max-width:12rem;}
	.event-badge {font-size:1.7rem; padding:0.5rem 1rem}
	.event-dday {font-size:1.7rem; padding:0.5rem 1rem}
}

