:root {
	--forest: #1c3a2a;
	--leaf: #2f5e41;
	--mint: #a0c4ae;
	--cream: #f4efe3;
	--wheat: #e6d9c0;
	--gold: #8a6500;
	--gold2: #f5c65a;
	--muted: #5a5a5a;
	--dark: #0c1c12;
	--radius: 12px;
	--max: 1240px;
	--main-w: 1400px;
	--sidebar-w: 260px;
	--content-w: 1400px;
	--sub-layout-w: var(--content-w);
	--nav-brand-w: clamp(280px, 25vw, 360px);
	--nav-menu-w: 900px;
	--nav-actions-w: 166px;
	--nav-gap: 18px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

body {
	margin: 0;
	font-family: "Noto Sans KR", "Pretendard", "Malgun Gothic", Arial, sans-serif;
	font-size: 16px;
	color: #1a1a1a;
	background: #f8f5ef;
	line-height: 1.7;
	overflow-x: hidden;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover,
a:focus {
	color: var(--gold);
	text-decoration: none;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}

caption,
.sr-only,
.visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.wrap-gagong {
	min-height: 100vh;
	background: #f8f5ef;
}

.skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 5000;
	padding: 10px 14px;
	background: #fff;
	color: #000;
}

.skip-link:focus {
	left: 10px;
	top: 10px;
	outline: 3px solid #000;
	outline-offset: 2px;
}

.site-nav {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	z-index: 1000;
	display: grid;
	grid-template-columns: var(--nav-brand-w) minmax(0, 1fr) var(--nav-actions-w);
	align-items: center;
	gap: var(--nav-gap);
	height: 70px;
	padding: 0 40px;
	background: rgba(5, 22, 12, .68);
	border-bottom: 2px solid rgba(184, 146, 42, .86);
	box-shadow: 0 10px 28px rgba(0, 0, 0, .18);
}

.nav-brand {
	display: flex;
	align-items: center;
	gap: 10px;
	width: 100%;
	min-width: 0;
}

.brand-mark {
	display: inline-flex;
	align-items: center;
	width: 44px;
	height: 42px;
	justify-content: center;
	overflow: visible;
	flex: 0 0 44px;
}

.brand-mark img {
	width: 100%;
	max-width: 100%;
	height: 100%;
	object-fit: contain;
}

.brand-name {
	font-family: "Noto Serif KR", serif;
	font-size: 19px;
	font-weight: 800;
	color: #fff;
	letter-spacing: 0;
	text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}

.brand-sub {
	margin-top: 1px;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: .08em;
	color: rgba(255, 255, 255, .78);
	text-shadow: 0 2px 10px rgba(0, 0, 0, .35);
}

.pc-nav {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(0, 1fr);
	align-items: stretch;
	justify-content: stretch;
	gap: 0;
	justify-self: end;
	width: min(100%, var(--nav-menu-w));
	min-width: 0;
}

.pc-nav > li {
	position: relative;
}

.pc-nav > li > a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 70px;
	padding: 0 6px;
	color: #fff;
	font-size: 15px;
	font-weight: 800;
	text-align: center;
	word-break: keep-all;
	text-shadow: 0 2px 10px rgba(0, 0, 0, .42);
}

.pc-nav > li.active > a,
.pc-nav > li > a.active,
.pc-nav > li:hover > a,
.pc-nav > li:focus-within > a {
	color: var(--gold2);
}

.pc-nav > li > a.active::after,
.pc-nav > li:hover > a::after,
.pc-nav > li:focus-within > a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 2px;
	background: var(--gold);
}

.mega-menu {
	position: absolute;
	left: 0;
	right: 0;
	top: 70px;
	z-index: 999;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-8px);
	background: rgba(5, 28, 14, .98);
	border-top: 0;
	border-bottom: 1px solid rgba(184, 146, 42, .28);
	box-shadow: 0 24px 42px rgba(0, 0, 0, .2);
	transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}

.mega-menu.open {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	transform: translateY(0);
}

.mega-inner {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(0, 1fr);
	gap: 0;
	width: min(var(--nav-menu-w), calc(100% - 80px - var(--nav-brand-w) - var(--nav-actions-w) - var(--nav-gap) - var(--nav-gap)));
	margin: 0 calc(40px + var(--nav-actions-w) + var(--nav-gap)) 0 auto;
	padding: 30px 0 34px;
}

.mega-col {
	min-height: 142px;
	padding: 2px 18px;
	border-left: 1px solid rgba(255, 255, 255, .1);
}

.mega-col:last-child {
	border-right: 1px solid rgba(255, 255, 255, .1);
}

.mega-col h6 {
	margin: 0 0 16px;
	color: var(--gold2);
	font-size: 13px;
	font-weight: 900;
}

.mega-col a {
	display: block;
	padding: 7px 0;
	color: rgba(255, 255, 255, .82);
	font-size: 15px;
	font-weight: 700;
}

.mega-col a:hover,
.mega-col a:focus {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 4px;
}

.nav-actions {
	display: flex;
	align-items: center;
	gap: 10px;
}

.nav-right-group {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 6px;
	width: 100%;
	min-width: 0;
}

.admin-nav-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 6px;
	background: rgba(255, 255, 255, .94);
	color: var(--forest);
	font-size: 17px;
	font-weight: 900;
	line-height: 1;
	box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
}

.admin-nav-icon:hover,
.admin-nav-icon:focus {
	background: #fff;
	color: var(--gold);
}

.btn-reserve {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 120px;
	min-height: 38px;
	padding: 0 16px;
	border-radius: 6px;
	background: var(--gold);
	color: #fff;
	box-shadow: 0 8px 20px rgba(0, 0, 0, .18);
	font-weight: 800;
	font-size: 14px;
	line-height: 1;
	white-space: nowrap;
	transition: background-color .18s ease, color .18s ease, box-shadow .18s ease;
}

.btn-reserve::before {
	content: "";
	width: 15px;
	height: 15px;
	flex: 0 0 15px;
	background: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3Cpath d='m9 16 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Crect width='18' height='18' x='3' y='4' rx='2'/%3E%3Cpath d='M3 10h18'/%3E%3Cpath d='m9 16 2 2 4-4'/%3E%3C/svg%3E") center / contain no-repeat;
}

.site-nav .btn-reserve,
.site-nav .btn-reserve:hover,
.site-nav .btn-reserve:focus {
	color: #fff !important;
}

.site-nav .btn-reserve::before {
	background: #fff;
}

.btn-reserve:hover,
.btn-reserve:focus {
	background: var(--forest);
	color: #fff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .24);
}

.drawer-open,
.hamburger {
	display: none;
	width: 42px;
	height: 42px;
	border-color: rgba(255, 255, 255, .3);
	border: 1px solid rgba(255, 255, 255, .3);
	border-radius: 8px;
	background: rgba(255, 255, 255, .08);
	color: #fff;
	cursor: pointer;
}

.hamburger span {
	display: block;
	width: 20px;
	height: 2px;
	margin: 5px auto;
	background: #fff;
}

.drawer-overlay {
	position: fixed;
	inset: 0;
	z-index: 1900;
	display: none;
	background: rgba(12, 28, 18, .45);
}

.drawer {
	position: fixed;
	right: 0;
	top: 0;
	z-index: 2000;
	width: min(86vw, 380px);
	height: 100vh;
	padding: 22px;
	background: #fff;
	box-shadow: -18px 0 36px rgba(0, 0, 0, .18);
	transform: translateX(100%);
	transition: transform .24s ease;
	overflow-y: auto;
}

.drawer.is-open {
	transform: translateX(0);
}

.drawer-overlay.is-open {
	display: block;
}

.drawer-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 18px;
}

.drawer .nav-brand {
	flex: 1 1 auto;
	min-width: 0;
}

.drawer .nav-brand > div {
	min-width: 0;
}

.drawer .brand-name {
	color: var(--forest);
	text-shadow: none;
}

.drawer .brand-sub {
	display: block;
	white-space: nowrap;
	font-size: 9px;
	letter-spacing: 0;
	color: var(--muted);
	text-shadow: none;
}

.drawer-close {
	width: 38px;
	height: 38px;
	border: 1px solid var(--wheat);
	border-radius: 9px;
	background: #fff;
	color: var(--forest);
	font-size: 24px;
	font-weight: 900;
	line-height: 1;
	cursor: pointer;
}

.drawer-nav a {
	display: block;
	padding: 13px 4px;
	border-bottom: 1px solid var(--wheat);
	color: var(--forest);
	font-weight: 800;
}

.drawer-sub {
	padding: 4px 0 10px 14px;
}

.drawer-sub:empty {
	display: none;
}

.drawer-sub a {
	padding: 8px 4px;
	border: 0;
	color: var(--muted);
	font-size: 14px;
	font-weight: 500;
}

.hero {
	position: relative;
	min-height: 100vh;
	display: flex;
	align-items: center;
	overflow: hidden;
	background: var(--dark);
	color: #fff;
}

.hc-wrap {
	position: absolute;
	inset: 0;
	overflow: hidden;
}

.hc-track {
	display: flex;
	width: 300%;
	height: 100%;
	transition: transform .7s ease;
}

.hc-slide {
	position: relative;
	flex: 0 0 33.3333%;
	height: 100%;
	overflow: hidden;
}

.hc-slide::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background:
		linear-gradient(90deg, rgba(4, 27, 14, .94) 0%, rgba(11, 39, 22, .74) 34%, rgba(9, 35, 20, .50) 64%, rgba(5, 27, 14, .72) 100%),
		linear-gradient(180deg, rgba(5, 19, 10, .12), rgba(5, 19, 10, .42));
}

.hc-slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	display: block;
}

.hc-caption {
	position: absolute;
	right: 46px;
	bottom: 34px;
	z-index: 2;
	text-align: right;
	color: rgba(255, 255, 255, .92);
}

.hc-caption-ko {
	font-size: 27px;
	font-family: "Noto Serif KR", serif;
	font-weight: 800;
	text-shadow: 0 2px 14px rgba(0, 0, 0, .48);
}

.hc-caption-en {
	font-size: 13px;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, .72);
}

.hero-content {
	position: relative;
	z-index: 2;
	width: min(100%, var(--main-w));
	margin: 0 auto;
	padding: 200px 0 150px;
	padding-right: 96px;
}

.hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 28px;
	padding: 10px 22px;
	border: 1px solid rgba(212, 170, 74, .5);
	border-radius: 999px;
	background: rgba(12, 28, 18, .62);
	color: var(--gold2);
	font-size: 14px;
	font-weight: 800;
}

.badge-dot {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--gold2);
}

.hero-sub {
	margin-bottom: 14px;
	color: rgba(255, 255, 255, .78);
	font-size: 26px;
	font-weight: 300;
}

.hero h1 {
	margin: 0 0 30px;
	font-family: "Noto Serif KR", serif;
	font-size: clamp(56px, 5.1vw, 88px);
	font-weight: 300;
	line-height: 1.14;
	letter-spacing: -.055em;
}

.hero h1 strong {
	color: var(--gold2);
	font-weight: 800;
}

.hero-desc {
	max-width: 760px;
	margin: 0 0 42px;
	color: rgba(255, 255, 255, .86);
	font-size: 19px;
	line-height: 1.85;
}

.hero-buttons,
.loc-btns {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.btn-hp,
.btn-hg,
.loc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 64px;
	padding: 0 32px;
	border-radius: 10px;
	font-weight: 800;
	font-size: 18px;
}

.btn-hp,
.loc-btn-g {
	background: var(--gold);
	color: var(--forest);
}

.hero-buttons .btn-hp {
	color: #fff;
}

.btn-hp:hover,
.loc-btn-g:hover {
	background: var(--gold2);
	color: var(--forest);
}

.hero-buttons .btn-hp:hover,
.hero-buttons .btn-hp:focus {
	color: #fff;
}

.btn-hg,
.loc-btn-o {
	border: 2px solid rgba(255, 255, 255, .28);
	color: #fff;
	background: rgba(255, 255, 255, .08);
}

.btn-hg:hover,
.loc-btn-o:hover {
	background: rgba(255, 255, 255, .18);
	color: #fff;
}

.hc-ctrl {
	position: absolute;
	right: 18px;
	left: auto;
	top: 50%;
	bottom: auto;
	z-index: 4;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 9px;
	transform: translateY(-50%);
	padding: 0;
	background: transparent;
	backdrop-filter: none;
}

.hc-arr,
.hc-counter {
	display: none;
}

.hc-dot {
	border: 0;
	background: transparent;
	color: #fff;
	cursor: pointer;
}

.hc-arr {
	display: none;
}

.hc-dot {
	width: 13px;
	height: 13px;
	border-radius: 50%;
	background: rgba(255, 255, 255, .74);
	border: 1px solid rgba(12, 28, 18, .72);
}

.hc-dot.active {
	width: 13px;
	background: var(--gold2);
}

.hc-counter {
	margin-left: 4px;
	color: rgba(255, 255, 255, .78);
	font-size: 13px;
	display: none;
}

.quick-bar {
	position: absolute;
	left: 50%;
	bottom: 0;
	z-index: 3;
	width: 100%;
	transform: translateX(-50%);
	background: rgba(5, 25, 13, .98);
	border-top: 1px solid rgba(160, 196, 174, .22);
	border-radius: 0;
	box-shadow: none;
	overflow: hidden;
}

.qb-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	width: 100%;
}

.qb-item {
	display: flex;
	align-items: center;
	gap: 14px;
	min-height: 112px;
	padding: 20px 52px;
	border-right: 1px solid rgba(160, 196, 174, .17);
	color: #fff;
}

.qb-item:last-child {
	border-right: 0;
}

.qb-icon {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	border-radius: 11px;
	background: rgba(184, 146, 42, .12);
	color: var(--gold);
	font-weight: 900;
}

.qb-text strong {
	display: block;
	font-size: 16px;
}

.qb-text span {
	display: block;
	color: rgba(255, 255, 255, .52);
	font-size: 13px;
}

.sec-tag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px;
	color: var(--leaf);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.sec-tag::before {
	content: "";
	width: 24px;
	height: 3px;
	border-radius: 2px;
	background: var(--gold);
}

.sec-title {
	margin: 0 0 14px;
	font-family: "Noto Serif KR", serif;
	font-size: clamp(26px, 2.8vw, 38px);
	font-weight: 300;
	line-height: 1.3;
	color: var(--forest);
	letter-spacing: -.025em;
}

.sec-title strong {
	font-weight: 800;
}

.sec-desc {
	margin: 0;
	color: var(--muted);
	font-size: 17px;
	line-height: 1.85;
}

