:root {
	--hl-paper: #c8b08f;
	--hl-paper-light: #dec8a8;
	--hl-paper-pale: #ead8bc;
	--hl-paper-dark: #9b8162;
	--hl-ink: #181512;
	--hl-ink-soft: #4c4338;
	--hl-rule: rgba(24,21,18,.82);
	--hl-rule-soft: rgba(24,21,18,.27);
	--hl-content: 1180px;
	--hl-serif: Baskerville, "Iowan Old Style", "Palatino Linotype", Georgia, serif;
	--hl-display: "Bodoni 72", "Bodoni MT", Didot, "Times New Roman", serif;
	--hl-ui: "Arial Narrow", "Helvetica Neue", Arial, sans-serif;
}

html { scroll-behavior: smooth; }
body.hl-haunted-lewiston {
	margin: 0;
	background-color: var(--hl-paper);
	background-image: linear-gradient(rgba(198,173,141,.10),rgba(198,173,141,.10)), url("../images/parchment-texture.webp");
	background-size: auto, 620px 620px;
	color: var(--hl-ink);
	font-family: var(--hl-serif);
	font-size: 17px;
	line-height: 1.55;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

.hl-haunted-lewiston #page-container,
.hl-haunted-lewiston #main-content,
.hl-haunted-lewiston .et_pb_section,
.hl-haunted-lewiston .et_pb_row { background: transparent; }

.hl-haunted-lewiston a { color: inherit; text-underline-offset: .16em; }
.hl-haunted-lewiston p, .hl-haunted-lewiston li { color: var(--hl-ink); font-family: var(--hl-serif); }
.hl-haunted-lewiston h1,
.hl-haunted-lewiston h2,
.hl-haunted-lewiston h3,
.hl-haunted-lewiston h4 { color: var(--hl-ink); font-family: var(--hl-serif); font-weight: 700; }

.screen-reader-text {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}
.screen-reader-text:focus { width: auto; height: auto; clip: auto; margin: 8px; padding: 10px; background: #fff; z-index: 99999; }

/* Masthead */
.hl-site-header { width: min(96%, 1260px); margin: 0 auto; padding-top: 12px; }
.hl-masthead-shell { border-top: 4px double var(--hl-rule); border-bottom: 4px double var(--hl-rule); }
.hl-edition-line,
.hl-price-line {
	display: grid;
	grid-template-columns: 1fr 2fr 1fr;
	gap: 12px;
	align-items: center;
	padding: 6px 3px;
	font-family: var(--hl-ui);
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}
.hl-edition-line span:nth-child(2) { text-align: center; }
.hl-edition-line span:last-child, .hl-price-line span:last-child { text-align: right; }
.hl-price-line { grid-template-columns: 1fr auto; border-top: 1px solid var(--hl-rule); }

.hl-masthead-main {
	display: grid;
	grid-template-columns: minmax(110px, 180px) 1fr minmax(110px, 180px);
	gap: 22px;
	align-items: center;
	padding: 8px 4px 10px;
	border-top: 1px solid var(--hl-rule);
}
.hl-masthead-art { display: block; width: 100%; height: 118px; object-fit: contain; filter: grayscale(1) sepia(.2) contrast(1.15); }
.hl-masthead-center { min-width: 0; text-align: center; }
.hl-wordmark {
	display: block;
	text-decoration: none;
	font-family: var(--hl-display);
	font-size: clamp(3.1rem, 7.8vw, 6.8rem);
	font-weight: 700;
	line-height: .84;
	letter-spacing: -.035em;
	text-shadow: .5px .5px 0 rgba(0,0,0,.18);
}
.hl-masthead-subtitle { margin-top: 8px; font-family: var(--hl-serif); font-size: clamp(.9rem,1.6vw,1.15rem); font-style: italic; }
.hl-ornament-line { display: flex; align-items: center; gap: 10px; margin: 0 auto 3px; max-width: 520px; font-size: .7rem; }
.hl-ornament-line::before, .hl-ornament-line::after { content: ""; flex: 1; border-top: 1px solid var(--hl-rule); border-bottom: 1px solid var(--hl-rule); height: 4px; }

/* Navigation */
.hl-newspaper-nav { border-bottom: 2px solid var(--hl-rule); }
.hl-desktop-nav { width: min(96%, 1180px); margin: 0 auto; }
.hl-primary-menu { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; margin: 0; padding: 0; list-style: none; }
.hl-primary-menu > li { margin: 0; border-left: 1px solid var(--hl-rule-soft); }
.hl-primary-menu > li:last-child { border-right: 1px solid var(--hl-rule-soft); }
.hl-primary-menu a {
	display: block;
	padding: 12px 18px 11px;
	text-decoration: none;
	font-family: var(--hl-ui);
	font-size: .86rem;
	font-weight: 800;
	letter-spacing: .065em;
	line-height: 1.15;
	text-transform: uppercase;
}
.hl-primary-menu a:hover, .hl-primary-menu .current-menu-item > a { background: rgba(24,21,18,.08); }
.hl-mobile-nav { display: none; }

/* Main page system */
.hl-home-content, .hl-page-content { width: min(94%, var(--hl-content)); margin: 0 auto; padding: 28px 0 52px; }
.hl-home-shell, .hl-page-shell { margin: 0; padding: 0; }
.hl-front-banner { text-align: center; padding: 10px 0 24px; border-bottom: 5px double var(--hl-rule); }
.hl-kicker {
	margin: 0 0 7px !important;
	font-family: var(--hl-ui) !important;
	font-size: .73rem !important;
	font-weight: 800 !important;
	letter-spacing: .10em !important;
	line-height: 1.25 !important;
	text-transform: uppercase !important;
}
.hl-front-headline {
	max-width: 1020px;
	margin: 0 auto 12px;
	font-family: var(--hl-display) !important;
	font-size: clamp(2.7rem, 7vw, 5.5rem) !important;
	line-height: .92 !important;
	letter-spacing: -.02em;
}
.hl-front-deck, .hl-page-deck { max-width: 860px; margin: 0 auto; font-size: clamp(1.08rem, 2vw, 1.38rem); line-height: 1.38; }
.hl-page-shell > h1 { margin: 0 0 10px; font-family: var(--hl-display); font-size: clamp(2.8rem, 6vw, 5rem); line-height: .95; text-align: center; }
.hl-page-shell > .hl-kicker { text-align: center; }
.hl-page-shell > .hl-page-deck { margin-bottom: 28px; text-align: center; }

.hl-three-column, .hl-two-column { display: grid; gap: 0; margin-top: 22px; }
.hl-three-column { grid-template-columns: repeat(3, minmax(0,1fr)); }
.hl-two-column { grid-template-columns: repeat(2, minmax(0,1fr)); border-top: 1px solid var(--hl-rule); border-bottom: 1px solid var(--hl-rule); }
.hl-story-card { min-width: 0; padding: 22px 24px; border-right: 1px solid var(--hl-rule); }
.hl-story-card:last-child { border-right: 0; }
.hl-two-column .hl-story-card:nth-child(odd) { border-right: 1px solid var(--hl-rule); }
.hl-two-column .hl-story-card:nth-child(-n+2) { border-bottom: 1px solid var(--hl-rule); }
.hl-two-column .hl-story-card:nth-child(even) { border-right: 0; }
.hl-story-card h2 { margin: 3px 0 8px; font-family: var(--hl-display); font-size: clamp(1.65rem,3.2vw,2.6rem); line-height: 1; }
.hl-story-card p:not(.hl-kicker) { margin: 0 0 14px; }
.hl-story-card p:not(.hl-kicker)::first-letter { font-size: 1.02em; }
.hl-section-heading {
	margin: 26px auto 3px;
	padding: 0 0 10px;
	font-family: var(--hl-display) !important;
	font-size: clamp(2rem,4vw,3.4rem) !important;
	text-align: center;
	border-bottom: 3px double var(--hl-rule);
}
.hl-rule { margin: 26px 0 !important; border-top: 4px double var(--hl-rule) !important; }


.hl-card-image,
.hl-hero-image {
	margin: 0 0 14px !important;
}
.hl-card-image img,
.hl-hero-image img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--hl-rule);
	outline: 1px solid rgba(24,21,18,.18);
	outline-offset: -6px;
	box-shadow: 3px 4px 0 rgba(24,21,18,.10);
	background: rgba(230,211,183,.35);
}
.hl-card-image img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}
.hl-hero-image {
	max-width: 980px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Buttons should look like small printed notices, not modern rounded UI */
.hl-haunted-lewiston .wp-block-button__link,
.hl-haunted-lewiston .button,
.hl-haunted-lewiston button,
.hl-haunted-lewiston input[type="submit"] {
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	background: var(--hl-ink) !important;
	color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui) !important;
	font-size: .72rem !important;
	font-weight: 800 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase;
	box-shadow: 2px 2px 0 rgba(24,21,18,.18);
}
.hl-haunted-lewiston .wp-block-button__link { padding: 8px 11px; }
.hl-haunted-lewiston .wp-block-button__link:hover,
.hl-haunted-lewiston .button:hover,
.hl-haunted-lewiston button:hover { background: var(--hl-paper-pale) !important; color: var(--hl-ink) !important; }

