:root {
    --navy-primary: #0F2C59;
    --navy-dark: #0B2240;
    --gold-primary: #D4AF37;
    --border-slate: #E2E8F0;
    --bg-cream: #F8FAFC;
    --text-body: #334155;
}

/* Modern CSS Parent Selector: Forces narrow theme wrappers to expand to centered wide-frame */
.site-content:has(.lcc-event-landing-wrapper),
.content-area:has(.lcc-event-landing-wrapper),
.container:has(.lcc-event-landing-wrapper),
.entry-content:has(.lcc-event-landing-wrapper),
.main-content:has(.lcc-event-landing-wrapper),
article:has(.lcc-event-landing-wrapper),
div:has(> .lcc-event-landing-wrapper) {
    max-width: 1200px !important;
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Unified Page Wrapper */
.lcc-event-landing-wrapper {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    color: var(--text-body);
}

/* Mural Banner */
.lcc-mural-composite {
    display: flex;
    position: relative;
    height: 320px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    margin-bottom: 35px;
    border: 1px solid var(--border-slate);
}

.mural-half {
    flex: 1;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.left-mural {
    background-image: url('https://storage.googleapis.com/images.lockwoodcapitalcorp.com/2026/07/rs-alexander-pt1.jpg');
}

.right-mural {
    background-image: url('https://storage.googleapis.com/images.lockwoodcapitalcorp.com/2026/07/rs-alexander-pt2.jpg');
}

.mural-scrim {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(11,34,64,0.85) 15%, rgba(11,34,64,0.2) 100%);
    display: flex;
    align-items: flex-end;
    padding: 25px;
}

.mural-title-badge {
    color: #FFFFFF;
    font-family: Georgia, serif;
    font-size: 1.8em;
    font-weight: bold;
    letter-spacing: 1px;
    border-left: 5px solid var(--gold-primary);
    padding-left: 15px;
    text-shadow: 2px 2px 6px rgba(0,0,0,0.9);
}

/* Grid Layout */
.lcc-event-grid-layout {
    display: grid;
    grid-template-columns: 1.2fr 0.8fr;
    gap: 35px;
    margin-bottom: 45px;
}

.lcc-card {
    background: #FFFFFF;
    border: 1px solid var(--border-slate);
    border-radius: 8px;
    padding: 30px;
    margin-bottom: 30px;
    box-shadow: 0 2px 8px rgba(0,0,0,0.02);
}

.lcc-card-heading {
    color: var(--navy-dark);
    font-family: Georgia, serif;
    font-size: 1.9em;
    margin-top: 0;
    margin-bottom: 18px;
    border-bottom: 2px solid var(--gold-primary);
    padding-bottom: 12px;
}

.lcc-lead-text {
    font-size: 1.15em;
    color: #475569;
    margin-bottom: 22px;
    line-height: 1.7;
}

.lcc-event-info-block {
    background: var(--bg-cream);
    border: 1px solid var(--border-slate);
    padding: 20px 25px;
    margin-bottom: 30px;
    border-radius: 6px;
}

.lcc-details-bullets {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.lcc-details-bullets li {
    padding: 8px 0;
    font-size: 1.05em;
}

.lcc-details-bullets li strong {
    color: var(--navy-primary);
    display: inline-block;
    width: 120px;
}

.lcc-sub-heading {
    color: var(--navy-dark);
    font-size: 1.4em;
    margin-top: 25px;
    margin-bottom: 18px;
}

.lcc-inclusions-list {
    padding-left: 20px !important;
}

.lcc-inclusions-list li {
    margin-bottom: 12px;
}

.lcc-purchase-card {
    border-left: 5px solid var(--gold-primary);
}

.lcc-purchase-heading {
    color: var(--navy-dark);
    margin-top: 0;
    font-size: 1.6em;
}

.lcc-purchase-subtext {
    font-size: 0.95em;
    color: #64748B;
    margin-bottom: 25px;
}

.lcc-registration-checkout-form .lcc-field-row {
    margin-bottom: 20px;
}

.lcc-registration-checkout-form label {
    display: block;
    font-weight: 600;
    font-size: 0.95em;
    margin-bottom: 8px;
    color: var(--navy-dark);
}

.lcc-registration-checkout-form input[type="text"] {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid var(--border-slate);
    border-radius: 5px;
    color: var(--text-body);
    font-size: 1em;
}

.lcc-qty-container {
    margin-top: 25px;
}

.lcc-qty-input {
    width: 120px !important;
    padding: 11px 16px;
    border: 1px solid var(--border-slate);
    border-radius: 5px;
    font-weight: bold;
    font-size: 1.1em;
    color: var(--navy-dark);
    text-align: center;
}

.lcc-registration-checkout-form .req {
    color: #DC2626;
}

.lcc-submit-ticket-btn {
    display: block;
    width: 100%;
    background-color: var(--navy-primary) !important;
    color: #FFFFFF !important;
    border: none !important;
    padding: 15px 25px !important;
    font-size: 1.2em !important;
    font-weight: bold !important;
    border-radius: 5px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 10px rgba(15,44,89,0.18) !important;
    margin-top: 25px;
}

.lcc-submit-ticket-btn:hover {
    background-color: var(--navy-dark) !important;
}

.lcc-poster-wrapper {
    background: #FFFFFF;
    border: 1px solid var(--border-slate);
    border-radius: 8px;
    padding: 12px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
    margin-bottom: 35px;
}

.lcc-event-poster-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 6px;
}

.lcc-historic-crew-card {
    background: #FFFFFF;
    border: 1px solid var(--border-slate);
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.06);
}

.crew-image-frame {
    border-radius: 4px;
    overflow: hidden;
    border: 4px solid var(--bg-cream);
}

.lcc-historic-crew-img {
    width: 100%;
    height: auto;
    display: block;
}

.crew-caption {
    font-size: 0.9em;
    color: #64748B;
    text-align: center;
    margin-top: 12px;
    margin-bottom: 0;
    line-height: 1.5;
}

@media (max-width: 860px) {
    .lcc-event-grid-layout {
        grid-template-columns: 1fr;
        gap: 25px;
    }
}
