/* Branch walk-in and home collection handoff flow. */
html:not(.nabilo-light) body:has(.nabilo-booking-page){background:#07172d!important}
html:not(.nabilo-light) .nabilo-booking-page{--booking-bg:#07172d;--booking-panel:#102847;--booking-text:#f0f6ff;--booking-muted:#b6cce5;--booking-border:#3c5b7d;background:#07172d!important}
html:not(.nabilo-light) .nabilo-booking-page .nabilo-page-top{background:#07172d!important}
html:not(.nabilo-light) .nabilo-booking-page .nabilo-page-nav a{color:#edf5ff!important}
.nabilo-booking-page{max-width:1180px;padding-bottom:85px}
.nabilo-booking-page [hidden],.nabilo-branch-picker[hidden],.nabilo-branch-picker-page [hidden]{display:none!important}
.nabilo-booking-hero{min-height:345px}
.nabilo-booking-hero-copy{padding-top:68px}
.nabilo-booking-hero-copy p{line-height:1.3;max-width:430px}
.nabilo-booking-hero>img{height:100%;bottom:-13px;z-index:2}
.nabilo-booking-stepper{margin:30px auto 38px}
.nabilo-booking-choices{display:grid;grid-template-columns:1fr;gap:16px}
.nabilo-booking-choice{min-height:170px;width:100%;padding:17px 72px 17px 20px;display:grid;grid-template-columns:150px minmax(0,1fr);align-items:center;gap:26px;text-align:left;border-radius:22px;transition:border-color .22s,background .22s,transform .22s,box-shadow .22s}
.nabilo-booking-choice:hover{transform:translateY(-2px);border-color:#2b8eff}
.nabilo-booking-choice img{width:150px;height:130px;object-fit:contain}
.nabilo-booking-choice .nabilo-choice-copy{display:flex;flex-direction:column;gap:8px}
.nabilo-booking-choice strong{font-size:25px}
.nabilo-booking-choice small{max-width:none;font-size:16px;line-height:1.45;margin:0}
.nabilo-radio{left:auto;right:25px;top:calc(50% - 15px)}
.nabilo-ar .nabilo-booking-choice{direction:rtl;text-align:right;padding:17px 20px 17px 72px}
.nabilo-ar .nabilo-radio{right:auto;left:25px}
.nabilo-branch-choice-panel{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:16px;margin-top:25px;padding:18px 20px;border:1px solid var(--booking-border);border-radius:18px;background:var(--booking-panel)}
.nabilo-branch-choice-icon,.nabilo-detail-icon{display:grid;place-items:center;flex:none;width:51px;height:51px;border-radius:15px;background:#1075d722;color:#258dff;font-size:24px}
.nabilo-branch-choice-panel strong{display:block;color:var(--booking-text);font-size:19px}
.nabilo-branch-choice-panel p{color:var(--booking-muted);font-size:14px;margin:4px 0 0}
.nabilo-branch-choice-panel button{border:1px solid #2386ed;border-radius:12px;padding:12px 17px;color:#fff;background:#075cb9;cursor:pointer;font-weight:700}
.nabilo-branch-choice-panel button:hover{background:#0b77e8}
.nabilo-booking-inline-note{font-size:14px;line-height:1.5;color:var(--booking-muted);margin:14px 3px 0}
.nabilo-ar .nabilo-branch-choice-panel{direction:rtl;text-align:right}
.nabilo-booking-detail-list{display:flex;flex-direction:column;gap:14px}
.nabilo-detail-option{display:grid;grid-template-columns:55px minmax(180px,1fr) minmax(190px,35%);align-items:center;gap:18px;padding:20px;border:1px solid var(--booking-border);border-radius:19px;background:var(--booking-panel);color:var(--booking-text)}
.nabilo-detail-copy{display:flex;flex-direction:column;gap:5px}
.nabilo-detail-copy strong{font-size:19px}
.nabilo-detail-copy small{font-size:13px;color:var(--booking-muted)}
.nabilo-detail-option select,.nabilo-detail-option input,.nabilo-detail-option textarea{width:100%;min-width:0;border:1px solid var(--booking-border);border-radius:10px;padding:12px 14px;background:var(--booking-bg);color:var(--booking-text);font-size:15px}
.nabilo-detail-option select option{background:#fff;color:#082752}
html:not(.nabilo-light) .nabilo-detail-option select option{background:#102847;color:#fff}
.nabilo-detail-option textarea{min-height:76px;resize:vertical}
.nabilo-detail-option input::placeholder,.nabilo-detail-option textarea::placeholder{color:var(--booking-muted)}
.nabilo-ar .nabilo-detail-option{direction:rtl;text-align:right}
.nabilo-visit-info{display:flex;align-items:flex-start;gap:16px;margin-top:22px;padding:21px;border:1px solid #258dff77;border-radius:18px;background:#147de116;color:var(--booking-text)}
.nabilo-visit-info>i{font-size:26px;color:#258dff}
.nabilo-visit-info strong{font-size:18px}
.nabilo-visit-info p{margin:7px 0 0;font-size:14px;line-height:1.55;color:var(--booking-muted)}
.nabilo-ar .nabilo-visit-info{direction:rtl;text-align:right}
#nabilo-booking-review{padding:6px 18px;border-radius:18px}
#nabilo-booking-review>div{align-items:center;padding:16px 5px;color:var(--booking-text)}
#nabilo-booking-review>div span{text-align:end;color:var(--booking-muted)}
.nabilo-handoff-actions,.nabilo-branch-final{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}
.nabilo-handoff-actions>* ,.nabilo-branch-final>*{display:flex;align-items:center;justify-content:center;gap:12px;min-height:68px;padding:12px 18px;border:1px solid #2689ed;border-radius:14px;background:#0c65c6;color:#fff;text-decoration:none;font-size:17px;font-weight:700;cursor:pointer;text-align:center}
.nabilo-handoff-actions>a{border-color:#06a660;background:#0c8955}
.nabilo-handoff-actions i,.nabilo-branch-final i{font-size:25px}
.nabilo-branch-final>*{background:var(--booking-panel);color:var(--booking-text);border-color:var(--booking-border)}
.nabilo-booking-navigation button#nabilo-booking-next[hidden]{display:none!important}
.nabilo-booking-navigation button#nabilo-booking-back{min-width:145px}
.nabilo-booking-bottom-note{margin-top:28px}
.nabilo-picker-open{overflow:hidden}
.nabilo-branch-picker{position:fixed;inset:0;z-index:1400;display:grid;place-items:center;padding:20px;background:#031124bd;backdrop-filter:blur(7px)}
.nabilo-branch-picker-dialog{display:flex;flex-direction:column;width:min(1060px,96vw);height:min(760px,90dvh);overflow:hidden;border:1px solid #9cb6d3;border-radius:22px;background:#f4f8fd;box-shadow:0 30px 100px #0008}
.nabilo-branch-picker-dialog>header{flex:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 22px;background:#eaf3fd;color:#092f64}
.nabilo-branch-picker-dialog>header strong{display:block;font-size:21px}.nabilo-branch-picker-dialog>header small{display:block;font-size:13px;color:#55749a}
.nabilo-branch-picker-dialog>header button{width:40px;height:40px;border:0;border-radius:50%;background:#d9e9f8;color:#0c315f;font-size:30px;cursor:pointer}
.nabilo-branch-picker-dialog iframe{flex:1;width:100%;min-height:0;border:0;background:#eef5fb}
.nabilo-ar .nabilo-branch-picker-dialog>header{direction:rtl;text-align:right}
html:not(.nabilo-light) .nabilo-branch-picker-dialog{background:#091a31;border-color:#436183}
html:not(.nabilo-light) .nabilo-branch-picker-dialog>header{background:#102847;color:#fff}
html:not(.nabilo-light) .nabilo-branch-picker-dialog>header small{color:#bdd0e6}
html:not(.nabilo-light) .nabilo-branch-picker-dialog>header button{background:#274360;color:#fff}
.nabilo-branch-picker-page body{background:#f3f8ff!important}
.nabilo-branch-picker-page .nabilo-branches-page{height:100dvh;overflow:hidden;padding:12px!important;background:#f3f8ff!important}
.nabilo-branch-picker-page .nabilo-page-top,.nabilo-branch-picker-page .nabilo-branch-intro,.nabilo-branch-picker-page .nabilo-main-footer,.nabilo-branch-picker-page .nabilo-peeking-mascot,.nabilo-branch-picker-page .nabilo-to-top,.nabilo-branch-picker-page .nabilo-branch-note,.nabilo-branch-picker-page #nabilo-use-location{display:none!important}
.nabilo-branch-picker-page .nabilo-branch-toolbar{margin:0 0 10px!important;max-width:none!important}
.nabilo-branch-picker-page .nabilo-branch-layout{display:grid!important;grid-template-columns:minmax(260px,34%) 1fr!important;gap:10px!important;height:calc(100dvh - 95px);margin:0!important}
.nabilo-branch-picker-page .nabilo-branch-sidebar{order:0!important;min-height:0;max-height:none!important;overflow-y:auto;padding:0 8px 5px 0;background:transparent!important}
.nabilo-branch-picker-page .nabilo-map{order:1!important;height:100%!important;min-height:0!important;margin:0!important;border-radius:13px!important}
.nabilo-branch-picker-page .nabilo-featured-branch{padding:14px!important}
.nabilo-branch-picker-page .nabilo-branch-card{padding:12px!important;margin-bottom:7px!important}
.nabilo-branch-picker-page .nabilo-map-places{font-size:11px}
html:not(.nabilo-light).nabilo-branch-picker-page body,html:not(.nabilo-light).nabilo-branch-picker-page .nabilo-branches-page{background:#07172d!important}
@media(max-width:700px){
  .nabilo-booking-hero{min-height:280px}.nabilo-booking-hero-copy{padding-top:38px}.nabilo-booking-hero>img{height:80%}
  .nabilo-booking-choice{min-height:132px;grid-template-columns:100px 1fr;gap:12px;padding:13px 45px 13px 10px}.nabilo-booking-choice img{width:100px;height:105px}.nabilo-booking-choice strong{font-size:18px}.nabilo-booking-choice small{font-size:12px}.nabilo-radio{width:22px;height:22px;right:12px;top:calc(50% - 11px)}
  .nabilo-ar .nabilo-booking-choice{padding:13px 10px 13px 45px}.nabilo-ar .nabilo-radio{left:12px}
  .nabilo-branch-choice-panel{grid-template-columns:42px 1fr;gap:10px;padding:14px}.nabilo-branch-choice-icon{width:42px;height:42px}.nabilo-branch-choice-panel button{grid-column:1/-1;width:100%}
  .nabilo-detail-option{grid-template-columns:42px 1fr;gap:10px;padding:14px}.nabilo-detail-icon{width:42px;height:42px}.nabilo-detail-copy strong{font-size:16px}.nabilo-detail-option select,.nabilo-detail-option input,.nabilo-detail-option textarea{grid-column:1/-1}
  .nabilo-handoff-actions,.nabilo-branch-final{grid-template-columns:1fr}
  .nabilo-branch-picker{padding:8px}.nabilo-branch-picker-dialog{width:100%;height:min(770px,94dvh);border-radius:16px}
  .nabilo-branch-picker-page .nabilo-branch-layout{grid-template-columns:1fr!important;grid-template-rows:54% 46%;height:calc(100dvh - 86px)}
  .nabilo-branch-picker-page .nabilo-map{order:0!important}.nabilo-branch-picker-page .nabilo-branch-sidebar{order:1!important;margin:0!important;padding:8px!important;border-radius:0!important}
}
/* The full branch page uses an overlapping mobile sheet; the picker needs its own fixed grid. */
html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-layout,
html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-layout.nabilo-expanded{display:grid!important;height:calc(100dvh - 24px)!important;min-height:0!important;max-height:calc(100dvh - 24px)!important;grid-template-columns:minmax(250px,34%) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;grid-template-areas:'sidebar map'!important;gap:10px!important;align-items:stretch!important;overflow:hidden}
html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-sidebar,
html.nabilo-branch-picker-page .nabilo-expanded .nabilo-branch-sidebar{grid-area:sidebar;display:flex!important;flex-direction:column!important;order:0!important;height:100%!important;min-height:0!important;max-height:100%!important;overflow:hidden!important;padding:0!important;margin:0!important}
html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-map,
html.nabilo-branch-picker-page .nabilo-expanded .nabilo-map{grid-area:map;order:0!important;height:100%!important;min-height:0!important;margin:0!important;border-radius:13px!important}
html.nabilo-branch-picker-page .nabilo-branch-sheet,
html.nabilo-branch-picker-page .nabilo-expanded .nabilo-branch-sheet{position:relative;z-index:auto;display:flex;flex:1;min-height:0;overflow:hidden!important;margin:0!important;padding:0 2px!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
html.nabilo-branch-picker-page .nabilo-branch-list,
html.nabilo-branch-picker-page .nabilo-expanded .nabilo-branch-list{flex:1;min-height:0;overflow-y:auto!important}
html.nabilo-branch-picker-page .nabilo-branch-sheet-handle{display:none!important}
@media(max-width:700px){
  html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-layout,
  html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-layout.nabilo-expanded{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:minmax(0,53%) minmax(0,47%)!important;grid-template-areas:'map' 'sidebar'!important}
  html.nabilo-branch-picker-page .nabilo-branches-page .nabilo-branch-sidebar{padding:8px!important}
  html.nabilo-branch-picker-page .nabilo-branch-toolbar{padding:0 0 8px!important}
  html.nabilo-branch-picker-page .nabilo-branch-search{width:100%!important}
  html.nabilo-branch-picker-page .nabilo-branch-city{display:block!important}
  html.nabilo-branch-picker-page .nabilo-branch-sheet{padding:0!important}
  html.nabilo-branch-picker-page .nabilo-map-controls{bottom:12px!important}
}
