.branch-booking-section{padding:60px 0;overflow:hidden;background:transparent}
.branch-booking-header{text-align:center;margin-bottom:28px}
.branch-booking-header h2{margin:0 0 10px;font-size:38px;font-weight:800}
.branch-booking-header p{margin:0;font-size:18px;color:#f0f0f0}

.branch-top-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}
.branch-field-card{background:linear-gradient(145deg,#2a2a2d,#1a1b1f);border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:20px;box-shadow:0 12px 24px rgba(0,0,0,.35)}
.branch-field-label{display:block;margin-bottom:10px;font-size:15px;font-weight:800;color:#ffffff}
.branch-select,.branch-input{width:100%;height:54px;border:2px solid rgba(65,7,48,.35)!important;border-radius:14px;background:#fff!important;color:#231525!important;font-size:15px;font-weight:700;padding:0 16px;outline:none;box-shadow:none!important;transition:border-color .25s ease,box-shadow .25s ease}
.branch-select:focus,.branch-input:focus{border-color:#a03a78!important;box-shadow:0 0 0 4px rgba(160,58,120,.3)!important}
.branch-select,.branch-input{direction:rtl;text-align:right}
.branch-select.is-placeholder,
.branch-input.is-placeholder,
.branch-select.is-placeholder option:first-child{
  color:#94979f!important;
}

.branch-selected-note{display:none;margin:0 auto 18px;max-width:900px;text-align:center;font-size:15px;font-weight:700;line-height:1.9;color:#fff}
.branch-selected-note.is-visible{display:block}
.branch-map-card{display:none;max-width:950px;margin:0 auto 18px;border:2px solid rgba(255,255,255,.24);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#2a2a2d,#1a1b1f);box-shadow:0 18px 40px rgba(0,0,0,.35)}
.branch-map-card.is-visible{display:block}
.branch-map-card-header{display:flex;align-items:center;justify-content:center;min-height:68px;padding:0 18px;background:transparent;border-bottom:1px solid rgba(255,255,255,.12)}
.branch-map-card-title{font-size:20px;font-weight:800;color:#ffffff}
.branch-map-frame-wrap{height:420px;background:#f8f4f8}
.branch-map-frame{width:100%;height:100%;border:0;display:block;background:#f8f4f8}
.branch-map-open-btn{width:100%;min-height:58px;border:1px solid rgba(255,255,255,.16)!important;border-top:1px solid rgba(255,255,255,.12)!important;background:#242428!important;color:#ffffff!important;font-size:16px;font-weight:800;cursor:pointer;transition:.25s ease}
.branch-map-open-btn:hover{background:linear-gradient(145deg,#646569,#55565a)!important;color:#fff!important}
.branch-price-note{display:none;max-width:950px;margin:0 auto;text-align:center;font-size:14px;font-weight:700;line-height:1.9;color:#fff}
.branch-price-note.is-visible{display:block}

.branch-map-modal{position:fixed;inset:0;display:none;z-index:9999}
.branch-map-modal.is-open{display:block}
.branch-map-modal-overlay{position:absolute;inset:0;background:rgba(17,17,17,.6)}
.branch-map-modal-dialog{position:relative;width:min(92vw,980px);margin:38px auto;border:2px solid rgba(255,255,255,.24);border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#2a2a2d,#1a1b1f);box-shadow:0 24px 60px rgba(17,17,17,.45)}
.branch-map-modal-header{position:relative;display:flex;align-items:center;justify-content:center;min-height:64px;padding:0 60px;border-bottom:1px solid rgba(255,255,255,.12);background:transparent}
.branch-map-modal-title{font-size:20px;font-weight:800;color:#ffffff}
.branch-map-modal-close{position:absolute;top:50%;left:16px;transform:translateY(-50%);width:40px;height:40px;border:1px solid rgba(255,255,255,.5)!important;border-radius:50%;background:#242428!important;color:#ffffff!important;font-size:26px;line-height:1;cursor:pointer}
.branch-map-modal-close:hover{background:#111111!important;color:#fff!important}
.branch-map-modal-body{height:min(75vh,620px);background:#f8f4f8}
.branch-map-modal-frame{width:100%;height:100%;border:0;display:block}

@media(max-width:991px){
  .branch-booking-header h2{font-size:32px}
  .branch-booking-header p{font-size:16px}
  .branch-top-grid{grid-template-columns:1fr 1fr}
  .branch-field-card:first-child{grid-column:1/-1}
  .branch-map-frame-wrap{height:340px}
}
@media(max-width:767px){
  .branch-booking-section{padding:45px 0}
  .branch-booking-header{margin-bottom:22px}
  .branch-booking-header h2{font-size:28px}
  .branch-booking-header p{font-size:15px}
  .branch-top-grid{grid-template-columns:1fr;gap:12px}
  .branch-field-card{padding:16px;border-radius:18px}
  .branch-selected-note{font-size:14px;line-height:1.8;margin-bottom:14px}
  .branch-map-card{border-radius:18px;margin-bottom:14px}
  .branch-map-card-header{min-height:58px}
  .branch-map-card-title{font-size:18px}
  .branch-map-frame-wrap{height:260px}
  .branch-map-open-btn{min-height:52px;font-size:15px}
  .branch-price-note{font-size:13px;line-height:1.8}
  .branch-map-modal-dialog{width:calc(100vw - 20px);margin:18px auto;border-radius:18px}
  .branch-map-modal-header{min-height:56px}
  .branch-map-modal-title{font-size:18px}
  .branch-map-modal-body{height:60vh}
}
