/* [site_seminar] 공개 화면: 큰 글씨 신청 폼. 크기는 em/rem이라 사이트의 '글자 크기' 버튼을 그대로 따른다. */
.site-seminar {
	--ks-ink: #2b211b;
	--ks-ink2: #44392f;
	--ks-line: #d9cdbd;
	--ks-paper: #fefcf8;
	--ks-acc: #a0441f;
	--ks-err: #b3261e;
	color: var(--ks-ink);
	line-height: 1.7;
	word-break: keep-all;
	max-inline-size: 44em;
}
.site-seminar h2 { font-size: 1.5em; margin: 1.6em 0 0.6em; }
.site-seminar .site-seminar__list { list-style: none; margin: 0; padding: 0; display: grid; gap: 1em; }
.site-seminar .site-seminar__list > li { list-style: none; margin: 0; }
.site-seminar .site-seminar__list > li::marker { content: none; }
.site-seminar__list li { border: 1px solid var(--ks-line); border-top: 3px solid var(--ks-ink); background: var(--ks-paper); padding: 1em 1.2em; border-radius: 0.4em; }
.site-seminar__list h3 { font-size: 1.2em; margin: 0 0 0.4em; }
.site-seminar__list dl { margin: 0; }
.site-seminar__list dl div { display: flex; flex-wrap: wrap; column-gap: 0.8em; }
.site-seminar__list dt { font-weight: 700; min-width: 5em; color: var(--ks-ink2); }
.site-seminar__list dd { margin: 0; }
.site-seminar__form { background: var(--ks-paper); border: 1px solid var(--ks-line); border-radius: 0.7em; padding: 0.4em 1.4em 1.6em; margin-top: 2em; }
.site-seminar__form fieldset { border: 0; padding: 0; margin: 0 0 1.2em; }
.site-seminar__form legend, .site-seminar__form label { font-weight: 700; display: block; margin-bottom: 0.3em; }
.site-seminar__form .req { font-weight: 400; color: var(--ks-ink2); font-size: 0.9em; }
.site-seminar__form input[type="text"], .site-seminar__form input[type="tel"], .site-seminar__form select {
	display: block;
	inline-size: 100%;
	max-inline-size: 22em;
	min-block-size: 2.8em;
	font: inherit;
	padding: 0.4em 0.7em;
	border: 2px solid var(--ks-ink2);
	border-radius: 0.4em;
	background: #fff;
	color: var(--ks-ink);
	box-sizing: border-box;
}
.site-seminar__form [aria-invalid="true"] { border-color: var(--ks-err); }
.site-seminar__form input:focus-visible, .site-seminar__form select:focus-visible, .site-seminar__form button:focus-visible { outline: 3px solid var(--ks-acc); outline-offset: 2px; }
.site-seminar__choice { display: flex !important; align-items: flex-start; gap: 0.7em; padding: 0.7em 1em; margin: 0 0 0.6em; border: 2px solid var(--ks-line); border-radius: 0.5em; background: #fff; cursor: pointer; font-weight: 500 !important; }
.site-seminar__choice:has(input:checked) { border-color: var(--ks-ink); background: #f6efe3; font-weight: 700 !important; }
.site-seminar__choice:has(input:disabled) { opacity: 0.6; cursor: not-allowed; }
.site-seminar__choice small { font-size: 0.9em; font-weight: 400; color: var(--ks-ink2); }
.site-seminar__form input[type="radio"], .site-seminar__form input[type="checkbox"] { inline-size: 1.4em; block-size: 1.4em; margin: 0.2em 0 0; flex: none; accent-color: var(--ks-ink); }
.site-seminar__agree label { display: flex !important; align-items: center; gap: 0.6em; min-block-size: 2.8em; }
.site-seminar__agree p { margin: 0 0 1em; font-size: 0.9em; color: var(--ks-ink2); }
.site-seminar__form button {
	min-block-size: 2.9em;
	min-inline-size: 12em;
	padding: 0 1.6em;
	border: 0;
	border-radius: 0.7em;
	background: var(--ks-ink);
	color: #fff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}
.site-seminar__hp { position: absolute; left: -10000px; inline-size: 1px; block-size: 1px; overflow: hidden; }
.site-seminar__error { color: var(--ks-err); font-weight: 700; margin: 0 0 0.3em; }
.site-seminar__alert { border: 2px solid var(--ks-err); border-radius: 0.5em; padding: 0.4em 1em; margin: 1em 0; background: #fdf3f2; }
.site-seminar__done { border: 2px solid #1e6b3a; border-radius: 0.5em; padding: 0.2em 1.2em 0.6em; margin: 1em 0; background: #eef8f0; }
.site-seminar__done h2 { margin-top: 0.6em; }