/* Calendar */
.hl-calendar-page { max-width: 980px; }
.hl-event-card {
	display: grid;
	grid-template-columns: minmax(210px, 280px) 1fr;
	column-gap: 28px;
	row-gap: 3px;
	padding: 16px 2px;
	border-top: 1px solid var(--hl-rule-soft);
}
.hl-event-card:first-of-type { border-top: 4px double var(--hl-rule); }
.hl-event-date { grid-column: 1; grid-row: 1 / span 2; margin: 0 !important; font-family: var(--hl-ui) !important; font-weight: 800; font-size: .79rem; letter-spacing: .04em; text-transform: uppercase; }
.hl-event-card h2 { grid-column: 2; margin: 0; font-size: clamp(1.25rem,2.6vw,1.75rem); line-height: 1.1; }
.hl-event-card > p:not(.hl-event-date) { grid-column: 2; margin: 2px 0 0; color: var(--hl-ink-soft); }

.hl-victorian-notice {
	margin: 18px auto 30px;
	padding: 18px 22px;
	border: 3px double var(--hl-rule);
	outline: 1px solid var(--hl-rule-soft);
	outline-offset: -6px;
	background: rgba(234,216,188,.35);
	max-width: 900px;
}
.hl-victorian-notice p:last-child { margin-bottom: 0; }
.hl-shortcode-wrap { margin-top: 26px; }

