/* 사업 영역 화면의 서식입니다. 이 파일과 business.php를 함께 이전하면 다른 Dev.M 테마에서도 동일한 형태로 표시됩니다. */

.devm01-content-page > header{
	text-align:center;
}
.devm01-content-page > header .devm01-title{
	font-size:42px;
}
.devm01-sub-content{
	padding:70px 0 130px;
}
#ctt.devm01-content-page{
	margin:0;
	padding:0;
}
#ctt_con.devm01-sub-content{
	font-size:17px;
	color:var(--devm01-gray-700, #374151);
	line-height:1.8;
}
#ctt_con.devm01-sub-content img{
	max-width:100%;
	border-radius:var(--devm01-radius-lg, 24px);
}
.devm01-sub-content h2{
	margin:0;
	color:var(--c-fg);
	font-size:38px;
	line-height:1.32;
	font-weight:bold;
	letter-spacing:-.055em;
}
.devm01-sub-content p{
	color:var(--devm01-gray-600, #6B7280);
}
.devm01-business-detail h2{
	max-width:820px;
}
.devm01-detail-cards{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:20px;
	margin-top:44px;
}
.devm01-detail-cards div{
	min-height:170px;
	padding:30px;
	border-radius:var(--devm01-radius-card, 18px);
	background:var(--c-surface, #fff);
	border:1px solid var(--devm01-gray-200, #E5EAF0);
	box-shadow:var(--devm01-shadow-card, 0 16px 40px rgba(7, 28, 53, .08));
}
.devm01-detail-cards b{
	display:block;
	color:var(--c-primary);
	font-size:21px;
}
.devm01-detail-cards span{
	display:block;
	margin-top:14px;
	color:var(--devm01-gray-600, #6B7280);
}
@media (max-width:1024px){
	.devm01-detail-cards{
		grid-template-columns:repeat(2,1fr)
	}
}
@media (max-width:768px){
	.devm01-sub-content{
		padding:52px 0 90px
	}
	.devm01-content-page > header .devm01-title,.devm01-sub-content h2{
		font-size:30px
	}
	.devm01-detail-cards{
		grid-template-columns:1fr
	}
}
/* Layout Polish / content.php premium body rhythm */
.devm01-content-page{
	width:100%;
	padding-bottom:120px;
}
.devm01-content-page > .devm01-page-header{
	padding:0 0 36px;
	text-align:left;
}
.devm01-content-shell{
	position:relative;
}
#ctt_con.devm01-sub-content,
.devm01-sub-content{
	width:100%;
	max-width:var(--devm01-inner, var(--devm01-main-width, 1280px));
	margin:0 auto;
	padding:0 0 0;
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
	position:relative;
	padding:64px;
	border:1px solid var(--devm01-gray-200, #E5EAF0);
	border-radius:var(--devm01-radius-xl, 28px);
	background:linear-gradient(180deg,var(--c-surface, #fff) 0%,var(--c-surface-2, #FAFCFE) 100%);
	box-shadow:var(--devm01-shadow-card, 0 16px 40px rgba(7, 28, 53, .08));
	overflow:hidden;
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta)::before{
	content:"";
	position:absolute;
	right:-120px;
	top:-120px;
	width:300px;
	height:300px;
	border-radius:50%;
	background:rgba(30,136,229,.07);
	pointer-events:none;
}
.devm01-business-detail > p:not(.devm01-kicker){
	position:relative;
	z-index:1;
}
.devm01-detail-cards div{
	transition:transform var(--devm01-duration, 260ms) var(--devm01-ease, cubic-bezier(.22, 1, .36, 1)),
box-shadow var(--devm01-duration, 260ms) var(--devm01-ease, cubic-bezier(.22, 1, .36, 1));
}
.devm01-detail-cards div:hover{
	transform:translateY(-4px);
	box-shadow:var(--devm01-shadow-floating, 0 24px 60px rgba(7, 28, 53, .12));
}
.devm01-business-detail > p{
	max-width:760px;
	font-size:18px;
	line-height:1.85;
}
@media (max-width:1024px){
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:44px 34px;
	}
	.devm01-content-page{
		padding-bottom:96px;
	}
}
@media (max-width:768px){
	.devm01-content-page > .devm01-page-header{
		padding-bottom:24px;
	}
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:30px 22px;
		border-radius:var(--devm01-radius-lg, 24px);
	}
}
/* Company Info Polish / Sub Page Quality Pass */
.devm01-content-page{
	padding-bottom: 156px;
}
.devm01-sub-nav + .devm01-content-page{
	margin-top: 92px;
}
.devm01-content-shell{
	width:min(100% - 48px,
var(--devm01-inner, var(--devm01-main-width, 1280px)));
	max-width:var(--devm01-inner, var(--devm01-main-width, 1280px));
	margin-left:auto;
	margin-right:auto;
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
	padding:72px;
	background:linear-gradient(180deg,var(--c-surface, #fff) 0%,var(--c-surface-2, #F8FBFF) 100%);
	border-color:rgba(7,28,53,.09);
	box-shadow:0 24px 70px rgba(7,28,53,.09);
}
.devm01-sub-content h2{
	word-break:keep-all;
}
.devm01-sub-content p{
	word-break:keep-all;
}
.devm01-sub-lead{
	max-width:760px;
	margin:18px 0 0;
	font-size:19px;
	line-height:1.9;
	color:var(--devm01-gray-700, #374151);
}
@media (max-width:1024px){
	.devm01-content-page{
		padding-bottom:124px;
	}
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:50px 38px;
	}
}
@media (max-width:768px){
	.devm01-sub-nav + .devm01-content-page{
		margin-top:54px;
	}
	.devm01-content-page{
		padding-bottom:96px;
	}
	.devm01-content-shell{
		width:calc(100% - 40px);
	}
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:32px 22px;
	}
	.devm01-sub-lead{
		font-size:16px;
	}
}
/* Sub Page & Board Visual Polish - section rhythm and premium modules */
.devm01-content-page{
	padding-bottom: 180px;
}
.devm01-sub-nav + .devm01-content-page{
	margin-top: 108px;
}
#ctt_con.devm01-sub-content{
	display:block;
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
	padding:76px;
}
.devm01-page-stack > * + *{
	margin-top:112px;
}
.devm01-page-stack > .devm01-metric-grid,
.devm01-page-stack > .devm01-value-grid,
.devm01-page-stack > .devm01-detail-cards{
	margin-top:96px;
}
.devm01-split-visual{
	display:grid;
	grid-template-columns:minmax(0,
.92fr) minmax(0,
1.08fr);
	gap:64px;
	align-items:center;
}
.devm01-split-visual.is-reverse .devm01-split-visual__text{
	order:2;
}
.devm01-split-visual.is-reverse .devm01-large-image{
	order:1;
}
.devm01-split-visual__text{
	min-width:0;
}
.devm01-large-image{
	position:relative;
	overflow:hidden;
	min-height:420px;
	border-radius:var(--devm01-radius-xl, 28px);
	background:var(--c-surface-3, #E9EFF5);
	box-shadow:var(--devm01-shadow-floating, 0 24px 60px rgba(7, 28, 53, .12));
}
.devm01-large-image::after{
	content:"";
	position:absolute;
	inset:0;
	background:linear-gradient(180deg,
transparent 45%,
rgba(7,28,53,.28));
	pointer-events:none;
}
.devm01-large-image img{
	display:block;
	width:100%;
	height:100%;
	min-height:420px;
	object-fit:cover;
	transform:scale(1.01);
}
.devm01-large-image.is-wide{
	min-height:380px;
}
.devm01-large-image.is-wide img{
	min-height:380px;
}
.devm01-detail-cards{
	grid-template-columns:repeat(4,1fr);
}
.devm01-detail-cards div{
	position:relative;
	overflow:hidden;
}
.devm01-detail-cards div::after{
	content:"";
	position:absolute;
	right:-42px;
	bottom:-42px;
	width:118px;
	height:118px;
	border-radius:50%;
	background:rgba(30,136,229,.06);
}
.devm01-detail-cards span{
	display:inline-flex;
	align-items:center;
	justify-content:center;
	width:38px;
	height:38px;
	margin-bottom:20px;
	border-radius:50%;
	background:var(--c-surface-3, #EAF4FF);
	color:var(--c-accent);
	font-family:var(--devm01-font-en, var(--ff, Pretendard, Inter, Arial, sans-serif));
}
.devm01-detail-cards p{
	margin:14px 0 0;
	color:var(--devm01-gray-600, #6B7280);
	line-height:1.75;
}
.devm01-process-line{
	position:relative;
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:0;
	padding:36px;
	border-radius:var(--devm01-radius-xl, 28px);
	background:var(--c-primary);
	box-shadow:var(--devm01-shadow-floating, 0 24px 60px rgba(7, 28, 53, .12));
}
.devm01-process-line::before{
	content:"";
	position:absolute;
	left:80px;
	right:80px;
	top:72px;
	height:1px;
	background:rgba(255,255,255,.22);
}
.devm01-process-line > div{
	position:relative;
	z-index:1;
	padding:34px 24px 20px;
	color:var(--c-surface, #fff);
}
.devm01-process-line > div::before{
	content:"";
	position:absolute;
	left:24px;
	top:27px;
	width:14px;
	height:14px;
	border-radius:50%;
	background:var(--c-accent-light);
	box-shadow:0 0 0 10px rgba(57,214,255,.12);
}
.devm01-process-line b{
	display:block;
	margin-bottom:14px;
	padding-top:20px;
	font-size:20px;
}
.devm01-process-line p{
	margin:0;
	color:rgba(255,255,255,.68);
}
@media (max-width:1180px){
	.devm01-detail-cards{
		grid-template-columns:repeat(2,1fr);
	}
}
@media (max-width:1024px){
	.devm01-sub-nav + .devm01-content-page{
		margin-top:84px;
	}
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:52px 38px;
	}
	.devm01-split-visual,
.devm01-split-visual.is-reverse{
		grid-template-columns:1fr;
		gap:44px;
	}
	.devm01-split-visual.is-reverse .devm01-split-visual__text,
.devm01-split-visual.is-reverse .devm01-large-image{
		order:initial;
	}
	.devm01-page-stack > * + *{
		margin-top:88px;
	}
	.devm01-process-line{
		grid-template-columns:repeat(2,1fr);
	}
	.devm01-process-line::before{
		display:none;
	}
}
@media (max-width:768px){
	.devm01-sub-nav + .devm01-content-page{
		margin-top:58px;
	}
	.devm01-content-page{
		padding-bottom:112px;
	}
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:30px 22px;
	}
	.devm01-page-stack > * + *{
		margin-top:58px;
	}
	.devm01-page-stack > .devm01-metric-grid,
.devm01-page-stack > .devm01-value-grid,
.devm01-page-stack > .devm01-detail-cards{
		margin-top:56px;
	}
	.devm01-large-image,
.devm01-large-image img,
.devm01-large-image.is-wide,
.devm01-large-image.is-wide img{
		min-height:280px;
	}
	.devm01-detail-cards,
.devm01-process-line{
		grid-template-columns:1fr;
	}
	.devm01-process-line{
		padding:24px;
	}
	.devm01-process-line > div{
		padding:26px 16px 16px;
	}
}
/* Re-polish: stronger spacing rhythm,
richer visual hierarchy,
company info consistency */
.devm01-content-page{
	padding-bottom:0;
}
.devm01-content-shell{
	padding-bottom:0;
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
	padding:84px;
}
.devm01-page-stack > * + *{
	margin-top:128px;
}
.devm01-page-stack > .devm01-metric-grid,
.devm01-page-stack > .devm01-value-grid,
.devm01-page-stack > .devm01-detail-cards,
.devm01-page-stack > .devm01-process-line,
.devm01-page-stack > .devm01-related-links{
	margin-top:104px;
}
.devm01-process-line{
	background:linear-gradient(135deg,var(--c-primary, #071C35),var(--c-deep, #123B66));
}
.devm01-process-line b::before{
	content:"";
	display:block;
	width:22px;
	height:2px;
	margin-bottom:14px;
	background:var(--c-accent-light);
}
@media (max-width:1024px){
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:56px 40px;
	}
	.devm01-page-stack > * + *{
		margin-top:96px;
	}
}
@media (max-width:768px){
	#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta){
		padding:32px 22px;
	}
	.devm01-page-stack > * + *{
		margin-top:62px;
	}
	.devm01-page-stack > .devm01-metric-grid,.devm01-page-stack > .devm01-value-grid,.devm01-page-stack > .devm01-detail-cards,.devm01-page-stack > .devm01-process-line,.devm01-page-stack > .devm01-related-links{
		margin-top:58px;
	}
}
/* Full Theme QA: sub spacing,
inner width,
content title,
org hierarchy */
.devm01-inner,
.devm01-inner-lg{
	max-width:var(--devm01-inner, 1280px);
	margin-left:auto;
	margin-right:auto;
	padding-left:24px;
	padding-right:24px;
}
.devm01-sub-nav + .devm01-content-page{
	margin-top:88px !important;
}
.devm01-content-shell{
	width:min(100% - 48px,
var(--devm01-inner, 1280px)) !important;
	max-width:var(--devm01-inner, 1280px) !important;
	padding-left:0 !important;
	padding-right:0 !important;
}
.devm01-content-intro{
	margin:0 0 48px;
	padding:0 0 36px;
	border-bottom:1px solid var(--devm01-gray-200, #E5EAF0);
}
.devm01-content-intro h2{
	max-width:860px;
	margin:10px 0 0;
	font-size:40px;
	line-height:1.32;
}
.devm01-content-intro p{
	max-width:760px;
	margin:16px 0 0;
	font-size:18px;
	line-height:1.8;
	color:var(--devm01-gray-600, #6B7280);
}
#ctt_con.devm01-sub-content > div:first-child:not(.devm01-bottom-cta):not(.devm01-content-intro){
	padding-top:64px;
}
@media (max-width:1024px){
	.devm01-sub-nav + .devm01-content-page{
		margin-top:78px !important;
	}
	.devm01-content-intro h2{
		font-size:34px;
	}
}
@media (max-width:768px){
	.devm01-inner,
.devm01-inner-lg{
		padding-left:20px;
		padding-right:20px;
	}
	.devm01-sub-nav + .devm01-content-page{
		margin-top:52px !important;
	}
	.devm01-content-shell{
		width:calc(100% - 40px) !important;
	}
	.devm01-content-intro{
		margin-bottom:34px;
		padding-bottom:26px;
	}
	.devm01-content-intro h2{
		font-size:28px;
	}
	.devm01-content-intro p{
		font-size:16px;
	}
}
/* Additional QA polish: content to footer visual harmony */
.devm01-content-page{
	padding-bottom:150px;
}
.devm01-content-page::after{
	content:"";
	display:block;
	height:1px;
	margin-top:24px;
	background:linear-gradient(90deg,transparent,rgba(7,28,53,.08),transparent);
}
.devm01-sub-content > .devm01-page-stack:last-child{
	margin-bottom:8px;
}
@media (max-width:768px){
	.devm01-content-page{
		padding-bottom:104px;
	}
}
/* Content image zoom affordance */
.devm01-sub-content .devm01-fancybox-link{
	display:inline-block;
	overflow:hidden;
	border-radius:var(--devm01-radius-lg, 24px);
}
.devm01-sub-content .devm01-fancybox-link img{
	display:block;
	transition:transform 620ms var(--devm01-ease, cubic-bezier(.22, 1, .36, 1)),
filter 620ms var(--devm01-ease, cubic-bezier(.22, 1, .36, 1));
}
.devm01-sub-content .devm01-fancybox-link:hover img{
	transform:scale(1.035);
	filter:saturate(1.04) contrast(1.02);
}
/* Mobile QA: crisp sub visuals and one-column organization flow */
@media (max-width:768px){
	.devm01-large-image::after{
		opacity:.18;
	}
}
/* Sub typography QA: Lexend rhythm */
.devm01-sub-content h2,.devm01-content-intro h2{
	font-weight:bold;
	letter-spacing:-.035em;
}
.devm01-sub-content p{
}
/* DevM01 file-based PHP subpages */
.devm01-page .devm01-content-shell{
	width:min(100% - 48px,
var(--devm01-inner, var(--devm01-main-width, 1280px)));
	max-width:var(--devm01-inner, var(--devm01-main-width, 1280px));
	margin:0 auto;
}
.devm01-page #ctt_con.devm01-sub-content > .devm01-page-stack{
	padding:0;
	border:0;
	background:transparent;
	box-shadow:none;
	overflow:visible;
}
.devm01-page #ctt_con.devm01-sub-content > .devm01-page-stack::before{
	display:none;
}
.devm01-page .devm01-page-stack{
	width:100%;
}
@media (max-width:768px){
	.devm01-page .devm01-content-shell{
		width:calc(100% - 40px);
	}
}
.devm01-page .devm01-content-intro .devm01-eyebrow,
.devm01-content-page > .devm01-page-header .devm01-eyebrow{
	display:none !important;
}
/* 하위 메뉴를 본문 왼쪽에 세로로 표시하는 방식입니다. 테마 설정 > 서브페이지에서 선택하십시오. */
@media (min-width:1025px){
	#devm01-container.devm01-container--localnav-side > .devm01-inner-wrap--default{
		margin-top:56px;
	}
	#devm01-container.devm01-container--localnav-side > .devm01-body-title + .devm01-inner-wrap--default{
		margin-top:0;
	}
	#devm01-container.devm01-container--localnav-side > .devm01-inner-wrap{
		width:100%;
		max-width:none;
	}
	.devm01-container--localnav-side > .devm01-inner-wrap .devm01-inner,
	.devm01-container--localnav-side > .devm01-inner-wrap .devm01-content-shell{
		width:100% !important;
		max-width:none !important;
		padding-left:0;
		padding-right:0;
	}
}
