/* ============================================================
   VENUE — FULL-WIDTH EDITORIAL LEATHER PANEL
   ============================================================ */
.venue-wrapper {
    padding-block: clamp(3rem, 6vw, 5rem);
    max-width: 1000px;
    margin-inline: auto;
    position: relative;
}

.venue-content-inner {
    position: relative;
    padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1.5rem, 4vw, 3.5rem);
    border-radius: var(--radius);
    /* Warm leather paper base */
    background: var(--grain), repeating-linear-gradient(90deg, rgba(0, 0, 0, .018) 0 1px, transparent 1px 3px), repeating-linear-gradient(0deg, rgba(120, 95, 60, .015) 0 1px, transparent 1px 3px), linear-gradient(160deg, #fffdf9 0%, #f7f2e7 100%);
    background-size: 140px 140px, auto, auto, auto;
    background-blend-mode: multiply, normal, normal, normal;
    border: 1px solid rgba(120, 80, 35, .18);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .95), 0 24px 50px -20px rgba(60, 40, 15, .25);
}

    /* Dashed inner seam */
    .venue-content-inner::before {
        content: "";
        position: absolute;
        inset: 12px;
        border: 1.5px dashed rgba(120, 80, 35, .25);
        border-radius: calc(var(--radius) - 4px);
        pointer-events: none;
        z-index: 0;
    }

    /* Corner cross-stitches (matches your .why-attend-box / .news-coverages-wrapper) */
    .venue-content-inner::after {
        content: "";
        position: absolute;
        inset: 12px;
        border-radius: calc(var(--radius) - 4px);
        pointer-events: none;
        z-index: 0;
        background: linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) 6px 6px / 14px 1.5px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) 6px 6px / 1.5px 14px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) calc(100% - 6px) 6px / 14px 1.5px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) calc(100% - 6px) 6px / 1.5px 14px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) 6px calc(100% - 6px) / 14px 1.5px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) 6px calc(100% - 6px) / 1.5px 14px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) calc(100% - 6px) calc(100% - 6px) / 14px 1.5px no-repeat, linear-gradient(rgba(120, 80, 35, .6), rgba(120, 80, 35, .6)) calc(100% - 6px) calc(100% - 6px) / 1.5px 14px no-repeat;
        opacity: 0.6;
        transition: all 0.5s var(--ease);
    }

    /* Hover effect on the card */
    .venue-content-inner:hover::after {
        background: linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) 6px 6px / 14px 1.5px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) 6px 6px / 1.5px 14px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) calc(100% - 6px) 6px / 14px 1.5px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) calc(100% - 6px) 6px / 1.5px 14px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) 6px calc(100% - 6px) / 14px 1.5px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) 6px calc(100% - 6px) / 1.5px 14px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) calc(100% - 6px) calc(100% - 6px) / 14px 1.5px no-repeat, linear-gradient(rgba(5, 93, 83, .8), rgba(5, 93, 83, .8)) calc(100% - 6px) calc(100% - 6px) / 1.5px 14px no-repeat;
        opacity: 1;
    }

/* Eyebrow text */
.venue-eyebrow {
    position: relative;
    z-index: 1;
    display: block;
    font-family: "Tahoma", sans-serif;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.25em;
    text-transform: uppercase;
    color: var(--primary);
    margin-bottom: 12px;
}

/* Heading */
.venue-content-inner h2 {
    position: relative;
    z-index: 1;
    font-family: "Barlow", "Tahoma", sans-serif;
    font-size: clamp(2rem, 1.5rem + 2vw, 3rem);
    font-weight: 700;
    line-height: 1.15;
    color: var(--ink);
    margin-bottom: 24px;
    max-width: 800px;
}

/* Animated stitched divider */
.venue-divider {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 2px;
    background-image: linear-gradient(90deg, rgba(5, 93, 83, 0.6) 0 10px, transparent 10px 20px);
    background-size: 20px 2px;
    background-repeat: repeat-x;
    margin-bottom: 30px;
    animation: headingStitch 4s linear infinite;
    filter: drop-shadow(0 1px 0 rgba(255, 255, 255, .6));
}

/* Body Text */
.venue-content-inner p {
    position: relative;
    z-index: 1;
    color: var(--muted);
    font-size: clamp(1rem, 0.95rem + 0.25vw, 1.125rem);
    line-height: 1.85;
    margin-bottom: 20px;
    max-width: 850px;
}

    .venue-content-inner p:last-of-type {
        margin-bottom: 0;
    }

/* CTA Wrapper */
.venue-action {
    position: relative;
    z-index: 1;
    margin-top: 36px;
    display: flex;
    justify-content: flex-start;
}

/* Teal Leather Button */
.venue-content-inner .form-submit-btn {
    position: relative;
    display: inline-block;
    color: #fff;
    padding: 14px 38px;
    border-radius: 999px;
    background: var(--grain), linear-gradient(155deg, #0d6e60, #055d53 55%, #044a42);
    background-size: 90px 90px, auto;
    background-blend-mode: soft-light, normal;
    border: 1.5px solid var(--primary);
    font-family: "Barlow", sans-serif;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    text-decoration: none;
    overflow: hidden;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22), inset 0 -2px 4px rgba(0, 0, 0, 0.35), 0 6px 16px -6px rgba(5, 93, 83, 0.8);
    transition: all 0.35s ease;
}

    /* Button inner stitch */
    .venue-content-inner .form-submit-btn::before {
        content: "";
        position: absolute;
        inset: 5px;
        border: 1.5px dashed rgba(255, 235, 200, 0.6);
        border-radius: 999px;
        pointer-events: none;
        transition: border-color 0.35s ease;
    }

    /* Button sheen */
    .venue-content-inner .form-submit-btn::after {
        content: "";
        position: absolute;
        top: 0;
        left: -80%;
        width: 50%;
        height: 100%;
        background: linear-gradient(105deg, transparent, rgba(255, 255, 255, .45), transparent);
        transform: skewX(-20deg);
        transition: left .7s cubic-bezier(.16, 1, .3, 1);
        pointer-events: none;
    }

    /* Button Hover */
    .venue-content-inner .form-submit-btn:hover {
        color: #fff;
        transform: translateY(-3px);
        letter-spacing: 0.15em;
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), inset 0 -2px 5px rgba(0, 0, 0, 0.4), 0 12px 24px -8px rgba(5, 93, 83, 0.9);
    }

        .venue-content-inner .form-submit-btn:hover::before {
            border-color: rgba(255, 235, 200, 0.95);
        }

        .venue-content-inner .form-submit-btn:hover::after {
            left: 130%;
        }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width: 767px) {
    .venue-wrapper {
        padding-block: 2rem;
    }

    .venue-content-inner {
        padding: 2.5rem 1.5rem;
    }

        .venue-content-inner::before,
        .venue-content-inner::after {
            inset: 8px;
            /* Pull stitches in slightly on mobile */
        }

        .venue-content-inner p {
            font-size: 15px;
            line-height: 1.75;
        }

    .venue-action {
        margin-top: 28px;
    }
}
