.venue{
    background:#ECDAC6;
    padding: clamp(16px, 6vw, 80px) clamp(0px, 1vw, 40px);
    text-align:center;

    position:relative;   /* IMPORTANT */
    overflow:hidden;     /* hides overflow of image */
    padding-bottom: 0px;
}

/* decorative flower */


/* keep content above image */
.venue .container{
    max-width:700px;
    margin:auto;
    position:relative;
    z-index:2;
}

/* line 1 */
.venue .top-line{
    margin:0;
    font-size: clamp(1.6rem, 2vw, 1.2rem);
    font-family:'British', serif;
    letter-spacing: clamp(3px, 1vw, 8px);
    color:#401215;
    margin-right: clamp(60px, 18vw, 180px);
    margin-bottom: -5px;
}

/* line 2 */
.venue h2{
    margin:0;
    font-family:'EB Garamond', serif;
    font-size: clamp(2rem, 7vw, 4.2rem);
    letter-spacing: clamp(2px, 1vw, 6px);
    font-weight:200;
    line-height:1;
    color:#401215;
    margin-left: 60px;
}

/* line 3 */
.venue h3{
    margin:10px 0 0;
    font-family:'EB Garamond', serif;
    font-size: clamp(2rem, 5vw, 2.2rem);
    font-weight:600;
    color:#C8A15D;
    letter-spacing:2px;
}

/* subtitle */
.venue .subtitle{
    margin:8px 0 25px;
    font-family:'EB Garamond', serif;
    font-size: clamp(0.8rem, 2vw, 1.1rem);
    letter-spacing: clamp(2px, 0.8vw, 5px);
    color:#401215;
    text-transform: capitalize;
    line-height:1.5;
    padding:0px 40px;
    font-weight: 500;
}

/* image */
.venue .venue-img{
    width:100%;
    max-width:550px;
    border-radius:16px;
    display:block;
    margin:0 auto 25px;
}

/* button */
.venue .map-btn{
    display:inline-block;
    padding:12px 28px;
    background:#401215;
    color:#fff;
    text-decoration:none;
    border-radius:40px;
    font-family:'EB Garamond', serif;
    font-size:1rem;
    letter-spacing:1px;
    margin-bottom:25px;
}

/* stay text */
.venue .stay-text{
    margin:0 0 15px;
    font-family:'EB Garamond', serif;
    font-size: clamp(1.1rem, 3vw, 1.4rem);
    color:#C8A15D;
    font-weight:600;
}

/* features */
/* features */
.venue .features{
    list-style: none;
    padding: 0 0 0 30px;   /* more space for lines */
    margin: 0;
    text-align: left;
    display: inline-block;
    position: relative;
}

/* 3 visible vertical lines */
/* 3 vertical lines with same border thickness style */
.venue .features::before{
    content: "";
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: 0;
    width: 11px;

    background:
        linear-gradient(to right,
            #401215 0 3px,        /* outer thick */
            transparent 3px 5px,

            #401215 5px 6.35px,      /* center thin */

            transparent 6px 8px,
            #401215 8px 11px      /* outer thick */
        );
}

/* list items */
.venue .features li{
    margin: 10px 0;
    font-family: 'EB Garamond', serif;
    font-size: clamp(1.1rem, 3vw, 1.4rem);
    color: #401215;
    padding-left: 0;
}

/* remove bullets */
.venue .features li::before{
    content: none;
}




/* ── Venue scroll animations ── */
.vn-animate {
    opacity: 0;
    transition: opacity 1.3s ease, transform 1.3s ease;
    transition-delay: var(--vn-delay, 0s);
}

.vn-from-left {
    transform: translateX(-60px);
}

.vn-from-right {
    transform: translateX(60px);
}

.vn-from-bottom {
    transform: translateY(0px);
}

.vn-pop {
    transform: scale(0.85);
}

.vn-animate.vn-visible {
    opacity: 1;
    transform: translate(0, 0) scale(1);
}

/* stagger delays for text elements */
.venue h3.vn-animate       { transition-delay: 0.25s; }
.venue .subtitle.vn-animate { transition-delay: 0.35s; }
.venue .venue-img.vn-animate{ transition-delay: 0.45s; }
.venue .map-btn.vn-animate  { transition-delay: 0.55s; }
.venue .stay-text.vn-animate{ transition-delay: 0.65s; }