/* Evalo-inspired presentation layer. Marketplace behavior remains in Offer Bazaar Core. */
:root {
  --ob-ink: #202229;
  --ob-blue: #6c63ff;
  --ob-mint: #28b8a8;
  --ob-lavender: #efedff;
  --ob-coral: #ff866f;
  --ob-bg: #f3f9fc;
  --ob-white: #fff;
  --ob-muted: #747887;
  --ob-border: #ebedf5;
  --ob-radius: 22px;
  --ob-shadow: 0 22px 65px rgba(35, 45, 82, .08);
  --ob-ease: cubic-bezier(.22, 1, .36, 1);
}

html { scroll-behavior: smooth; }
body {
  background: var(--ob-bg);
  color: var(--ob-ink);
  font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}
body, button, input, select, textarea { font-family: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body :is(h1,h2,h3,h4,h5,h6) { color: var(--ob-ink); font-weight: 700; letter-spacing: -.035em; }
body a { color: var(--ob-blue); }
body a:hover { color: #5148e8; }

.ob-site-header {
  background: rgba(255,255,255,.94);
  border-bottom: 1px solid rgba(235,237,245,.88);
  box-shadow: 0 5px 24px rgba(35,45,82,.025);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 9999;
  transition: box-shadow .35s var(--ob-ease), background-color .35s var(--ob-ease);
}
body.admin-bar .ob-site-header { top: 32px; }
.ob-site-header.ob-is-scrolled { background: rgba(255,255,255,.97); box-shadow: 0 12px 34px rgba(35,45,82,.09); }
.ob-header-inner { gap: 34px; max-width: 1160px; min-height: 92px; transition: min-height .35s var(--ob-ease); }
.ob-is-scrolled .ob-header-inner { min-height: 76px; }
.ob-brand { color: var(--ob-ink); font-size: 26px; font-weight: 800; gap: 11px; letter-spacing: -.065em; line-height: 1.2; max-width: 240px; }
.ob-brand:hover { color: var(--ob-blue); }
.ob-brand-mark {
  background: transparent;
  border: 6px solid var(--ob-blue);
  border-radius: 7px;
  box-shadow: none;
  display: inline-block;
  height: 33px;
  position: relative;
  width: 33px;
}
.ob-brand-mark > span { background: #fff; bottom: -6px; left: 7px; position: absolute; top: -6px; width: 7px; }
.ob-brand-mark::after { background: var(--ob-ink); border-radius: 1px; content: ""; height: 8px; left: 9px; position: absolute; top: 7px; width: 8px; }
.ob-brand--image .ob-logo-img { border-radius: 0; max-height: 58px; max-width: 200px; width: auto; }
.ob-header-panel { align-items: center; display: flex; flex: 1 1 auto; gap: 24px; min-width: 0; }
.ob-nav { flex: 1 1 auto; min-width: 0; }
.ob-nav ul { gap: clamp(13px, 1.8vw, 26px); }
.ob-nav a { color: #4d5060; font-size: .88rem; font-weight: 500; transition: color .2s var(--ob-ease); }
.ob-nav a:hover, .ob-nav .current-menu-item > a, .ob-nav .current_page_item > a { color: var(--ob-blue); }
.ob-nav .sub-menu { background: #fff; border: 1px solid var(--ob-border); border-radius: 14px; box-shadow: var(--ob-shadow); display: block; min-width: 200px; opacity: 0; padding: 9px; pointer-events: none; position: absolute; transform: translateY(8px); transition: opacity .2s var(--ob-ease), transform .2s var(--ob-ease); visibility: hidden; z-index: 80; }
.ob-nav li { position: relative; }
.ob-nav li:hover > .sub-menu, .ob-nav li:focus-within > .sub-menu { opacity: 1; pointer-events: auto; transform: translateY(0); visibility: visible; }
.ob-nav .sub-menu li { border: 0; }
.ob-nav .sub-menu a { display: block; padding: 9px 12px; }
.ob-header-actions { flex: 0 0 auto; gap: 16px; margin-left: auto; }
.ob-header-actions a { font-size: .86rem; font-weight: 600; transition: transform .25s var(--ob-ease), box-shadow .25s var(--ob-ease), color .2s ease; }
.ob-header-actions .ob-vendor-link { color: #4d5060; }
.ob-header-actions .ob-vendor-link:hover { color: var(--ob-blue); }
.ob-header-actions .ob-header-cta { align-items: center; background: var(--ob-blue); border: 1px solid var(--ob-blue); border-radius: 999px; box-shadow: 0 9px 20px rgba(108,99,255,.19); color: #fff; display: inline-flex; gap: 14px; min-height: 47px; padding: 11px 25px; }
.ob-header-actions .ob-header-cta:hover { box-shadow: 0 14px 26px rgba(108,99,255,.25); color: #fff; transform: translateY(-2px); }
.ob-nav-toggle { border-color: transparent; border-radius: 14px; flex-direction: column; height: 46px; transition: background .2s ease, border-color .2s ease; width: 46px; }
.ob-nav-toggle:hover { background: var(--ob-lavender); border-color: #dcd9ff; }
.ob-nav-toggle span, .ob-nav-toggle span::before, .ob-nav-toggle span::after { background: var(--ob-ink); border-radius: 3px; height: 2px; position: static; width: 25px; }
.ob-nav-toggle span { display: block; margin: 5px 0; transition: transform .25s ease, opacity .25s ease; }
.ob-nav-toggle span::before, .ob-nav-toggle span::after { content: none !important; display: none !important; }
.ob-menu-open .ob-nav-toggle span { background: var(--ob-ink); }
.ob-menu-open .ob-nav-toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.ob-menu-open .ob-nav-toggle span:nth-child(2) { opacity: 0; }
.ob-menu-open .ob-nav-toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

.ob-main { padding: 46px 0 88px; }
.home .ob-main { padding-top: 0; }
.ob-home-hero {
  background: radial-gradient(ellipse at 82% 12%, rgba(108,99,255,.10), transparent 30%), linear-gradient(112deg,#fff 0%,#fff 45%,#eef7ff 100%);
  padding: clamp(68px, 8vw, 112px) 24px;
  position: relative;
}
.ob-home-hero::after { background: linear-gradient(135deg,rgba(108,99,255,.08),rgba(40,184,168,.08)); border-radius: 42% 58% 60% 40% / 44% 42% 58% 56%; content: ""; height: 460px; position: absolute; right: 1%; top: 3%; transform: rotate(-8deg); width: min(43vw,560px); }
.ob-home-hero__inner { position: relative; z-index: 1; }
.ob-home-hero__copy { max-width: 620px; }
.ob-home-hero h1 { font-size: clamp(2.65rem,5.4vw,4.75rem); letter-spacing: -.055em; line-height: 1.07; margin-bottom: 22px; }
.ob-home-hero__copy > p:not(.ob-eyebrow) { color: var(--ob-muted); font-size: clamp(1.03rem,1.45vw,1.16rem); line-height: 1.8; max-width: 560px; }
.ob-eyebrow { color: var(--ob-blue); font-size: .76rem; font-weight: 700; letter-spacing: .13em; margin-bottom: 14px; }
.ob-home-hero__art { background: radial-gradient(circle at 72% 20%,#d8d5ff 0 12%,transparent 12.5%),radial-gradient(circle at 22% 74%,#c7f2eb 0 15%,transparent 15.5%),linear-gradient(135deg,rgba(108,99,255,.17),rgba(40,184,168,.13)); border: 1px solid rgba(255,255,255,.9); border-radius: 42% 58% 60% 40% / 44% 42% 58% 56%; box-shadow: 0 26px 70px rgba(91,101,177,.10); min-height: 350px; }
.ob-hero-card { border: 1px solid var(--ob-border); border-radius: 22px; box-shadow: 0 24px 60px rgba(35,45,82,.14); max-width: 300px; padding: 25px; transform: rotate(2deg); }
.ob-hero-card__tag { background: #eeecff; color: #5e55e8; font-size: .7rem; letter-spacing: .08em; padding: 6px 11px; }
.ob-hero-card strong { font-size: 1.4rem; letter-spacing: -.035em; line-height: 1.28; }
.ob-home-section { padding-bottom: 0; padding-top: clamp(54px,7vw,86px); }
.ob-section-heading { margin-bottom: 28px; }
.ob-section-heading h2 { font-size: clamp(1.8rem,3.2vw,2.7rem); letter-spacing: -.045em; }
.ob-section-heading p:not(.ob-eyebrow) { color: var(--ob-muted); }
.ob-home-intro { color: var(--ob-muted); }
.ob-main-inner > article, .ob-main-inner > .page-content, .ob-empty { border: 1px solid var(--ob-border); border-radius: var(--ob-radius); box-shadow: var(--ob-shadow); }
.ob-main-inner > article, .ob-main-inner > .page-content { padding: clamp(24px,5vw,58px); }

.ob-button, .ob-btn, .elementor-button, .wp-element-button, button[type="submit"] { border-radius: 999px; font-weight: 600; transition: background .25s var(--ob-ease), border-color .25s var(--ob-ease), color .25s var(--ob-ease), transform .3s var(--ob-ease), box-shadow .3s var(--ob-ease); }
.ob-button, .ob-btn, .wp-element-button { background: var(--ob-blue); border-color: var(--ob-blue); box-shadow: 0 9px 20px rgba(108,99,255,.16); color: #fff; }
.ob-button:hover, .ob-btn:hover, .wp-element-button:hover { background: #574eea; border-color: #574eea; box-shadow: 0 14px 28px rgba(108,99,255,.22); color: #fff; transform: translateY(-2px); }
.ob-button--secondary { background: #fff; border-color: var(--ob-border); box-shadow: none; color: var(--ob-ink); }
.ob-button--secondary:hover { background: #f8f7ff; border-color: #d6d2ff; color: var(--ob-blue); }
.ob-button--light { background: #fff; border-color: #fff; box-shadow: none; color: var(--ob-blue); }
.ob-button--light:hover { background: #f3f1ff; border-color: #f3f1ff; color: #5148e8; }
.ob-theme-focus :focus-visible, .ob-search-form :focus-visible, .ob-vendor-dashboard :focus-visible, .ob-place-list [role="option"]:focus-visible { outline: 3px solid rgba(108,99,255,.55); outline-offset: 3px; }

.ob-directory, .ob-offer-grid, .ob-category-grid, .ob-vendor-dashboard, .ob-shop-profile { color: var(--ob-ink); }
.ob-search-form, .ob-shop-card, .ob-offer-card, .ob-category-card, .ob-vendor-shop, .ob-form-card, .ob-empty { border-color: var(--ob-border); border-radius: var(--ob-radius); box-shadow: 0 12px 36px rgba(35,45,82,.055); }
.ob-search-form { padding: clamp(20px,3vw,32px); }
.ob-search-form input, .ob-search-form select, .ob-shop-form input:not([type="hidden"]), .ob-shop-form select, .ob-shop-form textarea, .ob-vendor-dashboard input:not([type="hidden"]):not([type="checkbox"]), .ob-vendor-dashboard select, .ob-vendor-dashboard textarea, .ob-offer-filter select { border-color: #e1e3ef; border-radius: 13px; transition: border-color .2s ease, box-shadow .2s ease; }
.ob-search-form :is(input,select):focus, .ob-shop-form :is(input,select,textarea):focus, .ob-vendor-dashboard :is(input,select,textarea):focus { border-color: #a9a3ff; box-shadow: 0 0 0 4px rgba(108,99,255,.10); outline: 0; }
.ob-shop-card, .ob-offer-card, .ob-category-card, .ob-vendor-shop { transition: transform .4s var(--ob-ease), box-shadow .4s var(--ob-ease), border-color .3s ease; }
.ob-shop-card:hover, .ob-offer-card:hover, .ob-category-card:hover, .ob-vendor-shop:hover { border-color: #dedbff; box-shadow: 0 22px 48px rgba(35,45,82,.11); transform: translateY(-5px); }
.ob-shop-card__image { background: linear-gradient(135deg,#f0efff,#ecfbf8); }
.ob-shop-placeholder { background: linear-gradient(135deg,#8c84ff,var(--ob-blue)); }
.ob-shop-card h3 a, .ob-offer-card h3 a { transition: color .2s ease; }
.ob-shop-card h3 a:hover, .ob-offer-card h3 a:hover { color: var(--ob-blue); }
.ob-category-label { color: var(--ob-blue); }
.ob-category-icon { background: #eeecff; color: #5e55e8; }
.ob-category-card:hover { color: var(--ob-blue); }
.ob-category-card:hover .ob-category-icon { background: var(--ob-blue); color: #fff; transform: translateY(-2px) rotate(-4deg); }
.ob-demo-badge { background: #fff5df; border-radius: 999px; }
.ob-place-list { border-color: var(--ob-border); border-radius: 14px; }
.ob-place-list [role="option"][aria-selected="true"], .ob-place-list [role="option"]:hover { background: #f1f0ff; }
.ob-pagination a, .ob-pagination span { border-color: var(--ob-border); border-radius: 12px; }
.ob-pagination .current { background: var(--ob-blue); border-color: var(--ob-blue); }
.ob-vendor-cta { background: radial-gradient(circle at 90% 10%,rgba(255,255,255,.15),transparent 28%),linear-gradient(120deg,#5148d9,#766dff 62%,#5c9cda); border-radius: 28px; box-shadow: 0 18px 50px rgba(91,83,224,.18); }
.ob-vendor-cta .ob-eyebrow { color: #dfdcff; }
.ob-vendor-auth { border-color: var(--ob-border); border-radius: 28px; box-shadow: var(--ob-shadow); }
.ob-vendor-auth__welcome { background: radial-gradient(circle at 100% 0,rgba(255,255,255,.24),transparent 42%),linear-gradient(145deg,#554ce0,#766dff 74%,#6897e6); }
.ob-vendor-auth__welcome .ob-eyebrow { color: #e5e2ff; }
.ob-vendor-auth .ob-form-card { border: 1px solid var(--ob-border); border-radius: 18px; box-shadow: 0 8px 28px rgba(35,45,82,.06); }
.ob-vendor-auth .ob-form-card h2 { letter-spacing: -.025em; }
.ob-vendor-heading { border-color: var(--ob-border); }
.ob-status { border-radius: 999px; }

.ob-site-footer { background: #f5f9fc; border-top: 0; color: #383b45; padding: 80px 0 0; }
.ob-footer-inner { display: block; max-width: 1160px; }
.ob-footer-grid { display: grid; gap: 65px; grid-template-columns: minmax(240px,1.3fr) minmax(165px,.8fr) minmax(230px,1fr); padding-bottom: 67px; }
.ob-footer-about p, .ob-footer-contact p { color: var(--ob-muted); font-size: .88rem; line-height: 1.95; margin: 0; max-width: 360px; }
.ob-footer-about .ob-brand { margin-bottom: 22px; }
.ob-footer-brand { color: var(--ob-ink); }
.ob-footer-brand:hover { color: var(--ob-blue); }
.ob-footer-heading { font-size: .93rem; letter-spacing: 0; margin: 5px 0 18px; }
.ob-footer-links .ob-footer-heading, .ob-footer-contact .ob-footer-heading { font-size: 17px; margin: 6px 0 25px; }
.ob-footer-nav ul { align-items: flex-start; display: flex; flex-direction: column; gap: 5px; }
.ob-footer-nav a, .ob-footer-contact-link, .ob-footer-vendor-link, .ob-footer-legal a { color: #6d7380; font-size: .88rem; font-weight: 400; text-decoration: none; transition: color .2s ease; }
.ob-footer-nav a:hover, .ob-footer-contact-link:hover, .ob-footer-vendor-link:hover, .ob-footer-legal a:hover { color: var(--ob-blue); }
.ob-footer-contact-link { color: var(--ob-blue); display: inline-flex; font-weight: 700; gap: 12px; margin-top: 21px; overflow-wrap: anywhere; }
.ob-footer-vendor-link { display: inline-flex; gap: 7px; margin-top: 13px; }
.ob-footer-bottom { align-items: center; border-color: #e4e9f0; color: #818694; display: flex; flex-wrap: wrap; font-size: .75rem; gap: 18px; justify-content: space-between; margin-top: 0; padding: 23px 0; }
.ob-footer-legal { display: flex; gap: 20px; }
.ob-skip-link { background: var(--ob-ink); }

/* Give the seeded, editable Elementor hero the same visual treatment. */
.elementor-page .ob-main-inner > article, .elementor-page .ob-main-inner > .page-content { background: transparent; border: 0; box-shadow: none; padding: 0; }
.elementor-element-obhero01, [data-id="obhero01"] { background: radial-gradient(ellipse at 78% 20%,rgba(108,99,255,.10),transparent 28%),linear-gradient(112deg,#fff 0%,#fff 46%,#eef7ff 100%) !important; isolation: isolate; overflow: hidden; position: relative; }
.elementor-element-obhero01::before, [data-id="obhero01"]::before { background: linear-gradient(135deg,rgba(108,99,255,.10),rgba(40,184,168,.12)); border-radius: 44% 56% 58% 42% / 46% 40% 60% 54%; content: ""; height: 380px; position: absolute; right: 5%; top: 50%; transform: translateY(-50%) rotate(-8deg); width: min(38vw,470px); z-index: -1; }
.elementor-element-obhero01::after, [data-id="obhero01"]::after { background-color: rgba(255,255,255,.97); background-image: radial-gradient(circle,#d7d3ff 0 4px,transparent 5px),linear-gradient(#eeedf6,#eeedf6),linear-gradient(#eeedf6,#eeedf6),linear-gradient(90deg,#8c84ff,#8c84ff); background-position: 24px 25px,24px 68px,24px 90px,24px 124px; background-repeat: no-repeat; background-size: 9px 9px,72% 8px,52% 7px,42% 38px; border: 1px solid rgba(235,237,245,.92); border-radius: 22px; box-shadow: 0 28px 70px rgba(35,45,82,.14); color: var(--ob-ink); content: "LOCAL FINDS\A Offers worth finding"; font-size: .78rem; font-weight: 700; letter-spacing: .01em; line-height: 1.5; padding: 47px 24px 20px; position: absolute; right: 11%; top: 50%; transform: translateY(-50%) rotate(2deg); white-space: pre-line; width: min(27vw,320px); z-index: -1; }
.elementor-element-obhero01 .elementor-container, [data-id="obhero01"] > .elementor-container { position: relative; z-index: 1; }
.elementor-element-obhero01 .elementor-widget-wrap > .elementor-widget, [data-id="obhero01"] .elementor-widget-wrap > .elementor-widget { max-width: min(54%,650px); }
.elementor-element-obhero01 .elementor-heading-title, [data-id="obhero01"] .elementor-heading-title { font-size: clamp(2.55rem,5.2vw,4.55rem); letter-spacing: -.055em; line-height: 1.08; }
.elementor-element-obhero01 .elementor-widget-text-editor, [data-id="obhero01"] .elementor-widget-text-editor { color: var(--ob-muted); font-size: 1.08rem; line-height: 1.8; }
.elementor-element-obhero01 .elementor-button, [data-id="obhero01"] .elementor-button { background: var(--ob-blue); border-radius: 999px; box-shadow: 0 9px 20px rgba(108,99,255,.18); }
.elementor-element-obhero01 .elementor-button:hover, [data-id="obhero01"] .elementor-button:hover { background: #574eea; box-shadow: 0 14px 28px rgba(108,99,255,.23); transform: translateY(-2px); }
.elementor-page .elementor-section:not(.elementor-element-obhero01) .elementor-heading-title { letter-spacing: -.04em; }

@media (max-width: 980px) {
  .ob-header-inner { gap: 18px; }
  .ob-header-panel { gap: 16px; }
  .ob-nav ul { gap: 14px; }
  .ob-nav a, .ob-header-actions a { font-size: .82rem; }
  .ob-header-actions { gap: 11px; }
  .ob-header-actions .ob-header-cta { padding: 11px 14px; }
}
@media (max-width: 900px) {
  .ob-header-inner { flex-wrap: wrap; min-height: 78px; padding-bottom: 10px; padding-top: 10px; position: relative; }
  .ob-is-scrolled .ob-header-inner { min-height: 70px; }
  .ob-nav-toggle { display: none; flex: 0 0 auto; margin-left: auto; }
  .ob-header-panel { align-items: stretch; background: #fff; border: 0; border-radius: 0; box-shadow: none; display: block; flex: 0 0 100%; max-height: none; opacity: 1; overflow: visible; padding: 10px 0 18px; pointer-events: auto; position: static; transform: none; visibility: visible; }
  .js .ob-nav { max-height: none; opacity: 1; overflow: visible; }
  .ob-nav-ready .ob-nav-toggle { display: inline-flex; }
  .ob-nav-ready .ob-header-panel { background: #fff; border: 1px solid var(--ob-border); border-radius: 20px; box-shadow: 0 22px 50px rgba(35,45,82,.12); flex: 0 0 auto; left: 18px; max-height: calc(100vh - 125px); opacity: 0; overflow: auto; padding: 12px 20px 18px; pointer-events: none; position: absolute; right: 18px; top: calc(100% + 8px); transform: translateY(-8px); transition: opacity .28s var(--ob-ease), transform .28s var(--ob-ease), visibility .28s ease; visibility: hidden; z-index: 90; }
  .ob-menu-open .ob-header-panel { opacity: 1; pointer-events: auto; transform: translateY(0); visibility: visible; }
  .ob-nav { max-height: none; opacity: 1; overflow: visible; }
  .ob-nav ul { align-items: stretch; display: flex; flex-direction: column; gap: 0; padding: 3px 0 10px; }
  .ob-nav li { border-bottom: 1px solid #f0f0f6; }
  .ob-nav a { display: block; font-size: .96rem; padding: 12px 2px; }
  .ob-nav .sub-menu { border: 0; border-radius: 0; box-shadow: none; display: block; opacity: 1; padding: 0 0 6px 13px; pointer-events: auto; position: static; transform: none; visibility: visible; }
  .ob-nav .sub-menu a { font-size: .9rem; padding: 8px 4px; }
  .ob-header-actions { align-items: center; justify-content: space-between; margin: 14px 0 0; }
  .ob-header-actions .ob-vendor-link { padding: 10px 0; }
  .ob-home-hero::after { height: 360px; right: -12%; top: 13%; width: 58vw; }
  .ob-home-hero__inner { grid-template-columns: minmax(0,1.1fr) minmax(210px,.9fr); }
  .ob-home-hero__art { min-height: 285px; }
  .ob-footer-grid { gap: 28px; }
  .elementor-element-obhero01::before, [data-id="obhero01"]::before { right: 0; width: 43vw; }
  .elementor-element-obhero01::after, [data-id="obhero01"]::after { right: 6%; width: 31vw; }
}
@media (max-width: 640px) {
  body.admin-bar .ob-site-header { top: 0; }
  .ob-header-inner, .ob-footer-inner, .ob-main-inner { padding-left: 18px; padding-right: 18px; }
  .ob-brand { font-size: 21px; }
  .ob-brand-mark { height: 29px; width: 29px; }
  .ob-header-panel { left: 12px; right: 12px; }
  .ob-main { padding: 28px 0 60px; }
  .ob-home-hero { padding: 62px 18px 56px; }
  .ob-home-hero::after { height: 250px; opacity: .75; right: -34%; top: 32%; width: 80vw; }
  .ob-home-hero__inner { gap: 30px; grid-template-columns: 1fr; }
  .ob-home-hero h1 { font-size: clamp(2.4rem,11vw,3.6rem); }
  .ob-home-hero__art { margin: 0 auto; max-width: 390px; min-height: 240px; width: 92%; }
  .ob-home-section { padding-left: 18px; padding-right: 18px; padding-top: 52px; }
  .ob-footer-grid { gap: 27px; }
  .ob-footer-grid > * { max-width: 460px; }
  .ob-footer-bottom { align-items: flex-start; flex-direction: column; }
  .ob-vendor-cta { align-items: flex-start; flex-direction: column; }
  .ob-vendor-auth__forms { grid-template-columns: 1fr; }
  .elementor-element-obhero01, [data-id="obhero01"] { padding-bottom: 48px !important; padding-top: 58px !important; }
  .elementor-element-obhero01::before, [data-id="obhero01"]::before { height: 230px; opacity: .65; right: -28%; top: 75%; width: 75vw; }
  .elementor-element-obhero01::after, [data-id="obhero01"]::after { display: none; }
  .elementor-element-obhero01 .elementor-widget-wrap > .elementor-widget, [data-id="obhero01"] .elementor-widget-wrap > .elementor-widget { max-width: 100%; }
  .elementor-element-obhero01 .elementor-heading-title, [data-id="obhero01"] .elementor-heading-title { font-size: clamp(2.35rem,10vw,3.5rem); }
}
@media (max-width: 767px) {
  .ob-footer-grid { grid-template-columns: 1fr 1fr; row-gap: 35px; }
  .ob-footer-about { grid-column: 1 / -1; }
}
@media (max-width: 480px) {
  .ob-brand { font-size: 21px; }
  .ob-brand-mark { height: 29px; width: 29px; }
  .ob-footer-grid { grid-template-columns: 1fr; }
  .ob-footer-about { grid-column: auto; }
  .ob-footer-bottom { font-size: .7rem; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Full-width, split-panel sign-in and vendor registration inspired by the supplied reference. */
body:has(.ob-vendor-auth) { background: #abc4ff; }
.ob-main-inner:has(.ob-vendor-auth) { margin: 0; max-width: none; padding: 24px clamp(16px,5vw,82px); width: 100%; }
.ob-main-inner > .page-content:has(.ob-vendor-auth) { background: transparent; border: 0; box-shadow: none; padding: 0; }
body:has(.ob-vendor-auth) .ob-page-title { display: none; }
.ob-vendor-dashboard:has(.ob-vendor-auth) { margin: 0 auto; max-width: 1580px; }
.ob-vendor-auth {
  background: #fff;
  border: 0;
  border-radius: 32px;
  box-shadow: 0 30px 90px rgba(51,67,148,.16);
  grid-template-columns: minmax(0,1.25fr) minmax(340px,.82fr);
  min-height: 720px;
  overflow: hidden;
}
.ob-vendor-auth__content { align-self: stretch; grid-column: 1; grid-row: 1; padding: clamp(30px,4.2vw,66px); }
.ob-vendor-auth__forms { align-items: start; gap: 18px; grid-template-columns: repeat(2,minmax(0,1fr)); }
.ob-vendor-auth .ob-form-card { background: #fff; border: 0; border-radius: 0; box-shadow: none; padding: 0; }
.ob-vendor-auth .ob-form-card h2 { font-size: clamp(1.55rem,2.2vw,2rem); letter-spacing: -.045em; margin: 0 0 8px; }
.ob-vendor-auth .ob-form-card form { gap: 17px; }
.ob-vendor-auth .ob-form-card label:not(.ob-checkbox) { color: #707584; font-size: .78rem; font-weight: 600; }
.ob-vendor-auth .ob-form-card input:not([type="hidden"]):not([type="checkbox"]) { background: transparent; border: 0; border-bottom: 1px solid #dfe3ee; border-radius: 0; min-height: 45px; padding: 8px 2px; }
.ob-vendor-auth .ob-form-card input:focus { border-color: #554fff; box-shadow: 0 2px 0 #554fff; outline: 0; }
.ob-vendor-auth .ob-form-card button[type="submit"] { min-height: 48px; }
.ob-vendor-auth .ob-recovery { border-top: 1px solid #edf0f6; margin-top: 28px; padding-top: 20px; }
.ob-vendor-auth .ob-recovery[open] form { margin-top: 16px; }
.ob-vendor-auth__welcome {
  align-self: stretch;
  background: linear-gradient(145deg,#5245da 0%,#6064f5 55%,#448de4 100%);
  grid-column: 2;
  grid-row: 1;
  min-height: 100%;
  overflow: hidden;
  padding: clamp(36px,4vw,66px);
  position: relative;
  z-index: 0;
}
.ob-vendor-auth__welcome::before { background: rgba(48,55,167,.56); border-radius: 0 0 0 110px; clip-path: polygon(0 0,100% 0,100% 35%,22% 100%); content: ""; inset: 0 0 auto auto; height: 36%; position: absolute; width: 100%; z-index: 0; }
.ob-vendor-auth__welcome::after { background: rgba(61,157,242,.68); border-radius: 55% 45% 0 0; bottom: -21%; content: ""; height: 46%; left: -18%; position: absolute; transform: rotate(-15deg); width: 130%; z-index: 0; }
.ob-vendor-auth__welcome > :not(.ob-auth-art) { position: relative; z-index: 2; }
.ob-vendor-auth__welcome .ob-eyebrow { color: #e6e5ff; }
.ob-vendor-auth__welcome h1 { color: #fff; font-size: clamp(2rem,3vw,3rem); letter-spacing: -.055em; line-height: 1.05; max-width: 12ch; }
.ob-vendor-auth__welcome p:not(.ob-eyebrow) { color: rgba(255,255,255,.84); font-size: .92rem; line-height: 1.75; max-width: 36ch; }
.ob-vendor-auth__welcome ul { color: #fff; font-size: .83rem; line-height: 1.75; margin-top: 20px; padding-left: 19px; }
.ob-auth-art { inset: 0; pointer-events: none; position: absolute; z-index: 1; }
.ob-auth-art__social { display: flex; gap: 22px; position: absolute; right: 9%; top: 46%; }
.ob-auth-art__social span { align-items: center; background: rgba(255,255,255,.97); border-radius: 50%; box-shadow: 0 12px 30px rgba(28,37,126,.2); color: #5d54e9; display: inline-flex; font-size: 1.45rem; font-weight: 800; height: 62px; justify-content: center; width: 62px; }
.ob-auth-art__social .ob-auth-art__play { color: #111; font-size: 1rem; }
.ob-auth-art__inbox, .ob-auth-art__privacy { background: #fff; border-radius: 23px; box-shadow: 0 22px 50px rgba(32,41,130,.22); color: #17183a; display: flex; flex-direction: column; position: absolute; }
.ob-auth-art__inbox { bottom: 29%; gap: 11px; padding: 22px 24px; right: 11%; transform: rotate(2deg); width: min(68%,290px); }
.ob-auth-art__inbox small { color: #f39a42; font-size: .68rem; font-weight: 800; letter-spacing: .1em; }
.ob-auth-art__inbox strong { font-size: clamp(1.05rem,1.8vw,1.45rem); line-height: 1.25; }
.ob-auth-art__inbox span { background: linear-gradient(90deg,#ff9d17,#5c70ff); border-radius: 99px; height: 5px; margin-top: 3px; width: 62%; }
.ob-auth-art__inbox span:last-child { background: #e7e8f0; margin-top: -8px; width: 42%; }
.ob-auth-art__privacy { bottom: 7%; gap: 5px; left: 7%; padding: 20px 22px; width: 80%; }
.ob-auth-art__privacy b { color: #f3a04d; font-size: 1.45rem; line-height: 1; }
.ob-auth-art__privacy strong { font-size: .94rem; }
.ob-auth-art__privacy small { color: #9397a6; font-size: .72rem; }

@media (max-width: 1060px) {
  .ob-vendor-auth { grid-template-columns: minmax(0,1fr); }
  .ob-vendor-auth__content { grid-column: 1; grid-row: 1; }
  .ob-vendor-auth__welcome { grid-column: 1; grid-row: 2; min-height: 470px; }
  .ob-auth-art__social { top: 34%; }
}
@media (max-width: 640px) {
  .ob-main-inner:has(.ob-vendor-auth) { padding: 14px 12px; }
  .ob-vendor-auth { border-radius: 22px; min-height: 0; }
  .ob-vendor-auth__content { padding: 28px 22px; }
  .ob-vendor-auth__forms { grid-template-columns: 1fr; }
  .ob-vendor-auth .ob-form-card + .ob-form-card { border-top: 1px solid #edf0f6; margin-top: 30px; padding-top: 28px; }
  .ob-vendor-auth__welcome { min-height: 500px; padding: 30px 24px; }
  .ob-auth-art__social { right: 7%; top: 44%; }
  .ob-auth-art__social span { height: 52px; width: 52px; }
  .ob-auth-art__inbox { bottom: 27%; right: 7%; width: 72%; }
  .ob-auth-art__privacy { bottom: 6%; left: 5%; width: 86%; }
}
