/*
Theme Name:  SURVEYON
Theme URI:   https://surveyon.kr/
Author:      SURVEYON
Author URI:  https://surveyon.kr/
Description: 리서치 전문기업 서베이온(SURVEYON)을 위한 커스텀 워드프레스 테마. 정량·정성조사, 통계분석, 정책정보화 실적을 공공기관 대상으로 격식 있게 전달하도록 설계했습니다. 데이터 시각화 라인 모티프와 넉넉한 여백을 기반으로 한 정제된 레이아웃.
Version:     1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License:     GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: surveyon
Tags:        business, custom-colors, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* ==========================================================================
   목차
   00. 웹폰트 (@font-face)
   01. 디자인 토큰 (Design Tokens)
   02. 리셋 & 베이스 (Reset & Base)
   03. 타이포그래피 (Typography)
   04. 레이아웃 프리미티브 (Layout Primitives)
   05. 데이터 모티프 (Data Motifs)
   06. 섹션 헤더 (Section Header)
   07. 버튼 (Buttons)
   08. 카드 (Cards)
   09. 배지 · 지표 (Badges & Stats)
   10. 폼 (Forms)
   11. 본문 콘텐츠 (Entry Content)
   12. 유틸리티 (Utilities)
   13. 접근성 (Accessibility)
   14. 모션 & 인쇄 (Motion & Print)
   ========================================================================== */


/* ==========================================================================
   00. 웹폰트 — Pretendard
   --------------------------------------------------------------------------
   경로는 style.css(테마 루트) 기준 상대 경로입니다.
   font-display: swap — 폰트 로딩 중에도 폴백으로 텍스트가 즉시 보입니다.

   9종을 모두 선언하지만, 브라우저는 실제로 화면에 쓰인 굵기만 내려받습니다.
   현재 테마가 사용하는 굵기는 400 · 500 · 600 · 700 네 가지입니다.
   ========================================================================== */

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Thin.woff2") format("woff2");
	font-weight: 100;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-ExtraLight.woff2") format("woff2");
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Light.woff2") format("woff2");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Regular.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Medium.woff2") format("woff2");
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-SemiBold.woff2") format("woff2");
	font-weight: 600;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Bold.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-ExtraBold.woff2") format("woff2");
	font-weight: 800;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Pretendard";
	src: url("assets/fonts/Pretendard-Black.woff2") format("woff2");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}


/* ==========================================================================
   01. 디자인 토큰
   ========================================================================== */

