@charset "utf-8";

/* ===== 히어로(회사 개요) ===== */
.company .flex-st {display:flex; gap:100px;}
.company .img-area {width:42%;}
.company .img-area img {width:100%; max-width:600px; border-radius:14px;}
.company .txt-area {width:calc(58% - 100px);}
.company .txt-area .tit-txt {line-height:1.4;}
.company .txt-area .tit-txt span {display:block; font-size:24px; color:#000;}
.company .txt-area .tit-txt p {font-size:34px; font-weight:700; color:#CA5400;}
.company .txt-area .basic-txt {margin-top:28px; line-height:1.9; color:#444;}
.company .txt-area .basic-txt p+p {margin-top:20px;}
.company .txt-area .basic-txt p b {font-weight:600; color:#CA5400;}

/* ===== 섹션 공통 ===== */
.company .company-sec {margin-top:110px;}
.company .c-head {margin-bottom:32px;}
.company .c-eyebrow {display:block; font-size:12px; letter-spacing:.2em; text-transform:uppercase; color:#CA5400; font-weight:700; margin-bottom:12px;}
.company .c-tit {font-size:30px; font-weight:700; color:#141414; line-height:1.35;}
.company .c-lead {margin-top:16px; font-size:16px; color:#666; line-height:1.75; max-width:780px;}

/* ===== 서술형 산문 ===== */
.company .c-prose p {font-size:16px; line-height:1.95; color:#3f3f3f;}
.company .c-prose p+p {margin-top:22px;}
.company .c-prose b {color:#CA5400; font-weight:600;}
.company .c-prose .pull {margin:30px 0; padding:22px 28px; background:#faf5ec; border-left:3px solid #CA5400; border-radius:0 10px 10px 0; font-size:18px; font-weight:600; color:#3a2c14; line-height:1.6;}

/* ===== 팩트 카드 ===== */
.company .fact-grid {display:grid; grid-template-columns:repeat(auto-fit,minmax(184px,1fr)); gap:14px; list-style:none; padding:0; margin:0;}
.company .fact-grid li {background:#fafafa; border:1px solid #eee; border-radius:14px; padding:24px 22px; transition:transform .15s, box-shadow .15s;}
.company .fact-grid li:hover {transform:translateY(-3px); box-shadow:0 8px 22px rgba(0,0,0,.05);}
.company .fact-grid .k {display:block; font-size:12px; letter-spacing:.04em; color:#CA5400; font-weight:700; margin-bottom:12px;}
.company .fact-grid .v {display:block; font-size:16px; color:#222; font-weight:600; line-height:1.55;}

/* ===== 숫자 지표 ===== */
.company .stat-band {display:grid; grid-template-columns:repeat(4,1fr); gap:16px; list-style:none; padding:0; margin:0;}
.company .stat-band li {text-align:center; padding:34px 16px; border:1px solid #eee; border-radius:16px; background:#fafafa;}
.company .stat-band .num {display:block; font-size:42px; font-weight:800; color:#CA5400; line-height:1;}
.company .stat-band .num small {font-size:18px; font-weight:700; margin-left:2px;}
.company .stat-band .lab {display:block; margin-top:14px; font-size:14.5px; color:#555; line-height:1.55;}

/* ===== 신뢰/후기 ===== */
.company .trust {display:flex; gap:26px; align-items:center; background:#faf5ec; border:1px solid #ecdcc0; border-radius:16px; padding:34px 36px;}
.company .trust .t-txt {flex:1;}
.company .trust .t-txt p {font-size:16px; color:#4a3c22; line-height:1.85; margin:0;}
.company .trust .t-txt b {color:#CA5400;}
.company .trust .btn {flex:none;}

/* ===== 차별점 카드 ===== */
.company .feat-list {display:grid; grid-template-columns:repeat(2,1fr); gap:16px; list-style:none; padding:0; margin:0;}
.company .feat-list li {border:1px solid #ececec; border-radius:16px; padding:30px 30px 32px; background:#fff;}
.company .feat-list .n {display:inline-block; font-size:13px; font-weight:800; color:#CA5400; letter-spacing:.08em; margin-bottom:14px;}
.company .feat-list h3 {font-size:19px; color:#161616; font-weight:700; line-height:1.45; margin-bottom:12px;}
.company .feat-list p {font-size:15px; color:#666; line-height:1.8; margin:0;}

/* ===== 추천 대상 ===== */
.company .who-list {list-style:none; padding:0; margin:0; display:grid; grid-template-columns:repeat(2,1fr); gap:12px;}
.company .who-list li {position:relative; padding:20px 22px 20px 54px; background:#faf7f2; border-radius:12px; color:#3a3a3a; font-size:16px; line-height:1.6;}
.company .who-list li::before {content:"✓"; position:absolute; left:24px; top:20px; color:#CA5400; font-weight:800;}

/* ===== 선별 과정 스텝 ===== */
.company .step-list {list-style:none; padding:0; margin:0; counter-reset:st;}
.company .step-list li {position:relative; padding:24px 0 24px 68px; border-bottom:1px solid #eee;}
.company .step-list li:last-child {border-bottom:0;}
.company .step-list li::before {counter-increment:st; content:"0" counter(st); position:absolute; left:6px; top:24px; font-size:22px; font-weight:800; color:#CA5400;}
.company .step-list b {display:block; font-size:17px; color:#161616; margin-bottom:6px;}
.company .step-list span {color:#666; font-size:15px; line-height:1.75;}

/* ===== 회사 정보 : 2열 정의 목록 ===== */
.company .info-dl {display:grid; grid-template-columns:repeat(2,1fr); gap:0 48px;}
.company .info-row {display:flex; justify-content:space-between; align-items:baseline; gap:18px; padding:16px 2px; border-bottom:1px solid #eee;}
.company .info-row .k {color:#8a8f96; font-size:14px; font-weight:500; white-space:nowrap;}
.company .info-row .v {color:#1f2226; font-size:15.5px; font-weight:600; text-align:right; line-height:1.5;}
.company .info-row .v a {color:#CA5400; text-decoration:none;}
.company .info-row .v a:hover {text-decoration:underline;}

/* ===== 오시는 길 ===== */
.company .visit {display:flex; gap:40px; align-items:stretch;}
.company .visit-info {flex:0 0 330px;}
.company .visit-addr {font-size:21px; font-weight:700; color:#161616; line-height:1.55; font-style:normal;}
.company .visit-hours {margin-top:16px; color:#666; font-size:15px; line-height:1.7;}
.company .visit-btns {margin-top:26px; display:flex; flex-wrap:wrap; gap:10px;}
.company .btn {display:inline-flex; align-items:center; padding:12px 20px; border-radius:9px; font-size:14px; font-weight:600; text-decoration:none; border:1px solid #CA5400; color:#CA5400; background:#fff; transition:.15s;}
.company .btn:hover {background:#CA5400; color:#fff;}
.company .btn-primary {background:#CA5400; color:#fff;}
.company .btn-primary:hover {background:#a84600; border-color:#a84600;}
.company .btn-kko {border-color:#FAE100; background:#FAE100; color:#3b1f1f;}
.company .btn-kko:hover {background:#f2d600; color:#3b1f1f;}
.company .c-map {flex:1; min-height:360px; border:1px solid #e8e8e8; border-radius:14px; overflow:hidden;}
.company .c-map:empty {background:#f4f4f5;}

/* ===== 더 알아보기 ===== */
.company .c-links {display:grid; grid-template-columns:repeat(2,1fr); gap:16px;}
.company .c-links a {position:relative; display:block; border:1px solid #e7e7e7; border-radius:14px; padding:26px 52px 26px 28px; text-decoration:none; background:#fff; transition:border-color .15s, box-shadow .15s, transform .15s;}
.company .c-links a:hover {border-color:#CA5400; box-shadow:0 8px 22px rgba(202,84,0,.08); transform:translateY(-2px);}
.company .c-links a b {display:block; font-size:18px; color:#141414; margin-bottom:8px;}
.company .c-links a span {display:block; font-size:14px; color:#7c7c7c; line-height:1.55;}
.company .c-links a::after {content:"→"; position:absolute; right:24px; top:50%; transform:translateY(-50%); color:#CA5400; font-size:19px; opacity:.45; transition:.18s;}
.company .c-links a:hover::after {opacity:1; transform:translate(5px,-50%);}

/* ===== FAQ (항상 노출 · AEO 친화) ===== */
.company .faq {list-style:none; padding:0; margin:0; border-top:2px solid #1f1f1f;}
.company .faq-item {padding:26px 4px; border-bottom:1px solid #e5e5e5;}
.company .faq-q {position:relative; font-size:17.5px; font-weight:700; color:#161616; line-height:1.5; margin:0 0 12px; padding-left:30px;}
.company .faq-q::before {content:"Q"; position:absolute; left:2px; top:0; color:#CA5400; font-weight:800;}
.company .faq-a {position:relative; color:#555; font-size:15.5px; line-height:1.9; margin:0; padding-left:30px;}
.company .faq-a::before {content:"A"; position:absolute; left:2px; top:0; color:#b9b9b9; font-weight:800;}

/* ===== 반응형 ===== */
@media (max-width: 1199px) {
.company .flex-st {gap:80px;}
.company .img-area {width:36%;}
.company .txt-area {width:calc(64% - 80px);}
.company .txt-area .tit-txt p {font-size:28px;}
.company .txt-area .tit-txt span {font-size:20px;}
.company .c-tit {font-size:26px;}
.company .visit-info {flex-basis:280px;}
}

@media (max-width: 767px) {
.company .flex-st {flex-direction:column; gap:30px;}
.company .img-area {width:100%;}
.company .img-area img {max-width:100%;}
.company .txt-area {width:100%;}
.company .txt-area .basic-txt {margin-top:24px;}
.company .txt-area .tit-txt span {font-size:18px;}
.company .txt-area .tit-txt p {font-size:25px;}

.company .company-sec {margin-top:72px;}
.company .c-head {margin-bottom:24px;}
.company .c-tit {font-size:23px;}
.company .c-prose p {font-size:15.5px;}
.company .c-prose .pull {font-size:16.5px; padding:18px 20px;}
.company .fact-grid {grid-template-columns:repeat(2,1fr); gap:10px;}
.company .fact-grid li {padding:20px 18px;}
.company .stat-band {grid-template-columns:repeat(2,1fr); gap:10px;}
.company .stat-band li {padding:26px 12px;}
.company .stat-band .num {font-size:34px;}
.company .trust {flex-direction:column; align-items:flex-start; gap:18px; padding:26px 24px;}
.company .feat-list {grid-template-columns:1fr;}
.company .feat-list li {padding:24px 22px;}
.company .who-list {grid-template-columns:1fr;}
.company .info-dl {grid-template-columns:1fr; gap:0;}
.company .visit {flex-direction:column; gap:26px;}
.company .visit-info {flex:none;}
.company .c-map {min-height:280px;}
.company .c-links {grid-template-columns:1fr;}
.company .faq-q {font-size:16.5px;}
}

@media (max-width: 480px) {
.company .fact-grid {grid-template-columns:1fr;}
.company .visit-btns .btn {flex:1 1 auto; justify-content:center;}
}
