.elementor-4083 .elementor-element.elementor-element-ab16942{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--padding-top:128px;--padding-bottom:64px;--padding-left:32px;--padding-right:32px;}.elementor-4083 .elementor-element.elementor-element-ab16942.e-con{--align-self:center;}.elementor-4083 .elementor-element.elementor-element-7219388{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4083 .elementor-element.elementor-element-3614fb1{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4083 .elementor-element.elementor-element-982832e{width:100%;max-width:100%;}.elementor-4083 .elementor-element.elementor-element-982832e.elementor-element{--align-self:flex-start;}.elementor-4083 .elementor-element.elementor-element-2e79261{width:100%;max-width:100%;}.elementor-4083 .elementor-element.elementor-element-a907e64{--display:flex;}.elementor-4083 .elementor-element.elementor-element-a907e64.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;color:var( --e-global-color-primary );}.elementor-4083 .elementor-element.elementor-element-7e8b910{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 3rem) 0rem;z-index:10;text-align:center;}.elementor-4083 .elementor-element.elementor-element-7e8b910.elementor-element{--align-self:stretch;--order:99999 /* order end hack */;}.elementor-4083 .elementor-element.elementor-element-7e8b910 .elementor-heading-title{font-family:"Cormorant Unicase", Sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:0.3em;color:#4A483F;}.elementor-4083 .elementor-element.elementor-element-78ff97d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;}.elementor-4083 .elementor-element.elementor-element-a80c9ba.elementor-element{--align-self:center;}.elementor-4083 .elementor-element.elementor-element-5c984e2{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 3.5rem) 0rem;text-align:center;}.elementor-4083 .elementor-element.elementor-element-5c984e2.elementor-element{--align-self:stretch;}.elementor-4083 .elementor-element.elementor-element-5c984e2 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:1.1rem;font-style:italic;color:var( --e-global-color-text );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4083 .elementor-element.elementor-element-a8322cb{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 1.4rem) 0rem;text-align:center;font-family:"Cormorant Garamond", Sans-serif;font-size:1.1rem;color:var( --e-global-color-secondary );}.elementor-4083 .elementor-element.elementor-element-a8322cb.elementor-element{--align-self:center;}.elementor-4083 .elementor-element.elementor-element-8ba74ce.elementor-element{--align-self:stretch;}.elementor-4083 .elementor-element.elementor-element-8ba74ce{text-align:center;}.elementor-4083 .elementor-element.elementor-element-8ba74ce .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:1.05rem;font-style:italic;color:var( --e-global-color-primary );}.elementor-4083 .elementor-element.elementor-element-9349954{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 2.5rem) 0rem;text-align:center;}.elementor-4083 .elementor-element.elementor-element-9349954.elementor-element{--align-self:stretch;}.elementor-4083 .elementor-element.elementor-element-9349954 .elementor-heading-title{font-family:"Cormorant Garamond", Sans-serif;font-size:1.05rem;font-style:italic;color:#C42020;}.elementor-4083 .elementor-element.elementor-element-8dc020e.elementor-element{--align-self:stretch;}.elementor-4083 .elementor-element.elementor-element-9074e35{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:6rem;--padding-bottom:6rem;--padding-left:2rem;--padding-right:2rem;}.elementor-4083 .elementor-element.elementor-element-b90571b{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 1.2rem) 0rem;text-align:center;}.elementor-4083 .elementor-element.elementor-element-b90571b.elementor-element{--align-self:stretch;}.elementor-4083 .elementor-element.elementor-element-b90571b .elementor-heading-title{font-family:"Cormorant SC", Sans-serif;font-size:1.3rem;font-weight:600;text-transform:uppercase;letter-spacing:0.12em;color:var( --e-global-color-accent );}.elementor-4083 .elementor-element.elementor-element-e540aef{margin:0rem 0rem calc(var(--kit-widget-spacing, 0px) + 1.4rem) 0rem;text-align:justify;font-family:"Cormorant Garamond", Sans-serif;font-size:1.1rem;color:var( --e-global-color-secondary );}.elementor-4083 .elementor-element.elementor-element-e540aef.elementor-element{--align-self:center;}.elementor-4083 .elementor-element.elementor-element-511f117{padding:10px 50px 10px 50px;}.elementor-4083 .elementor-element.elementor-element-511f117.elementor-element{--align-self:center;}@media(max-width:767px){.elementor-4083 .elementor-element.elementor-element-7e8b910.elementor-element{--align-self:center;--order:99999 /* order end hack */;}}@media(min-width:768px){.elementor-4083 .elementor-element.elementor-element-7219388{--width:100%;}.elementor-4083 .elementor-element.elementor-element-3614fb1{--width:40%;}.elementor-4083 .elementor-element.elementor-element-a907e64{--width:100%;}}/* Start custom CSS */:root {
	--bg: #0d0b0e;
	--bg-raised: #16121a;
	--ink: #e9e2d6;
	--muted: #9b9097;
	--scarlet: #a4243b;
	--scarlet-glow: rgba(164, 36, 59, 0.4);
	--brass: #a98d5f;
	--line: rgba(233, 226, 214, 0.14);
	--serif-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;
	--serif-body: "Source Serif 4", Georgia, serif;
	--sans: -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; margin: 0; padding: 0; }