:root {
	/* --- 브랜드 컬러 --- */
	--sv-primary-dark: #1B0061;
	--sv-primary:      #5C46AB;
	--sv-accent:       #B08D57;
	--sv-base:         #F1EFEE;

	/* --- 브랜드 파생 톤 --- */
	--sv-primary-dark-90: #2A1274;
	--sv-primary-dark-80: #3A2287;
	--sv-primary-light:   #7B67C0;
	--sv-primary-050:     rgba(92, 70, 171, 0.05);
	--sv-primary-080:     rgba(92, 70, 171, 0.08);
	--sv-primary-120:     rgba(92, 70, 171, 0.12);
	--sv-primary-200:     rgba(92, 70, 171, 0.20);
	--sv-accent-dark:     #8F6F3F;
	--sv-accent-light:    #C9AC7F;
	--sv-accent-080:      rgba(176, 141, 87, 0.08);
	--sv-accent-200:      rgba(176, 141, 87, 0.20);
	--sv-accent-400:      rgba(176, 141, 87, 0.40);

	/* --- 중립 톤 --- */
	--sv-ink:        #16121F;
	--sv-ink-strong: #0C0917;
	--sv-body:       #3D3849;
	--sv-muted:      #6B6577;
	--sv-faint:      #9A94A5;
	--sv-line:       #E2DEDC;
	--sv-line-soft:  #ECE9E7;
	--sv-surface:    #FFFFFF;
	--sv-surface-2:  #FAF9F8;
	--sv-surface-3:  var(--sv-base);

	/* --- 다크 섹션 --- */
	--sv-dark-bg:      var(--sv-primary-dark);
	--sv-dark-bg-2:    #150049;
	--sv-dark-ink:     #FFFFFF;
	--sv-dark-body:    rgba(255, 255, 255, 0.78);
	--sv-dark-muted:   rgba(255, 255, 255, 0.56);
	--sv-dark-line:    rgba(255, 255, 255, 0.14);
	--sv-dark-surface: rgba(255, 255, 255, 0.05);

	/* --- 상태 --- */
	--sv-success: #1F7A5A;
	--sv-error:   #B3352F;

	/* --- 폰트 --- */
	/* Pretendard 우선, 로딩 실패·미지원 시 시스템 한글 폰트로 폴백 */
	--sv-font-sans:
		"Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo",
		"Noto Sans KR", "Malgun Gothic", "맑은 고딕", "Segoe UI", Roboto,
		"Helvetica Neue", Arial, sans-serif;
	--sv-font-display: var(--sv-font-sans);
	/* Pretendard는 tabular figure(tnum)를 지원하므로 본문과 같은 서체를 쓴다 */
	--sv-font-num: var(--sv-font-sans);
	--sv-font-mono:
		"SF Mono", ui-monospace, SFMono-Regular, Menlo, Consolas,
		"D2Coding", monospace;

	/* --- 타입 스케일 (clamp: 모바일 → 데스크톱) --- */
	--sv-fs-display: clamp(2.375rem, 1.55rem + 3.6vw, 4.25rem);  /*  38 → 68 */
	--sv-fs-h1:      clamp(2rem,     1.45rem + 2.4vw, 3.25rem);  /*  32 → 52 */
	--sv-fs-h2:      clamp(1.625rem, 1.28rem + 1.5vw, 2.5rem);   /*  26 → 40 */
	--sv-fs-h3:      clamp(1.25rem,  1.09rem + 0.7vw, 1.75rem);  /*  20 → 28 */
	--sv-fs-h4:      clamp(1.0625rem,1.00rem + 0.3vw, 1.25rem);  /*  17 → 20 */
	--sv-fs-lead:    clamp(1.0625rem,0.99rem + 0.35vw, 1.3125rem);/* 17 → 21 */
	--sv-fs-body:    1rem;                                        /*  16      */
	--sv-fs-sm:      0.9375rem;                                   /*  15      */
	--sv-fs-xs:      0.8125rem;                                   /*  13      */
	--sv-fs-eyebrow: 0.75rem;                                     /*  12      */

	/* --- 라인하이트 · 자간 --- */
	--sv-lh-tight:  1.18;
	--sv-lh-snug:   1.34;
	--sv-lh-normal: 1.62;
	--sv-lh-loose:  1.78;
	--sv-ls-tight:  -0.022em;
	--sv-ls-snug:   -0.012em;
	--sv-ls-normal: -0.003em;
	--sv-ls-wide:   0.08em;
	--sv-ls-eyebrow:0.16em;

	/* --- 스페이싱 --- */
	--sv-space-2:  0.125rem;
	--sv-space-4:  0.25rem;
	--sv-space-8:  0.5rem;
	--sv-space-12: 0.75rem;
	--sv-space-16: 1rem;
	--sv-space-20: 1.25rem;
	--sv-space-24: 1.5rem;
	--sv-space-32: 2rem;
	--sv-space-40: 2.5rem;
	--sv-space-48: 3rem;
	--sv-space-64: 4rem;
	--sv-space-80: 5rem;
	--sv-space-96: 6rem;
	--sv-space-128: 8rem;

	/* --- 섹션 여백 (넉넉하게) --- */
	--sv-section-y:    clamp(4.5rem, 3rem + 6vw, 8.5rem);
	--sv-section-y-sm: clamp(3rem,   2rem + 4vw, 5.5rem);

	/* --- 컨테이너 --- */
	--sv-container:      1240px;
	--sv-container-wide: 1440px;
	--sv-container-text: 760px;
	--sv-gutter:         clamp(1.25rem, 0.6rem + 2.6vw, 3rem);

	/* --- 라운딩 (격식 있는 인상 → 최소한으로) --- */
	--sv-radius-xs: 2px;
	--sv-radius-sm: 3px;
	--sv-radius:    4px;
	--sv-radius-lg: 6px;
	--sv-radius-pill: 999px;

	/* --- 그림자 (낮고 넓게, 컬러 틴트) --- */
	--sv-shadow-xs: 0 1px 2px rgba(27, 0, 97, 0.05);
	--sv-shadow-sm: 0 1px 3px rgba(27, 0, 97, 0.06), 0 6px 16px -8px rgba(27, 0, 97, 0.10);
	--sv-shadow-md: 0 2px 6px rgba(27, 0, 97, 0.06), 0 14px 32px -12px rgba(27, 0, 97, 0.14);
	--sv-shadow-lg: 0 4px 10px rgba(27, 0, 97, 0.07), 0 28px 56px -20px rgba(27, 0, 97, 0.20);

	/* --- 모션 --- */
	--sv-ease:     cubic-bezier(0.22, 0.61, 0.36, 1);
	--sv-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
	--sv-dur-fast: 140ms;
	--sv-dur:      220ms;
	--sv-dur-slow: 420ms;

	/* --- 레이어 --- */
	--sv-z-base:    1;
	--sv-z-sticky:  100;
	--sv-z-header:  200;
	--sv-z-overlay: 300;
	--sv-z-modal:   400;

	/* --- 헤더 --- */
	--sv-header-h:        84px;
	--sv-header-h-scroll: 68px;
}

@media (max-width: 900px) {
	:root {
		--sv-header-h:        64px;
		--sv-header-h-scroll: 60px;
	}
}


/* ==========================================================================
   02. 리셋 & 베이스
   ========================================================================== */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--sv-header-h-scroll) + 24px);
}

body {
	margin: 0;
	background-color: var(--sv-surface);
	color: var(--sv-body);
	font-family: var(--sv-font-sans);
	font-size: var(--sv-fs-body);
	line-height: var(--sv-lh-normal);
	letter-spacing: var(--sv-ls-normal);
	font-weight: 400;
	word-break: keep-all;
	overflow-wrap: break-word;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
	font-feature-settings: "kern" 1;
}

body.sv-nav-open {
	overflow: hidden;
}

h1, h2, h3, h4, h5, h6,
p, figure, blockquote, dl, dd, ol, ul, pre {
	margin: 0;
}

ul[class],
ol[class] {
	list-style: none;
	padding: 0;
}

img,
picture,
video,
canvas,
svg {
	display: block;
	max-width: 100%;
	height: auto;
}

svg {
	fill: currentColor;
}

iframe {
	max-width: 100%;
	border: 0;
}

a {
	color: var(--sv-primary);
	text-decoration: none;
	text-underline-offset: 0.22em;
	text-decoration-thickness: 1px;
	transition: color var(--sv-dur) var(--sv-ease);
}

a:hover {
	color: var(--sv-primary-dark);
}

button,
input,
select,
textarea {
	font: inherit;
	color: inherit;
	letter-spacing: inherit;
}

button {
	cursor: pointer;
	background: none;
	border: 0;
	padding: 0;
}

hr {
	border: 0;
	height: 1px;
	background-color: var(--sv-line);
	margin: var(--sv-space-48) 0;
}

::selection {
	background-color: var(--sv-primary-dark);
	color: #fff;
}

