@theme {
	--color-primary: #d9ff43;
	--color-secondary: #ff4fa3;
	--color-accent: #ffad1f;
	--color-ink: #080b12;
	--color-panel: #111722;
	--color-cream: #f3f0e8;
	--color-muted: #9da7b6;
	--color-line: #29303d;
	--font-display: "Arial Narrow", Impact, sans-serif;
	--font-sans: Arial, sans-serif;
	--text-sm: .875rem;
	--text-base: 1rem;
	--text-lg: 1.125rem;
	--text-xl: 1.25rem;
	--text-2xl: 1.5rem;
	--text-3xl: 1.875rem;
	--text-4xl: 2.25rem;
	--text-5xl: 3rem;
}

@layer base {
	* { box-sizing: border-box; }
	html { width:100%; max-width:100%; overflow-x:hidden; scroll-behavior:smooth; -webkit-text-size-adjust:100%; text-size-adjust:100%; }
	body { width:100%; max-width:100%; overflow-x:hidden; margin:0; background:var(--color-ink); color:var(--color-cream); font-family:var(--font-sans); font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
	body,button,input,textarea,select { font-family:var(--font-sans); }
	h1,h2,h3,h4 { margin-top:0; font-family:var(--font-display); font-weight:400; line-height:.95; letter-spacing:.025em; font-kerning:normal; text-rendering:optimizeLegibility; text-wrap:balance; overflow-wrap:break-word; }
	p { margin-top:0; }
	a { color:inherit; }
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid var(--color-primary); outline-offset:3px; }
	img { max-width:100%; height:auto; }
	[x-cloak] { display:none!important; }
	::selection { background:var(--color-primary); color:var(--color-ink); }
}