.page2 {
	background: var(--cream);
}

.page2-inner,
.page3-inner {
	display: grid;
	grid-template-columns: 1.1fr 1fr;
	gap: 64px;
	align-items: start;
	max-width: var(--main-w);
	margin: 0 auto;
	padding: 72px 0;
}

.svc-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	margin-top: 24px;
}

.svc-card,
.res-card,
.loc-card,
.info-section,
.content-panel {
	background: #fff;
	border-radius: var(--radius);
	box-shadow: 0 8px 34px rgba(28, 58, 42, .09);
}

.svc-card {
	padding: 26px;
	border: 2px solid transparent;
	transition: all .24s ease;
}

.svc-card:hover {
	transform: translateY(-4px);
	border-color: rgba(184, 146, 42, .3);
}

.svc-icon {
	display: grid;
	place-items: center;
	width: 50px;
	height: 50px;
	margin-bottom: 16px;
	border-radius: 13px;
	background: linear-gradient(135deg, var(--forest), var(--leaf));
	color: #fff;
	font-weight: 900;
}

.svc-card h5 {
	margin: 0 0 8px;
	color: var(--forest);
	font-size: 17px;
}

.svc-card p {
	margin: 0;
	color: var(--muted);
	font-size: 15px;
}

.svc-card.featured {
	grid-column: span 2;
	background: linear-gradient(135deg, var(--forest), var(--leaf));
}

.svc-card.featured h5 {
	color: #fff;
}

.svc-card.featured p {
	color: rgba(255, 255, 255, .68);
}

.res-card {
	padding: 34px;
}

.res-card h4 {
	margin: 0 0 6px;
	font-family: "Noto Serif KR", serif;
	color: var(--forest);
	font-size: 22px;
}

.res-card .sub {
	margin: 0 0 20px;
	color: var(--muted);
}

.res-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 12px 0;
	border-bottom: 1px solid var(--wheat);
}

.res-label {
	color: var(--muted);
}

.res-val {
	color: var(--forest);
	font-weight: 800;
	text-align: right;
}

.btn-full {
	display: block;
	width: 100%;
	margin-top: 10px;
	padding: 15px;
	border-radius: 10px;
	text-align: center;
	font-weight: 800;
}

.btn-full.dark {
	background: var(--forest);
	color: #fff;
}

.btn-full.out {
	border: 2px solid var(--forest);
	color: var(--forest);
}

.steps-bar {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 10px;
	margin-top: 20px;
	padding: 22px 24px;
	border-radius: var(--radius);
	background: var(--wheat);
}

.step-node {
	flex: 1;
	text-align: center;
}

.step-circle {
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	margin: 0 auto 8px;
	border-radius: 50%;
	background: var(--forest);
	color: var(--gold2);
	font-family: "Noto Serif KR", serif;
	font-weight: 800;
}

.step-node span {
	color: var(--forest);
	font-size: 14px;
	font-weight: 800;
}

.step-arrow {
	color: var(--muted);
}

.page3 {
	background: #fff;
}

.ntabs {
	display: flex;
	width: fit-content;
	gap: 4px;
	margin-bottom: 20px;
	padding: 5px;
	border-radius: 10px;
	background: var(--wheat);
}

.ntab {
	border: 0;
	border-radius: 7px;
	padding: 10px 22px;
	background: transparent;
	color: var(--muted);
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.ntab.active {
	background: var(--forest);
	color: #fff;
}

.notice-list {
	border-top: 1px solid var(--wheat);
}

.notice-list[hidden],
.more-link[hidden] {
	display: none !important;
}

.notice-item {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	padding: 17px 0;
	border-bottom: 1px solid var(--wheat);
}

.nbadge {
	flex: 0 0 auto;
	margin-top: 3px;
	padding: 4px 12px;
	border-radius: 999px;
	background: rgba(47, 94, 65, .11);
	color: var(--leaf);
	font-size: 12px;
	font-weight: 800;
}

.nbadge.new {
	background: var(--gold);
	color: var(--forest);
}

.ntitle {
	margin-bottom: 3px;
	color: #1a1a1a;
	font-size: 17px;
	font-weight: 800;
}

.ndate {
	color: var(--muted);
	font-size: 14px;
}

.more-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	color: var(--leaf);
	font-weight: 800;
}

.loc-card {
	background: var(--forest);
	overflow: hidden;
}

.loc-map {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 190px;
	background: linear-gradient(135deg, #071810, #122a1c);
	overflow: hidden;
}

.map-grid {
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(212, 170, 74, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(212, 170, 74, .08) 1px, transparent 1px);
	background-size: 40px 40px;
}

.pin-icon {
	width: 48px;
	height: 48px;
	margin: 0 auto 14px;
	border-radius: 50% 50% 50% 0;
	background: var(--gold);
	transform: rotate(-45deg);
	box-shadow: 0 6px 22px rgba(184, 146, 42, .5);
}

.pin-icon span {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	color: var(--forest);
	font-weight: 900;
	transform: rotate(45deg);
}

.pin-addr {
	color: rgba(255, 255, 255, .78);
	font-size: 14px;
}

.loc-info {
	padding: 26px 30px;
}

.loc-row {
	display: flex;
	gap: 13px;
	margin-bottom: 16px;
}

.loc-ico {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	border: 1px solid rgba(212, 170, 74, .23);
	border-radius: 9px;
	background: rgba(212, 170, 74, .13);
	color: var(--gold2);
	font-weight: 900;
}

.loc-txt strong {
	display: block;
	margin-bottom: 2px;
	color: var(--gold2);
	font-size: 11px;
	letter-spacing: .08em;
}

.loc-txt span {
	color: rgba(255, 255, 255, .72);
	font-size: 14px;
}

.loc-btns {
	padding: 0 30px 26px;
}

.loc-btn {
	flex: 1;
	min-height: 44px;
}

.page-hero {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 260px;
	overflow: hidden;
	background-color: var(--forest);
	background-position: center;
	background-size: cover;
	color: #fff;
}

.page-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(90deg, rgba(10, 32, 20, .82), rgba(10, 32, 20, .58) 46%, rgba(10, 32, 20, .2)), radial-gradient(circle at 80% 50%, rgba(212, 170, 74, .18), transparent 55%);
	z-index: 0;
}

.page-hero-img1 { background-image: url("../../images/doc_hero_img1.png"); }
.page-hero-img2 { background-image: url("../../images/doc_hero_img2.png"); }
.page-hero-img3 { background-image: url("../../images/doc_hero_img3.png"); }
.page-hero-img4 { background-image: url("../../images/doc_hero_img4.png"); }
.page-hero-img5 { background-image: url("../../images/doc_hero_img5.png"); }
.page-hero-img6 { background-image: url("../../images/doc_hero_img6.png"); }

.page-hero-inner {
	position: relative;
	z-index: 1;
	width: min(var(--max), calc(100% - 40px));
	margin: 0 auto;
}

.page-hero-tag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	color: var(--gold2);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.page-hero h1 {
	margin: 0;
	font-family: "Noto Serif KR", serif;
	font-size: clamp(28px, 3.2vw, 42px);
}

.breadcrumb-bar {
	background: #fff;
	border-bottom: 1px solid var(--wheat);
}

.breadcrumb-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 48px;
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 40px;
}

.bc-list {
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--muted);
	font-size: 14px;
}

.bc-list strong {
	color: var(--forest);
}

.sub-body {
	display: grid;
	grid-template-columns: var(--sidebar-w) minmax(0, 1fr);
	gap: 40px;
	align-items: start;
	max-width: var(--sub-layout-w);
	margin: 0 auto;
	padding: 30px 0 60px;
}

.sidebar {
	position: sticky;
	top: 104px;
}

.sidebar-menu {
	background: #fff;
	border-radius: var(--radius);
	box-shadow: 0 2px 16px rgba(28, 58, 42, .07);
	overflow: hidden;
}

.sidebar-head {
	padding: 22px 24px;
	background: var(--forest);
}

.sidebar-head h3 {
	margin: 0;
	color: #fff;
	font-family: "Noto Serif KR", serif;
	font-size: 19px;
}

.sidebar-head p {
	margin: 3px 0 0;
	color: var(--mint);
	font-size: 12px;
	letter-spacing: .08em;
}

.snav-group {
	padding: 8px 0 0;
}

.snav-item {
	display: flex;
	align-items: center;
	gap: 6px;
	min-height: 54px;
	padding: 0 20px;
	border-left: 3px solid transparent;
	color: var(--muted);
	font-size: 15px;
	font-weight: 600;
	line-height: 1.4;
	text-decoration: none;
	word-break: keep-all;
}

.snav-item:hover,
.snav-item.active {
	border-left-color: var(--gold);
	background: rgba(184, 146, 42, .08);
	color: var(--forest);
	font-weight: 800;
}

.snav-arrow {
	flex: 0 0 auto;
	width: 10px;
	color: currentColor;
	font-family: Arial, sans-serif;
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.snav-label {
	min-width: 0;
}

.side-banner,
.side-hours {
	margin-top: 16px;
	border-radius: var(--radius);
}

.side-banner {
	display: block;
	padding: 24px;
	background: linear-gradient(135deg, var(--forest), var(--leaf));
	color: #fff;
	box-shadow: 0 4px 18px rgba(28, 58, 42, .2);
}

.side-banner p {
	margin: 0 0 4px;
	font-weight: 800;
}

.side-banner span {
	color: rgba(255, 255, 255, .62);
	font-size: 13px;
}

.side-hours {
	padding: 20px;
	background: #fff;
	box-shadow: 0 2px 12px rgba(28, 58, 42, .06);
}

.side-hours h4 {
	margin: 0 0 14px;
	color: var(--forest);
}

.hours-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 7px 0;
	border-bottom: 1px solid var(--wheat);
	font-size: 14px;
}

.hours-row:last-child {
	border-bottom: 0;
}

.hours-row .label {
	color: var(--muted);
}

.hours-row .val {
	color: var(--forest);
	font-weight: 800;
}

.hours-row .closed {
	color: #c43;
}

.content-panel {
	padding: 36px 40px;
	border: 1px solid rgba(230, 217, 192, .7);
}

.content-head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 28px;
	padding-bottom: 18px;
	border-bottom: 2px solid var(--forest);
}

.content-head h2 {
	margin: 0;
	color: var(--forest);
	font-family: "Noto Serif KR", serif;
	font-size: clamp(22px, 2vw, 30px);
}

.content-share {
	display: flex;
	gap: 8px;
}

.content-share button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	padding: 0;
	border: 1px solid var(--wheat);
	border-radius: 8px;
	background: #fff;
	color: var(--muted);
	font-size: 0;
	line-height: 1;
	cursor: pointer;
}

.content-share button::before {
	content: "";
	display: block;
	width: 17px;
	height: 17px;
	background: currentColor;
	-webkit-mask-position: center;
	-webkit-mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-position: center;
	mask-repeat: no-repeat;
	mask-size: contain;
}

.content-share button[onclick*="print"]::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9V2h12v7'/%3E%3Cpath d='M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M6 14h12v8H6z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9V2h12v7'/%3E%3Cpath d='M6 18H4a2 2 0 0 1-2-2v-5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2'/%3E%3Cpath d='M6 14h12v8H6z'/%3E%3C/svg%3E");
}

.content-share button[onclick*="clipboard"]::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12v7a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-7'/%3E%3Cpath d='M16 6l-4-4-4 4'/%3E%3Cpath d='M12 2v14'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12v7a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-7'/%3E%3Cpath d='M16 6l-4-4-4 4'/%3E%3Cpath d='M12 2v14'/%3E%3C/svg%3E");
}

.content-share button:hover,
.content-share button:focus {
	color: var(--forest);
}

.portal-body {
	color: #232323;
	font-size: 16px;
	line-height: 1.85;
}

.portal-body img {
	max-width: 100%;
	height: auto;
}

.board-portal .wTableFrm,
.board-portal .board {
	width: 100%;
	min-width: 0;
}

.board-portal .board > h1,
.board-portal .wTableFrm > h2 {
	display: none;
}

.board-portal .search_box {
	margin: 0 0 18px;
	padding: 16px 18px;
	border: 1px solid var(--wheat);
	border-radius: 10px;
	background: #fbfaf5;
}

.board-portal .search_box ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.board-portal .search_box li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
}

.board-portal .search_box input[type="text"] {
	width: min(320px, 100%);
}

.board-portal table {
	width: 100%;
	max-width: 100%;
	margin: 0;
	table-layout: fixed;
}

.board-portal .board_list th,
.board-portal .board_list td,
.board-portal .wTable th,
.board-portal .wTable td {
	vertical-align: middle;
	word-break: keep-all;
	overflow-wrap: anywhere;
}

.board-portal .board-detail-table {
	border-top: 1px solid var(--wheat) !important;
}

.board-portal .board_list td.left {
	text-align: left;
}

.board-portal .pagination {
	display: flex;
	justify-content: center;
	width: 100%;
	margin: 24px 0 0;
}

.board-portal .pagination ul {
	display: flex;
	gap: 4px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.board-portal .board-mobile-page-state {
	display: none;
}

.board-portal .pagination li a,
.board-portal .pagination li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	padding: 0 9px;
	border: 1px solid var(--wheat);
	border-radius: 6px;
	background: #fff;
	color: var(--forest);
	font-size: 14px;
	font-weight: 800;
	line-height: 1;
}

.board-portal .pagination li.current a {
	border-color: var(--forest);
	background: var(--forest);
	color: #fff;
}

.board-portal .pagination li.disabled span {
	cursor: default;
	opacity: .45;
}

.board-portal .pagination li.first a,
.board-portal .pagination li.first span,
.board-portal .pagination li.prev a,
.board-portal .pagination li.prev span,
.board-portal .pagination li.next a,
.board-portal .pagination li.next span,
.board-portal .pagination li.last a,
.board-portal .pagination li.last span {
	width: 34px;
	min-width: 34px;
	padding: 0;
	font-size: 0;
}

.board-portal .pagination li.first a::before,
.board-portal .pagination li.first span::before,
.board-portal .pagination li.prev a::before,
.board-portal .pagination li.prev span::before,
.board-portal .pagination li.next a::before,
.board-portal .pagination li.next span::before,
.board-portal .pagination li.last a::before,
.board-portal .pagination li.last span::before {
	font-size: 15px;
	font-weight: 900;
	line-height: 1;
}

