/* =========================================================
   ITAMRA ADS BASE
   - 광고 공통 스타일
   - PHP/헬퍼는 건드리지 않고 CSS만으로 정리
   ========================================================= */


.left-ad,
.right-ad{
  width: 136px;
  min-width: 136px;
  flex: 0 0 136px;
}

.ad-sticky{
  position: sticky;
  top: calc(var(--header-height, 72px) + 24px);
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.catad-side-stack{
  display:flex;
  flex-direction:column;
  gap:16px;
  width:100%;
}

.catad-top-desktop{
  display:block;
  margin:0 0 18px 0;
}

.catad-mobile-wrap{
  display:none;
  width:100%;
  margin:0 0 14px 0;
}

.catad-mobile-top{
  margin:0 0 10px 0;
}

.catad-mobile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

.ad-card,
.slider-card{
  position:relative;
  overflow:hidden;
  text-decoration:none !important;
  box-sizing:border-box;
  box-shadow:none !important;
}

.ad-card,
.ad-card *,
.slider-card,
.slider-card *{
  color:#fff !important;
}

.ad-card{
  width:100%;
  min-height:300px;
  border-radius:20px;
  padding:20px 12px 14px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
}

.ad-blue{
  background:linear-gradient(180deg,#114ad0 0%,#0d3db0 100%);
}
.ad-orange{
  background:linear-gradient(180deg,#ff7b42 0%,#ff955f 100%);
}
.ad-cyan{
  background:linear-gradient(180deg,#16a7d3 0%,#118cb3 100%);
}
.ad-purple{
  background:linear-gradient(180deg,#9850ea 0%,#7d35d0 100%);
}
.ad-green{
  background:linear-gradient(180deg,#17b26a 0%,#0f9f5c 100%);
}

.ad-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  width:48px;
  height:48px;
  margin:0 auto 12px;
  flex:0 0 auto;
}

.ad-icon svg,
svg.ad-icon{
  width:32px !important;
  height:32px !important;
  display:block;
  color:#fff !important;
  stroke:currentColor !important;
  fill:none;
}

.ad-title{
  margin:0 0 6px !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  text-align:center !important;
  letter-spacing:-0.02em;
  word-break:keep-all;
}

.ad-subtitle{
  margin:0 0 8px !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  text-align:center !important;
  opacity:.96;
  word-break:keep-all;
}

.ad-desc{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  text-align:center !important;
  opacity:.90;
  word-break:keep-all;
}

.ad-desc br,
.slider-desc br{
  display:block;
  content:"";
  margin-top:2px;
}

.ad-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:82px;
  height:28px;
  margin-top:14px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-decoration:none !important;
}

.ad-slider-section{
  margin:0 0 18px 0;
}

.slider-wrapper{
  position:relative;
  overflow:hidden;
  border-radius:20px;
}

.slider-track{
  display:flex;
  transition:transform .35s ease;
}

.slider-card{
  min-width:100%;
  min-height:112px;
  padding:18px 24px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:20px;
}

.slider-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 10px;
}

.slider-icon svg{
  width:30px !important;
  height:30px !important;
  display:block;
  color:#fff !important;
  stroke:currentColor !important;
  fill:none;
}

.slider-title{
  margin:0 0 4px !important;
  font-size:18px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  text-align:center !important;
  letter-spacing:-0.02em;
  word-break:keep-all;
}

.slider-subtitle{
  margin:0 0 6px !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:700 !important;
  text-align:center !important;
  opacity:.96;
  word-break:keep-all;
}

.slider-desc{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.55 !important;
  font-weight:500 !important;
  text-align:center !important;
  opacity:.90;
  word-break:keep-all;
}

.slider-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:36px;
  height:36px;
  border:none;
  border-radius:999px;
  background:rgba(255,255,255,.20);
  color:#fff;
  cursor:pointer;
  z-index:2;
}
.slider-btn-prev{left:12px;}
.slider-btn-next{right:12px;}

.layout-container{
  align-items:flex-start;
}

.main-content{
  min-width:0;
  flex:1 1 auto;
}

/* 모바일 광고 위치 및 비율 */
@media (max-width: 991.98px){
  .left-ad,
  .right-ad{
    display:none !important;
  }

  .catad-top-desktop{
    display:none !important;
  }

  .catad-mobile-wrap{
    display:block !important;
  }

  .catad-mobile-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
  }

  .ad-card{
    min-height:156px;
    border-radius:16px;
    padding:14px 10px 12px;
  }

  .ad-icon{
    width:30px;
    height:30px;
    margin-bottom:8px;
  }

  .ad-icon svg,
  svg.ad-icon{
    width:20px !important;
    height:20px !important;
  }

  .ad-title{
    font-size:13px !important;
    margin-bottom:4px !important;
  }

  .ad-subtitle{
    font-size:9px !important;
    margin-bottom:5px !important;
  }

  .ad-desc{
    font-size:9px !important;
    line-height:1.45 !important;
  }

  .ad-cta{
    min-width:62px;
    height:24px;
    margin-top:10px;
    padding:0 8px;
    font-size:9px !important;
  }

  .slider-card{
    min-height:88px;
    border-radius:16px;
    padding:14px 12px;
  }

  .slider-icon{
    margin-bottom:6px;
  }

  .slider-icon svg{
    width:20px !important;
    height:20px !important;
  }

  .slider-title{
    font-size:13px !important;
    margin-bottom:3px !important;
  }

  .slider-subtitle{
    font-size:13px !important;
    margin-bottom:4px !important;
  }

  .slider-desc{
    font-size:9px !important;
    line-height:1.4 !important;
  }

  .slider-btn{
    width:28px;
    height:28px;
  }
}

/* =========================================================
   FIX: 실제 helper 출력 클래스(catad-*) 기준 보정
   ========================================================= */

.catad-side-stack{
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
  width:100% !important;
}
/* 배너 슬라이더 FOUC 방지: JS 로드 전 2번째 이후 카드 숨김 */
.catad-side-stack:not(.slider-ready) .catad-card ~ .catad-card,
.catad-top-stack:not(.slider-ready) .catad-card ~ .catad-card,
.ad-sticky:not(.slider-ready) > .ad-card ~ .ad-card{
  display:none !important;
  opacity:0 !important;
}

.catad-top-desktop{
  display:block;
  margin:0 0 18px 0;
}

.catad-mobile-wrap{
  display:none;
  width:100%;
  margin:0 0 14px 0;
}

.catad-mobile-top{
  margin:0 0 10px 0;
}

.catad-mobile-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}

