/* Design A / one stable conversation surface, CSS scoped to the new import only.
   Mobile-first widths are evaluated relative to the ACTUAL Avada column. */
.bb-form-shell:has(.bb-design-a-unified) {
  --bb-ink:#22372b; --bb-muted:#627469; --bb-accent:#176149;
  --bb-line:#dce5df; --bb-selected:#eef6f0;
  max-width:880px; padding:clamp(18px,3.2cqi,34px);
  border-radius:16px; box-shadow:0 10px 35px rgba(24,51,35,.04);
  background:#fff;
}
.bb-form-shell:has(.bb-design-a-unified) .bb-form-header {margin-bottom:13px}
.bb-form-shell:has(.bb-design-a-unified) .bb-form-header h2{font-size:clamp(18px,2.7cqi,24px);line-height:1.32;letter-spacing:-.026em;font-weight:680}
.bb-form-shell .bb-flow-first-page {min-width:0}
.bb-form-shell .bb-flow-first-page .gform_page_fields{min-width:0;display:flex;flex-direction:column}
.bb-form-shell .bb-flow-first-page .bb-a-context {
  display:flex;align-items:center;gap:10px;min-width:0;min-height:45px;
  border-bottom:1px solid #e6eee8;padding:0 0 8px;margin:0 0 15px;
  font-size:12px;line-height:1.45;font-weight:650;color:#426551;
}
.bb-form-shell .bb-flow-first-page[data-bb-stage="category"] .bb-a-context {min-height:0;border:0;padding:0;margin:0}
.bb-form-shell .bb-flow-first-page .bb-a-context-items {display:flex;gap:8px;align-items:center;min-width:0;flex:1;white-space:nowrap;overflow:hidden}
.bb-form-shell .bb-flow-first-page .bb-a-context-items span {overflow:hidden;text-overflow:ellipsis;min-width:0}
.bb-form-shell .bb-flow-first-page .bb-a-context-sep {color:#9eb0a3;flex:none}
.bb-form-shell .bb-flow-first-page .bb-a-change {
  border:0;background:transparent;color:var(--bb-accent);font:650 12px var(--bb-font);margin-left:auto;
  padding:10px 0 10px 10px;cursor:pointer;flex:none;
}
.bb-form-shell .bb-flow-first-page .bb-a-head {flex:none;margin:0 0 19px}
.bb-form-shell .bb-flow-first-page .bb-a-head h3{
  margin:0 0 8px;font:700 clamp(19px,2.8cqi,23px)/1.28 var(--bb-font);
  letter-spacing:-.026em;color:var(--bb-ink)
}
.bb-form-shell .bb-flow-first-page .bb-a-head p{margin:0;font:450 12px/1.65 var(--bb-font);color:#637a6a;max-width:54ch}
/* Keep all original GF field elements in place; only their stage visibility changes. */
.bb-form-shell .bb-flow-first-page .bb-a-options{
  min-height:300px;height:clamp(320px,52dvh,560px);max-height:580px;
  display:block !important;overflow-y:auto;overscroll-behavior:contain;
  scrollbar-width:thin;scrollbar-color:#cadae0 transparent;
  padding:1px 3px 16px 1px;margin:0;scroll-margin-top:0;
}
.bb-form-shell .bb-flow-first-page .bb-a-options > .gfield{
  grid-column:1/-1 !important;width:100% !important;max-width:none !important;margin:0 !important;
  padding:0 !important;min-width:0
}
.bb-form-shell .bb-flow-first-page .bb-a-options > .gfield{display:none !important}
.bb-form-shell .bb-flow-first-page[data-bb-stage="category"] .bb-a-options > .bb-category-choice,
.bb-form-shell .bb-flow-first-page[data-bb-stage="detail"] .bb-a-options > .bb-detail-all,
.bb-form-shell .bb-flow-first-page[data-bb-stage="products"] .bb-a-options > .bb-product-cards,
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-a-options > .bb-policy-field:not([data-bb-concealed="true"]):not([style*="display: none"]):not([style*="display:none"]):not(.gfield_visibility_hidden),
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-a-options > .bb-no-policy:not([data-bb-concealed="true"]) {display:block !important}
.bb-form-shell .bb-flow-first-page .bb-a-options .gfield_label,
.bb-form-shell .bb-flow-first-page .bb-a-options .gfield_description {display:none !important}
.bb-form-shell .bb-flow-first-page .bb-a-options :is(.bb-category-choice,.bb-detail-all,.bb-product-cards) .ginput_container {width:100%;max-width:none;min-width:0}
.bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all,.bb-product-cards) :is(.gfield_radio,.gfield_checkbox){display:grid !important;grid-template-columns:1fr !important;gap:10px !important}
.bb-form-shell .bb-flow-first-page .gchoice{min-width:0}
.bb-form-shell .bb-flow-first-page .bb-category-choice .gchoice > label,
.bb-form-shell .bb-flow-first-page .bb-detail-all .gchoice > label{
  display:flex !important;align-items:center;justify-content:space-between;gap:12px;
  min-width:0;min-height:74px !important;padding:13px 14px !important;
  border:1px solid #dae5dc !important;border-radius:13px !important;
  background:#fff !important;box-shadow:none !important;
  transition:background-color .15s,border-color .15s !important;
}
.bb-form-shell .bb-flow-first-page .bb-category-choice .gchoice > label{min-height:78px !important}
.bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all) .gchoice:hover > label{border-color:#8ebba1 !important;background:#fbfdfb !important}
.bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all) .gchoice.bb-is-checked > label,
.bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all) .gchoice:has(input:checked) > label{background:#f4faf6 !important;border-color:#70af89 !important}
.bb-form-shell .bb-flow-first-page .bb-category-choice .bb-choice-icon {display:flex;justify-content:center;align-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:11px;background:#f1f6f2;color:#427d5e}
.bb-form-shell .bb-flow-first-page .bb-category-choice .bb-choice-icon svg{width:23px;height:23px}
.bb-form-shell .bb-flow-first-page .bb-tile-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}
.bb-form-shell .bb-flow-first-page .bb-tile-title{font-size:13px;line-height:1.32;font-weight:675;color:#263f30;min-width:0;overflow-wrap:break-word}
.bb-form-shell .bb-flow-first-page .bb-tile-desc{font-size:11px;line-height:1.5;color:#647969;font-weight:450;min-width:0;overflow-wrap:break-word}
.bb-form-shell .bb-flow-first-page .bb-a-trailing{color:#a4b7aa;flex:none;margin-left:auto;display:flex;align-items:center}
.bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all) .gchoice > label::after {display:none !important}
/* Products are intentionally denser and never look like full category tiles. */
.bb-form-shell .bb-flow-first-page .bb-product-cards .gchoice > label{
  min-height:53px !important;padding:11px 13px !important;border:1px solid #dfe9e1;
  border-radius:11px;background:#fff;box-shadow:none !important;font-size:12px !important;
  font-weight:600 !important;line-height:1.45;color:#274233;
}
.bb-form-shell .bb-flow-first-page .bb-product-cards .gchoice > label::after {border-radius:6px !important;width:19px !important;height:19px !important;flex:0 0 19px}
.bb-form-shell .bb-flow-first-page .bb-product-cards .gchoice:has(input:checked) > label {background:#edf6f0;border-color:#67a57e}
.bb-form-shell .bb-flow-first-page .bb-product-cards .gchoice.bb-a-more-hidden{display:none !important}
.bb-form-shell .bb-flow-first-page .bb-a-count{display:inline-flex;color:#426a52;font-size:11px;font-weight:650;margin:0 0 12px;padding:5px 8px;border-radius:7px;background:#edf5ee}
.bb-form-shell .bb-flow-first-page .bb-a-more{display:block;border:0;width:100%;background:transparent;font:650 12px var(--bb-font);text-align:left;color:#176149;padding:16px 3px 8px;cursor:pointer}
.bb-form-shell .bb-flow-first-page .bb-a-more[hidden]{display:none}
/* Numbers: native GF conditional rules govern which fields appear. */
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-a-options{max-width:640px}
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-policy-field{margin:0 0 17px !important}
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-policy-field > .gfield_label{display:block !important;font-size:12px !important;font-weight:650 !important;margin-bottom:7px}
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-policy-field input{width:100%;min-height:49px !important;font-size:13px}
.bb-form-shell .bb-flow-first-page[data-bb-stage="numbers"] .bb-no-policy{padding:13px 0 !important;margin-top:14px !important;border-top:1px solid #e9efea}
.bb-form-shell .bb-flow-first-page .bb-a-number-error{font-size:12px;color:#a13b2d;margin:9px 0 5px}
.bb-form-shell .bb-flow-first-page .bb-a-number-error[hidden]{display:none}
/* Single fixed-location control row, not independent GF + dialog nav bars. */
.bb-form-shell .bb-flow-first-page .bb-a-nav{display:flex;align-items:center;gap:12px;min-height:78px;border-top:1px solid #e9efea;margin-top:10px;padding:12px 0 0;min-width:0}
.bb-form-shell .bb-flow-first-page .bb-a-action {display:inline-flex;align-items:center;justify-content:center;gap:11px;border:0;border-radius:11px;min-height:49px;min-width:0;padding:11px 16px;font:700 12.5px var(--bb-font);white-space:nowrap;cursor:pointer;transition:background-color .12s,border-color .12s}
.bb-form-shell .bb-flow-first-page .bb-a-primary {margin-left:auto;color:#fff;background:#176149;box-shadow:0 3px 7px rgba(23,97,73,.10)}
.bb-form-shell .bb-flow-first-page .bb-a-primary:hover{background:#0f4836}
.bb-form-shell .bb-flow-first-page .bb-a-primary:disabled{opacity:.42;cursor:not-allowed;box-shadow:none}
.bb-form-shell .bb-flow-first-page .bb-a-secondary{padding-left:0;color:#42684e;background:transparent}
.bb-form-shell .bb-flow-first-page .bb-a-secondary:hover{color:#10543b}
.bb-form-shell .bb-flow-first-page .bb-a-action:focus-visible,.bb-form-shell .bb-flow-first-page .bb-a-change:focus-visible{outline:3px solid #7dbb93;outline-offset:3px}
.bb-form-shell .bb-flow-first-page .bb-a-help{font-size:11px;color:#77877b;margin-left:auto;text-align:right}
.bb-form-shell .bb-flow-first-page .gform_page_footer{display:none !important}
.bb-form-shell .bb-flow-first-page.bb-a-enter .bb-a-options{pointer-events:none}
.bb-form-shell .bb-flow-first-page.bb-a-enter .bb-a-options > .gfield:not([style*="display: none"]){animation:bbAEnter .22s cubic-bezier(.16,1,.3,1) both}
@keyframes bbAEnter {from{opacity:.72;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
.bb-form-shell .bb-flow-first-page .bb-a-live{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
/* The remaining two native GF pages stay in normal document flow and keep their existing V4 grid. */
.bb-form-shell .bb-form-context[data-bb-visible="true"]{display:flex}
@container (min-width:580px){
  .bb-form-shell .bb-flow-first-page :is(.bb-category-choice,.bb-detail-all) :is(.gfield_radio,.gfield_checkbox),
  .bb-form-shell .bb-flow-first-page .bb-product-cards .gfield_checkbox {grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .bb-form-shell .bb-flow-first-page .bb-a-options{height:clamp(320px,46dvh,410px)}
}
@container (min-width:790px){
  .bb-form-shell .bb-flow-first-page .bb-product-cards .gfield_checkbox{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@container (max-width:430px){
  .bb-form-shell .bb-flow-first-page .bb-a-options{height:clamp(315px,53dvh,535px)}
  .bb-form-shell .bb-flow-first-page .bb-a-context{font-size:11px}
  .bb-form-shell .bb-flow-first-page .bb-a-head h3{font-size:20px}
  .bb-form-shell .bb-flow-first-page .bb-a-nav .bb-a-action{font-size:12px;padding:10px 13px}
  .bb-form-shell .bb-flow-first-page .bb-a-help{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.bb-form-shell .bb-flow-first-page *{transition:none !important;animation:none !important}}
/* The small exception checkbox must have a real 44px hit area, not an inline text box. */
.bb-form-shell .bb-flow-first-page .bb-no-policy .gchoice{min-height:44px;align-items:center !important}
.bb-form-shell .bb-flow-first-page .bb-no-policy .gchoice > label{display:flex !important;align-items:center !important;min-height:44px !important;line-height:1.5 !important;padding:0 0 0 0 !important;cursor:pointer}
/* The last GF page may use a native submit inside .gform_page_footer. */
.bb-form-shell:has(.bb-design-a-unified) .gform_page_footer input[type="submit"],
.bb-form-shell:has(.bb-design-a-unified) .gform_footer input[type="submit"]{
  appearance:none;background:#176149 !important;color:#fff !important;border:1px solid #176149 !important;
  border-radius:11px !important;min-height:50px;padding:12px 20px !important;
  font:650 13px var(--bb-font) !important;cursor:pointer;
}
.bb-form-shell:has(.bb-design-a-unified) :is(.gform_page_footer,.gform_footer) input[type="submit"]:hover{background:#0f4836 !important}