.board-portal .pagination li.first a::before,
.board-portal .pagination li.first span::before { content: "<<"; }
.board-portal .pagination li.prev a::before,
.board-portal .pagination li.prev span::before { content: "<"; }
.board-portal .pagination li.next a::before,
.board-portal .pagination li.next span::before { content: ">"; }
.board-portal .pagination li.last a::before,
.board-portal .pagination li.last span::before { content: ">>"; }

.portal-empty {
	padding: 18px 20px;
	border: 1px solid var(--wheat);
	border-radius: var(--radius);
	background: #fffaf0;
	color: var(--forest);
}

@media (max-width: 640px) {
	.board-portal .pagination ul {
		align-items: center;
		gap: 6px;
	}

	.board-portal .pagination li:not(.first):not(.prev):not(.next):not(.last):not(.board-mobile-page-state) {
		display: none;
	}

	.board-portal .pagination .board-mobile-page-state {
		display: flex;
		order: 3;
	}

	.board-portal .pagination li.first { order: 1; }
	.board-portal .pagination li.prev { order: 2; }
	.board-portal .pagination li.next { order: 4; }
	.board-portal .pagination li.last { order: 5; }

	.board-portal .pagination .board-mobile-page-state span {
		min-width: 68px;
		border-color: var(--forest);
		background: var(--forest);
		color: #fff;
		font-weight: 900;
	}

	.board-portal .pagination li.first a,
	.board-portal .pagination li.first span,
	.board-portal .pagination li.prev a,
	.board-portal .pagination li.prev span,
	.board-portal .pagination li.next a,
	.board-portal .pagination li.next span,
	.board-portal .pagination li.last a,
	.board-portal .pagination li.last span {
		width: 38px;
		min-width: 38px;
		padding: 0;
		font-size: 0;
	}

	.board-portal .pagination li.first a::before,
	.board-portal .pagination li.first span::before,
	.board-portal .pagination li.prev a::before,
	.board-portal .pagination li.prev span::before,
	.board-portal .pagination li.next a::before,
	.board-portal .pagination li.next span::before,
	.board-portal .pagination li.last a::before,
	.board-portal .pagination li.last span::before {
		font-size: 15px;
		font-weight: 900;
		line-height: 1;
	}

	.board-portal .pagination li.first a::before { content: "<<"; }
	.board-portal .pagination li.first span::before { content: "<<"; }
	.board-portal .pagination li.prev a::before { content: "<"; }
	.board-portal .pagination li.prev span::before { content: "<"; }
	.board-portal .pagination li.next a::before { content: ">"; }
	.board-portal .pagination li.next span::before { content: ">"; }
	.board-portal .pagination li.last a::before { content: ">>"; }
	.board-portal .pagination li.last span::before { content: ">>"; }
}

body:not(.admin-layout) > #wrap > .container {
	width: 100%;
	max-width: var(--sub-layout-w);
	margin: 0 auto;
	padding: 30px 0 60px;
}

body:not(.admin-layout) > #wrap > .container > .doc.row {
	display: grid;
	grid-template-columns: var(--sidebar-w) minmax(0, 1fr);
	gap: 40px;
	align-items: start;
	margin: 0;
}

body:not(.admin-layout) > #wrap > .container > .doc.row > .col-md-3,
body:not(.admin-layout) > #wrap > .container > .doc.row > .col-md-9 {
	float: none;
	width: auto;
	min-height: 0;
	padding: 0;
}

body:not(.admin-layout) > #wrap > .container .menu {
	width: auto;
	margin: 0;
}

body:not(.admin-layout) > #wrap > .container #content_area {
	min-width: 0;
}

body:not(.admin-layout) > #wrap > .container #content_area > .content {
	padding: 36px 40px;
	border: 1px solid rgba(230, 217, 192, .7);
	border-radius: var(--radius);
	background: #fff;
	box-shadow: 0 2px 16px rgba(28, 58, 42, .05);
}

body:not(.admin-layout) > #wrap > .container #content_area .doc_top {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 18px;
	margin: 0 0 28px;
	padding-bottom: 18px;
	border-bottom: 2px solid var(--forest);
}

body:not(.admin-layout) > #wrap > .container #content_area .doc_top .title {
	margin: 0;
	color: var(--forest);
	font-family: "Noto Serif KR", serif;
	font-size: clamp(22px, 2vw, 30px);
}

.site-footer {
	background: var(--dark);
	color: rgba(255, 255, 255, .7);
}

.footer-grid {
	display: grid;
	grid-template-columns: 1.5fr repeat(3, 1fr);
	gap: 34px;
	max-width: var(--max);
	margin: 0 auto;
	padding: 42px 40px 28px;
}

.footer-brand {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 10px;
}

.footer-brand img {
	width: 38px;
	height: 38px;
	object-fit: contain;
	border-radius: 6px;
}

.footer-title {
	color: #fff;
	font-family: "Noto Serif KR", serif;
	font-weight: 800;
}

.footer-sub {
	color: var(--mint);
	font-size: 9px;
	letter-spacing: .08em;
}

.footer-brand-desc {
	margin: 0 0 14px;
}

.fc-item {
	margin-top: 5px;
	font-size: 14px;
}

.fc-title {
	margin-bottom: 10px;
	color: var(--gold2);
	font-weight: 800;
}

.footer-link {
	display: block;
	margin: 5px 0;
	color: rgba(255, 255, 255, .7);
	font-size: 14px;
}

.footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	max-width: var(--max);
	margin: 0 auto;
	padding: 16px 40px 28px;
	border-top: 1px solid rgba(255, 255, 255, .1);
	font-size: 13px;
}

.footer-legal {
	display: flex;
	gap: 14px;
}

.pop-root {
	position: fixed;
	top: 92px;
	right: 24px;
	left: auto;
	bottom: auto;
	z-index: 5000;
	width: min(620px, calc(100vw - 32px));
	max-height: calc(100vh - 112px);
	pointer-events: none;
}

.pop-root[hidden] {
	display: none !important;
}

.pop-dim {
	display: none;
}

.pop-stack {
	display: flex;
	flex-direction: column;
	gap: 10px;
	max-height: inherit;
	overflow: auto;
	align-items: flex-end;
	pointer-events: none;
}

.pop-card {
	width: 100%;
	max-width: 100%;
	background: #fff;
	border-radius: var(--radius);
	overflow: hidden;
	box-shadow: 0 8px 32px rgba(0, 0, 0, .22);
	pointer-events: auto;
}

.pop-card:focus {
	outline: 3px solid var(--gold);
	outline-offset: 3px;
}

.pop-card__body {
	margin: 0;
	padding: 0;
}

.pop-card__body :where(p, figure) {
	margin: 0;
	padding: 0;
}

.pop-card__body img {
	display: block;
	width: 100%;
	max-width: 100%;
	height: auto;
	vertical-align: top;
}

.pop-card__ft {
	display: flex;
	justify-content: flex-end;
	gap: 10px;
	padding: 10px 14px;
	border-top: 1px solid #e5e5e5;
	background: #fafafa;
}

.pop-close-btn {
	height: 30px;
	border: 1px solid #cfd7d3;
	border-radius: 4px;
	background: #fff;
	color: #1a1a1a;
	cursor: pointer;
}

.pop-close-btn:focus-visible,
.drawer-close:focus-visible,
.drawer-open:focus-visible,
.btn-reserve:focus-visible,
.admin-nav-icon:focus-visible,
.pc-nav a:focus-visible,
.mega-col a:focus-visible,
.drawer-nav a:focus-visible {
	outline: 3px solid var(--gold2);
	outline-offset: 3px;
}

.agc-form-error {
	margin: 0 0 16px;
	padding: 12px 14px;
	border: 1px solid #b4232d;
	border-radius: 8px;
	background: #fff5f5;
	color: #8a1f29;
	font-weight: 800;
}

[aria-invalid="true"] {
	border-color: #b4232d !important;
	box-shadow: 0 0 0 3px rgba(180, 35, 45, .18) !important;
}

@media (max-width: 700px) {
	.pop-root {
		top: 72px;
		right: 12px;
		width: calc(100vw - 24px);
		max-height: calc(100vh - 88px);
	}
}

@media (max-width: 1100px) {
	.pc-nav,
	.btn-reserve,
	.mega-menu {
		display: none;
	}

	.site-nav {
		grid-template-columns: minmax(0, 1fr) auto;
	}

	.nav-right-group {
		width: auto;
	}

	.drawer-open {
		display: block;
	}

	.drawer {
		width: min(84vw, 360px);
		padding: 16px;
	}

	.drawer-header {
		margin-bottom: 10px;
	}

	.drawer-close {
		width: 34px;
		height: 34px;
		border-radius: 8px;
		font-size: 24px;
	}

	.drawer-nav a {
		padding: 10px 4px;
		border-bottom: 0;
		font-size: 17px;
		line-height: 1.3;
	}

	.drawer-sub {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2px 8px;
		padding: 2px 0 8px 12px;
	}

	.drawer-sub a {
		padding: 6px 4px;
		border: 1px solid rgba(189, 159, 79, .42);
		border-radius: 8px;
		background: rgba(250, 246, 236, .72);
		color: var(--forest);
		font-size: 15px;
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
	}

	.nav-brand {
		min-width: 0;
	}

	.hero {
		min-height: 680px;
	}

	.hero-content,
	.page2-inner,
	.page3-inner,
	.sub-body,
	body:not(.admin-layout) > #wrap > .container {
		width: min(100% - 32px, var(--max));
	}

	.hero-content {
		padding-left: 24px;
		padding-right: 76px;
	}

	.qb-grid,
	.page2-inner,
	.page3-inner,
	.sub-body,
	body:not(.admin-layout) > #wrap > .container > .doc.row,
	.footer-grid {
		grid-template-columns: 1fr;
	}

	.sidebar {
		position: static;
		width: 100%;
	}

	.sidebar-menu {
		border-radius: 8px;
	}

	.sidebar-head {
		padding: 14px 18px;
	}

	.sidebar-head h3 {
		font-size: 17px;
	}

	.sidebar-head p {
		display: none;
	}

	.snav-group {
		display: grid;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 8px;
		overflow: visible;
		padding: 10px;
	}

	.snav-group::-webkit-scrollbar {
		display: none;
	}

	.snav-item {
		justify-content: center;
		min-width: 0;
		min-height: 44px;
		padding: 0 10px;
		border: 1px solid var(--wheat);
		border-radius: 999px;
		background: #fff;
		font-size: 13px;
		line-height: 1.25;
		text-align: center;
		white-space: normal;
	}

	.snav-label {
		display: block;
		width: 100%;
		text-align: center;
	}

	.snav-item:hover,
	.snav-item.active {
		border-color: var(--forest);
		background: var(--forest);
		color: #fff;
	}

	.snav-arrow {
		display: none;
	}

	.side-banner,
	.side-hours {
		display: none;
	}

	.page2-inner,
	.page3-inner {
		gap: 32px;
		padding-left: 0;
		padding-right: 0;
	}

	.content-panel,
	body:not(.admin-layout) > #wrap > .container #content_area > .content {
		padding: 30px 28px;
	}
}