/* QR Vote Counter public views */
.hl-haunted-lewiston .qvc-gallery,
.hl-haunted-lewiston .qvc-leaderboard { --qvc-public-text: var(--hl-ink); --qvc-public-muted: var(--hl-ink-soft); --qvc-public-border: var(--hl-rule-soft); --qvc-public-card: rgba(230,211,183,.52); --qvc-public-accent: var(--hl-ink); font-family: var(--hl-serif); }
.hl-haunted-lewiston .qvc-contest-header { margin: 22px 0; padding: 12px 0; border-top: 4px double var(--hl-rule); border-bottom: 4px double var(--hl-rule); text-align: center; }
.hl-haunted-lewiston .qvc-contest-header h2 { font-family: var(--hl-display); font-size: clamp(2rem,4vw,3.4rem); line-height: 1; }
.hl-haunted-lewiston .qvc-gallery-grid { gap: 18px !important; }
.hl-haunted-lewiston .qvc-gallery-card { border: 1px solid var(--hl-rule) !important; border-radius: 0 !important; outline: 1px solid rgba(24,21,18,.18); outline-offset: -5px; background: rgba(230,211,183,.55) !important; box-shadow: 3px 4px 0 rgba(24,21,18,.10) !important; }
.hl-haunted-lewiston .qvc-gallery-image { background: rgba(24,21,18,.10) !important; border-bottom: 3px double var(--hl-rule); }
.hl-haunted-lewiston .qvc-gallery-image img, .hl-haunted-lewiston .qvc-leaderboard-thumb img { filter: grayscale(.85) sepia(.18) contrast(1.08); }
.hl-haunted-lewiston .qvc-gallery-card h3 { font-family: var(--hl-display); font-size: 1.45rem; line-height: 1.02; }
/* The gallery title already contains the business name. Hide the duplicate business-name line beneath it. */
.hl-haunted-lewiston .qvc-gallery-card .qvc-gallery-business { display: none !important; }
.hl-haunted-lewiston .qvc-leaderboard-business { font-family: var(--hl-ui); font-weight: 800; letter-spacing: .03em; }
.hl-haunted-lewiston .qvc-leaderboard-list { border: 3px double var(--hl-rule) !important; border-radius: 0 !important; background: rgba(230,211,183,.48) !important; }

/* Generic WordPress/Divi cleanup */
.hl-standard-page { margin: 0; }
.hl-haunted-lewiston .et_pb_row, .hl-haunted-lewiston .container { width: min(94%, var(--hl-content)); }
.hl-haunted-lewiston #sidebar { display: none !important; }
.hl-haunted-lewiston #left-area { width: 100% !important; padding-right: 0 !important; }
.hl-haunted-lewiston #main-content .container::before { display: none !important; }
.hl-haunted-lewiston input[type="text"],
.hl-haunted-lewiston input[type="email"],
.hl-haunted-lewiston input[type="search"],
.hl-haunted-lewiston select,
.hl-haunted-lewiston textarea { border: 1px solid var(--hl-rule) !important; border-radius: 0 !important; background: rgba(234,216,188,.6) !important; color: var(--hl-ink) !important; }

/* Footer */
.hl-site-footer { width: min(96%,1260px); margin: 0 auto 18px; border-top: 5px double var(--hl-rule); border-bottom: 1px solid var(--hl-rule); }
.hl-footer-inner { display: grid; grid-template-columns: 1fr 1.5fr 1fr; gap: 20px; padding: 16px 4px; align-items: center; font-family: var(--hl-ui); font-size: .72rem; line-height: 1.45; text-transform: uppercase; letter-spacing: .05em; }
.hl-footer-center { text-align: center; }
.hl-footer-right { text-align: right; }

/* Gutenberg editor alignment */
.hl-haunted-lewiston .alignwide { max-width: var(--hl-content); }
.hl-haunted-lewiston .alignfull { width: 100%; }

