/* 동탄 홈 — 본사(frontierlaw.co.kr) 홈과 같은 톤으로 바꾼 섹션들 (2026-10-08)
   본사 style.css 의 main-center·main-lawyer·main-case·main-review·main-location 규칙을 옮겨 왔다.
   동탄 style.css 에도 .main-case·.main-conts-tit-wrap·.main-location 이 있어서(옛 홈 모양) 이름이 겹치는 것만 fh- 로 바꿨다:
   .main-conts-tit-wrap → .fh-tit, .main-case → .fh-case, .main-location → .fh-loca
   index.php 에서만 읽는다. */

/* 섹션 공통 */
.main-contents .fh-sec .inner { max-width:1400px; width:100%; }
@media screen and (max-width: 1400px) { .main-contents .fh-sec .inner { padding-left:30px; padding-right:30px; } }
@media screen and (max-width: 768px) { .main-contents .fh-sec .inner { padding:55px 20px; } }

.fh-tit { color:#fff; text-align:center; padding-bottom:45px; }
.fh-tit h2 { font-weight:500; font-size:40px; line-height:1.35; word-break:keep-all; }
.fh-tit h2.sec-h1 { font-weight:700; }
.fh-tit h2 span, .fh-tit p span { color:#e5b987; }
.fh-tit p { padding-top:12px; font-size:18px; font-weight:300; line-height:1.3; word-break:keep-all; }
@media screen and (max-width: 1024px) {
	.fh-tit { padding-bottom:35px; }
	.fh-tit h2.sec-h1 { font-size:35px; }
	.fh-tit p { padding-top:10px; font-size:15px; }
}
@media screen and (max-width: 768px) {
	.fh-tit { padding-bottom:28px; }
	.fh-tit h2 { font-size:20px; }
	.fh-tit h2.sec-h1 { font-size:30px; }
	.fh-tit p { padding-top:6px; }
}

/* 슬라이드 화살표(본사와 같은 동그란 흰 버튼) */
.fh-sec .swiper-button-prev,
.fh-sec .swiper-button-next { z-index:555; margin-top:-22px; width:45px; height:45px; }
.fh-sec .swiper-button-prev::after,
.fh-sec .swiper-button-next::after { display:none; }
.fh-sec .swiper-button-prev { left:-64px; background:url('/images/main/btn_prev.png') no-repeat center center; }
.fh-sec .swiper-button-next { right:-64px; background:url('/images/main/btn_next.png') no-repeat center center; }
@media screen and (max-width: 1528px) {
	.fh-sec .swiper-button-prev { left:-22px; }
	.fh-sec .swiper-button-next { right:-22px; }
}
@media screen and (max-width: 1024px) {
	.fh-sec .swiper-button-prev,
	.fh-sec .swiper-button-next { display:none; }
}

/* -------- 분야 (본사 main-center) -------- */
.main-center { background:url('/images/main/center_bg.jpg') no-repeat center /cover; }
.main-center-wrap ul { display:flex; gap:16px; }
.main-center-wrap ul li { flex:1; }
.main-center-wrap ul li a {
	display:flex; flex-direction:column; justify-content:center; align-items:center;
	height:100%; padding:50px 30px; gap:50px;
	background-color:rgba(0,0,0,.6);
	border:1px solid #e5b987;
	transition:background-color .15s;
}
.main-center-wrap ul li a:hover { background-color:rgba(229,185,135,.18); }
.main-center-wrap ul li a h3 { color:#e5b987; font-size:34px; }
.main-center-wrap ul li a img { display:block; }
.main-center-wrap ul li.mc-duo { display:flex; flex-direction:column; gap:16px; }
.main-center-wrap ul li.mc-duo a { flex:1; padding:20px; gap:20px; }
.main-center-wrap ul li.mc-duo a h3 { font-size:28px; }
.main-center-wrap ul li.mc-duo a img { width:48px; height:auto; }
@media screen and (max-width: 1024px) {
	.main-center-wrap ul li a { padding:60px 20px 45px; gap:40px; }
	.main-center-wrap ul li a h3 { font-size:28px; }
	.main-center-wrap ul li.mc-duo a h3 { font-size:24px; }
}
@media screen and (max-width: 768px) {
	.main-center-wrap ul { flex-wrap:wrap; gap:6px; }
	.main-center-wrap ul li { flex:none; width:100%; }
	.main-center-wrap ul li a { position:relative; flex-direction:row; padding:30px 15px; gap:0; }
	.main-center-wrap ul li a h3 { font-size:24px; }
	.main-center-wrap ul li a img { position:absolute; left:28px; top:50%; width:41px; height:auto; transform:translateY(-50%); }
	.main-center-wrap ul li.mc-duo { flex-direction:row; gap:6px; }
	.main-center-wrap ul li.mc-duo a { padding:24px 10px; }
	.main-center-wrap ul li.mc-duo a h3 { font-size:22px; }
	.main-center-wrap ul li.mc-duo a img { display:none; }
}

/* -------- 왜 프런티어인가 + 변호사 (본사 main-lawyer) -------- */
.main-lawyer { background:#1b1b1b url('/images/main/lawyer_bg.jpg') no-repeat right center /cover; }
.main-lawyer-wrap { position:relative; }
.why-slide ul li { position:relative; transition:.15s; border-radius:4px; overflow:hidden; }
.why-slide ul li img { display:block; width:100%; height:auto; }
.why-slide ul li h3 {
	display:flex; align-items:center; justify-content:center;
	position:absolute; top:0; left:0; width:100%; height:100%;
	text-align:center; line-height:1.3; color:#fff; font-size:20px;
	transition:.15s;
}
.why-slide ul li:hover h3 { color:#e5b987; box-shadow:inset 0 0 0 3px #e5b987; }
.lawyer-slide { padding-top:14px !important; }
.lawyer-slide ul li a { display:block; position:relative; border-radius:4px; overflow:hidden; }
.lawyer-slide ul li .img { background:#272727; height:390px; }
.lawyer-slide ul li a:hover .img {
	background:linear-gradient(180deg, rgba(39,39,39,1) 0%, rgba(71,67,63,1) 71%, rgba(98,87,75,1) 100%);
	box-shadow:inset 0 0 0 2px #e5b987;
}
.lawyer-slide ul li .img img { display:block; width:auto; height:100%; margin:0 auto; }
.lawyer-slide ul li h3 {
	position:absolute; top:0; left:0; width:100%;
	padding:15px; color:#fff; font-size:30px; line-height:1.4;
	text-align:left; letter-spacing:0; transition:.1s;
}
.lawyer-slide ul li h3 span { display:block; font-size:18px; font-weight:300; }
.lawyer-slide ul li a:hover h3 { color:#e5b987; }
.lawyer-slide .swiper-pagination { position:static; margin-top:20px; height:6px; background-color:#3a3a3a; }
.lawyer-slide .swiper-pagination span { background-color:#e5b987; }
@media screen and (max-width: 1024px) {
	.why-slide { margin:0 -30px !important; padding:0 30px !important; }
	.why-slide ul li h3 { font-size:16px; }
	.lawyer-slide { margin:14px -30px 0 !important; padding:14px 30px 0 !important; }
}
@media screen and (max-width: 768px) {
	.why-slide { margin:0 -20px !important; padding:0 20px !important; }
	.why-slide ul li h3 { font-size:14px; }
	.lawyer-slide { margin:12px -20px 0 !important; padding:12px 20px 0 !important; }
	.lawyer-slide ul li .img { height:274px; }
	.lawyer-slide ul li h3 { padding:18px; font-size:20px; }
	.lawyer-slide ul li h3 span { font-size:13px; }
	.lawyer-slide .swiper-pagination { margin-top:12px; height:3px; }
}

/* -------- 성공사례 (본사 main-case) -------- */
.fh-case { background:#151515 url('/images/main/case_bg.jpg') no-repeat center /cover; }
.case-top { background-color:rgba(0,0,0,.5); padding:30px 35px 35px; margin-bottom:15px; }
.case-top .wrap {
	display:flex; align-items:flex-end; justify-content:space-between; gap:10px 20px; flex-wrap:wrap;
	padding-bottom:16px; border-bottom:1px solid rgba(255,255,255,.3);
}
.case-top h2 { color:#fff; font-size:40px; font-weight:500; line-height:1.3; word-break:keep-all; }
.case-top h2 strong { color:#e5b987; }
.case-top .fh-more {
	display:inline-flex; align-items:center; gap:12px;
	color:#e5b987; font-size:17px; font-weight:500;
	text-decoration:underline; text-underline-offset:5px;
}
.case-top .fh-more::after {
	content:''; width:7px; height:7px;
	border-top:2px solid currentColor; border-right:2px solid currentColor;
	transform:rotate(45deg);
}
.case-top .fh-more:hover { color:#fff; }
.case-slide-wrap { position:relative; }
.case-slide ul li a {
	display:block; position:relative;
	background-color:rgba(0,0,0,.6);
	padding:30px 30px 50px; height:400px;
	border:2px solid transparent; border-top:1px solid #e5b987;
	text-align:center;
}
.case-slide ul li a:hover { border-color:#e5b987; border-top-width:1px; }
.case-slide ul li .top { display:flex; gap:20px; align-items:center; margin-bottom:25px; }
.case-slide ul li .top .lawyer { width:calc(100% - 150px); }
.case-slide ul li .top .lawyer .cate {
	display:inline-block; padding:5px; min-width:84px;
	background-color:#e5b987; border-radius:4px;
	text-align:center; color:#1d1d1d; font-size:22px; font-weight:700;
}
.case-slide ul li .top .lawyer .img {
	position:relative; width:60px; height:60px; margin:15px auto 0;
	border-radius:50%; overflow:hidden; background-color:#e3e2de;
}
.case-slide ul li .top .lawyer .img img { display:block; position:absolute; top:0; left:50%; width:130%; height:auto; margin-left:-65%; }
.case-slide ul li .top .lawyer h4 { padding-top:10px; color:#fff; font-size:16px; font-weight:300; line-height:1.2; }
.case-slide ul li .top .lawyer h4 strong { display:block; font-size:24px; font-weight:600; }
.case-slide ul li .top .thumb { width:150px; height:212px; background:#fff; overflow:hidden; }
.case-slide ul li .top .thumb img { display:block; width:100%; height:auto; }
.case-slide ul li .top .thumb .fl-noimg { display:flex; align-items:center; justify-content:center; width:100%; height:100%; background:#f3f1ec; }
.case-slide ul li .top .thumb .fl-noimg img { width:60%; opacity:.25; }
.case-slide ul li h3 {
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
	color:#fff; font-size:22px; font-weight:400; letter-spacing:-0.03rem;
}
.case-slide ul li h5 {
	white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
	color:#e5b987; font-size:22px; letter-spacing:-0.03rem; margin-top:4px;
}
.case-slide ul li .logo {
	position:absolute; left:0; bottom:0; width:100%; height:70px;
	background:url('/images/main/case_logo.png') no-repeat center; opacity:.8;
}
@media screen and (max-width: 1024px) {
	.case-top { padding:25px; }
	.case-top h2 { font-size:32px; }
	.case-slide { padding:0 30px !important; margin:0 -30px !important; }
}
@media screen and (max-width: 768px) {
	.case-top { padding:15px; margin-bottom:20px; }
	.case-top .wrap { padding-bottom:12px; }
	.case-top h2 { font-size:22px; }
	.case-top h2 strong { display:block; }
	.case-top .fh-more { font-size:15px; }
	.case-slide { padding:0 20px !important; margin:0 -20px !important; }
	.case-slide ul li a { padding:15px 15px 50px; height:330px; }
	.case-slide ul li .top { gap:10px; margin-bottom:15px; }
	.case-slide ul li .top .lawyer { width:calc(100% - 126px); }
	.case-slide ul li .top .lawyer .cate { padding:3px; min-width:60px; font-size:18px; }
	.case-slide ul li .top .lawyer .img { width:51px; height:51px; margin:12px auto 0; }
	.case-slide ul li .top .lawyer h4 { font-size:13px; }
	.case-slide ul li .top .lawyer h4 strong { font-size:20px; }
	.case-slide ul li .top .thumb { width:126px; height:178px; }
	.case-slide ul li h3, .case-slide ul li h5 { font-size:19px; }
	.case-slide ul li .logo { height:50px; background-size:41px auto; }
}

/* -------- 의뢰인 후기 (본사 main-review) -------- */
.main-review { background:#1b1b1b url('/images/main/review_bg.jpg') no-repeat right center /cover; }
.main-review-wrap { position:relative; }
.review-slide ul li { border:2px solid transparent; border-top:0; }
.review-slide ul li:hover { border-color:#e5b987; }
.review-slide ul li a { display:block; border-bottom:1px solid #e5b987; }
.review-slide ul li .thumb { height:240px; overflow:hidden; background:#2a2a2a; }
.review-slide ul li .thumb img { display:block; width:100%; height:100%; object-fit:cover; object-position:50% 20%; }
.review-slide ul li .conts { position:relative; background-color:rgba(0,0,0,.7); padding:30px 105px 26px 20px; text-align:left; }
.review-slide ul li .conts::after {
	content:''; position:absolute; top:50%; right:18px; width:72px; height:40px; margin-top:-20px;
	background:url('/images/main/case_logo.png') no-repeat center /100% auto; opacity:.6;
}
.review-slide ul li .conts .subject {
	color:#fff; font-size:20px; font-weight:500;
	overflow:hidden; text-overflow:ellipsis;
	display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
	word-break:keep-all; overflow-wrap:break-word; line-height:1.4em; height:2.8em;
}
.review-slide ul li .conts .date { margin-top:14px; color:rgba(255,255,255,.55); font-size:15px; }
@media screen and (max-width: 1024px) {
	.review-slide { margin:0 -30px !important; padding:0 30px !important; }
}
@media screen and (max-width: 768px) {
	.review-slide { margin:0 -20px !important; padding:0 20px !important; }
	.review-slide ul li .thumb { height:200px; }
	.review-slide ul li .conts { padding:16px 70px 16px 14px; }
	.review-slide ul li .conts::after { right:12px; width:44px; }
	.review-slide ul li .conts .subject { font-size:18px; }
	.review-slide ul li .conts .date { margin-top:8px; font-size:14px; }
}

/* -------- 사무소 안내 (본사 main-location 톤, 동탄 한 곳) -------- */
.fh-loca { background-color:#f0f0f0; }
.fh-loca .fh-tit { text-align:left; color:#1d1d1d; padding-bottom:25px; }
.fh-loca .fh-tit h2 { font-weight:700; }
.fh-loca .loca-wrap { display:flex; align-items:stretch; background:#fff; }
.fh-loca .loca-info { width:44%; padding:40px 40px 36px; text-align:left; }
.fh-loca .loca-info h3 { padding-bottom:14px; margin-bottom:24px; border-bottom:2px solid #1b1b1b; color:#1b1b1b; font-size:24px; font-weight:700; }
.fh-loca .loca-info dl { display:grid; grid-template-columns:110px 1fr; gap:14px 10px; }
.fh-loca .loca-info dt { color:#b08c5b; font-size:16px; font-weight:600; line-height:1.5; }
.fh-loca .loca-info dd { color:#111; font-size:18px; font-weight:500; line-height:1.5; word-break:keep-all; }
.fh-loca .loca-info dd a { color:#111; }
.fh-loca .loca-info dd.big a { font-size:28px; font-weight:800; letter-spacing:-.02em; }
.fh-loca .loca-info dd small { display:block; color:#666; font-size:15px; font-weight:400; }
.fh-loca .loca-btns { display:grid; grid-template-columns:repeat(3, 1fr); gap:8px; margin-top:30px; }
.fh-loca .loca-btns a {
	display:flex; align-items:center; justify-content:center; gap:10px;
	height:56px; padding:0 8px;
	border:1px solid #1b1b1b; background:#1b1b1b; color:#fff;
	font-size:17px; font-weight:600; transition:.15s;
}
.fh-loca .loca-btns a::after {
	content:''; flex:0 0 auto; width:6px; height:6px;
	border-top:2px solid currentColor; border-right:2px solid currentColor; transform:rotate(45deg);
}
.fh-loca .loca-btns a.kakao { background:#fee500; border-color:#fee500; color:#191600; }
.fh-loca .loca-btns a.naver { background:#03c75a; border-color:#03c75a; color:#fff; }
.fh-loca .loca-btns a:hover { background:#fff; color:#111; border-color:#111; }
.fh-loca .loca-map { position:relative; overflow:hidden; width:56%; min-height:460px; background:#e6e6e6; }
/* 카카오 약도는 그려질 때 틀 크기를 재므로 틀을 꽉 채우는 절대 위치로 둔다(옛 홈 .main-location .map 과 같은 방식) */
.fh-loca .loca-map .root_daum_roughmap { position:absolute; inset:0; width:100% !important; height:100% !important; }
.fh-loca .loca-map .root_daum_roughmap .wrap_map { position:absolute; top:0; left:0; z-index:1; width:100% !important; height:100% !important; }
.fh-loca .loca-map .root_daum_roughmap .cont { display:none !important; }
@media screen and (max-width: 1024px) {
	.fh-loca .loca-wrap { flex-direction:column; }
	.fh-loca .loca-info, .fh-loca .loca-map { width:100%; }
	.fh-loca .loca-map { min-height:360px; }
}
@media screen and (max-width: 768px) {
	.fh-loca .loca-info { padding:24px 18px; }
	.fh-loca .loca-info h3 { font-size:20px; margin-bottom:18px; }
	.fh-loca .loca-info dl { grid-template-columns:84px 1fr; gap:10px 8px; }
	.fh-loca .loca-info dt { font-size:15px; }
	.fh-loca .loca-info dd { font-size:16px; }
	.fh-loca .loca-info dd.big a { font-size:23px; }
	.fh-loca .loca-btns { grid-template-columns:1fr; }
	.fh-loca .loca-btns a { height:50px; font-size:16px; }
	.fh-loca .loca-map { min-height:320px; }
}
