@charset "utf-8";

/* ========== 전체 서브페이지 스타일 (컨텐츠만) ========== */

/* 인사말 & 비전 */
.ceo-cont {background:var(--color-canvas);}
.ceo-greeting {padding-bottom:var(--space-120);}
.ceo-greeting-row {display:flex; align-items:stretch; gap:var(--space-64); width:100%;}
.ceo-greeting-visual {width: 37%; max-width:520px; min-height:520px; margin:0;}
.ceo-greeting-visual__img {display:block; width:100%; height: 100%; border-radius:32px; object-fit:cover; object-position:center;}
.ceo-intro {flex: 1; align-self:center; min-width:0;}
.ceo-intro__eyebrow {margin:0 0 var(--space-16); color:#999; font-size:var(--font-size-16); font-weight:var(--fw-semibold); line-height:1.75em; letter-spacing:.08em; text-transform:uppercase;}
.ceo-intro__title {margin-bottom:var(--space-24); background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-point) 100%); background-clip:text; color:transparent; font-size:var(--font-size-44); font-weight:var(--fw-bold); line-height:1.25em; -webkit-background-clip:text; -webkit-text-fill-color:transparent;}
.ceo-intro__body {display:flex; flex-direction:column; gap:var(--space-16); margin-bottom:var(--space-24);}
.ceo-intro__body p {margin:0; color:var(--color-ink); font-size:var(--font-size-18); line-height:1.85em;}
.ceo-intro__sign {display:flex; align-items:center; gap:var(--space-8); margin:0; color:var(--color-ink-deep); font-size:var(--font-size-20); font-weight:var(--fw-semibold);}
.ceo-intro__sign-role {font-size:var(--font-size-18);}
.ceo-intro__sign-name {display:inline-flex; align-items:center; gap:var(--space-8); font-weight:var(--fw-bold);}
.ceo-intro__sign-img {display:block; flex-shrink:0; width:auto; height:44px; max-width:none; object-fit:contain;}
.br-desktop {display:inline;}

