/* LOGISFACTORY design system — brand tokens & alignment */

/* =========================================================
   LOGISFACTORY Balanced Brand Theme
   Header main color: #0a32b1
   Other areas use restrained light/dark variations
   ========================================================= */
:root{
	--navy:#0a32b1;
	--navy2:#244a9f;
	--blue:#315fbd;
	--blue2:#204a9f;
	--cyan:#8fb4e8;
	--ink:#1d2b44;
	--muted:#68758a;
	--line:#e2e7ef;
	--bg:#f8fafc;
	--white:#fff;
	--shadow:0 18px 48px rgba(31,52,88,.08);
	--shadow2:0 28px 72px rgba(31,52,88,.13);
}

/* Header: brand color emphasized */
.nav{
	background:#0a32b1!important;
	border-bottom:1px solid rgba(255,255,255,.16)!important;
	box-shadow:0 10px 28px rgba(10,50,177,.22)!important;
}
.menu,
.menu-link,
.logo{color:#fff!important;}
.menu a:hover,
.menu-link:hover{color:#dce5ff!important;}
.submenu{
	border-color:#e1e7f2!important;
	box-shadow:0 18px 46px rgba(28,46,80,.14)!important;
}
.submenu a{
	color:#243653!important;
}
.submenu a:hover{
	background:#f4f6fb!important;
	color:#0a32b1!important;
}

/* Mobile navigation */
.mobile-menu-btn{
	background:#fff!important;
	color:#0a32b1!important;
	border-color:rgba(255,255,255,.42)!important;
}
.mobile-menu-inner a{
	background:#f7f9fc!important;
	border-color:#e1e7ef!important;
	color:#26364f!important;
}
.mobile-menu-inner .mobile-primary{
	background:#0a32b1!important;
	color:#fff!important;
}
.mobile-menu-panel{
	border-top-color:#e1e7ef!important;
	box-shadow:0 18px 46px rgba(28,46,80,.14)!important;
}
.mobile-menu-inner a:hover{
	background:#eef3fa!important;
	color:#0a32b1!important;
}

/* Hero: neutral dark overlay, not blue-heavy */
.hero,
.hero-video-bg{
	background-color:#1e2b40!important;
}
.hero-video-bg video{
	filter:saturate(.92) contrast(1.04) brightness(.90)!important;
}
.hero-overlay{
	background:
		linear-gradient(90deg,
			rgba(18,28,44,.78) 0%,
			rgba(28,42,62,.56) 40%,
			rgba(37,52,72,.24) 72%,
			rgba(18,28,44,.46) 100%),
		linear-gradient(180deg,
			rgba(0,0,0,.18) 0%,
			rgba(0,0,0,.06) 50%,
			rgba(20,31,48,.56) 100%)!important;
}
.hero .eyebrow{
	background:rgba(255,255,255,.14)!important;
	border-color:rgba(255,255,255,.28)!important;
	color:#edf2ff!important;
}
.hero h1 strong{
	color:#cddcff!important;
}
.hero p{
	color:rgba(255,255,255,.88)!important;
}
.hero-badges span{
	background:rgba(255,255,255,.14)!important;
	border-color:rgba(255,255,255,.18)!important;
	color:#fff!important;
}
.hero-badges span:before{
	background:#fff!important;
	color:#0a32b1!important;
}

/* Buttons: blue only where needed */
.btn.primary{
	background:#0a32b1!important;
	box-shadow:0 12px 28px rgba(10,50,177,.22)!important;
}
.btn.primary:hover{
	background:#08298f!important;
}
.btn.ghost{
	background:#fff!important;
	border-color:#d9e0eb!important;
	color:#233451!important;
}

/* General typography */
.eyebrow{
	background:#f4f6fb!important;
	border-color:#dfe5ef!important;
	color:#31589e!important;
}
.section-kicker{
	color:#31589e!important;
}
.section-head h2,
.strength-box h2,
.card h3,
.q b,
.network-list b,
.case-body h3,
.history-card b,
.cta-box h2{
	color:#263752!important;
}

/* Main section backgrounds: mostly neutral */
.services{
	background:linear-gradient(180deg,#fff,#f8fafc)!important;
}
.healthcare{
	background:#fff!important;
}
.network{
	background:#f7f9fc!important;
}
.history{
	background:linear-gradient(180deg,#fff 0%,#f8fafc 48%,#f3f6fa 100%)!important;
}
.cta{
	background:#fff!important;
}

/* Cards */
.strength-box{
	background:#fff!important;
	border-color:#e4e9f0!important;
	box-shadow:0 24px 62px rgba(29,43,68,.11)!important;
}
.strength-item,
.card,
.q,
.network-list div,
.case-card,
.history-intro-card,
.history-card,
.large-map,
.timeline{
	background:#fff!important;
	border-color:#e2e7ef!important;
	box-shadow:0 10px 28px rgba(31,52,88,.06)!important;
}
.strength-icon,
.icon{
	background:#eef3fa!important;
	color:#31589e!important;
}
.card{
	position:relative;
	overflow:hidden;
}
.card:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:4px;
	background:#b8c7dd;
}
.card:nth-child(2n):before{
	background:#8ea8ca;
}
.card:hover,
.strength-item:hover,
.q:hover,
.network-list div:hover,
.case-card:hover,
.history-intro-card:hover,
.history-card:hover{
	border-color:#cbd5e2!important;
	box-shadow:0 18px 44px rgba(31,52,88,.10)!important;
}

/* Image overlays use neutral navy-gray */
.photo-panel:after{
	background:linear-gradient(180deg,
		rgba(24,36,54,.04),
		rgba(24,36,54,.62))!important;
}
.health-visual:after{
	background:linear-gradient(90deg,
		rgba(255,255,255,.96),
		rgba(255,255,255,.58) 54%,
		rgba(31,45,65,.10))!important;
}
.case-img:after{
	background:linear-gradient(180deg,transparent,rgba(24,36,54,.46))!important;
}

/* Map: muted blue */
.network:before{
	background-image:
		linear-gradient(90deg,rgba(49,89,158,.035) 1px,transparent 1px),
		linear-gradient(rgba(49,89,158,.035) 1px,transparent 1px)!important;
}
.route{
	stroke:#8fa9ca!important;
	filter:drop-shadow(0 0 4px rgba(80,110,150,.35))!important;
}
.route.blue{
	stroke:#31589e!important;
}
.pin-dot{
	fill:#31589e!important;
	filter:drop-shadow(0 0 6px rgba(49,88,158,.42))!important;
}

/* History: understated */
.history:before{
	background:
		radial-gradient(circle at 10% 18%,rgba(49,89,158,.06),transparent 28%),
		radial-gradient(circle at 88% 16%,rgba(143,169,202,.07),transparent 30%),
		linear-gradient(90deg,rgba(49,89,158,.025) 1px,transparent 1px),
		linear-gradient(rgba(49,89,158,.025) 1px,transparent 1px)!important;
	background-size:auto,auto,58px 58px,58px 58px!important;
}
.timeline:before{
	background:linear-gradient(to bottom,#b5c4d9,#31589e,rgba(49,89,158,.08))!important;
}
.year{
	background:#31589e!important;
	box-shadow:0 0 0 8px rgba(49,89,158,.07)!important;
}
.history-card{
	background:linear-gradient(180deg,#fff,#f8fafc)!important;
}
.history-tag{
	color:#31589e!important;
	background:#eef3fa!important;
	border-color:#d8e1ed!important;
}
.fill{
	background:linear-gradient(90deg,#31589e,#9ab0cc)!important;
}
.highlight{
	background:#f2f5f9!important;
	color:#5f6d82!important;
}

/* CTA */
.cta-box{
	border-color:#e1e6ed!important;
	background-image:
		linear-gradient(90deg,
			rgba(255,255,255,.98),
			rgba(255,255,255,.91) 48%,
			rgba(242,245,249,.72)),
		url("/images/logisfactory_main_20260703.png")!important;
}

/* Footer: header blue (#0a32b1)와 연결되는 짙은 브랜드 블루 */
.footer{
	background:linear-gradient(180deg,#08298f 0%,#061f66 100%)!important;
	color:rgba(255,255,255,.76)!important;
	border-top:1px solid rgba(255,255,255,.12)!important;
}
.footer h4,
.footer .logo{
	color:#fff!important;
}
.footer p,
.footer li,
.footer li a{
	color:rgba(255,255,255,.76)!important;
}
.footer li a:hover,
.footer-menu a:hover,
.footer a:hover{
	color:#fff!important;
}
.footer-menu{
	border-top-color:rgba(255,255,255,.14)!important;
}
.copy{
	color:rgba(255,255,255,.56)!important;
}

/* Floating buttons: footer와 확실히 구분되는 상담/문의 컬러 */
.float a{
	border:1px solid rgba(255,255,255,.28)!important;
	transition:transform .2s ease,box-shadow .2s ease,filter .2s ease!important;
}
.float a:first-child{
	background:linear-gradient(135deg,#00bcd4 0%,#008fa3 100%)!important;
	box-shadow:0 12px 30px rgba(0,188,212,.34)!important;
}
.float a:last-child{
	background:linear-gradient(135deg,#4f7cff 0%,#1748d1 100%)!important;
	box-shadow:0 12px 30px rgba(47,109,255,.34)!important;
}
.float a:hover{
	transform:translateY(-2px)!important;
	filter:brightness(1.06)!important;
}

@media(max-width:640px){
	.year{
		background:#31589e!important;
		box-shadow:
			0 14px 30px rgba(49,89,158,.18),
			0 0 0 9px rgba(49,89,158,.06)!important;
	}
	.history-card:before{
		background:#8fa9ca!important;
	}
}

/* Sub pages (jobs reference) */

/* =========================================================
   LOGISFACTORY Jobs Page - Main Brand Theme Alignment
   Reference tone: logisfactory_video_hero_strength_pictograms
   Main brand blue: #0a32b1
   ========================================================= */

/* Sub hero: restrained navy-blue photo treatment */
.sub-hero{
	padding:112px 0 68px !important;
	background:
		linear-gradient(90deg,
			rgba(18,28,44,.90) 0%,
			rgba(28,42,62,.77) 42%,
			rgba(10,50,177,.52) 100%),
		url("/images/lf_bg_ori.png") center/cover no-repeat !important;
}
.sub-hero:before{
	background:
		radial-gradient(circle at 12% 24%,rgba(255,255,255,.12),transparent 29%),
		radial-gradient(circle at 88% 18%,rgba(143,180,232,.13),transparent 30%) !important;
}
.sub-hero:after{
	background:
		linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
		linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px) !important;
	background-size:64px 64px !important;
	opacity:.78 !important;
}
.breadcrumb{
	color:rgba(255,255,255,.72) !important;
}
/*.eyebrow{
	background:rgba(255,255,255,.14) !important;
	border-color:rgba(255,255,255,.28) !important;
	color:#edf2ff !important;
}*/
.sub-hero h1{
	color:#fff !important;
	text-shadow:0 14px 38px rgba(0,0,0,.20);
}
.sub-hero p{
	color:rgba(255,255,255,.86) !important;
}

/* Page background */
.jobs-section{
	background:linear-gradient(180deg,#fff 0%,#f8fafc 48%,#f3f6fa 100%) !important;
}

/* Summary strip */
.jobs-summary{
	background:#fff !important;
	border-color:#e2e7ef !important;
	box-shadow:0 12px 32px rgba(31,52,88,.07) !important;
}
.summary-card{
	border-right-color:#e2e7ef !important;
}
.summary-card b{
	color:#31589e !important;
}
.summary-card span{
	color:#68758a !important;
}

/* Search/filter card */
.search-card{
	background:#fff !important;
	border-color:#e2e7ef !important;
	box-shadow:0 14px 38px rgba(31,52,88,.07) !important;
}
.search-title h2,
.field label{
	color:#263752 !important;
}
.search-title p{
	color:#68758a !important;
}
.field select,
.field input{
	background:#f8fafc !important;
	border-color:#dfe5ed !important;
	color:#1d2b44 !important;
}
.field select:focus,
.field input:focus{
	border-color:#8fa9ca !important;
	box-shadow:0 0 0 4px rgba(49,89,158,.09) !important;
}

/* Buttons */
.btn.primary{
	background:#0a32b1 !important;
	box-shadow:0 12px 28px rgba(10,50,177,.22) !important;
}
.btn.primary:hover{
	background:#08298f !important;
}
.btn.ghost{
	background:#fff !important;
	border-color:#d9e0eb !important;
	color:#263752 !important;
}

/* Result controls */
.list-count strong{
	color:#31589e !important;
}
.sort-mini a{
	background:#fff !important;
	border-color:#dfe5ed !important;
	color:#68758a !important;
}
.sort-mini a:hover{
	background:#f4f7fb !important;
	color:#31589e !important;
	border-color:#b8c8df !important;
}

/* Desktop table */
.job-table-wrap{
	background:#fff !important;
	border-color:#e2e7ef !important;
	box-shadow:0 14px 38px rgba(31,52,88,.07) !important;
}
.job-table thead{
	background:linear-gradient(180deg,#f4f7fb 0%,#eef3fa 100%) !important;
}
.job-table th{
	color:#263752 !important;
	border-bottom-color:#dfe5ed !important;
}
.job-table td{
	border-bottom-color:#e7ebf1 !important;
}
.job-table tbody tr{
	transition:background .18s ease;
}
.job-table tbody tr:hover{
	background:#f7f9fc !important;
}
.job-no a{
	background:#eef3fa !important;
	color:#31589e !important;
}
.job-title,
.amount,
.left{
	color:#263752 !important;
}
.job-title:hover{
	color:#0a32b1 !important;
}

/* Badges: muted corporate palette */
.badge.blue{
	background:#eaf0f8 !important;
	color:#31589e !important;
}
.badge.gray{
	background:#f0f3f7 !important;
	color:#5e6c80 !important;
}
.badge.cyan{
	background:#edf4fb !important;
	color:#5478a5 !important;
}
.badge.gold{
	background:#f7f3e8 !important;
	color:#8b7136 !important;
}
.badge.dark{
	background:#e9edf3 !important;
	color:#263752 !important;
}

/* Mobile cards */
.job-card{
	background:#fff !important;
	border-color:#e2e7ef !important;
	box-shadow:0 12px 30px rgba(31,52,88,.06) !important;
	transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.job-card:hover{
	transform:translateY(-3px);
	border-color:#cbd5e2 !important;
	box-shadow:0 18px 44px rgba(31,52,88,.10) !important;
}
.job-card-title,
.job-card-info b,
.money-box b{
	color:#263752 !important;
}
.job-card-title:hover{
	color:#0a32b1 !important;
}
.job-card-info div,
.money-box{
	background:#f8fafc !important;
	border-color:#dfe5ed !important;
}
.job-card-meta,
.job-card-info span,
.money-box span{
	color:#68758a !important;
}

/* Responsive refinements */
@media(max-width:760px){
	.sub-hero{
		padding:108px 0 42px !important;
	}
	.jobs-summary,
	.search-card,
	.job-card{
		border-radius:20px !important;
	}
}

/* Main home: solid header on scroll pages uses hero exception below */
body.main-page .nav {
	background: rgba(10, 50, 177, .55) !important;
	backdrop-filter: blur(18px);
}
body.main-page.scrolled .nav,
body.main-page .nav.is-solid {
	background: #0a32b1 !important;
}

/* —— Sub pages: notice / Q&A / login / forms / pagination (jobs_design_blue tone) —— */

.nav-cta-link {
	border-color: rgba(255, 255, 255, .28) !important;
	color: #fff !important;
}

.nav-cta-link:hover {
	background: rgba(255, 255, 255, .16) !important;
	color: #fff !important;
}

.notice-section,
.qna-section,
.detail-section,
.join-section,
.mypage-section,
.policy-section,
.greeting-section,
.location-section,
.org-section,
.estimate-section {
	background: linear-gradient(180deg, #fff 0%, #f8fafc 48%, #f3f6fa 100%) !important;
}

.notice-summary,
.qna-top,
.search-card,
.card,
.mypage-form-card,
.mypage-card,
.policy-document,
.greeting-document,
.location-info,
.notice-table-wrap,
.qna-table-wrap,
.job-table-wrap,
.notice-article,
.qna-article {
	border-color: #e2e7ef !important;
	box-shadow: 0 14px 38px rgba(31, 52, 88, .07) !important;
}

.notice-table thead,
.qna-table thead,
.job-table thead {
	background: linear-gradient(180deg, #f4f7fb 0%, #eef3fa 100%) !important;
}

.notice-table th,
.qna-table th,
.job-table th {
	color: #263752 !important;
	border-bottom-color: #dfe5ed !important;
}

.notice-table tbody tr:hover,
.qna-table tbody tr:hover,
.job-table tbody tr:hover {
	background: #f7f9fc !important;
	transition: background .18s ease;
}

.notice-title a:hover,
.qna-title a:hover {
	color: #0a32b1 !important;
}

.field select,
.field input,
.form-control,
.login-page .form-control,
.join-section .form-control,
.join-section .form-select,
.mypage-section .form-control,
.estimate-section .input,
.estimate-section .select,
textarea.form-control {
	background: #f8fafc !important;
	border-color: #dfe5ed !important;
	color: #1d2b44 !important;
	border-radius: 14px !important;
}

.field select:focus,
.field input:focus,
.form-control:focus,
.login-page .form-control:focus,
.join-section .form-control:focus,
.join-section .form-select:focus {
	border-color: #8fa9ca !important;
	box-shadow: 0 0 0 4px rgba(49, 89, 158, .09) !important;
}

.btn.primary,
.login-page .login-btn,
.join-section .btn-primary,
.sort-mini a.active,
.job-pagination a.active,
.notice-pagination a.active {
	background: #0a32b1 !important;
	box-shadow: 0 12px 28px rgba(10, 50, 177, .22) !important;
	border-color: transparent !important;
	color: #fff !important;
}

.btn.primary:hover,
.login-page .login-btn:hover {
	background: #08298f !important;
	transform: translateY(-2px);
}

.btn.ghost,
.btn-outline-secondary {
	background: #fff !important;
	border-color: #d9e0eb !important;
	color: #263752 !important;
}

.sort-mini a,
.job-pagination a,
.notice-pagination a {
	border-color: #dfe5ed !important;
	color: #68758a !important;
	transition: .18s ease;
}

.sort-mini a:hover,
.job-pagination a:hover,
.notice-pagination a:hover {
	background: #f4f7fb !important;
	color: #31589e !important;
	border-color: #b8c8df !important;
}

.badge.blue,
.article-badge,
.status-done {
	background: #eef3fa !important;
	color: #31589e !important;
}

.badge.gray {
	background: #f0f3f7 !important;
	color: #5e6c80 !important;
}

.badge.gold,
.detail-badges .badge.recommend {
	background: #f7f3e8 !important;
	color: #8b7136 !important;
	animation: none !important;
	box-shadow: none !important;
	border: 1px solid #e8dcc4 !important;
}

.badge.gold::after,
.detail-badges .badge.recommend::after {
	display: none !important;
}

.job-card,
.notice-card,
.qna-card,
.mypage-card,
.team-card,
.transport-card {
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.job-card:hover,
.notice-card:hover,
.qna-card:hover,
.mypage-card:hover,
.team-card:hover,
.transport-card:hover,
.card:hover {
	transform: translateY(-3px);
	border-color: #cbd5e2 !important;
	box-shadow: 0 18px 44px rgba(31, 52, 88, .10) !important;
}

.login-page {
	background:
		linear-gradient(135deg, rgba(18, 28, 44, .92), rgba(10, 50, 177, .72)),
		url("/images/logisfactory_main_20260703.png") center/cover fixed no-repeat !important;
}

.search-title h2,
.field label,
.form-group label,
.mypage-form-card h2,
.policy-doc-head h2 {
	color: #263752 !important;
}

.list-count strong,
.notice-summary strong,
.qna-top strong {
	color: #31589e !important;
}

@media (max-width: 760px) {
	.search-card,
	.notice-table-wrap,
	.qna-table-wrap,
	.mypage-form-card,
	.notice-card,
	.qna-card {
		border-radius: 20px !important;
	}
}