::placeholder {
	color: var(--sv-faint);
	opacity: 1;
}

:focus-visible {
	outline: 2px solid var(--sv-primary);
	outline-offset: 3px;
	border-radius: var(--sv-radius-xs);
}

/* 커스텀 스크롤바 (WebKit) */
@media (min-width: 901px) {
	::-webkit-scrollbar { width: 12px; height: 12px; }
	::-webkit-scrollbar-track { background: var(--sv-surface-2); }
	::-webkit-scrollbar-thumb {
		background: #CFCAD6;
		border: 3px solid var(--sv-surface-2);
		border-radius: var(--sv-radius-pill);
	}
	::-webkit-scrollbar-thumb:hover { background: var(--sv-faint); }
}


/* ==========================================================================
   03. 타이포그래피
   ========================================================================== */

h1, h2, h3, h4, h5, h6 {
	color: var(--sv-ink);
	font-family: var(--sv-font-display);
	font-weight: 700;
	line-height: var(--sv-lh-snug);
	letter-spacing: var(--sv-ls-snug);
}

h1 { font-size: var(--sv-fs-h1); line-height: var(--sv-lh-tight); letter-spacing: var(--sv-ls-tight); }
h2 { font-size: var(--sv-fs-h2); line-height: var(--sv-lh-tight); letter-spacing: var(--sv-ls-tight); }
h3 { font-size: var(--sv-fs-h3); }
h4 { font-size: var(--sv-fs-h4); }
h5 { font-size: var(--sv-fs-body); }
h6 {
	font-size: var(--sv-fs-xs);
	font-weight: 700;
	letter-spacing: var(--sv-ls-wide);
	text-transform: uppercase;
	color: var(--sv-muted);
}

strong, b { font-weight: 700; color: var(--sv-ink); }
em, i     { font-style: italic; }
small     { font-size: var(--sv-fs-xs); }

code, kbd, samp, pre {
	font-family: var(--sv-font-mono);
	font-size: 0.92em;
}

/* 숫자 표기 — 지표·연도·통계는 항상 tabular */
.sv-num,
.sv-stat__value,
time {
	font-family: var(--sv-font-num);
	font-variant-numeric: tabular-nums;
	font-feature-settings: "tnum" 1, "lnum" 1;
}

.sv-display {
	font-size: var(--sv-fs-display);
	font-weight: 700;
	line-height: var(--sv-lh-tight);
	letter-spacing: var(--sv-ls-tight);
	color: var(--sv-ink-strong);
	white-space: pre-line;
}

.sv-lead {
	font-size: var(--sv-fs-lead);
	line-height: var(--sv-lh-loose);
	color: var(--sv-muted);
	font-weight: 400;
	white-space: pre-line; /* 문장 안에 \n이 있으면 지정된 지점에서 줄바꿈 */
}

.sv-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: var(--sv-space-12);
	font-size: var(--sv-fs-eyebrow);
	font-weight: 700;
	letter-spacing: var(--sv-ls-eyebrow);
	text-transform: uppercase;
	color: var(--sv-accent);
	margin: 0;
}

.sv-eyebrow::before {
	content: "";
	width: 28px;
	height: 1px;
	background-color: currentColor;
	flex: none;
}

.sv-eyebrow--plain::before {
	display: none;
}

/* 슬로건 등 라틴 문구 */
.sv-tagline {
	font-size: var(--sv-fs-sm);
	font-style: italic;
	letter-spacing: 0.01em;
	color: var(--sv-muted);
}


/* ==========================================================================
   04. 레이아웃 프리미티브
   ========================================================================== */

.sv-container {
	width: 100%;
	max-width: calc(var(--sv-container) + var(--sv-gutter) * 2);
	margin-inline: auto;
	padding-inline: var(--sv-gutter);
}

.sv-container--wide {
	max-width: calc(var(--sv-container-wide) + var(--sv-gutter) * 2);
}

.sv-container--text {
	max-width: calc(var(--sv-container-text) + var(--sv-gutter) * 2);
}

.sv-section {
	position: relative;
	padding-block: var(--sv-section-y);
}

.sv-section--sm  { padding-block: var(--sv-section-y-sm); }
.sv-section--tight-top    { padding-top: 0; }
.sv-section--tight-bottom { padding-bottom: 0; }

.sv-section--base    { background-color: var(--sv-base); }
.sv-section--surface { background-color: var(--sv-surface); }
.sv-section--soft    { background-color: var(--sv-surface-2); }

/* 풀블리드 다크 섹션 — 플래그십 프로젝트 등 */
.sv-section--dark {
	background-color: var(--sv-dark-bg);
	color: var(--sv-dark-body);
	--sv-ink: var(--sv-dark-ink);
	--sv-ink-strong: var(--sv-dark-ink);
	--sv-body: var(--sv-dark-body);
	--sv-muted: var(--sv-dark-muted);
	--sv-faint: var(--sv-dark-muted);
	--sv-line: var(--sv-dark-line);
	--sv-line-soft: var(--sv-dark-line);
	--sv-surface: var(--sv-dark-surface);
	--sv-surface-2: var(--sv-dark-surface);
}

.sv-section--dark h1,
.sv-section--dark h2,
.sv-section--dark h3,
.sv-section--dark h4,
.sv-section--dark h5 {
	color: var(--sv-dark-ink);
}

.sv-section--dark a {
	color: #fff;
}

.sv-section--dark .sv-eyebrow {
	color: var(--sv-accent-light);
}

/* 섹션 간 얇은 구분선 */
.sv-section--ruled {
	border-top: 1px solid var(--sv-line);
}

/* --- 그리드 --- */
.sv-grid {
	display: grid;
	gap: var(--sv-space-32);
}

