@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Hahmlet:wght@900&family=Noto+Sans+KR:wght@400;700&display=swap");

:root {
	--horror-bg: #050505;
	--horror-surface: #1b1d1c;
	--horror-elevated: #2a2d2b;
	--horror-danger: #4b070a;
	--horror-red: #e7161a;
	--horror-red-bright: #ff3b3f;
	--horror-border: #2a2d2b;
	--horror-border-accent: #a60d14;
	--horror-text: #f2efe8;
	--horror-text-soft: #d4cfc5;
	--horror-text-muted: #6e726e;
	--horror-page-width: 112rem;
}

body.horror-theme {
	background: var(--horror-bg);
}

body.horror-theme #wrap {
	background: var(--horror-bg);
}

/* 2026 common header */
#header {
	height: 10rem;
	background: var(--horror-bg) !important;
	border-bottom: 1px solid rgba(255,255,255,0.04);
}

#header .inConts {
	max-width: 192rem;
	height: 10rem;
	padding: 0 6.4rem;
	align-items: center;
}

#header h1 {
	width: 18rem;
	height: 10rem;
	padding: 1.6rem 0;
	align-items: center;
}

#header h1 > a,
#header h1 > a img {
	width: 18rem;
	height: 6.8rem;
	display: block;
	object-fit: contain;
	object-position: left center;
}

#header #pcMenu #list {
	gap: 6.4rem;
}

#header #pcMenu #list > li {
	padding: 0;
}

#header #pcMenu #list > li > a {
	font-family: "Noto Sans KR", "Pretendard GOV", sans-serif;
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: 0;
	color: var(--horror-text);
}

#header #pcMenu #list > li > a > span:before {
	height: 3px;
	bottom: 0;
	background: var(--horror-red);
}

#header #pcMenu #list > li:is(:hover, .oPage, .active) > a > span:before {
	width: 100%;
	margin-left: 0;
	left: 0;
}

#header .right-utill {
	width: 18rem;
	height: 10rem;
}

#header .mMenu {
	width: 6rem;
	height: 2.8rem;
	margin-left: auto;
	background: url("/images/2026/hamburger.svg") no-repeat center / contain;
}

#header .mMenu:before,
#header .mMenu:after {
	display: none;
}

#header .mMenu.open {
	background-image: none;
}

#header .mMenu.open:before,
#header .mMenu.open:after {
	display: block;
	width: 80%;
	height: 2px;
	background: #fff;
}

#header .gnbBg {
	background-color: rgba(5,5,5,0.98);
	background-image: none;
}

.menuLayer {
	top: 10rem;
	background: rgba(5,5,5,0.98);
}

/* Home hero */
.horror-home {
	padding-top: 10rem;
	background: #000;
}

.horror-hero {
	position: relative;
	width: 100%;
	height: min(98.02vw, 188.2rem);
	min-height: 80rem;
	max-height: 188.2rem;
	overflow: hidden;
	background: #000;
}

.horror-hero__asset {
	position: absolute;
	display: block;
	height: auto;
	pointer-events: none;
	user-select: none;
}

