body{
    background-color:var(--color-bg);
}
.restaurant-hero{
    padding-top:5.4rem;
}
.restaurant-hero-inner{
    display:grid;
    grid-template-columns:3fr 2fr;
    gap:var(--space-8);
    align-items:stretch;
}
.restaurant-hero-text{
    display:flex;
    flex-direction:column;
    gap:var(--space-4);
}
.restaurant-hero-lead{
    font-size:1.05rem;
    max-width:34rem;
}
.restaurant-hero-tags{
    display:flex;
    flex-wrap:wrap;
    gap:0.4rem;
}
.restaurant-hero-media{
    position:relative;
    border-radius:26px;
    background:radial-gradient(circle at 0 0,rgba(178,138,84,0.14)0,rgba(246,241,232,1)40%,rgba(222,215,202,1)100%);
    padding:var(--space-4);
    border:1px solid var(--color-border);
    box-shadow:var(--shadow-md);
}
.restaurant-hero-figure{
    border-radius:20px;
    overflow:hidden;
}
.restaurant-hero-note{
    position:absolute;
    right:var(--space-4);
    bottom:var(--space-4);
    max-width:230px;
    background-color:rgba(255,253,248,0.96);
    border-radius:18px;
    padding:var(--space-3);
    box-shadow:var(--shadow-sm);
    border:1px solid rgba(222,215,202,0.9);
    font-size:0.9rem;
    line-height:1.5;
}
.restaurant-hero-note p{
    margin-bottom:0;
}
.restaurant-section-soft{
    background-color:#FFFDF8;
}
.restaurant-image-block{
    display:flex;
    align-items:stretch;
}
.restaurant-figure{
    border-radius:22px;
    overflow:hidden;
    border:1px solid var(--color-border);
    box-shadow:var(--shadow-sm);
}
.restaurant-figure-wine{
    background:radial-gradient(circle at 0 0,rgba(178,138,84,0.22)0,rgba(38,34,30,1)70%);
}
.restaurant-figure-wine img{
    mix-blend-mode:screen;
}
.restaurant-highlight-card{
    border-radius:22px;
    border:1px solid var(--color-border);
    padding:var(--space-5);
    background:radial-gradient(circle at 0 0,rgba(178,138,84,0.16)0,rgba(255,253,248,1)55%);
    box-shadow:var(--shadow-sm);
    display:flex;
    flex-direction:column;
    gap:var(--space-3);
}
.restaurant-highlight-card h3{
    margin-bottom:0;
}
.restaurant-highlight-actions{
    margin-top:var(--space-3);
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-3);
    align-items:center;
}
.restaurant-events{
    background-color:var(--color-bg);
}
.restaurant-bottom-cta{
    padding-bottom:var(--space-16);
}
.restaurant-bottom-grid{
    display:grid;
    grid-template-columns:1.6fr 1.1fr;
    gap:var(--space-6);
}
.restaurant-info-card{
    background-color:var(--color-surface);
}
.restaurant-list{
    font-size:0.95rem;
    line-height:1.7;
    padding-left:0;
}
.restaurant-list li+li{
    margin-top:0.35rem;
}
.restaurant-note{
    font-size:0.85rem;
    color:var(--gray-700);
    margin-top:var(--space-2);
}
.restaurant-cta-row{
    margin-top:var(--space-4);
    display:flex;
    flex-wrap:wrap;
    gap:var(--space-3);
    align-items:center;
}
.restaurant-disclaimer{
    font-size:0.8rem;
    color:var(--gray-700);
    margin-top:var(--space-3);
}
.layout-two-col-top{
    align-items:flex-start;
}
.layout-two-col-middle{
    align-items:center;
}
@media (max-width:960px){
    .restaurant-hero-inner{
        grid-template-columns:1fr;
    }
    .restaurant-hero{
        padding-top:4.8rem;
    }
}
@media (max-width:900px){
    .restaurant-bottom-grid{
        grid-template-columns:1fr;
    }
}
@media (max-width:640px){
    .restaurant-hero-note{
        position:static;
        margin-top:var(--space-3);
        max-width:none;
    }
}
