/* Presentation only: existing executive-media destination and arrow retained. */
.executive-cta-section { background: var(--brand-white); padding: 0 0 clamp(48px,6vw,80px); }
.executive-service-callout {
  position: relative; isolation: isolate; display: grid;
  grid-template-columns: minmax(0,1fr) auto; align-items: end;
  gap: 32px; margin: 0; padding: clamp(28px,4vw,48px);
  min-height: 260px; overflow: hidden; border: 0; border-radius: 20px;
  background: linear-gradient(115deg, var(--brand-brand-blue), var(--brand-electric-blue));
  color: var(--brand-white); text-align: left; text-decoration: none;
}
.executive-service-callout::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: url('../images/executive-banner-ribbons.svg') center / cover no-repeat;
}
.executive-service-callout span { display: block; margin: 0 0 34px; color: var(--brand-white); font: 400 16px/1.4 "Outfit",sans-serif; letter-spacing: 0; text-transform: none; }
.executive-service-callout h3 { max-width: 24ch; margin: 0; color: var(--brand-white); font: 500 clamp(29px,3.5vw,46px)/1.13 "Outfit",sans-serif; letter-spacing: -.035em; }
.executive-service-callout b { display: flex; align-items: center; justify-content: center; gap: 18px; padding: 17px 23px; border-radius: 12px; background: var(--brand-white); color: var(--brand-deep-purple); font: 500 14px/1.3 "Outfit",sans-serif; white-space: nowrap; transition: background .2s,transform .2s; }
.executive-service-callout i { font-size: 21px; font-style: normal; line-height: 1; }
.executive-service-callout:hover b { background: var(--brand-light-gray); transform: translateX(3px); }
.executive-service-callout:focus-visible { outline: 3px solid var(--brand-deep-purple); outline-offset: 5px; }
@media(max-width:760px) {
 .executive-cta-section { padding-bottom: 40px; }
 .executive-service-callout { grid-template-columns: 1fr; justify-items: start; min-height: 0; padding: 28px 24px; gap: 26px; border-radius: 16px; }
 .executive-service-callout span { margin-bottom: 22px; font-size: 14px; }
 .executive-service-callout h3 { font-size: clamp(28px,7.2vw,40px); }
 .executive-service-callout::before { opacity: .6; background-position: 65% center; }
 .executive-service-callout b { font-size: 13px; padding: 15px 20px; }
}
@media(prefers-reduced-motion:reduce) { .executive-service-callout b { transition: none; } }