.horror-hero__background {
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.horror-hero__glitch {
	width: 101%;
	height: 101%;
	left: -0.5%;
	top: -1%;
	object-fit: cover;
	mix-blend-mode: screen;
	opacity: 0.42;
}

.horror-hero__festival-logo {
	width: 67.3%;
	max-width: 129.2rem;
	left: 50%;
	top: 2.23%;
	transform: translateX(-50%);
}

.horror-hero__theme {
	width: 47.14%;
	max-width: 90.5rem;
	left: 50%;
	top: 31.4%;
	transform: translateX(-50%);
}

.horror-hero__camera {
	width: 50.83%;
	max-width: 97.6rem;
	left: 50%;
	top: 43.94%;
	transform: translateX(-50%);
}

.horror-hero__date {
	width: 77.08%;
	max-width: 148rem;
	left: 50%;
	top: 67.48%;
	transform: translateX(-50%);
}

.horror-hero__cta {
	position: absolute;
	left: 50%;
	top: 81.99%;
	width: 33.33%;
	max-width: 64rem;
	height: 5.95%;
	min-height: 7.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	transform: translateX(-50%);
	border-radius: 9999px;
	background: var(--horror-red);
	font-family: "Noto Sans KR", "Pretendard GOV", sans-serif;
	font-size: clamp(2rem, 2.34vw, 4.5rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0;
	color: #fff;
	box-shadow: 0 0 0 rgba(231,22,26,0);
	transition: transform .25s ease, box-shadow .25s ease, background .25s ease;
	z-index: 3;
}

.horror-hero__cta:hover,
.horror-hero__cta:focus-visible {
	background: #ff2025;
	box-shadow: 0 0 3.2rem rgba(231,22,26,0.48);
	transform: translateX(-50%) translateY(-3px);
}

.horror-hero__parking {
	position: absolute;
	left: 50%;
	top: 90.6%;
	transform: translateX(-50%);
	font-family: "Noto Sans KR", "Pretendard GOV", sans-serif;
	font-size: clamp(1.4rem, 1.56vw, 3rem);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	white-space: nowrap;
	z-index: 3;
}

/* Shared sub-page layout */
.horror-page {
	min-height: 150rem;
	padding: 26rem 3rem 16.4rem;
	background: var(--horror-bg);
	font-family: "Noto Sans KR", "Pretendard GOV", sans-serif;
	color: var(--horror-text);
}

.horror-page__inner {
	width: 100%;
	max-width: var(--horror-page-width);
	margin: 0 auto;
}

.horror-title {
	padding: 2.4rem;
	background: var(--horror-bg);
}

.horror-title__rule {
	width: 7.2rem;
	height: .6rem;
	margin-bottom: .8rem;
	background: var(--horror-red);
}

.horror-title__eyebrow {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	letter-spacing: 0;
	color: var(--horror-red-bright);
}

.horror-title h2 {
	margin-top: .8rem;
	font-family: "Hahmlet", "Noto Sans KR", serif;
	font-size: 6.4rem;
	font-weight: 900;
	line-height: 7.2rem;
	letter-spacing: -.02em;
	color: var(--horror-text);
}

.horror-overview__intro {
	margin: 0 2.4rem 4rem;
	font-size: 2.4rem;
	line-height: 4rem;
	letter-spacing: 0;
	color: var(--horror-text-soft);
}

.horror-schedule {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.6rem;
	margin-bottom: 4.8rem;
}

.horror-schedule__item {
	height: 24rem;
	padding: 3rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: .8rem;
	border: 1px solid var(--horror-border);
	border-radius: 1.6rem;
	background: var(--horror-surface);
	text-align: center;
}

.horror-schedule__item--break {
	background: var(--horror-elevated);
}

.horror-schedule__number {
	font-size: 2.6rem;
	font-weight: 700;
	color: var(--horror-red-bright);
}

.horror-schedule__label {
	font-size: 2.4rem;
	font-weight: 700;
	color: var(--horror-text);
}

.horror-schedule__date {
	font-size: 2.5rem;
	color: var(--horror-text-soft);
}

.horror-info-list {
	display: grid;
	gap: 4.8rem;
}

.horror-info-row {
	min-height: 11.4rem;
	padding: 2.4rem;
	display: flex;
	align-items: center;
	gap: 2.4rem;
	border: 1px solid var(--horror-border);
	border-radius: .8rem;
	background: var(--horror-surface);
}

.horror-info-row__number {
	width: 6.4rem;
	height: 6.4rem;
	flex: 0 0 6.4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--horror-border-accent);
	border-radius: .8rem;
	background: var(--horror-elevated);
	font-size: 1.8rem;
	font-weight: 700;
	color: var(--horror-red-bright);
}

.horror-info-row__label {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.2rem;
	color: var(--horror-red-bright);
}

.horror-info-row__value {
	margin-top: .4rem;
	font-size: 2.4rem;
	line-height: 3.8rem;
	color: var(--horror-text);
}

.horror-info-row__value--dates {
	display: flex;
	align-items: center;
	gap: 1.2rem 1.6rem;
	flex-wrap: wrap;
}

.horror-info-row__prep {
	min-height: 3.2rem;
	padding: .4rem 1.2rem;
	display: inline-flex;
	align-items: center;
	border: 1px solid var(--horror-border-accent);
	border-radius: 9999px;
	background: var(--horror-elevated);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2.2rem;
	color: var(--horror-red-bright);
	white-space: nowrap;
}

.horror-alert {
	margin-top: 4.8rem;
	padding: 3rem;
	display: flex;
	align-items: center;
	gap: 3rem;
	border: 2px solid var(--horror-border-accent);
	border-radius: 1.6rem;
	background: var(--horror-danger);
	box-shadow: 0 0 1.6rem rgba(231,22,26,.42);
}

.horror-alert__icon {
	width: 5.6rem;
	height: 5.6rem;
	flex: 0 0 5.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--horror-surface);
	font-size: 2.8rem;
	font-weight: 700;
	color: var(--horror-red-bright);
}

