.reservation-section{position:relative;overflow:hidden;background:#17120f;color:#f4eee5;padding:clamp(100px,11vw,170px) 0 clamp(80px,9vw,125px)}
.reservation-container{width:min(1280px,calc(100% - 80px));margin:0 auto}
.reservation-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:clamp(65px,8vw,105px)}
.reservation-label{display:flex;align-items:center;gap:14px;color:#c58b57;font-size:10px;font-weight:700;letter-spacing:.21em;line-height:1;text-transform:uppercase}
.reservation-line{width:34px;height:1px;background:#c58b57}
.reservation-number{color:#82776d;font-size:9px;font-weight:700;letter-spacing:.18em}
.reservation-main{display:grid;grid-template-columns:1fr .72fr;gap:clamp(70px,10vw,155px);align-items:start}
.reservation-copy{max-width:720px}
.reservation-title{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,6.3vw,88px);font-weight:400;line-height:.93;letter-spacing:-.05em}
.reservation-title em{color:#c58b57;font-weight:400}
.reservation-text{max-width:500px;margin:34px 0 0;color:#afa49a;font-size:15px;line-height:1.9}
.reservation-button{display:inline-flex;align-items:center;gap:15px;margin-top:38px;padding:16px 0;border-bottom:1px solid rgba(244,238,229,.45);color:#f4eee5;text-decoration:none;font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;transition:gap .3s ease,color .3s ease,border-color .3s ease}
.reservation-button span{font-size:18px;line-height:1;transition:transform .3s ease}
.reservation-button:hover{gap:21px;color:#c58b57;border-color:#c58b57}
.reservation-button:hover span{transform:translate(2px,-2px)}
.reservation-details{display:grid;grid-template-columns:1fr;gap:55px;padding-top:10px}
.reservation-detail{padding-top:25px;border-top:1px solid rgba(244,238,229,.16)}
.reservation-detail-label{display:block;margin-bottom:22px;color:#c58b57;font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.reservation-detail h3{margin:0;color:#f1e9df;font-family:Georgia,"Times New Roman",serif;font-size:27px;font-weight:400}
.reservation-detail p{margin:14px 0 0;color:#9f948a;font-size:12px;line-height:1.8}
.reservation-detail-link{display:inline-flex;align-items:center;gap:10px;margin-top:22px;color:#ddd3c8;text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.reservation-detail-link span{color:#c58b57;font-size:15px;transition:transform .3s ease}
.reservation-detail-link:hover span{transform:translate(2px,-2px)}
.reservation-hours{display:flex;flex-direction:column;gap:15px}
.reservation-hours div{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:15px;border-bottom:1px solid rgba(244,238,229,.08)}
.reservation-hours div:last-child{padding-bottom:0;border-bottom:0}
.reservation-hours span{color:#8f8479;font-size:10px;letter-spacing:.04em}
.reservation-hours strong{color:#ddd3c8;font-size:10px;font-weight:500;letter-spacing:.05em;white-space:nowrap}
.reservation-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:clamp(90px,11vw,145px);padding-top:28px;border-top:1px solid rgba(244,238,229,.15)}
.reservation-note{display:flex;align-items:center;gap:11px;color:#8d8278;font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.reservation-note-dot{width:6px;height:6px;border-radius:50%;background:#c58b57}
.reservation-contact{display:flex;align-items:center;gap:14px;color:#81766c;font-size:9px;letter-spacing:.08em}
.reservation-contact a{color:#d7cdc2;text-decoration:none;transition:color .25s ease}
.reservation-contact a:hover{color:#c58b57}
@media(max-width:1050px){
.reservation-container{width:min(100% - 60px,1280px)}
.reservation-main{gap:65px}
.reservation-title{font-size:clamp(48px,6.5vw,70px)}
.reservation-hours div{display:block}
.reservation-hours strong{display:block;margin-top:6px}
}
@media(max-width:780px){
.reservation-section{padding:85px 0 75px}
.reservation-container{width:calc(100% - 40px)}
.reservation-top{margin-bottom:55px}
.reservation-label{font-size:9px;letter-spacing:.17em}
.reservation-main{grid-template-columns:1fr;gap:60px}
.reservation-title{font-size:clamp(45px,11vw,65px)}
.reservation-text{font-size:14px;line-height:1.85;margin-top:26px}
.reservation-button{margin-top:30px}
.reservation-details{gap:38px;padding-top:0}
.reservation-bottom{display:block;margin-top:75px;padding-top:25px}
.reservation-contact{margin-top:18px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
}
@media(max-width:480px){
.reservation-section{padding:70px 0 65px}
.reservation-container{width:calc(100% - 30px)}
.reservation-top{margin-bottom:45px}
.reservation-label{font-size:8px;letter-spacing:.14em}
.reservation-line{width:25px}
.reservation-number{font-size:8px}
.reservation-title{font-size:39px}
.reservation-text{font-size:13px}
.reservation-detail{padding-top:21px}
.reservation-detail-label{margin-bottom:18px;font-size:8px}
.reservation-detail h3{font-size:24px}
.reservation-detail p{font-size:11px}
.reservation-hours{gap:13px}
.reservation-hours div{padding-bottom:13px}
.reservation-hours span,.reservation-hours strong{font-size:9px}
.reservation-bottom{margin-top:60px}
.reservation-note{font-size:8px;letter-spacing:.1em}
.reservation-contact{font-size:8px}
}
@media(prefers-reduced-motion:reduce){
.reservation-button,.reservation-button span,.reservation-detail-link span,.reservation-contact a{transition:none}
}