/* 모바일 그리드 catad-card — ad-card 모바일 크기(156px)에 맞춤 */
@media (max-width: 991.98px){
  .catad-mobile-grid .catad-card{
    min-height:156px !important;
    border-radius:16px !important;
    padding:14px 10px 12px !important;
  }
}

.catad-card{
  position:relative !important;
  display:block !important;
  width:100% !important;
  min-height:300px !important;
  padding:0 !important;
  border-radius:20px !important;
  overflow:hidden !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
  box-shadow:none !important;
}

.catad-card,
.catad-card *{
  color:#fff !important;
}

.catad-card.ad-blue{
  background:linear-gradient(180deg,#114ad0 0%,#0d3db0 100%) !important;
}
.catad-card.ad-orange{
  background:linear-gradient(180deg,#ff7b42 0%,#ff955f 100%) !important;
}
.catad-card.ad-cyan{
  background:linear-gradient(180deg,#16a7d3 0%,#118cb3 100%) !important;
}
.catad-card.ad-purple{
  background:linear-gradient(180deg,#9850ea 0%,#7d35d0 100%) !important;
}
.catad-card.ad-green{
  background:linear-gradient(180deg,#17b26a 0%,#0f9f5c 100%) !important;
}
/* 광고 없을 때 플레이스홀더: 배경 없음 + 점선 테두리 */
.catad-card.ad-default,
.catad-card.catad-default-placeholder{
  background:transparent !important;
  border:2px dashed #cbd5e1 !important;
}
.catad-card.ad-default *,
.catad-card.catad-default-placeholder *{
  color:#94a3b8 !important;
}
.catad-card.ad-default .catad-cta,
.catad-card.catad-default-placeholder .catad-cta{
  background:rgba(148,163,184,.15) !important;
  color:#64748b !important;
  border:1px solid #cbd5e1 !important;
}

.catad-text{
  position:relative !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:300px !important;
  padding:20px 20px 16px !important;
  text-align:center !important;
  box-sizing:border-box !important;
  width:100% !important;
}

.catad-icon{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:48px !important;
  height:48px !important;
  margin:0 auto 12px !important;
  flex:0 0 auto !important;
}

.catad-icon svg{
  width:32px !important;
  height:32px !important;
  display:block !important;
  color:#fff !important;
  stroke:currentColor !important;
  fill:none !important;
}

.catad-title{
  margin:0 0 6px !important;
  font-size:16px !important;
  line-height:1.35 !important;
  font-weight:800 !important;
  text-align:center !important;
  letter-spacing:-0.02em !important;
  word-break:keep-all !important;
  color:#fff !important;
}

.catad-subtitle{
  margin:0 0 8px !important;
  font-size:13px !important;
  line-height:1.45 !important;
  font-weight:700 !important;
  text-align:center !important;
  opacity:.96 !important;
  word-break:keep-all !important;
  color:#fff !important;
}

.catad-desc{
  margin:0 !important;
  font-size:13px !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  text-align:center !important;
  opacity:.90 !important;
  word-break:keep-all !important;
  color:#fff !important;
}

.catad-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:82px !important;
  height:28px !important;
  margin-top:14px !important;
  padding:0 12px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.18) !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:800 !important;
  line-height:1 !important;
  text-decoration:none !important;
}

.catad-desc br{
  display:block !important;
  content:"" !important;
  margin-top:2px !important;
}

/* 중앙 상단 스택 (슬라이더 컨테이너) */
.catad-top-stack{
  display:block;
  width:100%;
}

/* 상단 광고: catad-card + slider-card 모두 동일한 큰 카드 규격 */
.catad-top-desktop .catad-card{
  min-height:216px !important;
  border-radius:24px !important;
}
.catad-top-desktop .catad-text{
  min-height:216px !important;
  padding:28px 32px 24px !important;
  justify-content:center !important;
}
/* slider-card(render_center_top_banner)도 중앙상단에서는 동일 크기 */
.catad-top-desktop .slider-card{
  min-height:216px !important;
  border-radius:24px !important;
  padding:30px 28px !important;
}
.catad-top-desktop .slider-title{
  font-size:24px !important;line-height:1.2 !important;margin-bottom:8px !important;font-weight:800 !important;
}
.catad-top-desktop .slider-subtitle{
  font-size:16px !important;line-height:1.3 !important;margin-bottom:10px !important;font-weight:800 !important;
}
.catad-top-desktop .slider-desc{
  font-size:14px !important;line-height:1.7 !important;font-weight:600 !important;
}
.catad-top-desktop .slider-icon{
  width:42px !important;height:42px !important;margin:0 auto 14px !important;
}
.catad-top-desktop .slider-icon svg{
  width:30px !important;height:30px !important;
}

.left-ad,
.right-ad{
  width:136px !important;
  min-width:136px !important;
  flex:0 0 136px !important;
  align-self:stretch !important;
}

/* 좌/우 배너: 기본 sticky */
.ad-sticky{
  position:sticky !important;
  top:calc(var(--header-height, 72px) + 24px) !important;
  display:flex !important;
  flex-direction:column !important;
  gap:16px !important;
}

.layout-container{
  align-items:flex-start !important;
}

.main-content{
  min-width:0 !important;
  flex:1 1 auto !important;
}

@media (max-width: 991.98px){
  .left-ad,
  .right-ad{
    display:none !important;
  }

  .catad-top-desktop{
    display:none !important;
  }

  .catad-mobile-wrap{
    display:block !important;
  }

  .catad-mobile-grid{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
  }

  .catad-card{
    min-height:156px !important;
    border-radius:16px !important;
  }

  .catad-text{
    min-height:156px !important;
    padding:14px 10px 12px !important;
  }

  .catad-icon{
    width:30px !important;
    height:30px !important;
    margin-bottom:8px !important;
  }

  .catad-icon svg{
    width:20px !important;
    height:20px !important;
  }

  .catad-title{
    font-size:13px !important;
    margin-bottom:4px !important;
  }

  .catad-subtitle{
    font-size:9px !important;
    margin-bottom:5px !important;
  }

  .catad-desc{
    font-size:9px !important;
    line-height:1.45 !important;
  }

  .catad-cta{
    min-width:62px !important;
    height:24px !important;
    margin-top:10px !important;
    padding:0 8px !important;
    font-size:9px !important;
  }

  .catad-mobile-top .catad-card{
    min-height:88px !important;
  }

  .catad-mobile-top .catad-text{
    min-height:88px !important;
    padding:14px 12px !important;
  }
}


/* =========================================================
   FIX 2: 중앙배너만 샘플형으로 소폭 보정
   - 좌/우 광고 카드에는 영향 최소화
   ========================================================= */

.catad-top-desktop .catad-card{
  min-height:216px !important;
  border-radius:24px !important;
}

.catad-top-desktop .catad-card > .catad-text{
  min-height:216px !important;
  padding:28px 32px 24px !important;
  justify-content:center !important;
  align-items:center !important;
  text-align:center !important;
}

.catad-top-desktop .catad-card .catad-icon{
  width:42px !important;
  height:42px !important;
  margin:0 auto 14px !important;
}

.catad-top-desktop .catad-card .catad-icon svg{
  width:30px !important;
  height:30px !important;
}

.catad-top-desktop .catad-card .catad-title{
  font-size:24px !important;
  line-height:1.2 !important;
  margin-bottom:8px !important;
  font-weight:800 !important;
}

.catad-top-desktop .catad-card .catad-subtitle{
  font-size:16px !important;
  line-height:1.3 !important;
  margin-bottom:10px !important;
  font-weight:800 !important;
}

.catad-top-desktop .catad-card .catad-desc{
  font-size:14px !important;
  line-height:1.7 !important;
  margin:0 !important;
  font-weight:600 !important;
  opacity:.95 !important;
}

.catad-top-desktop .catad-card .catad-cta{
  min-width:106px !important;
  height:34px !important;
  margin-top:18px !important;
  padding:0 16px !important;
  font-size:13px !important;
  font-weight:800 !important;
  align-self:center !important;
}

.catad-top-desktop .catad-card .catad-desc br{
  margin-top:4px !important;
}

/* 모바일 상단 1칸 배너도 같은 톤으로만 축소 */
@media (max-width: 991.98px){
  .catad-mobile-top > .catad-card{
    min-height:104px !important;
    border-radius:18px !important;
  }

  .catad-mobile-top > .catad-card > .catad-text{
    min-height:104px !important;
    padding:16px 14px !important;
  }

  .catad-mobile-top > .catad-card .catad-icon{
    width:24px !important;
    height:24px !important;
    margin-bottom:7px !important;
  }

  .catad-mobile-top > .catad-card .catad-icon svg{
    width:18px !important;
    height:18px !important;
  }

  .catad-mobile-top > .catad-card .catad-title{
    font-size:14px !important;
    margin-bottom:4px !important;
  }

  .catad-mobile-top > .catad-card .catad-subtitle{
    font-size:13px !important;
    margin-bottom:5px !important;
  }

  .catad-mobile-top > .catad-card .catad-desc{
    font-size:9px !important;
    line-height:1.45 !important;
  }

  .catad-mobile-top > .catad-card .catad-cta{
    min-width:64px !important;
    height:24px !important;
    margin-top:8px !important;
    font-size:9px !important;
  }
}


/* =========================================================
   FINAL MIN FIX
   1) 중앙배너 아이콘 숨김
   2) 중앙배너 텍스트 간격만 소폭 보정
   ========================================================= */

.catad-top-desktop .catad-card .catad-icon,
.catad-mobile-top > .catad-card .catad-icon{
  display:none !important;
}

.catad-top-desktop .catad-card > .catad-text{
  padding-top:24px !important;
}

.catad-top-desktop .catad-card .catad-title{
  margin-top:0 !important;
}

.catad-mobile-top > .catad-card > .catad-text{
  padding-top:14px !important;
}

.catad-top-desktop .catad-card .catad-desc br,
.catad-mobile-top > .catad-card .catad-desc br{
  display:block !important;
  margin-top:4px !important;
  content:"" !important;
}



/* =========================================================
   IMAGE BANNER (catad-image-box / catad-image-card)
   - ad_type = 'image' 일 때 render_category_ad_card 출력
   ========================================================= */

.catad-image-box {
  position: relative;
  width: 100%;
  overflow: hidden;
  border-radius: inherit;
  line-height: 0;
}

.catad-image-box picture,
.catad-image-box img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: inherit;
}

/* 이미지형일 때 텍스트 오버레이 (has-image) */
.catad-text.has-image {
  position: absolute !important;
  bottom: 0;
  left: 0;
  right: 0;
  background: linear-gradient(0deg, rgba(0,0,0,.55) 0%, transparent 100%);
  min-height: auto !important;
  padding: 18px 14px 14px !important;
  align-items: flex-start !important;
  text-align: left !important;
  border-radius: 0 0 20px 20px !important;
}

/* 이미지형 텍스트 폴백: 이미지 정상이면 숨김, 깨지면 JS가 표시 */
.catad-text-fallback {
  display: none !important;
}
.catad-card.catad-img-broken .catad-text-fallback {
  display: flex !important;
}
.catad-card.catad-img-broken .catad-image-box {
  display: none !important;
}

/* 이미지형 카드 전체 relative 필요 */
.catad-card:has(.catad-image-box) {
  position: relative !important;
  overflow: hidden !important;
}

/* 이미지형: 이미지만 있는 경우 min-height 해제 (상단 배너 등) */
.catad-card:has(.catad-image-box) {
  min-height: 0 !important;
}

/* 사이드 배너 이미지형 — 텍스트 배너와 동일 높이(300px) 유지 */
.catad-side-stack .catad-card:has(.catad-image-box) {
  min-height: 300px !important;
  height: 300px !important;
}
.catad-side-stack .catad-card .catad-image-box {
  height: 100% !important;
  min-height: 300px !important;
}
.catad-side-stack .catad-card .catad-image-box picture,
.catad-side-stack .catad-card .catad-image-box img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: inherit !important;
}

/* 중앙 상단 이미지 배너 — 표준 규격: PC 1200×250px */
.catad-top-desktop .catad-image-box,
.catad-top-desktop .catad-card.has-image {
  max-height: 250px;
  overflow: hidden;
}
.catad-top-desktop .catad-image-box img {
  width: 100%;
  height: 250px;
  max-height: 250px;
  object-fit: cover;
  border-radius: 16px;
}

/* 중앙 서브배너 이미지 — 표준 규격: PC 1200×160px (중앙상단보다 낮은 높이) */
.catad-sub-desktop .catad-image-box img {
  width: 100%;
  height: 160px;
  max-height: 160px;
  object-fit: cover;
  border-radius: 12px;
}
/* #11 FIX: 생활정보 카테고리 상단 배너 — 중앙 상단 배너(catad-top-desktop)와 동일 규격 */
.life-category-top-banner .catad-image-box img {
  width: 100%;
  height: 250px;
  max-height: 250px;
  object-fit: cover;
  border-radius: 16px;
}
.life-category-top-banner .catad-card{min-height:216px !important;border-radius:24px !important;}
.life-category-top-banner .catad-card > .catad-text{min-height:216px !important;padding:28px 32px 24px !important;justify-content:center !important;}
/* slider-card 텍스트 배너도 동일 규격 */
.life-category-top-banner .slider-card{min-height:216px !important;border-radius:24px !important;padding:30px 28px !important;display:flex !important;flex-direction:column !important;align-items:center !important;justify-content:center !important;}
.life-category-top-banner .slider-title{font-size:24px !important;line-height:1.2 !important;margin-bottom:8px !important;font-weight:800 !important;}
.life-category-top-banner .slider-subtitle{font-size:16px !important;line-height:1.3 !important;margin-bottom:10px !important;font-weight:800 !important;}
.life-category-top-banner .slider-icon{width:42px !important;height:42px !important;margin:0 auto 14px !important;}
.life-category-top-banner .slider-icon svg{width:30px !important;height:30px !important;}

/* 모바일: max-height 제한 없이 자연 비율 */
@media (max-width: 991.98px) {
  .catad-top-desktop .catad-image-box img,
  .catad-mobile-top .catad-image-box img {
    max-height: none !important;
    height: auto !important;
    width: 100% !important;
    border-radius: 16px !important;
  }

  .catad-mobile-top .catad-card:has(.catad-image-box),
  .catad-mobile-top .catad-card:has(.catad-image-box) .catad-image-box {
    border-radius: 16px !important;
    overflow: hidden !important;
    min-height: 0 !important;
  }

  .catad-mobile-grid .catad-image-box img {
    max-height: none !important;
    height: auto !important;
    object-fit: cover;
    aspect-ratio: 1 / 1;
  }

  .catad-text.has-image {
    padding: 12px 10px 10px !important;
  }
}


/* =========================================================
   MOBILE LAYOUT FIX
   - layout-container 안에 catad-mobile-wrap이 flex item이
     되면서 flex 줄 안에 끼는 문제 수정
   ========================================================= */
@media (max-width: 991.98px) {
  /* layout-container를 wrap + column 방향으로 */
  .main-layout .layout-container {
    flex-wrap: wrap !important;
    flex-direction: column !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
    gap: 0 !important;
  }

  /* mobile wrap이 가장 위에 오도록 full width */
  .main-layout .layout-container > .catad-mobile-wrap {
    order: -1 !important;
    width: 100% !important;
    flex: 0 0 100% !important;
    display: block !important;
    margin-bottom: 14px !important;
  }

  /* main-content full width */
  .main-layout .layout-container > .main-content,
  .main-layout .layout-container > main {
    width: 100% !important;
    flex: 0 0 100% !important;
    min-width: 0 !important;
  }

  /* left/right aside 숨김 (이중 보증) */
  .main-layout .layout-container > .left-ad,
  .main-layout .layout-container > .right-ad,
  .main-layout .layout-container > aside.left-ad,
  .main-layout .layout-container > aside.right-ad {
    display: none !important;
    width: 0 !important;
    flex: 0 0 0 !important;
    overflow: hidden !important;
  }

  /* ── 모바일 콘텐츠 박스 제거 ──────────────────────────
     구인구직 패턴과 동일하게:
     · layout-container padding: 0
     · main-content padding: 0 12px (mobile.css)
     · 내부 래퍼 박스 스타일 제거 (모든 카테고리 페이지 공통)
  ────────────────────────────────────────────────── */
  .main-layout .main-content .content-wrapper,
  .main-layout main .content-wrapper,
  /* 생활정보 life-board */
  .main-layout .life-front-page .life-board,
  .main-layout.life-front-page .life-board,
  /* 부동산 */
  .main-layout .main-content .properties-board,
  .main-layout .main-content .listing-board,
  /* 보험/금융/상조 */
  .main-layout .main-content .tab-navigation-wrapper,
  /* 공통 inner-card 래퍼 */
  .main-layout .main-content .page-content-box,
  .main-layout .main-content .section-box {
    background: transparent !important;
    border-radius: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-shadow: none !important;
  }

  /* layout-container 0 padding, main-content 12px — 구인구직 패턴 */
  .main-layout .layout-container {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .main-layout .main-content {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  /* catad-mobile-wrap도 같은 12px 여백으로 통일 */
  .main-layout .layout-container > .catad-mobile-wrap {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }
}