@media (max-width: 640px) {
	.hero-content,
	.quick-bar,
	.page-hero-inner {
		width: min(100% - 20px, var(--max));
	}

	.drawer {
		width: min(82vw, 330px);
		padding: 12px 14px;
	}

	.drawer-header {
		gap: 8px;
		margin-bottom: 8px;
	}

	.drawer .brand-mark {
		width: 42px;
		height: 42px;
	}

	.drawer .brand-name {
		font-size: 16px;
		line-height: 1.15;
	}

	.drawer .brand-sub {
		font-size: 8px;
	}

	.drawer-close {
		width: 32px;
		height: 32px;
		font-size: 23px;
	}

	.drawer-nav a {
		padding: 9px 4px;
		border-bottom: 0;
		font-size: 16px;
		line-height: 1.3;
	}

	.drawer-sub {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2px 6px;
		padding: 1px 0 6px 8px;
	}

	.drawer-sub a {
		padding: 5px 3px;
		border: 1px solid rgba(189, 159, 79, .42);
		border-radius: 7px;
		background: rgba(250, 246, 236, .72);
		color: var(--forest);
		font-size: 14.5px;
		font-weight: 700;
		line-height: 1.3;
		text-align: center;
	}

	.site-nav {
		height: 70px;
		padding: 0 12px;
	}

	.brand-name {
		font-size: 16px;
	}

	.hero {
		min-height: 560px;
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
	}

	.hero-content {
		flex: 1 0 auto;
		width: min(100% - 20px, var(--max));
		padding: 112px 14px 104px;
	}

	.hc-ctrl {
		top: auto;
		right: 50%;
		bottom: 156px;
		flex-direction: row;
		gap: 8px;
		transform: translateX(50%);
	}

	.hero-badge {
		margin-bottom: 16px;
		padding: 8px 13px;
		font-size: 12px;
	}

	.hero-sub {
		margin-bottom: 8px;
		font-size: 18px;
	}

	.hero h1 {
		margin-bottom: 16px;
		font-size: 32px;
		line-height: 1.24;
		letter-spacing: 0;
		word-break: keep-all;
	}

	.hero-desc {
		margin-bottom: 22px;
		font-size: 15px;
		line-height: 1.7;
	}

	.hero-buttons {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.btn-hp,
	.btn-hg,
	.loc-btn {
		min-height: 46px;
		padding: 0 10px;
		border-radius: 8px;
		font-size: 14px;
		word-break: keep-all;
	}

	.quick-bar {
		position: relative;
		left: auto;
		bottom: auto;
		flex: 0 0 auto;
		order: 2;
		margin-top: auto;
		transform: none;
		width: 100%;
		border-radius: 0;
	}

	.hc-caption {
		display: none;
	}

	.qb-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.qb-item {
		min-height: 66px;
		gap: 10px;
		padding: 12px 10px;
		border-right: 0;
		border-bottom: 1px solid var(--wheat);
	}

	.qb-item:nth-child(odd) {
		border-right: 1px solid var(--wheat);
	}

	.qb-icon {
		width: 34px;
		height: 34px;
		border-radius: 8px;
	}

	.qb-text strong {
		font-size: 14px;
	}

	.qb-text span {
		font-size: 11px;
		line-height: 1.35;
	}

	.page2-inner,
	.page3-inner {
		width: min(100% - 20px, var(--max));
		gap: 24px;
		padding: 34px 0;
	}

	.sec-tag {
		margin-bottom: 10px;
		font-size: 11px;
	}

	.sec-title {
		font-size: 25px;
		letter-spacing: 0;
	}

	.sec-desc {
		font-size: 15px;
		line-height: 1.7;
	}

	.svc-grid {
		grid-template-columns: 1fr;
		gap: 10px;
		margin-top: 18px;
	}

	.svc-card.featured {
		grid-column: auto;
	}

	.steps-bar {
		justify-content: flex-start;
		gap: 8px;
		overflow-x: auto;
		padding: 14px;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.steps-bar::-webkit-scrollbar {
		display: none;
	}

	.step-node {
		flex: 0 0 88px;
	}

	.step-arrow {
		flex: 0 0 auto;
		transform: none;
	}

	.step-circle {
		width: 34px;
		height: 34px;
	}

	.step-node span {
		font-size: 12px;
	}

	.sub-body {
		width: min(100% - 20px, var(--sub-layout-w));
		gap: 14px;
		padding: 18px 0 42px;
	}

	body:not(.admin-layout) > #wrap > .container {
		width: min(100% - 20px, var(--sub-layout-w));
		padding: 18px 0 42px;
	}

	.page-hero {
		align-items: flex-end;
		min-height: 196px;
		padding: 92px 0 30px;
	}

	.page-hero-tag {
		display: none;
	}

	.page-hero h1 {
		font-size: 28px;
		line-height: 1.2;
		word-break: keep-all;
	}

	.breadcrumb-inner {
		flex-wrap: wrap;
		gap: 6px 8px;
		min-height: 42px;
		padding: 0 10px;
	}

	.bc-list {
		flex-wrap: wrap;
		gap: 6px;
		min-width: 0;
		overflow: visible;
		font-size: 12px;
		white-space: normal;
	}

	.content-panel {
		padding: 20px 12px;
		border-radius: 8px;
	}

	body:not(.admin-layout) > #wrap > .container #content_area > .content {
		padding: 20px 12px;
		border-radius: 8px;
	}

	.content-head,
	body:not(.admin-layout) > #wrap > .container #content_area .doc_top,
	.footer-bottom {
		align-items: center;
		flex-direction: row;
	}

	.content-head,
	body:not(.admin-layout) > #wrap > .container #content_area .doc_top {
		gap: 10px;
		margin-bottom: 18px;
		padding-bottom: 12px;
	}

	.content-head h2,
	body:not(.admin-layout) > #wrap > .container #content_area .doc_top .title {
		min-width: 0;
		font-size: 21px;
	}

	.content-share {
		flex: 0 1 auto;
		min-width: 0;
	}

	.portal-body {
		font-size: 15px;
		line-height: 1.75;
	}

	.portal-body:not(.board-portal) table {
		display: block;
		max-width: 100%;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.board-portal .search_box {
		padding: 12px;
		overflow: hidden;
	}

	.board-portal .search_box ul {
		display: grid;
		grid-template-columns: 76px minmax(0, 1fr) 48px 48px;
		align-items: stretch;
		gap: 5px;
		width: 100%;
		max-width: 100%;
		overflow: visible;
	}

	.board-portal .search_box li {
		display: contents;
	}

	.board-portal .search_box input[type="text"],
	#content_area .board-portal .search_box .form-control {
		display: block !important;
		width: 100% !important;
		max-width: 100%;
		min-width: 0 !important;
		box-sizing: border-box;
		font-size: 13px;
	}

	.board-portal .search_box .btn {
		width: 100%;
		min-width: 0;
		min-height: 40px;
		padding: 0 6px;
		box-sizing: border-box;
		font-size: 12px;
		white-space: nowrap;
	}

	.ntabs,
	.loc-btns {
		width: 100%;
	}

	.ntab,
	.loc-btns > * {
		flex: 1;
	}

	.footer-bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
		justify-content: flex-start;
		font-size: 13px;
		line-height: 1.45;
	}

	.footer-copy {
		flex: 0 0 auto;
		min-width: 0;
		max-width: 100%;
		overflow: visible;
		text-overflow: clip;
		white-space: normal;
	}

	.footer-legal {
		flex: 0 0 auto;
		width: auto;
		gap: 14px;
		white-space: nowrap;
	}

	.footer-legal a {
		white-space: nowrap;
	}

	.notice-item {
		gap: 10px;
		padding: 14px 0;
	}

	.nbadge {
		padding: 3px 9px;
		font-size: 11px;
	}

	.ntitle {
		font-size: 15px;
		line-height: 1.45;
	}

	.res-card {
		padding: 20px 16px;
	}

	.res-row {
		gap: 8px;
		padding: 9px 0;
		font-size: 14px;
	}

	.footer-grid > div:nth-child(n+2) {
		display: none;
	}

	.footer-grid,
	.footer-bottom {
		padding-left: 14px;
		padding-right: 72px;
	}
}

@media (max-width: 360px) {
	.snav-group {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* AGCENTER CMS PAGE CONTENT STYLES - START */
/* from 00008.php */
.agc-facility-page {
  --agc-dark: #2d4a1e;
  --agc-mid: #3d5a2e;
  --agc-accent: #4a7c3f;
  --agc-soft: #6b8c55;
  --agc-muted: #8ca078;
  --agc-gold: #bd9f4f;
  --agc-gold-light: #d4be7c;
  --agc-cream: #faf6ec;
  --agc-cream-deep: #f0ead8;
  --agc-border: #e0d8c4;
  --agc-text: #2d2a20;
  --agc-text-muted: #6b6450;

  font-family: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--agc-text);
  line-height: 1.6;
  letter-spacing: -0.01em;
  -webkit-font-smoothing: antialiased;
}
.agc-facility-page *,
.agc-facility-page *::before,
.agc-facility-page *::after { box-sizing: border-box; }
.agc-facility-page h2,
.agc-facility-page h3,
.agc-facility-page p { margin: 0; }

/* Page Header */
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-head .agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-head .agc-page-kicker::before,
.agc-page-head .agc-page-kicker::after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

/* Stats */
.agc-stats {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-bottom: 32px;
}
.agc-stat-card {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 20px 16px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.agc-stat-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--agc-soft), var(--agc-gold));
}
.agc-stat-card .num {
  font-size: 30px;
  font-weight: 800;
  color: var(--agc-dark);
  line-height: 1;
  letter-spacing: -0.03em;
}
.agc-stat-card .num small {
  font-size: 14px;
  font-weight: 600;
  color: var(--agc-soft);
  margin-left: 3px;
}
.agc-stat-card .stat-label {
  font-size: 12px;
  color: var(--agc-text-muted);
  margin-top: 8px;
  font-weight: 500;
}

/* Process Flow */
.agc-flow-wrap {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  padding: 22px 18px;
  margin-bottom: 32px;
  position: relative;
  overflow: hidden;
}
.agc-flow-wrap::before {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 120px;
  height: 120px;
  background: radial-gradient(circle, rgba(189,159,79,0.12), transparent 70%);
  pointer-events: none;
}
.agc-flow-title {
  font-size: 15px;
  font-weight: 700;
  color: var(--agc-dark);
  margin-bottom: 18px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.agc-flow-title::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--agc-gold);
  border-radius: 2px;
}
.agc-flow {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.agc-flow-step {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  background: var(--agc-cream-deep);
  border-radius: 10px;
  border-left: 3px solid var(--agc-soft);
  transition: all 0.2s;
}
.agc-flow-step:hover {
  background: var(--agc-cream);
  transform: translateX(4px);
}
.agc-flow-step .step-num {
  width: 32px;
  height: 32px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  font-weight: 700;
  flex-shrink: 0;
  font-family: 'JetBrains Mono', monospace;
}
.agc-flow-step .step-text { flex: 1; }
.agc-flow-step .step-text strong {
  display: block;
  color: var(--agc-dark);
  font-size: 14px;
  font-weight: 700;
}
.agc-flow-step .step-text span {
  display: block;
  color: var(--agc-text-muted);
  font-size: 12px;
  margin-top: 2px;
}

/* Section Title */
.agc-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  padding: 0 4px;
}
.agc-section-title h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--agc-dark);
  display: flex;
  align-items: center;
  gap: 10px;
}
.agc-section-title h3::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--agc-gold);
  border-radius: 2px;
}
.agc-section-title .total {
  font-size: 12px;
  color: var(--agc-text-muted);
  font-weight: 500;
}
.agc-section-title .total b {
  color: var(--agc-accent);
  font-weight: 700;
}

/* Facility Cards */
.agc-facilities {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 32px;
}
.agc-facility {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  overflow: hidden;
  transition: all 0.3s;
}
.agc-facility:hover {
  border-color: var(--agc-soft);
  box-shadow: 0 8px 24px rgba(45, 74, 30, 0.08);
}
.agc-facility-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px;
  border-bottom: 1px solid var(--agc-border);
  background: linear-gradient(135deg, rgba(45, 74, 30, 0.025), rgba(189, 159, 79, 0.04));
}
.agc-facility-icon {
  width: 48px;
  height: 48px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
  position: relative;
}
.agc-facility-icon::after {
  content: '';
  position: absolute;
  inset: -3px;
  border: 1px solid var(--agc-gold);
  border-radius: 14px;
  opacity: 0.3;
}
.agc-facility-meta { flex: 1; min-width: 0; }
.agc-facility-tag {
  font-size: 10px;
  color: var(--agc-gold);
  font-weight: 700;
  letter-spacing: 0.15em;
  margin-bottom: 2px;
  font-family: 'JetBrains Mono', monospace;
}
.agc-facility-name {
  font-size: 17px;
  font-weight: 800;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
  margin-bottom: 3px;
  line-height: 1.2;
}
.agc-facility-name .sub {
  font-weight: 600;
  font-size: 13px;
  color: var(--agc-soft);
}
.agc-facility-desc {
  font-size: 12px;
  color: var(--agc-text-muted);
  line-height: 1.5;
}
.agc-facility-count {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 600;
  color: var(--agc-text-muted);
  flex-shrink: 0;
  white-space: nowrap;
}
.agc-facility-count strong {
  color: var(--agc-accent);
  font-size: 13px;
  font-weight: 800;
}

/* Equipment grid */
.agc-equipment-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  padding: 14px;
}
.agc-equipment {
  display: flex;
  flex-direction: column;
  padding: 12px;
  border: 1px solid var(--agc-border);
  border-radius: 10px;
  background: var(--agc-cream);
  transition: all 0.2s;
  position: relative;
}
.agc-equipment::before {
  content: '';
  position: absolute;
  top: 10px;
  right: 10px;
  width: 5px;
  height: 5px;
  background: var(--agc-soft);
  border-radius: 50%;
  opacity: 0.6;
}
.agc-equipment:hover {
  background: white;
  border-color: var(--agc-soft);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(45, 74, 30, 0.06);
}
.agc-equipment:hover::before {
  background: var(--agc-gold);
  opacity: 1;
}
.agc-equipment-name {
  font-size: 13px;
  font-weight: 700;
  color: var(--agc-dark);
  margin-bottom: 6px;
  line-height: 1.3;
  letter-spacing: -0.015em;
  padding-right: 12px;
}
.agc-equipment-spec {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-family: 'JetBrains Mono', monospace;
  font-weight: 500;
}
.agc-equipment-spec.empty {
  color: var(--agc-muted);
  font-family: inherit;
}

/* CTA */
.agc-cta {
  padding: 28px 22px;
  background: var(--agc-dark);
  border-radius: 16px;
  text-align: center;
  color: white;
  position: relative;
  overflow: hidden;
}
.agc-cta::before {
  content: '';
  position: absolute;
  top: -60%;
  right: -20%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(189,159,79,0.25), transparent 60%);
  pointer-events: none;
}
.agc-cta::after {
  content: '';
  position: absolute;
  bottom: -50%;
  left: -10%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(107,140,85,0.2), transparent 60%);
  pointer-events: none;
}
.agc-cta-content { position: relative; z-index: 1; }
.agc-cta h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 8px;
  letter-spacing: -0.02em;
  color: white;
}
.agc-cta p {
  font-size: 13px;
  opacity: 0.85;
  margin-bottom: 18px;
  line-height: 1.6;
  color: white;
}
.agc-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--agc-gold);
  color: var(--agc-dark);
  padding: 12px 22px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s;
  letter-spacing: -0.01em;
}
.agc-cta-btn:hover {
  background: var(--agc-gold-light);
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(189,159,79,0.3);
}
.agc-cta-btn i { font-size: 11px; transition: transform 0.2s; }
.agc-cta-btn:hover i { transform: translateX(3px); }

/* Tablet */
@media (min-width: 640px) {
  .agc-stats {
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }
  .agc-equipment-grid {
    grid-template-columns: repeat(3, 1fr);
    padding: 18px;
  }
}

/* Desktop */
@media (min-width: 768px) {
  .agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
  .agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
  .agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

  .agc-stat-card { padding: 26px 18px; }
  .agc-stat-card .num { font-size: 34px; }

  .agc-flow-wrap { padding: 28px; }
  .agc-flow {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }
  .agc-flow-step {
    flex-direction: column;
    align-items: flex-start;
    padding: 18px;
    gap: 12px;
  }
  .agc-flow-step:hover { transform: translateY(-3px); }
  .agc-flow-step .step-num { width: 36px; height: 36px; font-size: 13px; }

  .agc-section-title h3 { font-size: 20px; }

  .agc-facility-header { padding: 22px 26px; gap: 18px; }
  .agc-facility-icon { width: 56px; height: 56px; font-size: 22px; border-radius: 14px; }
  .agc-facility-name { font-size: 19px; }
  .agc-facility-desc { font-size: 13px; }

  .agc-equipment-grid {
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    padding: 22px;
  }

  .agc-cta { padding: 44px 32px; }
  .agc-cta h3 { font-size: 24px; }
  .agc-cta p { font-size: 14px; }
}

/* from 00010.php */
.agc-guide-page {
  --agc-dark: #2d4a1e;
  --agc-mid: #3d5a2e;
  --agc-accent: #4a7c3f;
  --agc-soft: #6b8c55;
  --agc-muted: #8ca078;
  --agc-gold: #bd9f4f;
  --agc-gold-light: #d4be7c;
  --agc-cream: #faf6ec;
  --agc-cream-deep: #f0ead8;
  --agc-border: #e0d8c4;
  --agc-text: #2d2a20;
  --agc-text-muted: #6b6450;

  font-family: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--agc-text);
  line-height: 1.6;
  letter-spacing: -0.01em;
  -webkit-font-smoothing: antialiased;
}
.agc-guide-page *,
.agc-guide-page *::before,
.agc-guide-page *::after { box-sizing: border-box; }
.agc-guide-page h2,
.agc-guide-page h3,
.agc-guide-page h4,
.agc-guide-page p { margin: 0; }