.horror-alert h3 {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 4.6rem;
	letter-spacing: -.01em;
	color: var(--horror-text);
}

.horror-alert p {
	margin-top: 2rem;
	font-size: 2rem;
	line-height: 3.2rem;
	letter-spacing: 0;
	color: var(--horror-text-soft);
}

.horror-pill {
	height: 7.2rem;
	margin: 2.4rem 0 4.8rem;
	padding: 0 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--horror-border-accent);
	border-radius: 9999px;
	background: var(--horror-elevated);
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: .04em;
	color: var(--horror-red-bright);
	text-align: center;
}

.horror-guide .horror-alert {
	margin-top: 0;
	margin-bottom: 5.2rem;
}

.horror-notices {
	display: grid;
	gap: 4.8rem;
}

.horror-notice {
	padding: 3.2rem;
	border: 1px solid var(--horror-border);
	border-radius: 1.6rem;
	background: var(--horror-surface);
}

.horror-notice__head {
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.horror-notice__number {
	width: 7.2rem;
	height: 4.8rem;
	flex: 0 0 7.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: .4rem;
	background: var(--horror-red);
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
}

.horror-notice h3 {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 4.6rem;
	letter-spacing: -.01em;
	color: var(--horror-text);
}

.horror-notice__body {
	margin-top: 1.6rem;
	font-size: 2rem;
	line-height: 3.2rem;
	letter-spacing: 0;
	color: var(--horror-text-soft);
}

.horror-guide__footnote {
	margin-top: 4.8rem;
	font-size: 1.4rem;
	line-height: 2.2rem;
	color: var(--horror-text-muted);
}

/* 2026 location */
.horror-location {
	padding-top: 20rem;
}

.horror-location .horror-page__inner {
	max-width: 124.8rem;
}

.horror-location__header {
	min-height: 24.8rem;
	padding: 4.2rem 0 3rem;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1.2rem;
}

.horror-location__eyebrow {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	color: var(--horror-red-bright);
}

.horror-location__header h2 {
	font-family: "Hahmlet", "Noto Sans KR", serif;
	font-size: 6.4rem;
	font-weight: 900;
	line-height: 7.2rem;
	letter-spacing: -.02em;
	color: var(--horror-text);
}

.horror-location__intro {
	font-size: 2rem;
	line-height: 3.2rem;
	color: var(--horror-text);
}

.horror-location__map-section {
	padding-bottom: 4.8rem;
}

.horror-location__map {
	position: relative;
	width: 100%;
	overflow: hidden;
	border: 1px solid var(--horror-border-accent);
	border-radius: 1.6rem;
	background: #f4f4f4;
}

.horror-location__map-image {
	display: block;
	width: 100%;
	height: auto;
	image-rendering: auto;
}

.horror-location__map-marker {
	position: absolute;
	z-index: 2;
	width: 4.4rem;
	height: 7.2rem;
	transform: translate(-50%, -100%);
	pointer-events: none;
}

.horror-location__map-marker--north-office {
	left: 91.55%;
	top: 29.4%;
}

.horror-location__map-marker--public {
	left: 89.85%;
	top: 42.4%;
}

.horror-location__map-marker-pin {
	position: absolute;
	inset: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	padding-bottom: 2.1rem;
	background: url("/images/2026/parking-pin.png") center / 100% 100% no-repeat;
	font-family: Arial, sans-serif;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
	text-shadow: 0 1px 1px rgba(0,0,0,.14);
}

.horror-location__map-marker-label {
	position: absolute;
	right: -.8rem;
	bottom: calc(100% + .8rem);
	padding: .8rem 1.2rem;
	border: 1px solid rgba(255,255,255,.72);
	border-radius: .8rem;
	background: rgba(13,13,15,.92);
	box-shadow: 0 .8rem 2.4rem rgba(0,0,0,.3);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2rem;
	white-space: nowrap;
	color: #fff;
}

.horror-location__map-marker-label::after {
	content: "";
	position: absolute;
	right: 2.2rem;
	top: 100%;
	border: .6rem solid transparent;
	border-top-color: rgba(13,13,15,.92);
}

.horror-location__information {
	padding: 2.4rem 0 4.8rem;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2.4rem;
}

.horror-location-card {
	height: 32.8rem;
	padding: 3.2rem;
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	overflow: hidden;
	border: 1px solid var(--horror-border);
	border-radius: 1.6rem;
	background: var(--horror-surface);
}

.horror-location-card__header {
	height: 5.2rem;
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.horror-location-card__index {
	width: 5.2rem;
	height: 3.2rem;
	flex: 0 0 5.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 9999px;
	background: var(--horror-red);
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	color: #fff;
}

.horror-location-card h3 {
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 4.6rem;
	letter-spacing: -.01em;
	color: var(--horror-text);
}

.horror-location-card__place {
	min-height: 8.4rem;
	display: flex;
	flex-direction: column;
	gap: .8rem;
}

.horror-location-card strong {
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.6rem;
	color: var(--horror-text);
}

.horror-location-card address {
	font-style: normal;
	font-size: 2rem;
	line-height: 3.2rem;
	color: var(--horror-text-soft);
}

.horror-location-card__notice {
	font-size: 1.6rem;
	line-height: 2.6rem;
	color: var(--horror-red-bright);
}

.horror-location-card__parking-list {
	height: 17.6rem;
	display: flex;
	flex-direction: column;
	gap: 1.6rem;
}

.horror-location-card__parking-list li {
	height: 7.2rem;
	padding: 1.4rem 1.6rem;
	display: flex;
	align-items: center;
	gap: 1.6rem;
	border-radius: 1.2rem;
	background: #151517;
}

.horror-location-card__parking-badge {
	width: 4rem;
	height: 4rem;
	flex: 0 0 4rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background: var(--horror-red);
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
}

.horror-location-card__parking-list strong,
.horror-location-card__parking-list address {
	font-size: 1.6rem;
	line-height: 2.2rem;
}

/* 2026 editable common footer */
#footer {
	padding: 0;
	background: var(--horror-bg);
	border-top: 4px solid var(--horror-red);
	font-family: "Noto Sans KR", "Pretendard GOV", sans-serif;
	text-align: left;
}

#footer > .inConts {
	max-width: 192rem;
	padding: 7.2rem 16rem 6.5rem;
}