@layer components {
	.site-header,.site-main,.site-footer { width:100%; max-width:100%; overflow-x:clip; }
	.night-shell { width:min(1240px,calc(100% - 64px)); min-width:0; margin-inline:auto; }
	.section-head > *,.weekend-grid > *,.submit-inner > * { min-width:0; }
	.skip-link { position:fixed; left:1rem; top:-100px; z-index:100; background:var(--color-primary); color:var(--color-ink); padding:.8rem 1rem; font-weight:800; }
	.skip-link:focus { top:1rem; }
	.site-header { position:sticky; top:0; z-index:50; color:var(--color-cream); background:rgba(8,11,18,.92); border-bottom:1px solid rgba(255,255,255,.12); backdrop-filter:blur(18px); }
	.admin-bar .site-header { top:32px; }
	.header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:1.25rem; }
	.night-brand { display:inline-flex; align-items:center; gap:.8rem; color:inherit; text-decoration:none; }
	.brand-badge { width:51px; height:51px; display:grid; place-items:center; background:var(--color-primary); color:var(--color-ink); border-radius:50%; font-family:var(--font-display); font-size:1.45rem; letter-spacing:.03em; transform:rotate(-7deg); }
	.brand-words { display:flex; flex-direction:column; font-family:var(--font-display); font-size:1.25rem; line-height:.78; letter-spacing:.06em; }
	.brand-words strong { font-weight:400; }
	.brand-words em { color:var(--color-secondary); font-style:normal; }
	.desktop-nav { display:flex; align-items:center; gap:clamp(.7rem,1.15vw,1.15rem); min-width:0; }
	.desktop-nav a { color:#dfe4ec; text-decoration:none; font-size:.68rem; font-weight:800; letter-spacing:.12em; line-height:1.2; text-transform:uppercase; white-space:nowrap; transition:color .2s; }
	.desktop-nav a:hover { color:var(--color-primary); }
.desktop-nav .nav-bank-holiday, .mobile-nav .nav-bank-holiday { color:var(--color-primary); }
	.desktop-nav .nav-submit { padding:.8rem 1rem; background:var(--color-primary); color:var(--color-ink); }
	.desktop-nav .nav-submit:hover { background:var(--color-cream); color:var(--color-ink); }
	.menu-toggle { display:none; width:48px; height:48px; padding:10px; border:1px solid var(--color-line); background:transparent; }
	.menu-toggle span:not(.screen-reader-text) { display:block; height:2px; margin:5px 0; background:var(--color-cream); }
	.mobile-nav { padding:1rem 32px 1.5rem; background:var(--color-panel); border-bottom:1px solid var(--color-line); }
	.mobile-nav a { display:block; padding:.85rem 0; border-bottom:1px solid var(--color-line); color:var(--color-cream); text-decoration:none; font-family:var(--font-display); font-size:1.55rem; letter-spacing:.05em; }
	.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

	.hero-night { position:relative; min-height:760px; display:grid; align-items:end; overflow:hidden; background:var(--color-ink); }
		.hero-night-media { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; z-index:0; }
		.hero-night:after { content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(90deg,rgba(8,11,18,.98) 0%,rgba(8,11,18,.8) 46%,rgba(8,11,18,.25) 100%); pointer-events:none; }
	.hero-night:before { content:""; position:absolute; inset:0; z-index:2; background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(to right,#000,transparent 80%); pointer-events:none; }
	.hero-inner { position:relative; z-index:3; padding-block:9rem 5.5rem; }
	.kicker { display:flex; align-items:center; gap:.7rem; margin-bottom:1.25rem; color:var(--color-primary); font-size:.67rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
	.kicker:before { content:""; width:36px; height:2px; background:currentColor; }
	.hero-night h1 { max-width:900px; margin:0; font-size:clamp(5rem,11.5vw,10.5rem); line-height:.83; letter-spacing:.018em; text-transform:uppercase; }
	.hero-night h1 span { display:block; color:var(--color-primary); }
	.hero-copy { max-width:650px; margin:2rem 0 0; color:#c0c8d3; font-size:1.08rem; }
	.action-row { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:2rem; }
	.night-button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:.85rem 1.25rem; border:1px solid var(--color-primary); background:var(--color-primary); color:var(--color-ink); text-decoration:none; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; transition:transform .2s,background .2s; }
	.night-button:hover { transform:translateY(-2px); background:var(--color-cream); border-color:var(--color-cream); }
	.night-button.ghost { background:transparent; color:var(--color-cream); border-color:rgba(255,255,255,.35); }
	.night-button.ghost:hover { border-color:var(--color-primary); color:var(--color-primary); }
	.photo-credit { position:absolute; right:1rem; bottom:1rem; z-index:2; color:rgba(255,255,255,.62); font-size:.58rem; }

	.night-ticker { overflow:hidden; background:var(--color-primary); color:var(--color-ink); border-block:1px solid var(--color-ink); }
	.ticker-track { display:flex; width:max-content; animation:ticker-scroll 28s linear infinite; will-change:transform; font-family:var(--font-display); font-size:1.35rem; letter-spacing:.08em; text-transform:uppercase; }
	.ticker-group { display:flex; flex-shrink:0; gap:2.5rem; padding:.85rem 0 .85rem 2.5rem; }
	.ticker-track span { white-space:nowrap; }
	.ticker-track span:after { content:"✦"; margin-left:2.5rem; color:var(--color-secondary); }
	.night-ticker:hover .ticker-track { animation-play-state:paused; }
	@keyframes ticker-scroll { to { transform:translateX(-50%); } }


	.night-section { padding-block:clamp(5.5rem,9vw,9rem); }
	.light-section { color:var(--color-ink); background:var(--color-cream); }
	.panel-section { background:var(--color-panel); }
	.section-head { display:grid; grid-template-columns:1.2fr .65fr; gap:5rem; align-items:end; margin-bottom:4rem; }
	.section-head h2 { margin:0; font-size:clamp(3.8rem,7vw,7.2rem); text-transform:uppercase; }
	.section-head p:last-child { color:#5c6470; }
	.panel-section .section-head p:last-child { color:var(--color-muted); }
	.section-head .kicker { margin-bottom:1rem; }
	.text-link { display:inline-flex; gap:.6rem; align-items:center; color:inherit; font-size:.72rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; text-underline-offset:.25rem; }

	.discovery-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; overflow:hidden; background:#b9b6ae; border:1px solid #b9b6ae; }
	.discovery-card { position:relative; min-width:0; min-height:190px; display:flex; flex-direction:column; gap:.9rem; padding:1.4rem; background:var(--color-cream); color:var(--color-ink); transition:background .2s,color .2s,transform .2s; }
	.discovery-card:hover { z-index:1; background:var(--color-ink); color:var(--color-cream); }
	.discovery-meta { font-size:.63rem; font-weight:800; letter-spacing:.14em; line-height:1.35; text-transform:uppercase; }
	.discovery-card h3 { margin:auto 0 0; font-size:2rem; line-height:.95; }
	.discovery-card h3 a { text-decoration:none; }
	.discovery-card h3 a:after { content:""; position:absolute; inset:0; }
	.discovery-arrow { align-self:flex-end; color:var(--color-secondary); font-size:1.4rem; line-height:1; }

	.feature-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:1px; background:var(--color-line); border:1px solid var(--color-line); }
	.feature-card { position:relative; min-height:510px; overflow:hidden; background:var(--color-ink); }
	.feature-card.small { min-height:510px; }
	.feature-media { position:absolute; inset:0; }
	.feature-card img { width:100%; height:100%; object-fit:cover; opacity:.72; transition:transform .5s,opacity .3s; }
	.feature-card:hover img { transform:scale(1.035); opacity:.88; }
	.feature-overlay { position:absolute; inset:auto 0 0; padding:2rem; background:linear-gradient(transparent,rgba(8,11,18,.98)); }
	.feature-overlay .label { margin:0; color:var(--color-primary); font-size:.62rem; font-weight:800; letter-spacing:.16em; line-height:1.4; text-transform:uppercase; }
	.feature-overlay h3 { margin:.65rem 0; font-size:clamp(2.5rem,4vw,4.5rem); text-transform:uppercase; }
	.feature-overlay p { max-width:600px; color:#c3cbd6; }
	.feature-overlay a { font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }

	.venue-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--color-line); border:1px solid var(--color-line); }
	/* Keep the embedded Weekend Brief form compact and on-brand. */
	.venue-grid:has(#mailpoet_form_1) { display:block; max-width:720px; margin-inline:auto; background:transparent; border:0; }
	.venue-grid:has(#mailpoet_form_1) .venue-card { width:100%; min-height:0; padding:2rem; background:var(--color-ink); border-top:5px solid var(--color-primary); }
	.venue-grid:has(#mailpoet_form_1) .venue-card h3 { margin:1rem 0 .5rem; color:var(--color-cream); }
	.venue-grid:has(#mailpoet_form_1) .venue-link { display:none; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 { width:100%!important; max-width:560px; margin:0 auto; background:transparent!important; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 form.mailpoet_form { padding:0!important; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 .mailpoet-heading { color:var(--color-primary)!important; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 .mailpoet_form_paragraph { color:#c8cfda!important; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 .mailpoet_text { width:100%!important; border-radius:0!important; background:#fff!important; color:var(--color-ink)!important; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 .mailpoet_submit { width:100%!important; border-radius:0!important; background:var(--color-primary)!important; color:var(--color-ink)!important; cursor:pointer; }
	.venue-grid:has(#mailpoet_form_1) #mailpoet_form_1 a { color:var(--color-primary)!important; font-weight:800; }
	@media(max-width:640px) { .venue-grid:has(#mailpoet_form_1) .venue-card { padding:1.35rem; } }
	.venue-card { min-height:340px; display:flex; flex-direction:column; padding:2rem; background:var(--color-ink); }
	.venue-card:nth-child(2) { background:#171122; }
	.venue-card:nth-child(3) { background:#121b20; }
	.venue-card .venue-type { color:var(--color-secondary); font-size:.63rem; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
	.venue-card h3 { margin:4rem 0 1rem; font-size:3rem; text-transform:uppercase; }
	.venue-card p { color:var(--color-muted); }
	.venue-link { margin-top:auto; }
		.venue-card a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:.7rem .85rem; background:var(--color-primary); color:var(--color-ink); border:1px solid var(--color-primary); line-height:1.35; text-decoration:none; }
		.submit-action .night-button,.submit-band .night-button { min-height:48px; margin:.5rem 0; padding:.9rem 1.25rem; }
		.submit-band a:not(.night-button) { color:#080b12; text-decoration-thickness:2px; text-underline-offset:.2em; }
	.venue-card a { font-size:.7rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }

	.weekend-grid { display:grid; grid-template-columns:.75fr 1.25fr; gap:5rem; align-items:center; }
	.poster-stack { position:relative; min-height:520px; }
	.poster { position:absolute; inset:5% 11% 8% 8%; display:flex; flex-direction:column; justify-content:space-between; padding:2rem; color:var(--color-ink); background:var(--color-primary); border:3px solid var(--color-ink); transform:rotate(-4deg); box-shadow:18px 18px 0 var(--color-secondary); }
	.poster:before { content:""; position:absolute; inset:18% -10% auto 18%; height:38%; border:3px solid var(--color-ink); border-radius:50%; }
	.poster strong { position:relative; z-index:1; font-family:var(--font-display); font-size:clamp(4rem,7vw,7rem); line-height:.82; letter-spacing:.02em; text-transform:uppercase; }
	.poster p { margin:0; }
	.poster-small { position:relative; z-index:1; font-size:.7rem; font-weight:800; letter-spacing:.15em; line-height:1.35; text-transform:uppercase; }
	.weekend-action,.submit-action { margin-top:1.5rem; }
	.weekend-copy h2 { font-size:clamp(4rem,7vw,7rem); text-transform:uppercase; }
	.weekend-copy p { color:#555d68; font-size:1.05rem; }

	.submit-band { padding-block:6rem; color:var(--color-ink); background:var(--color-secondary); }
	.submit-inner { display:grid; grid-template-columns:1.2fr .8fr; gap:4rem; align-items:center; }
	.submit-inner h2 { margin:0; font-size:clamp(4rem,7vw,7rem); text-transform:uppercase; }
	.submit-inner p { font-weight:600; }

	.page-mast { position:relative; overflow:hidden; padding-block:8rem 6rem; border-bottom:1px solid var(--color-line); background:radial-gradient(circle at 85% 10%,rgba(255,79,163,.18),transparent 30%),var(--color-ink); }
	.page-mast:after { content:"OAD"; position:absolute; right:-2rem; bottom:-5rem; color:rgba(255,255,255,.025); font-family:var(--font-display); font-size:24rem; line-height:1; }
	.page-mast .night-shell { position:relative; z-index:1; }
	.page-mast h1 { max-width:1000px; margin:0; font-size:clamp(5rem,10vw,9rem); text-transform:uppercase; }
	.page-content { padding-block:5rem 8rem; }
	.page-feature img { width:100%; max-height:650px; object-fit:cover; }
	.editor-content { max-width:100%; }
	.editor-content > * { max-width:820px; }
	.editor-content > .wide-section,.editor-content > .directory-grid,.editor-content > .submission-panel { max-width:none; }
	.editor-content h2 { margin:4rem 0 1.2rem; font-size:clamp(2.8rem,5vw,5rem); text-transform:uppercase; }
	.editor-content h3 { margin:2.5rem 0 .8rem; font-size:2.3rem; text-transform:uppercase; }
	.editor-content p,.editor-content li { color:#b3bdca; }
	.editor-content a { color:var(--color-primary); }
	.editor-content a.night-button { color:var(--color-ink); }
	.editor-content a.night-button.ghost { color:var(--color-cream); }
	.directory-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; margin-top:3rem; background:var(--color-line); border:1px solid var(--color-line); }
	.directory-item { min-height:240px; padding:2rem; background:var(--color-panel); }
		.directory-grid > .directory-item:last-child:nth-child(odd) { grid-column:1/-1; }
	.directory-item .tag { color:var(--color-secondary); font-size:.62rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
	.directory-item h3 { margin:2.5rem 0 .8rem; }
	.directory-item p { color:var(--color-muted); }
	.event-list { margin:3rem 0 0; padding:0; list-style:none; border-top:1px solid var(--color-line); }
	.event-list li { display:grid; grid-template-columns:120px 1fr auto; gap:2rem; align-items:center; padding:1.5rem 0; border-bottom:1px solid var(--color-line); }
	.event-list time { color:var(--color-primary); font-weight:800; }
	.event-list strong { font-family:var(--font-display); font-size:2rem; letter-spacing:.03em; }
	.event-list span { color:var(--color-muted); }
	.submission-panel { display:grid; grid-template-columns:.8fr 1.2fr; gap:1px; margin-top:3rem; background:var(--color-line); border:1px solid var(--color-line); }
	.submission-panel > div { padding:2.5rem; background:var(--color-panel); }
	.submission-panel label { display:block; margin-bottom:.4rem; color:var(--color-primary); font-size:.65rem; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
	.submission-panel input,.submission-panel textarea,.submission-panel select { width:100%; margin-bottom:1rem; padding:1rem; color:var(--color-cream); background:var(--color-ink); border:1px solid var(--color-line); }
	.submission-panel textarea { min-height:150px; }
	.submission-panel button { min-height:50px; padding:.8rem 1.2rem; border:0; background:var(--color-primary); color:var(--color-ink); font-weight:800; letter-spacing:.1em; text-transform:uppercase; cursor:pointer; transition:transform .2s,background .2s; }
		.submission-panel button:hover { transform:translateY(-2px); background:var(--color-cream); }
		.submission-panel input:focus,.submission-panel textarea:focus,.submission-panel select:focus,.submission-panel button:focus-visible { outline:3px solid var(--color-secondary); outline-offset:2px; }
		.submission-panel .consent-line { display:flex; align-items:flex-start; gap:.75rem; margin:1rem 0; color:var(--color-muted); font-size:.82rem; font-weight:500; letter-spacing:0; line-height:1.5; text-transform:none; }
		.submission-panel .consent-line input { flex:0 0 auto; width:1.1rem; height:1.1rem; margin:.2rem 0 0; accent-color:var(--color-primary); }
		.submission-panel .consent-line a { color:var(--color-primary); }
		.form-note { margin:.5rem 0 1rem; font-size:.78rem; }
		.form-status { margin-bottom:1.25rem; padding:1rem; border:1px solid currentColor; font-weight:700; }
		.form-status.is-success { color:var(--color-primary); background:rgba(217,255,67,.08); }
		.form-status.is-error { color:#ff8aba; background:rgba(255,79,163,.08); }
		.oad-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }

	/* Best of Ormskirk */
		.best-hero { position:relative; min-height:620px; display:flex; align-items:end; overflow:hidden; background:linear-gradient(90deg,rgba(8,11,18,.97),rgba(8,11,18,.66) 58%,rgba(8,11,18,.28)),url('https://ormskirkafterdark.co.uk/wp-content/uploads/2026/08/Best-of-Ormskirk-party.jpg') center/cover; }
		.best-hero:before { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(8,11,18,.86),transparent 55%); }
		.best-hero .night-shell { position:relative; z-index:1; padding-block:8rem 5rem; }
		.best-hero h1 { max-width:1000px; margin:0; font-size:clamp(5rem,10vw,9.5rem); text-transform:uppercase; }
		.best-hero h1 span { display:block; color:var(--color-primary); }
		.best-hero-copy { max-width:690px; margin:1.5rem 0 0; color:#d0d7e0; font-size:1.05rem; }
		.best-status { display:inline-flex; align-items:center; gap:.6rem; margin-top:1.5rem; padding:.55rem .75rem; border:1px solid rgba(217,255,67,.4); color:var(--color-primary); background:rgba(8,11,18,.58); font-size:.64rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
		.best-status:before { content:""; width:.5rem; height:.5rem; border-radius:50%; background:var(--color-primary); box-shadow:0 0 0 .25rem rgba(217,255,67,.12); }
		.ranking-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1px; background:var(--color-line); border:1px solid var(--color-line); }
		.ranking-card { position:relative; min-height:560px; overflow:hidden; background:var(--color-ink); }
		.ranking-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.56; transition:transform .5s,opacity .3s; }
		.ranking-card:hover img { transform:scale(1.035); opacity:.68; }
		.ranking-card:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(8,11,18,.98),rgba(8,11,18,.12) 70%); }
		.ranking-card-content { position:absolute; z-index:2; inset:0; display:flex; flex-direction:column; justify-content:flex-end; padding:2.25rem; }
		.rank-number { position:absolute; top:1.4rem; right:1.6rem; color:var(--color-primary); font-family:var(--font-display); font-size:clamp(5rem,9vw,8rem); line-height:.8; }
		.rank-label { margin:0 0 .6rem; color:var(--color-secondary); font-size:.63rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
		.ranking-card h3 { margin:0 0 .8rem; font-size:clamp(3.2rem,5vw,5.5rem); text-transform:uppercase; }
		.ranking-card p { max-width:520px; margin:0; color:#c2cad5; }
		.collecting-badge { display:inline-flex; align-self:flex-start; margin-top:1.4rem; padding:.55rem .75rem; background:var(--color-primary); color:var(--color-ink); font-size:.63rem; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
		.award-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--color-line); border:1px solid var(--color-line); }
		.award-card { position:relative; min-height:380px; overflow:hidden; background:var(--color-panel); }
		.award-card img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:.42; transition:transform .45s,opacity .3s; }
		.award-card:hover img { transform:scale(1.04); opacity:.58; }
		.award-card:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(8,11,18,.98),rgba(8,11,18,.12) 75%); }
		.award-card-content { position:absolute; z-index:2; inset:auto 0 0; padding:1.7rem; }
		.award-card .award-tag { margin:0 0 .6rem; color:var(--color-primary); font-size:.61rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
		.award-card h3 { margin:0; font-size:2.7rem; text-transform:uppercase; }
		.award-card p { margin:.75rem 0 0; color:#c0c8d2; font-size:.9rem; }
		.method-panel { display:grid; grid-template-columns:.8fr 1.2fr; gap:1px; background:var(--color-line); border:1px solid var(--color-line); }
		.method-panel > div { padding:2.4rem; background:var(--color-panel); }
		.method-panel h3 { margin:0 0 1rem; font-size:3rem; text-transform:uppercase; }
		.method-panel p,.method-panel li { color:var(--color-muted); }
		.method-panel ol { margin:0; padding-left:1.2rem; }
		.method-panel li + li { margin-top:.8rem; }
		.best-credit { margin-top:1.5rem; color:#737d8b; font-size:.6rem; line-height:1.6; }

		.site-footer { padding-top:5rem; background:#05070b; border-top:1px solid var(--color-line); }
	.footer-grid { display:grid; grid-template-columns:1.2fr .55fr .7fr; gap:5rem; padding-bottom:4rem; }
	.footer-brand { margin-bottom:1.5rem; }
	.footer-grid > div:first-child p { max-width:440px; color:var(--color-muted); }
	.footer-grid h2 { margin-bottom:1.2rem; color:var(--color-primary); font-family:var(--font-sans); font-size:.65rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
	.footer-grid > div:not(:first-child) a { display:block; margin:.5rem 0; color:#d5dbe4; text-decoration:none; }
	.footer-grid > div:not(:first-child) p { color:var(--color-muted); font-size:.85rem; }
	.footer-bottom { display:flex; justify-content:space-between; gap:2rem; padding-block:1.25rem; border-top:1px solid var(--color-line); color:#6f7887; font-size:.67rem; }

		/* Full-month calendar layout */
		.page-id-10 .editor-content > .oad-calendar-head,
		.page-id-10 .editor-content > .oad-calendar-wrap { max-width:none; width:100%; }
		.page-id-10 .oad-calendar-wrap { overflow-x:auto; -webkit-overflow-scrolling:touch; padding-bottom:.35rem; }
		.page-id-10 .oad-calendar { width:100%; grid-template-columns:repeat(7,minmax(0,1fr))!important; }
		.page-id-10 .oad-cal-dayname { display:block!important; }
		.page-id-10 .oad-cal-cell.empty { display:block!important; }
			.page-id-10 .oad-cal-dayname:nth-child(1),
			.page-id-10 .oad-cal-dayname:nth-child(7) { background:#171122; color:#ff4fa3; }
			.page-id-10 .oad-cal-dayname:nth-child(5),
			.page-id-10 .oad-cal-dayname:nth-child(6) { background:#182014; color:#d9ff43; }
			.page-id-10 .oad-cal-cell:not(.empty) { background:linear-gradient(180deg,#0b1018,#080b12); }
			.page-id-10 .oad-cal-cell:nth-child(7n+6),
			.page-id-10 .oad-cal-cell:nth-child(7n) { background:linear-gradient(180deg,#12151f,#090c12); }
			.page-id-10 .oad-cal-cell:not(.past) .oad-cal-date { color:#d9ff43; }
			.page-id-10 .oad-event { border-left-width:4px; box-shadow:inset 0 0 0 1px rgba(255,255,255,.025); }
			.page-id-10 .oad-event.market { background:rgba(255,79,163,.12); }
			.page-id-10 .oad-event.civic { background:rgba(255,173,31,.12); }
			.page-id-10 .oad-event.tap { background:rgba(217,255,67,.1); }
			.page-id-10 .oad-key { padding:.8rem 1rem; background:#111722; border:1px solid #29303d; }
		@media(max-width:900px) {
			.page-id-10 .oad-calendar { min-width:980px!important; }
			.page-id-10 .oad-cal-cell { min-height:150px!important; }
			.page-id-10 .oad-cal-date:after { content:none!important; }
		}

	/* Responsive safeguards for long OAD section headings and Freshers content. */
.real-ormskirk-section .section-head { grid-template-columns:1fr; gap:2rem; }
.real-ormskirk-section .section-head h2 { max-width:12ch; font-size:clamp(3.6rem,6.2vw,6rem); line-height:.9; overflow-wrap:normal; word-break:normal; }
.page-id-143 .editor-content { overflow:hidden; }
.page-id-143 .editor-content > h2 { max-width:100%; font-size:clamp(3.2rem,6vw,5rem); line-height:.92; }
.page-id-143 .freshers-grid { grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; max-width:100%; }
.page-id-143 .freshers-grid > *,
.page-id-143 .directory-grid > *,
.page-id-143 .oad-verified { min-width:0; max-width:100%; }
.page-id-143 .freshers-grid h3,
.page-id-143 .directory-item h3 { font-size:clamp(2rem,3.2vw,3rem); line-height:.95; overflow-wrap:normal; word-break:normal; }

.page-id-143 .oad-verified > strong,
.page-id-143 section.oad-verified > strong {
	display:block;
	margin:0 0 1rem;
	font-family:var(--font-sans);
	font-size:clamp(1rem,2vw,1.35rem);
	font-weight:800;
	line-height:1.3;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--color-primary);
}
.page-id-143 .oad-freshers-date,
.page-id-94 .oad-freshers-date { white-space:nowrap; }
.page-id-94 .editor-content > h2 { max-width:100%; }
.page-id-94 .editor-content > h2:has(.oad-freshers-date) { font-size:clamp(2.2rem,4.2vw,3.5rem); line-height:.95; }

@media(max-width:1180px) {
	.real-ormskirk-section .section-head h2 { max-width:14ch; font-size:clamp(3.2rem,7vw,5rem); }
	.page-id-143 .freshers-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
		.desktop-nav { display:none; }
		.menu-toggle { display:block; }
		.section-head,.weekend-grid,.submit-inner,.submission-panel { grid-template-columns:1fr; gap:3rem; }
		.discovery-grid { grid-template-columns:repeat(6,minmax(0,1fr)); }
		.discovery-card { grid-column:span 2; }
		.discovery-card:nth-child(n+4) { grid-column:span 3; }
		.feature-grid { grid-template-columns:1fr; }
		.venue-grid { grid-template-columns:1fr; }
			.ranking-grid,.method-panel { grid-template-columns:1fr; }
			.award-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
		.footer-grid { grid-template-columns:1fr 1fr; }
		.footer-grid > div:first-child { grid-column:1/-1; }
	}
	@media(max-width:782px) { .admin-bar .site-header { top:46px; } }
	@media(max-width:640px) {
		.night-shell { width:100%; max-width:100%; padding-inline:20px; }
		.header-inner { min-height:74px; }
		.brand-badge { flex:0 0 auto; width:44px; height:44px; font-size:1.2rem; }
		.brand-words { min-width:0; font-size:1.05rem; }
		.hero-night { min-height:620px; background-image:linear-gradient(90deg,rgba(8,11,18,.98) 0%,rgba(8,11,18,.8) 46%,rgba(8,11,18,.25) 100%),url('https://ormskirkafterdark.co.uk/wp-content/uploads/2026/08/Ormskirk-nightlife-crowd-768x432.jpg')!important; background-position:62% center; }
		.hero-inner { padding-block:6rem 3.5rem; }
		.hero-night h1 { max-width:100%; font-size:clamp(3.25rem,18vw,5.25rem); line-height:.9; letter-spacing:.012em; overflow-wrap:normal; word-break:normal; }
		.hero-copy { max-width:100%; font-size:.95rem; }
		.action-row { width:100%; }
		.night-button { min-width:0; padding-inline:1rem; }
		.section-head { gap:1.75rem; margin-bottom:2.75rem; }
		.section-head > div,.section-head > p { width:100%; max-width:100%; }
		.discovery-grid,.directory-grid { grid-template-columns:1fr; }
		.discovery-card,.discovery-card:nth-child(n+4) { grid-column:auto; min-height:160px; }
		.feature-card,.feature-card.small { min-height:440px; }
		.section-head h2 { max-width:100%; font-size:clamp(2.9rem,13.5vw,4.2rem); line-height:.94; letter-spacing:.018em; overflow-wrap:normal; word-break:normal; }
		.section-head p:last-child { max-width:100%; font-size:.98rem; }
		.kicker { font-size:.62rem; letter-spacing:.15em; }
		.poster-stack { min-height:410px; }
		.poster { inset:4% 7% 8% 2%; }
		.poster strong { font-size:clamp(3.5rem,17vw,4.6rem); }
		.page-mast { padding-block:6rem 4rem; }
		.page-mast h1 { max-width:100%; font-size:clamp(3.4rem,18vw,5.25rem); line-height:.92; overflow-wrap:normal; word-break:normal; }
		.page-content { padding-block:3.5rem 6rem; }
		.event-list li { grid-template-columns:1fr; gap:.35rem; }
			.best-hero { min-height:560px; }
			.best-hero .night-shell { padding-block:6rem 3.5rem; }
			.best-hero h1 { font-size:clamp(3.5rem,18vw,5.3rem); line-height:.9; }
			.ranking-card { min-height:470px; }
			.ranking-card-content { padding:1.5rem; }
			.award-grid { grid-template-columns:1fr; }
			.award-card { min-height:330px; }
			.method-panel > div { padding:1.6rem; }
		.footer-grid { grid-template-columns:1fr; gap:2.5rem; }
		.footer-grid > div:first-child { grid-column:auto; }
		.footer-bottom { display:block; }
		.footer-bottom span { display:block; margin:.25rem 0; }
	}
	/* Weekend Brief signup: compact OAD treatment for the MailPoet form. */
		.oad-weekend-signup { padding:5rem 0; background:var(--color-cream); color:var(--color-ink); }
		.oad-weekend-signup .night-shell { display:flex; justify-content:center; }
		.oad-weekend-signup > .night-shell > div { width:min(680px,100%); padding:2.25rem; background:var(--color-ink); border-top:5px solid var(--color-primary); color:var(--color-cream); }
		.oad-weekend-signup h2 { margin-bottom:1rem; color:var(--color-cream); font-size:clamp(2.7rem,6vw,4.8rem); }
		.oad-weekend-signup > .night-shell > div > p:not(.kicker) { max-width:580px; color:#c8cfda; }
		.oad-weekend-signup #mailpoet_form_1 { width:100%!important; max-width:560px; margin:1.4rem auto 0; background:transparent!important; }
		.oad-weekend-signup #mailpoet_form_1 form.mailpoet_form { padding:0!important; }
		.oad-weekend-signup #mailpoet_form_1 .mailpoet-heading { color:var(--color-primary)!important; }
		.oad-weekend-signup #mailpoet_form_1 .mailpoet_form_paragraph { color:#c8cfda!important; }
		.oad-weekend-signup #mailpoet_form_1 .mailpoet_submit { background:var(--color-primary)!important; color:var(--color-ink)!important; border-radius:0!important; }
		.oad-weekend-signup #mailpoet_form_1 .mailpoet_text { border-radius:0!important; background:#fff!important; color:var(--color-ink)!important; }
		.oad-weekend-signup #mailpoet_form_1 a { color:var(--color-primary)!important; }
		.oad-weekend-signup > .night-shell > div > p:last-child:has(a[href*="privacy-policy"]) { display:none; }
		@media(max-width:640px) { .oad-weekend-signup { padding:3rem 0; } .oad-weekend-signup > .night-shell > div { padding:1.4rem; } }

		/* Weekend Brief repair: use the existing homepage form as one centred card. */
.oad-weekend-signup,.oad-weekend-signup-fixed { display:none!important; }
.home .light-section .venue-grid:has(#mailpoet_form_1) { display:block!important; width:100%!important; max-width:760px!important; margin:0 auto!important; background:transparent!important; border:0!important; overflow:visible!important; }
.home .light-section .venue-grid:has(#mailpoet_form_1) .venue-card { display:block!important; width:100%!important; min-height:0!important; padding:2.25rem!important; background:var(--color-ink)!important; color:var(--color-cream)!important; border-top:5px solid var(--color-primary)!important; }
.home .light-section .venue-grid:has(#mailpoet_form_1) .venue-type,
.home .light-section .venue-grid:has(#mailpoet_form_1) .venue-card > h3,
.home .light-section .venue-grid:has(#mailpoet_form_1) .venue-link { display:none!important; }
.home .light-section #mailpoet_form_1 { display:block!important; width:100%!important; max-width:560px!important; margin:0 auto!important; background:transparent!important; }
.home .light-section #mailpoet_form_1 form.mailpoet_form { width:100%!important; padding:0!important; background:transparent!important; }
.home .light-section #mailpoet_form_1 .mailpoet_spacer { display:none!important; }
.home .light-section #mailpoet_form_1 .mailpoet-heading { margin:0 0 .75rem!important; color:var(--color-primary)!important; font-size:1.55rem!important; }
.home .light-section #mailpoet_form_1 p.mailpoet_form_paragraph { color:#d4d9e1!important; }
.home .light-section #mailpoet_form_1 .mailpoet_text { width:100%!important; background:#fff!important; color:var(--color-ink)!important; }
.home .light-section #mailpoet_form_1 .mailpoet_submit { width:100%!important; background:var(--color-primary)!important; color:var(--color-ink)!important; }
.home .light-section #mailpoet_form_1 a { display:inline!important; min-height:0!important; margin:0!important; padding:0!important; background:transparent!important; border:0!important; color:var(--color-primary)!important; font-size:inherit!important; font-weight:800!important; letter-spacing:normal!important; text-transform:none!important; text-decoration:underline!important; }
@media(max-width:640px) { .home .light-section .venue-grid:has(#mailpoet_form_1) .venue-card { padding:1.4rem!important; } }

@media(prefers-reduced-motion:reduce) {
		* { scroll-behavior:auto!important; animation-duration:.01ms!important; transition-duration:.01ms!important; }
		.ticker-track { animation:none!important; transform:none!important; }
	}
}