@media (max-width: 900px) {
	.hl-edition-line { grid-template-columns: 1fr auto; }
	.hl-edition-line span:nth-child(2) { display: none; }
	.hl-masthead-main { grid-template-columns: 86px 1fr 86px; gap: 8px; }
	.hl-masthead-art { height: 86px; }
	.hl-three-column { grid-template-columns: 1fr; }
	.hl-three-column .hl-story-card { border-right: 0; border-bottom: 1px solid var(--hl-rule); }
	.hl-three-column .hl-story-card:last-child { border-bottom: 0; }
	.hl-desktop-nav { display: none; }
	.hl-mobile-nav { display: block; width: min(94%,1180px); margin: 0 auto; }
	.hl-mobile-nav summary { cursor: pointer; padding: 10px 4px; font-family: var(--hl-ui); font-weight: 800; font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
	.hl-mobile-menu-list { list-style: none; margin: 0; padding: 0 0 8px; border-top: 1px solid var(--hl-rule); }
	.hl-mobile-menu-list li { margin: 0; border-bottom: 1px solid var(--hl-rule-soft); }
	.hl-mobile-menu-list a { display: block; padding: 11px 4px; text-decoration: none; font-family: var(--hl-ui); font-weight: 800; font-size: .76rem; letter-spacing: .06em; text-transform: uppercase; }
}

@media (max-width: 700px) {
	body.hl-haunted-lewiston { font-size: 16px; }
	.hl-site-header { width: 94%; }
	.hl-masthead-main { grid-template-columns: 1fr; padding: 8px 0; }
	.hl-masthead-art { display: none; }
	.hl-wordmark { font-size: clamp(2.85rem,15vw,4.4rem); }
	.hl-price-line { font-size: .58rem; }
	.hl-home-content, .hl-page-content { width: 91%; padding-top: 20px; }
	.hl-two-column { grid-template-columns: 1fr; }
	.hl-two-column .hl-story-card { border-right: 0 !important; border-bottom: 1px solid var(--hl-rule); }
	.hl-two-column .hl-story-card:last-child { border-bottom: 0; }
	.hl-story-card { padding: 18px 8px; }
	.hl-event-card { grid-template-columns: 1fr; padding: 14px 0; }
	.hl-event-date, .hl-event-card h2, .hl-event-card > p:not(.hl-event-date) { grid-column: 1; grid-row: auto; }
	.hl-event-date { margin-bottom: 4px !important; }
	.hl-footer-inner { grid-template-columns: 1fr; text-align: center; }
	.hl-footer-right { text-align: center; }
	.hl-haunted-lewiston .qvc-gallery-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 10px !important; }
	.hl-haunted-lewiston .qvc-gallery-card h3 { font-size: 1.05rem; }
}

@media (max-width: 420px) {
	.hl-edition-line { font-size: .56rem; }
	.hl-haunted-lewiston .qvc-gallery-grid { grid-template-columns: 1fr !important; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.hl-haunted-lewiston *, .hl-haunted-lewiston *::before, .hl-haunted-lewiston *::after { transition: none !important; animation: none !important; }
}

/* v2.1.2: keep Gutenberg story grids inside the newspaper column when Divi renders the page. */
.hl-haunted-lewiston #main-content .entry-content,
.hl-haunted-lewiston #main-content .et_builder_inner_content,
.hl-haunted-lewiston #main-content article.page {
	width: 100%;
	max-width: none;
}

.hl-haunted-lewiston #main-content .entry-content > .hl-home-shell,
.hl-haunted-lewiston #main-content .entry-content > .hl-page-shell,
.hl-haunted-lewiston #main-content .hl-home-shell,
.hl-haunted-lewiston #main-content .hl-page-shell {
	box-sizing: border-box;
	width: min(94%, var(--hl-content)) !important;
	max-width: var(--hl-content) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.hl-haunted-lewiston #main-content .hl-home-shell > *,
.hl-haunted-lewiston #main-content .hl-page-shell > *,
.hl-haunted-lewiston #main-content .hl-three-column,
.hl-haunted-lewiston #main-content .hl-two-column {
	box-sizing: border-box;
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	left: auto !important;
	right: auto !important;
	transform: none !important;
}

.hl-haunted-lewiston #main-content .hl-story-card {
	box-sizing: border-box;
	width: auto !important;
	max-width: 100% !important;
	min-width: 0 !important;
	overflow: hidden;
}

.hl-haunted-lewiston #main-content .hl-card-image,
.hl-haunted-lewiston #main-content .hl-hero-image,
.hl-haunted-lewiston #main-content .hl-card-image img,
.hl-haunted-lewiston #main-content .hl-hero-image img {
	box-sizing: border-box;
	max-width: 100% !important;
}

@media (max-width: 700px) {
	.hl-haunted-lewiston #main-content .entry-content > .hl-home-shell,
	.hl-haunted-lewiston #main-content .entry-content > .hl-page-shell,
	.hl-haunted-lewiston #main-content .hl-home-shell,
	.hl-haunted-lewiston #main-content .hl-page-shell {
		width: 91% !important;
	}
}

