.stay-hero{
    position:relative;
    display:flex;
    justify-content:center;
    align-items:center;
    min-height:420px;
    text-align:center;

    background-image:
    linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.45)),
    url("images/room-circle1.jpg");

    background-size:cover;
    background-position:center;

    border-bottom:12px solid var(--claddagh-cream);
}

.stay-overlay{
    position:absolute;
    inset:0;
}

.stay-content{
    position:relative;
    z-index:2;
    width:min(900px,90%);
}

.stay-content h1{

    font-family:var(--font-heading);
    color:var(--claddagh-cream);
    font-size:clamp(3rem,7vw,6rem);
    text-transform:uppercase;
    margin-bottom:20px;

}

.stay-content p{

    color:var(--claddagh-cream);
    font-size:1.3rem;
    line-height:1.8;

}

.hotel-section{

    background:var(--claddagh-cream);
    padding:40px 0;

}

.hotel-content{

    width:92%;
    max-width:1700px;
    margin:auto;

    display:grid;
    grid-template-columns:60% 40%;

}

.hotel-content.reverse{

    grid-template-columns:40% 60%;

}

.hotel-content.reverse .hotel-image{

    order:1;

}

.hotel-content.reverse .hotel-text{

    order:2;

}

.hotel-text{

    background:var(--claddagh-green);
    color:var(--claddagh-cream);

    padding:50px;

    display:flex;
    flex-direction:column;
    justify-content:center;
    text-align:center;

}

.hotel-text h2{

    font-family:var(--font-heading);
    font-size:2.7rem;
    margin-bottom:25px;

}

.hotel-text p{

    font-size:1.15rem;
    line-height:1.8;

}

.hotel-features{

    list-style:none;
    padding:0;
    margin:30px 0;

}

.hotel-features li{

    padding:12px 0;
    border-bottom:1px solid rgba(255,255,255,.15);

}

.hotel-image img{
    width:100%;
    height:100%;
    min-height:500px;
    object-fit:cover;
    object-position: 80% center; /* Move image left */
    display:block;
}

.hotel-buttons {
    display: flex;
    justify-content: center;
    gap: 15px;
    margin-top: 30px;
    flex-wrap: wrap;
}

.hotel-btn{

    margin-top:25px;
    display:inline-block;
    align-self:center;

    padding:14px 32px;

    border:2px solid var(--claddagh-gold);

    color:var(--claddagh-cream);

    text-decoration:none;

    font-family:var(--font-heading);

    text-transform:uppercase;

    transition:.3s;

}

.hotel-btn:hover{

    background:var(--claddagh-gold);
    color:var(--claddagh-green);

}

@media(max-width:900px){

.hotel-content,
.hotel-content.reverse{

grid-template-columns:1fr;

}

.hotel-text {
    order: 1;
    padding: 40px 25px;
}

.hotel-image {
    order: 2;
}

/* Walled City section */
.hotel-content.reverse .hotel-text {
    order: 1;
}

.hotel-content.reverse .hotel-image {
    order: 2;
}

.hotel-image img{

min-height:300px;

}

.hotel-text h2{

font-size:2.2rem;

}

.hotel-text p{

font-size:1rem;

}

}

.location-map-section {
    background: var(--claddagh-cream);
    padding: 90px 20px;
}

.location-map-heading {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 45px;
}

.location-map-heading h2 {
    font-family: var(--font-heading);
    color: var(--claddagh-green);
    font-size: clamp(2.5rem, 5vw, 4rem);
    margin-bottom: 20px;
}

.location-map-heading p {
    color: var(--claddagh-green);
    font-size: 1.2rem;
    line-height: 1.8;
}

.map-container {
    width: 92%;
    max-width: 1300px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 65% 35%;
    background: var(--claddagh-green);
}

.map-container iframe {
    width: 100%;
    height: 520px;
    border: 0;
    display: block;
}

.map-locations {
    padding: 35px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 22px;
}

.map-card {
    display: flex;
    gap: 18px;
    align-items: flex-start;
    background: var(--claddagh-cream);
    padding: 22px;
}

.map-icon {
    font-size: 2rem;
}

.map-card h3 {
    font-family: var(--font-heading);
    color: var(--claddagh-green);
    font-size: 1.5rem;
    margin-bottom: 8px;
}

.map-card p {
    color: var(--claddagh-green);
    line-height: 1.6;
}

@media (max-width: 900px) {
    .map-container {
        grid-template-columns: 1fr;
    }

    .map-container iframe {
        height: 360px;
    }

    .map-locations {
        padding: 25px;
    }
}

