@charset "utf-8";

/* 메인 비주얼 */
.main-visual {position: relative;overflow: hidden; background: url(../images/main/bg_main_visual.svg) center no-repeat; color: #fff;background-size: cover;padding:18.6rem 0 9rem 0}
.main-visual .inner {position: relative; display: flex; align-items: flex-start; justify-content: space-between; }
.main-visual__title {color: #FFF;font-size: 6rem;font-weight: 700;letter-spacing: -2.4px;}
.main-visual__text {margin: 2rem 0 4rem 0;color: #94D8F4;font-size: 2rem;font-weight: 500;letter-spacing: -0.08rem;}
.main-search-form {display: flex; align-items: center; width: 56.5rem;padding: .8rem .8rem .8rem 1rem; border-radius: var(--Radius_Pill); background-color: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.18);overflow: hidden;align-items: center;gap: 5px;}
.main-search-form__select { height: auto; color: #1D2022;text-align: center;font-size: 1.8rem;font-weight: 500;letter-spacing: -0.72px;border: 0;-webkit-appearance: none; appearance: none;background: url(../images/common/ico_select.svg) no-repeat right 1.2rem center;padding: .2rem 3.8rem .2rem .2rem;}
.main-search-form__select::-ms-expand {display: none;}
.main-search-form__input {flex: 1; height: 100%; border: 0;color:#000;font-size: 1.7rem;font-weight: 500;letter-spacing: -0.068rem;}
.main-search-form__input::placeholder{color: var(--Gray_80, #565656)}
.main-search-form__button {position: relative; display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; border-radius: 50%; background:url(../images/main/ico_search_white.svg) no-repeat center  var(--Primary); font-size: 0;}
.main-status {display: flex; align-items: center; gap: 2rem; margin-top: 18rem;}
.main-status__link {display: flex;  gap: .6rem; color: #fff;align-items: center;padding-right: 1rem;}
.main-status__link::after {content: ">";width: 27px;height: 27px;text-indent: -9999px;background: url(../images/main/ico_hero_arrow.svg) no-repeat center;}
.main-status__label {color: #FFF;font-size: 1.8rem;font-weight: 600;letter-spacing: -0.36px;}
.main-status__number {color: #FFF;font-size: 4rem;font-weight: 700;letter-spacing: -1.6px;}
.main-status__link-all .main-status__label{font-size: 2.7rem;font-weight: 600;letter-spacing: -1.08px;}
.main-status__link-all .main-status__number{font-size: 5rem;font-weight: 700;letter-spacing: -2px;}
.main-quick {display: flex; flex-wrap: wrap; gap: 0.5rem; width: 27.7rem;;}
.main-quick > li{display: flex;flex: 0 0 calc(50% - .25rem);}

.main-quick__link {display: flex;width: 100%;flex-direction: column; align-items: center; justify-content: center;gap: 1rem;border-radius: 1.875rem;background: rgba(247, 249, 251, 0.98);color: #000;text-align: center;font-size: 1.6rem;font-weight: 600;letter-spacing: -0.64px;padding: 2rem 1rem;transition: all 0.3s}
.main-quick__link:hover, .main-quick__link:focus, .main-quick__link:active {text-decoration: none; transform: translateY(-2px);}
.main-quick__icon {display: flex; width: 6rem;height: 5rem;}
.main-quick__icon.main-quick__icon01{background: url(../images/main/ico_hero01.svg) no-repeat center;}
.main-quick__icon.main-quick__icon02{background: url(../images/main/ico_hero02.svg) no-repeat center;}
.main-quick__icon.main-quick__icon03{background: url(../images/main/ico_hero03.svg) no-repeat center;}
.main-quick__icon.main-quick__icon04{background: url(../images/main/ico_hero04.svg) no-repeat center;}
.main-quick__icon.main-quick__icon05{background: url(../images/main/ico_hero05.svg) no-repeat center;}
.main-quick__icon.main-quick__icon06{background: url(../images/main/ico_hero06.svg) no-repeat center;}
.main-quick__icon.main-quick__icon07{background: url(../images/main/ico_hero07.svg) no-repeat center;}
.main-quick__icon.main-quick__icon08{background: url(../images/main/ico_hero08.svg) no-repeat center;}



/* 메인 비주얼 반응형 - 태블릿 */
@media (max-width: 1200px) {
  .main-visual {padding: 20rem 0 8rem 0;}
  .main-visual .inner{gap: 4rem;}
  .main-visual__title{font-size: 5rem;}
  .main-status{gap: 1.4rem;margin-top: 8rem;flex-wrap: wrap;}
  .main-status__number{font-size: 3.4rem;}
  .main-status__link-all .main-status__number{font-size: 4rem;}
}

/* 메인 비주얼 반응형 - 태블릿 */
@media (max-width: 1024px) {
  .main-visual .inner{flex-direction: column;}
  .main-visual__content{display: flex;flex-direction: column;align-items: center;text-align: center;width: 100%;}
  .main-search-form{max-width: 56.5rem;width: 100%;}
  .main-search-form__button{background-size: 20px;}
  .main-quick{width: 100%;}
  .main-quick > li{flex: 1 1 calc(25% - .5rem);}
}

/* 메인 비주얼 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-visual {padding: 16rem 0 6rem 0;}
  .main-visual__title{font-size: 4rem;}
  .main-visual__text{font-size: 1.8rem;}
  .main-search-form{width: 100%;}
  .main-status{margin-top: 5rem;gap: 1.5rem;}
  .main-status > a{width: calc((100% - 1.5rem)/2);padding-right: 35px;position: relative;justify-content: space-between;}
  .main-status > a:after{position: absolute;right: 0;top: 50%;transform: translateY(-50%);}
  .main-quick > li{flex: 1 1 calc(50% - .5rem);}
  .main-search-form__button{background-size: 15px;}
  .main-quick__icon.main-quick__icon01{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon02{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon03{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon04{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon05{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon06{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon07{background-size: 45px;height: 30px;}
  .main-quick__icon.main-quick__icon08{background-size: 45px;height: 30px;}
}

/* 메인 비주얼 반응형 - 모바일 */
@media (max-width: 480px) {
  .main-visual {padding: 14rem 0 5rem 0;}
  .main-visual__title{font-size: 3.2rem;letter-spacing: -1.2px;}
  .main-visual__text{font-size: 1.6rem;}
  .main-search-form{padding: .6rem;}
  .main-search-form__select{max-width: 9.5rem;font-size: 1.5rem;padding-right: 2.8rem;}
  .main-search-form__input{min-width: 0;font-size: 1.5rem;}
  .main-search-form__button{width: 4.4rem;height: 4.4rem;flex: none;}
  .main-status__label{font-size: 1.5rem;}
  .main-status__number{font-size: 2.8rem;}
  .main-status__link-all .main-status__label{font-size: 2rem;}
  .main-status__link-all .main-status__number{font-size: 3.2rem;}
}


/* 특구 개요 */
.main-zone {padding: 10rem 0; background-color: #f4f6f8;}
.section-heading {display: flex; align-items: center; justify-content: space-between; gap: 2rem; margin-bottom: 2rem;color: #141414;}
.section-heading .section-heading__title{font-size: 3.2rem;font-weight: 700;line-height: 100%;letter-spacing: -1.28px;}

@media screen and (max-width:768px) {
  .section-heading .section-heading__title{font-size: 2.5rem;}
}
.main-zone .section-heading{margin-bottom: 4rem;}
.main-zone .section-heading__eyebrow {display: block; margin-bottom: 2rem; color: var(--Primary); font-size: 1.8rem; font-weight: 700;letter-spacing: -0.072rem;}
.main-zone .section-heading__title {font-size: 3.8rem;font-weight: 700;line-height: 140%;letter-spacing: -1.52px;}
.main-zone .button{color: #FFF;font-size: 1.6rem;font-weight: 500;line-height: 100%;letter-spacing: -0.64px;padding: 1.8rem 2.4rem;border-radius: 4.2rem;transition: all 0.3s;}
/* 전체보기 버튼 */
.main-zone .list-more{position: static; flex-shrink: 0;}
.zone-card-list {display: flex; gap: 2.4rem;}
.zone-card {position: relative; flex: 1 1 0; min-height: 32rem; overflow: hidden; border-radius: 2rem; background-color: #111; color: #fff;padding: 4rem;transition: all 0.3s;}
.zone-card:hover, .zone-card:focus, .zone-card:active{transform: translateY(-5px);box-shadow: 0 2px 10px  rgba(0,0,0,.18);}
.zone-card.zone-card-01{background: url(../images/main/img_main_zone01.png) no-repeat center;background-size: cover;}
.zone-card.zone-card-02{background: url(../images/main/img_main_zone02.png) no-repeat center;background-size: cover;}
.zone-card.zone-card-03{background: url(../images/main/img_main_zone03.png) no-repeat center;background-size: cover;}
.zone-card:hover, .zone-card:focus, .zone-card:active {text-decoration: none;}
.zone-card::before {content: '';display: block;width: 52px;height: 52px;background: url(../images/main/ico_zone_link.svg) no-repeat center;position: absolute;top: 18px;right: 18px;z-index: 3;}
.zone-card::after {content: '';position: absolute;width: 100%;background: linear-gradient(0deg, #001955 0%, rgba(0, 25, 85, 0.00) 100%);height:71.875% ;z-index: 2;left: 0;bottom: 0;}
.zone-card__body {position: relative; z-index: 3; display: flex; flex-direction: column; justify-content: flex-end; height: 100%;gap: 1rem;word-break: keep-all;}
.zone-card__title {color: #fff;font-size: 2.4rem;font-weight: 700;letter-spacing: -0.96px;}
.zone-card__text {color: #FFF;font-size: 1.8rem;font-weight: 500;letter-spacing: -0.72px;}
.zone-card-list > li{display: flex;flex: 1 1 0;min-width: 0;}

/* 특구 개요 반응형 - 태블릿 */
@media (max-width: 1200px) {
  .main-zone{padding: 8rem 0;}
  .main-zone .section-heading__title{font-size: 3.4rem;}
  .zone-card{padding: 3rem;min-height: 28rem;}
}

/* 특구 개요 반응형 - 태블릿 */
@media (max-width: 1024px) {
  .section-heading{align-items: flex-start;}
  .zone-card-list{flex-direction: column;}
  .zone-card{min-height: 22rem;}
}

/* 특구 개요 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-zone{padding: 6rem 0;}
  .main-zone .section-heading{margin-bottom: 5rem;padding-bottom: 50px;}
  .section-heading{flex-direction: column;}
  .main-zone .section-heading__title{font-size: 2.8rem;}
  .zone-card{padding:  2.4rem;min-height: 160px;}
  .zone-card-list{gap: 1.5rem;}
  .main-zone .list-more{margin-top: 2rem;}
  .zone-card__text{font-size: 1.7rem;}
  .zone-card::before{background-size: 40px;width: 40px;height: 40px;right: 2.4rem;top: 2.4rem;}
}

/* 특구 개요 반응형 - 모바일 */
@media (max-width: 480px) {
  .main-zone .section-heading__eyebrow{margin-bottom: 1.2rem;font-size: 1.5rem;}
  .main-zone .section-heading__title{font-size: 2.4rem;}
  .zone-card{min-height: 18rem;}
  .zone-card__title{font-size: 2rem;}
}


/* 더보기 */
.more-link {display: inline-flex;border-radius: 42px;background:url(../images/main/ico_blue_arrow-right.svg) no-repeat center  #F5F9FF;width: 6rem;height: 4.9rem;text-indent: -9999px;transition: all 0.3s;}
.more-link:hover, .more-link:focus, .more-link:active {background-color: #e8f2ff;}


/* 더보기 반응형 - 모바일 */
@media (max-width: 768px) {
  .more-link {width: 4.8rem; height: 4.4rem;background-size: 16px;}
}


/* 버튼 + 타이틀 */
.section--list .section-heading .section-heading__title{line-height: 49px}
.main-zone .section--list .section-heading .section-heading__title{line-height: 140%}

@media screen and (max-width:1024px) {
  .section--list .section-heading .section-heading__title{line-height: 44px;}
}

@media screen and (max-width:768px) {
  .section--list .section-heading .section-heading__title{line-height: 38px;}
}

@media screen and (max-width:480px) {
  .section--list .section-heading .section-heading__title{line-height: 36px;}
}

/* 최근 소식 */
.main-news {margin: 10rem 0; background-color: #fff;}
.main-news .section-heading{margin-bottom: 2rem;}
.main-news__content {display: flex;gap: 13.5rem;}
.main-news__column {display: flex; flex-direction: column; min-width: 0;justify-content: space-between;}
.main-news__column--business {flex: 0 0 40%;}
.main-news__column--board {flex: 1 1 auto;}
.main-news .business-list {display: flex; flex-direction: column; gap: 1.2rem;}
.main-news  .business-card {display: flex;padding: 2.53rem 2rem;gap: 1.3rem;align-self: stretch;border-radius: 2rem;background: #F7F9FB;align-items: center;}
.main-news .business-card:hover, .main-news .business-card:focus, .main-news .business-card:active {text-decoration: none; background-color: #eef6ff;}
.main-news .business-card__body {flex: 1; min-width: 0;}
.main-news .business-card__title {overflow: hidden; color: #141414; font-size: 2rem; font-weight: 600; line-height: 1.1; text-overflow: ellipsis; white-space: nowrap;width: 100%;letter-spacing: -0.4px;display: block;}
.main-news .business-card__meta {display: flex; gap: 1.7rem; margin-top: 1.2rem; color: var(--Gray_70, #747474); font-size: 1.6rem; font-weight: 500;letter-spacing: -0.32px;}
.main-news .business-card__meta .business-card__meta__item{display: flex;gap: 6px;align-items: center;}
.main-news .business-card__label {display: inline-flex; align-items: center;font-size: 1.4rem;font-weight: 600;letter-spacing: -0.56px;padding: 6px 10px;border-radius: 8px;}
.main-news .business-card__label--start {background-color: #e2eeff; color: #568FDF;}
.main-news .business-card__label--end {background-color: #fff0dc; color: #CE8129;}
/* 특구유형 배지(메타 라인). 통합검색/최근 지정 특구(.zone-result, .main-case)와 같은 팔레트를 이 카드 스코프에서도 쓴다. */
.main-news .business-card__meta .badge{min-width: 0; min-height: 0; padding: 6px 10px; border-radius: 8px; font-size: 1.4rem; font-weight: 600; letter-spacing: -0.56px;}
.main-news .badge--zone-free { background-color: #0082CA; }
.main-news .badge--zone-global { background-color: #0050A0; }
.main-news .badge--zone-local { background-color: #B45309; }



/* 최근 소식 반응형 - 태블릿 */
@media (max-width: 1200px) {
  .main-news__content{gap: 5rem;}
  .main-news__column--business{flex-basis: 42%;}
}

/* 최근 소식 반응형 - 태블릿 */
@media (max-width: 1024px) {
  .main-news{margin: 8rem 0;}
  .main-news__content{flex-direction: column;}
  .main-news__column--business{flex-basis: auto;}
}

/* 최근 소식 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-news{margin: 6rem 0;}
  .main-news .business-card{flex-direction: column;align-items: flex-start;}
  .main-news .business-card__meta{flex-wrap: wrap;gap: .8rem 1.2rem;}
  .main-news .business-card__title{font-size: 1.9rem;}
  .main-news .business-card__label{font-size: 1.2rem;padding: .4rem .8rem;}
  .main-news .business-card__meta{font-size: 1.5rem;}
  .main-news .business-card__meta .badge{font-size: 1.2rem;padding: .4rem .8rem;}
}

/* 최근 소식 반응형 - 모바일 */
@media (max-width: 480px) {
  .main-news .business-card{padding: 2rem 1.6rem;align-items: flex-start;}
}


/* 탭 */
.main-news .tab {display: flex; align-items: center; justify-content: space-between; gap: 2rem;}
.main-news  .tab__list {display: flex; align-items: center; gap: 4rem;}
.main-news  .tab__button {display: inline-flex; align-items: center; justify-content: center; min-height: 4.8rem; color: var(--Gray_80); font-size: 2rem; font-weight: 500; line-height: 1;transition: all 0.3s;letter-spacing: -.8px;}
.main-news  .tab__button:hover, .main-news  .tab__button:focus, .main-news  .tab__button:active{color: #000;}
.tab__item.is-active .tab__button {padding: .5rem 2.2rem; border-radius: var(--Radius_Pill); background-color: #090909; color: #fff; font-weight: 700;}


/* 탭 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-news .tab__list{gap: 2.4rem;flex-wrap: wrap;}
  .main-news .tab__button{font-size: 1.7rem;}
}

/* 탭 반응형 - 모바일 */
@media (max-width: 480px) {
  .main-news .tab__button{min-height: 4rem;font-size: 1.8rem;}
}


/* 게시판 */
.main-news  .board-list {border-top: 2px solid var(--Gray_100);}
.main-news  .board-list__item {display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: 2.5rem 0; border-bottom: 1px solid var(--Gray_20);}
.main-news  .board-list__link {overflow: hidden; color: var(--Gray_100); font-size: 1.9rem; font-weight: 600; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap;letter-spacing: -.76px;}
.main-news .board-list__link:hover, .main-news .board-list__link:focus, .main-news .board-list__link:active {color: var(--Primary); text-decoration: underline;}
.main-news .board-list__date {flex: none; color: var(--Gray_70); font-size: 1.6rem; font-weight: 500;letter-spacing: -.32px;}


/* 게시판 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-news .board-list__item{align-items: flex-start;flex-direction: column;gap: 1rem;padding: 2rem 0;}
  .main-news .board-list__link{max-width: 100%;white-space: normal;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
  .main-news .board-list__date{font-size: 1.6rem;}
}

/* 게시판 반응형 - 모바일 */
@media (max-width: 480px) {
  .main-news .board-list__link{font-size: 1.9rem;}
}



/* 최근 특구지정 사례 */
.main-case {padding: 10rem 0; background: linear-gradient(265deg, #DEE4F8 11.31%, #D3F3EE 88.99%);}
.main-case .badge--region{ background: #59B892;}
/* 특구유형 배지(첫 줄). 통합검색 결과(.zone-result .badge--zone-free 등)와 같은 팔레트를 이 카드 스코프에서도 쓴다. */
.main-case .badge--zone-free { background: #0082CA; }
.main-case .badge--zone-global { background: #0050A0; }
.main-case .badge--zone-local { background: #B45309; }
/* 지역 태그 */
.case-card__region-tag {
  display: inline-flex; align-items: center; padding: .3rem .9rem; margin-right: .4rem;
  border-radius: .6rem; background: #59B892; color: #fff; font-size: 1.3rem; font-weight: 700; vertical-align: middle;
}
.case-card-list {display: flex; gap: 2rem;}
.case-card {display: flex; flex: 1 1 0; flex-direction: column; min-height: 26.1rem; padding: 4rem 3rem 3rem 3rem; border-radius: 2rem; background-color: #fff;transition: all 0.3s;align-items: flex-start;}
.case-card-list > li{display: flex;flex: 1 1 0;min-width: 0;}
.case-card-list__empty {justify-content: center; align-items: center; min-height: 26.1rem; padding: 4rem 3rem; border-radius: 2rem; background-color: #fff; color: #868687; flex: 1 1 100% !important;}
.case-card:hover, .case-card:focus, .case-card:active {text-decoration: none; box-shadow: var(--Shadow_Surface);}
.case-card .badge{min-height: 3.9rem;}
.case-card__title {margin-top: 2rem; color: #141414; font-size: 2.2rem; font-weight: 600; line-height: 1.4; letter-spacing: -.44px;display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;}
.case-card__date {margin-top: 1.8rem; color: var(--Gray_70); font-size: 1.6rem; font-weight: 500;letter-spacing: -.32px;}
/* 더보기 버튼 */
.main-case .list-more{position: static; flex-shrink: 0;}


/* 최근 특구지정 사례 반응형 - 태블릿 */
@media (max-width: 1200px) {
  .main-case{padding: 8rem 0;}
  .case-card{padding: 3rem 2.4rem;}
}

/* 최근 특구지정 사례 반응형 - 태블릿 */
@media (max-width: 1024px) {
  .case-card-list{flex-wrap: wrap;}
  .case-card-list > li{flex: 1 1 calc(50% - 1rem);}
}

/* 최근 특구지정 사례 반응형 - 모바일 */
@media (max-width: 768px) {
  .main-case{padding: 6rem 0;}
  .case-card-list{flex-direction: column;}
  .case-card-list > li{flex-basis: auto;}
  .case-card{min-height: auto;}
  .case-card__title{margin-top: 1.3rem;font-size: 1.9rem;}
  .case-card__date{margin-top: 0.8rem;font-size: 1.6rem;}
  .case-card .badge{min-height: 3rem;}
  .main-case .list-more{margin-top: 1.5rem;}
}

/* 최근 특구지정 사례 반응형 - 모바일 */
@media (max-width: 480px) {
  .case-card{padding: 2.4rem 2rem;}
}


/* 특구 검색 */
.main-zone-search {position: relative; overflow: hidden; padding: 10rem 0; background-color: #f7f9fb;}
.main-zone-search::after {position: absolute; right: max(0px, calc((100vw - 1700px) / 2)); bottom: -5rem; width: 44.3rem; height: 44.3rem; background: url("../images/main/bg_main_search.svg") no-repeat center / contain; opacity: .55; content: "";}
.zone-search {position: relative; z-index: 1; display: flex; gap: 2rem;margin-top: 3rem;}
.zone-search__filter {display: flex; flex-direction: column; gap: 1.1rem;padding: 2rem 1rem; border-radius: 2rem; background-color: var(--Primary);flex: 0 0 22rem;}
.zone-search__filter .zone-search__select{color: var(--Gray_100, #141414);font-size: 1.7rem;font-weight: 600;letter-spacing: -0.68px;width: 100%; appearance: none;background: #fff url("../images/main/ico_filter_selet.svg") no-repeat right .8rem center;padding: 1.2rem 4rem 1.2rem 1.8rem;border-radius: 30px;border: 0;}
.zone-search__filter .zone-search__keyword-input{color: var(--Gray_100, #141414);font-size: 1.7rem;font-weight: 600;letter-spacing: -0.68px;width: 100%;background: #fff;padding: 1.2rem 1.8rem;border-radius: 30px;border: 0;}

.zone-search__button {position: relative; display: flex; align-items: center; justify-content: center; min-height: 4.4rem; border-radius: var(--Radius_Pill); background: url(../images/main/ico_search.svg) #FBB03F center no-repeat; font-size: 0;}


.zone-search__result {flex: 1 1 auto; min-width: 0;}
.zone-search__result  > .my-scroll{max-height: 392px;overflow: hidden;}
.zone-result__item {display: flex; align-items: center; gap: 2.2rem; padding: 2rem 0; border-bottom: 1px solid #e9e9e9;}
.zone-result__item:last-child {border-bottom: 0;}
/* 특구 상세(/ti/tist010d.do)로 가는 링크. display:contents로 <a>가 zone-result__item의 flex 레이아웃에는
   끼어들지 않고 안의 배지·제목·칼럼들이 그대로 flex item으로 놓이면서 행 전체가 클릭 가능해진다. */
.zone-result__link {display: contents; color: inherit; text-decoration: none; cursor: pointer;}
.zone-result__link:hover .zone-result__title, .zone-result__link:focus-visible .zone-result__title {color: var(--Primary, #003695); text-decoration: underline; text-underline-offset: .2rem;}
/* 게시물(공지사항/보도자료/언론기사) 결과의 제목 링크(.zone-result__subject)도 특구 결과와 같은 hover 밑줄을 쓴다. */
.zone-result__subject:hover .zone-result__title, .zone-result__subject:focus-visible .zone-result__title {color: var(--Primary, #003695); text-decoration: underline; text-underline-offset: .2rem;}
.zone-result__subject {flex: 1 1 auto; min-width: 0;display: flex;flex-direction: column;gap: .8rem;}
.zone-result__title {color: #141414; font-size: 2rem; font-weight: 600; line-height: 1.25;letter-spacing: -.4px;word-break: keep-all;}
.zone-result__text { color: var(--Gray_70, #747474); font-size: 1.6rem; font-weight: 500;letter-spacing: -.32px;}
.zone-result .badge {flex: 0 0 4.8rem;}
.zone-result__column {flex: 0 0 13rem; color: #111; font-size: 1.6rem; font-weight: 500; text-align: center;letter-spacing: -.32px;}
.zone-result__column--primary {color: var(--Primary, #003695);}

/* 통합검색 결과 그룹(게시물/규제자유/글로벌혁신/지역특화) - 그룹별로 카드를 분리해서 보여준다 */
.search-result-group {padding: 3rem 4rem; border: 1px solid #c1c1c1; border-radius: 3rem; background-color: #fff; margin-bottom: 2.4rem;
  scroll-margin-top: calc(var(--gasys-fixed-header-bottom, 130px) + 1.6rem);}
.search-result-group:last-child {margin-bottom: 0;}
.zone-result .badge--doc-type {flex: 0 0 auto; min-width: 6.8rem; white-space: nowrap;}
.zone-result .badge--region {flex: 0 0 auto; min-width: 4.8rem; white-space: nowrap;}
/* 특구 구분별 지역 배지 색상 - 각 특구 화면의 대표색과 통일 */
.zone-result .badge--zone-free {background-color: #0082CA;}
.zone-result .badge--zone-global {background-color: #0050A0;}
.zone-result .badge--zone-local {background-color: #B45309;}
.zone-result__item--empty {display: block; color: var(--Gray_70, #747474); font-size: 1.6rem; padding: 2rem 0;}

/* ── 통합검색(ti/sc) 검색폼 + 결과 유형 탭 ───────────────────────────────────────────────
   검색조건이 어느 결과에 적용되는지가 화면에 드러나야 조합이 헷갈리지 않는다. 그래서 상단을
   "검색어 한 줄 + 지금 탭에만 유효한 필터 한 줄"로 나누고, 그 아래 결과 유형 탭(전체/게시물/특구/
   특례·조문)을 둔 뒤 탭 패널 안에 결과를 그린다. 컨트롤 크기·색은 서브 화면 공통 검색폼
   (sub-gasys.css의 .board-search)과 같은 값으로 맞췄고, 탭은 특구지정현황(ti/st)의 .ti-tab과
   같은 모양이다(그쪽은 JS 탭, 여기는 페이지 이동 링크라 클래스는 따로 쓴다). */
.sub-layout .sc-search {display: flex; flex-direction: column; gap: 1.2rem; padding: 2rem; border-radius: 1.2rem; background: var(--color-surface-gray, #f9f9f9);}
.sub-layout .sc-search__bar {display: flex; flex-wrap: wrap; align-items: center; gap: .8rem;}
.sub-layout .sc-search__keyword {flex: 1 1 28rem; min-width: 18rem; height: 4.4rem; padding: 0 1.6rem; border: 0; border-radius: .6rem; background: #fff; box-shadow: inset 0 0 0 1px #b6b7b7; font-family: inherit; font-size: 1.7rem; font-weight: 500; color: #505151; letter-spacing: -.4px;}
.sub-layout .sc-search__keyword:focus {outline: none; box-shadow: inset 0 0 0 1px #242424;}
.sub-layout .sc-search__bar .button {flex-shrink: 0; height: 4.4rem;}
.sub-layout .sc-search__filters {display: flex; flex-wrap: wrap; align-items: center; gap: .8rem 1.2rem;}
.sub-layout .sc-search__label {flex-shrink: 0; color: var(--color-text-basic, #363636); font-size: 1.5rem; font-weight: 700;}
.sub-layout .sc-search__select {display: inline-flex; flex-shrink: 0;}
.sub-layout .sc-search__select select {height: 4.4rem; min-width: 14rem; padding: 0 4rem 0 1.4rem; border: 0; border-radius: .6rem; background: #fff url("../images/main/ico_filter_selet.svg") no-repeat right 1.2rem center; box-shadow: inset 0 0 0 1px #b6b7b7; appearance: none; -webkit-appearance: none; font-family: inherit; font-size: 1.6rem; font-weight: 500; color: #505151; cursor: pointer;}
.sub-layout .sc-search__select select:focus {outline: none; box-shadow: inset 0 0 0 1px #242424;}

.sub-layout .sc-tabs {display: flex; gap: .4rem; margin-top: 2.4rem;}
.sub-layout .sc-tab {display: flex; flex: 1 1 0; align-items: center; justify-content: center; gap: .6rem; min-height: 5rem; padding: 0 1rem; border: 1px solid var(--color-border-gray-light, #d7d7d7); border-bottom: 0; border-radius: 6px 6px 0 0; background: #f9f9f9; color: var(--color-text-basic, #363636); font-size: 1.6rem; font-weight: 600; text-decoration: none; white-space: nowrap;}
.sub-layout .sc-tab:hover {background: #f1f4f9;}
.sub-layout .sc-tab.is-active {border-color: #346FB2; background: #346FB2; color: #fff;}
.sub-layout .sc-tab__count {font-weight: 700;}
.sub-layout .sc-panel {padding: 2.4rem; border: 1px solid var(--color-border-gray, #b6b7b7); border-top: 0; border-radius: 0 0 24px 24px;}
.sub-layout .sc-summary {margin: 0 0 2rem; color: var(--color-text-basic, #363636);}
.sub-layout .sc-summary strong {color: var(--Primary, #003695);}
/* 그 그룹에는 필터가 적용되지 않는다는 안내(게시물에 지역·특구구분을 건 경우, 지역특화 사업명 미지원) */
.sub-layout .sc-note {margin: 0 0 1.2rem; color: var(--Gray_70, #747474); font-size: 1.4rem;}
.sub-layout .sc-more {flex-shrink: 0; color: var(--Primary, #003695); font-size: 1.5rem; font-weight: 600; text-decoration: none; white-space: nowrap;}
.sub-layout .sc-more:hover {text-decoration: underline; text-underline-offset: .2rem;}
/* 결과 그룹 구분선 */
.sub-layout .sc-panel .search-result-group {margin-bottom: 2.4rem; padding: 0 0 2.4rem; border: 0; border-bottom: 1px solid #e9e9e9; border-radius: 0; background: transparent;}
.sub-layout .sc-panel .search-result-group:last-of-type {margin-bottom: 0; padding-bottom: 0; border-bottom: 0;}
/* 특구 결과는 3종을 한 리스트에 섞어 보여주므로 유형 배지를 지역 배지 앞에 하나 더 둔다. */
.zone-result .badge--zone-type {flex: 0 0 auto; min-width: 7.6rem; white-space: nowrap;}
/* 사업명으로 걸렸을 때 어떤 사업이 매칭됐는지(결과 납득용) 특구명 아래 한 줄로 붙인다. */
.zone-result__match {color: var(--Gray_70, #747474); font-size: 1.4rem; font-weight: 500;}

@media (max-width: 768px) {
  .sub-layout .sc-tabs {flex-wrap: wrap;}
  .sub-layout .sc-tab {flex: 1 1 calc(50% - .4rem); font-size: 1.5rem;}
  .sub-layout .sc-panel {padding: 1.6rem; border-radius: 0 0 16px 16px;}
  .sub-layout .sc-search__select {flex: 1 1 100%;}
  .sub-layout .sc-search__select select {width: 100%;}
}

/* 통합검색 "특례명+조문" 결과 - 조항(제몇조/항)마다 [조항] 특례명을 한 줄로 붙여서 보여주고
   (같은 특례명이라도 조항이 다르면 각자 자기 조항+특례명을 반복해서 붙인다), 그 아래 조문 내용과
   "적용 특구 N건" 버튼이 이어진다. 같은 특례명의 여러 조항은 한 결과 항목(li) 안에 구분선으로 묶인다.
   "적용 특구" 버튼을 누르면 ajax(ti-sc.js → common.js의 ajaxGet)로 그 조항이 적용된 특구 목록만
   모달에 채운다. */
.zone-result__item--clue {display: block;}
.clue-result__clause {margin-top: 1.6rem; padding-top: 1.6rem; border-top: 1px solid #e9e9e9;}
.clue-result__clause:first-of-type {margin-top: 0; padding-top: 0; border-top: 0;}
.clue-result__title {display: flex; flex-wrap: wrap; align-items: baseline; gap: .8rem; margin: 0;}
/* 조항 강조색 */
.clue-result__artcl {color: var(--Primary, #003695); font-size: 2rem; font-weight: 600; line-height: 1.25;}
.clue-result__prvs {color: #141414; font-size: 2rem; font-weight: 600; line-height: 1.25; letter-spacing: -.4px; word-break: keep-all;}
.clue-result__desc {margin: 1rem 0 0; color: var(--Gray_70, #747474); font-size: 1.5rem; line-height: 1.6;}
.clue-result__artcl mark.search-hl, .clue-result__prvs mark.search-hl, .clue-result__desc mark.search-hl {background: #fff3b0; color: inherit; padding: 0 .1em; border-radius: .2rem;}
.clue-result__zones-trigger {margin-top: 1rem; padding: .7rem 1.4rem; border: 1px solid var(--Primary, #003695); border-radius: 100rem; background: #fff; color: var(--Primary, #003695); font-size: 1.4rem; font-weight: 500; cursor: pointer;}
.clue-result__zones-count {font-weight: 700;}
/* 특례 적용 특구 목록 모달 표 */
.clue-result__zone-table-wrap {overflow-x: auto; border-radius: 1.2rem; border: 1px solid #d7d7d7;}
.clue-result__zone-table {width: 100%; min-width: 48rem; border-collapse: collapse; text-align: center;}
.clue-result__zone-table caption {position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0);}
.clue-result__zone-table thead {background: #f5f9ff;}
.clue-result__zone-table th {height: 4.6rem; color: #363636; font-size: 1.4rem; font-weight: 700;}
.clue-result__zone-table td {height: 5.2rem; padding: 0 1.2rem; border-bottom: 1px solid #e9e9e9; color: #505151; font-size: 1.4rem;}
.clue-result__zone-table tr:last-child td {border-bottom: 0;}
.clue-result__zone-name-cell {text-align: left;}
.clue-result__zone-link {color: inherit; font-weight: 600; text-decoration: none;}
.clue-result__zone-link:hover, .clue-result__zone-link:focus-visible {color: var(--Primary, #003695); text-decoration: underline; text-underline-offset: .2rem;}
.clue-result__zone-pager {display: flex; align-items: center; justify-content: center; gap: 1.2rem; padding: 1.2rem 0 0;}
.clue-result__zone-pager button {padding: .5rem 1.2rem; border: 1px solid #d7d7d7; border-radius: .6rem; background: #fff; color: #141414; font-size: 1.4rem; cursor: pointer;}
.clue-result__zone-pager button:disabled {color: var(--Gray_70, #747474); cursor: default; opacity: .5;}
.clue-result__zone-pager span {color: var(--Gray_70, #747474); font-size: 1.4rem;}

/* 특구 목록 모달 높이 */
#clueZonesModal .modal__dialog {max-height: calc(100vh - var(--gasys-fixed-header-bottom, 130px) - 4rem);}
#clueZonesModal .modal__body {max-height: calc(100vh - var(--gasys-fixed-header-bottom, 130px) - 4rem - 8.1rem);}

@media (max-width: 768px) {
  .search-result-group {padding: 2.4rem;}
}
@media (max-width: 480px) {
  .search-result-group {padding: 1.6rem 2rem; border-radius: 2rem;}
}


/* 특구 검색 반응형 - 태블릿 */
@media (max-width: 1200px) {
  .main-zone-search{padding: 8rem 0;}
  .zone-search__result > .my-scroll{max-height: 363px;}
  .zone-search__result{padding: 2.4rem;}
  .zone-result__item{gap: 1.4rem;}
  .zone-result__column{flex-basis: 10rem;}
}

/* 특구 검색 반응형 - 태블릿 */
@media (max-width: 1024px) {
  .zone-search__result > .my-scroll{max-height: 353px;}
  .zone-search{flex-direction: column;}
  .zone-search__filter{flex-basis: auto;display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));}
  .zone-search__button{grid-column: 1 / -1;}
}

/* 특구 검색 반응형 - 모바일 */
@media (max-width: 768px) {
  .zone-search__result > .my-scroll{max-height: 315px;}
  .main-zone-search{padding: 6rem 0;}
  .zone-search__filter{grid-template-columns: repeat(2, minmax(0, 1fr));gap: 0.5rem;}
  .zone-result__item{align-items: flex-start;flex-wrap: wrap;}
  .zone-result__subject{flex: none;width: 100%;}
  .zone-result__column{flex: 0 1 auto;text-align: left;}
  .zone-search__button{background-size: 15px;}
  .zone-search__filter .zone-search__select{font-size: 1.5rem;background-size: 28px;}
  .zone-result__title{font-size: 1.9rem;}

  .zone-result__text,
  .zone-result__column{font-size: 1.6rem;}
}

/* 특구 검색 반응형 - 모바일 */
@media (max-width: 480px) {
  .zone-search__result > .my-scroll{max-height: 307px;}
  .zone-search__result{padding: 1rem 2rem 1rem 1.6rem;border-radius: 2rem;}
}



.tab-panel[hidden] {display: none !important;}

/* 메인 공지 팝업 */
.notice-popup__dialog {width: min(118rem, calc(100vw - 6rem));}
.notice-popup[data-notice-popup-count="1"] .notice-popup__dialog {width: min(56rem, calc(100vw - 6rem));}
.notice-popup[data-notice-popup-count="2"] .notice-popup__dialog {width: min(86rem, calc(100vw - 6rem));}
.notice-popup[data-notice-popup-count="4"] .notice-popup__dialog {width: min(92rem, calc(100vw - 6rem));}
.notice-popup__header {align-items: flex-start;}
.notice-popup__heading {line-height: 1.3;}
.notice-popup__body {display: flex; flex-direction: column; gap: 1.6rem; max-height: calc(88vh - 8.1rem); overflow: hidden;}
.notice-popup__scroll {min-height: 0; overflow-y: auto; padding-right: .4rem;}
.notice-popup__list {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.6rem; margin: 0; padding: 0; list-style: none;}
.notice-popup[data-notice-popup-count="1"] .notice-popup__list {grid-template-columns: minmax(0, min(48rem, 100%)); justify-content: center;}
.notice-popup[data-notice-popup-count="2"] .notice-popup__list {grid-template-columns: repeat(2, minmax(0, 1fr));}
.notice-popup[data-notice-popup-count="3"] .notice-popup__list {grid-template-columns: repeat(3, minmax(0, 1fr));}
.notice-popup[data-notice-popup-count="4"] .notice-popup__list {grid-template-columns: repeat(2, minmax(0, 1fr));}
.notice-popup[data-notice-popup-count="5"] .notice-popup__list {grid-template-columns: repeat(3, minmax(0, 1fr));}
.notice-popup__item {min-width: 0; padding: 2rem; border: 1px solid #D7E2F2; border-radius: .8rem; background: #F8FBFF;}
.notice-popup__item[hidden] {display: none;}
.notice-popup__image {margin: -2rem -2rem 1.6rem; aspect-ratio: 16 / 9; overflow: hidden; border-radius: .8rem .8rem 0 0; background: #E5E7EB;}
.notice-popup__image img {display: block; width: 100%; height: 100%; object-fit: cover;}
.notice-popup__item-head {display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1.2rem;}
.notice-popup__badge {display: inline-flex; flex: none; align-items: center; min-height: 2.8rem; padding: 0 .9rem; border-radius: 999px; background: #EEF2F6; color: #425466; font-size: 1.3rem; font-weight: 700;}
.notice-popup__badge--important {background: #E8F2FF; color: #0C5CAD;}
.notice-popup__badge--emergency {background: #FFE9E5; color: #B42318;}
.notice-popup__title {min-width: 0; color: #111827; font-size: 2rem; font-weight: 800; line-height: 1.4; overflow-wrap: anywhere; word-break: keep-all;}
.notice-popup__summary {margin: 0; color: #374151; font-size: 1.6rem; line-height: 1.7; white-space: pre-line; overflow-wrap: anywhere; word-break: keep-all;}
.notice-popup__meta {display: flex; flex-direction: column; gap: .6rem; margin: 1.4rem 0 0; color: #4B5563; font-size: 1.4rem;}
.notice-popup__meta div {display: flex; flex-wrap: wrap; gap: .6rem;}
.notice-popup__meta dt {font-weight: 800; color: #1F2937;}
.notice-popup__meta dd {margin: 0;}
.notice-popup__actions {display: flex; justify-content: flex-start; margin-top: 1.6rem;}
.notice-popup__cta {display: inline-flex; align-items: center; justify-content: center; min-height: 4.4rem; padding: .8rem 1.8rem; border-radius: 999px; background: #063A74; color: #fff; font-size: 1.5rem; font-weight: 800; line-height: 1.4; text-align: center; text-decoration: none; white-space: normal;}
.notice-popup__cta:hover, .notice-popup__cta:focus, .notice-popup__cta:active {background: #0B5AAA; color: #fff; text-decoration: none;}
.notice-popup__external {margin-left: .6rem; font-size: 1.2rem; font-weight: 600; opacity: .82;}
.notice-popup__footer {display: flex; flex: none; justify-content: flex-end; gap: .8rem; padding-top: 1.6rem; border-top: 1px solid #E5E7EB;}
.notice-popup__day-hide,
.notice-popup__close {display: inline-flex; align-items: center; justify-content: center; min-height: 4.2rem; padding: .6rem 1.6rem; border-radius: .6rem; font-size: 1.4rem; font-weight: 700; line-height: 1.35; text-align: center; white-space: normal;}
.notice-popup__day-hide {border: 1px solid #CBD5E1; background: #fff; color: #334155;}
.notice-popup__close {background: #111827; color: #fff;}
.notice-popup__day-hide:hover, .notice-popup__day-hide:focus {background: #F1F5F9;}
.notice-popup__close:hover, .notice-popup__close:focus {background: #374151;}

@media (min-width: 1025px) {
  .notice-popup.modal {--notice-popup-top-clearance: 14rem; --notice-popup-bottom-clearance: 3rem; align-items: flex-start; padding-top: var(--notice-popup-top-clearance); padding-bottom: var(--notice-popup-bottom-clearance);}
  .notice-popup__dialog {max-height: calc(100vh - var(--notice-popup-top-clearance) - var(--notice-popup-bottom-clearance));}
  .notice-popup__body {max-height: calc(100vh - var(--notice-popup-top-clearance) - var(--notice-popup-bottom-clearance) - 8.1rem);}
}

@media (max-width: 768px) {
  .notice-popup__dialog,
  .notice-popup[data-notice-popup-count="1"] .notice-popup__dialog,
  .notice-popup[data-notice-popup-count="2"] .notice-popup__dialog,
  .notice-popup[data-notice-popup-count="4"] .notice-popup__dialog {width: 100%;}
  .notice-popup__body {max-height: calc(92vh - 7.6rem);}
  .notice-popup__scroll {padding-right: 0;}
  .notice-popup__list,
  .notice-popup[data-notice-popup-count="1"] .notice-popup__list,
  .notice-popup[data-notice-popup-count="2"] .notice-popup__list,
  .notice-popup[data-notice-popup-count="3"] .notice-popup__list,
  .notice-popup[data-notice-popup-count="4"] .notice-popup__list,
  .notice-popup[data-notice-popup-count="5"] .notice-popup__list {display: flex; flex-direction: column;}
  .notice-popup__item {padding: 1.6rem;}
  .notice-popup__image {margin: -1.6rem -1.6rem 1.4rem;}
  .notice-popup__item-head {flex-direction: column; gap: .8rem;}
  .notice-popup__title {font-size: 1.8rem;}
  .notice-popup__summary {font-size: 1.5rem;}
  .notice-popup__footer {flex-direction: column;}
  .notice-popup__day-hide,
  .notice-popup__close,
  .notice-popup__cta {width: 100%;}
}