/* Divi-editable Home page (v2.2+) */
.hl-haunted-lewiston .hl-divi-home.et_pb_section {
	width: 100%;
	max-width: none;
	margin: 0;
	background: transparent !important;
}
.hl-haunted-lewiston .hl-divi-home .et_pb_row {
	width: min(94%, var(--hl-content)) !important;
	max-width: var(--hl-content) !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.hl-haunted-lewiston .hl-home-intro-module,
.hl-haunted-lewiston .hl-section-heading-module,
.hl-haunted-lewiston .hl-story-copy-module,
.hl-haunted-lewiston .hl-card-image-module,
.hl-haunted-lewiston .hl-paper-button-module {
	margin-bottom: 0 !important;
}
.hl-haunted-lewiston .hl-divi-story-row {
	border-top: 1px solid var(--hl-rule);
	border-bottom: 1px solid var(--hl-rule);
}
.hl-haunted-lewiston .hl-divi-story-row > .et_pb_column {
	padding: 20px 22px 22px;
	border-right: 1px solid var(--hl-rule);
}
.hl-haunted-lewiston .hl-divi-story-row > .et_pb_column:last-child {
	border-right: 0;
}
.hl-haunted-lewiston .hl-divi-story-row-two + .hl-divi-story-row-two {
	border-top: 0;
}
.hl-haunted-lewiston .hl-card-image-module img {
	display: block;
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border: 1px solid var(--hl-rule);
	outline: 1px solid rgba(24,21,18,.18);
	outline-offset: -6px;
	box-shadow: 3px 4px 0 rgba(24,21,18,.10);
}
.hl-haunted-lewiston .hl-story-copy-module {
	padding-top: 14px;
}
.hl-haunted-lewiston .hl-story-copy-module h2 {
	margin: 3px 0 8px;
	font-family: var(--hl-display) !important;
	font-size: clamp(1.65rem,3.2vw,2.6rem) !important;
	line-height: 1 !important;
}
.hl-haunted-lewiston .hl-story-copy-module p:not(.hl-kicker) {
	margin: 0 0 14px;
}
.hl-haunted-lewiston .hl-paper-button-module {
	margin-top: 2px !important;
}
.hl-haunted-lewiston .hl-divi-features-heading .et_pb_row {
	border-top: 4px double var(--hl-rule);
}

@media (max-width: 980px) {
	.hl-haunted-lewiston .hl-divi-story-row > .et_pb_column {
		border-right: 0;
		border-bottom: 1px solid var(--hl-rule);
		padding-left: 8px;
		padding-right: 8px;
	}
	.hl-haunted-lewiston .hl-divi-story-row > .et_pb_column:last-child {
		border-bottom: 0;
	}
}


/* v2.4.6 feature-page details */
.hl-haunted-lewiston .hl-feature-external-link {
	display: inline-block;
	margin-top: 8px;
	padding: 8px 12px;
	border: 1px solid var(--hl-ink);
	background: var(--hl-ink);
	color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui);
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .06em;
	text-decoration: none;
	text-transform: uppercase;
}
.hl-haunted-lewiston .hl-feature-external-link:hover {
	background: var(--hl-paper-pale);
	color: var(--hl-ink) !important;
}
.hl-haunted-lewiston .hl-library-event-list {
	margin: 10px 0 0 1.25rem;
}
.hl-haunted-lewiston .hl-library-event-list li {
	margin-bottom: 8px;
}


/* v2.4.8 native Divi 5 feature-row button styling */
.hl-haunted-lewiston .hl-paper-button-module .et_pb_button,
.hl-haunted-lewiston .hl-paper-button-module a.et_pb_button {
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	background: var(--hl-ink) !important;
	color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui) !important;
	font-size: .72rem !important;
	font-weight: 800 !important;
	letter-spacing: .04em !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.18);
}
.hl-haunted-lewiston .hl-paper-button-module .et_pb_button:hover,
.hl-haunted-lewiston .hl-paper-button-module a.et_pb_button:hover {
	background: var(--hl-paper-pale) !important;
	color: var(--hl-ink) !important;
}