.sv-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.sv-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.sv-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.sv-grid--gap-sm { gap: var(--sv-space-20); }
.sv-grid--gap-lg { gap: var(--sv-space-48); }

/* 본문 + 사이드 (5:7, 7:5) */
.sv-grid--split      { grid-template-columns: minmax(0, 5fr) minmax(0, 7fr); gap: clamp(2.5rem, 5vw, 5rem); }
.sv-grid--split-flip { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: clamp(2.5rem, 5vw, 5rem); }

@media (max-width: 1024px) {
	.sv-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.sv-grid--split,
	.sv-grid--split-flip { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 780px) {
	.sv-grid--2,
	.sv-grid--3,
	.sv-grid--4 { grid-template-columns: minmax(0, 1fr); }
}

/* --- 스택 --- */
.sv-stack        > * + * { margin-top: var(--sv-space-16); }
.sv-stack--sm    > * + * { margin-top: var(--sv-space-8); }
.sv-stack--md    > * + * { margin-top: var(--sv-space-24); }
.sv-stack--lg    > * + * { margin-top: var(--sv-space-40); }
.sv-stack--xl    > * + * { margin-top: var(--sv-space-64); }

/* --- 클러스터 (가로 나열 + 줄바꿈) --- */
.sv-cluster {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--sv-space-12) var(--sv-space-16);
}

.sv-cluster--lg { gap: var(--sv-space-16) var(--sv-space-32); }


/* ==========================================================================
   05. 데이터 모티프 — 차트 라인 · 그리드 · 도트 매트릭스
   ========================================================================== */

/* 배경에 얹는 장식 레이어. 항상 pointer-events: none. */
.sv-motif {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
	overflow: hidden;
}

.sv-motif + * ,
.sv-section > .sv-container {
	position: relative;
	z-index: var(--sv-z-base);
}

