/* Expo-inspired banners for primary Bubba Hub pages. Images are hosted on the live site. */
.bh-my-hub .my-hub-page .my-hub-hero,
.bh-support .app-shell .support-hero{
 position:relative;isolation:isolate;overflow:hidden;
 min-height:clamp(300px,33vw,460px);border-radius:28px;
 background-color:#e2f3e6;background-position:center;background-size:cover;
 border:1px solid #d5e8d9;box-shadow:0 14px 36px #174e3b14;
 display:flex;align-items:center;padding:clamp(24px,5vw,58px);
}
.bh-my-hub .my-hub-page .my-hub-hero{background-image:linear-gradient(90deg,rgba(241,250,240,.97) 0%,rgba(241,250,240,.89) 38%,rgba(241,250,240,.06) 75%),url('/images/logos/34009-20261020-161813-7ef461.png')}
.bh-support .app-shell .support-hero{background-image:linear-gradient(90deg,rgba(241,250,240,.97) 0%,rgba(241,250,240,.89) 38%,rgba(241,250,240,.06) 75%),url('/images/logos/34010-20261020-161837-601b1e.png')}
.bh-my-hub .my-hub-hero-copy,.bh-support .support-hero>div:first-child{position:relative;z-index:1;max-width:620px}
.bh-my-hub .my-hub-page .my-hub-hero h1,.bh-support .app-shell .support-hero h1{font-size:clamp(2.4rem,4.7vw,4.2rem);line-height:1.08;letter-spacing:-.035em;color:#174e3b}
.bh-my-hub .my-hub-page .my-hub-hero p,.bh-support .app-shell .support-hero p{color:#174e3b}
.bh-directory [data-bh-directory-hero-placeholder]{position:relative;overflow:hidden;min-height:clamp(260px,28vw,400px);border-radius:28px;background-color:#e2f3e6;background-image:linear-gradient(90deg,rgba(241,250,240,.96),rgba(241,250,240,.84) 42%,rgba(241,250,240,.05) 80%),url('/images/logos/34011-20261020-161900-68d306.png');background-size:cover;background-position:center}
.bh-directory [data-bh-directory-hero-placeholder] :is(h1,h2,p){color:#174e3b}
@media(max-width:700px){
 .bh-my-hub .my-hub-page .my-hub-hero,.bh-support .app-shell .support-hero{min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:24px 19px 190px;border-radius:24px;background-position:center,bottom center;background-size:cover,auto 100%}
 .bh-my-hub .my-hub-page .my-hub-hero{background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.96) 48%,rgba(239,249,239,.06) 100%),url('/images/logos/34009-20261020-161813-7ef461.png')}
 .bh-support .app-shell .support-hero{background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.96) 48%,rgba(239,249,239,.06) 100%),url('/images/logos/34010-20261020-161837-601b1e.png')}
 .bh-directory [data-bh-directory-hero-placeholder]{min-height:300px;background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.88) 48%,rgba(239,249,239,.05) 100%),url('/images/logos/34011-20261020-161900-68d306.png');background-position:center,bottom center}
 .bh-my-hub .my-hub-page .my-hub-hero h1,.bh-support .app-shell .support-hero h1{font-size:clamp(2.25rem,9vw,3.5rem)}
}

/* Class Leaders portal banner */
.bh-leader-v2 .bh-leader-page .bh-leader-hero{
 min-height:clamp(290px,30vw,430px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
 padding:clamp(26px,5vw,58px);border:1px solid #d5e8d9;border-radius:28px;
 background:linear-gradient(90deg,rgba(241,250,240,.97),rgba(241,250,240,.87) 40%,rgba(241,250,240,.05) 78%),url('/images/logos/34013-20261020-162201-5c57b4.png') center/cover no-repeat;
 box-shadow:0 14px 36px #174e3b14;color:#174e3b;
}
.bh-leader-v2 .bh-leader-page .bh-leader-hero :is(h1,p){color:#174e3b;position:relative;z-index:1}
@media(max-width:700px){
 .bh-leader-v2 .bh-leader-page .bh-leader-hero{
  min-height:360px;justify-content:flex-start;padding:24px 19px 170px;border-radius:24px;
  background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.95) 48%,rgba(239,249,239,.06) 100%),url('/images/logos/34013-20261020-162201-5c57b4.png');
  background-position:center,bottom center;
 }
}