.eyebrow {
	font-family: var(--sans);
	font-size: 0.72rem;
	letter-spacing: 0.3em;
	text-transform: uppercase;
	color: var(--brass);
}

/* ---------- 1 · HERO ---------- */

.hero { padding: 6rem 0 5rem; }

.hero__grid {
	display: grid;
	grid-template-columns: 340px 1fr;
	gap: 4.5rem;
	align-items: center;
}

/* Cover image frame — applied to the column containing the cover image,
   OR (preferred) to a <figure> element directly wrapping the <img>.
   Either way, the frame must hug the image and never stretch. */
.sr-cover-frame {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--accent-gold-dim);
    box-shadow: 0 50px 80px -30px rgba(0, 0, 0, .85),
    inset 0 0 0 1px rgba(184, 148, 79, .15);

    /* CRITICAL: prevent Elementor's equal-height column stretch from
       making the frame taller than its image. */
    align-self: start;
    height: fit-content;
    /* Lock to album cover aspect ratio as a belt-and-braces fallback */
    max-width: 100%;
    margin: 0;
}

.sr-cover-frame::before {
    /* gilded inner frame */
    content: "";
    position: absolute;
    inset: 10px;
    border: 1px solid rgba(184, 148, 79, .22);
    z-index: 3;
    pointer-events: none;
}

.sr-cover-frame::after {
    /* corner vignette */
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 50% 60%, transparent 40%, rgba(6, 6, 10, .55) 100%);
    z-index: 2;
    pointer-events: none;
}

.sr-cover-frame img,
.sr-cover-frame .elementor-widget-image,
.sr-cover-frame .elementor-widget-image .elementor-widget-container,
.sr-cover-frame .elementor-widget-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
    display: block;
    filter: saturate(.92) contrast(1.05);
}

/* ─────────────────────────────────────────────────────────────
   2. STATUS PILL  (hero "Forthcoming · MMXXVI")
   ───────────────────────────────────────────────────────────── */
.sr-status-pill {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    padding: .45rem .9rem .45rem .75rem;
    border: 1px solid rgba(184, 148, 79, .35);
    background: linear-gradient(to right, rgba(155, 27, 27, .18), rgba(155, 27, 27, 0));
    font-family: 'Cormorant SC', serif;
    font-size: .68rem;
    letter-spacing: .35em;
    text-transform: uppercase;
    color: var(--text-primary);
}

.sr-status-pill__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--accent-scarlet-bright);
    animation: sr-status-pulse 2.4s ease-out infinite;
}

@keyframes sr-status-pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(196, 30, 58, .55);
    }
    70% {
        box-shadow: 0 0 0 14px rgba(196, 30, 58, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(196, 30, 58, 0);
    }
}

.sr-status-pill__sep {
    color: var(--text-dim);
}

.sr-status-pill__date {
    color: var(--accent-gold);
}

/* When .sr-cover-frame wraps an Elementor Image widget, the widget's outer
   .elementor-element wrapper also needs to fill the frame so the image inside
   inherits height. */