/* 미세 그리드 — 통계 차트 배경 */
.sv-motif--grid {
	background-image:
		linear-gradient(to right, var(--sv-primary-080) 1px, transparent 1px),
		linear-gradient(to bottom, var(--sv-primary-080) 1px, transparent 1px);
	background-size: 72px 72px;
	background-position: center;
	-webkit-mask-image: radial-gradient(ellipse 78% 62% at 50% 40%, #000 12%, transparent 78%);
	mask-image: radial-gradient(ellipse 78% 62% at 50% 40%, #000 12%, transparent 78%);
}

.sv-section--dark .sv-motif--grid {
	background-image:
		linear-gradient(to right, rgba(255, 255, 255, 0.07) 1px, transparent 1px),
		linear-gradient(to bottom, rgba(255, 255, 255, 0.07) 1px, transparent 1px);
}

/* 도트 매트릭스 — 표본·응답 데이터 은유 */
.sv-motif--dots {
	background-image: radial-gradient(circle at center, var(--sv-primary-200) 1px, transparent 1.4px);
	background-size: 24px 24px;
	-webkit-mask-image: linear-gradient(to bottom, #000, transparent 88%);
	mask-image: linear-gradient(to bottom, #000, transparent 88%);
	opacity: 0.55;
}

.sv-section--dark .sv-motif--dots {
	background-image: radial-gradient(circle at center, rgba(176, 141, 87, 0.42) 1px, transparent 1.4px);
	opacity: 0.7;
}

/* 꺾은선 그래프 라인 — SVG 데이터 URI */
.sv-motif--plot {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 420' preserveAspectRatio='none'%3E%3Cpath d='M0 352 L160 300 L320 322 L480 236 L640 268 L800 168 L960 196 L1120 104 L1280 132 L1440 48' fill='none' stroke='%235C46AB' stroke-width='1.5' stroke-linejoin='round' stroke-linecap='round' opacity='0.28'/%3E%3Cpath d='M0 388 L160 366 L320 380 L480 330 L640 348 L800 296 L960 314 L1120 262 L1280 280 L1440 232' fill='none' stroke='%23B08D57' stroke-width='1.5' stroke-dasharray='5 6' stroke-linejoin='round' stroke-linecap='round' opacity='0.34'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 100% auto;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 18%, #000 82%, transparent);
	mask-image: linear-gradient(to right, transparent, #000 18%, #000 82%, transparent);
}

.sv-section--dark .sv-motif--plot {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 420' preserveAspectRatio='none'%3E%3Cpath d='M0 352 L160 300 L320 322 L480 236 L640 268 L800 168 L960 196 L1120 104 L1280 132 L1440 48' fill='none' stroke='%23C9AC7F' stroke-width='1.5' stroke-linejoin='round' stroke-linecap='round' opacity='0.5'/%3E%3Cpath d='M0 388 L160 366 L320 380 L480 330 L640 348 L800 296 L960 314 L1120 262 L1280 280 L1440 232' fill='none' stroke='%23FFFFFF' stroke-width='1.5' stroke-dasharray='5 6' stroke-linejoin='round' stroke-linecap='round' opacity='0.22'/%3E%3C/svg%3E");
}

/* 세로 축 눈금선 — 컨테이너 폭에 맞춘 컬럼 가이드 */
.sv-motif--axis {
	background-image: linear-gradient(to right, var(--sv-line) 1px, transparent 1px);
	background-size: calc(100% / 6) 100%;
	opacity: 0.7;
	-webkit-mask-image: linear-gradient(to bottom, transparent, #000 30%, #000 70%, transparent);
	mask-image: linear-gradient(to bottom, transparent, #000 30%, #000 70%, transparent);
}

/* 상단 코퍼 헤어라인 — 섹션 강조용 */
.sv-hairline {
	position: relative;
}

.sv-hairline::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 0;
	width: 56px;
	height: 2px;
	background-color: var(--sv-accent);
}

/* 그라디언트 러그 — 다크 섹션 상·하단 전환 */
.sv-fade-top,
.sv-fade-bottom {
	position: absolute;
	inset-inline: 0;
	height: 120px;
	pointer-events: none;
}

.sv-fade-top    { top: 0;    background: linear-gradient(to bottom, var(--sv-primary-dark), transparent); }
.sv-fade-bottom { bottom: 0; background: linear-gradient(to top,    var(--sv-primary-dark), transparent); }


/* ==========================================================================
   06. 섹션 헤더
   ========================================================================== */

.sv-section-head {
	max-width: 720px;
	margin-bottom: clamp(2.5rem, 1.6rem + 3vw, 4.5rem);
}

.sv-section-head--center {
	margin-inline: auto;
	text-align: center;
}

.sv-section-head--center .sv-eyebrow::before {
	display: none;
}

.sv-section-head--wide {
	max-width: 880px;
}

.sv-section-head__title {
	font-size: var(--sv-fs-h2);
	margin-top: var(--sv-space-20);
}

.sv-section-head__desc {
	margin-top: var(--sv-space-20);
	font-size: var(--sv-fs-lead);
	line-height: var(--sv-lh-loose);
	color: var(--sv-muted);
	white-space: pre-line; /* 문장 안에 \n이 있으면 지정된 지점에서 줄바꿈 */
}

/* 좌: 헤더 / 우: 보조 링크 */
.sv-section-head--split {
	max-width: none;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--sv-space-24) var(--sv-space-40);
}

.sv-section-head--split > * {
	max-width: 720px;
}


/* ==========================================================================
   07. 버튼
   ========================================================================== */

.sv-btn {
	--btn-bg: var(--sv-primary-dark);
	--btn-fg: #fff;
	--btn-bd: var(--sv-primary-dark);

	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--sv-space-8);
	padding: 0.875rem 1.75rem;
	min-height: 52px;
	background-color: var(--btn-bg);
	color: var(--btn-fg);
	border: 1px solid var(--btn-bd);
	border-radius: var(--sv-radius);
	font-size: var(--sv-fs-sm);
	font-weight: 700;
	letter-spacing: var(--sv-ls-normal);
	line-height: 1.2;
	text-align: center;
	white-space: nowrap;
	transition:
		background-color var(--sv-dur) var(--sv-ease),
		border-color var(--sv-dur) var(--sv-ease),
		color var(--sv-dur) var(--sv-ease),
		transform var(--sv-dur-fast) var(--sv-ease),
		box-shadow var(--sv-dur) var(--sv-ease);
}

.sv-btn:hover {
	--btn-bg: var(--sv-primary);
	--btn-bd: var(--sv-primary);
	color: var(--btn-fg);
	box-shadow: var(--sv-shadow-md);
}

.sv-btn:active {
	transform: translateY(1px);
	box-shadow: var(--sv-shadow-xs);
}

.sv-btn[disabled],
.sv-btn[aria-disabled="true"] {
	opacity: 0.5;
	pointer-events: none;
}

/* 2차 — 아웃라인 */
.sv-btn--outline {
	--btn-bg: transparent;
	--btn-fg: var(--sv-primary-dark);
	--btn-bd: var(--sv-line);
}

.sv-btn--outline:hover {
	--btn-bg: transparent;
	--btn-fg: var(--sv-primary-dark);
	--btn-bd: var(--sv-primary-dark);
	box-shadow: none;
}

/* 코퍼 강조 */
.sv-btn--accent {
	--btn-bg: var(--sv-accent);
	--btn-bd: var(--sv-accent);
	--btn-fg: #fff;
}

.sv-btn--accent:hover {
	--btn-bg: var(--sv-accent-dark);
	--btn-bd: var(--sv-accent-dark);
}

/* 다크 배경 위 */
.sv-btn--light {
	--btn-bg: #fff;
	--btn-bd: #fff;
	--btn-fg: var(--sv-primary-dark);
}

.sv-btn--light:hover {
	--btn-bg: var(--sv-base);
	--btn-bd: var(--sv-base);
	--btn-fg: var(--sv-primary-dark);
}

.sv-btn--ghost-light {
	--btn-bg: transparent;
	--btn-bd: rgba(255, 255, 255, 0.34);
	--btn-fg: #fff;
}

.sv-btn--ghost-light:hover {
	--btn-bg: rgba(255, 255, 255, 0.10);
	--btn-bd: rgba(255, 255, 255, 0.60);
	--btn-fg: #fff;
	box-shadow: none;
}

/* 사이즈 */
.sv-btn--sm  { padding: 0.625rem 1.125rem; min-height: 42px; font-size: var(--sv-fs-xs); }
.sv-btn--lg  { padding: 1.0625rem 2.25rem; min-height: 60px; font-size: var(--sv-fs-body); }
.sv-btn--block { display: flex; width: 100%; }

/* 텍스트 링크형 CTA — 화살표가 hover 시 전진 */
.sv-link-arrow {
	display: inline-flex;
	align-items: center;
	gap: var(--sv-space-8);
	font-size: var(--sv-fs-sm);
	font-weight: 700;
	color: var(--sv-primary-dark);
}

.sv-link-arrow::after {
	content: "";
	width: 18px;
	height: 1px;
	background-color: currentColor;
	transition: width var(--sv-dur) var(--sv-ease);
}

.sv-link-arrow:hover {
	color: var(--sv-accent);
}

.sv-link-arrow:hover::after {
	width: 30px;
}


/* ==========================================================================
   08. 카드
   ========================================================================== */

.sv-card {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: clamp(1.5rem, 1.1rem + 1.4vw, 2.25rem);
	background-color: var(--sv-surface);
	border: 1px solid var(--sv-line);
	border-radius: var(--sv-radius);
	transition:
		border-color var(--sv-dur) var(--sv-ease),
		box-shadow var(--sv-dur) var(--sv-ease),
		transform var(--sv-dur) var(--sv-ease);
}

.sv-card--hover:hover,
.sv-card--hover:focus-within {
	border-color: var(--sv-primary-200);
	box-shadow: var(--sv-shadow-md);
	transform: translateY(-3px);
}

/* 상단 코퍼 인디케이터 — hover 시 확장 */
.sv-card--marked::before {
	content: "";
	position: absolute;
	inset-block-start: -1px;
	inset-inline-start: -1px;
	width: 48px;
	height: 3px;
	background-color: var(--sv-accent);
	transition: width var(--sv-dur-slow) var(--sv-ease-out);
}

.sv-card--marked:hover::before {
	width: calc(100% + 2px);
}

.sv-card__index {
	font-family: var(--sv-font-num);
	font-variant-numeric: tabular-nums;
	font-size: var(--sv-fs-xs);
	font-weight: 700;
	letter-spacing: var(--sv-ls-wide);
	color: var(--sv-accent);
}

.sv-card__title {
	font-size: var(--sv-fs-h4);
	margin-top: var(--sv-space-16);
	color: var(--sv-ink);
}

.sv-card__desc {
	margin-top: var(--sv-space-12);
	font-size: var(--sv-fs-sm);
	line-height: var(--sv-lh-loose);
	color: var(--sv-muted);
}

.sv-card__foot {
	margin-top: auto;
	padding-top: var(--sv-space-24);
}

/* 항목 나열 (서비스 카드 내부) */
.sv-card__list {
	margin-top: var(--sv-space-20);
	padding: 0;
	list-style: none;
	display: grid;
	gap: var(--sv-space-8);
	font-size: var(--sv-fs-sm);
	color: var(--sv-body);
}

.sv-card__list li {
	position: relative;
	padding-inline-start: var(--sv-space-16);
}

.sv-card__list li::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	inset-block-start: 0.68em;
	width: 5px;
	height: 1px;
	background-color: var(--sv-accent);
}

/* 다크 섹션 내 카드 */
.sv-section--dark .sv-card {
	background-color: var(--sv-dark-surface);
	border-color: var(--sv-dark-line);
	backdrop-filter: blur(2px);
}

.sv-section--dark .sv-card--hover:hover {
	border-color: var(--sv-accent-400);
	box-shadow: none;
}

/* 카드 전체를 링크로 (오버레이 방식 — 내부 텍스트 선택 가능) */
.sv-card__link::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
}


/* ==========================================================================
   09. 배지 · 지표
   ========================================================================== */

.sv-badge {
	display: inline-flex;
	align-items: center;
	gap: var(--sv-space-8);
	padding: 0.3125rem 0.75rem;
	border: 1px solid var(--sv-line);
	border-radius: var(--sv-radius-pill);
	background-color: var(--sv-surface);
	font-size: var(--sv-fs-xs);
	font-weight: 700;
	letter-spacing: 0.01em;
	color: var(--sv-muted);
	white-space: nowrap;
}

.sv-badge--accent {
	border-color: var(--sv-accent-200);
	background-color: var(--sv-accent-080);
	color: var(--sv-accent-dark);
}

.sv-badge--primary {
	border-color: var(--sv-primary-200);
	background-color: var(--sv-primary-050);
	color: var(--sv-primary-dark);
}

.sv-badge--dark {
	border-color: var(--sv-dark-line);
	background-color: var(--sv-dark-surface);
	color: rgba(255, 255, 255, 0.82);
}

/* 신뢰지표 바 항목 */
.sv-stat {
	display: flex;
	flex-direction: column;
	gap: var(--sv-space-8);
	padding-inline: clamp(0.5rem, 2vw, 1.5rem);
	text-align: center;
}

.sv-stat__value {
	font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.125rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: var(--sv-ls-tight);
	color: var(--sv-primary-dark);
}

.sv-stat__value sup,
.sv-stat__unit {
	font-size: 0.55em;
	font-weight: 700;
	margin-inline-start: 0.15em;
	color: var(--sv-accent);
}

.sv-stat__label {
	font-size: var(--sv-fs-xs);
	line-height: 1.5;
	color: var(--sv-muted);
	letter-spacing: 0.01em;
}

/* 지표 바 — 세로 구분선 */
.sv-stat-bar {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--sv-space-24);
}

.sv-stat-bar > .sv-stat + .sv-stat {
	border-inline-start: 1px solid var(--sv-line);
}

@media (max-width: 780px) {
	.sv-stat-bar {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--sv-space-32) var(--sv-space-16);
	}
	.sv-stat-bar > .sv-stat:nth-child(odd) { border-inline-start: 0; }
	.sv-stat-bar > .sv-stat:nth-child(3) { border-inline-start: 0; }
}

