/* True North Movies — Coming Soon Placeholder */
:root {
    --red: #e50914;
    --red-dark: #9f1018;
    --black: #050505;
    --panel: #111114;
    --panel-2: #17171b;
    --white: #ffffff;
    --text: #f6f6f7;
    --muted: #a6a6ad;
    --line: #2e2e36;
    --glow: rgba(229, 9, 20, .30);
}

* { box-sizing: border-box; }

html, body {
    min-height: 100%;
    margin: 0;
}

body {
    font-family: Arial, Helvetica, sans-serif;
    color: var(--text);
    background:
        linear-gradient(90deg, rgba(5,5,5,.90), rgba(5,5,5,.62), rgba(5,5,5,.94)),
        radial-gradient(circle at 18% 8%, rgba(229,9,20,.32), transparent 34%),
        radial-gradient(circle at 86% 16%, rgba(255,255,255,.06), transparent 24%),
        url("../img/hero-bg.png"),
        linear-gradient(180deg, #070707 0%, #0b0b0d 44%, #050505 100%);
    background-size: cover, auto, auto, cover, auto;
    background-position: center, center, center, center, center;
    display: grid;
    place-items: center;
    padding: 32px 18px;
}

.coming-soon-page {
    width: min(1120px, 100%);
}

.coming-soon-card {
    position: relative;
    overflow: hidden;
    min-height: 650px;
    display: grid;
    align-content: center;
    justify-items: center;
    text-align: center;
    padding: 46px 38px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 30px;
    background:
        linear-gradient(135deg, rgba(9,9,10,.94), rgba(18,18,22,.90) 48%, rgba(130,7,16,.76)),
        radial-gradient(circle at 50% 0%, rgba(255,255,255,.10), transparent 24%);
    box-shadow:
        0 28px 80px rgba(0,0,0,.62),
        0 0 0 1px rgba(255,255,255,.035) inset,
        0 0 46px rgba(229,9,20,.12);
}

.coming-soon-card::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, transparent, rgba(255,255,255,.055), transparent),
        repeating-linear-gradient(90deg, rgba(255,255,255,.028) 0 1px, transparent 1px 80px);
    opacity: .55;
}

.coming-soon-card::after {
    content: "";
    position: absolute;
    left: -15%;
    right: -15%;
    bottom: -90px;
    height: 180px;
    background: radial-gradient(ellipse at center, rgba(229,9,20,.36), transparent 67%);
    filter: blur(4px);
    pointer-events: none;
}

.logo-wrap {
    position: relative;
    z-index: 1;
    width: min(660px, 92%);
    margin-bottom: 18px;
}

.logo-wrap img {
    display: block;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 10px 22px rgba(0,0,0,.62));
}

.eyebrow {
    position: relative;
    z-index: 1;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin: 8px 0 14px;
    color: #ffb4ba;
    text-transform: uppercase;
    font-weight: 900;
    letter-spacing: 2px;
    font-size: 13px;
}

.eyebrow span {
    width: 70px;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--red), transparent);
}

h1 {
    position: relative;
    z-index: 1;
    margin: 0;
    font-size: clamp(54px, 9vw, 112px);
    line-height: .92;
    letter-spacing: -4px;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 8px 26px rgba(0,0,0,.72), 0 0 26px rgba(229,9,20,.18);
}

.lead {
    position: relative;
    z-index: 1;
    width: min(760px, 100%);
    margin: 22px auto 28px;
    color: #dedee4;
    font-size: clamp(17px, 2vw, 22px);
    line-height: 1.55;
}

.status-panel {
    position: relative;
    z-index: 1;
    width: min(880px, 100%);
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin: 2px 0 28px;
}

.status-panel div {
    padding: 17px 14px;
    border: 1px solid rgba(255,255,255,.12);
    border-left: 4px solid var(--red);
    border-radius: 18px;
    background: rgba(0,0,0,.28);
    box-shadow: 0 14px 32px rgba(0,0,0,.22);
}

.status-panel strong {
    display: block;
    color: #fff;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: .3px;
}

.status-panel span {
    display: block;
    margin-top: 7px;
    color: var(--muted);
    font-size: 14px;
}

.coming-soon-actions {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 18px;
    flex-wrap: wrap;
}

.primary-button {
    display: inline-flex;
    min-width: 190px;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: linear-gradient(180deg, #ff1919 0%, #e50914 62%, #c70611 100%);
    color: #fff;
    text-decoration: none;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .3px;
    box-shadow: 0 18px 34px rgba(229,9,20,.28), inset 0 1px 0 rgba(255,255,255,.14);
}

.primary-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 22px 38px rgba(229,9,20,.34), 0 0 20px rgba(229,9,20,.22);
}

.small-note {
    color: #cfcfd6;
    font-size: 14px;
    font-weight: 800;
}

@media (max-width: 720px) {
    body { padding: 18px 12px; }

    .coming-soon-card {
        min-height: 620px;
        padding: 34px 20px;
        border-radius: 22px;
    }

    h1 { letter-spacing: -2px; }

    .status-panel { grid-template-columns: 1fr; }

    .eyebrow span { width: 44px; }
}