/* Page Header */
.agc-guide-page .agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-guide-page .agc-page-head .agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-guide-page .agc-page-head .agc-page-kicker::before,
.agc-guide-page .agc-page-head .agc-page-kicker::after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-guide-page .agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-guide-page .agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

/* Section Title */
.agc-guide-page .agc-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  padding: 0 4px;
  gap: 12px;
}
.agc-guide-page .agc-section-title h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--agc-dark);
  display: flex;
  align-items: center;
  gap: 10px;
  letter-spacing: -0.02em;
}
.agc-guide-page .agc-section-title h3::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--agc-gold);
  border-radius: 2px;
}
.agc-guide-page .agc-section-title .hint {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 500;
  text-align: right;
}

/* 절차 타임라인 */
.agc-steps {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-bottom: 40px;
}
.agc-step {
  position: relative;
  display: flex;
  gap: 14px;
  padding-bottom: 20px;
}
.agc-step:last-child { padding-bottom: 0; }
.agc-step-marker {
  position: relative;
  flex-shrink: 0;
}
.agc-step-marker::after {
  content: '';
  position: absolute;
  top: 56px;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  height: calc(100% - 36px);
  background: repeating-linear-gradient(
    to bottom,
    var(--agc-muted) 0,
    var(--agc-muted) 4px,
    transparent 4px,
    transparent 9px
  );
  opacity: 0.6;
}
.agc-step:last-child .agc-step-marker::after { display: none; }
.agc-step-num {
  width: 56px;
  height: 56px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'JetBrains Mono', monospace;
  font-weight: 700;
  font-size: 17px;
  position: relative;
  z-index: 1;
  letter-spacing: -0.02em;
}
.agc-step-num::after {
  content: '';
  position: absolute;
  inset: -3px;
  border: 1px solid var(--agc-gold);
  border-radius: 16px;
  opacity: 0.3;
}
.agc-step-content {
  --agc-step-icon-size: 32px;
  flex: 1;
  display: grid;
  grid-template-columns: var(--agc-step-icon-size) minmax(0, 1fr);
  align-items: start;
  column-gap: 12px;
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 16px;
  transition: all 0.3s;
  min-width: 0;
}
.agc-step-content:hover {
  border-color: var(--agc-soft);
  box-shadow: 0 8px 20px rgba(45,74,30,0.06);
  transform: translateY(-2px);
}
.agc-step-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--agc-step-icon-size);
  height: var(--agc-step-icon-size);
  background: var(--agc-cream-deep);
  color: var(--agc-dark);
  border-radius: 8px;
  font-size: 13px;
  margin-bottom: 0;
}
.agc-step-content h4 {
  align-self: center;
  font-size: 16px;
  font-weight: 800;
  color: var(--agc-dark);
  margin-bottom: 0;
  letter-spacing: -0.02em;
}
.agc-step-content p {
  grid-column: 2;
  margin-top: 6px;
  font-size: 12px;
  color: var(--agc-text-muted);
  line-height: 1.6;
  margin-bottom: 10px;
}
.agc-step-tags {
  grid-column: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}
.agc-step-tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  background: var(--agc-cream);
  border: 1px solid var(--agc-border);
  color: var(--agc-accent);
  padding: 4px 9px;
  border-radius: 12px;
  font-weight: 700;
  letter-spacing: 0.02em;
}
.agc-step-tag i { font-size: 9px; }

/* 사용 조건 */
.agc-conditions {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin-bottom: 40px;
}
.agc-condition {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 16px;
  display: flex;
  gap: 14px;
  align-items: flex-start;
  transition: all 0.3s;
  position: relative;
  overflow: hidden;
}
.agc-condition::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 3px;
  height: 100%;
  background: var(--agc-gold);
  opacity: 0;
  transition: opacity 0.3s;
}
.agc-condition:hover {
  border-color: var(--agc-soft);
  box-shadow: 0 6px 16px rgba(45,74,30,0.06);
}
.agc-condition:hover::before { opacity: 1; }
.agc-condition-icon {
  width: 44px;
  height: 44px;
  background: var(--agc-cream-deep);
  color: var(--agc-dark);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
  position: relative;
}
.agc-condition-num {
  position: absolute;
  top: -4px;
  right: -4px;
  width: 18px;
  height: 18px;
  background: var(--agc-gold);
  color: var(--agc-dark);
  border-radius: 50%;
  font-size: 9px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'JetBrains Mono', monospace;
}
.agc-condition-body { flex: 1; min-width: 0; }
.agc-condition-title {
  font-size: 14px;
  font-weight: 800;
  color: var(--agc-dark);
  margin-bottom: 4px;
  letter-spacing: -0.02em;
}
.agc-condition-desc {
  font-size: 12px;
  color: var(--agc-text-muted);
  line-height: 1.6;
}

/* 필요 서류 */
.agc-documents {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 40px;
}
.agc-document {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  position: relative;
  overflow: hidden;
  transition: all 0.3s;
}
.agc-document::before {
  content: '';
  position: absolute;
  top: 0; right: 0;
  width: 80px;
  height: 80px;
  background: radial-gradient(circle, rgba(189,159,79,0.1), transparent 70%);
  pointer-events: none;
}
.agc-document:hover {
  border-color: var(--agc-soft);
  transform: translateY(-3px);
  box-shadow: 0 12px 24px rgba(45,74,30,0.08);
}
.agc-document-head {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  position: relative;
}
.agc-document-icon {
  width: 42px;
  height: 42px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}
.agc-document-info { flex: 1; min-width: 0; }
.agc-document-tag {
  display: inline-block;
  font-size: 10px;
  color: var(--agc-gold);
  font-weight: 700;
  letter-spacing: 0.15em;
  margin-bottom: 3px;
  font-family: 'JetBrains Mono', monospace;
}
.agc-document-title {
  font-size: 15px;
  font-weight: 800;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin-bottom: 4px;
}
.agc-document-required {
  display: inline-block;
  font-size: 10px;
  background: rgba(168, 80, 64, 0.1);
  color: #a85040;
  padding: 2px 8px;
  border-radius: 10px;
  font-weight: 700;
  margin-left: 4px;
  vertical-align: middle;
}
.agc-document-required.optional {
  background: var(--agc-cream-deep);
  color: var(--agc-text-muted);
}
.agc-document-desc {
  font-size: 12px;
  color: var(--agc-text-muted);
  line-height: 1.6;
  padding-top: 4px;
  border-top: 1px dashed var(--agc-border);
}
.agc-document-fields {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 8px;
}
.agc-document-fields span {
  font-size: 10px;
  background: var(--agc-cream);
  border: 1px solid var(--agc-border);
  padding: 3px 8px;
  border-radius: 6px;
  color: var(--agc-text);
  font-weight: 500;
}
.agc-document-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  background: var(--agc-cream-deep);
  border: 1px solid var(--agc-border);
  color: var(--agc-dark);
  padding: 10px 14px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 12px;
  text-decoration: none;
  transition: all 0.2s;
  letter-spacing: -0.01em;
}
.agc-document-btn:hover {
  background: var(--agc-gold);
  border-color: var(--agc-gold);
  color: var(--agc-dark);
}
.agc-document-btn i { font-size: 11px; }

/* 운영 안내 */
.agc-info-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-bottom: 40px;
}
.agc-info-card {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 18px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.agc-info-icon {
  width: 44px;
  height: 44px;
  background: var(--agc-cream-deep);
  color: var(--agc-dark);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  flex-shrink: 0;
}
.agc-info-body { flex: 1; min-width: 0; }
.agc-info-label {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 600;
  letter-spacing: 0.05em;
  margin-bottom: 4px;
}
.agc-info-value {
  font-size: 15px;
  font-weight: 700;
  color: var(--agc-dark);
  letter-spacing: -0.015em;
  line-height: 1.4;
}
.agc-info-value small {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: var(--agc-text-muted);
  margin-top: 2px;
}

/* CTA */
.agc-cta {
  padding: 28px 22px;
  background: var(--agc-dark);
  border-radius: 16px;
  text-align: center;
  color: white;
  position: relative;
  overflow: hidden;
}
.agc-cta::before {
  content: '';
  position: absolute;
  top: -60%;
  right: -20%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(189,159,79,0.25), transparent 60%);
  pointer-events: none;
}
.agc-cta::after {
  content: '';
  position: absolute;
  bottom: -50%;
  left: -10%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(107,140,85,0.2), transparent 60%);
  pointer-events: none;
}
.agc-cta-content { position: relative; z-index: 1; }
.agc-cta h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 8px;
  letter-spacing: -0.02em;
  color: white;
}
.agc-cta p {
  font-size: 13px;
  opacity: 0.85;
  margin-bottom: 18px;
  line-height: 1.6;
  color: white;
}
.agc-cta-btns {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}
.agc-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--agc-gold);
  color: var(--agc-dark);
  padding: 12px 22px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s;
  letter-spacing: -0.01em;
}
.agc-cta-btn:hover {
  background: var(--agc-gold-light);
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(189,159,79,0.3);
}
.agc-cta-btn.outline {
  background: transparent;
  color: white;
  border: 1px solid rgba(255,255,255,0.3);
}
.agc-cta-btn.outline:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.5);
  box-shadow: none;
}
.agc-cta-btn i { font-size: 11px; transition: transform 0.2s; }
.agc-cta-btn:hover i { transform: translateX(3px); }

/* Tablet */
@media (min-width: 640px) {
  .agc-conditions {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .agc-documents {
    grid-template-columns: repeat(3, 1fr);
  }
  .agc-info-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Desktop */
@media (min-width: 768px) {
  .agc-guide-page .agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
  .agc-guide-page .agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
  .agc-guide-page .agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

  .agc-guide-page .agc-section-title h3 { font-size: 20px; }

  .agc-step { gap: 18px; padding-bottom: 24px; }
  .agc-step-marker::after { top: 64px; height: calc(100% - 40px); }
  .agc-step-num { width: 64px; height: 64px; font-size: 19px; border-radius: 16px; }
  .agc-step-content { --agc-step-icon-size: 36px; padding: 22px; }
  .agc-step-icon { width: 36px; height: 36px; font-size: 14px; }
  .agc-step-content h4 { font-size: 17px; }
  .agc-step-content p { font-size: 13px; }
  .agc-step-tag { font-size: 11px; }

  .agc-condition { padding: 20px; gap: 16px; }
  .agc-condition-icon { width: 48px; height: 48px; font-size: 18px; border-radius: 14px; }
  .agc-condition-title { font-size: 15px; }
  .agc-condition-desc { font-size: 13px; }

  .agc-document { padding: 22px; }
  .agc-document-icon { width: 48px; height: 48px; font-size: 18px; }
  .agc-document-title { font-size: 16px; }

  .agc-info-card { padding: 22px; }
  .agc-info-icon { width: 48px; height: 48px; font-size: 18px; }
  .agc-info-value { font-size: 16px; }

  .agc-cta { padding: 44px 32px; }
  .agc-cta h3 { font-size: 24px; }
  .agc-cta p { font-size: 14px; }
}

/* 사용 조건은 데스크톱에서도 2열 유지 (가독성) */
@media (min-width: 1024px) {
  .agc-conditions { grid-template-columns: repeat(2, 1fr); }
}

/* from 00015.php */
.agc-fee-page {
  --agc-dark: #2d4a1e;
  --agc-mid: #3d5a2e;
  --agc-accent: #4a7c3f;
  --agc-soft: #6b8c55;
  --agc-muted: #8ca078;
  --agc-gold: #bd9f4f;
  --agc-gold-light: #d4be7c;
  --agc-cream: #faf6ec;
  --agc-cream-deep: #f0ead8;
  --agc-border: #e0d8c4;
  --agc-text: #2d2a20;
  --agc-text-muted: #6b6450;

  --proc-jam: #a85040;
  --proc-juice: #c88840;
  --proc-dry: #7a6240;

  font-family: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--agc-text);
  line-height: 1.6;
  letter-spacing: -0.01em;
  -webkit-font-smoothing: antialiased;
}
.agc-fee-page *,
.agc-fee-page *::before,
.agc-fee-page *::after { box-sizing: border-box; }
.agc-fee-page h2,
.agc-fee-page h3,
.agc-fee-page h4,
.agc-fee-page p,
.agc-fee-page table { margin: 0; }

/* Page Header */
.agc-fee-page .agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-fee-page .agc-page-head .agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-fee-page .agc-page-head .agc-page-kicker::before,
.agc-fee-page .agc-page-head .agc-page-kicker::after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-fee-page .agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-fee-page .agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

/* 부과 원칙 4박스 */
.agc-rules {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
  margin-bottom: 36px;
}
.agc-rule {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 18px 14px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.agc-rule::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(90deg, var(--agc-soft), var(--agc-gold));
}
.agc-rule .rule-icon {
  width: 36px;
  height: 36px;
  margin: 0 auto 10px;
  background: var(--agc-cream-deep);
  color: var(--agc-dark);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
}
.agc-rule .rule-value {
  font-size: 20px;
  font-weight: 800;
  color: var(--agc-dark);
  line-height: 1;
  margin-bottom: 4px;
  letter-spacing: -0.025em;
}
.agc-rule .rule-value small {
  font-size: 12px;
  font-weight: 600;
  color: var(--agc-soft);
  margin-left: 2px;
}
.agc-rule .rule-label {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 500;
  line-height: 1.4;
}

/* 섹션 타이틀 */
.agc-fee-page .agc-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
  padding: 0 4px;
  gap: 12px;
}
.agc-fee-page .agc-section-title h3 {
  font-size: 18px;
  font-weight: 700;
  color: var(--agc-dark);
  display: flex;
  align-items: center;
  gap: 10px;
  letter-spacing: -0.02em;
}
.agc-fee-page .agc-section-title h3::before {
  content: '';
  width: 4px;
  height: 18px;
  background: var(--agc-gold);
  border-radius: 2px;
}
.agc-fee-page .agc-section-title .hint {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 500;
  text-align: right;
}

/* 공정별 합계 카드 */
.agc-process-grid {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 40px;
}
.agc-process {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  overflow: hidden;
  position: relative;
  transition: all 0.3s;
}
.agc-process:hover {
  border-color: var(--agc-soft);
  box-shadow: 0 8px 24px rgba(45, 74, 30, 0.08);
  transform: translateY(-2px);
}
.agc-process-head {
  padding: 18px;
  background: linear-gradient(135deg, var(--agc-cream-deep), var(--agc-cream));
  border-bottom: 1px solid var(--agc-border);
  display: flex;
  align-items: center;
  gap: 14px;
  position: relative;
}
.agc-process-head::before {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 4px;
  height: 100%;
  background: var(--proc-color, var(--agc-soft));
}
.agc-process.jam { --proc-color: var(--proc-jam); }
.agc-process.juice { --proc-color: var(--proc-juice); }
.agc-process.dry { --proc-color: var(--proc-dry); }
.agc-process-icon {
  width: 48px;
  height: 48px;
  background: var(--proc-color);
  color: white;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}