/* 정의형 메타 (사업자정보, 프로젝트 개요 등) */
.sv-deflist {
	display: grid;
	gap: var(--sv-space-12) var(--sv-space-24);
	font-size: var(--sv-fs-sm);
	margin: 0;
}

.sv-deflist__row {
	display: grid;
	grid-template-columns: minmax(96px, 128px) minmax(0, 1fr);
	gap: var(--sv-space-16);
	padding-block: var(--sv-space-12);
	border-block-end: 1px solid var(--sv-line-soft);
}

.sv-deflist__row:last-child {
	border-block-end: 0;
}

.sv-deflist dt {
	color: var(--sv-faint);
	font-weight: 500;
}

.sv-deflist dd {
	margin: 0;
	color: var(--sv-ink);
	font-weight: 500;
}

/* 값 뒤에 붙는 부연 (역할·조건 등) */
.sv-deflist__note {
	display: block;
	margin-top: var(--sv-space-4);
	font-size: var(--sv-fs-xs);
	font-weight: 400;
	color: var(--sv-muted);
}


/* ==========================================================================
   10. 폼
   ========================================================================== */

.sv-field {
	display: grid;
	gap: var(--sv-space-8);
}

.sv-field__label {
	font-size: var(--sv-fs-xs);
	font-weight: 700;
	letter-spacing: 0.02em;
	color: var(--sv-ink);
}

