.hsb-mb{--mb-bg:#f4f5f7;--mb-primary:#151515;--mb-accent:#d31575;--mb-bg-image:none;--mb-font:Inter,Arial,sans-serif;--mb-shell-bg:#fff;--mb-shell-shadow:0 12px 45px rgba(0,0,0,.06);background:var(--mb-bg) var(--mb-bg-image) center/cover no-repeat;min-height:70vh;padding:48px 18px;color:var(--mb-primary);font-family:var(--mb-font);box-sizing:border-box}
.hsb-mb *{box-sizing:border-box}
.hsb-mb-shell{max-width:1000px;margin:0 auto;background:var(--mb-shell-bg);border-radius:14px;padding:36px;box-shadow:var(--mb-shell-shadow);text-align:left}
.hsb-mb-header{display:flex;align-items:center;justify-content:flex-start;gap:25px;padding:0 0 28px;border-bottom:1px solid rgba(0,0,0,.08)}
.hsb-mb-logo{max-width:190px;max-height:90px;object-fit:contain}
.hsb-mb-header h2{font-size:32px;line-height:1.12;margin:0 0 8px;color:var(--mb-primary)}
.hsb-mb-header p{margin:0;color:#666;font-size:15px}
.hsb-mb-tabs{display:flex;flex-wrap:wrap;gap:8px;padding:24px 0 18px;justify-content:flex-start}
.hsb-mb-tab{appearance:none;border:1px solid #ddd;border-radius:8px;background:#fafafa;padding:12px 18px;cursor:pointer;font-size:14px;font-weight:600;color:#333;transition:background .15s,color .15s,border-color .15s}
.hsb-mb-tab.active{background:var(--mb-primary);color:#fff;border-color:var(--mb-primary)}
.hsb-mb-panel h3{font-size:22px;margin:6px 0 18px}
.hsb-mb-panel[hidden],.hsb-mb-modal[hidden]{display:none!important}
.hsb-mb-item{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 2px;border-bottom:1px solid rgba(0,0,0,.08)}
.hsb-mb-item strong{display:block;font-size:16px}
.hsb-mb-item small{display:block;font-size:13px;color:#777;margin-top:6px}
.hsb-mb-actions{display:flex;align-items:center;gap:16px}
.hsb-mb-watch{font-size:13px;color:var(--mb-accent);text-decoration:none}
.hsb-mb-button,.hsb-mb-login button{display:inline-block;border:0;border-radius:7px;background:var(--mb-primary);color:#fff!important;text-decoration:none;cursor:pointer;padding:11px 18px;font-weight:600;font-size:13px;white-space:nowrap}
.hsb-mb-button:hover,.hsb-mb-login button:hover{opacity:.88}
.hsb-mb-all{text-align:left;padding:24px 0 0}
.hsb-mb-logout{text-align:left;padding-top:20px}
.hsb-mb-logout button{border:0;background:transparent;color:#777;text-decoration:underline;cursor:pointer;padding:0}
.hsb-mb-footer{color:#999;text-align:left;font-size:11px;margin-top:14px}
.hsb-mb-login{max-width:430px;margin:34px 0 10px}
.hsb-mb-login h3{margin:0 0 12px}
.hsb-mb-login form{display:grid;gap:12px}
.hsb-mb-login label,.hsb-mb-email-form label{font-size:14px;font-weight:600}
.hsb-mb-login input,.hsb-mb-email-form input{display:block;width:100%;border:1px solid #ccc;border-radius:7px;background:#fff;margin:8px 0 14px;padding:12px;font-size:15px;color:#222}
.hsb-mb-error{color:#bd2239}
.hsb-mb-modal{position:fixed;inset:0;background:#0009;z-index:999999;display:flex;justify-content:center;align-items:center;padding:20px}
.hsb-mb-modal-card{width:100%;max-width:450px;position:relative;background:#fff;padding:32px;border-radius:12px;box-shadow:0 10px 70px rgba(0,0,0,.25)}
.hsb-mb-modal-card h3{font-size:22px;margin:0 0 20px}
.hsb-mb-close{position:absolute;right:18px;top:12px;background:none;border:0;font-size:28px;cursor:pointer}
.hsb-mb-status{font-size:13px;margin:16px 0 0}
.hsb-mb-availability{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;justify-content:flex-start;margin-top:26px;padding-top:18px;border-top:1px solid rgba(0,0,0,.08);font-size:13px;color:#666}
.hsb-mb-availability strong{color:var(--mb-primary);font-size:13px}
.hsb-mb [data-countdown]{font-variant-numeric:tabular-nums;font-weight:600;color:var(--mb-primary)}
.hsb-mb :focus-visible{outline:3px solid var(--mb-accent);outline-offset:2px}
@media(max-width:640px){.hsb-mb{padding:15px 8px}.hsb-mb-shell{padding:24px 16px}.hsb-mb-header{flex-direction:column;align-items:flex-start}.hsb-mb-item{align-items:flex-start;flex-direction:column;gap:12px}.hsb-mb-actions{width:100%;justify-content:space-between}}

/* Version 1.0.5: independently configurable backgrounds and text/button palette */
.hsb-mb{color:var(--mb-body,#151515)}
.hsb-mb.hsb-mb-outer-transparent{background:transparent!important;min-height:0}
.hsb-mb :is(h2,h3){color:var(--mb-heading,#151515)}
.hsb-mb :is(.hsb-mb-item,.hsb-mb-item strong,.hsb-mb-panel p,.hsb-mb-login p,.hsb-mb-login label,.hsb-mb-email-form label){color:var(--mb-body,#151515)}
.hsb-mb .hsb-mb-button,.hsb-mb .hsb-mb-login button,.hsb-mb .hsb-mb-tab.active{background:var(--mb-button,#151515);border-color:var(--mb-button,#151515);color:var(--mb-button-text,#fff)!important}
.hsb-mb :is(.hsb-mb-availability strong,.hsb-mb [data-countdown]){color:var(--mb-body,#151515)}
/* Media Box 1.0.6 compact visual system */
.hsb-mb{min-height:0;padding:22px 10px;font-size:var(--mb-body-size,13px)}
.hsb-mb-shell{max-width:var(--mb-width,850px);padding:26px 30px;border-radius:11px}
.hsb-mb-header{gap:18px;padding-bottom:18px}
.hsb-mb-header h2{font-size:var(--mb-title-size,29px);font-weight:var(--mb-title-weight,700);letter-spacing:-.025em}
.hsb-mb-header p{font-size:var(--mb-subtitle-size,13px)}
.hsb-mb-tabs{padding:18px 0 16px;gap:6px;border-bottom:1px solid rgba(135,135,145,.2);margin-bottom:15px}
.hsb-mb-tab{font-family:inherit;font-size:var(--mb-button-size,12px);padding:9px 13px;border-radius:6px;line-height:1.3}
.hsb-mb-panel h3{font-size:var(--mb-section-size,15px);font-weight:var(--mb-section-weight,700);letter-spacing:.015em;margin:0 0 8px}
.hsb-mb-item{padding:11px 2px;gap:12px;border-bottom:1px solid rgba(135,135,145,.18)}
.hsb-mb-item strong{font-size:var(--mb-body-size,13px);font-weight:600}
.hsb-mb-item small{font-size:calc(var(--mb-body-size,13px) - 1px);margin-top:3px}
.hsb-mb-button,.hsb-mb-login button{font-size:var(--mb-button-size,12px);padding:9px 14px;border-radius:6px;font-family:inherit}
.hsb-mb-availability{margin-top:16px;padding-top:13px;font-size:12px}
.hsb-mb-logout{padding-top:13px}.hsb-mb-footer{margin-top:11px}
@media(max-width:640px){.hsb-mb-shell{padding:18px 16px}.hsb-mb{padding:10px 0}}

/* 1.0.7: isolate typography from Liquid/Elementor global heading rules */
body .hsb-mb, body .hsb-mb .hsb-mb-shell, body .hsb-mb .hsb-mb-shell :is(h1,h2,h3,h4,h5,h6,p,span,strong,small,a,button,label,input){font-family:var(--mb-font)!important;font-stretch:normal!important;text-transform:none!important}
body .hsb-mb .hsb-mb-header h2{font-size:var(--mb-title-size,29px)!important;font-weight:var(--mb-title-weight,700)!important;line-height:1.15!important;letter-spacing:-.025em!important;color:var(--mb-heading,#fff)!important}
body .hsb-mb .hsb-mb-header p{font-size:var(--mb-subtitle-size,13px)!important;line-height:1.5!important;color:var(--mb-body,#ddd)!important}
body .hsb-mb .hsb-mb-panel h3, body .hsb-mb .hsb-mb-login h3{font-size:var(--mb-section-size,15px)!important;font-weight:var(--mb-section-weight,700)!important;line-height:1.35!important;letter-spacing:.01em!important;color:var(--mb-heading,#fff)!important}
body .hsb-mb .hsb-mb-tab,body .hsb-mb .hsb-mb-button,body .hsb-mb .hsb-mb-login button{font-size:var(--mb-button-size,12px)!important;line-height:1.35!important}
body .hsb-mb .hsb-mb-item strong,body .hsb-mb .hsb-mb-panel p{font-size:var(--mb-body-size,13px)!important}

/* 1.0.8: independent secondary labels and panel alignment */
body .hsb-mb .hsb-mb-shell{margin:var(--mb-panel-margin,0 auto)!important}
body .hsb-mb .hsb-mb-item small{color:var(--mb-meta,#8f919e)!important}

.hsb-mb .hsb-mb-item .hsb-mb-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hsb-mb .hsb-mb-send-file{background:transparent!important;border:1px solid var(--mb-button,#fff)!important;color:var(--mb-heading,#fff)!important}.hsb-mb .hsb-mb-send-file:hover{opacity:.75}

/* 1.0.10: modal shares no font color with customizable front palette. */
body .hsb-mb .hsb-mb-modal-card{display:block!important;background:#fff!important;color:#191b20!important;text-align:left!important;padding:28px!important}
body .hsb-mb .hsb-mb-modal-card h3{color:#191b20!important;font-weight:700!important;line-height:1.3!important;margin:0 32px 20px 0!important}
body .hsb-mb .hsb-mb-modal-card label,body .hsb-mb .hsb-mb-modal-card .hsb-mb-status{display:block!important;color:#34383e!important;font-size:13px!important;line-height:1.5!important}
body .hsb-mb .hsb-mb-modal-card input[type=email],body .hsb-mb .hsb-mb-modal-card .hsb-mb-email-form .hsb-mb-button{display:flex!important;width:100%!important;min-width:0!important;max-width:100%!important;height:44px!important;min-height:44px!important;box-sizing:border-box!important;align-items:center!important;justify-content:center!important;margin:10px 0 0!important;padding:0 14px!important;border-radius:8px!important}
body .hsb-mb .hsb-mb-modal-card input[type=email]{background:#fff!important;border:1px solid #cfd3d8!important;color:#16191e!important;text-align:left!important;font-weight:400!important}
body .hsb-mb .hsb-mb-modal-card .hsb-mb-email-form .hsb-mb-button{margin-top:14px!important}
body .hsb-mb .hsb-mb-modal-card .hsb-mb-close{color:#222!important}

/* 1.0.10: dialog controls are independent of theme typography/color settings */
body .hsb-mb .hsb-mb-modal-card{color:#16191e!important;font-family:Inter,Arial,sans-serif!important;max-width:420px;text-align:left!important}
body .hsb-mb .hsb-mb-modal-card :is(h3,label,p){color:#16191e!important;font-family:Inter,Arial,sans-serif!important;text-align:left!important}
body .hsb-mb .hsb-mb-modal-card h3{font-size:20px!important;line-height:1.3!important;font-weight:700!important;margin:0 0 20px!important}
body .hsb-mb .hsb-mb-email-form{display:flex;flex-direction:column;align-items:stretch;gap:12px}
body .hsb-mb .hsb-mb-email-form label{display:block;margin:0!important;font-size:13px!important;width:100%}
body .hsb-mb .hsb-mb-email-form input[type=email]{display:block;width:100%!important;max-width:100%!important;height:44px!important;min-height:44px!important;padding:0 13px!important;margin:8px 0 0!important;line-height:44px!important;border:1px solid #cfd3d8!important;border-radius:8px!important;background:#fff!important;color:#16191e!important;font-size:14px!important;box-sizing:border-box!important}
body .hsb-mb .hsb-mb-email-form button{width:100%!important;height:44px!important;min-height:44px!important;display:flex;align-items:center;justify-content:center;padding:0 14px!important;margin:0!important;border-radius:8px!important;font-size:13px!important;line-height:1.2!important;box-sizing:border-box!important}
body .hsb-mb .hsb-mb-email-form button[hidden]{display:none!important}
body .hsb-mb .hsb-mb-email-form .hsb-mb-done{background:#111!important;color:#fff!important;border:0!important;cursor:pointer}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status{margin:0!important;font-size:13px!important;line-height:1.5!important}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status:empty{display:none}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status.is-success{color:#197244!important;font-weight:600}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status.is-error{color:#b52b36!important}

/* Independent hover color: configurable in Design, not tied to accent color. */
body .hsb-mb .hsb-mb-tab:hover,body .hsb-mb .hsb-mb-button:hover,body .hsb-mb .hsb-mb-login button:hover,body .hsb-mb .hsb-mb-tab.active:hover,body .hsb-mb .hsb-mb-send-file:hover{background-color:var(--mb-hover,#842cbb)!important;border-color:var(--mb-hover,#842cbb)!important;color:var(--mb-button-text,#fff)!important;opacity:1!important}
body .hsb-mb .hsb-mb-watch:hover{color:var(--mb-hover,#842cbb)!important}


/* HSB. MediaBox 1.3.5 modal refinement */
body .hsb-mb .hsb-mb-modal-card{max-width:390px!important;padding:24px!important;border-radius:10px!important;border:1px solid #e7e9ef!important;box-shadow:0 16px 44px rgba(7,11,20,.18)!important}
body .hsb-mb .hsb-mb-modal-card h3{font-family:var(--mb-font)!important;font-size:17px!important;line-height:1.28!important;font-weight:700!important;letter-spacing:0!important;word-spacing:0!important;font-stretch:normal!important;text-transform:none!important;margin:0 28px 14px 0!important}
body .hsb-mb .hsb-mb-modal-card label{font-size:12px!important;font-weight:600!important;color:#242830!important;letter-spacing:0!important}
body .hsb-mb .hsb-mb-email-form{gap:10px!important}
body .hsb-mb .hsb-mb-email-form input[type=email]{height:42px!important;min-height:42px!important;margin:6px 0 0!important;padding:0 12px!important;border:1px solid #d7dce4!important;border-radius:8px!important;font-size:14px!important;line-height:42px!important;box-shadow:none!important}
body .hsb-mb .hsb-mb-email-form input[type=email]:focus{outline:none!important;border-color:var(--mb-hover,#842cbb)!important;box-shadow:0 0 0 1px var(--mb-hover,#842cbb)!important}
body .hsb-mb .hsb-mb-email-form button{height:42px!important;min-height:42px!important;border-radius:8px!important}
body .hsb-mb .hsb-mb-close{top:10px!important;right:14px!important;font-size:24px!important;line-height:1!important}

body .hsb-mb .hsb-mb-selected-file{display:block;color:#4b505b!important;font-size:12px!important;line-height:1.4!important;margin:0 0 12px!important;overflow-wrap:anywhere}body .hsb-mb .hsb-mb-selected-file[hidden]{display:none!important}

/* v1.3.9 - compact, unbolded modal typography, including all modal text */
body .hsb-mb .hsb-mb-modal-card h3{font-size:15px!important;font-weight:400!important;letter-spacing:0!important}
body .hsb-mb .hsb-mb-modal-card label{font-size:10px!important;font-weight:400!important}
body .hsb-mb .hsb-mb-modal-card input[type=email]{font-size:12px!important;font-weight:400!important}
body .hsb-mb .hsb-mb-email-form button{font-size:11px!important;font-weight:400!important}
body .hsb-mb .hsb-mb-modal-card .hsb-mb-selected-file{font-size:10px!important;font-weight:400!important}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status{font-size:11px!important;font-weight:400!important}
body .hsb-mb .hsb-mb-email-form .hsb-mb-status.is-success{font-weight:400!important}
body .hsb-mb .hsb-mb-close{font-weight:400!important}