.agc-process-meta { flex: 1; min-width: 0; }
.agc-process-tag {
  font-size: 10px;
  color: var(--proc-color);
  font-weight: 700;
  letter-spacing: 0.15em;
  margin-bottom: 2px;
  font-family: 'JetBrains Mono', monospace;
}
.agc-process-name {
  font-size: 17px;
  font-weight: 800;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
  line-height: 1.2;
}
.agc-process-body {
  padding: 18px;
}
.agc-process-stat {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px dashed var(--agc-border);
}
.agc-process-stat-item .label {
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 500;
  margin-bottom: 4px;
  letter-spacing: 0.05em;
}
.agc-process-stat-item .value {
  font-size: 20px;
  font-weight: 800;
  color: var(--agc-dark);
  line-height: 1.1;
  letter-spacing: -0.025em;
}
.agc-process-stat-item .value small {
  font-size: 12px;
  font-weight: 600;
  color: var(--agc-text-muted);
  margin-left: 2px;
}
.agc-process-stat-item.price .value {
  color: var(--proc-color);
}
.agc-process-equipments {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.agc-process-equipments .label {
  width: 100%;
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 500;
  margin-bottom: 6px;
  letter-spacing: 0.05em;
}
.agc-process-equipments span {
  background: var(--agc-cream-deep);
  border: 1px solid var(--agc-border);
  border-radius: 6px;
  padding: 5px 10px;
  font-size: 11px;
  color: var(--agc-dark);
  font-weight: 500;
}
.agc-process-note {
  margin-top: 12px;
  padding: 10px 12px;
  background: rgba(189,159,79,0.08);
  border-left: 3px solid var(--agc-gold);
  border-radius: 4px;
  font-size: 11px;
  color: var(--agc-text-muted);
  line-height: 1.5;
}

/* 시설별 장비 사용료 */
.agc-fee-facilities {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-bottom: 40px;
}
.agc-fee-facility {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  overflow: hidden;
}
.agc-fee-facility-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--agc-border);
  background: linear-gradient(135deg, rgba(45, 74, 30, 0.025), rgba(189, 159, 79, 0.04));
}
.agc-fee-facility-head .icon {
  width: 36px;
  height: 36px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  flex-shrink: 0;
}
.agc-fee-facility-head .name {
  flex: 1;
  font-size: 15px;
  font-weight: 700;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
}
.agc-fee-facility-head .name .sub {
  font-weight: 600;
  font-size: 12px;
  color: var(--agc-soft);
}
.agc-fee-facility-head .tag {
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 3px 10px;
  font-size: 11px;
  color: var(--agc-text-muted);
  font-weight: 600;
}
.agc-fee-facility-head .tag strong {
  color: var(--agc-accent);
  font-weight: 800;
}
.agc-fee-list {
  padding: 8px;
}
.agc-fee-item {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 8px;
  transition: all 0.2s;
}
.agc-fee-item:hover {
  background: var(--agc-cream);
}
.agc-fee-item + .agc-fee-item {
  border-top: 1px dashed var(--agc-border);
}
.agc-fee-item-info {
  display: flex;
  align-items: baseline;
  gap: 8px;
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
}
.agc-fee-item-name {
  min-width: 0;
  font-size: 13px;
  font-weight: 700;
  color: var(--agc-dark);
  margin-bottom: 0;
  letter-spacing: -0.015em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.agc-fee-item-spec {
  flex: 0 0 auto;
  font-size: 11px;
  color: var(--agc-text-muted);
  font-family: 'JetBrains Mono', monospace;
  white-space: nowrap;
}
.agc-fee-item-spec.empty {
  font-family: inherit;
  color: var(--agc-muted);
}
.agc-fee-item-price {
  display: inline-flex;
  align-items: baseline;
  justify-content: flex-end;
  gap: 2px;
  text-align: right;
  white-space: nowrap;
}
.agc-fee-item-price .num {
  font-size: 16px;
  font-weight: 800;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
  font-family: 'JetBrains Mono', monospace;
}
.agc-fee-item-price .unit {
  display: inline;
  font-size: 10px;
  color: var(--agc-text-muted);
  font-weight: 500;
  margin-top: 0;
}

/* 취득가액별 산정기준 표 */
.agc-criteria-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
  width: 100%;
  margin-bottom: 40px;
}
.agc-criteria {
  width: 100%;
  min-width: 0;
  background: white;
  border: 1px solid var(--agc-border);
  border-radius: 16px;
  overflow: hidden;
}
.agc-criteria-head {
  padding: 14px 18px;
  background: linear-gradient(135deg, rgba(45, 74, 30, 0.025), rgba(189, 159, 79, 0.04));
  border-bottom: 1px solid var(--agc-border);
  display: flex;
  align-items: center;
  gap: 10px;
}
.agc-criteria-head .icon {
  width: 32px;
  height: 32px;
  background: var(--agc-dark);
  color: var(--agc-gold);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  flex-shrink: 0;
}
.agc-criteria-head h4 {
  font-size: 14px;
  font-weight: 700;
  color: var(--agc-dark);
  letter-spacing: -0.02em;
}
.agc-criteria-table-wrap {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}
.agc-criteria-table {
  width: 100%;
  min-width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}
.agc-criteria-table thead th {
  background: var(--agc-cream-deep);
  padding: 10px 12px;
  font-size: 11px;
  font-weight: 700;
  color: var(--agc-dark);
  text-align: left;
  letter-spacing: 0.05em;
  border-bottom: 1px solid var(--agc-border);
}
.agc-criteria-table thead th:last-child {
  text-align: right;
}
.agc-criteria-table tbody td {
  padding: 10px 12px;
  font-size: 12px;
  color: var(--agc-text);
  border-bottom: 1px dashed var(--agc-border);
}
.agc-criteria-table tbody tr:last-child td {
  border-bottom: none;
}
.agc-criteria-table tbody tr:hover td {
  background: var(--agc-cream);
}
.agc-criteria-table .price {
  text-align: right;
  font-family: 'JetBrains Mono', monospace;
  font-weight: 700;
  color: var(--agc-accent);
  font-size: 13px;
}
.agc-criteria-table .center {
  text-align: center;
  color: var(--agc-text-muted);
}

/* 안내사항 */
@media (max-width: 640px) {
  .agc-fee-page .agc-criteria-wrap {
    width: calc(100% + 16px);
    max-width: calc(100% + 16px);
    margin-left: -8px;
    margin-right: -8px;
    gap: 10px;
  }

  .agc-fee-page .agc-criteria {
    border-radius: 12px;
  }

  .agc-fee-page .agc-criteria-head {
    padding: 12px 12px;
  }

  .agc-fee-page .agc-criteria-table-wrap {
    width: 100%;
    max-width: 100%;
    overflow-x: visible;
  }

  .agc-fee-page .agc-criteria-table {
    display: table;
    width: 100% !important;
    min-width: 100%;
    table-layout: fixed;
  }

  .agc-fee-page .agc-criteria-table thead th,
  .agc-fee-page .agc-criteria-table tbody td {
    padding: 9px 8px;
    white-space: nowrap;
  }

  .agc-fee-page .agc-criteria-table thead th:nth-child(1),
  .agc-fee-page .agc-criteria-table tbody td:nth-child(1) {
    width: 48%;
  }

  .agc-fee-page .agc-criteria-table thead th:nth-child(2),
  .agc-fee-page .agc-criteria-table tbody td:nth-child(2) {
    width: 16%;
    text-align: center;
  }

  .agc-fee-page .agc-criteria-table thead th:nth-child(3),
  .agc-fee-page .agc-criteria-table tbody td:nth-child(3) {
    width: 36%;
    text-align: right;
  }
}

.agc-notes {
  background: var(--agc-cream-deep);
  border: 1px solid var(--agc-border);
  border-radius: 14px;
  padding: 18px;
  margin-bottom: 36px;
}
.agc-notes-title {
  font-size: 13px;
  font-weight: 700;
  color: var(--agc-dark);
  margin-bottom: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.agc-notes-title i {
  color: var(--agc-gold);
}
.agc-notes ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.agc-notes li {
  padding: 6px 0 6px 18px;
  font-size: 12px;
  color: var(--agc-text-muted);
  line-height: 1.6;
  position: relative;
}
.agc-notes li::before {
  content: '';
  position: absolute;
  left: 4px;
  top: 13px;
  width: 5px;
  height: 5px;
  background: var(--agc-gold);
  border-radius: 50%;
}
.agc-notes li strong {
  color: var(--agc-dark);
  font-weight: 700;
}

/* CTA */
.agc-cta {
  padding: 28px 22px;
  background: var(--agc-dark);
  border-radius: 16px;
  text-align: center;
  color: white;
  position: relative;
  overflow: hidden;
}
.agc-cta::before {
  content: '';
  position: absolute;
  top: -60%;
  right: -20%;
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(189,159,79,0.25), transparent 60%);
  pointer-events: none;
}
.agc-cta::after {
  content: '';
  position: absolute;
  bottom: -50%;
  left: -10%;
  width: 200px;
  height: 200px;
  background: radial-gradient(circle, rgba(107,140,85,0.2), transparent 60%);
  pointer-events: none;
}
.agc-cta-content { position: relative; z-index: 1; }
.agc-cta h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 8px;
  letter-spacing: -0.02em;
  color: white;
}
.agc-cta p {
  font-size: 13px;
  opacity: 0.85;
  margin-bottom: 18px;
  line-height: 1.6;
  color: white;
}
.agc-cta-btns {
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
}
.agc-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--agc-gold);
  color: var(--agc-dark);
  padding: 12px 22px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s;
  letter-spacing: -0.01em;
}
.agc-cta-btn:hover {
  background: var(--agc-gold-light);
  transform: translateY(-2px);
  box-shadow: 0 8px 16px rgba(189,159,79,0.3);
}
.agc-cta-btn.outline {
  background: transparent;
  color: white;
  border: 1px solid rgba(255,255,255,0.3);
}
.agc-cta-btn.outline:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.5);
  box-shadow: none;
}
.agc-cta-btn i { font-size: 11px; transition: transform 0.2s; }
.agc-cta-btn:hover i { transform: translateX(3px); }

/* Tablet */
@media (min-width: 640px) {
  .agc-rules {
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
  }
}

/* Desktop */
@media (min-width: 768px) {
  .agc-fee-page .agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
  .agc-fee-page .agc-page-head h2{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
  .agc-fee-page .agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}

  .agc-rule { padding: 22px 16px; }
  .agc-rule .rule-icon { width: 42px; height: 42px; font-size: 16px; }
  .agc-rule .rule-value { font-size: 24px; }
  .agc-rule .rule-label { font-size: 12px; }

  .agc-fee-page .agc-section-title h3 { font-size: 20px; }

  .agc-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }
  .agc-process-head { padding: 22px; }
  .agc-process-icon { width: 56px; height: 56px; font-size: 24px; border-radius: 14px; }
  .agc-process-name { font-size: 18px; }
  .agc-process-body { padding: 22px; }
  .agc-process-stat-item .value { font-size: 22px; }

  .agc-fee-facility-head { padding: 16px 22px; }
  .agc-fee-facility-head .icon { width: 40px; height: 40px; font-size: 17px; }
  .agc-fee-facility-head .name { font-size: 16px; }
  .agc-fee-list { padding: 10px; }
  .agc-fee-item { padding: 14px 16px; gap: 16px; }
  .agc-fee-item-name { font-size: 14px; }
  .agc-fee-item-price .num { font-size: 18px; }

  .agc-criteria-wrap {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .agc-criteria-head { padding: 16px 22px; }
  .agc-criteria-head h4 { font-size: 15px; }
  .agc-criteria-table thead th { padding: 12px 16px; font-size: 12px; }
  .agc-criteria-table tbody td { padding: 12px 16px; font-size: 13px; }
  .agc-criteria-table .price { font-size: 14px; }

  .agc-notes { padding: 24px; }
  .agc-notes-title { font-size: 14px; }
  .agc-notes li { font-size: 13px; padding-left: 20px; }

  .agc-cta { padding: 44px 32px; }
  .agc-cta h3 { font-size: 24px; }
  .agc-cta p { font-size: 14px; }
}