.horror-footer__main {
	display: grid;
	grid-template-columns: 44rem 52rem minmax(38rem, 1fr);
	gap: 6rem;
	min-height: 24rem;
}

.horror-footer__brand-logo {
	width: 23rem;
	height: 8.6rem;
	display: block;
	object-fit: contain;
	object-position: left center;
}

.horror-footer__kicker {
	margin-top: 1.2rem;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 2rem;
	letter-spacing: .06em;
	color: var(--horror-red-bright);
}

.horror-footer__theme {
	margin-top: 1.2rem;
	font-size: 2rem;
	line-height: 3.2rem;
	letter-spacing: 0;
	color: var(--horror-text-soft);
}

.horror-footer__label {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 2rem;
	letter-spacing: .08em;
	color: var(--horror-red-bright);
}

.horror-footer__time {
	margin-top: .5rem;
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 4.6rem;
	letter-spacing: 0;
	color: var(--horror-text);
}

.horror-footer__copy {
	margin-top: .8rem;
	font-size: 1.6rem;
	line-height: 2.6rem;
	letter-spacing: 0;
	color: var(--horror-text-soft);
}

.horror-footer__socials {
	margin-top: 1.6rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.2rem;
}

.horror-footer__social {
	height: 5.2rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	border: 1px solid var(--horror-border);
	border-radius: 9999px;
	background: var(--horror-surface);
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--horror-text);
	transition: border-color .2s ease, background .2s ease;
}

