.law-main { padding: 0; margin: 0; }

/* 🎥 비디오 히어로 */
.law-main .video-hero{position:relative;width:100%;min-height:100svh;overflow:hidden}
.law-main .video-hero video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:0}
.law-main .video-hero .overlay{position:relative;z-index:1;color:#fff;text-align:center;padding-top:min(30svh,30vh);text-shadow:0 2px 6px rgba(0,0,0,.4)}

/* 🧭 인트로 */
.law-intro{background:url('../../img/bg/law-intro-bg.webp') center/cover no-repeat;color:#fff;position:relative;margin-top:75px;text-align:center;overflow:hidden;padding:4rem 1rem}
.law-intro::before{content:'';position:absolute;inset:0;background:rgba(30,60,80,.5);z-index:-1;transition:background .3s}
.law-intro:hover::before{background:rgba(30,60,80,.7)}
.law-intro h2{font-size:1.6rem;font-weight:700;margin-bottom:1.5rem;color:#fff}

/* 본문 */
.law-section p{margin-bottom:1.5rem}
.law-intro .typewriter,.typewriter{font-size:1.125rem;font-weight:700;font-family:'Noto Sans KR',sans-serif;white-space:normal;overflow:visible;max-width:800px;margin:0 auto;line-height:1.8;color:#fff}
.law-section{max-width:1200px;margin:0 auto;padding:var(--section-padding) 1.25rem;text-align:center;font-size:var(--fs-base);color:var(--color-text);line-height:1.8}
.law-section h2{font-size:var(--fs-h2);color:var(--color-primary);margin-top:var(--gap-lg);margin-bottom:var(--gap-sm)}
.law-section h3{font-size:var(--fs-h3);color:var(--color-accent);text-align:left;margin:2rem auto 1rem;max-width:700px}

/* 요약/리스트 */
.law-points,.law-list,.law-links{list-style:none;padding:0;max-width:700px;margin:0 auto}
.law-points{margin-top:var(--gap-md);text-align:left}
.law-points li{margin-bottom:1rem;background:#f8f8f8;padding:1rem 1.5rem;border-left:4px solid var(--color-primary);border-radius:var(--border-radius-sm);box-shadow:var(--box-shadow-xs);color:var(--color-text);line-height:1.6}
.law-list{margin-top:var(--gap-md);text-align:left}
.law-list li{background:#f8f8f8;padding:1rem 1.5rem;border-left:4px solid var(--color-primary);border-radius:var(--border-radius-md);color:#222;font-weight:400;box-shadow:var(--box-shadow-sm);margin-bottom:var(--gap-sm)}
.law-links{margin-top:1.2rem;text-align:left}
.law-links li{margin-bottom:1.25rem;font-size:1rem;color:var(--color-text);line-height:1.6}
.law-links a{display:inline-block;margin-top:.25rem;color:var(--color-primary);font-weight:500;text-decoration:underline;transition:color .2s}
.law-links a:hover{color:var(--color-accent)}

/* =========================
   📦 법령 카드 (신규 스타일)
   - 녹색 테두리 + 상단 헤더 박스 + 하단 이미지
   ========================= */
.law-main .contact-cards .card-container{
  display:flex;flex-wrap:nowrap;gap:20px;justify-content:center;
  max-width:1200px;padding:12px 16px;margin:0 auto;overflow-x:auto;
  scroll-snap-type:x mandatory;scroll-padding-inline:20px;box-sizing:border-box
}
.law-main .contact-cards .card-container::before,
.law-main .contact-cards .card-container::after{content:"";flex:0 0 20px}

.law-main .contact-cards .card{
  position:relative;flex:0 0 300px;min-width:300px;max-width:360px;
  border:2px solid var(--color-primary); /* ✅ 테두리 */
  background:#fff;border-radius:16px;overflow:hidden;scroll-snap-align:start;
  box-shadow:0 8px 20px rgba(0,0,0,.08);transition:transform .2s
}
.law-main .contact-cards .card:hover{transform:translateY(-2px)}

/* 헤더 박스 (스크린샷처럼) */
.law-main .contact-cards .card-header{
  background:rgba(46,125,50,.12); /* 연녹색 배경 */
  padding:0.9rem 1rem 0.8rem 1rem;
  display:flex;align-items:center;gap:.5rem;border-bottom:1px solid rgba(0,0,0,.08)
}
.law-main .contact-cards .card-header h2{display:none} /* 기존 숫자 숨김(필요시 다시 보이게) */
.law-main .contact-cards .card-header h3{
  margin:0;font-size:1.25rem;font-weight:800;color:#1b5e20
}
/* 아이콘 느낌(이모지 자동 추가) – HTML 수정 없이 */
.law-main .contact-cards .card-header h3::before{
  content:"🔎";margin-right:.5rem;display:inline-block;transform:translateY(1px)
}
/* 설명문은 스크린샷처럼 헤더엔 미표시 */
.law-main .contact-cards .card-header p{display:none}

/* 이미지 영역 */
.law-main .contact-cards .card-image{
  width:100%;height:220px; /* 보기 좋게 약간 크게 */
  overflow:hidden;position:relative
}
.law-main .contact-cards .card-image img{
  width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease
}
.law-main .contact-cards .card:hover .card-image img{transform:scale(1.03)}

/* 오버레이(PC hover용 – 필요 시 유지) */
.law-main .contact-cards .card .card-overlay{
  position:absolute;inset:0;background:#fff;opacity:0;padding:1.5rem;display:flex;
  flex-direction:column;justify-content:center;align-items:center;text-align:center;
  transition:opacity .3s;pointer-events:none;z-index:1
}
.law-main .contact-cards .card:hover .card-overlay{opacity:1;pointer-events:auto}
.law-main .contact-cards .card-overlay .overlay-icon{
  position:absolute;inset:0;margin:auto;width:100%;height:100%;object-fit:contain;opacity:.2;z-index:0;pointer-events:none
}
.law-main .contact-cards .card-overlay h4{font-size:1rem;color:#2e7d32;margin-bottom:1rem;position:relative;z-index:1;line-height:1.6}
.law-main .contact-cards .card-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;position:relative;z-index:1}
.law-main .contact-cards .card-buttons .cta.primary{padding:8px 16px;background:#2e7d32;color:#fff;border:none;border-radius:6px;font-size:.9rem;text-decoration:none;transition:background .3s}
.law-main .contact-cards .card-buttons .cta.primary:hover{background:#1b5e20}
/* ===== Responsive ===== */
@media (max-width:768px){
  .law-main .video-hero{min-height:60svh}
  .law-main .video-hero .overlay{padding-top:10svh;font-size:1rem}

  .law-intro{padding:2rem 1rem;margin-top:1rem}
  .law-intro h2{font-size:1.4rem;margin-bottom:1rem}

  .law-main .typewriter{font-size:.95rem;line-height:1.5;max-width:100%;margin:1rem auto 0}

  .law-section{padding:2rem 1rem;font-size:.95rem;line-height:1.6}
  .law-section h2{font-size:1.3rem;margin-bottom:1rem}
  .law-section p br{display:none}
  .law-section p{text-align:left}
  .law-section h3{font-size:1.1rem;margin:1.5rem auto .75rem;text-align:center}

  .law-points li,.law-list li{padding:1rem;font-size:.95rem;line-height:1.5;margin-bottom:1rem}
  .law-links li{font-size:.95rem;line-height:1.5;margin-bottom:.8rem}
  .law-links a span{display:inline-block;margin-top:.25rem}

  /* 카드: 세로 스택 */
  .law-main .contact-cards .card-container{
    flex-direction:column;gap:20px;padding:1.25rem 1rem;overflow-x:visible;scroll-snap-type:none
  }
  .law-main .contact-cards .card{min-width:100%;max-width:100%}

  /* 📱 모바일 전용: 이미지 오른쪽 하단 '내용 보기' 라벨 */
  .law-main .contact-cards .card .card-image{position:relative}
  .law-main .contact-cards .card .card-image::after{
    content:"내용 보기";position:absolute;right:10px;bottom:10px;display:inline-block;
    padding:5px 10px;background:rgba(255,255,255,.92);color:var(--color-primary);
    border:1px solid var(--color-primary);border-radius:999px;font-weight:600;font-size:.7rem;
    box-shadow:0 2px 8px rgba(0,0,0,.12);z-index:10;pointer-events:none
  }
}

/* 마지막 섹션 중앙 정렬 */
.law-section:last-of-type,.law-section:last-of-type p{text-align:center}