/* from 00023.php */
.agc-about-page{--dark:#2d4a1e;--green:#4a7c3f;--soft:#edf4e6;--gold:#bd9f4f;--line:#e0d8c4;--text:#2d2a20;--muted:#6b6450;color:var(--text);line-height:1.7;letter-spacing:0}
.agc-about-page *{box-sizing:border-box}
.agc-about-page h3,.agc-about-page h4,.agc-about-page p,.agc-about-page ul{margin:0}
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-kicker:before,.agc-page-kicker:after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h3{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}
.agc-about-hero{display:grid;grid-template-columns:1.08fr .92fr;gap:18px;margin-bottom:24px}
.agc-about-box{border:1px solid var(--line);border-radius:8px;background:#fff;padding:24px;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.agc-about-box.main{background:linear-gradient(135deg,#fbfaf4 0%,#edf4e6 100%)}
.agc-about-box h4{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--dark);font-size:20px;font-weight:900}
.agc-about-box h4 i{color:var(--green)}
.agc-about-box p{color:#3b3a32;font-size:15px}
.agc-about-meta{display:grid;gap:10px}
.agc-about-meta div{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px}
.agc-about-meta strong{flex:0 0 74px;color:var(--dark);font-size:13px}
.agc-about-meta span{color:var(--muted);font-size:13px}
.agc-about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}
.agc-about-stat{border:1px solid var(--line);border-radius:8px;background:#fff;padding:18px;text-align:center}
.agc-about-stat strong{display:block;margin-bottom:5px;color:var(--green);font-size:28px;font-weight:900;line-height:1}
.agc-about-stat span{color:var(--muted);font-size:13px;font-weight:700}
.agc-about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}
.agc-about-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:20px}
.agc-about-icon{width:44px;height:44px;margin-bottom:14px;border-radius:8px;background:var(--soft);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:18px}
.agc-about-card h4{margin-bottom:8px;color:var(--dark);font-size:17px;font-weight:900}
.agc-about-card p{color:var(--muted);font-size:14px}
.agc-about-list{padding-left:19px;color:var(--muted);font-size:14px}
.agc-about-list li{margin-bottom:6px}
.agc-about-list li:last-child{margin-bottom:0}
.agc-about-notice{border-left:4px solid var(--gold);border-radius:8px;background:#faf6ec;padding:18px 20px;color:#514831;font-size:14px}
.agc-about-notice strong{color:var(--dark)}
#content_area .portal-body .agc-about-page .agc-about-photo-main{width:100%;max-width:100%;margin-left:0;margin-right:0;aspect-ratio:3.25/1;border:1px solid var(--line);border-radius:8px;overflow:hidden}
#content_area .portal-body .agc-about-page .agc-about-photo-main img{display:block;width:100%;max-width:none;height:100%;object-fit:cover;background:transparent}
@media(max-width:980px){.agc-about-hero,.agc-about-grid,.agc-about-stats{grid-template-columns:1fr}.agc-page-head h3{font-size:24px}}
@media(max-width:560px){.agc-about-box{padding:18px}.agc-about-meta div{display:block}.agc-about-meta strong{display:block;margin-bottom:4px}}

/* from 00024.php */
.agc-process-page{--dark:#2d4a1e;--green:#4a7c3f;--soft:#edf4e6;--gold:#bd9f4f;--line:#e0d8c4;--text:#2d2a20;--muted:#6b6450;color:var(--text);line-height:1.7;letter-spacing:0}
.agc-process-page *{box-sizing:border-box}
.agc-process-page h3,.agc-process-page h4,.agc-process-page p,.agc-process-page ol,.agc-process-page ul{margin:0}
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-kicker:before,.agc-page-kicker:after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h3{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}
.agc-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:26px}
.agc-flow-step{position:relative;border:1px solid var(--line);border-radius:8px;background:#fff;padding:18px 14px;text-align:center}
.agc-flow-step span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:10px;border-radius:8px;background:var(--green);color:#fff;font-weight:900}
.agc-flow-step strong{display:block;color:var(--dark);font-size:15px}
.agc-flow-step small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.agc-process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px}
.agc-process-card{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden}
.agc-process-title{padding:18px 20px;background:linear-gradient(135deg,#fbfaf4 0%,#edf4e6 100%);border-bottom:1px solid var(--line)}
.agc-process-title h4{display:flex;align-items:center;gap:10px;color:var(--dark);font-size:18px;font-weight:900}
.agc-process-title h4 i{color:var(--green)}
.agc-process-body{padding:20px}
.agc-process-list{padding-left:20px;color:#46463d;font-size:14px}
.agc-process-list li{margin-bottom:8px}
.agc-equip-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}
.agc-equip-tags span{display:inline-flex;align-items:center;min-height:28px;padding:4px 9px;border-radius:8px;background:#faf6ec;color:#5e512e;font-size:12px;font-weight:800}
.agc-process-note{border-left:4px solid var(--gold);border-radius:8px;background:#faf6ec;padding:18px 20px;color:#514831;font-size:14px}
.agc-process-note strong{color:var(--dark)}
@media(max-width:980px){.agc-flow,.agc-process-grid{grid-template-columns:1fr}.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}.agc-page-head h3{font-size:24px}}

/* from 00025.php */
.agc-work-page{--dark:#2d4a1e;--green:#4a7c3f;--soft:#edf4e6;--gold:#bd9f4f;--line:#e0d8c4;--text:#2d2a20;--muted:#6b6450;color:var(--text);line-height:1.7;letter-spacing:0}
.agc-work-page *{box-sizing:border-box}
.agc-work-page h3,.agc-work-page h4,.agc-work-page p,.agc-work-page ul{margin:0}
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-kicker:before,.agc-page-kicker:after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h3{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}
.agc-work-summary{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:22px}
.agc-work-summary-card{border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,#fbfaf4 0%,#edf4e6 100%);padding:22px}
.agc-work-summary-card h4{display:flex;align-items:center;gap:10px;margin-bottom:9px;color:var(--dark);font-size:18px;font-weight:900}
.agc-work-summary-card h4 i{color:var(--green)}
.agc-work-summary-card p{color:#4f5548;font-size:14px}
.agc-work-flow{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:22px}
.agc-work-step{position:relative;border:1px solid var(--line);border-radius:8px;background:#fff;padding:17px 12px;text-align:center}
.agc-work-step span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:9px;border-radius:8px;background:var(--green);color:#fff;font-weight:900}
.agc-work-step strong{display:block;color:var(--dark);font-size:15px}
.agc-work-step small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.agc-work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.agc-work-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:20px;min-height:226px}
.agc-work-icon{width:44px;height:44px;margin-bottom:14px;border-radius:8px;background:var(--soft);color:var(--green);display:flex;align-items:center;justify-content:center;font-size:18px}
.agc-work-card h4{margin-bottom:9px;color:var(--dark);font-size:17px;font-weight:900}
.agc-work-list{padding-left:18px;color:var(--muted);font-size:14px}
.agc-work-list li{margin-bottom:6px}
.agc-work-list li:last-child{margin-bottom:0}
.agc-work-notice{border-left:4px solid var(--gold);border-radius:8px;background:#faf6ec;padding:18px 20px;color:#514831;font-size:14px}
.agc-work-notice strong{color:var(--dark)}
@media(max-width:980px){.agc-work-summary,.agc-work-grid,.agc-work-flow{grid-template-columns:1fr}.agc-page-head h3{font-size:24px}}

/* from 00026.php */
.agc-law-page{--dark:#2d4a1e;--green:#4a7c3f;--soft:#edf4e6;--gold:#bd9f4f;--line:#e0d8c4;--text:#2d2a20;--muted:#6b6450;color:var(--text);line-height:1.7;letter-spacing:0}
.agc-law-page *{box-sizing:border-box}
.agc-law-page h3,.agc-law-page h4,.agc-law-page p,.agc-law-page ul{margin:0}
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-kicker:before,.agc-page-kicker:after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h3{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}
.agc-law-base{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin-bottom:22px}
.agc-law-box{border:1px solid var(--line);border-radius:8px;background:#fff;padding:22px}
.agc-law-box.main{background:linear-gradient(135deg,#fbfaf4 0%,#edf4e6 100%)}
.agc-law-box h4{display:flex;align-items:center;gap:10px;margin-bottom:10px;color:var(--dark);font-size:18px;font-weight:900}
.agc-law-box h4 i{color:var(--green)}
.agc-law-box p{color:#4f5548;font-size:14px}
.agc-law-meta{display:grid;gap:8px}
.agc-law-meta div{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:8px;background:#fff;padding:14px}
.agc-law-meta strong{flex:0 0 72px;color:var(--dark);font-size:13px}
.agc-law-meta span{color:var(--muted);font-size:13px}
.agc-law-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:22px}
.agc-law-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:20px}
.agc-law-card h4{display:flex;align-items:center;gap:10px;margin-bottom:10px;color:var(--dark);font-size:18px;font-weight:900}
.agc-law-card h4 i{color:var(--green)}
.agc-law-list{padding-left:19px;color:#4f5548;font-size:14px}
.agc-law-list li{margin-bottom:7px}
.agc-law-list li:last-child{margin-bottom:0}
.agc-law-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
.agc-law-step{border:1px solid var(--line);border-radius:8px;background:#fff;padding:17px 14px;text-align:center}
.agc-law-step span{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;margin-bottom:10px;border-radius:8px;background:var(--green);color:#fff;font-weight:900}
.agc-law-step strong{display:block;color:var(--dark);font-size:15px}
.agc-law-step small{display:block;margin-top:4px;color:var(--muted);font-size:12px}
.agc-law-alert{border-left:4px solid var(--gold);border-radius:8px;background:#faf6ec;padding:18px 20px;color:#514831;font-size:14px}
.agc-law-alert strong{color:var(--dark)}
.agc-law-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.agc-law-tags span{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border-radius:8px;background:#fff;border:1px solid var(--line);color:var(--dark);font-size:13px;font-weight:800}
@media(max-width:980px){.agc-law-base,.agc-law-grid,.agc-law-steps{grid-template-columns:1fr}.agc-page-head h3{font-size:24px}}

.agc-flow-step,
.agc-work-step,
.agc-law-step {
	display: grid;
	grid-template-columns: 32px minmax(0, 1fr);
	align-items: center;
	column-gap: 10px;
	text-align: left;
}

.agc-flow-step span,
.agc-work-step span,
.agc-law-step span {
	margin-bottom: 0;
}

.agc-flow-step strong,
.agc-work-step strong,
.agc-law-step strong {
	display: block;
	min-width: 0;
}

.agc-flow-step small,
.agc-work-step small,
.agc-law-step small {
	grid-column: 2;
}

.agc-about-card,
.agc-work-card {
	display: grid;
	grid-template-columns: 44px minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
}

.agc-about-icon,
.agc-work-icon {
	margin-bottom: 0;
}

.agc-about-card h4,
.agc-work-card h4 {
	margin-bottom: 0;
}

.agc-about-card p,
.agc-about-list,
.agc-work-list {
	grid-column: 1 / -1;
	margin-top: 10px;
}

.agf-process-step {
	display: grid !important;
	grid-template-columns: 30px minmax(0, 1fr) !important;
	align-items: center !important;
	column-gap: 10px !important;
	text-align: left !important;
}

.agf-process-step b {
	margin: 0 !important;
}

.agf-process-step strong {
	display: block !important;
	margin-top: 0 !important;
	min-width: 0 !important;
}

.agf-process-step small {
	grid-column: 2 !important;
}

/* from 00028.php */
.agc-location-page{--dark:#2d4a1e;--green:#4a7c3f;--soft:#edf4e6;--gold:#bd9f4f;--line:#e0d8c4;--text:#2d2a20;--muted:#6b6450;color:var(--text);line-height:1.7;letter-spacing:0}
.agc-location-page *{box-sizing:border-box}
.agc-location-page h2,.agc-location-page h3,.agc-location-page h4,.agc-location-page p,.agc-location-page ul{margin:0}
.agc-page-head{text-align:center;padding:32px 0 30px;margin:0 0 24px;position:relative;background:transparent;border:0;border-radius:0}
.agc-page-kicker{display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;color:var(--gold,var(--agc-gold,#bd9f4f));font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}
.agc-page-kicker:before,.agc-page-kicker:after{content:"";width:24px;height:1px;background:var(--gold,var(--agc-gold,#bd9f4f));opacity:.55}
.agc-page-head h3{display:block;margin:0;color:var(--dark,var(--agc-dark,#2d4a1e));font-size:30px;font-weight:900;line-height:1.25;letter-spacing:0;white-space:normal}
.agc-page-head p{display:block;max-width:800px;margin:12px auto 0;color:var(--muted,var(--agc-text-muted,#6b6450));font-size:15px;line-height:1.7;letter-spacing:0}
.agc-location-map{border:1px solid var(--line);border-radius:8px;background:#fff;overflow:hidden;margin-bottom:22px;box-shadow:0 8px 18px rgba(15,23,42,.04)}
.agc-location-frame{position:relative;height:360px;background:#f2f4ed;overflow:hidden}
.agc-location-frame .root_daum_roughmap{display:block;width:100% !important;height:360px !important;max-width:none !important;overflow:hidden !important}
.agc-location-frame .root_daum_roughmap .wrap_map{height:360px !important}
.agc-kakao-map{width:100%;height:360px}
.agc-location-map-fallback{display:none;position:absolute;inset:0;align-items:center;justify-content:center;padding:24px;text-align:center;background:linear-gradient(135deg,#f6f2e8 0%,#edf4e6 100%);color:var(--muted);font-size:14px}
.agc-location-map-fallback strong{display:block;margin-bottom:6px;color:var(--dark);font-size:18px}
.agc-location-map-fallback a{display:inline-flex;align-items:center;gap:7px;margin-top:10px;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--dark);font-size:13px;font-weight:800;text-decoration:none}
.agc-location-map-info{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:20px 22px;border-top:1px solid var(--line);background:linear-gradient(135deg,#fbfaf4 0%,#edf4e6 100%)}
.agc-location-map-info strong{display:flex;align-items:center;gap:10px;color:var(--dark);font-size:18px;font-weight:900}
.agc-location-map-info strong i{color:var(--green)}
.agc-location-map-info p{margin-top:6px;color:#4f5548;font-size:14px}
.agc-location-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
.agc-location-actions a{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--dark);font-size:13px;font-weight:800;text-decoration:none}
.agc-location-actions a:hover{border-color:var(--green);color:var(--green)}
.agc-location-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:14px;margin-bottom:22px}
.agc-location-card{border:1px solid var(--line);border-radius:8px;background:#fff;padding:22px}
.agc-location-card h4{display:flex;align-items:center;gap:10px;margin-bottom:12px;color:var(--dark);font-size:18px;font-weight:900}
.agc-location-card h4 i{color:var(--green)}
.agc-location-list{padding-left:19px;color:#4f5548;font-size:14px}
.agc-location-list li{margin-bottom:8px}
.agc-location-list li:last-child{margin-bottom:0}
.agc-location-note{display:grid;gap:10px}
.agc-location-box{border:1px solid var(--line);border-radius:8px;background:#fff;padding:15px}
.agc-location-box strong{display:block;margin-bottom:5px;color:var(--dark);font-size:14px}
.agc-location-box p{color:var(--muted);font-size:14px}
.agc-location-alert{border-left:4px solid var(--gold);border-radius:8px;background:#faf6ec;padding:18px 20px;color:#514831;font-size:14px}
.agc-location-alert strong{color:var(--dark)}
@media(max-width:980px){.agc-location-map-info,.agc-location-grid{grid-template-columns:1fr}.agc-location-actions{justify-content:flex-start}.agc-page-head h3{font-size:24px}}

/* Agcenter education guide/reservation */
.edu-guide,
.edu-reserve {
	--edu-green: #1f6a3c;
	--edu-green-dark: #123d2a;
	--edu-gold: #b8922a;
	--edu-line: #e4d8c4;
	--edu-soft: #f7f3ea;
	--edu-soft-green: #eef7ef;
	--edu-text: #1d2b23;
	--edu-muted: #667085;
	padding: 8px 0 58px;
	color: var(--edu-text);
}

.edu-guide-head,
.edu-reserve-head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: 18px;
	align-items: end;
	margin-bottom: 22px;
	padding: 24px 26px;
	border: 1px solid var(--edu-line);
	border-radius: 8px;
	background: linear-gradient(135deg, #fff 0%, #fbfaf4 52%, #eef7ef 100%);
	box-shadow: 0 14px 30px rgba(18, 61, 42, .07);
}

.edu-guide-head h3,
.edu-reserve-head h3 {
	margin: 0;
	color: var(--edu-green-dark);
	font-family: "Noto Serif KR", serif;
	font-size: 28px;
	font-weight: 900;
	line-height: 1.25;
	letter-spacing: 0;
}

.edu-guide-head h3::before,
.edu-reserve-head h3::before {
	content: "EDUCATION";
	display: block;
	margin-bottom: 7px;
	color: var(--edu-gold);
	font-family: "Noto Sans KR", "Pretendard", "Malgun Gothic", Arial, sans-serif;
	font-size: 12px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0;
}

.edu-guide-head p,
.edu-reserve-head p {
	max-width: 720px;
	margin: 9px 0 0;
	color: #53635a;
	font-size: 15px;
	line-height: 1.75;
	letter-spacing: 0;
	word-break: keep-all;
}

.edu-guide-btn,
.edu-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid var(--edu-green);
	border-radius: 8px;
	background: var(--edu-green);
	color: #fff;
	font-size: 14px;
	font-weight: 900;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, color .16s ease, transform .16s ease, box-shadow .16s ease;
}

.edu-guide-btn::after,
.edu-btn.primary::after {
	content: "";
	width: 7px;
	height: 7px;
	border-top: 2px solid currentColor;
	border-right: 2px solid currentColor;
	transform: rotate(45deg);
}

.edu-guide-btn:hover,
.edu-guide-btn:focus,
.edu-btn:hover,
.edu-btn:focus {
	border-color: var(--edu-green-dark);
	background: var(--edu-green-dark);
	color: #fff;
	box-shadow: 0 10px 20px rgba(31, 106, 60, .18);
	transform: translateY(-1px);
}

.edu-guide-btn.is-sub,
.edu-btn {
	background: #fff;
	color: var(--edu-green-dark);
}

.edu-guide-btn.is-sub:hover,
.edu-guide-btn.is-sub:focus,
.edu-btn:hover,
.edu-btn:focus {
	color: #fff;
}

.edu-btn.primary {
	background: var(--edu-green);
	color: #fff;
}

.edu-guide-list {
	display: grid;
	gap: 18px;
}

.edu-guide-card {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--edu-line);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 18px 34px rgba(18, 61, 42, .08);
}

.edu-guide-card::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 4px;
	background: linear-gradient(90deg, var(--edu-green) 0%, var(--edu-gold) 100%);
}

.edu-guide-card-head {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 18px;
	padding: 26px 28px 22px;
	background: linear-gradient(135deg, #fff 0%, #fffdf7 100%);
	border-bottom: 1px solid #efe6d8;
}

.edu-guide-card-head h4 {
	margin: 0;
	color: var(--edu-green-dark);
	font-family: "Noto Serif KR", serif;
	font-size: 23px;
	font-weight: 900;
	line-height: 1.35;
	letter-spacing: 0;
	word-break: keep-all;
}

.edu-guide-status {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 32px;
	padding: 0 12px;
	border-radius: 999px;
	background: #e7f6ec;
	color: #176a39;
	font-size: 13px;
	font-weight: 900;
	white-space: nowrap;
}

.edu-guide-status.wait {
	background: #fff4d8;
	color: #8a5700;
}

.edu-guide-status.closed,
.edu-guide-status.full {
	background: #f1f4f2;
	color: #667085;
}

.edu-guide-info {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-bottom: 1px solid #efe6d8;
	background: #fff;
}

.edu-guide-info div {
	min-width: 0;
	padding: 18px 20px;
	border-right: 1px solid #efe6d8;
}

.edu-guide-info div:last-child {
	border-right: 0;
}

.edu-guide-info span {
	display: block;
	margin-bottom: 6px;
	color: var(--edu-muted);
	font-size: 12px;
	font-weight: 900;
	line-height: 1.35;
}

.edu-guide-info strong {
	display: block;
	color: var(--edu-text);
	font-size: 15px;
	font-weight: 900;
	line-height: 1.45;
	word-break: keep-all;
}

.edu-guide-body {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 16px;
	padding: 22px 28px;
	background: #fff;
}

.edu-guide-section h5 {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 10px;
	color: var(--edu-green-dark);
	font-size: 16px;
	font-weight: 900;
	letter-spacing: 0;
}

.edu-guide-section h5::before {
	content: "";
	width: 8px;
	height: 8px;
	border-radius: 999px;
	background: var(--edu-gold);
}

.edu-guide-section div {
	min-height: 104px;
	padding: 16px 17px;
	border: 1px solid #eee3d2;
	border-radius: 8px;
	background: #fbfcf8;
	color: #344054;
	font-size: 15px;
	line-height: 1.8;
	white-space: pre-line;
	word-break: keep-all;
}

.edu-guide-card-actions {
	display: flex;
	justify-content: flex-end;
	gap: 8px;
	padding: 0 28px 24px;
	background: #fff;
}

.edu-guide-disabled {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border: 1px solid #d4d8d3;
	border-radius: 8px;
	background: #f2f4f2;
	color: #667085;
	font-size: 14px;
	font-weight: 900;
}

.edu-guide-empty,
.edu-alert {
	padding: 20px 22px;
	border: 1px solid var(--edu-line);
	border-radius: 8px;
	background: #fff;
	color: var(--edu-muted);
	font-weight: 800;
	text-align: center;
}

.edu-alert {
	margin: 0 0 16px;
	border-color: #f0c4c4;
	background: #fff5f5;
	color: #b4232d;
	text-align: left;
}

.edu-notice {
	position: relative;
	margin: 0 0 18px;
	padding: 18px 20px 18px 54px;
	border: 1px solid #cfe4d0;
	border-radius: 8px;
	background: linear-gradient(135deg, #f3fbf1 0%, #fffdf7 100%);
	color: var(--edu-green-dark);
	font-weight: 900;
	line-height: 1.75;
	word-break: keep-all;
}

.edu-notice::before {
	content: "!";
	position: absolute;
	top: 18px;
	left: 20px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 999px;
	background: var(--edu-green);
	color: #fff;
	font-size: 14px;
	font-weight: 900;
	line-height: 1;
}

.edu-form {
	overflow: hidden;
	border: 1px solid var(--edu-line);
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 18px 34px rgba(18, 61, 42, .08);
}

.edu-row {
	display: grid;
	grid-template-columns: 200px minmax(0, 1fr);
	border-bottom: 1px solid #efe6d8;
}

.edu-row:last-child {
	border-bottom: 0;
}

.edu-row label,
.edu-row .edu-label {
	display: flex;
	align-items: center;
	min-height: 68px;
	padding: 18px 20px;
	background: #f8f4ea;
	color: var(--edu-green-dark);
	font-size: 14px;
	font-weight: 900;
	line-height: 1.45;
}

.edu-field {
	min-width: 0;
	padding: 14px 18px;
}

.edu-input,
.edu-select {
	width: 100%;
	max-width: 480px;
	height: 46px;
	padding: 0 14px;
	border: 1px solid #d6c3a4;
	border-radius: 8px;
	background: #fff;
	color: #071a20;
	font-family: "Noto Sans KR", "Pretendard", "Malgun Gothic", Arial, sans-serif;
	font-size: 15px;
	line-height: 46px;
	outline: 2px solid transparent;
	transition: border-color .16s ease, box-shadow .16s ease;
}

.edu-select {
	max-width: 620px;
	padding-right: 36px;
}

.edu-input:focus,
.edu-select:focus {
	border-color: var(--edu-green);
	box-shadow: 0 0 0 3px rgba(31, 106, 60, .14);
}

.edu-radio-group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	min-height: 46px;
}

.edu-radio {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 38px;
	padding: 0 13px;
	border: 1px solid #e5dccb;
	border-radius: 8px;
	background: #fff;
	color: #27352c;
	font-size: 14px;
	font-weight: 900;
}

.edu-radio input,
.edu-agree input {
	width: 18px;
	height: 18px;
	accent-color: var(--edu-green);
}

.edu-agree {
	display: flex;
	gap: 9px;
	align-items: flex-start;
	margin-top: 12px;
	color: #27352c;
	font-weight: 900;
	line-height: 1.65;
}

.edu-switch-group {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
	gap: 10px;
	width: min(100%, 360px);
	min-height: 46px;
}

.edu-switch-card {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 56px;
	margin: 0;
	padding: 12px 16px;
	border: 1.5px solid #dfe5eb;
	border-radius: 10px;
	background: linear-gradient(180deg, #fff, #f8fafc);
	color: #27352c;
	font-size: 15px;
	font-weight: 900;
	line-height: 1.35;
	cursor: pointer;
	transition: border-color .16s ease, background .16s ease, box-shadow .16s ease, color .16s ease;
}

.edu-switch-card:hover {
	border-color: #a9c5ad;
	background: #f8fcf8;
}

.edu-switch-card:has(input:checked) {
	border-color: var(--edu-green);
	background: #f0f8f1;
	color: var(--edu-green-dark);
	box-shadow: 0 6px 16px rgba(31, 106, 60, .12);
}

.edu-switch-card input[type=checkbox],
.edu-switch-card input[type=radio] {
	appearance: none;
	-webkit-appearance: none;
	position: relative;
	flex: 0 0 44px;
	width: 44px;
	height: 24px;
	margin: 0;
	border: 1.5px solid #cbd5e1;
	border-radius: 999px;
	background: #e5e8ed;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, box-shadow .16s ease;
}

.edu-switch-card input[type=checkbox]::before,
.edu-switch-card input[type=radio]::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 3px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 1px 3px rgba(15, 23, 42, .22);
	transition: transform .16s ease;
}

.edu-switch-card input[type=checkbox]:checked,
.edu-switch-card input[type=radio]:checked {
	border-color: var(--edu-green);
	background: var(--edu-green);
}

.edu-switch-card input[type=checkbox]:checked::before,
.edu-switch-card input[type=radio]:checked::before {
	transform: translateX(20px);
}

.edu-switch-card input[type=checkbox]:focus-visible,
.edu-switch-card input[type=radio]:focus-visible {
	outline: 2px solid transparent;
	box-shadow: 0 0 0 3px rgba(31, 106, 60, .18);
}

.edu-switch-card-wide {
	width: 100%;
	max-width: 100%;
}

.edu-agree-text {
	padding: 16px 17px;
	border: 1px solid #e4d8c8;
	border-radius: 8px;
	background: #fbfcf8;
	color: var(--edu-muted);
	font-size: 13px;
	line-height: 1.7;
	word-break: keep-all;
}

.edu-agree-text strong {
	display: block;
	margin-bottom: 6px;
	color: var(--edu-green-dark);
	font-size: 15px;
	font-weight: 900;
}

.edu-agree-text p {
	margin: 0 0 12px;
	color: #53635a;
}

.edu-privacy-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: auto;
	border-top: 2px solid var(--edu-green-dark);
	background: #fff;
}

.edu-privacy-table caption {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.edu-privacy-table th,
.edu-privacy-table td {
	padding: 11px 12px;
	border-bottom: 1px solid #eadfcd;
	color: #344054;
	font-size: 13px;
	line-height: 1.65;
	text-align: left;
	vertical-align: top;
}

.edu-privacy-table th {
	width: 118px;
	min-width: 118px;
	max-width: 118px;
	background: #f7f2e9;
	color: var(--edu-green-dark);
	font-weight: 900;
}

.edu-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-top: 24px;
}

@media (max-width: 980px) {
	.edu-guide-info {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.edu-guide-info div:nth-child(2) {
		border-right: 0;
	}

	.edu-guide-info div:nth-child(-n+2) {
		border-bottom: 1px solid #efe6d8;
	}

	.edu-guide-body {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 640px) {
	.edu-guide,
	.edu-reserve {
		padding: 4px 0 40px;
	}

	.edu-guide-head,
	.edu-reserve-head {
		display: block;
		padding: 20px 18px;
	}

	.edu-guide-head h3,
	.edu-reserve-head h3 {
		font-size: 23px;
	}

	.edu-guide-head .edu-guide-btn {
		width: 100%;
		margin-top: 14px;
	}

	.edu-guide-card-head {
		display: block;
		padding: 22px 18px 18px;
	}

	.edu-guide-card-head h4 {
		font-size: 20px;
	}

	.edu-guide-status {
		margin-top: 12px;
	}

	.edu-guide-info {
		grid-template-columns: 1fr;
	}

	.edu-guide-info div {
		border-right: 0;
		border-bottom: 1px solid #efe6d8;
	}

	.edu-guide-info div:last-child {
		border-bottom: 0;
	}

	.edu-guide-body {
		padding: 18px;
	}

	.edu-guide-card-actions {
		display: grid;
		grid-template-columns: 1fr;
		padding: 0 18px 18px;
	}

	.edu-guide-btn,
	.edu-guide-disabled,
	.edu-btn {
		width: 100%;
	}

	.edu-row {
		grid-template-columns: 1fr;
	}

	.edu-row label,
	.edu-row .edu-label {
		min-height: 0;
		padding: 13px 16px;
	}

	.edu-field {
		padding: 13px 16px 16px;
	}

	.edu-input,
	.edu-select {
		max-width: none;
	}

	.edu-privacy-table,
	.edu-privacy-table tbody,
	.edu-privacy-table tr,
	.edu-privacy-table th,
	.edu-privacy-table td {
		display: block;
		width: 100%;
	}

	.edu-privacy-table th {
		border-bottom: 0;
	}

	.edu-actions {
		display: grid;
		grid-template-columns: 1fr;
	}
}

.scroll-top-btn {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 950;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	border: 1px solid rgba(184, 146, 42, .45);
	border-radius: 50%;
	background: var(--forest);
	color: #fff;
	font-size: 17px;
	box-shadow: 0 12px 28px rgba(28, 58, 42, .22);
	cursor: pointer;
	opacity: 0;
	pointer-events: none;
	transform: translateY(12px);
	transition: opacity .2s ease, transform .2s ease, background .2s ease, border-color .2s ease;
}

.scroll-top-btn.is-visible {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

.scroll-top-btn:hover,
.scroll-top-btn:focus {
	border-color: var(--gold);
	background: #2f5b3a;
	outline: 2px solid transparent;
}

.scroll-top-btn:focus-visible {
	outline: 3px solid rgba(184, 146, 42, .35);
	outline-offset: 3px;
}

@media (max-width: 640px) {
	.scroll-top-btn {
		right: 16px;
		bottom: 18px;
		width: 42px;
		height: 42px;
		font-size: 16px;
	}
}
/* AGCENTER CMS PAGE CONTENT STYLES - END */