.sr-cover-frame > .elementor-element.elementor-widget-image {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0;
}

.sr-cover-tag {
    position: absolute;
    bottom: 1.2rem;
    left: 1.2rem;
    z-index: 4;
    font-family: 'Cormorant SC', serif;
    font-size: .68rem;
    letter-spacing: .35em;
    text-transform: uppercase;
    color: var(--accent-gold);
    padding: .4rem .7rem;
    border: 1px solid rgba(184, 148, 79, .3);
    background: rgba(6, 6, 10, .55);
    backdrop-filter: blur(4px);
}


.cover {
	position: relative;
	aspect-ratio: 2 / 3;
	max-width: 340px;
	width: 100%;
}

/* the or'dain aura behind the cover */
.cover::before {
	content: "";
	position: absolute;
	inset: -18%;
	background: radial-gradient(closest-side, var(--scarlet-glow), transparent 72%);
	filter: blur(6px);
	animation: pulse 6s ease-in-out infinite;
	z-index: 0;
}

.cover__frame {
	position: relative;
	z-index: 1;
	height: 100%;
	border: 1px solid var(--brass);
	outline: 1px solid rgba(169, 141, 95, 0.25);
	outline-offset: 5px;
	background:
		linear-gradient(160deg, #1c1420 0%, #120d15 55%, #1a1016 100%);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
}

.cover__frame .eyebrow { color: rgba(169, 141, 95, 0.7); }

.cover__title {
	font-family: var(--serif-display);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.25;
}

.cover__note {
	font-family: var(--sans);
	font-size: 0.68rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--muted);
}

.hero__text > * + * { margin-top: 1.1rem; }

h1 {
	font-family: var(--serif-display);
	font-weight: 600;
	font-size: clamp(2.7rem, 6vw, 4.4rem);
	line-height: 1.05;
	letter-spacing: 0.01em;
}

.tagline {
	font-family: var(--serif-display);
	font-style: italic;
	font-size: 1.35rem;
	color: var(--ink);
}

.verse {
	font-style: italic;
	font-size: 0.9rem;
	color: var(--muted);
	letter-spacing: 0.04em;
}

.release {
	font-family: var(--sans);
	font-size: 0.85rem;
	letter-spacing: 0.06em;
	color: var(--muted);
}

.release b { color: var(--ink); font-weight: 600; }

.cta {
	display: inline-block;
	margin-top: 0.6rem;
	padding: 0.85rem 2rem;
	background: var(--scarlet);
	color: #fff;
	font-family: var(--sans);
	font-size: 0.95rem;
	letter-spacing: 0.05em;
	text-decoration: none;
	border-radius: 4px;
	transition: filter 160ms ease;
}

.cta:hover { filter: brightness(1.14); }

.cta-micro {
	font-family: var(--sans);
	font-size: 0.78rem;
	color: var(--muted);
	margin-top: 0.7rem !important;
}

/* ---------- or'dain divider ---------- */

.divider {
	display: flex;
	align-items: center;
	gap: 1rem;
	max-width: 420px;
	margin: 0 auto;
}

.divider::before,
.divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: var(--line);
}

.divider span {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--scarlet);
	box-shadow: 0 0 12px 2px var(--scarlet-glow);
	animation: pulse 6s ease-in-out infinite;
}

/* ---------- 2 · SYNOPSIS ---------- */

.synopsis { padding: 5rem 0; }

.synopsis__col {
	max-width: 42rem;
	margin: 0 auto;
	text-align: left;
}

.synopsis__col .eyebrow {
	display: block;
	text-align: center;
	margin-bottom: 2.2rem;
}

.synopsis__col p + p { margin-top: 1.3rem; }

.synopsis__close {
	font-family: var(--serif-display);
	font-style: italic;
	font-size: 1.55rem;
	line-height: 1.4;
	text-align: center;
	margin-top: 2.4rem !important;
}

/* ---------- 3 · RESERVE ---------- */

.reserve { padding: 5rem 0 6rem; }

.reserve__col { max-width: 36rem; margin: 0 auto; }

.reserve__col .eyebrow {
	display: block;
	text-align: center;
	margin-bottom: 1.4rem;
}