/* v2.4.9 native Divi Calendar */
.hl-calendar-native-249 .hl-calendar-intro-module .et_pb_text_inner {
	text-align: center;
}
.hl-calendar-native-249 .hl-divi-page-title {
	margin: 0 0 12px;
	font-family: var(--hl-display);
	font-size: clamp(2.8rem, 6vw, 5rem);
	line-height: .95;
}
.hl-calendar-native-249 .hl-page-deck {
	max-width: 860px;
	margin: 0 auto 26px;
	font-size: clamp(1.08rem, 2vw, 1.38rem);
	line-height: 1.38;
}
.hl-calendar-hero-module {
	margin: 0 auto 18px !important;
}
.hl-calendar-hero-module img {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--hl-rule);
	outline: 1px solid rgba(24,21,18,.18);
	outline-offset: -6px;
	box-shadow: 3px 4px 0 rgba(24,21,18,.10);
}
.hl-calendar-events-row {
	border-top: 4px double var(--hl-rule);
	border-bottom: 4px double var(--hl-rule);
}
.hl-calendar-event-module {
	margin: 0 !important;
}
.hl-calendar-event-module .hl-event-card-inner {
	display: grid;
	grid-template-columns: minmax(210px, 280px) 1fr;
	column-gap: 28px;
	row-gap: 3px;
	padding: 16px 2px;
	border-top: 1px solid var(--hl-rule-soft);
}
.hl-calendar-event-module:first-child .hl-event-card-inner {
	border-top: 0;
}
.hl-calendar-event-module .hl-event-date {
	grid-column: 1;
	grid-row: 1 / span 2;
	margin: 0 !important;
	font-family: var(--hl-ui) !important;
	font-weight: 800;
	font-size: .79rem;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.hl-calendar-event-module h2 {
	grid-column: 2;
	margin: 0;
	font-family: var(--hl-display);
	font-size: clamp(1.25rem,2.6vw,1.75rem);
	line-height: 1.1;
}
.hl-calendar-event-module .hl-event-detail {
	grid-column: 2;
	margin: 2px 0 0 !important;
	color: var(--hl-ink-soft);
}
@media (max-width: 700px) {
	.hl-calendar-event-module .hl-event-card-inner {
		grid-template-columns: 1fr;
		padding: 14px 0;
	}
	.hl-calendar-event-module .hl-event-date,
	.hl-calendar-event-module h2,
	.hl-calendar-event-module .hl-event-detail {
		grid-column: 1;
		grid-row: auto;
	}
	.hl-calendar-event-module .hl-event-date {
		margin-bottom: 4px !important;
	}
}

/* v2.5.1 Home leaderboard refinement */
.hl-haunted-lewiston .hl-leaderboard-section-250.et_pb_section {
	width: 100%;
	max-width: none;
	margin: 0;
	background: transparent !important;
}
.hl-haunted-lewiston .hl-leaderboard-heading-row,
.hl-haunted-lewiston .hl-leaderboard-row-250 {
	width: min(94%, var(--hl-content)) !important;
	max-width: var(--hl-content) !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
.hl-haunted-lewiston .hl-leaderboard-heading-row {
	border-top: 4px double var(--hl-rule);
	border-bottom: 3px double var(--hl-rule);
}
.hl-haunted-lewiston .hl-leaderboard-heading-module {
	margin: 0 !important;
	padding: 16px 0 14px;
	text-align: center;
}
.hl-haunted-lewiston .hl-leaderboard-heading {
	margin: 0 0 4px !important;
	padding: 0 !important;
	border: 0 !important;
	font-family: var(--hl-display) !important;
	font-size: clamp(2.2rem,4.2vw,3.65rem) !important;
	line-height: .98 !important;
}
.hl-haunted-lewiston .hl-leaderboard-deck {
	margin: 0 !important;
	font-family: var(--hl-serif) !important;
	font-size: 1rem;
	font-style: italic;
}
.hl-haunted-lewiston .hl-leaderboard-row-250 {
	border-bottom: 4px double var(--hl-rule);
}
.hl-haunted-lewiston .hl-leaderboard-row-250 > .et_pb_column {
	padding: 22px 26px 24px;
	border-right: 1px solid var(--hl-rule);
}
.hl-haunted-lewiston .hl-leaderboard-row-250 > .et_pb_column:last-child {
	border-right: 0;
}
.hl-haunted-lewiston .hl-leaderboard-column-content {
	margin: 0 !important;
	padding: 12px 18px 16px;
	background: rgba(230,211,183,.22);
	border-top: 1px solid var(--hl-rule-soft);
	border-bottom: 1px solid var(--hl-rule-soft);
}
.hl-haunted-lewiston .hl-leaderboard-subhead {
	margin: 0 0 14px !important;
	padding-bottom: 11px;
	border-bottom: 1px solid var(--hl-rule-soft);
	font-family: var(--hl-display) !important;
	font-size: clamp(1.8rem, 3.2vw, 2.5rem) !important;
	line-height: 1 !important;
	text-align: center;
}
.hl-haunted-lewiston .hl-leaderboard-section-250 a {
	color: var(--hl-ink);
}
.hl-haunted-lewiston .hl-leaderboard-list-250 {
	margin: 0 0 14px;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--hl-rule-soft);
}
.hl-haunted-lewiston .hl-leaderboard-list-250 li {
	display: grid;
	grid-template-columns: 38px 1fr;
	gap: 14px;
	align-items: center;
	min-height: 0;
	padding: 11px 2px;
	border-bottom: 1px solid var(--hl-rule-soft);
}
.hl-haunted-lewiston .hl-leaderboard-rank {
	font-family: var(--hl-display);
	font-size: 2.15rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.hl-haunted-lewiston .hl-leaderboard-name {
	font-family: var(--hl-serif);
	font-size: 1.12rem;
	font-weight: 700;
	line-height: 1.18;
}
.hl-haunted-lewiston .hl-leaderboard-empty {
	margin: 16px 0 15px !important;
	font-style: italic;
	text-align: center;
}
.hl-haunted-lewiston .hl-leaderboard-button {
	margin-top: 12px !important;
	text-align: center;
}
.hl-haunted-lewiston .hl-leaderboard-button .et_pb_button,
.hl-haunted-lewiston .hl-leaderboard-button a.et_pb_button,
.hl-haunted-lewiston .hl-leaderboard-button .divi-button,
.hl-haunted-lewiston .hl-leaderboard-button a.divi-button {
	display: inline-block !important;
	padding: .7em 1.2em !important;
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	background: var(--hl-ink) !important;
	color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui) !important;
	font-size: .74rem !important;
	font-weight: 800 !important;
	letter-spacing: .05em !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.16);
}
.hl-haunted-lewiston .hl-leaderboard-button .et_pb_button:hover,
.hl-haunted-lewiston .hl-leaderboard-button a.et_pb_button:hover,
.hl-haunted-lewiston .hl-leaderboard-button .divi-button:hover,
.hl-haunted-lewiston .hl-leaderboard-button a.divi-button:hover {
	background: var(--hl-paper-pale) !important;
	color: var(--hl-ink) !important;
}
@media (max-width: 980px) {
	.hl-haunted-lewiston .hl-leaderboard-row-250 > .et_pb_column {
		border-right: 0;
		border-bottom: 1px solid var(--hl-rule);
		padding-left: 10px;
		padding-right: 10px;
	}
	.hl-haunted-lewiston .hl-leaderboard-row-250 > .et_pb_column:last-child {
		border-bottom: 0;
	}
	.hl-haunted-lewiston .hl-leaderboard-column-content {
		padding-left: 12px;
		padding-right: 12px;
	}
}


