@charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */ 

/* 공통 */
.sub-sec {margin-bottom:var(--space-120);}
.sub-sec:last-child {margin-bottom:0;}

.doc-tit {text-align:center; margin-bottom:var(--space-50);}
.doc-tit .en {margin-bottom:var(--space-20); font-size:var(--font-size-16); font-weight:600; line-height:1.3; letter-spacing:-0.03em; color:var(--color-primary);}
.doc-tit h3 {font-size:var(--font-size-32); line-height:1.3em; color:#2c2c2c;}

.subtitle {margin-bottom:var(--space-16); font-size:var(--font-size-22); font-weight:600; line-height:1.3; letter-spacing:-0.03em; color:#2c2c2c;}

.table-style table {width:100%; border-collapse:collapse; border-spacing:0px; font-size:var(--font-size-18); line-height:1.66em; letter-spacing:-.03em;}
.table-style table th {padding:var(--space-15); border:1px solid #ddd; background: rgba(221, 35, 25, 0.04);font-weight:600; color:#2c2c2c;}
.table-style table td {padding:var(--space-15); border:1px solid #ddd; color:#454545; text-align:center;}
.table-style table td strong {font-weight: 600;}
.table-style tr th:first-child,
.table-style tr td:first-child {border-left:0;}
.table-style tr th:last-child,
.table-style tr td:last-child {border-right:0;}

/* 인사말 */
.greetings .image {margin-bottom:var(--space-50); border-radius:var(--radius-40); overflow:hidden;}
.greetings .content {background:url('/images/sub/logo-text.png') 100% 0 no-repeat; background-size:auto 18px;}
.greetings .content h3 {margin-bottom:var(--space-36); font-size:var(--font-size-34); line-height:1.35em; letter-spacing:-0.03em; color:#2c2c2c;}
.greetings .content p {max-width:1100px; font-size:var(--font-size-18); line-height:1.5em; letter-spacing:-0.03em; color:#454545;}
.greetings .content .sign {margin-top:var(--space-36); font-size:var(--font-size-22); font-weight:600;}

/* 회사연혁 */
.history-top {border-radius:var(--radius-40); overflow:hidden;}
.history {position:relative; display:flex; flex-direction:column; gap:var(--space-100); padding-top:var(--space-100);}
.history:before {content:''; position:absolute; left:50%; top:0; bottom:16px; width:1px; background:#ddd;}
.history:after {content:''; position:absolute; left:50%; top:0; -webkit-transform:translate(-50%,-50%); transform:translate(-50%,-50%); width:32px; aspect-ratio:1/1; background:url('/images/sub/history-point.svg') no-repeat center center / contain;}
.history .history-list {list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:var(--space-80);}
.history .history-item {position:relative; display:flex; align-items:flex-start; min-height:32px;}
.history .item {position:relative; display:flex;}
.history .item:before {content:''; position:absolute; left:0; top:0; -webkit-transform:translate(-50%,0); transform:translate(-50%,0); width:32px; aspect-ratio:1/1; background:url('/images/sub/history-point.svg') no-repeat center center / contain;}
.history .item .year {width:clamp(90px, calc(120 / var(--inner) * 100vw), 120px); flex-shrink:0; font-size:var(--font-size-32); font-weight:700; line-height:1; letter-spacing:-0.03em; color:var(--color-primary);}
.history .item .list {display:flex; flex-direction:column; gap:var(--space-20); padding-top:.12em; font-size:var(--font-size-18); line-height:1.5; letter-spacing:-0.03em;}
.history .item .list li {display:flex; align-items:center;}
.history .item .list li .month {flex:0 0 87px; flex-shrink:0; font-weight:600; color:#2c2c2c;}
.history .item .list li .text {color:#454545;}
.history .item:nth-child(odd) {flex-direction:row; margin-left:50%; padding-left:clamp(60px, calc(75 / var(--inner) * 100vw), 75px);}
.history .item:nth-child(even) {flex-direction:row-reverse; margin-right:50%; padding-right:clamp(60px, calc(75 / var(--inner) * 100vw), 75px); text-align:right;}
.history .item:nth-child(even)::before {left:auto; right:0; -webkit-transform:translate(50%,0); transform:translate(50%,0);}
.history .item:nth-child(even) .list li {flex-direction:row-reverse;}

/* 찾아오시는 길 */
.directions {margin-bottom:var(--space-110); font-size:var(--font-size-18); line-height:1.5; letter-spacing:-0.03em;}
.directions:last-child {margin-bottom:0;}
.directions h3 {margin-bottom:var(--space-16); font-size:var(--font-size-30); font-weight:600; line-height:1.2; letter-spacing:-0.03em; color:#2c2c2c;}
.directions h3 img {vertical-align:middle; margin:-.2em 6px 0 0;}
.directions .wrap {display:flex; align-items:center; padding:var(--space-40) 0; gap:var(--space-80) var(--space-80); border-top:2px solid #2c2c2c; border-bottom:2px solid #ddd;}
.directions .cnt-area {flex:1; min-width:0;}
.directions .info {margin:0; display:flex; flex-direction:column; gap:var(--space-20);}
.directions .info dl {display:flex;}
.directions .info dt {flex:0 0 clamp(60px, calc(110 / var(--inner) * 100vw), 110px); flex-shrink:0; font-weight:600; color:#2c2c2c;}
.directions .info dd {flex:1; min-width:0; color:#454545;}
.directions .map-area {width:63%;}
.directions .root_daum_roughmap {width:100% !important;}
.directions .root_daum_roughmap .wrap_map {height:clamp(240px, calc(400 / var(--inner) * 100vw), 400px) !important;}
.directions .root_daum_roughmap .cont {display:none !important;}
.directions .info-2 {border-top:2px solid #2c2c2c; }
.directions .info-2 .row {display:flex; align-items:center; flex-wrap:wrap; gap:var(--space-20) var(--space-30); padding:var(--space-24) 0; border-bottom:1px solid #ddd;}
.directions .info-2 .row:last-child {border-bottom:none;}
.directions .info-2 .row dl {display:flex; gap:var(--space-40);}
.directions .info-2 .row dt {flex-shrink:0; font-weight:600; color:#2c2c2c;}
.directions .info-2 .row dd {color:#454545;}
.directions .info-2 .row .vline {width:1px; height:13px; background:#ddd;}

/* 사업분야 */
.biz-philosophy {display:flex; width:100%;}
.biz-philosophy .item {position:relative; flex:1; height:clamp(220px, calc(446 / var(--inner) * 100vw), 446px); background-position:50% 50%; background-size:cover; background-repeat:no-repeat; overflow:hidden; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:var(--space-30); color:#fff; text-align:center;}
.biz-philosophy .item .num {margin-bottom:var(--space-20); font-size:var(--font-size-18); font-weight:400; line-height:1.22; letter-spacing:-0.03em;}
.biz-philosophy .item .tit {font-size:var(--font-size-22); font-weight:600; line-height:1.45; letter-spacing:-0.03em;}
.biz-philosophy .item:nth-child(1) {background-image:url('/images/sub/biz1-img1.jpg');}
.biz-philosophy .item:nth-child(2) {background-image:url('/images/sub/biz1-img2.jpg');}
.biz-philosophy .item:nth-child(3) {background-image:url('/images/sub/biz1-img3.jpg');}

.biz-advantages {display:flex; flex-wrap:wrap; justify-content:center; margin:calc(var(--space-20) * -1);}
.biz-advantages .item {width:33.33333333%; padding:var(--space-20);}
.biz-advantages .item .box {display:flex; align-items:center; gap:var(--space-30); width:100%; height:100%; border:1px solid #ddd; border-radius:var(--radius-16); padding:var(--space-40);}
.biz-advantages .item .icon {display:block; width:40px; height:40px;}
.biz-advantages .item .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.biz-advantages .item .text {font-size:var(--font-size-22); font-weight:600; line-height:1.5; letter-spacing:-0.03em; color:#454545;}
.biz-advantages .item .text h4 {font-size:var(--font-size-22); font-weight:600; line-height:1.5; letter-spacing:-0.03em;}
.biz-advantages .item .text h4 + p {margin-top:var(--space-10); font-size:var(--font-size-18); font-weight:400; line-height:1.33; letter-spacing:-0.03em;}

.biz-policy {padding:var(--space-100) 0; background:rgba(221, 35, 25, 0.04);}
.biz-policy .items {display:flex; flex-wrap:wrap; justify-content:center; margin:calc(var(--space-10) * -1);}
.biz-policy .item {width:20%; padding:var(--space-10);}
.biz-policy .item .box {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); width:100%; height:100%; background:#fff; border-radius:var(--radius-16); padding:var(--space-30); text-align:center;}
.biz-policy .item .num {font-size:var(--font-size-18); line-height:1.4; letter-spacing:-0.01em; color:var(--color-primary);}
.biz-policy .item .icon {display:block; width:40px; height:40px;}
.biz-policy .item .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.biz-policy .item .text {font-size:var(--font-size-18); line-height:1.44; letter-spacing:-0.03em; color:#454545;}

.biz-service {display:flex; flex-direction:column; align-items:center; justify-content:center; height:350px; gap:var(--space-40); border-radius:var(--radius-24); padding:var(--space-40); background:url('/images/sub/biz1-img4.jpg') 50% 50% / cover no-repeat; color:#fff; font-size:var(--font-size-22); line-height:1.45; letter-spacing:-0.03em; text-align:center;}
.biz-service strong {font-weight:600;}
.biz-service .line {width:100px; height:1px; background:#fff;}

.biz-types {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-60);}
.biz-types .item {display:flex; flex-direction:column; text-align:center;}
.biz-types .item .title {flex-shrink:0; padding:var(--space-20) var(--space-30); border-radius:var(--radius-16) var(--radius-16) 0 0;  background:rgba(221, 35, 25, 0.08);}
.biz-types .item .title h4 {font-size:var(--font-size-22); font-weight:600; line-height:1.45; letter-spacing:-0.03em; color:#2c2c2c;}
.biz-types .item .text {flex:1; min-height:0; padding:var(--space-60) var(--space-30); display:flex; flex-direction:column; justify-content:center; align-items:center; border:1px solid #ddd; border-top:0; border-radius:0 0 var(--radius-16) var(--radius-16); font-size:var(--font-size-18); line-height:1.55; letter-spacing:-0.03em; color:#454545;}

.insurance {padding:var(--space-100) 0; background:url('/images/sub/insurance-bg.jpg') 50% 50% / cover no-repeat;}
.insurance .wrap {display:flex; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:var(--space-60); width:100%;}
.insurance .title h4 {font-size:var(--font-size-32); font-weight:400; line-height:1.5em; color:#2c2c2c;}
.insurance .title h4 strong {font-weight:600;}
.insurance .content {width:100%; max-width:720px; display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-20);}
.insurance .content .item {border-radius:var(--radius-16); padding:var(--space-50) var(--space-30); text-align:center;}
.insurance .content .item .icon {display:block; width:64px; aspect-ratio:1/1; margin:0 auto var(--space-30) auto;}
.insurance .content .item .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.insurance .content .item .tit {margin-bottom:var(--space-20); font-size:var(--font-size-22); font-weight:600; line-height:1.45; letter-spacing:-0.03em;}
.insurance .content .item .txt {font-size:var(--font-size-18); line-height:1.33; letter-spacing:-0.03em;}
.insurance .content .item:nth-child(1) {background:#fff;}
.insurance .content .item:nth-child(1) .tit {color:#2c2c2c;}
.insurance .content .item:nth-child(1) .txt {color:#454545;}
.insurance .content .item:nth-child(2) {background: rgba(221, 35, 25, 0.60); color:#fff;}

.remodeling {padding:var(--space-50); text-align:center; border-radius:var(--radius-24); background:url('/images/sub/remodeling.jpg') 50% 50% / cover no-repeat;}
.remodeling .inner {width:80%; max-width:790px; margin:0 auto; padding:var(--space-40); border-radius:var(--radius-24); background:#FEF6F6;}
.remodeling .icon {margin-bottom:var(--space-20);}
.remodeling h3 {margin-bottom:var(--space-20); font-size:var(--font-size-22); font-weight:600; line-height:1.4; letter-spacing:-0.03em; color:#2c2c2c;}
.remodeling p {font-size:var(--font-size-18); line-height:1.44; letter-spacing:-0.03em; color:#454545;}

/* 제품소개 */
.prd-list {margin-bottom:var(--space-80);}
.prd-list ul {display:flex; flex-wrap:wrap; justify-content:center; gap:var(--space-30);}
.prd-list ul li {margin:0;}
.prd-list ul li a {display:block; padding:0 0 var(--space-18); font-size:var(--font-size-18); line-height:1.5; letter-spacing:-0.03em; color:#888; text-decoration:none;}
.prd-list ul li a:hover {color:var(--color-primary);}
.prd-list ul li.active a {border-bottom:2px solid var(--color-primary); font-weight:600; color:var(--color-primary);}

.prd-wrap {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-60);}
.prd-wrap .col {display:flex; flex-direction:column; justify-content:center;}
.prd-wrap .image {width:100%; aspect-ratio:670/550; overflow:hidden;}
.prd-wrap .image img {width:100%; height:100%; object-fit:cover;}

.prd-wrap .cat {margin-bottom:var(--space-10); font-size:var(--font-size-18); line-height:1.3; letter-spacing:-0.03em; color:#454545;}
.prd-wrap .tit {margin-bottom:var(--space-30); font-size:var(--font-size-32); font-weight:600; line-height:1.3; letter-spacing:-0.03em; color:#2c2c2c;}
.prd-wrap .spec {width:100%; border-collapse:collapse; border-spacing:0px; border-top:2px solid var(--color-primary); font-size:var(--font-size-18); line-height:1.5; letter-spacing:-0.03em; color:#454545;}
.prd-wrap .spec th {padding:var(--space-20); border:1px solid #ddd; background:#FEF6F6; text-align:center; font-weight:400;}
.prd-wrap .spec td {padding:var(--space-20); border:1px solid #ddd; text-align:center;}
.prd-wrap .spec tr th:first-child,
.prd-wrap .spec tr td:first-child {border-left:0;}
.prd-wrap .spec tr th:last-child,
.prd-wrap .spec tr td:last-child {border-right:0;}

/* 브랜드 스토리 */
.brand {overflow: hidden;}
.brand .story {padding-bottom:var(--space-120);}
.brand .story .contain {width:100%; display:flex; gap:var(--space-120);}
.brand .story .img {flex-shrink:0; width: 40.715%;}
.brand .story .img img {display:block; width:100%; aspect-ratio:570 / 620; object-fit:cover; overflow:hidden; border-radius:96px 0 96px 0;}
.brand .story .txt {display:flex; flex:1; flex-direction:column; gap:var(--space-36); min-width:0; max-width:712px; line-height:1.875; letter-spacing:-0.02em;}
.brand .story .lead {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-28); font-weight:400; color:#242424; line-height: 1.28; letter-spacing:-0.03em;}
.brand .story .lead .point {color:var(--color-primary);}
.brand .story .body {display:flex; flex-direction:column; gap:var(--space-24);}
.brand .story .sign {display:flex; flex-direction:row; align-items:center; justify-content:flex-end; gap:var(--space-15); width:100%; white-space:nowrap;}
.brand .story .sign .role {font-size:var(--font-size-20); font-weight:600; letter-spacing:-0.02em;}
.brand .story .sign .name {font-family:'NanumBrushScript','Pretendard',sans-serif; font-size:var(--font-size-36); font-weight:400; color:#000;}

.brand .values {padding:var(--space-120) 0; background: url('/images/sub/brand-core-bg.jpg') no-repeat center / cover;}
.brand .values .cont-tit {text-align:center; margin-bottom:var(--space-80);}
.brand .values .cont-tit .en {margin-bottom: var(--space-20); line-height:1.375; letter-spacing:0.3em; color:var(--color-primary);}
.brand .values .cont-tit h3 {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-36); font-weight:400; line-height:1.5; letter-spacing:-0.03em; color:#242424;}
.brand .values .circles {display:flex; align-items:center; justify-content:center;}
.brand .values .circle {position:relative; flex-shrink:0; width:30%; aspect-ratio: 1; margin-right:-2.4%; overflow:hidden; border-radius:50%; display:flex; flex-direction:column; align-items:center; justify-content:center;}
.brand .values .circle:last-child {margin-right:0;}
.brand .values .circle .en {font-size:var(--font-size-18); line-height:1.67; letter-spacing:-0.03em; margin-top: var(--space-20); margin-bottom: 8px;}
.brand .values .circle .en .soft {font-weight:400; color:rgba(255,255,255,0.8);}
.brand .values .circle .en .strong {font-weight:700; color: #fff;}
.brand .values .circle .tit {font-size:var(--font-size-32); font-weight:600; line-height:1.19; letter-spacing:-0.02em; color:#fff; margin-bottom: 24px;}
.brand .values .circle .ico {display:flex; align-items:center; justify-content:center; width:56px; aspect-ratio: 1;}
.brand .values .circle .ico img {display:block; width:100%; height:100%; object-fit:contain;}
.brand .values .c1 {background: url('/images/sub/brand-integrity.jpg') no-repeat center / cover;}
.brand .values .c2 {background: url('/images/sub/brand-together.jpg') no-repeat center / cover;}
.brand .values .c3 {background: url('/images/sub/brand-innovation.jpg') no-repeat center / cover;}

/* 회사 브랜드 관계도 */
.relation {overflow: hidden;}
.relation .sec1 {background: url('/images/sub/brand-relation-bg.svg') no-repeat bottom center / contain; padding-bottom: var(--space-120);}
.relation .contain {display:flex; align-items:center; justify-content:space-between; gap:var(--space-80);}
.relation .img {flex-shrink:0; width: 43.5%; max-width: 608px; min-width: 300px; aspect-ratio: 608 / 733;}
.relation .img img {display:block; width:100%; height: 100%; object-fit: contain;}
.relation .txt {display:flex; flex-shrink:0; flex-direction:column; gap:var(--space-32); width: 42.858%; min-width:0;}
.relation .head {display:flex; flex-direction:column; gap:var(--space-16);}
.relation .head .en {font-size:var(--font-size-14); font-weight:400; line-height:1.43; letter-spacing:0.3em; color:var(--color-primary);}
.relation .head .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-28); font-weight:400; line-height:1.29; letter-spacing:-0.02em; color:#242424;}
.relation .body {display:flex; flex-direction:column; gap:var(--space-24); line-height:1.875; letter-spacing:-0.02em;}
.relation .body strong {font-weight:600;}

/* 푸드테크 */
.foodtech .intro {padding-bottom:var(--space-120);}
.foodtech .intro .contain {display:flex; align-items:center; gap:var(--space-80);}
.foodtech .intro .info {display:flex; flex:1; flex-direction:column; gap:var(--space-48); min-width:0;}
.foodtech .intro .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-28); font-weight: 400; line-height:1.29; letter-spacing:-0.03em; color:#242424;}
.foodtech .intro .tit .point {color:var(--color-primary);}
.foodtech .intro .task {display:flex; gap:8px;}
.foodtech .intro .item {display:flex; flex:1; flex-direction:column; gap:var(--space-10); min-width:0; padding:var(--space-24); border:1px solid #eee; border-radius:var(--radius-12); background:#fafafa; padding-right: 8px;}
.foodtech .intro .item .num {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-20); line-height:1.7; letter-spacing:-0.03em; color:var(--color-primary);}
.foodtech .intro .item .txt {font-size:var(--font-size-18); line-height:1.66; letter-spacing:-0.03em; color:#454545;}
.foodtech .intro .video {position:relative; flex-shrink:0; display:flex; align-items:center; justify-content:center; width:47.14%; aspect-ratio:660/825; overflow:hidden; border-radius:var(--radius-20);}
.foodtech .intro .video img {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.foodtech .system {padding:var(--space-120) 0; background:#fafafa;}
.foodtech .system .head {margin-bottom:var(--space-60); text-align:center;}
.foodtech .system .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-28); font-weight: 400; line-height:1.29; letter-spacing:-0.03em; color:#242424;}
.foodtech .system .gallery {display:grid; grid-template-columns:repeat(2, 1fr); overflow:hidden; border:1px solid #eee; border-radius:var(--radius-20); background:#fff;}
.foodtech .system .img {position:relative; aspect-ratio:700/420; overflow:hidden;}
.foodtech .system .img:nth-child(odd) {border-right:1px solid #eee;}
.foodtech .system .img:nth-child(1), .foodtech .system .img:nth-child(2) {border-bottom:1px solid #eee;}
.foodtech .system .img img {width:100%; height:100%; object-fit:cover;}
.foodtech .system .img:not(:first-child) img {object-fit:contain;}

/* 협력사 */
.partners .top {padding-bottom: var(--space-24);}
.partners .top .box {display: flex; align-items: center; justify-content: center; text-align: center; padding: var(--space-70); border: 1px solid #ddd; background: #fafafa; border-radius: var(--radius-22); position: relative;}
.partners .top .box p {color: #242424; font-size: var(--font-size-24); line-height: 1.58; letter-spacing: -0.03em;}
.partners .top .box p .point {color: var(--color-primary); font-size: var(--font-size-30); font-weight: 400; font-family: 'Jalnan2','Pretendard',sans-serif;}
.partners .top .box .img {position: absolute; right: var(--space-24); bottom: var(--space-24); width: 129px; aspect-ratio: 129 / 20;}
.partners .top .box .img img {display:block; width:100%; height:100%; object-fit:contain;}
.partners .list {display:grid; grid-template-columns:repeat(3, 1fr); grid-auto-rows: 1fr; gap:var(--space-24);}
.partners .list .item {position: relative; border-radius: var(--radius-22); overflow: hidden; padding: var(--space-20); display: flex; align-items: center; justify-content: center; border: 1px solid #ddd;}
.partners .list .item img {max-height: 100%; max-width: 80%;}

/* 성장 파트너십 마케팅 */
.growth .cont-tit {text-align:center; margin-bottom:var(--space-80);}
.growth .cont-tit .en {margin-bottom: var(--space-20); line-height:1.375; letter-spacing:0.3em; color:var(--color-primary);}
.growth .cont-tit h3 {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-36); font-weight:400; line-height:1.5; letter-spacing:-0.03em; color:#242424;}
.growth .cont-tit h3 span {color:var(--color-primary);}
.growth .cont {display:flex; flex-direction:column; gap:var(--space-80); background: url('/images/sub/growth-bg.svg') no-repeat center / contain;}
.growth .block {display:flex; align-items:center; gap:var(--space-120); width:100%;}
.growth .block.left {flex-direction:row;}
.growth .block.right {flex-direction:row-reverse;}
.growth .block .img {flex-shrink:0; width: 45.715%; overflow: hidden; border-radius:var(--radius-20);}
.growth .block .img img {display:block; width:100%; height:100%; object-fit:cover;}
.growth .block .txt-wrap {display:flex; flex-shrink:0; flex-direction:column; gap:var(--space-32); width:42.858%; min-width:0;}
.growth .block .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-28); font-weight:400; line-height:1.29; letter-spacing:-0.03em; color:#242424;}
.growth .block .txt {display:flex; flex-direction:column; gap:var(--space-24); line-height:1.875; letter-spacing:-0.02em;}
.growth .block .txt strong {font-weight:600;}

/* 선택의 이유 */
.reason {overflow: hidden;}
.reason .item {display:flex; align-items:center; gap:var(--space-120); width:100%; padding: var(--space-80) 0; border-bottom: 1px dashed #ddd;}
.reason .item:first-child {padding-top: 0;}
.reason .item:last-child {padding-bottom: 0; border-bottom: 0;}
.reason .item.left {flex-direction:row;}
.reason .item.right {flex-direction:row-reverse;}
.reason .item .img {flex-shrink:0; width: 45.715%; aspect-ratio:1/1; overflow: hidden; border-radius:var(--radius-20);}
.reason .item .img img {display:block; width:100%; height:100%; object-fit:cover;}
.reason .item .txt-wrap {display:flex; flex:1; flex-direction:column; min-width:0;}
.reason .item .num {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-32); font-weight: 400; line-height:1.25; letter-spacing:-0.03em; color:var(--color-primary); margin-bottom: var(--space-16);}
.reason .item .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-32); font-weight: 400; line-height:1.25; letter-spacing:-0.03em; color:#242424; margin-bottom: var(--space-32);}
.reason .item .lead {font-size:var(--font-size-24); font-weight:600; line-height:1.33; letter-spacing:-0.03em; color:#454545; margin-bottom: var(--space-16);}
.reason .item .txt {font-size:var(--font-size-20); line-height:1.5; letter-spacing:-0.03em; color:#454545; margin-bottom: var(--space-30);}
.reason .item .point {color:var(--color-primary);}
.reason .item .detail {display: grid; grid-template-columns: 1fr; gap:var(--space-8); color:#242424;}
.reason .item .detail .box {display:flex; flex-direction:column; gap:var(--space-8); padding: var(--space-16) var(--space-24); border-radius: var(--radius-12); background: #fafafa; font-size: var(--font-size-18); line-height: 1.66;}
.reason .item .detail .box.plain {gap: var(--space-26);}
.reason .item .box strong {font-weight:600;}
.reason .item .dots {display:flex; flex-direction:column; gap:var(--space-8);}
.reason .item .dots li {position:relative; padding-left:14px;}
.reason .item .dots li:before {content:''; position:absolute; left:0; top:0.65em; width:4px; height:4px; border-radius:50%; background: #ccc;}
.reason .item .dots.line {gap:0;}
.reason .item .dots.line li {padding:var(--space-16) 0 var(--space-16) 14px; border-bottom:1px solid #eee; font-size:var(--font-size-20); font-weight:500; color:#242424;}
.reason .item .dots.line li:first-child {padding-top:0;}
.reason .item .dots.line li:last-child {padding-bottom:0; border-bottom:0;}
.reason .item .dots.line li:before {top:calc(var(--space-16) + 0.65em);}
.reason .item .dots.line li:first-child:before {top:0.65em;}

/* 상담 예약 접수 */
.customer-overview {display:flex; gap:var(--space-24); padding:var(--space-24); background:#fafafa; border: 1px solid #ddd; margin-bottom: var(--space-80);}
.customer-overview .item {width: calc(50% - (var(--space-24) / 2)); border: 1px solid #ddd; background: #fff; padding: var(--space-24);}
.customer-overview .item .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-20); font-weight:400; line-height:1.5; letter-spacing:-0.03em; color:#242424; margin-bottom: var(--space-24);}
.customer-overview .item .list {display:flex; flex-direction:column; gap:var(--space-8); color: #242424; font-size:var(--font-size-16); line-height:1.87; letter-spacing:-0.03em;}
.customer-overview .item .list li {position: relative; padding-left: 24px; }
.customer-overview .item .list li .icon {position: absolute; left: 0; top: 0.35em; width: 16px; aspect-ratio: 1/1; user-select: none;}
.customer-overview .item .list li .icon img {display:block; width:100%; height:100%; object-fit:contain;}

.process {display:flex; flex-direction:column; align-items:center; gap:var(--space-40); margin-top:var(--space-80); padding:var(--space-24) var(--space-24) var(--space-32); border:1px solid #ddd; background:#fafafa;}
.process .head {display:flex; flex-direction:column; align-items:center; gap:var(--space-10); text-align:center;}
.process .head .tit {font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-20); font-weight: 400; line-height:1.7; letter-spacing:-0.03em; color:#242424;}
.process .head .desc {font-size:var(--font-size-14); line-height:1.43; letter-spacing:-0.03em; color:#454545;}
.process .steps {display:flex; align-items:center; gap:var(--space-16); width:100%;}
.process .step {position:relative; flex:1; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:var(--space-10); aspect-ratio:1/1; padding:var(--space-20); border:1px solid #eee; border-radius:50%; background:#fff; text-align:center;}
.process .step:not(:last-child):after {content:''; position:absolute; top:50%; right:calc(var(--space-16) * -1); width:var(--space-16); height:1px; background:#eee;}
.process .step .num {font-size:var(--font-size-14); font-weight:600; line-height:1.43; letter-spacing:-0.03em; color:var(--color-primary);}
.process .step .txt {display:flex; flex-direction:column; gap:4px;}
.process .step .tit {font-size:var(--font-size-16); font-weight:600; line-height:1.5; letter-spacing:-0.03em; color:#242424;}
.process .step .sub {font-size:var(--font-size-14); line-height:1.43; letter-spacing:-0.03em; color:#878787;}
.process .note {font-size:var(--font-size-16); font-weight:500; line-height:1.5; letter-spacing:-0.03em; color:#242424; display: flex;}
.process .note .icon {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; width:18px; height: 18px; margin-right: 8px; margin-top: .15em;}
.process .note .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.process .note .txt {display: inline-block;}
.process .note .point {color:var(--color-primary);}

.fancybox-skin {background: transparent !important;}
.process-pop {display:flex; flex-direction:column; position:relative; gap:var(--space-30); width:min(480px, calc(100vw - 32px)); padding:var(--space-48) 0; border-radius:var(--radius-16); background:#fff; align-items:center;}
.process-pop .head {display:flex; flex-direction:column; gap:var(--space-16); align-items:center; text-align:center;}
.process-pop .head .tit {color:#242424; font-family:'Jalnan2','Pretendard',sans-serif; font-size:var(--font-size-20); font-weight: 400; line-height:1.7;}
.process-pop .head .desc {font-size:var(--font-size-14); line-height:1.43;}
.process-pop .steps {display:flex; flex-direction:column; gap:var(--space-16); width:308px; max-width:100%;}
.process-pop .step {display:flex; gap:var(--space-24); align-items:center;}
.process-pop .num {display:flex; position:relative; flex-shrink:0; width:40px; height:40px; border:1px solid var(--color-primary); border-radius:50%; color:var(--color-primary); font-size:var(--font-size-14); font-weight:600; align-items:center; justify-content:center; background: #fff;}
.process-pop .step:not(:last-child) .num:after {content:''; position:absolute; top:100%; left:50%; width:1px; height:100%; margin-left:-0.5px; background:var(--color-primary);}
.process-pop .txt {display:flex; flex:1; min-width:0; height:40px; padding:0 var(--space-16); border:1px solid #eee; border-radius:var(--radius-8); color:#242424; font-size:var(--font-size-16); align-items:center; white-space:nowrap;}
.process-pop .note {display:flex; flex-direction:column; gap:var(--space-10); width:308px; max-width:100%; padding:var(--space-20) 0 var(--space-24); border-radius:var(--radius-8); background:#fef7f5; align-items:center; text-align:center;}
.process-pop .note .icon {display:flex; width:18px; height:18px; align-items:center; justify-content:center;}
.process-pop .note .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.process-pop .note .info {color:#242424; font-size:var(--font-size-16); font-weight:500; line-height:1.5;}
.process-pop .note .point {color:var(--color-primary);}
.process-pop .close {position:absolute; top:var(--space-24); right:var(--space-24); width:16px; height:16px; border:0; background:none;}
.process-pop .close:before, .process-pop .close:after {content:''; position:absolute; top:50%; left:0; width:100%; height:1.5px; background:#878787;}
.process-pop .close:before {transform:rotate(45deg);}
.process-pop .close:after {transform:rotate(-45deg);}