.sv-field__label .sv-required {
	color: var(--sv-accent);
	margin-inline-start: 0.15em;
}

.sv-field__hint {
	font-size: var(--sv-fs-xs);
	color: var(--sv-faint);
}

.sv-field__error {
	font-size: var(--sv-fs-xs);
	color: var(--sv-error);
	font-weight: 500;
}

.sv-input,
.sv-select,
.sv-textarea {
	width: 100%;
	padding: 0.8125rem 1rem;
	min-height: 50px;
	background-color: var(--sv-surface);
	color: var(--sv-ink);
	border: 1px solid var(--sv-line);
	border-radius: var(--sv-radius);
	font-size: var(--sv-fs-sm);
	line-height: 1.5;
	transition:
		border-color var(--sv-dur) var(--sv-ease),
		box-shadow var(--sv-dur) var(--sv-ease);
	appearance: none;
}

.sv-textarea {
	min-height: 160px;
	resize: vertical;
	line-height: var(--sv-lh-normal);
}

.sv-select {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%236B6577' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6.5 8 10.5 12 6.5'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	background-size: 16px 16px;
	padding-inline-end: 2.75rem;
	cursor: pointer;
}

.sv-input:focus,
.sv-select:focus,
.sv-textarea:focus {
	outline: none;
	border-color: var(--sv-primary);
	box-shadow: 0 0 0 3px var(--sv-primary-120);
}

.sv-input[aria-invalid="true"],
.sv-textarea[aria-invalid="true"] {
	border-color: var(--sv-error);
}

/* 체크박스 · 라디오 */
.sv-check {
	display: flex;
	align-items: flex-start;
	gap: var(--sv-space-12);
	font-size: var(--sv-fs-sm);
	color: var(--sv-body);
	cursor: pointer;
}

.sv-check input {
	flex: none;
	width: 18px;
	height: 18px;
	margin: 0.16em 0 0;
	accent-color: var(--sv-primary-dark);
	cursor: pointer;
}

/* 허니팟 — 화면·스크린리더 모두에서 숨김 */
.sv-hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
	pointer-events: none;
}

/* 폼 응답 메시지 */
.sv-notice {
	padding: var(--sv-space-16) var(--sv-space-20);
	border-radius: var(--sv-radius);
	border: 1px solid var(--sv-line);
	background-color: var(--sv-surface-2);
	font-size: var(--sv-fs-sm);
	line-height: var(--sv-lh-normal);
}

.sv-notice--success {
	border-color: rgba(31, 122, 90, 0.28);
	background-color: rgba(31, 122, 90, 0.06);
	color: var(--sv-success);
}

.sv-notice--error {
	border-color: rgba(179, 53, 47, 0.28);
	background-color: rgba(179, 53, 47, 0.06);
	color: var(--sv-error);
}


/* ==========================================================================
   11. 본문 콘텐츠 (리서치 노트 · 고정 페이지)
   ========================================================================== */

.sv-entry {
	font-size: 1.0625rem;
	line-height: var(--sv-lh-loose);
	color: var(--sv-body);
}

.sv-entry > * + * { margin-top: var(--sv-space-24); }

.sv-entry h2 {
	font-size: var(--sv-fs-h3);
	margin-top: var(--sv-space-64);
	padding-top: var(--sv-space-8);
}

.sv-entry h3 {
	font-size: var(--sv-fs-h4);
	margin-top: var(--sv-space-48);
}

.sv-entry h4 {
	font-size: 1.0625rem;
	margin-top: var(--sv-space-32);
}

.sv-entry ul,
.sv-entry ol {
	padding-inline-start: 1.4em;
	display: grid;
	gap: var(--sv-space-8);
}

.sv-entry li::marker { color: var(--sv-accent); }

.sv-entry a {
	color: var(--sv-primary-dark);
	text-decoration: underline;
	text-decoration-color: var(--sv-accent-400);
}

.sv-entry a:hover {
	text-decoration-color: var(--sv-accent);
}

.sv-entry blockquote {
	padding: var(--sv-space-8) 0 var(--sv-space-8) var(--sv-space-32);
	border-inline-start: 2px solid var(--sv-accent);
	color: var(--sv-ink);
	font-size: var(--sv-fs-lead);
	line-height: var(--sv-lh-loose);
}

.sv-entry blockquote cite {
	display: block;
	margin-top: var(--sv-space-12);
	font-size: var(--sv-fs-xs);
	font-style: normal;
	color: var(--sv-muted);
}

.sv-entry figure { margin: var(--sv-space-48) 0; }

.sv-entry figcaption {
	margin-top: var(--sv-space-12);
	font-size: var(--sv-fs-xs);
	color: var(--sv-faint);
	text-align: center;
}

.sv-entry pre {
	padding: var(--sv-space-20);
	background-color: var(--sv-primary-dark);
	color: #EDEAF6;
	border-radius: var(--sv-radius);
	overflow-x: auto;
	font-size: var(--sv-fs-xs);
	line-height: 1.7;
}

.sv-entry :not(pre) > code {
	padding: 0.15em 0.4em;
	background-color: var(--sv-primary-080);
	border-radius: var(--sv-radius-xs);
	color: var(--sv-primary-dark);
}

.sv-entry img { border-radius: var(--sv-radius); }