/* v2.5.2 absolute ink override for leaderboard actions */
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button * {
	--et_global_color_primary: var(--hl-ink) !important;
	--et_pb_button_text_color: var(--hl-paper-pale) !important;
	--et_pb_button_bg_color: var(--hl-ink) !important;
	--et_pb_button_border_color: var(--hl-ink) !important;
}
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a:link,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a:visited,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button button {
	display: inline-block !important;
	padding: 9px 13px !important;
	border: 1px solid var(--hl-ink) !important;
	border-color: var(--hl-ink) !important;
	border-radius: 0 !important;
	outline-color: var(--hl-ink) !important;
	background-color: var(--hl-ink) !important;
	background-image: none !important;
	color: var(--hl-paper-pale) !important;
	-webkit-text-fill-color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui) !important;
	font-size: .74rem !important;
	font-weight: 800 !important;
	line-height: 1.2 !important;
	letter-spacing: .05em !important;
	text-decoration: none !important;
	text-transform: uppercase !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.16) !important;
}
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a:hover,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a:focus,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button button:hover,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button button:focus {
	border-color: var(--hl-ink) !important;
	background-color: var(--hl-paper-pale) !important;
	color: var(--hl-ink) !important;
	-webkit-text-fill-color: var(--hl-ink) !important;
	outline: 1px solid var(--hl-ink) !important;
}
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a::after,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button a::before {
	color: currentColor !important;
}


/* v2.5.3 final black-ink enforcement for Divi 5 leaderboard buttons */
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a.hl-leaderboard-button,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button:link,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button:visited,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="golden-scarecrow-gallery"],
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="wicked-and-warm"] {
	background: #181512 !important;
	background-color: #181512 !important;
	background-image: none !important;
	border: 1px solid #181512 !important;
	border-color: #181512 !important;
	border-radius: 0 !important;
	color: #ead8bc !important;
	-webkit-text-fill-color: #ead8bc !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.16) !important;
	text-decoration: none !important;
}
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button:hover,
body.hl-haunted-lewiston .hl-leaderboard-section-250 .hl-leaderboard-button:focus,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="golden-scarecrow-gallery"]:hover,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="golden-scarecrow-gallery"]:focus,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="wicked-and-warm"]:hover,
body.hl-haunted-lewiston .hl-leaderboard-section-250 a[href*="wicked-and-warm"]:focus {
	background: #ead8bc !important;
	background-color: #ead8bc !important;
	border-color: #181512 !important;
	color: #181512 !important;
	-webkit-text-fill-color: #181512 !important;
}


/* v2.5.5 QR repeat-scan guard notice */
.hl-haunted-lewiston .hl-qvc-repeat-notice {
	max-width: 760px;
	margin: 26px auto 28px;
	padding: 20px 24px;
	border-top: 4px double var(--hl-rule);
	border-bottom: 4px double var(--hl-rule);
	text-align: center;
	background: rgba(230,211,183,.28);
	color: var(--hl-ink);
}
.hl-haunted-lewiston .hl-qvc-repeat-notice .hl-qvc-repeat-kicker {
	margin: 0 0 5px;
	font-family: var(--hl-ui);
	font-size: .76rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}
.hl-haunted-lewiston .hl-qvc-repeat-notice h2 {
	margin: 0 0 8px;
	font-family: var(--hl-display);
	font-size: clamp(1.8rem,4vw,2.8rem);
}
.hl-haunted-lewiston .hl-qvc-repeat-notice p:last-child {
	margin-bottom: 0;
}


/* v2.5.7 QVC social sharing: black ink only */
.hl-haunted-lewiston .hl-qvc-social-share,
.hl-haunted-lewiston a.hl-qvc-social-share,
.hl-haunted-lewiston button.hl-qvc-social-share,
.hl-haunted-lewiston input.hl-qvc-social-share {
	background: var(--hl-ink) !important;
	background-color: var(--hl-ink) !important;
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	color: var(--hl-paper-pale) !important;
	-webkit-text-fill-color: var(--hl-paper-pale) !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.16) !important;
	text-decoration: none !important;
}
.hl-haunted-lewiston .hl-qvc-social-share:hover,
.hl-haunted-lewiston .hl-qvc-social-share:focus,
.hl-haunted-lewiston .hl-qvc-social-share:active,
.hl-haunted-lewiston .hl-qvc-social-share:visited {
	background: var(--hl-paper-pale) !important;
	background-color: var(--hl-paper-pale) !important;
	border-color: var(--hl-ink) !important;
	color: var(--hl-ink) !important;
	-webkit-text-fill-color: var(--hl-ink) !important;
}
.hl-haunted-lewiston .hl-qvc-share-help {
	margin: 10px 0 0 !important;
	font-family: var(--hl-serif) !important;
	font-size: .82rem !important;
	font-style: italic;
	color: var(--hl-ink-soft) !important;
	text-align: center;
}


/* v2.5.11 unified native share button */
.hl-haunted-lewiston .hl-qvc-unified-share,
.hl-haunted-lewiston button.hl-qvc-unified-share {
	display: inline-block !important;
	min-width: 170px !important;
	margin: 0 auto !important;
	padding: 12px 24px !important;
	background: var(--hl-ink) !important;
	background-color: var(--hl-ink) !important;
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	color: var(--hl-paper-pale) !important;
	-webkit-text-fill-color: var(--hl-paper-pale) !important;
	font-family: var(--hl-ui) !important;
	font-size: .78rem !important;
	font-weight: 800 !important;
	letter-spacing: .08em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-transform: uppercase !important;
	box-shadow: 2px 2px 0 rgba(24,21,18,.16) !important;
	cursor: pointer !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}
