@charset "utf-8"; 

/* main visual */
.main_visual { position:relative; display:flex; width:100%; height: 100vh; align-items:center; overflow:hidden; background:#222; } 
.main_visual_image { position:absolute; z-index:0; top: 0; left: 0; width: 100%; height: 100%; max-width:none; object-fit: cover; } 
.main_visual::after { position:absolute; inset:0; background:rgba(0,0,0,.5); content:""; } 
.main_visual_copy { position:relative; z-index:1; } 
.visual_eyebrow { margin-bottom:12px; color:#d5a53d; font-family:"Cormorant", serif; font-size:24px; font-weight:500; line-height:1.6; } 
.main_visual h1 { color:#fff; font-family:"MapoGoldenPier", serif; font-size:58px; font-weight:400; line-height:1.4; } 
.visual_line { display:block; } 
.visual_line, .visual_line span { color:inherit; font:inherit; } 
.visual_description { margin-top:20px; color:#fff; font-size:18px; line-height:1.6; } 

/* lawyer introduction */
.main_about { position:relative; padding:120px 0 160px; overflow:hidden; } 
.about_layout { position:relative; z-index:1; display:flex; align-items:flex-start; gap:50px; } 
.about_portrait { width:33.333%; aspect-ratio:480/624; flex-shrink:0; overflow:hidden; } 
.about_portrait img { display:block; width:100%; height:100%; object-fit:cover; } 
.about_copy { min-width:0; flex:1; } 
.about_greeting { margin-top:30px; font-size:20px; font-weight:600; line-height:1.6; } 
.about_description { margin-top:30px; color:rgba(34,34,34,.7); font-size:16px; line-height:1.6; } 
.about_lower { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; } 
.about_lower .gold_button { margin-top:50px; flex-shrink:0; } 
.about_office { width:44%; max-width:400px; margin-top:80px; aspect-ratio:400/248; overflow:hidden; } 
.about_office img { display:block; width:100%; height:100%; object-fit:cover; } 
.main_about .section_watermark { bottom:185px; } 

/* practice areas */
.main_practice { padding-bottom:120px; } 
.practice_band { margin-top:50px; border-top:1px solid #222; border-bottom:1px solid #222; } 
.practice_list { display:flex; flex-wrap:wrap; } 
.practice_brand, .practice_card { width:25%; min-width:0; border-right:1px solid #222; } 
.practice_brand, .practice_card:nth-child(5) { border-left:1px solid #222; } 
.practice_card:nth-child(n+5) { border-top:1px solid #222; } 
.practice_brand { display:flex; align-items:center; justify-content:center; } 
.practice_logo { display:block; width:60%; max-width:214px; aspect-ratio:428/142; background:#d3d3d3; mask:url(/minjeonglaw/img/logo/logo_practice_mask.webp) center/contain no-repeat; } 
.practice_card { display:flex; padding:40px 20px 50px; align-items:center; flex-direction:column; text-align:center; } 
.practice_number { color:rgba(34,34,34,.2); font-family:"Cormorant", serif; font-size:40px; line-height:1.4; } 
.practice_card h3 { color:inherit; font-family:"MapoGoldenPier", serif; font-size:28px; font-weight:400; line-height:1.4; } 
.practice_description { margin-top:12px; color:rgba(34,34,34,.7); font-size:16px; line-height:1.6; } 
.practice_card a { display:flex; margin-top:30px; align-items:center; justify-content:center; gap:9px; color:inherit; font-size:16px; font-weight:600; line-height:1.6; } 

/* case studies */
.main_cases { padding:120px 0; background:#f5f5f5; } 
.section_heading { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; } 
.section_heading > div { min-width:0; } 
.section_heading p { margin-top:16px; color:rgba(34,34,34,.7); font-size:16px; line-height:1.6; } 
.section_more { flex-shrink:0; } 
.section_more_mobile { display:none; } 
.case_list { display:flex; margin-top:50px; gap:24px; } 
.case_card { width:calc((100% - 48px)/3); min-width:0; } 
.case_card a { display:block; } 
.case_card figure { width:100%; aspect-ratio:464/260; overflow:hidden; background:#fff; } 
.case_card img { display:block; width:100%; height:100%; object-fit:cover; } 
.post_image_placeholder { display:flex; width:100%; height:100%; align-items:center; justify-content:center; background:#f5f5f5; } 
.case_card h3 { display:-webkit-box; margin-top:20px; overflow:hidden; color:#222; font-size:20px; font-weight:600; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:2; } 
.case_card time { display:block; margin-top:8px; color:rgba(34,34,34,.7); font-size:14px; line-height:1.6; } 

/* press */
.main_press { padding:120px 0; } 
.press_slider { margin-top:50px; } 
.press_slider:not(.swiper-initialized) { overflow-x:auto; } 
.press_slider:not(.swiper-initialized) .swiper-wrapper { gap:20px; } 
.press_slider:not(.swiper-initialized) .press_card { width:calc((100% - 60px)/4); flex-shrink:0; } 
.press_card { height:auto; border:1px solid #222; } 
.press_card a { display:flex; height:100%; padding:20px 20px 30px; flex-direction:column; } 
.press_card figure { width:100%; aspect-ratio:305/170; overflow:hidden; } 
.press_card img { display:block; width:100%; height:100%; object-fit:cover; } 
.press_card h3 { display:-webkit-box; margin-top:24px; overflow:hidden; font-size:20px; font-weight:600; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:2; } 
.press_card p { display:-webkit-box; margin-top:8px; overflow:hidden; color:rgba(34,34,34,.7); font-size:14px; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:2; } 
.text_more { display:flex; margin-top:40px; align-items:center; gap:9px; font-size:16px; font-weight:600; line-height:1.6; } 
.slider_pagination { display:none; } 
.slider_pagination .swiper-pagination-bullet { width:8px; height:8px; margin:0 4px; border-radius:50%; background:#ccc; opacity:1; } 
.slider_pagination .swiper-pagination-bullet-active { background:#986e13; }

/* video */
.main_video { padding:120px 0; overflow:hidden; background:linear-gradient(rgba(5,9,32,.9),rgba(5,9,32,.9)),url(/minjeonglaw/img/main_visual.webp) center/cover no-repeat; } 
.video_layout { position:relative; display:flex; border-top:1px solid #fff; border-bottom:1px solid #fff; } 
.video_layout::before, .video_layout::after { position:absolute; top:-1px; left:calc(50% - 50vw); width:100vw; height:1px; background:#fff; content:""; } 
.video_layout::after { top:auto; bottom:-1px; } 
.video_copy { width:23.61%; padding:80px 20px 140px 0; flex-shrink:0; } 
.video_copy .section_title { color:#fff; } 
.video_copy p { margin-top:16px; color:rgba(255,255,255,.7); font-size:16px; line-height:1.6; } 
.video_copy .gold_button { margin-top:70px; } 
.video_content { position:relative; min-width:0; padding:80px 0 80px 80px; border-left:1px solid #fff; flex:1; } 
.video_content .video_scrollbar.swiper-scrollbar { position:absolute; z-index:2; bottom:-10px; left:0; width:calc(100% + max(20px,calc((100vw - 1440px)/2))); height:20px; border-radius:0; background:transparent; } 
.video_scrollbar .swiper-scrollbar-drag { top:9px; height:3px; border-radius:0; background:#a98440; cursor:grab; } 
.video_controls { position:absolute; top:0; left:0; display:flex; margin-left:-1px; margin-top:-1px; } 
.video_controls button { display:flex; width:50px; height:50px; } 
.video_controls button:nth-of-type(1){margin-right:-1px;}
.icon_slide_prev, .icon_slide_next { width:50px; height:50px; background-position:center; background-size:contain; background-repeat:no-repeat; } 
.icon_slide_prev { background-image:url(/minjeonglaw/img/svg/icon_slide_prev.svg); transform:scaleX(-1); } 
.icon_slide_next { background-image:url(/minjeonglaw/img/svg/icon_slide_next.svg); } 
.video_slider { width:calc(100% + max(20px,calc((100vw - 1440px)/2))); } 
.video_slider:not(.swiper-initialized) { overflow-x:auto; } 
.video_slider:not(.swiper-initialized) .swiper-wrapper { gap:20px; } 
.video_card { width:100%; max-width:540px; aspect-ratio:540/333; overflow:hidden; } 
.video_card img { display:block; width:100%; height:100%; object-fit:cover; } 
.video_loading { display:flex; align-items:center; justify-content:center; } 
.video_loading p { padding:20px; color:rgba(255,255,255,.7); font-size:16px; line-height:1.6; } 
.video_controls .swiper-button-disabled { opacity:.45; } 

/* consultation and location */
.main_consultation { display:flex; align-items:stretch; } 
.location_column { position:relative; width:50%; overflow:hidden; } 
.location_details { position:relative; z-index:1; display:flex; width:calc(100% - 40px); max-width:480px; margin:0 auto; padding:60px 0; flex-direction:column; gap:40px; } 
.location_details h2 { display:flex; margin-bottom:12px; align-items:center; gap:9px; font-size:24px; line-height:1.4; } 
.location_details > div > a, .location_details p { display:flex; align-items:center; flex-wrap:wrap; gap:9px; font-size:16px; line-height:1.6; } 
.location_details strong { font-weight:700; } 
.location_column .section_watermark { bottom:0; } 
.consult_panel { width:50%; padding:100px max(20px,5.2083vw); background:#f5f5f5; } 
.consult_form { margin-top:50px; } 

/* hover */
@media (hover: hover) and (pointer:fine) { 
 .case_card a:hover h3, .press_card a:hover h3 { color:#986e13; } 
 @media (width > 1024px) { 
 .practice_card { position:relative; isolation:isolate; transition:color .2s; } 
 .practice_card::before { position:absolute; z-index:-1; inset:0; background:linear-gradient(rgba(5,9,32,.7),rgba(5,9,32,.7)),var(--practice_hover_image) center/cover no-repeat; opacity:0; content:""; pointer-events:none; transition:opacity .2s; } 
 .practice_number, .practice_description { transition:color .2s; } 
 #practice_divorce { --practice_hover_image:url(/minjeonglaw/img/sub/practice_divorce.webp); } 
 #practice_property { --practice_hover_image:url(/minjeonglaw/img/sub/practice_property.webp); } 
 #practice_compensation { --practice_hover_image:url(/minjeonglaw/img/sub/practice_compensation.webp); } 
 #practice_affair { --practice_hover_image:url(/minjeonglaw/img/sub/practice_affair.webp); } 
 #practice_custody { --practice_hover_image:url(/minjeonglaw/img/sub/practice_custody.webp); } 
 #practice_support { --practice_hover_image:url(/minjeonglaw/img/sub/practice_support.webp); } 
 #practice_annulment { --practice_hover_image:url(/minjeonglaw/img/sub/practice_annulment.webp); } 
 .practice_card:hover, .practice_card:hover .practice_number, .practice_card:hover .practice_description { color:#fff; } 
 .practice_card:hover::before { opacity:1; } 
 html.is_reduced_motion .practice_card, html.is_reduced_motion .practice_card::before, html.is_reduced_motion .practice_number, html.is_reduced_motion .practice_description { transition:none; } 
 } 
 } 

@media (max-width:1024px) { 
 .main_visual { padding:210px 0; aspect-ratio:auto; } 
 .main_visual_image { object-position: center; } 
 .visual_eyebrow { font-size:20px; } 
 .main_visual h1 { font-size:32px; } 
 .visual_line span { display:block; } 
 .visual_description { font-size:16px; } 
 .main_about { padding:60px 0; } 
 .about_layout { flex-direction:column; gap:30px; } 
 .about_copy { order:-1; width:100%; flex:none; } 
 .about_greeting { margin-top:20px; font-size:18px; } 
 .about_description { margin-top:20px; font-size:15px; } 
 .about_lower .gold_button { margin-top:30px; } 
 .about_office, .main_about .section_watermark { display:none; } 
 .about_portrait { width:100%; } 
 .main_practice { padding-bottom:60px; } 
 .practice_list { width:100%; overflow: hidden; } 
 .practice_band { margin-top:30px; } 
 .practice_brand, .practice_card { width:50%; border:0; } 
 .practice_card:nth-child(n+5) { border-top:0; } 
 .practice_brand, .practice_card:nth-child(5) { border-left:0; } 
 .practice_card:nth-child(2n) { border-left:1px solid #222; } 
 .practice_card:nth-child(n+3) { border-top:1px solid #222; } 
 .practice_card:nth-child(2n+1) { position:relative; } 
 .practice_card:nth-child(2n+1)::before { position:absolute; top:-1px; left:-20px; width:calc(200% + 40px); height:1px; background:#222; content:""; } 
 .practice_brand, .practice_card { min-height:290px; aspect-ratio:auto; } 
 .practice_logo { width:80%; } 
 .practice_card { padding:10px 15px 20px; } 
 .practice_number { font-size:28px; } 
 .practice_card h3 { width:calc(100% + 30px); font-size:20px; overflow-wrap:anywhere; } 
 .practice_description { margin-top:8px; font-size:15px; } 
 .practice_card a { margin-top:auto; padding-top:15px; font-size:15px; } 
 .main_cases, .main_press { padding:60px 0; } 
 .main_press { padding-bottom:115px; } 
 .section_heading { display:block; } 
 .section_heading p { margin-top:12px; font-size:15px; } 
 .section_more { display:none; } 
 .section_more_mobile { display:flex; width:max-content; margin:30px auto 0; } 
 .case_list { margin-top:30px; flex-direction:column; gap:30px; } 
 .case_card { width:100%; } 
 .case_card h3 { font-size:18px; } 
 .press_slider { margin-top:30px; } 
 .press_slider:not(.swiper-initialized) .press_card { width:100%; } 
 .press_card a { padding:20px; } 
 .press_card figure { aspect-ratio:280/170; } 
 .press_card h3 { font-size:18px; } 
 .press_card .text_more { margin-top:30px; font-size:15px; } 
 .slider_pagination { display:flex; margin-top:20px; align-items:center; justify-content:center; } 
 .main_video { padding:60px 0; } 
 .video_layout { flex-direction:column; } 
 .video_copy { width:100%; padding:40px 0 30px; } 
 .video_copy p { margin-top:12px; font-size:15px; } 
 .video_copy .gold_button { margin-top:30px; } 
 .video_content { width:100%; padding:30px 0 40px; border-top:1px solid #fff; border-left:0; flex:none; } 
 .video_content::before { position:absolute; top:-1px; left:calc(50% - 50vw); width:100vw; height:1px; background:#fff; content:""; } 
 .video_content .video_scrollbar, .video_controls { display:none; } 
 .video_slider { width:100%; } 
 .video_card { max-width:none; } 
 .main_consultation { flex-direction:column; } 
 .consult_panel { order:-1; width:100%; padding:60px 20px; } 
 .consult_form { margin-top:30px; } 
 .location_column { width:100%; } 
 .location_details { max-width:none; padding:20px 0 60px; gap:20px; } 
 .location_details h2 { margin-bottom:8px; font-size:20px; } 
 .location_details > div > a, .location_details p { font-size:15px; } 
 .location_column .section_watermark { font-size:40px; bottom:0; } 
 } 