/* 표 — 조사 결과 데이터용 */
.sv-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--sv-line);
	border-radius: var(--sv-radius);
}

.sv-entry table,
.sv-table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--sv-fs-sm);
	font-variant-numeric: tabular-nums;
}

.sv-entry th,
.sv-table th {
	padding: var(--sv-space-12) var(--sv-space-16);
	background-color: var(--sv-base);
	color: var(--sv-ink);
	font-weight: 700;
	text-align: start;
	white-space: nowrap;
	border-block-end: 1px solid var(--sv-line);
}

.sv-entry td,
.sv-table td {
	padding: var(--sv-space-12) var(--sv-space-16);
	border-block-end: 1px solid var(--sv-line-soft);
}

.sv-entry tbody tr:last-child td,
.sv-table tbody tr:last-child td {
	border-block-end: 0;
}

/* WordPress 정렬 클래스 */
.alignleft   { float: left; margin: 0.35em var(--sv-space-32) var(--sv-space-24) 0; }
.alignright  { float: right; margin: 0.35em 0 var(--sv-space-24) var(--sv-space-32); }
.aligncenter { margin-inline: auto; }
.alignwide   { width: min(100vw - var(--sv-gutter) * 2, 1080px); margin-inline: auto; }
.alignfull   { width: 100vw; margin-inline: calc(50% - 50vw); max-width: none; }

.wp-caption { max-width: 100%; }
.wp-caption-text,
.gallery-caption {
	font-size: var(--sv-fs-xs);
	color: var(--sv-faint);
	text-align: center;
	margin-top: var(--sv-space-8);
}

.screen-reader-text { position: absolute !important; clip-path: inset(50%); width: 1px; height: 1px; overflow: hidden; }

.sticky, .bypostauthor { /* WordPress 테마 체크 필수 클래스 */ }


/* ==========================================================================
   12. 유틸리티
   ========================================================================== */

.sv-text-center { text-align: center; }
.sv-text-start  { text-align: start; }

.sv-color-accent  { color: var(--sv-accent); }
.sv-color-primary { color: var(--sv-primary-dark); }
.sv-color-muted   { color: var(--sv-muted); }

.sv-pre-line { white-space: pre-line; } /* 문장 안 \n 지점에서 줄바꿈 (일반 단락용 유틸리티) */

.sv-mt-0  { margin-top: 0 !important; }
.sv-mt-8  { margin-top: var(--sv-space-8); }
.sv-mt-16 { margin-top: var(--sv-space-16); }
.sv-mt-24 { margin-top: var(--sv-space-24); }
.sv-mt-32 { margin-top: var(--sv-space-32); }
.sv-mt-40 { margin-top: var(--sv-space-40); }
.sv-mt-64 { margin-top: var(--sv-space-64); }

.sv-measure { max-width: 62ch; }

.sv-divider {
	height: 1px;
	background-color: var(--sv-line);
	border: 0;
	margin: 0;
}

.sv-ratio {
	position: relative;
	overflow: hidden;
	background-color: var(--sv-base);
	border-radius: var(--sv-radius);
}

.sv-ratio::before { content: ""; display: block; padding-block-start: var(--sv-ratio, 62.5%); }
.sv-ratio > * { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.sv-ratio--16x9 { --sv-ratio: 56.25%; }
.sv-ratio--3x2  { --sv-ratio: 66.667%; }
.sv-ratio--4x3  { --sv-ratio: 75%; }
.sv-ratio--1x1  { --sv-ratio: 100%; }

/* 반응형 표시 제어 */
@media (max-width: 900px)  { .sv-hide-mobile  { display: none !important; } }
@media (min-width: 901px)  { .sv-hide-desktop { display: none !important; } }


/* ==========================================================================
   13. 접근성
   ========================================================================== */

.sv-skip-link {
	position: absolute;
	inset-block-start: -100%;
	inset-inline-start: var(--sv-space-16);
	z-index: var(--sv-z-modal);
	padding: var(--sv-space-12) var(--sv-space-20);
	background-color: var(--sv-primary-dark);
	color: #fff;
	font-size: var(--sv-fs-sm);
	font-weight: 700;
	border-radius: 0 0 var(--sv-radius) var(--sv-radius);
	transition: inset-block-start var(--sv-dur) var(--sv-ease);
}

.sv-skip-link:focus {
	inset-block-start: 0;
	color: #fff;
}

.sv-sr-only {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.sv-sr-only--focusable:focus-visible {
	position: static !important;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip-path: none;
	white-space: normal;
}


/* ==========================================================================
   14. 모션 & 인쇄
   ========================================================================== */

/* 스크롤 진입 연출 — 스타트업풍 과장 없이 아주 짧은 페이드·리프트만 */
.sv-reveal {
	opacity: 0;
	transform: translateY(14px);
	transition:
		opacity var(--sv-dur-slow) var(--sv-ease-out),
		transform var(--sv-dur-slow) var(--sv-ease-out);
	transition-delay: var(--sv-reveal-delay, 0ms);
}

.sv-reveal.is-visible {
	opacity: 1;
	transform: none;
}

/* JS 미실행 시 콘텐츠가 사라지지 않도록 */
.no-js .sv-reveal {
	opacity: 1;
	transform: none;
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}

	.sv-reveal {
		opacity: 1;
		transform: none;
	}
}

@media print {
	.sv-site-header,
	.sv-site-footer,
	.sv-motif,
	.sv-btn,
	.sv-skip-link {
		display: none !important;
	}

	body {
		background: #fff;
		color: #000;
		font-size: 11pt;
	}

	.sv-section { padding-block: 1.5rem; }

	a[href^="http"]::after {
		content: " (" attr(href) ")";
		font-size: 9pt;
		color: #555;
	}
}