.hl-haunted-lewiston .hl-qvc-unified-share:hover,
.hl-haunted-lewiston .hl-qvc-unified-share:focus,
.hl-haunted-lewiston .hl-qvc-unified-share:active {
	background: var(--hl-paper-pale) !important;
	background-color: var(--hl-paper-pale) !important;
	border-color: var(--hl-ink) !important;
	color: var(--hl-ink) !important;
	-webkit-text-fill-color: var(--hl-ink) !important;
}


/* v2.5.14 vote-page home button + unified share helper */
.hl-haunted-lewiston .hl-qvc-home-brand,
.hl-haunted-lewiston a.hl-qvc-home-brand,
.hl-haunted-lewiston a.hl-qvc-home-brand:visited {
	display: block !important;
	width: fit-content !important;
	max-width: 92% !important;
	margin: 18px auto 26px !important;
	padding: 13px 24px 14px !important;
	background: var(--hl-ink) !important;
	background-color: var(--hl-ink) !important;
	border: 1px solid var(--hl-ink) !important;
	border-radius: 0 !important;
	color: var(--hl-paper-pale) !important;
	-webkit-text-fill-color: var(--hl-paper-pale) !important;
	font-family: var(--hl-display) !important;
	font-size: clamp(1.35rem, 5.2vw, 2rem) !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: -.01em !important;
	text-align: center !important;
	text-decoration: none !important;
	text-transform: none !important;
	box-shadow: 3px 3px 0 rgba(24,21,18,.18) !important;
	cursor: pointer !important;
}
.hl-haunted-lewiston a.hl-qvc-home-brand:hover,
.hl-haunted-lewiston a.hl-qvc-home-brand:focus,
.hl-haunted-lewiston a.hl-qvc-home-brand:active {
	background: var(--hl-paper-pale) !important;
	background-color: var(--hl-paper-pale) !important;
	border-color: var(--hl-ink) !important;
	color: var(--hl-ink) !important;
	-webkit-text-fill-color: var(--hl-ink) !important;
	text-decoration: none !important;
	box-shadow: 1px 1px 0 rgba(24,21,18,.18) !important;
	transform: translate(1px,1px);
}
.hl-haunted-lewiston .hl-qvc-share-help {
	max-width: 34rem;
	margin: 10px auto 0 !important;
	font-size: .82rem !important;
	line-height: 1.4 !important;
	color: var(--hl-ink-soft) !important;
	text-align: center !important;
}


/* v2.5.15 clean QVC share + unmistakable Home button */
.hl-haunted-lewiston .hl-qvc-share-help { display:none !important; }
.hl-haunted-lewiston .hl-qvc-home-brand,
.hl-haunted-lewiston a.hl-qvc-home-brand,
.hl-haunted-lewiston a.hl-qvc-home-brand:link,
.hl-haunted-lewiston a.hl-qvc-home-brand:visited {
	display:block !important;
	box-sizing:border-box !important;
	width:min(92%, 420px) !important;
	margin:20px auto 28px !important;
	padding:15px 24px 16px !important;
	background:#181512 !important;
	background-color:#181512 !important;
	border:2px solid #181512 !important;
	border-radius:0 !important;
	color:#f3eadb !important;
	-webkit-text-fill-color:#f3eadb !important;
	font-family:var(--hl-ui) !important;
	font-size:clamp(1rem, 4.8vw, 1.3rem) !important;
	font-weight:900 !important;
	letter-spacing:.08em !important;
	line-height:1.1 !important;
	text-align:center !important;
	text-decoration:none !important;
	text-transform:uppercase !important;
	box-shadow:4px 4px 0 rgba(24,21,18,.18) !important;
	cursor:pointer !important;
}
.hl-haunted-lewiston a.hl-qvc-home-brand:hover,
.hl-haunted-lewiston a.hl-qvc-home-brand:focus,
.hl-haunted-lewiston a.hl-qvc-home-brand:active {
	background:#f3eadb !important;
	background-color:#f3eadb !important;
	border-color:#181512 !important;
	color:#181512 !important;
	-webkit-text-fill-color:#181512 !important;
	box-shadow:2px 2px 0 rgba(24,21,18,.18) !important;
	transform:translate(2px,2px) !important;
}

/* v2.5.18: Golden Scarecrow totals replace the entry button. */
.hl-haunted-lewiston .qvc-gallery-actions .hl-scarecrow-total {
  display: block;
  flex: 0 0 100%;
  color: var(--hl-ink, #181512);
  font-weight: 700;
  line-height: 1.4;
  padding: 6px 0;
}

/* v2.5.19: Square gallery frames; preserve each photo's full proportions. */
.hl-haunted-lewiston .qvc-gallery .qvc-gallery-image {
  aspect-ratio: 1 / 1;
}
.hl-haunted-lewiston .qvc-gallery .qvc-gallery-image img {
  object-fit: contain;
  object-position: center;
}