.horror-footer__social:hover,
.horror-footer__social:focus-visible {
	border-color: var(--horror-red);
	background: #242625;
}

.horror-footer__social img {
	width: 2rem;
	height: 2rem;
	display: block;
}

.horror-footer__dates {
	margin-top: .8rem;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 3.8rem;
	letter-spacing: 0;
	color: var(--horror-text);
	white-space: nowrap;
}

.horror-footer__venue {
	font-size: 2.4rem;
	font-weight: 700;
	line-height: 3.4rem;
	letter-spacing: 0;
	color: var(--horror-text);
}

.horror-footer__divider {
	height: 1px;
	margin: 3.2rem 0;
	background: var(--horror-elevated);
}

.horror-footer__support {
	min-height: 10rem;
	display: flex;
	align-items: center;
	gap: 2.4rem;
}

.horror-footer__rail {
	width: .4rem;
	height: 7.6rem;
	flex: 0 0 .4rem;
	border-radius: .2rem;
	background: var(--horror-red);
}

.horror-footer__support strong {
	display: block;
	font-size: 1.3rem;
	line-height: 2rem;
	letter-spacing: .08em;
	color: var(--horror-red-bright);
}

.horror-footer__support p {
	margin-top: .8rem;
	font-size: 2rem;
	line-height: 3.2rem;
	letter-spacing: 0;
	color: var(--horror-text);
}

.horror-footer__partners {
	margin-top: 3.2rem;
	display: grid;
	grid-template-columns: 15.4rem 57.2rem minmax(60rem, 1fr);
	gap: 3.3rem;
}

.horror-footer__partner-title {
	margin-bottom: 1.2rem;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 2.4rem;
	letter-spacing: 0;
	color: var(--horror-red-bright);
}

.horror-footer__logos {
	min-height: 3.2rem;
	display: flex;
	align-items: center;
	gap: 1.6rem;
}

.horror-footer__logos img {
	width: auto;
	height: 2.6rem;
	min-width: 0;
	display: block;
	object-fit: cover;
	image-rendering: auto;
}

.horror-footer__legal {
	margin-top: 3.2rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 3rem;
	font-size: 1.3rem;
	line-height: 2rem;
	letter-spacing: 0;
}

.horror-footer__copyright {
	color: var(--horror-text-muted);
}

.horror-footer__links {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	font-weight: 700;
	color: var(--horror-text-soft);
}

.horror-footer__links a {
	color: inherit;
}

#footer .foot-social,
#footer + .goTop {
	display: none !important;
}

@media only screen and (max-width: 1500px) {
	#header .inConts {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	#header #pcMenu #list {
		gap: 3.2rem;
	}

	#footer > .inConts {
		padding-left: 6rem;
		padding-right: 6rem;
	}

	.horror-footer__main {
		grid-template-columns: .9fr 1.1fr 1fr;
		gap: 4rem;
	}

	.horror-footer__partners {
		grid-template-columns: 1fr;
		gap: 2.4rem;
	}

	.horror-footer__logos {
		gap: 1rem;
		flex-wrap: wrap;
	}
}

@media only screen and (max-width: 1200px) {
	.horror-page {
		padding-top: 20rem;
	}

	.horror-schedule {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	#footer > .inConts {
		padding: 6rem 4rem;
	}

	.horror-footer__main {
		grid-template-columns: 1fr 1fr;
		min-height: auto;
	}

	.horror-footer__brand {
		grid-column: 1 / -1;
	}

	.horror-footer__partners {
		grid-template-columns: 1fr;
		gap: 2.4rem;
	}

	.horror-footer__logos {
		flex-wrap: wrap;
	}
}

