/* Omega Booking - public page. Everything is scoped under .obk so the theme is untouched. */
@font-face{font-family:"TalentFS OBK";src:url(fonts/TalentFS-Light.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"TalentFS OBK";src:url(fonts/TalentFS-Regular-1.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"TalentFS OBK";src:url(fonts/TalentFS-Bold-1.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"TalentFS OBK";src:url(fonts/TalentFS-Black-1.woff2) format("woff2");font-weight:900;font-display:swap}

body.obk-fullscreen{margin:0;background:#F6F6FB;color-scheme:light}
.obk{
  --night:#060627;--brand:#503EF2;--brand-2:#3F32DA;--mint:#3DE3B6;
  --bg:#F6F6FB;--surface:#fff;--text:#0b0b1f;--muted:#6b6b85;--line:#E4E4EF;--soft:#EEECFE;
  --ok:#14a37f;--danger:#c0262d;
  --r-xl:28px;--r-lg:18px;--r-pill:999px;
  color-scheme:light;
  font-family:"TalentFS OBK","TalentFS",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-variant-ligatures:none;font-feature-settings:"liga" 0,"dlig" 0;
  color:var(--text);background:var(--bg);direction:rtl;text-align:right;line-height:1.5;
}
.obk *,.obk *::before,.obk *::after{box-sizing:border-box}
.obk h1,.obk h2,.obk h3,.obk p{margin:0}
.obk button{font:inherit;cursor:pointer}
.obk input,.obk textarea,.obk select{font:inherit;color:inherit}
.obk [dir=ltr]{direction:ltr;unicode-bidi:isolate}
.obk .obk-loading{display:flex;gap:10px;align-items:center;justify-content:center;min-height:60vh;color:var(--muted)}
.obk-spin{width:18px;height:18px;border-radius:50%;border:2px solid var(--line);border-top-color:var(--brand);animation:obk-spin .8s linear infinite}
@keyframes obk-spin{to{transform:rotate(360deg)}}

.obk-wrap{display:grid;grid-template-columns:minmax(380px,40%) 1fr;min-height:100vh;min-height:100dvh}

/* dark panel */
.obk-panel{position:relative;overflow:hidden;background:var(--night);color:#fff;padding:52px 52px 0;display:flex;flex-direction:column;min-height:100%}
.obk-panel::before{content:"";position:absolute;inset-inline:-20%;bottom:-10%;height:85%;pointer-events:none;
  background:radial-gradient(closest-side at 50% 55%,rgba(80,62,242,.95),rgba(63,50,218,.55) 45%,rgba(6,6,39,0) 100%);filter:blur(10px)}
.obk-panel::after{content:"";position:absolute;width:420px;height:420px;inset-inline-start:-160px;top:-140px;pointer-events:none;
  background:radial-gradient(closest-side,rgba(61,227,182,.18),transparent)}
.obk-brand{position:relative;z-index:2;font-weight:700;letter-spacing:.02em;font-size:15px;color:#fff;text-decoration:none;opacity:.92;align-self:flex-start}
.obk-brand b{color:var(--mint)}
.obk-intro{position:relative;z-index:2;margin-top:36px}
.obk-intro small{display:block;font-size:18px;font-weight:300;opacity:.82}
.obk-intro h1{font-size:clamp(26px,2.6vw,40px);line-height:1.15;font-weight:900;margin-top:6px;color:#fff}
.obk-topic{display:inline-flex;align-items:center;gap:10px;margin-top:20px;padding:10px 18px;border-radius:var(--r-pill);
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);font-size:17px;font-weight:700}
.obk-topic i{width:8px;height:8px;border-radius:50%;background:var(--mint);box-shadow:0 0 12px var(--mint);flex:none}
.obk-chips{display:flex;gap:10px;margin-top:14px;flex-wrap:wrap}
.obk-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:var(--r-pill);background:rgba(255,255,255,.07);font-size:15px}
.obk-chip svg{width:16px;height:16px;flex:none}
.obk-desc{margin-top:16px;font-size:16px;font-weight:300;opacity:.85;max-width:44ch;white-space:pre-line}
.obk-picked{margin-top:16px;display:none;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--r-lg);background:rgba(61,227,182,.12);border:1px solid rgba(61,227,182,.35);font-weight:700}
.obk-picked.on{display:flex}
.obk-picked svg{width:20px;height:20px;flex:none;color:var(--mint)}
.obk-portrait{position:relative;z-index:1;margin-top:auto;padding-top:24px;display:flex;justify-content:center}
.obk-portrait img{display:block;max-height:min(540px,58vh);width:auto;max-width:86%;height:auto}

/* light side */
.obk-main{padding:52px clamp(20px,5vw,80px);display:flex;flex-direction:column;align-items:center}
.obk-stepper{display:flex;gap:10px;align-items:center;font-size:15px;color:var(--muted);margin-bottom:32px}
.obk-step{display:flex;align-items:center;gap:8px}
.obk-step b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--line);color:var(--muted);font-weight:700;font-size:14px}
.obk-step.on b{background:var(--brand);color:#fff}
.obk-step.done b{background:var(--mint);color:var(--night)}
.obk-step.on{color:var(--text);font-weight:700}
.obk-bar{width:36px;height:2px;background:var(--line)}
.obk-card{width:100%;max-width:780px;background:var(--surface);border-radius:var(--r-xl);box-shadow:0 20px 60px -30px rgba(6,6,39,.35);padding:32px}
.obk-pick{display:grid;grid-template-columns:1.25fr 1fr;gap:32px}
.obk-cal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.obk-cal-head h2{font-size:22px;font-weight:700}
.obk-nav{display:flex;gap:6px}
.obk-nav button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;display:grid;place-items:center;color:var(--text)}
.obk-nav button:disabled{opacity:.35;cursor:default}
.obk-nav svg{width:16px;height:16px}
.obk-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center}
.obk-dow{font-size:13px;color:var(--muted);padding-bottom:6px}
.obk-d{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;font-size:16px;color:#b7b7c9;border:0;background:none;padding:0;min-height:40px}
.obk-d.av{color:var(--brand-2);background:var(--soft);font-weight:700}
.obk-d.av:hover{background:#dcd8fd}
.obk-d.sel{background:var(--brand);color:#fff}
.obk-d.today{box-shadow:inset 0 0 0 2px var(--mint)}
.obk-d:disabled{cursor:default}
.obk-slots h3{font-size:17px;font-weight:700;margin-bottom:12px}
.obk-slots h3 span{font-weight:300;color:var(--muted);font-size:14px;display:block;margin-top:2px}
.obk-slot-list{display:grid;gap:10px;max-height:380px;overflow:auto;padding-inline-end:4px;scrollbar-width:thin;scrollbar-color:#DAD6FC transparent}
.obk-slot{direction:ltr;padding:12px;border-radius:var(--r-pill);border:1.5px solid #DAD6FC;color:var(--brand-2);font-weight:700;text-align:center;font-size:16px;background:#fff;min-height:46px}
.obk-slot:hover{border-color:var(--brand)}
.obk-slot.on{background:var(--night);border-color:var(--night);color:#fff}
.obk-empty{color:var(--muted);font-size:15px;padding:12px 0}
.obk-cta{margin-top:18px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 22px 8px 8px;border-radius:var(--r-pill);border:0;
  background:linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);color:#fff;font-weight:700;font-size:17px;min-height:58px;text-decoration:none}
.obk-cta i{width:42px;height:42px;border-radius:50%;background:#fff;display:grid;place-items:center;order:2;flex:none}
.obk-cta i svg{width:18px;height:18px;color:var(--brand-2)}
.obk-cta:disabled{opacity:.45;cursor:default}
.obk-cta.ghost{background:#fff;color:var(--night);border:1.5px solid var(--line)}
.obk-cta.ghost i{background:var(--soft)}
.obk-tz{margin-top:20px;font-size:14px;color:var(--muted)}

/* form */
.obk-form{display:grid;gap:16px}
.obk-form h2{font-size:22px;font-weight:700}
.obk-field label{display:block;font-weight:700;font-size:15px;margin-bottom:6px}
.obk-field label em{font-style:normal;color:var(--danger)}
.obk-field input,.obk-field textarea{width:100%;border:1.5px solid var(--line);border-radius:14px;padding:13px 14px;font-size:16px;background:#fff;outline:none}
.obk-field textarea{min-height:96px;resize:vertical}
.obk-field input:focus,.obk-field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(80,62,242,.15)}
.obk-field .obk-err{color:var(--danger);font-size:14px;margin-top:4px;display:none}
.obk-field.bad .obk-err{display:block}
.obk-field.bad input,.obk-field.bad textarea{border-color:var(--danger)}
.obk-row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.obk-pills{display:flex;gap:8px;flex-wrap:wrap}
.obk-pills button{padding:10px 16px;border-radius:var(--r-pill);border:1.5px solid var(--line);background:#fff;font-weight:700}
.obk-pills button.on{border-color:var(--brand);background:var(--soft);color:var(--brand-2)}
.obk-remind{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:var(--r-lg);background:var(--bg)}
.obk-remind strong{display:block;font-size:15px}
.obk-remind small{display:block;color:var(--muted);font-size:14px}
.obk-switch{position:relative;width:50px;height:30px;flex:none}
.obk-switch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer;z-index:1}
.obk-switch span{position:absolute;inset:0;border-radius:99px;background:#cfcfe0;transition:background .2s}
.obk-switch span::after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:24px;height:24px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.2);transition:transform .2s}
.obk-switch input:checked+span{background:var(--brand)}
.obk-switch input:checked+span::after{transform:translateX(-20px)}
.obk-switch input:focus-visible+span{outline:2px solid var(--brand);outline-offset:2px}
.obk-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.obk-alert{padding:12px 16px;border-radius:14px;background:#fdecee;color:var(--danger);font-weight:700;display:none}
.obk-alert.on{display:block}
.obk-back{background:none;border:0;color:var(--muted);font-weight:700;display:inline-flex;gap:6px;align-items:center;padding:6px 0;justify-self:start}
.obk-back svg{width:16px;height:16px}
.obk-legal{font-size:13px;color:var(--muted)}
.obk-legal a{color:var(--brand-2)}

/* thanks / manage */
.obk-done{text-align:center;display:grid;gap:14px;justify-items:center}
.obk-check{width:84px;height:84px;border-radius:50%;background:var(--mint);display:grid;place-items:center;animation:obk-pop .5s cubic-bezier(.2,1.4,.4,1) both}
.obk-check svg{width:42px;height:42px;color:var(--night);stroke-dasharray:40;stroke-dashoffset:40;animation:obk-draw .45s .25s ease-out forwards}
@keyframes obk-pop{from{transform:scale(.4);opacity:0}}
@keyframes obk-draw{to{stroke-dashoffset:0}}
.obk-done h2{font-size:28px;font-weight:900}
.obk-done p{color:var(--muted);white-space:pre-line;max-width:46ch}
.obk-summary{width:100%;text-align:right;background:var(--bg);border-radius:var(--r-lg);padding:6px 18px}
.obk-summary div{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.obk-summary div:last-child{border-bottom:0}
.obk-summary span{color:var(--muted)}
.obk-summary b{text-align:left}
.obk-actions{display:grid;gap:10px;width:100%;max-width:420px}
.obk-links{display:grid;gap:10px;width:100%;text-align:right}
.obk-links a{display:block;padding:14px 16px;border-radius:var(--r-lg);border:1.5px solid var(--line);text-decoration:none;color:var(--text)}
.obk-links a b{display:block;color:var(--brand-2)}
.obk-links a small{color:var(--muted)}
.obk-small-link{color:var(--brand-2);font-weight:700;text-decoration:none}
.obk-cancelled{color:var(--danger);font-weight:700}

@media (max-width:900px){
  .obk-wrap{grid-template-columns:1fr}
  .obk-panel{padding:24px 20px 0;border-radius:0 0 var(--r-xl) var(--r-xl);min-height:0}
  .obk-intro{margin-top:16px}.obk-intro h1{font-size:28px}
  .obk-desc{display:none}
  .obk-portrait{padding-top:12px}
  .obk-portrait img{max-height:220px}
  .obk-main{padding:24px 16px 40px}
  .obk-stepper{margin-bottom:20px}
  .obk-card{padding:20px}
  .obk-pick{grid-template-columns:1fr;gap:24px}
  .obk-slot-list{max-height:none;grid-template-columns:1fr 1fr}
  .obk-row2{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){.obk *{animation:none!important;transition:none!important}.obk-check svg{stroke-dashoffset:0}}

/* ---- Theme isolation: the site's global button/heading styles (Elementor kit) must not leak in ---- */
.obk-brand .obk-logo-img{display:block;height:44px;width:auto;max-width:200px}
#obk-app h1,#obk-app h2,#obk-app h3{font-family:inherit;text-transform:none;letter-spacing:normal;line-height:1.2}
#obk-app .obk-main h2,#obk-app .obk-main h3{color:var(--text)}
#obk-app .obk-panel h1{color:#fff}
#obk-app button,#obk-app a.obk-cta{text-transform:none;letter-spacing:normal;box-shadow:none;text-shadow:none;font-family:inherit;line-height:1.3;outline-offset:2px}
#obk-app button:focus-visible,#obk-app a:focus-visible{outline:2px solid var(--brand)}
#obk-app .obk-slot,#obk-app .obk-slot:hover,#obk-app .obk-slot:focus{background:#fff;background-image:none;color:var(--brand-2);border:1.5px solid #DAD6FC}
#obk-app .obk-slot:hover{border-color:var(--brand)}
#obk-app .obk-slot.on,#obk-app .obk-slot.on:hover,#obk-app .obk-slot.on:focus{background:var(--night);border-color:var(--night);color:#fff}
#obk-app .obk-d,#obk-app .obk-d:hover,#obk-app .obk-d:focus{background:none;background-image:none;color:#b7b7c9;border:0;padding:0}
#obk-app .obk-d.av,#obk-app .obk-d.av:focus{background:var(--soft);color:var(--brand-2)}
#obk-app .obk-d.av:hover{background:#dcd8fd;color:var(--brand-2)}
#obk-app .obk-d.sel,#obk-app .obk-d.sel:hover,#obk-app .obk-d.sel:focus{background:var(--brand);color:#fff}
#obk-app .obk-nav button,#obk-app .obk-nav button:hover,#obk-app .obk-nav button:focus{background:#fff;background-image:none;color:var(--text);border:1px solid var(--line);padding:0}
#obk-app .obk-nav button:hover:not(:disabled){border-color:var(--brand)}
#obk-app .obk-cta,#obk-app .obk-cta:hover,#obk-app .obk-cta:focus{background:linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);color:#fff;border:0}
#obk-app .obk-cta:hover:not(:disabled){filter:brightness(1.08)}
#obk-app .obk-cta.ghost,#obk-app .obk-cta.ghost:hover,#obk-app .obk-cta.ghost:focus{background:#fff;color:var(--night);border:1.5px solid var(--line)}
#obk-app .obk-pills button,#obk-app .obk-pills button:hover,#obk-app .obk-pills button:focus{background:#fff;color:var(--text);border:1.5px solid var(--line)}
#obk-app .obk-pills button.on{background:var(--soft);color:var(--brand-2);border-color:var(--brand)}
#obk-app .obk-back,#obk-app .obk-back:hover,#obk-app .obk-back:focus{background:none;color:var(--muted);border:0;padding:6px 0}
#obk-app input,#obk-app textarea{box-shadow:none;font-family:inherit}
#obk-app .obk-d.today{box-shadow:inset 0 0 0 2px var(--mint)}

/* thanks/manage readability */
#obk-app .obk-summary div{justify-content:flex-start}
#obk-app .obk-summary span{min-width:64px}
#obk-app .obk-summary b{text-align:right}
#obk-app .obk-hint{color:var(--muted);font-size:14px;margin-top:-2px;text-align:center}
#obk-app .obk-or{font-size:16px;color:var(--muted);margin-top:10px}
#obk-app .obk-note{width:100%;max-width:780px;margin:-12px 0 16px;padding:12px 16px;border-radius:14px;background:var(--soft);color:var(--brand-2);font-weight:700;text-align:center}
#obk-app a.obk-cta span,#obk-app a.obk-cta:visited{color:inherit}

#obk-app .obk-next-steps{list-style:none;margin:4px 0 0;padding:0;display:grid;gap:10px;width:100%;text-align:right}
#obk-app .obk-next-steps li{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:14px;background:var(--bg);font-size:15px}
#obk-app .obk-next-steps svg{width:20px;height:20px;flex:none;color:var(--brand);margin-top:2px}
#obk-app .obk-cal-add{display:flex;gap:14px;flex-wrap:wrap;justify-content:center;align-items:center;font-size:14px;color:var(--muted)}
#obk-app .obk-cal-add a{color:var(--brand-2);font-weight:700}

/* portrait + animated "booked" check on the tablet */
#obk-app .obk-ph{position:relative;display:inline-block;line-height:0}
#obk-app .obk-tap-wrap{position:absolute;left:79.9%;top:69.4%;width:9%;aspect-ratio:1;transform:translate(-50%,-50%);pointer-events:none}
#obk-app .obk-tap{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
#obk-app .obk-tap-bg{fill:#3DE3B6;transform-origin:20px 20px;transform:scale(0);animation:obk-tap-pop .45s 1.15s cubic-bezier(.2,1.5,.4,1) forwards}
#obk-app .obk-tap-v{fill:none;stroke:#060627;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:30;stroke-dashoffset:30;animation:obk-tap-draw .4s 1.45s ease-out forwards}
#obk-app .obk-ripple{position:absolute;inset:-35%;border-radius:50%;border:3px solid rgba(61,227,182,.9);opacity:0;animation:obk-ripple 1s .75s ease-out forwards}
@keyframes obk-tap-pop{to{transform:scale(1)}}
@keyframes obk-tap-draw{to{stroke-dashoffset:0}}
@keyframes obk-ripple{0%{opacity:0;transform:scale(.3)}25%{opacity:1}100%{opacity:0;transform:scale(1.25)}}
@media (prefers-reduced-motion:reduce){#obk-app .obk-tap-bg{transform:scale(1)}#obk-app .obk-tap-v{stroke-dashoffset:0}#obk-app .obk-ripple{display:none}}

/* v1.0.1 - spotlight behind the head (hair reads better on the dark panel), check above the finger, taller slot list */
#obk-app .obk-panel::before{bottom:auto;top:28%;height:60%;inset-inline:-10%;background:radial-gradient(closest-side at 50% 50%,rgba(80,62,242,.55),rgba(63,50,218,.25) 55%,rgba(6,6,39,0) 100%)}
#obk-app .obk-ph::before{content:"";position:absolute;z-index:0;left:50%;top:-14%;width:125%;aspect-ratio:1;transform:translateX(-50%);pointer-events:none;
  background:radial-gradient(closest-side,rgba(120,104,255,.95) 0%,rgba(80,62,242,.7) 38%,rgba(63,50,218,.25) 68%,rgba(6,6,39,0) 100%);filter:blur(6px)}
#obk-app .obk-ph img{position:relative;z-index:1}
#obk-app .obk-tap-wrap{z-index:2;left:81%;top:65.5%}
#obk-app .obk-slot-list{max-height:none;overflow:visible;grid-template-columns:1fr 1fr;padding-inline-end:0}

/* v1.0.2 - mobile QA fixes (10.10.2026) */
/* 1. honeypot: never take space or create a scroll area (theme forced width:100% on inputs + left:-9999px in RTL = blank page) */
#obk-app .obk-hp{position:absolute!important;left:auto!important;right:0!important;top:0!important;width:1px!important;min-width:0!important;max-width:1px!important;height:1px!important;padding:0!important;margin:0!important;border:0!important;clip-path:inset(50%)!important;opacity:0!important;overflow:hidden!important}
#obk-app{overflow-x:clip;max-width:100%}
/* 2. nothing may force the layout wider than the screen */
#obk-app .obk-wrap{grid-template-columns:minmax(0,1fr)}
@media (min-width:901px){#obk-app .obk-wrap{grid-template-columns:minmax(380px,40%) minmax(0,1fr)}}
#obk-app .obk-grid{grid-template-columns:repeat(7,minmax(0,1fr))}
#obk-app .obk-d{min-height:0}
@media (max-width:400px){
  #obk-app .obk-grid{gap:3px}
  #obk-app .obk-card{padding:14px}
  #obk-app .obk-main{padding-inline:12px}
  #obk-app .obk-portrait img{max-height:170px}
  #obk-app .obk-intro h1{font-size:24px}
}
/* 3. tablet: calendar + times side by side, calendar not huge */
@media (min-width:600px) and (max-width:900px){
  #obk-app .obk-pick{grid-template-columns:1.25fr 1fr}
  #obk-app .obk-portrait img{max-height:280px}
}
/* 6. tap targets */
#obk-app .obk-back,#obk-app .obk-small-link,#obk-app .obk-cal-add a{min-height:44px;display:inline-flex;align-items:center}
/* 8. keep "date · time" together */
#obk-app .obk-summary b{text-wrap:balance}
#obk-app .obk-cal-add a{white-space:nowrap}

/* v1.0.3 - inside the site's header/footer (not the full-screen template) */
body:not(.obk-fullscreen) #obk-app .obk-wrap{min-height:0}
body:not(.obk-fullscreen) #obk-app .obk-brand{display:none}
body:not(.obk-fullscreen) #obk-app .obk-intro{margin-top:0}
#obk-app .obk-panel{padding-top:40px}
#obk-app .obk-main{padding-top:32px}
#obk-app .obk-stepper{margin-bottom:22px}
/* smaller portrait with a soft fade at the bottom instead of a hard cut */
#obk-app .obk-portrait img{max-height:min(420px,46vh);-webkit-mask-image:linear-gradient(to bottom,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 78%,transparent 100%)}
@media (max-width:900px){#obk-app .obk-panel{padding-top:24px}#obk-app .obk-main{padding-top:20px}}
@media (min-width:600px) and (max-width:900px){#obk-app .obk-portrait img{max-height:260px}}
@media (max-width:400px){#obk-app .obk-portrait img{max-height:170px}}

/* v1.0.4 - dark band across the top (no white gap under the site header), more air above, smaller portrait */
@media (min-width:901px){
  body:not(.obk-fullscreen) #obk-app .obk-wrap{background:linear-gradient(to bottom,#060627 0,#0b0a3a 210px,var(--bg) 210px)}
  body:not(.obk-fullscreen) #obk-app .obk-panel{padding-top:64px}
  body:not(.obk-fullscreen) #obk-app .obk-main{padding-top:56px}
  body:not(.obk-fullscreen) #obk-app .obk-stepper{color:rgba(255,255,255,.7)}
  body:not(.obk-fullscreen) #obk-app .obk-step.on{color:#fff}
  body:not(.obk-fullscreen) #obk-app .obk-step b{background:rgba(255,255,255,.14);color:#fff}
  body:not(.obk-fullscreen) #obk-app .obk-step.on b{background:var(--brand)}
  body:not(.obk-fullscreen) #obk-app .obk-step.done b{background:var(--mint);color:var(--night)}
  body:not(.obk-fullscreen) #obk-app .obk-bar{background:rgba(255,255,255,.22)}
  body:not(.obk-fullscreen) #obk-app .obk-card{box-shadow:0 24px 60px -24px rgba(6,6,39,.55)}
}
#obk-app .obk-portrait img{max-height:min(340px,40vh)}
@media (min-width:600px) and (max-width:900px){#obk-app .obk-portrait img{max-height:230px}}
@media (max-width:599px){#obk-app .obk-portrait img{max-height:150px}}

/* v1.0.5 - the whole booking side on our dark blue (white card floats on it), all widths */
#obk-app,#obk-app .obk-wrap{background:#060627}
#obk-app .obk-main{background:radial-gradient(120% 70% at 50% 0%,#141064 0%,#0b0a3a 45%,#060627 100%)}
@media (min-width:901px){body:not(.obk-fullscreen) #obk-app .obk-wrap{background:#060627}}
#obk-app .obk-stepper{color:rgba(255,255,255,.7)}
#obk-app .obk-step.on{color:#fff}
#obk-app .obk-step b{background:rgba(255,255,255,.14);color:#fff}
#obk-app .obk-step.on b{background:var(--brand);color:#fff}
#obk-app .obk-step.done b{background:var(--mint);color:var(--night)}
#obk-app .obk-bar{background:rgba(255,255,255,.22)}
#obk-app .obk-tz{color:rgba(255,255,255,.65)}
#obk-app .obk-note{background:rgba(255,255,255,.1);color:#fff}
#obk-app .obk-card{box-shadow:0 24px 60px -24px rgba(0,0,0,.6)}
@media (max-width:900px){#obk-app .obk-panel{border-radius:0;border-bottom:1px solid rgba(255,255,255,.08)}}

/* v1.0.6 - a bit more height for the whole booking area on desktop */
@media (min-width:901px){
  body:not(.obk-fullscreen) #obk-app .obk-wrap{min-height:min(860px,calc(100vh - 60px))}
  body:not(.obk-fullscreen) #obk-app .obk-main{padding-top:72px;padding-bottom:96px}
  body:not(.obk-fullscreen) #obk-app .obk-panel{padding-top:80px}
  body:not(.obk-fullscreen) #obk-app .obk-card{padding:40px}
  #obk-app .obk-portrait img{max-height:min(380px,44vh)}
}

/* v1.0.7 - middle ground: a little taller than v1.0.5, no forced min-height */
@media (min-width:901px){
  body:not(.obk-fullscreen) #obk-app .obk-wrap{min-height:0}
  body:not(.obk-fullscreen) #obk-app .obk-main{padding-top:56px;padding-bottom:56px}
  body:not(.obk-fullscreen) #obk-app .obk-panel{padding-top:64px}
  body:not(.obk-fullscreen) #obk-app .obk-card{padding:34px}
  #obk-app .obk-portrait img{max-height:min(360px,42vh)}
}

/* v1.0.8 - desktop: the photo fills the panel height and its bottom sits on the card's bottom line */
@media (min-width:901px){
  #obk-app .obk-stepper{order:-2}
  #obk-app .obk-tz{order:-1;margin:-10px 0 14px}
  body:not(.obk-fullscreen) #obk-app .obk-main{padding-bottom:48px}
  body:not(.obk-fullscreen) #obk-app .obk-panel{padding-bottom:48px}
  #obk-app .obk-portrait{flex:1 1 0;min-height:200px;padding-top:20px;display:flex;align-items:flex-end;justify-content:center}
  #obk-app .obk-ph{height:100%;display:inline-block}
  #obk-app .obk-portrait img{height:100%;max-height:none;width:auto;max-width:none;-webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,#000 88%,transparent 100%)}
}

/* v1.0.9 - QA round 2: anchors clear the sticky site header, bigger switch target, thank-you link row */
#obk-app .obk-slots,#obk-app .obk-stepper,#obk-app .obk-card,#obk-app .obk-cta{scroll-margin-top:80px}
#obk-app .obk-cal-add{justify-content:flex-start;gap:4px 16px}

/* v1.0.10 - whole reminder row is the tap target; desktop portrait bigger (panel can outgrow the card, card stays bottom-aligned) */
#obk-app .obk-remind{cursor:pointer;min-height:48px}
#obk-app .obk-remind-txt{display:block}
@media (min-width:901px){
  #obk-app .obk-portrait{min-height:min(440px,52vh)}
  #obk-app .obk-main{justify-content:center}
}
/* v1.0.11 - softer bottom fade on the portrait (only the last few px) */
#obk-app .obk-portrait img{-webkit-mask-image:linear-gradient(to bottom,#000 95%,transparent 100%);mask-image:linear-gradient(to bottom,#000 95%,transparent 100%)}
/* v1.0.12 - no fade at all: the photo runs to the panel's bottom edge and is cut cleanly there */
#obk-app .obk-portrait img{-webkit-mask-image:none;mask-image:none}
@media (min-width:901px){body:not(.obk-fullscreen) #obk-app .obk-panel{padding-bottom:0}}