/* My Account welcome banner */
.bh-account-v2 .app-shell>.page-heading{
 min-height:clamp(290px,30vw,430px);display:flex;align-items:center;
 padding:clamp(26px,5vw,58px);border:1px solid #d5e8d9;border-radius:28px;
 background:linear-gradient(90deg,rgba(241,250,240,.97),rgba(241,250,240,.87) 40%,rgba(241,250,240,.05) 78%),url('/images/logos/34015-20261020-162346-d170b4.png') center/cover no-repeat;
 box-shadow:0 14px 36px #174e3b14;
}
.bh-account-v2 .app-shell>.page-heading>div{max-width:620px;position:relative;z-index:1}
.bh-account-v2 .app-shell>.page-heading :is(h1,p){color:#174e3b}
.bh-account-v2 .app-shell>.page-heading h1{font-family:'Quicksand',Calibri,Arial,sans-serif;font-size:clamp(2.4rem,4.7vw,4.2rem);line-height:1.08;letter-spacing:-.035em}
@media(max-width:700px){
 .bh-account-v2 .app-shell>.page-heading{
  min-height:360px;align-items:flex-start;padding:24px 19px 170px;border-radius:24px;
  background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.95) 48%,rgba(239,249,239,.06) 100%),url('/images/logos/34015-20261020-162346-d170b4.png');
  background-position:center,bottom center;
 }
 .bh-account-v2 .app-shell>.page-heading h1{font-size:clamp(2.25rem,9vw,3.5rem)}
}

