/* Every selector is scoped to avoid WordPress theme conflicts. Container-based, not viewport-based. */
.mbp-listing{--mbp-accent:#175e88;--mbp-ink:#1c2938;--mbp-muted:#526273;--mbp-border:#e2e8ed;box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;color:var(--mbp-ink);background:#fff;font-family:system-ui,-apple-system,'Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.55;container-type:inline-size;overflow-wrap:anywhere;}
.mbp-listing *, .mbp-listing *::before,.mbp-listing *::after{box-sizing:border-box}
.mbp-listing img,.mbp-listing svg{display:block;max-width:100%}
.mbp-listing a{color:inherit;text-decoration:none}
.mbp-listing a:focus-visible{outline:3px solid #e49e28;outline-offset:3px}
.mbp-listing .mbp-hero{background:#e7eef2}
.mbp-listing .mbp-hero img{width:100%;aspect-ratio:1.56;object-fit:cover}
.mbp-listing .mbp-hero-fallback{min-height:145px;background:linear-gradient(125deg,#edf3f8,#acc7d5)}
.mbp-listing .mbp-profile{padding:0 18px 22px}
.mbp-listing .mbp-brandrow{display:flex;align-items:center;gap:13px;min-width:0;margin-top:-27px;position:relative}
.mbp-listing .mbp-logo{width:66px;height:66px;flex:0 0 66px;object-fit:contain;background:#fff;border:3px solid #fff;border-radius:18px;box-shadow:0 4px 20px #00000015}
.mbp-listing .mbp-monogram{display:grid;place-items:center;background:var(--mbp-accent);color:#fff;font-weight:850;font-size:1.4rem}
.mbp-listing .mbp-brandmeta{display:grid;gap:3px;min-width:0;padding-top:29px}
.mbp-listing .mbp-eyebrow{font-size:.75rem;font-weight:800;letter-spacing:.055em;text-transform:uppercase;color:var(--mbp-accent)}
.mbp-listing .mbp-location{font-size:.83rem;color:var(--mbp-muted)}
.mbp-listing .mbp-title{font-size:clamp(1.55rem,6cqi,2.15rem);font-weight:800;line-height:1.14;letter-spacing:-.035em;margin:13px 0 7px;color:var(--mbp-ink)}
.mbp-listing .mbp-tagline{font-size:1.1rem;font-weight:680;line-height:1.4;margin:0 0 10px;color:var(--mbp-ink)}
.mbp-listing .mbp-intro{font-size:.97rem;color:var(--mbp-muted);margin:6px 0 0}
.mbp-listing .mbp-intro p{margin:0 0 9px}
.mbp-listing .mbp-section{padding:23px 18px;border-top:1px solid var(--mbp-border)}
.mbp-listing .mbp-sectionhead h3,.mbp-listing .mbp-address h3{font-size:1.16rem;letter-spacing:-.02em;line-height:1.3;margin:0 0 5px;font-weight:800;color:var(--mbp-ink)}
.mbp-listing .mbp-sectionhead p{font-size:.85rem;margin:0 0 16px;color:var(--mbp-muted)}
.mbp-listing .mbp-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mbp-listing .mbp-action{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;min-width:0;min-height:78px;padding:12px 5px;border:1px solid #d8e1e8;border-radius:13px;background:#f9fbfc;color:var(--mbp-ink);font-size:.89rem;line-height:1.25;font-weight:720;text-align:center;transition:background-color .16s,border-color .16s}
.mbp-listing .mbp-action:hover{background:#edf4f7;border-color:#b8ceda}
.mbp-listing .mbp-action svg{width:22px;height:22px;color:var(--mbp-accent)}
.mbp-listing .mbp-action span{overflow-wrap:anywhere}
.mbp-listing .mbp-action-primary{background:var(--mbp-accent);border-color:var(--mbp-accent);color:#fff}
.mbp-listing .mbp-action-primary svg{color:#fff}
.mbp-listing .mbp-action-primary:hover{background:var(--mbp-accent);filter:brightness(.88)}
.mbp-listing .mbp-services{display:grid;gap:10px}
.mbp-listing .mbp-service{padding:15px;border:1px solid var(--mbp-border);border-radius:13px;background:#fff}
.mbp-listing .mbp-service strong{display:block;line-height:1.3;font-size:.98rem;color:var(--mbp-ink)}
.mbp-listing .mbp-service p{margin:5px 0 0;font-size:.88rem;color:var(--mbp-muted)}
.mbp-listing .mbp-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mbp-listing .mbp-gallery figure{min-width:0;margin:0}
.mbp-listing .mbp-gallery a{display:block;border-radius:12px;overflow:hidden;background:#edf3f7}
.mbp-listing .mbp-gallery img{width:100%;aspect-ratio:1.1;object-fit:cover;transition:transform .2s}
.mbp-listing .mbp-gallery a:hover img{transform:scale(1.025)}
.mbp-listing .mbp-gallery figcaption{font-size:.79rem;color:var(--mbp-muted);margin:6px 2px 0}
.mbp-listing .mbp-address p{margin:5px 0 10px;color:var(--mbp-muted)}
.mbp-listing .mbp-address a{display:inline-flex;align-items:center;gap:6px;color:var(--mbp-accent);text-decoration:underline;font-weight:700;min-height:44px}
.mbp-listing .mbp-address svg{width:18px;height:18px}
.mbp-listing .mbp-footer{padding:17px 18px 23px;text-align:center;border-top:1px solid var(--mbp-border);font-size:.75rem;color:var(--mbp-muted)}
@container (max-width:350px){.mbp-listing .mbp-action{min-height:76px;padding:10px 4px}.mbp-listing .mbp-profile,.mbp-listing .mbp-section{padding-left:13px;padding-right:13px}.mbp-listing .mbp-actions{gap:8px}}
@container (max-width:240px){.mbp-listing .mbp-actions,.mbp-listing .mbp-gallery{grid-template-columns:minmax(0,1fr)}.mbp-listing .mbp-action{flex-direction:row;min-height:50px}.mbp-listing .mbp-brandrow{flex-wrap:wrap}.mbp-listing .mbp-brandmeta{padding-top:0}.mbp-listing .mbp-logo{width:54px;height:54px;flex-basis:54px}}
@media (prefers-reduced-motion:reduce){.mbp-listing .mbp-action,.mbp-listing .mbp-gallery img{transition:none}}

/* 2.1: Listable narrow-column and 200%-zoom hardening. Keep overrides INSIDE widget. */
body .mbp-listing{display:block!important;position:relative!important;float:none!important;clear:both!important;inline-size:100%!important;width:100%!important;max-inline-size:100%!important;max-width:100%!important;min-inline-size:0!important;min-width:0!important;margin:0!important;padding:0!important;overflow:hidden!important;isolation:isolate;contain:layout style;}
body .mbp-listing :where(header,nav,section,footer,div,figure,h2,h3,p){max-inline-size:100%;min-inline-size:0;overflow-wrap:anywhere;word-break:normal;}
body .mbp-listing .mbp-profile,body .mbp-listing .mbp-section,body .mbp-listing .mbp-footer{float:none!important;position:relative!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;}
body .mbp-listing .mbp-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;min-width:0!important;align-items:stretch!important;gap:8px!important;}
body .mbp-listing .mbp-action{display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;position:relative!important;float:none!important;inline-size:auto!important;width:auto!important;max-width:100%!important;min-width:0!important;min-height:68px!important;height:auto!important;margin:0!important;padding:10px 5px!important;box-sizing:border-box!important;line-height:1.25!important;font-size:14px!important;font-weight:700!important;letter-spacing:normal!important;text-transform:none!important;text-align:center!important;overflow-wrap:anywhere!important;white-space:normal!important;text-decoration:none!important;border-radius:12px!important;}
body .mbp-listing .mbp-action:not(.mbp-action-primary){color:#1c2938!important;background:#f9fbfc!important;border:1px solid #d8e1e8!important;}
body .mbp-listing .mbp-action-primary{color:#fff!important;background:var(--mbp-accent)!important;border:1px solid var(--mbp-accent)!important;}
body .mbp-listing .mbp-action span{display:block!important;color:inherit!important;font:inherit!important;line-height:1.25!important;text-align:center!important;max-width:100%!important;min-width:0!important;}
body .mbp-listing .mbp-action svg{display:block!important;flex:none!important;width:20px!important;height:20px!important;color:inherit!important;stroke:currentColor!important;}
body .mbp-listing .mbp-title{font-family:inherit!important;font-size:clamp(22px,5cqi,32px)!important;line-height:1.17!important;letter-spacing:-.025em!important;font-weight:800!important;text-transform:none!important;color:var(--mbp-ink)!important;overflow-wrap:anywhere!important;}
body .mbp-listing .mbp-sectionhead h3,body .mbp-listing .mbp-address h3{font-family:inherit!important;font-size:18px!important;line-height:1.32!important;color:var(--mbp-ink)!important;text-transform:none!important;letter-spacing:normal!important;}
body .mbp-listing .mbp-tagline{font-family:inherit!important;font-size:16px!important;line-height:1.45!important;}
body .mbp-listing .mbp-intro,body .mbp-listing .mbp-intro p{font-family:inherit!important;font-size:15px!important;line-height:1.6!important;color:var(--mbp-muted)!important;}
body .mbp-listing .mbp-hero{position:relative!important;float:none!important;overflow:hidden!important;width:100%!important;min-width:0!important;max-width:100%!important;}
body .mbp-listing .mbp-hero img{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;height:auto!important;aspect-ratio:16/10!important;object-fit:cover!important;margin:0!important;}
body .mbp-listing .mbp-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;max-width:100%!important;}
body .mbp-listing .mbp-gallery figure,body .mbp-listing .mbp-gallery a{display:block!important;min-width:0!important;max-width:100%!important;width:100%!important;margin:0!important;}
body .mbp-listing .mbp-gallery img{width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:1.1!important;object-fit:cover!important;}
body .mbp-listing .mbp-brandrow{max-width:100%!important;min-width:0!important;}
body .mbp-listing .mbp-brandmeta{flex:1 1 0;min-width:0!important;}
/* The container width (not the browser window) determines reflow. */
@container (max-width:420px){body .mbp-listing .mbp-profile,body .mbp-listing .mbp-section{padding-left:12px!important;padding-right:12px!important}body .mbp-listing .mbp-title{font-size:clamp(21px,6cqi,26px)!important}}
@container (max-width:295px){body .mbp-listing .mbp-actions{grid-template-columns:minmax(0,1fr)!important}body .mbp-listing .mbp-action{flex-direction:row!important;min-height:48px!important;gap:10px!important}}
/* Specific Listable content containers: permit shrinkage without affecting its map/sidebar. */
body.single-job_listing .entry-content:has(.mbp-listing),body.single-job_listing .entry-content-wrapper:has(.mbp-listing),body.single-job_listing .job_description:has(.mbp-listing),body.single-job_listing .single_job_listing:has(.mbp-listing){min-width:0;max-width:100%;overflow-wrap:anywhere;}

/* Version 2.2: constrain Listable's native content wrappers without changing the map/sidebar. */
body.mbp-listable-integrated .single_job_listing,
body.mbp-listable-integrated .single_job_listing .entry-content,
body.mbp-listable-integrated .single_job_listing .job_description,
body.mbp-listable-integrated .entry-content:has(.mbp-listing){min-width:0;max-width:100%;box-sizing:border-box;}
body.mbp-listable-integrated .single_job_listing .entry-content img,
body.mbp-listable-integrated .single_job_listing .job_description img,
body.mbp-listable-integrated .entry-content:has(.mbp-listing) img:not(.mbp-logo){max-width:100%;height:auto;}
body.mbp-listable-integrated .entry-content:has(.mbp-listing) iframe,
body.mbp-listable-integrated .job_description iframe{max-width:100%;}
body.mbp-listable-integrated .entry-content:has(.mbp-listing) h1,
body.mbp-listable-integrated .single_job_listing h1.entry-title{max-width:100%;overflow-wrap:anywhere;font-size:clamp(1.5rem,3vw,2.4rem);line-height:1.18;}
body.mbp-listable-integrated .entry-content:has(.mbp-listing) table,
body.mbp-listable-integrated .entry-content:has(.mbp-listing) pre{max-width:100%;overflow-x:auto;}
/* Avoid duplicate margins/backgrounds when the MyBuyPage showcase replaces the original description. */
body.mbp-listable-compact .entry-content:has(> .mbp-listing),
body.mbp-listable-compact .job_description:has(> .mbp-listing){min-width:0;max-width:100%;padding-inline:0;}
body.mbp-listable-compact .mbp-listing{width:100%!important;max-width:100%!important;}

/* V2.5: prominently featured custom action. Spans BOTH grid columns,
   stays double-height even when Listable overrides default button styles. */
body .mbp-listing .mbp-actions > a.mbp-action-featured{
  grid-column:1 / -1!important;
  min-height:156px!important;
  width:100%!important;
  padding:20px 16px!important;
  display:flex!important;flex-direction:column!important;gap:9px!important;
  background:var(--mbp-featured-color,var(--mbp-accent))!important;
  border:1px solid var(--mbp-featured-color,var(--mbp-accent))!important;
  color:#fff!important;border-radius:14px!important;
  text-decoration:none!important;box-sizing:border-box!important;
}
body .mbp-listing .mbp-actions > a.mbp-action-featured:hover{filter:brightness(.9)}
body .mbp-listing .mbp-actions > a.mbp-action-featured svg{width:26px!important;height:26px!important;color:#fff!important}
body .mbp-listing .mbp-actions > a.mbp-action-featured .mbp-featured-label{font-size:clamp(17px,4.5cqi,22px)!important;font-weight:800!important;line-height:1.25!important;color:#fff!important}
body .mbp-listing .mbp-actions > a.mbp-action-featured .mbp-featured-note{font-size:13px!important;line-height:1.4!important;font-weight:450!important;color:#fff!important;opacity:.95}
@container (max-width:295px){
 body .mbp-listing .mbp-actions > a.mbp-action-featured{flex-direction:column!important;min-height:148px!important}
}


/* V2.7 premium design tokens, all scoped to the generated listing. */
body .mbp-listing.mbp-premium-theme{
  background:var(--mbp-bg)!important;color:var(--mbp-ink)!important;
  border:1px solid var(--mbp-border)!important;border-radius:var(--mbp-radius)!important;
  box-shadow:var(--mbp-shadow)!important;overflow:hidden!important;
  font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
}
body .mbp-listing.mbp-premium-theme .mbp-hero{background:var(--mbp-secondary)!important;}
body .mbp-listing.mbp-premium-theme .mbp-profile{background:var(--mbp-card)!important;padding-top:1px!important;padding-bottom:21px!important;}
body .mbp-listing.mbp-premium-theme .mbp-profile .mbp-title,
body .mbp-listing.mbp-premium-theme .mbp-profile .mbp-tagline,
body .mbp-listing.mbp-premium-theme .mbp-sectionhead h3,
body .mbp-listing.mbp-premium-theme .mbp-address h3,
body .mbp-listing.mbp-premium-theme .mbp-service strong{color:var(--mbp-ink)!important;}
body .mbp-listing.mbp-premium-theme .mbp-profile .mbp-intro,
body .mbp-listing.mbp-premium-theme .mbp-profile .mbp-intro p,
body .mbp-listing.mbp-premium-theme .mbp-sectionhead p,
body .mbp-listing.mbp-premium-theme .mbp-service p,
body .mbp-listing.mbp-premium-theme .mbp-address p,
body .mbp-listing.mbp-premium-theme .mbp-location,
body .mbp-listing.mbp-premium-theme .mbp-footer{color:var(--mbp-muted)!important;}
body .mbp-listing.mbp-premium-theme .mbp-section{background:var(--mbp-bg)!important;border-top:1px solid var(--mbp-border)!important;}
body .mbp-listing.mbp-premium-theme .mbp-actions{gap:10px!important;}
body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action:not(.mbp-action-primary):not(.mbp-action-featured){
  background:var(--mbp-secondary)!important;color:var(--mbp-secondary-text)!important;
  border:1px solid var(--mbp-border)!important;
}
body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action-primary{
  background:var(--mbp-primary)!important;color:var(--mbp-primary-text)!important;
  border:1px solid var(--mbp-primary)!important;
}
body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action:not(.mbp-action-featured){
  border-radius:clamp(10px,3cqi,16px)!important;min-height:78px!important;
  padding:13px 7px!important;box-shadow:0 2px 4px rgba(0,0,0,.035)!important;
  transition:filter .16s ease, transform .16s ease,box-shadow .16s ease!important;
}
body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action svg{color:inherit!important;}
body .mbp-listing.mbp-premium-theme .mbp-actions > a.mbp-action-featured{
  color:var(--mbp-featured-text)!important;
  border-radius:clamp(12px,4cqi,19px)!important;
  box-shadow:0 5px 16px rgba(0,0,0,.12)!important;
}
body .mbp-listing.mbp-premium-theme .mbp-actions > a.mbp-action-featured svg,
body .mbp-listing.mbp-premium-theme .mbp-actions > a.mbp-action-featured .mbp-featured-label,
body .mbp-listing.mbp-premium-theme .mbp-actions > a.mbp-action-featured .mbp-featured-note{color:var(--mbp-featured-text)!important;}
body .mbp-listing.mbp-premium-theme .mbp-service{background:var(--mbp-card)!important;border-color:var(--mbp-border)!important;border-radius:14px!important;}
body .mbp-listing.mbp-premium-theme .mbp-gallery a{border-radius:14px!important;background:var(--mbp-secondary)!important;}
body .mbp-listing.mbp-premium-theme .mbp-logo{background:var(--mbp-card)!important;border-color:var(--mbp-card)!important;}
body .mbp-listing.mbp-premium-theme .mbp-monogram{background:var(--mbp-primary)!important;color:var(--mbp-primary-text)!important;}
body .mbp-listing.mbp-premium-theme .mbp-eyebrow,
body .mbp-listing.mbp-premium-theme .mbp-address a{color:var(--mbp-accent)!important;}
body .mbp-listing.mbp-premium-theme .mbp-footer{background:var(--mbp-card)!important;border-top:1px solid var(--mbp-border)!important;}
body .mbp-listing.mbp-premium-theme a:focus-visible{outline:3px solid var(--mbp-ink)!important;outline-offset:3px!important;}
@media (hover:hover){
  body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action:hover{filter:brightness(.94);transform:translateY(-1px);}
}
@container (max-width:295px){
  body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action:not(.mbp-action-featured){min-height:50px!important;}
}
@media(prefers-reduced-motion:reduce){body .mbp-listing.mbp-premium-theme .mbp-actions > .mbp-action{transition:none!important;transform:none!important;}}