.reserve__intro {
	text-align: center;
	color: var(--muted);
	margin-bottom: 2.4rem;
}

.shortcode-note {
	font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
	font-size: 0.7rem;
	color: rgba(155, 144, 151, 0.65);
	text-align: right;
	margin-bottom: 0.4rem;
}

.panel {
	background: var(--bg-raised);
	border: 1px solid var(--line);
	border-radius: 6px;
	padding: 2.2rem 2rem;
}

/* static replica of the plugin form */
.f-field { margin-bottom: 1.1rem; }

.f-field label {
	display: block;
	font-family: var(--sans);
	font-size: 0.9rem;
	letter-spacing: 0.02em;
	margin-bottom: 0.3rem;
}

.f-optional { color: var(--muted); font-size: 0.85em; }

.f-field input {
	width: 100%;
	padding: 0.65rem 0.8rem;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid var(--line);
	border-radius: 4px;
	color: inherit;
	font: inherit;
}

.f-legend {
	font-family: var(--sans);
	font-size: 0.9rem;
	margin-bottom: 0.5rem;
}

.f-cards { display: flex; gap: 0.6rem; flex-wrap: wrap; }

.f-card {
	flex: 1 1 8.5rem;
	text-align: center;
	padding: 0.7rem 0.5rem;
	border: 1px solid var(--line);
	border-radius: 4px;
	background: rgba(255, 255, 255, 0.05);
	font-family: var(--sans);
	font-size: 0.95rem;
	cursor: pointer;
	user-select: none;
}

.f-card--on {
	border-color: var(--scarlet);
	box-shadow: 0 0 0 1px var(--scarlet), 0 0 14px var(--scarlet-glow);
}

.f-hint {
	font-family: var(--sans);
	font-size: 0.8rem;
	color: var(--muted);
	margin: 0.55rem 0 1.2rem;
}

.f-consent {
	display: flex;
	gap: 0.55rem;
	align-items: flex-start;
	font-family: var(--sans);
	font-size: 0.8rem;
	line-height: 1.5;
	color: var(--muted);
	margin-bottom: 1.3rem;
}

.f-consent input { margin-top: 0.2rem; accent-color: var(--scarlet); }

.f-consent a { color: inherit; }

.f-submit {
	padding: 0.75rem 1.8rem;
	background: var(--scarlet) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 4px !important;
	font-family: var(--sans) !important;
	font-size: 0.95rem !important;
	letter-spacing: 0.04em !important;
	cursor: pointer;
}

/* ─────────────────────────────────────────────────────────────
   4. EXTENDED BUTTON VARIANT — scarlet-filled CTA
   Adds a third .enhanced-btn variant to your existing system.
   Use for the primary "Notify Me on Release" / "Listen" buttons.
   ───────────────────────────────────────────────────────────── */
.enhanced-btn.scarlet {
    background: var(--accent-scarlet) !important;
    color: var(--text-primary) !important;
    border: 1px solid var(--accent-scarlet) !important;
    border-radius: 0 !important;
    font-family: 'Cormorant SC', serif !important;
    font-size: .8rem !important;
    letter-spacing: .12em;
    text-transform: uppercase;
    text-decoration: none !important;
    padding: .9rem 1.6rem !important;
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    transition: all .3s ease;
}

.enhanced-btn.scarlet:hover {
    background: var(--accent-scarlet-bright) !important;
    border-color: var(--accent-scarlet-bright) !important;
    color: var(--text-primary) !important;
    box-shadow: 0 10px 30px -8px rgba(196, 30, 58, .45);
}

.enhanced-btn svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

@keyframes pulse {
	0%, 100% { opacity: 0.65; }
	50% { opacity: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.cover::before, .divider span { animation: none; }
	html { scroll-behavior: auto; }
}

@media (max-width: 880px) {
	.hero { padding: 3.5rem 0 3rem; }
	.hero__grid { grid-template-columns: 1fr; gap: 2.5rem; text-align: center; }
	.cover { max-width: 240px; margin: 0 auto; }
	.hero__text { text-align: center; }
}

@media (max-width: 480px) {
	.f-cards { flex-direction: column; }
	.panel { padding: 1.6rem 1.2rem; }
}/* End custom CSS */