/* BuilderCE why-choose section: approved five-card 3/2 layout, immediately
   following the BBB trust band. Does not touch global branding or commerce UI. */
.bce-why {
  --bce-why-navy: #0b2f59;
  --bce-why-blue: #0b67ba;
  --bce-why-gold: #f2a900;
  --bce-why-ink: #294967;
  padding: 8px 0 54px;
  background: #fff;
  color: var(--bce-why-navy);
  font-family: 'Source Sans 3', Arial, sans-serif;
}
.bce-why *, .bce-why *::before, .bce-why *::after { box-sizing: border-box; }
.bce-why__heading { text-align: center; margin: 0 auto 28px; }
.bce-why__eyebrow {
  display: flex; justify-content: center; align-items: center; gap: 15px;
  margin: 0 0 12px; font: 800 12px/1.5 Montserrat, Arial, sans-serif;
  color: #a36a00; text-transform: uppercase; letter-spacing: .14em;
}
.bce-why__eyebrow::before, .bce-why__eyebrow::after {
  content: ''; width: 38px; height: 2px; background: var(--bce-why-gold);
}
.bce-why__heading h2 {
  margin: 0 0 10px; font: 800 clamp(26px, 3.2vw, 43px)/1.17 Montserrat, Arial, sans-serif;
  letter-spacing: -.035em; color: var(--bce-why-navy);
}
.bce-why__heading h2 span { color: var(--bce-why-blue); }
.bce-why__heading > p:last-child { margin: 0; color: #3d5873; font-size: clamp(16px, 1.6vw, 20px); line-height: 1.45; }
.bce-why__cards {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 17px; margin: 0 auto 23px; max-width: 1190px;
}
.bce-why__card {
  display: flex; flex-direction: column; justify-content: flex-start; align-items: center;
  grid-column: span 2; min-width: 0; min-height: 219px; padding: 20px 16px 22px;
  text-align: center; background: #fff; border: 1px solid #d9e6f2;
  border-radius: 11px; box-shadow: 0 7px 20px rgba(11, 47, 89, .045);
}
.bce-why__card:nth-child(4) { grid-column: 2 / span 2; }
.bce-why__card:nth-child(5) { grid-column: 4 / span 2; }
.bce-why__icon {
  display: grid; place-items: center; width: 94px; height: 94px; flex: 0 0 94px;
  margin: 0 0 8px; border-radius: 50%; background: #f0f6fc;
  color: #0b2f59;
}
.bce-why__icon > svg { width: 83px; height: 83px; max-width: 100%; }
.bce-why__icon--wide { width: 155px; }
.bce-why__icon--wide > svg { width: 153px; height: 79px; max-width: none; }
.bce-why__card h3 {
  margin: 0 0 8px; color: var(--bce-why-navy);
  font: 800 clamp(16px, 1.65vw, 20px)/1.22 Montserrat, Arial, sans-serif;
  letter-spacing: -.022em;
}
.bce-why__card p {
  max-width: 315px; margin: 0; color: var(--bce-why-ink);
  font-size: clamp(14px, 1.25vw, 17px); line-height: 1.5;
}
.bce-why__guidance {
  position: relative; isolation: isolate; display: flex; align-items: center; justify-content: space-between;
  gap: 22px; min-height: 118px; margin: 0 auto 12px;
  padding: 22px 29px 22px 36px; overflow: hidden;
  border-radius: 11px; background: linear-gradient(105deg,#eaf4fc 0%,#eaf4fc 54%,#edf5fc 100%);
}
.bce-why__guidance::before {
  content: ''; position: absolute; inset: 0 0 0 auto; width: 46%;
  background: url('/brands/builderce/homepage/florida-pe-bridge.webp') center 51%/cover no-repeat;
  opacity: .16; -webkit-mask-image: linear-gradient(to right, transparent, black 45%);
  mask-image: linear-gradient(to right, transparent, black 45%); z-index: -1;
}
.bce-why__guidance-copy { max-width: 780px; border-left: 4px solid var(--bce-why-gold); padding-left: 22px; }
.bce-why__guidance h3 { margin: 0 0 5px; color: var(--bce-why-navy); font: 800 clamp(20px, 2.35vw, 28px)/1.2 Montserrat, Arial, sans-serif; letter-spacing: -.02em; }
.bce-why__guidance p { margin: 0; color: #324f6f; font-size: clamp(14px, 1.4vw, 17px); line-height: 1.48; }
.bce-why__guidance-tagline { flex: 0 0 170px; color: #0b2f59; font: 800 19px/1.35 Montserrat, Arial, sans-serif; letter-spacing: -.015em; text-transform: none; text-align: right; }
.bce-why__support {
  display: flex; align-items: center; gap: 17px; min-height: 78px;
  padding: 12px 23px; border: 1px solid #d8e5f2; border-radius: 10px;
  background: #fff; color: var(--bce-why-navy) !important;
  text-decoration: none !important;
}
.bce-why__support:hover { background: #f5faff; border-color: #86b6e2; }
.bce-why__support:focus-visible { outline: 3px solid var(--bce-why-gold); outline-offset: 3px; }
.bce-why__support-icon { display: grid; place-items: center; flex: 0 0 61px; width: 61px; height: 61px; border-radius: 50%; background: #f0f6fc; color: #0b67ba; }
.bce-why__support-icon svg { width: 35px; height: 35px; }
.bce-why__support-copy { flex: 1 1 auto; display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.bce-why__support-copy strong { font: 800 16px/1.2 Montserrat, Arial, sans-serif; }
.bce-why__support-copy small { color: #405c78; font-size: 14px; line-height: 1.4; }
.bce-why__support-tail { flex: 0 1 320px; padding: 8px 18px; border-left: 1px solid #cfdfed; color: #395776; font-size: 14px; line-height: 1.45; text-align: center; }
.bce-why__support-arrow { color: #0b67ba; font: 600 33px/1 Arial, sans-serif; }
@media (max-width: 900px) {
  .bce-why__cards { gap: 12px; }
  .bce-why__card { padding: 18px 12px 20px; min-height: 228px; }
  .bce-why__support-tail { display: none; }
}
@media (max-width: 700px) {
  .bce-why { padding: 6px 0 35px; }
  .bce-why__eyebrow { font-size: 10px; gap: 8px; letter-spacing: .08em; }
  .bce-why__eyebrow::before,.bce-why__eyebrow::after { width: 19px; }
  .bce-why__cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .bce-why__card, .bce-why__card:nth-child(4), .bce-why__card:nth-child(5) { grid-column: auto; min-height: 214px; }
  .bce-why__card:last-child { grid-column: 1 / -1; justify-self: center; width: min(100%, 320px); }
  .bce-why__icon { width: 80px; height: 80px; flex-basis: 80px; }
  .bce-why__icon > svg { width: 71px; height: 71px; }
  .bce-why__icon--wide { width: 137px; }
  .bce-why__icon--wide > svg { width: 130px; height: 68px; }
  .bce-why__guidance { padding: 17px 20px; min-height: 122px; }
  .bce-why__guidance-copy { padding-left: 14px; }
  .bce-why__guidance-tagline { display: none; }
}
@media (max-width: 440px) {
  .bce-why__cards { grid-template-columns: minmax(0, 1fr); }
  .bce-why__card,.bce-why__card:last-child { width: 100%; min-height: 0; padding: 19px 17px 22px; }
  .bce-why__icon { margin-bottom: 6px; }
  .bce-why__guidance p { font-size: 14px; }
  .bce-why__support { gap: 12px; padding: 11px 12px; }
  .bce-why__support-icon { flex-basis: 45px; width: 45px; height: 45px; }
  .bce-why__support-icon svg { width: 28px; height: 28px; }
  .bce-why__support-copy strong { font-size: 14px; }
  .bce-why__support-copy small { font-size: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .bce-why__support { scroll-behavior: auto; }
}