/* My Hub: reserve a readable left column and keep actions/Pro from overlapping the photograph. */
@media(min-width:901px){
 .bh-my-hub .my-hub-page .my-hub-hero{
  display:grid;grid-template-columns:minmax(0,440px) minmax(0,1fr);
  grid-template-rows:auto auto auto;align-content:center;align-items:start;
  justify-items:start;gap:14px 24px;min-height:410px;
  padding:36px clamp(28px,4vw,56px);background-position:center;
 }
 .bh-my-hub .my-hub-hero-copy,.bh-my-hub .my-hub-hero-actions,.bh-my-hub .hub-pro-pitch:not([hidden]){grid-column:1;min-width:0;max-width:440px}
 .bh-my-hub .my-hub-hero-copy{grid-row:1}
 .bh-my-hub .my-hub-hero-actions{grid-row:2;display:flex;gap:8px;flex-wrap:wrap}
 .bh-my-hub .my-hub-hero-actions .button{font-size:.9rem;padding:9px 14px}
 .bh-my-hub .hub-pro-pitch:not([hidden]){grid-row:3;display:flex;flex-wrap:wrap;gap:8px 12px;padding:12px 0 0;border-top:1px solid #174e3b26;font-size:.88rem}
 .bh-my-hub .hub-pro-pitch:not([hidden]) span{flex-basis:100%}
 .bh-my-hub .hub-pro-pitch .button{justify-self:start}
 .bh-my-hub .my-hub-page .my-hub-hero h1{font-size:clamp(2.4rem,3.6vw,3.8rem)}
 .bh-my-hub .my-hub-page .my-hub-hero p{max-width:350px}
}
@media(min-width:701px) and (max-width:900px){
 .bh-my-hub .my-hub-page .my-hub-hero{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:12px;min-height:390px;padding:30px;background-position:center}
 .bh-my-hub .my-hub-hero-copy,.bh-my-hub .my-hub-hero-actions,.bh-my-hub .hub-pro-pitch:not([hidden]){max-width:52%}
 .bh-my-hub .hub-pro-pitch:not([hidden]){display:flex;flex-wrap:wrap;gap:8px;padding-top:10px}
}
@media(max-width:700px){
 .bh-my-hub .my-hub-page .my-hub-hero{display:flex;flex-direction:column;align-items:stretch;gap:16px;padding:24px 20px 180px;background-size:cover,auto 100%;background-position:center,bottom center}
 .bh-my-hub .my-hub-hero-actions{display:flex;flex-direction:column;gap:9px}
 .bh-my-hub .my-hub-hero-actions .button{width:100%}
 .bh-my-hub .hub-pro-pitch:not([hidden]){display:flex;flex-direction:column;gap:10px;padding-top:14px}
 .bh-my-hub .hub-pro-pitch .button{width:100%}
}


/* Site-wide responsive banner and control repair — 20 October 2026.
   Scope deliberately limited to primary page banners to avoid altering forms/admin. */
:where(.bh-my-hub,.bh-directory-v2,.bh-help-v2,.bh-leader-v2,.bh-account-v2) :is(.my-hub-hero,.directory-hero,.help-hero,.bh-leader-hero,.page-heading) {
  box-sizing:border-box;max-width:100%;min-width:0;
}
.bh-my-hub .my-hub-page .my-hub-hero :is(.button,.hub-pro-pitch .button){
  box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;
  min-height:48px;height:auto;max-width:100%;padding:11px 18px;
  font-size:clamp(.9rem,2.8vw,1rem);line-height:1.3;text-align:center;
  border-radius:999px;white-space:normal;overflow-wrap:anywhere;
}
.bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions .button-soft{
  background:#174e3b;color:#fff;border:1px solid #174e3b;
}
.bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions .button-soft:hover{
  background:#226b50;color:#fff;
}
.bh-my-hub .my-hub-page .my-hub-hero .hub-pro-pitch:not([hidden]){
  box-sizing:border-box;color:#174e3b;
}
.bh-my-hub .my-hub-page .my-hub-hero .hub-pro-pitch :is(strong,span){
  color:#174e3b;line-height:1.45;overflow-wrap:anywhere;
}
@media(max-width:700px){
  .bh-my-hub .my-hub-page .my-hub-hero{
    box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;
    justify-content:flex-start;gap:14px;min-height:0;
    padding:22px 18px 155px;border-radius:24px;
    background-size:cover;background-position:center bottom;
  }
  .bh-my-hub .my-hub-page .my-hub-hero :is(.my-hub-hero-copy,.my-hub-hero-actions,.hub-pro-pitch:not([hidden])){
    width:100%;max-width:100%;min-width:0;
  }
  .bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions{
    display:flex;flex-direction:column;align-items:stretch;gap:10px;
  }
  .bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions .button{
    width:100%;min-height:48px;padding:11px 16px;
  }
  .bh-my-hub .my-hub-page .my-hub-hero .hub-pro-pitch:not([hidden]){
    display:flex;flex-direction:column;align-items:stretch;gap:10px;
    padding:14px;border:1px solid #d7e6da;border-radius:18px;
    background:rgba(246,251,245,.96);box-shadow:0 5px 16px rgba(23,78,59,.07);
    font-size:clamp(.9rem,3.6vw,1rem);
  }
  .bh-my-hub .my-hub-page .my-hub-hero .hub-pro-pitch .button{
    width:100%;justify-self:stretch;min-height:48px;
  }
  :where(.bh-directory-v2,.bh-help-v2,.bh-leader-v2,.bh-account-v2) :is(.directory-hero,.help-hero,.bh-leader-hero,.page-heading){
    max-width:100%;overflow-wrap:anywhere;
  }
}
@media(max-width:380px){
  .bh-my-hub .my-hub-page .my-hub-hero{padding:18px 14px 130px}
}

/* Fix XXL CTA root cause: legacy flex-basis:190px expands vertically in column layout. */
@media(max-width:700px){
 .bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions .button,
 .bh-my-hub .my-hub-page .my-hub-hero .hub-pro-pitch .button{
  flex:0 0 auto !important;align-self:stretch;height:auto !important;
  min-height:48px !important;max-height:none;padding:12px 16px !important;
  font-size:16px !important;line-height:1.35 !important;
 }
 .bh-my-hub .my-hub-page .my-hub-hero .my-hub-hero-actions{flex:0 0 auto !important}
}

/* Directory photo banner: independent of the asynchronously loaded search filters. */
.bh-directory .bh-directory-banner{
 display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;
 width:100%;min-height:clamp(240px,26vw,360px);margin:18px 0 22px;
 padding:clamp(24px,5vw,60px);border-radius:26px;border:1px solid #d5e8d9;
 background-color:#eaf5e9;background-image:linear-gradient(90deg,rgba(239,249,239,.98) 0%,rgba(239,249,239,.88) 37%,rgba(239,249,239,.03) 76%),url('/images/logos/34011-20261020-161900-68d306.png');background-position:center;background-size:cover;background-repeat:no-repeat;
 box-shadow:0 14px 36px #174e3b14;
}
.bh-directory .bh-directory-banner-copy{position:relative;z-index:1;max-width:min(560px,57%)}
.bh-directory .bh-directory-banner-kicker{font-size:.82rem;letter-spacing:.14em;font-weight:800;color:#278c83}
.bh-directory .bh-directory-banner h1{font-family:'Quicksand',Calibri,Arial,sans-serif;font-size:clamp(2.2rem,4.5vw,4.2rem);line-height:1.08;margin:12px 0;color:#174e3b}
.bh-directory .bh-directory-banner p{font-size:clamp(1rem,1.5vw,1.2rem);line-height:1.5;color:#174e3b}
.bh-directory [data-bh-popular-categories]{display:none!important}
@media(max-width:700px){
 .bh-directory .bh-directory-banner{min-height:350px;align-items:flex-start;padding:24px 20px 170px;border-radius:22px;background-image:linear-gradient(180deg,#eff9ef 0%,rgba(239,249,239,.93) 43%,rgba(239,249,239,.04) 100%),url('/images/logos/34011-20261020-161900-68d306.png');background-position:center,bottom center;background-size:cover,auto 100%}
 .bh-directory .bh-directory-banner-copy{max-width:100%}
 .bh-directory .bh-directory-banner h1{font-size:clamp(2rem,8vw,3rem)}
}