.ceo-vision-band {position:relative; overflow:hidden; background:var(--color-main-dark);}
.ceo-vision-band::before, .ceo-vision-band::after {content:""; position:absolute; width:min(72vw, 920px); height:min(72vw, 920px); border-radius:50%; filter:blur(56px); pointer-events:none;}
.ceo-vision-band::before {bottom:-14%; left:-14%; background:radial-gradient(circle, rgba(1,158,227,.38) 0%, rgba(1,158,227,.14) 38%, transparent 68%);}
.ceo-vision-band::after {top:-14%; right:-14%; background:radial-gradient(circle, rgba(108,204,115,.22) 0%, rgba(108,204,115,.08) 38%, transparent 68%);}
.ceo-vision-band > .contain {position:relative; z-index:1; padding-top:var(--space-100); padding-bottom:var(--space-100);}
.ceo-vision-band__vision {text-align:center;}
.ceo-vision-band .ceo-intro__eyebrow {color:rgba(255,255,255,.4);}
.ceo-vision-band__title {margin-bottom:var(--space-24); color:#fff; font-size:var(--font-size-44); font-weight:var(--fw-bold); line-height:1.25em;}
.ceo-vision-band__message {max-width:820px; margin:0 auto; color:rgba(255,255,255,.72); font-size:var(--font-size-17); line-height:1.85em;}
.ceo-vision-band__divider {width:1px; height:48px; margin:var(--space-48) auto; background:linear-gradient(180deg, rgba(255,255,255,.65) 0%, rgba(255,255,255,0) 100%); animation:ceo-vision-line 1.6s ease-in-out infinite;}
.ceo-vision-band__core-title {margin-bottom:var(--space-32); color:#fff; font-size:var(--font-size-28); font-weight:var(--fw-bold); line-height:1.4em; text-align:center;}
.ceo-core-values {display:grid; grid-template-columns:repeat(5, 1fr); gap:var(--space-16);}
.ceo-core-value {position:relative; aspect-ratio: 1; outline:none; perspective:1200px;}
.ceo-core-value__flip {position:relative; width:100%; height:100%; transition:transform .72s cubic-bezier(.22, 1, .36, 1); transform-style:preserve-3d; will-change:transform;}
.ceo-core-value__face {position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:var(--space-32) var(--space-24); border-radius:14px; text-align:center; backface-visibility:hidden; -webkit-backface-visibility:hidden;}
.ceo-core-value__face--front {border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.06); transition:border-color .55s ease;}
.ceo-core-value__face--back {gap:var(--space-16); overflow:hidden; border:1px solid rgba(255,255,255,.22); background:linear-gradient(to top left, var(--color-point) 0%, rgba(1,158,227,.82) 38%, rgba(22,61,80,.94) 72%, var(--color-primary) 100%); transform:rotateY(180deg);}
.ceo-core-value__face--back::after {content:""; position:absolute; inset:0; border-radius:inherit; background:linear-gradient(315deg, rgba(255,255,255,.1) 0%, rgba(255,255,255,.04) 28%, rgba(255,255,255,0) 52%); pointer-events:none;}
.ceo-core-value:hover .ceo-core-value__flip, .ceo-core-value:focus-within .ceo-core-value__flip {transform:rotateY(180deg);}
.ceo-core-value:hover .ceo-core-value__face--front, .ceo-core-value:focus-within .ceo-core-value__face--front {border-color:rgba(255,255,255,.22);}
.ceo-core-value__initial {display:block; margin-bottom:var(--space-10); background:linear-gradient(135deg, var(--color-point) 0%, #fff 100%); background-clip:text; color:transparent; font-size:var(--font-size-80); font-weight:900; line-height:1em; -webkit-background-clip:text; -webkit-text-fill-color:transparent;}
.ceo-core-value h4 {position:relative; z-index:1; margin:0; color:#fff; font-size:var(--font-size-18); font-weight:var(--fw-bold); line-height:1.4em;}
.ceo-core-value__face--back p {position:relative; z-index:1; margin:0; color:rgba(255,255,255,.9); font-size:var(--font-size-16); line-height:1.65em;}

@keyframes ceo-vision-line {
	0%, 100% {opacity:.45; transform:scaleY(.35); transform-origin:top;}
	50% {opacity:1; transform:scaleY(1);}
}

/* 연혁 */
.history-cont {background:var(--color-canvas);}
.history-timeline {--history-dot-size:18px; --history-spine-gap:var(--space-88); position:relative; width:100%; padding:var(--space-16) 0 var(--space-8);}
.history-timeline__track {position:absolute; top:0; bottom:0; left:50%; width:2px; margin-left:-1px; pointer-events:none;}
.history-timeline__line {position:absolute; inset:0; background:rgba(22,45,59,.12);}
.history-timeline__progress {position:absolute; top:0; left:0; width:100%; height:0; background:var(--color-point); transform-origin:top center;}
.history-list {position:relative; z-index:1; display:flex; flex-direction:column; gap:var(--space-100); margin:0; padding:0; list-style:none;}
.history-item {display:grid; grid-template-columns:minmax(0, 1fr) var(--history-dot-size) minmax(0, 1fr); align-items:start; column-gap:var(--history-spine-gap);}
.history-item__year {grid-column:1; grid-row:1; justify-self:end; width:fit-content; max-width:100%; margin:0; padding:0; color:var(--color-primary); font-size:var(--font-size-40); font-weight:800; line-height:1em; letter-spacing:-.02em; text-align:right; opacity:0; transform:translateY(12px); transition:opacity .65s ease, transform .65s ease;}
.history-item__dot {position:relative; z-index:2; grid-column:2; grid-row:1; align-self:start; justify-self:center; width:var(--history-dot-size); height:var(--history-dot-size); margin:var(--space-10) 0 0; border:4px solid var(--color-canvas); border-radius:50%; background:var(--color-canvas); box-shadow:0 0 0 2px rgba(22,45,59,.2); transform:scale(0); transform-origin:center; transition:transform .45s ease, background .45s ease, box-shadow .45s ease;}
.history-item__events {grid-column:3; grid-row:1; display:flex; flex-direction:column; gap:var(--space-8); min-width:0; opacity:0; transform:translateY(24px); transition:opacity .65s ease .12s, transform .65s ease .12s;}
.history-event {margin:0; color:var(--color-steel); font-size:var(--font-size-18); line-height:1.7778em; letter-spacing:-.02em;}
.history-item.is-visible .history-item__year, .history-item.is-visible .history-item__events {opacity:1; transform:none;}
.history-item.is-visible .history-item__dot {background:var(--color-point); box-shadow:0 0 0 2px var(--color-point); transform:scale(1);}

/* 사업장 */
.location-cont {background:var(--color-canvas);}
.location-branch {display:flex; align-items:flex-start; gap:var(--space-64); width:100%;}
.location-tabs {display:flex; flex:0 0 18%; max-width: 240px; flex-direction:column; gap:var(--space-10); margin:0; padding:0; border:0;}
.location-tab {display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; width:100%; min-height:54px; padding:var(--space-10) var(--space-20); margin:0; border:0; border-radius:var(--radius-pill); background:rgba(22,45,59,.05); color:#808080; font-family:inherit; font-size:var(--font-size-16); font-weight:var(--fw-semibold); line-height:1.4em; text-align:center; white-space:nowrap; cursor:pointer; transition:color .2s ease, background .2s ease;}
.location-tab:hover:not(.is-active) {background:rgba(22,45,59,.08); color:var(--color-ink);}
.location-tab.is-active {background:var(--color-primary); color:#fff;}
.location-tab:focus-visible {outline:2px solid var(--color-point); outline-offset:2px;}
.location-branch__content {position:relative; flex:1 1 0; min-width:0;}
.location-panel {display:none; min-width:0;}
.location-panel.is-active {display:flex; flex-direction:column; gap:var(--space-24);}
.location-panel__title {display:flex; align-items:center; gap:var(--space-12); margin:0; color:var(--color-ink-deep); font-size:var(--font-size-24); font-weight:var(--fw-bold); line-height:1.4em;}
.location-panel__bullet {flex:0 0 16px; width:16px; height:16px; border:3px solid var(--color-point); border-radius:50%; background:#fff;}
.location-map {position:relative; width:100%; height:460px; min-height:460px; overflow:hidden; border-radius:var(--radius-card); background:#f4f6f8;}
.location-map .root_daum_roughmap,
.location-map .root_daum_roughmap .wrap_map {width:100%; height:100%;}
.location-map__frame {display:block; width:100%; height:100%; border:0;}
.location-detail {display:flex; flex-direction:column; gap:var(--space-24); margin:0;}
.location-detail__list {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:start; gap:var(--space-24); margin:0; padding:0;}
.location-detail__address {display:flex; flex-direction:column; gap:var(--space-16); min-width:0; margin:0; padding:0;}
.location-detail__address-text {min-width:0; margin:0; color:var(--color-ink-deep); font-size:var(--font-size-24); font-weight:var(--fw-semibold); line-height:1.5em;}
.location-detail__contacts {display:flex; flex-direction:column; gap:var(--space-16); min-width:0; margin:0; padding:0;}
.location-detail__item {display:flex; align-items:flex-start; gap:var(--space-24); min-height:24px; margin:0;}
.location-detail__label {flex:0 0 88px; margin:0; color:var(--color-point); font-size:var(--font-size-16); font-weight:var(--fw-bold); line-height:1.5em;}
.location-detail__address .location-detail__label {flex:none; width:auto; line-height:1em;}
.location-detail__value {flex:1; min-width:0; margin:0; color:var(--color-ink-deep); font-size:var(--font-size-18); font-weight:var(--fw-medium); line-height:1.5em;}

/* 인허가/설비 */
.cert-cont {background:var(--color-canvas);}
.cert-branch .location-tabs {height:auto;}
.cert-list {display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); column-gap:var(--space-24); row-gap:var(--space-64); width:100%;}
.cert-list--facility {grid-template-columns:repeat(3, minmax(0, 1fr)); row-gap:var(--space-48);}
.cert-item {display:flex; flex-direction:column; align-items:center; gap:var(--space-20); min-width:0; margin:0;}
.cert-item__thumb {position:relative; width:100%; overflow:hidden; aspect-ratio:210 / 297; border:1px solid var(--color-hairline); background:var(--color-canvas);}
.cert-item__thumb img {display:block; width:100%; height:100%; object-fit:contain; object-position:center;}
.cert-list--facility .cert-item__thumb {aspect-ratio:6 / 4;}
.cert-list--facility .cert-item__thumb img {object-fit:cover;}
.cert-item__name {width:100%; margin:0; color:var(--color-ink); font-size:var(--font-size-16); font-weight:var(--fw-medium); line-height:1.5em; letter-spacing:-.03em; text-align:center; word-break:keep-all;}

/* 인허가/설비 — 주요시설 (상단 biz-bog-intro 50:50 · 하단 사진 3열) */
.cert-facility-major {display:flex; flex-direction:column; gap:var(--space-48); width:100%;}
.cert-facility-major__intro.biz-bog-intro {align-items:center;}
.cert-facility-major__intro .biz-bog-intro__concept .biz-figure {justify-content:center;}
.cert-facility-major__media {display:block; width:100%; max-width:none; margin:0; padding:0; overflow:hidden; border:0; border-radius:var(--radius-card); background:transparent;}
.cert-facility-major__media img {display:block; width:100%; height:auto; border:0; border-radius:var(--radius-card); vertical-align:top;}
.cert-facility-major__legend.biz-bog-intro__specs {display:flex; flex-direction:column; justify-content:center;}
.cert-facility-major__legend .biz-check li {padding:var(--space-6) 0; font-size:var(--font-size-18); font-weight:var(--fw-medium);}
.cert-facility-major__legend .biz-check .biz-check__num-extra {display:flex; align-items:center; justify-content:center; flex:0 0 16px; width:16px; height:16px; border-radius:50%; background:var(--color-point); color:#fff; font-size:10px; font-weight:var(--fw-bold); line-height:1em;}

.cert-facility-major__photos {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--space-24); width:100%;}
.cert-facility-major__photo {display:flex; flex-direction:column; align-items:stretch; margin:0; min-width:0;}
.cert-facility-major__thumb,
.cert-facility-major__photo .cert-item__thumb {position:relative; width:100%; overflow:hidden; aspect-ratio:6 / 4; border:0; border-radius:24px; border-radius:var(--radius-card, 24px); background:transparent; isolation:isolate;}
.cert-facility-major__thumb img,
.cert-facility-major__photo .cert-item__thumb img,
.cert-facility-major__photo > img {display:block; width:100%; height:100%; border-radius:inherit; object-fit:cover; object-position:center;}
.cert-facility-major__photo > img {aspect-ratio:6 / 4; height:auto; border:0; border-radius:24px; border-radius:var(--radius-card, 24px); background:transparent;}
.cert-facility-major__caption {margin:var(--space-16) 0 0; color:var(--color-ink-deep); font-size:var(--font-size-16); font-weight:var(--fw-semibold); line-height:1.5em; text-align:center; word-break:keep-all;}
.cert-facility-major__caption-num {display:inline-flex; align-items:center; justify-content:center; width:16px; height:16px; margin:-2px var(--space-6) 0 0; border-radius:50%; background:var(--color-point); color:#fff; font-size:10px; font-weight:var(--fw-bold); line-height:1; vertical-align:middle;}

/* 사업분야 */
.business-cont {background:var(--color-canvas);}
.biz-branch[data-biz-scroll] .location-tabs {position:sticky; top:calc(var(--header-height) + var(--space-32)); align-self:flex-start; z-index:5;}
.biz-branch[data-biz-scroll] .location-panel {display:block; margin:0; padding:0; border:0; scroll-margin-top:calc(var(--header-height) + var(--space-32));}
.biz-branch[data-biz-scroll] .location-panel + .location-panel {margin-top:var(--space-80);}
.biz-branch .location-tab {white-space:normal;}
.biz-block {margin:0; padding:0; border:0;}
.biz-block__title {display:flex; align-items:center; gap:var(--space-12); margin:0 0 var(--space-24); color:var(--color-ink-deep); font-size:var(--font-size-24); font-weight:var(--fw-bold); line-height:1.4em;}
.si-page .biz-block__title {margin-bottom:var(--space-12);}
.biz-block__bullet {flex:0 0 16px; width:16px; height:16px; border:3px solid var(--color-point); border-radius:50%; background:#fff;}
.biz-block__subtitle {margin:0 0 var(--space-16); color:var(--color-ink-deep); font-size:var(--font-size-20); font-weight:var(--fw-semibold); line-height:1.4em;}
.biz-block__desc {margin:0 0 var(--space-24); color:var(--color-ink); font-size:var(--font-size-16); font-weight:var(--fw-regular); line-height:1.7em;}
.biz-branch .img-placeholder {position:relative; min-width:0; overflow:hidden; background:transparent;}
.biz-branch .img-placeholder img, .biz-product-card__media img, .biz-bog-diag__media img, .biz-nozzle-photos img, .biz-nozzle-diagram img {display:block; transform:scale(1); transform-origin:center; transition:transform .55s cubic-bezier(.4,0,.2,1);}
.biz-branch .img-placeholder:hover img, .biz-product-card__media:hover img, .biz-bog-diag__media:hover img, .biz-nozzle-photos__item:hover img, .biz-nozzle-diagram:hover img {transform:scale(1.08);}
.biz-img-row {display:grid; gap:var(--space-16);}
.biz-img-row--4 {grid-template-columns:repeat(4, minmax(0, 1fr));}
.biz-img-row--2 {grid-template-columns:repeat(2, minmax(0, 1fr));}
.biz-img-row--4 .img-placeholder {aspect-ratio:6 / 4;}
.biz-img-row--4 .img-placeholder img {width:100%; height:100%; object-fit:cover;}
.biz-img-row--2 .img-placeholder {border-radius:var(--radius-card);}
.biz-img-row--2 .img-placeholder--stroke {border:1px solid var(--color-hairline);}
.biz-img-row--2 .img-placeholder img {width:100%; height:auto; border-radius:0; object-fit:cover;}
.biz-img-single .img-placeholder {border:1px solid var(--color-hairline); border-radius:var(--radius-card);}
.biz-img-single .img-placeholder img {width:100%; height:auto; object-fit:contain;}
.biz-johnston-grid {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:start; gap:var(--space-16);}
.biz-johnston-grid .biz-detail-group + .biz-detail-group {margin:0;}
.biz-johnston-grid .biz-img-row {gap:var(--space-16);}
.biz-johnston-grid .img-placeholder {aspect-ratio:6 / 4; border-radius:var(--radius-card);}
.biz-johnston-grid > .biz-detail-group:nth-child(2) .img-placeholder {aspect-ratio:3 / 1;}
.biz-johnston-grid .img-placeholder img {width:100%; height:100%; border-radius:0; object-fit:cover;}
.biz-johnston-case {width:100%; margin-top:var(--space-48);}
.biz-johnston-case .img-placeholder {border-radius:var(--radius-card);}
.biz-johnston-case .img-placeholder img {width:100%; height:auto; border-radius:0; object-fit:contain;}
.biz-johnston-legacy .biz-section + .biz-section {margin-top:var(--space-48);}
.biz-detail-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); align-items:start; gap:var(--space-20);}
.biz-detail-grid .img-placeholder {aspect-ratio:1024 / 615; border-radius:var(--radius-card);}
.biz-detail-grid .img-placeholder img {width:100%; height:100%; border-radius:var(--radius-card); object-fit:cover;}
.biz-detail-caption {margin-top:var(--space-12); color:var(--color-ink); font-size:var(--font-size-16); line-height:1.65em; text-align:center;}
.biz-detail-caption strong {display:block; margin-bottom:var(--space-4); color:var(--color-ink-deep); font-size:var(--font-size-18); font-weight:var(--fw-bold); line-height:1.4em;}
.biz-nozzle-grid {display:flex; flex-direction:column; align-items:stretch; gap:var(--space-48);}
.biz-nozzle-grid__intro {display:flex; align-items:center; gap:var(--space-32); width:100%;}
.biz-nozzle-grid__intro .biz-nozzle-photos {flex:0 0 calc((100% - var(--space-32)) / 2); width:calc((100% - var(--space-32)) / 2);}
.biz-nozzle-grid__specs {display:flex; flex:1 1 0; flex-direction:column; min-width:0;}
.biz-nozzle-photos {display:flex; align-items:center; justify-content:center; min-height:220px; overflow:hidden; border-radius:var(--radius-card); background:linear-gradient(180deg, #eee 0%, #f5f5f5 100%);}
.biz-nozzle-photos__item {flex:0 0 auto; overflow:hidden;}
.biz-nozzle-photos__item img {width:auto; height:220px; object-fit:cover;}
.biz-check {margin:0; list-style:none;}
.biz-check li {position:relative; display:flex; align-items:center; gap:var(--space-10); padding:var(--space-4) 0; color:var(--color-ink); font-size:var(--font-size-18); line-height:1.7em;}
.biz-check li::before, .biz-product-card__specs li::before {content:"✓"; display:flex; align-items:center; justify-content:center; flex:0 0 16px; width:16px; height:16px; border-radius:50%; background:var(--color-point); color:#fff; font-size:10px; font-weight:var(--fw-bold); line-height:1em;}
/* 숫자 마커 — 유량계「유량계 시스템」·인허가 주요시설 범례 */
#biz-panel-flow-system .biz-check,
#cert-panel-facility .biz-check {counter-reset:biz-check-num;}
#biz-panel-flow-system .biz-check li::before,
#cert-panel-facility .biz-check li::before {content:counter(biz-check-num); counter-increment:biz-check-num;}
.biz-nozzle-grid__diagrams {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--space-16); width:100%;}
.biz-nozzle-diagram {min-height:334px; overflow:hidden; border:1px solid var(--color-hairline); border-radius:var(--radius-card);}
.biz-nozzle-diagram img {width:100%; height:100%; min-height:334px; border-radius:var(--radius-card); object-fit:cover;}

/* LH2 사업 */
.biz-lh2-intro {display:flex; align-items:flex-start; gap:var(--space-16);}
.biz-lh2-intro__col {min-width:0;}
.biz-lh2-intro__col:first-child {flex:0 0 55.986%;}
.biz-lh2-intro__col--test {flex:1 1 0;}
.biz-lh2-intro__col .biz-block__title {margin-bottom:0;}
.biz-lh2-intro__col:first-child .biz-figure {margin-top:var(--space-24);}
.biz-lh2-intro__tests {display:flex; gap:var(--space-16); margin-top:var(--space-24);}
.biz-lh2-intro__tests .biz-figure {flex:1 1 calc((100% - var(--space-16)) / 2); width:calc((100% - var(--space-16)) / 2);}
.biz-figure {display:flex; flex-direction:column; align-items:stretch; gap:var(--space-12); margin:0;}
.biz-lh2-intro__media {position:relative; height:364px; overflow:hidden; border-radius:var(--radius-card);}
.biz-lh2-intro__media img {position:absolute; inset:0; width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}
.biz-figure__caption {margin:0; color:var(--color-ink-deep); font-size:var(--font-size-18); font-weight:var(--fw-bold); line-height:1.4em; text-align:center;}
.biz-product-grid {display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:var(--space-16);}
.biz-product-card {display:flex; flex-direction:column; overflow:hidden; border-radius:var(--radius-card);}
.biz-product-card__head {margin:0; padding:var(--space-12) var(--space-16); background:linear-gradient(135deg, var(--color-point) 0%, color-mix(in srgb, var(--color-point) 72%, #fff 28%) 100%); color:#fff; font-size:var(--font-size-18); font-weight:var(--fw-semibold); line-height:1.45em; text-align:center;}
.biz-product-card__media {height:315px; overflow:hidden; border-right:1px solid var(--color-hairline); border-left:1px solid var(--color-hairline); background:#f8f8f8;}
.biz-product-card__media img {width:100%; height:100%; object-fit:cover;}
.biz-product-card__specs {display:flex; flex:1; flex-direction:column; gap:var(--space-10); margin:0; padding:var(--space-22) var(--space-24) var(--space-20); border:1px solid var(--color-hairline); border-top:0; border-radius:0 0 var(--radius-card) var(--radius-card); list-style:none;}
.biz-product-card__specs li {display:flex; align-items:center; gap:var(--space-10); color:var(--color-ink-deep); font-size:var(--font-size-16); font-weight:var(--fw-medium); line-height:1.5em;}
.biz-lh2-johnston {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:center; gap:var(--space-16);}
.biz-lh2-johnston > .img-placeholder, .biz-lh2-johnston__stack .img-placeholder {overflow:hidden; border-radius:var(--radius-card);}
.biz-lh2-johnston > .img-placeholder img, .biz-lh2-johnston__stack .img-placeholder img {width:100%; height:auto; border-radius:0; object-fit:cover;}
.biz-lh2-johnston__stack {display:flex; flex-direction:column; gap:var(--space-16);}
.biz-lh2-johnston__stack .img-placeholder--stroke {border:1px solid var(--color-hairline); background:#fff;}
.biz-lh2-pipe-grid {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:start; gap:var(--space-16);}
.biz-lh2-pipe-grid .biz-detail-group + .biz-detail-group {margin:0;}
.biz-lh2-pipe-grid .img-placeholder {height:267px; min-height:267px; overflow:hidden; border-radius:var(--radius-card);}
.biz-lh2-pipe-grid .img-placeholder:not(.img-placeholder--stroke) img {width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}
.biz-lh2-pipe-grid .img-placeholder--stroke {display:flex; align-items:center; justify-content:center; padding:var(--space-16) var(--space-40); border:1px solid var(--color-hairline); background:#fff;}
.biz-lh2-pipe-grid .img-placeholder--stroke img {width:auto; max-width:100%; height:auto; max-height:100%; border-radius:0; object-fit:contain;}
.biz-lh2-pipe-grid .biz-block__subtitle {width:100%; margin:0; padding-top:var(--space-16); text-align:center;}

/* Defense 사업 */
.biz-img-row--3 {grid-template-columns:repeat(3, minmax(0, 1fr));}
.biz-military-overhaul .img-placeholder {width:100%; overflow:hidden; aspect-ratio:1024 / 615; border-radius:var(--radius-card);}
.biz-military-overhaul .img-placeholder img {width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}
.biz-military-mro .img-placeholder--stroke {overflow:hidden; padding:0; border:1px solid var(--color-hairline); border-radius:var(--radius-card); background:var(--color-canvas);}
.biz-branch .biz-military-mro .img-placeholder--stroke img {width:100%; height:auto; border-radius:0; object-fit:contain; transform:none; transition:none;}
.biz-branch .biz-military-mro .img-placeholder--stroke:hover img {transform:none;}

/* 연구개발 */
.biz-bog-intro {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:center; gap:var(--space-40);}
.biz-bog-intro__concept .biz-figure {justify-content:center;}
.biz-bog-intro__specs {display:flex; flex-direction:column; justify-content:center;}
.biz-bog-intro__media {display:flex; align-items:center; justify-content:center; width:100%; max-width:548px; height:451px; min-height:451px; overflow:hidden; padding:var(--space-32); border:1px solid var(--color-hairline); border-radius:var(--radius-card); background:var(--color-canvas);}
.biz-bog-intro__media img {width:100%; max-width:324px; height:auto; max-height:100%; border-radius:0; object-fit:contain;}
.biz-bog-check {margin:0 0 var(--space-28);}
.biz-bog-stats {display:flex; flex-wrap:wrap; justify-content:center; gap:var(--space-16);}
.biz-bog-stat {display:flex; align-items:center; justify-content:center; flex:0 0 168px; flex-direction:column; width:168px; min-width:0; height:auto; padding:var(--space-26) var(--space-15) var(--space-23); aspect-ratio:1 / 1; box-sizing:border-box; border:3px solid rgba(1,158,227,.2); border-radius:50%; background:var(--color-canvas); text-align:center; transition:border-color .2s ease;}
.biz-bog-stat:hover {border-color:var(--color-secondary);}
.biz-bog-stat__label {margin:0 0 var(--space-8); color:var(--color-ink-deep); font-size:var(--font-size-16); font-weight:var(--fw-semibold); line-height:1.225em;}
.biz-bog-stat__value {margin:0 0 var(--space-6); color:var(--color-secondary); font-size:var(--font-size-30); font-weight:800; line-height:1.2em;}
.biz-bog-stat__sub {margin:0; color:var(--color-steel); font-size:var(--font-size-14); line-height:1.4em;}
.biz-bog-diag {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); align-items:start; gap:var(--space-32);}
.biz-bog-diag__card {overflow:hidden; border-radius:var(--radius-card);}
.biz-bog-diag__card .biz-product-card__head {border-radius:var(--radius-card) var(--radius-card) 0 0;}
.biz-bog-diag__media {min-height:320px; overflow:hidden; aspect-ratio:14 / 10; border:1px solid var(--color-hairline); border-top:0; border-radius:0 0 var(--radius-card) var(--radius-card); background:#f8f8f8;}
.biz-bog-diag__media img {width:100%; height:100%; object-fit:contain;}
.biz-callout-list {display:flex; flex-direction:column; gap:var(--space-24); margin-top:var(--space-20);}
.biz-callout {position:relative; padding:0 var(--space-20);}
.biz-callout::before {content:""; position:absolute; top:0; bottom:0; left:0; width:4px; border-radius:var(--radius-10);}
.biz-callout--stroke-primary::before {background:var(--color-primary);}
.biz-callout--stroke-sky::before {background:#40beef;}
.biz-callout__title {display:block; margin-bottom:var(--space-6); color:var(--color-ink-deep); font-size:var(--font-size-18); font-weight:var(--fw-bold); line-height:1.5em;}
.biz-callout p {margin:0; color:var(--color-ink); font-size:var(--font-size-16); line-height:1.65em;}
.biz-flow-intro__media {height:auto; min-height:0; max-width:none; padding:var(--space-32);}
.biz-flow-intro__media img {width:100%; max-width:none; height:auto; aspect-ratio:581 / 231; object-fit:contain;}
.biz-flow-check, .biz-tank-check {margin:0;}
.biz-flow-measure {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--space-16);}
.biz-flow-measure__col {display:flex; flex-direction:column; align-items:stretch; gap:var(--space-16); min-width:0;}
.biz-flow-measure__media {width:100%; overflow:hidden; border-radius:var(--radius-card);}
.biz-flow-measure__media--lh2 {aspect-ratio:560 / 267;}
.biz-flow-measure__media--gh2 {aspect-ratio:560 / 265;}
.biz-flow-measure__media img {width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}
.biz-flow-measure__title {margin:0; color:var(--color-ink-deep); font-size:var(--font-size-18); font-weight:var(--fw-bold); line-height:1.4em; text-align:center;}
.biz-tank-intro {display:flex; align-items:center; gap:var(--space-32); width:100%;}
.biz-tank-intro .biz-bog-intro__concept {flex:0 0 calc((100% - var(--space-32)) / 2); width:calc((100% - var(--space-32)) / 2);}
.biz-tank-intro .biz-bog-intro__specs {flex:1 1 0; min-width:0;}
.biz-tank-intro__media {width:100%; overflow:hidden; aspect-ratio:548 / 258; border-radius:var(--radius-card);}
.biz-tank-intro__media img {width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}
.biz-tank-diagram .biz-flow-measure__media {display:flex; align-items:center; justify-content:center; padding:var(--space-24); border:1px solid var(--color-hairline); background:var(--color-canvas);}
.biz-tank-diagram .biz-flow-measure__media img {max-width:100%; max-height:100%; object-fit:contain;}
.biz-cooling-diagram__media {width:100%; overflow:hidden; aspect-ratio:588 / 368; border:1px solid var(--color-hairline); border-radius:var(--radius-card);}
.biz-cooling-diagram__media img {width:100%; height:100%; border-radius:0; object-fit:cover; object-position:center;}

.lh2-word{display:inline;}
.lh2-line{display:inline;}
.lh2-num{font-size:.6em;vertical-align:baseline;}