@media only screen and (max-width: 840px) {
	#header {
		height: 7.2rem;
	}

	#header .inConts {
		height: 7.2rem;
		padding: 0 2rem;
	}

	#header h1 {
		width: 13rem;
		height: 7.2rem;
		padding: 1rem 0;
	}

	#header h1 > a,
	#header h1 > a img {
		width: 13rem;
		height: 5.2rem;
	}

	#header #pcMenu {
		display: none;
	}

	#header .right-utill {
		width: auto;
		height: 7.2rem;
	}

	#header .mMenu {
		width: 4.2rem;
		height: 2rem;
	}

	.menuLayer {
		top: 7.2rem;
	}

	.horror-home {
		padding-top: 7.2rem;
	}

	.horror-hero {
		height: 152vw;
		min-height: 59rem;
		max-height: none;
	}

	.horror-hero__background,
	.horror-hero__glitch {
		object-position: center;
	}

	.horror-hero__festival-logo {
		width: 94%;
		left: 3%;
		top: 3%;
		transform: none;
	}

	.horror-hero__theme {
		width: 68%;
		left: 16%;
		top: 29%;
		transform: none;
	}

	.horror-hero__camera {
		width: 88%;
		left: 6%;
		top: 39%;
		transform: none;
	}

	.horror-hero__date {
		width: 96%;
		left: 2%;
		top: 69%;
		transform: none;
	}

	.horror-hero__cta {
		top: 82.5%;
		width: 72%;
		height: 8rem;
		min-height: 0;
		font-size: 2.8rem;
	}

	.horror-hero__parking {
		top: 93%;
		width: 90%;
		font-size: 1.4rem;
		line-height: 2.2rem;
		white-space: normal;
	}

	.horror-page {
		min-height: auto;
		padding: 14rem 2rem 10rem;
	}

	.horror-title {
		padding: 0 0 2.4rem;
	}

	.horror-title h2 {
		font-size: 4.4rem;
		line-height: 5.6rem;
	}

	.horror-overview__intro {
		margin: 0 0 3.2rem;
		font-size: 2rem;
		line-height: 3.2rem;
	}

	.horror-schedule {
		grid-template-columns: 1fr;
		gap: 1.6rem;
	}

	.horror-schedule__item {
		width: 100%;
		height: auto;
		min-height: 16rem;
	}

	.horror-info-list,
	.horror-notices {
		gap: 2rem;
	}

	.horror-info-row {
		align-items: flex-start;
	}

	.horror-info-row__value {
		font-size: 2rem;
		line-height: 3.2rem;
	}

	.horror-alert {
		align-items: flex-start;
		gap: 1.8rem;
		padding: 2.4rem;
	}

	.horror-alert h3,
	.horror-notice h3 {
		font-size: 2.6rem;
		line-height: 3.6rem;
	}

	.horror-alert p,
	.horror-notice__body {
		font-size: 1.8rem;
		line-height: 3rem;
	}

	.horror-pill {
		height: auto;
		min-height: 7.2rem;
		margin-bottom: 3rem;
		font-size: 1.6rem;
	}

	.horror-guide .horror-alert {
		margin-bottom: 3rem;
	}

	.horror-location {
		padding: 72px 16px 56px;
	}

	.horror-location__header {
		min-height: 202px;
		padding: 32px 4px 24px;
		gap: 10px;
	}

	.horror-location__eyebrow {
		font-size: 12px;
		line-height: 18px;
		letter-spacing: .16em;
	}

	.horror-location__header h2 {
		font-size: 40px;
		line-height: 52px;
	}

	.horror-location__intro {
		max-width: 280px;
		font-size: 13px;
		line-height: 20px;
		color: var(--horror-text-soft);
	}

	.horror-location__map-section {
		padding-bottom: 30px;
	}

	.horror-location__map {
		border: 0;
		border-radius: 18px;
	}

	.horror-location__map-marker {
		width: clamp(16px, 3.4vw, 26px);
		height: clamp(26px, 5.6vw, 42px);
	}

	.horror-location__map-marker-pin {
		padding-bottom: clamp(7px, 1.6vw, 13px);
		font-size: clamp(9px, 1.8vw, 14px);
	}

	.horror-location__map-marker-label {
		right: -4px;
		bottom: calc(100% + 3px);
		padding: 2px 5px;
		border-radius: 4px;
		font-size: clamp(9px, 1.5vw, 11px);
		line-height: 12px;
	}

	.horror-location__map-marker--public .horror-location__map-marker-label {
		right: calc(100% + 5px);
	}

	.horror-location__map-marker-label::after {
		right: 8px;
		border-width: 3px;
	}

	.horror-location__map-marker--public .horror-location__map-marker-label::after {
		right: -1px;
	}

	.horror-location__information {
		padding: 0;
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.horror-location-card {
		height: auto;
		min-height: 246px;
		padding: 24px 22px;
		gap: 14px;
		border-radius: 18px;
	}

	.horror-location-card + .horror-location-card {
		min-height: 294px;
	}

	.horror-location-card__header {
		height: 36px;
		gap: 12px;
	}

	.horror-location-card__index {
		width: 44px;
		height: 30px;
		flex-basis: 44px;
		font-size: 13px;
		line-height: 20px;
	}

	.horror-location-card h3 {
		font-size: 24px;
		line-height: 32px;
	}

	.horror-location-card__place {
		min-height: auto;
		gap: 0;
	}

	.horror-location-card strong {
		font-size: 14px;
		line-height: 23px;
	}

	.horror-location-card address {
		font-size: 14px;
		line-height: 23px;
	}

	.horror-location-card__notice {
		margin-top: 2px;
		font-size: 13px;
		font-weight: 700;
		line-height: 21px;
	}

	.horror-location-card__parking-list {
		height: auto;
		gap: 12px;
	}

	.horror-location-card__parking-list li {
		height: 78px;
		padding: 13px 14px;
		gap: 12px;
		background: var(--horror-elevated);
	}

	.horror-location-card__parking-badge {
		width: 40px;
		height: 40px;
		flex-basis: 40px;
		font-size: 15px;
	}

	.horror-location-card__parking-list strong {
		font-size: 14px;
		line-height: 20px;
	}

	.horror-location-card__parking-list address {
		font-size: 12px;
		line-height: 20px;
		color: var(--horror-text-muted);
	}

	.horror-notice {
		padding: 2.4rem;
	}

	.horror-notice__number {
		width: 5.6rem;
		flex-basis: 5.6rem;
	}

	#footer > .inConts {
		padding: 5rem 2rem 4rem;
	}

	.horror-footer__main {
		grid-template-columns: 1fr;
		gap: 4rem;
	}

	.horror-footer__brand {
		grid-column: auto;
	}

	.horror-footer__time {
		font-size: 3rem;
	}

	.horror-footer__dates {
		font-size: 2.3rem;
		white-space: normal;
	}

	.horror-footer__support {
		align-items: flex-start;
	}

	.horror-footer__support p {
		font-size: 1.7rem;
		line-height: 2.8rem;
	}

	.horror-footer__partners {
		margin-top: 2.4rem;
	}

	.horror-footer__logos {
		gap: 1.4rem;
	}

	.horror-footer__logos img {
		max-width: calc(50% - .7rem);
		height: 2.8rem;
	}

	.horror-footer__legal {
		flex-direction: column;
		align-items: flex-start;
		font-size: 1.2rem;
	}
}

@media only screen and (max-width: 480px) {
	.horror-hero {
		height: 166vw;
		min-height: 64rem;
	}

	.horror-hero__cta {
		height: 6.4rem;
		font-size: 2.3rem;
	}

	.horror-title h2 {
		font-size: 3.8rem;
		line-height: 4.8rem;
	}

	.horror-info-row {
		padding: 2rem;
		gap: 1.6rem;
	}

	.horror-info-row__number {
		width: 5.2rem;
		height: 5.2rem;
		flex-basis: 5.2rem;
	}

	.horror-alert__icon {
		width: 4.4rem;
		height: 4.4rem;
		flex-basis: 4.4rem;
	}

	.horror-alert h3,
	.horror-notice h3 {
		font-size: 2.3rem;
		line-height: 3.2rem;
	}

	.horror-notice__head {
		align-items: flex-start;
	}

	.horror-footer__socials {
		grid-template-columns: 1fr;
	}

	.horror-footer__links {
		flex-wrap: wrap;
	}
}
