
/* V369 – boutique editorial restaurant detail. Removes cheap "table/form" feeling. */
body.v350-restaurant-detail{
 background:#f4f0e7!important;color:#172238!important
}
.v350-restaurant-detail .demo-card,
.v350-restaurant-detail #menu{
 border:0!important;border-radius:26px!important;background:#fff!important;
 box-shadow:0 18px 50px rgba(41,32,18,.07)!important;padding:28px!important;
 position:relative!important;overflow:hidden!important
}
.v350-restaurant-detail .demo-card:before,
.v350-restaurant-detail #menu:before{
 content:"";position:absolute;left:28px;top:0;width:58px;height:3px;
 background:linear-gradient(90deg,#c68d22,#f0d98c);border-radius:0 0 5px 5px
}
.v350-restaurant-detail .demo-card h2,
.v350-restaurant-detail #menu h2{
 font-family:Georgia,"Times New Roman",serif!important;font-weight:700!important;
 font-size:30px!important;line-height:1.05!important;color:#13223b!important;margin:0 0 18px!important
}
.v350-restaurant-detail .demo-card h2:after,
.v350-restaurant-detail #menu h2:after{display:none!important}

/* Contact – elegant information panel, not a table */
.v350-restaurant-detail .contact-head{
 border:0!important;padding:0 0 18px!important;margin-bottom:6px!important
}
.v350-restaurant-detail .contact-logo{
 width:72px!important;height:72px!important;border:0!important;border-radius:20px!important;
 background:#fbf7ef!important;box-shadow:inset 0 0 0 1px #eee1c5!important
}
.v350-restaurant-detail .contact-row{
 display:grid!important;grid-template-columns:42px minmax(0,1fr)!important;
 gap:14px!important;align-items:center!important;border:0!important;
 min-height:62px!important;padding:10px 0!important
}
.v350-restaurant-detail .contact-row+.contact-row{border-top:1px solid #f0ece4!important}
.v350-restaurant-detail .contact-row .ico{
 width:42px!important;height:42px!important;border-radius:50%!important;
 background:#f6f1e7!important;color:#b77f17!important;font-size:17px!important
}

/* Opening hours – editorial list */
.v350-restaurant-detail .hours-title{border:0!important;margin-bottom:8px!important}
.v350-restaurant-detail .hours-row{
 border:0!important;min-height:38px!important;padding:6px 0!important;
 grid-template-columns:1fr auto!important;font-size:15px!important
}
.v350-restaurant-detail .hours-row:nth-child(even){background:#fbf9f5!important;border-radius:10px!important;padding-left:10px!important;padding-right:10px!important}

/* Reservation – luxury compact module, fields are not huge boxes */
.v350-restaurant-detail .v362-book{background:linear-gradient(145deg,#fff 0%,#fbf7ee 100%)!important}
.v350-restaurant-detail .v362-book>p{max-width:580px!important;font-size:16px!important;line-height:1.55!important;color:#6c6255!important}
.v350-restaurant-detail .v362-book form{
 display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
 gap:14px 12px!important;margin-top:20px!important
}
.v350-restaurant-detail .v362-book label{
 font-size:12px!important;text-transform:uppercase!important;letter-spacing:.08em!important;
 font-weight:850!important;color:#4c586a!important
}
.v350-restaurant-detail .v362-book input,
.v350-restaurant-detail .v362-book select{
 height:46px!important;min-height:46px!important;border:0!important;border-bottom:1.5px solid #c9ab68!important;
 border-radius:0!important;background:transparent!important;padding:4px 2px!important;
 box-shadow:none!important;color:#172238!important
}
.v350-restaurant-detail .v362-book form button{
 grid-column:1/-1!important;width:max-content!important;min-width:220px!important;
 min-height:48px!important;padding:0 24px!important;border-radius:999px!important;
 justify-self:start!important;background:#14243d!important;color:#fff!important;
 box-shadow:0 9px 22px rgba(20,36,61,.16)!important
}

/* Reviews – editorial quote card */
.v350-restaurant-detail .v362-reviews{background:#fff!important}
.v350-restaurant-detail .v362-head{align-items:baseline!important}
.v350-restaurant-detail .v362-head>b{font:700 23px Georgia,serif!important;color:#b47c14!important}
.v350-restaurant-detail .v362-note{
 border:0!important;border-radius:16px!important;background:#f8f4eb!important;
 padding:14px 16px!important;font-size:14px!important;line-height:1.5!important
}
.v350-restaurant-detail .v362-reviews article{
 border:0!important;border-radius:18px!important;background:#fbfaf7!important;
 padding:18px!important
}

/* CTA: small floating utility, not a giant banner */
.v350-restaurant-detail .mobile-cta{
 box-shadow:0 10px 30px rgba(30,25,17,.12)!important;
 background:rgba(255,255,255,.94)!important;border:1px solid rgba(202,160,70,.5)!important
}
@media(max-width:760px){
 .v350-restaurant-detail main.demo{padding:12px 12px 86px!important}
 .v350-restaurant-detail .demo-card,
 .v350-restaurant-detail #menu{padding:20px 18px!important;border-radius:22px!important;margin-bottom:14px!important}
 .v350-restaurant-detail .demo-card:before,
 .v350-restaurant-detail #menu:before{left:18px;width:48px!important}
 .v350-restaurant-detail .demo-card h2,
 .v350-restaurant-detail #menu h2{font-size:27px!important;margin-bottom:14px!important}
 .v350-restaurant-detail .contact-logo{width:60px!important;height:60px!important;border-radius:17px!important}
 .v350-restaurant-detail .contact-row{
   grid-template-columns:38px minmax(0,1fr)!important;gap:11px!important;
   min-height:52px!important;padding:7px 0!important;font-size:14px!important
 }
 .v350-restaurant-detail .contact-row .ico{width:38px!important;height:38px!important}
 .v350-restaurant-detail .hours-row{font-size:14px!important;min-height:34px!important;padding:5px 0!important}
 .v350-restaurant-detail .v362-book form{grid-template-columns:1fr 1fr!important}
 .v350-restaurant-detail .v362-book label:nth-of-type(n+3){grid-column:1/-1!important}
 .v350-restaurant-detail .v362-book form button{
   width:100%!important;justify-self:stretch!important;border-radius:14px!important
 }
 .v350-restaurant-detail .mobile-cta{
   left:12px!important;right:12px!important;bottom:8px!important;padding:6px!important;
   border-radius:17px!important;grid-template-columns:1.3fr .8fr!important
 }
 .v350-restaurant-detail .mobile-cta a,
 .v350-restaurant-detail .mobile-cta button{
   min-height:44px!important;font-size:14px!important;border-radius:12px!important
 }
}
