.elementor-kit-10736{--e-global-color-primary:#081528;--e-global-color-secondary:#F5F5F5;--e-global-color-text:#81848A;--e-global-color-accent:#E87337;--e-global-color-accentsecondary:#FFFFFF00;--e-global-color-white:#FFFFFF;--e-global-color-black:#081528;--e-global-color-divider:#EBEBEB;--e-global-color-darkdivider:#FFFFFF1A;--e-global-typography-primary-font-family:"Manrope";--e-global-typography-primary-font-size:3.125rem;--e-global-typography-primary-font-weight:300;--e-global-typography-primary-line-height:1.2em;--e-global-typography-primary-letter-spacing:-0.01em;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-size:1.3rem;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-family:"Manrope";--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1em;--e-global-typography-75e767d-font-family:"Manrope";--e-global-typography-75e767d-font-size:2.5rem;--e-global-typography-75e767d-font-weight:300;--e-global-typography-75e767d-line-height:1.2em;--e-global-typography-89e6de4-font-family:"DM Sans";--e-global-typography-89e6de4-font-size:16px;--e-global-typography-89e6de4-font-weight:600;--e-global-typography-89e6de4-text-transform:uppercase;--e-global-typography-89e6de4-letter-spacing:0.08rem;--e-global-typography-b1f507d-font-family:"Manrope";--e-global-typography-b1f507d-font-size:2rem;--e-global-typography-b1f507d-font-weight:300;--e-global-typography-b1f507d-line-height:1.2em;background-color:var( --e-global-color-white );color:#81848A;font-family:"Manrope", Sans-serif;font-size:16px;font-weight:400;line-height:1.7em;}.elementor-kit-10736 button,.elementor-kit-10736 input[type="button"],.elementor-kit-10736 input[type="submit"],.elementor-kit-10736 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-primary );border-radius:10px 10px 10px 10px;padding:2px 8px 2px 2px;}.elementor-kit-10736 button:hover,.elementor-kit-10736 button:focus,.elementor-kit-10736 input[type="button"]:hover,.elementor-kit-10736 input[type="button"]:focus,.elementor-kit-10736 input[type="submit"]:hover,.elementor-kit-10736 input[type="submit"]:focus,.elementor-kit-10736 .elementor-button:hover,.elementor-kit-10736 .elementor-button:focus{background-color:#FFFFFF00;color:var( --e-global-color-white );}.elementor-kit-10736 e-page-transition{background-color:var( --e-global-color-accent );}.elementor-kit-10736 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-10736 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-10736 h3{color:var( --e-global-color-primary );}.elementor-kit-10736 h4{color:var( --e-global-color-primary );}.elementor-kit-10736 h5{color:#222222;}.elementor-kit-10736 h6{color:var( --e-global-color-primary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1300px;}.e-con{--container-max-width:1300px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(min-width:1600px){.elementor-kit-10736 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-10736 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-10736 button,.elementor-kit-10736 input[type="button"],.elementor-kit-10736 input[type="submit"],.elementor-kit-10736 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.e-con{--container-max-width:1600px;}}@media(max-width:1024px){.elementor-kit-10736{--e-global-typography-secondary-font-size:18px;--e-global-typography-text-font-size:12px;--e-global-typography-accent-font-size:14px;--e-global-typography-75e767d-font-size:30px;--e-global-typography-89e6de4-font-size:14px;--e-global-typography-b1f507d-font-size:20px;}.elementor-kit-10736 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-10736 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-10736 button,.elementor-kit-10736 input[type="button"],.elementor-kit-10736 input[type="submit"],.elementor-kit-10736 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-10736{--e-global-typography-primary-font-size:28px;--e-global-typography-secondary-font-size:16px;--e-global-typography-text-font-size:10px;--e-global-typography-accent-font-size:12px;--e-global-typography-75e767d-font-size:20px;--e-global-typography-89e6de4-font-size:12px;--e-global-typography-b1f507d-font-size:18px;}.elementor-kit-10736 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-kit-10736 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-10736 button,.elementor-kit-10736 input[type="button"],.elementor-kit-10736 input[type="submit"],.elementor-kit-10736 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* CSS 01 – Elementor Button Focus and Active Styling */

/* Keep button visible on click/focus */
.elementor-button:active,
.elementor-button:focus {
    opacity: 1 !important;
    visibility: visible !important;
    background-color: var(--e-global-color-accent) !important; /* same as hover/orange */
    color: #000 !important; /* text stays white */
    border-color: var(--e-global-color-accent) !important;
}





/* CSS 02 – Prevent Button Text Wrapping */

/* Prevent button text from breaking across lines */
.elementor-button {
    white-space: nowrap !important;
}






/* CSS 03 – Layout Utilities: Full Width Bleed Columns */

/* Utility: let a column break out of a boxed container on the left */
.bleed-left {
  position: relative;
  width: 100vw;                 /* span full viewport */
  max-width: 100vw;             /* ignore parent max-width */
  margin-right: auto;            /* stick right edge aligned to container */
  margin-left: calc(-50vw + 50%); /* pull to viewport edge on right */
}
/* Utility: let a column break out of a boxed container on the right */
.bleed-right {
  position: relative;
  width: 100vw;                 /* span full viewport */
  max-width: 100vw;             /* ignore parent max-width */
  margin-left: auto;            /* stick left edge aligned to container */
  margin-right: calc(-50vw + 50%); /* pull to viewport edge on right */
}





/* CSS 04 – ElementsKit Mega Menu: Controlled Visibility and Animation */

/* Stop ElementsKit from opening menus on hover */
.elementskit-navbar-nav-default .elementskit-megamenu-has:hover > .elementskit-megamenu-panel {
  opacity: 0 !important;
  transform: translateY(10px) !important;
  pointer-events: none !important;
  visibility: hidden !important;
}

/* Show menu only when JS adds the delayed class */
.elementskit-navbar-nav-default .elementskit-megamenu-has.ekit-hover-intent > .elementskit-megamenu-panel {
  opacity: 1 !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
  visibility: visible !important;
  transition: all 0.3s ease;
}


/* Hidden by default */
.elementskit-navbar-nav-default .elementskit-megamenu-has > .elementskit-megamenu-panel {
  display: block !important;           
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.45s ease-in-out, visibility 0s linear 0.45s;
  will-change: opacity;
}

/* Shown on hover or when .ekit-hover-intent is added */
.elementskit-navbar-nav-default .elementskit-megamenu-has.ekit-hover-intent > .elementskit-megamenu-panel,
.elementskit-navbar-nav-default .elementskit-megamenu-has:hover > .elementskit-megamenu-panel {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition-delay: 50ms;
}

/* Inner content fades in slightly later (optional polish) */
.elementskit-navbar-nav-default .elementskit-megamenu-has > .elementskit-megamenu-panel > * {
  opacity: 0;
  transition: opacity 0.45s ease-in-out;
}

.elementskit-navbar-nav-default .elementskit-megamenu-has.ekit-hover-intent > .elementskit-megamenu-panel > *,
.elementskit-navbar-nav-default .elementskit-megamenu-has:hover > .elementskit-megamenu-panel > * {
  opacity: 1;
}

/* Optional gentle stagger for 3-column layouts */
.elementskit-navbar-nav-default .elementskit-megamenu-has > .elementskit-megamenu-panel > *:nth-child(1) { transition-delay: 80ms; }
.elementskit-navbar-nav-default .elementskit-megamenu-has > .elementskit-megamenu-panel > *:nth-child(2) { transition-delay: 140ms; }
.elementskit-navbar-nav-default .elementskit-megamenu-has > .elementskit-megamenu-panel > *:nth-child(3) { transition-delay: 200ms; }




/* CSS 07 – Industry Image Stack: Absolute Overlay and Active State Fade */
/* Holder */
.industry-wrap {
  position: relative;
  overflow: hidden;
}

/* All images overlap and are hidden by default */
.industry-image {
  position: absolute;
  inset: 0;              /* top/right/bottom/left: 0 */
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  pointer-events: none;  /* clicks go through to the layout */
  transition: opacity .35s ease;
}

/* The currently active (visible) one */
.industry-image.is-active {
  opacity: 1;
}





/* CSS 08 – Hero Rotator: Full Bleed Image Stack with Overlay and Layering */

/* ===== Hero rotator (Elementor-safe, smooth crossfade + image-only overlay) ===== */

.hero-rotator { position: relative; overflow: hidden; }

/* Image stack lives in the HTML widget, full-bleed behind content */
.hero-rotator .elementor-widget-html { position: absolute; inset: 0; z-index: 1; pointer-events: none; }
.hero-rotator .elementor-widget-html .elementor-widget-container { position: static !important; height: 100%; padding: 0; }

/* Slight dark overlay ABOVE images but BELOW content (doesn't touch text/buttons) */
.hero-rotator::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;                         /* below content (which is z-index: 3) */
  background: rgba(0,0,0,.28);        /* adjust 0.20–0.35 to taste */
  pointer-events: none;
}

/* Keep all other hero content above images & overlay */
.hero-rotator > :not(.elementor-widget-html) { position: relative; z-index: 3; }

/* Image stack */
.hero-rotator .hero-bg-wrap { position: absolute; inset: 0; }
.hero-rotator .hero-bg {
  position: absolute; inset: 0;
  width: 100%; height: 100%; object-fit: cover;
  opacity: 0;                                   /* hidden by default */
  transition: opacity 1.2s ease-in-out;        /* slower, smooth */
  will-change: opacity; backface-visibility: hidden;
}
.hero-rotator .hero-bg.is-active { opacity: 1; }

/* Optional: force full-bleed even on boxed pages (keep if you still see side gutters) */
/*
.hero-rotator { width: 100vw; max-width: 100vw; margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); }
*/

/* Reduced motion */
@media (prefers-reduced-motion: reduce) { .hero-rotator .hero-bg { transition: none; } }







/* CSS 12 – Hero Video Container: Full Cover and Overflow Control */

.hero-video {
  position: relative;
  overflow: hidden;
}

.hero-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}








/* CSS 14 – Card CTA Interaction: Title Color Hover and Rotating Icon */

/* Default state (smooth transition setup) */
.card-title,
.card-title * {
  transition: color 0.3s ease;
}

.rotate-icon {
  transition: transform 0.3s ease;
}

/* Hover state */
.news-card:hover .card-title,
.news-card:hover .card-title * {
  color: #E87337 !important;
}

.news-card {
  border-radius: 10px;
  overflow: hidden;
}

.news-card:hover .rotate-icon {
  transform: rotate(45deg);
}


/* Smooth transition for icons */
.news-card i,
.news-card svg {
  transition: transform 0.3s ease;
}

/* Rotate when hovering the entire card */
.news-card:hover i,
.news-card:hover svg {
  transform: rotate(45deg);
}





/* CSS 15 – Single Post Hero Image: Background Cover Container */
.hero-image {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}






/* CSS 16 – Capabilities Tab Image: Responsive Fixed Width on Tablet and Mobile */

@media (max-width: 1024px) {
  .cap-tab-img img { width: 300px !important; }
}

@media (max-width: 767px) {
  .cap-tab-img img { width: 200px !important; }
}



/* CSS 17 – Hero Media Mask: Left Gradient Fade Utility */
.hero-mask-left {
  -webkit-mask-image: linear-gradient(to left, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100%);
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: cover;

  mask-image: linear-gradient(to left, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 100%);
  mask-repeat: no-repeat;
  mask-size: cover;
}





/* CSS 18 – Background Fill Utility: Full Size Cover and Center */

.bg-fill {
  width: 100% !important;
  height: 100% !important;
  background-size: cover !important;
  background-position: center !important;
  margin: 0 !important;
  padding: 0 !important;
}




/* CSS 19 – Hover Reveal Card Grid: Title to Text Swap with Scroll */

/* Grid setup */
.card-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

/* Card base */
.card-hover {
  border: 1px solid #ebebeb;
  border-radius: 10px;
  padding: 20px;
  position: relative;
  background: transparent;
  cursor: pointer;
  min-height: 170px;
  overflow: hidden;
}

/* Center title + hover text */
.card-hover .card-title,
.card-hover .hover-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
  text-align: center;
  width: 95%;
  max-width: 90%;
  white-space: normal;
  line-height: 1.4;
}

/* Default state */
.card-hover .card-title { opacity: 1; }
.card-hover .hover-text { opacity: 0; }

/* Hover state */
.card-hover:hover .card-title { opacity: 0; }
.card-hover:hover .hover-text { opacity: 1; }

/* Hover text styling + scroll for long content */
.card-hover .hover-text {
  background: transparent !important;
  color: #ffffff;
  max-height: 150px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #999 transparent;
}

/* WebKit scrollbar */
.card-hover .hover-text::-webkit-scrollbar { width: 6px; }
.card-hover .hover-text::-webkit-scrollbar-thumb {
  background-color: #999;
  border-radius: 3px;
}
.card-hover .hover-text::-webkit-scrollbar-track { background: transparent; }






/* CSS 20 – Scoped Typography System for Legal and Policy Pages */


/* Apply global Elementor typography only inside .container123 */
.container123 h1,
.container123 h2,
.container123 h3,
.container123 h4,
.container123 h5,
.container123 h6 {
  font-family: var(--e-global-typography-primary-font-family, "Manrope"),
               system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: var(--e-global-typography-primary-font-weight, 600) !important;
  line-height: var(--e-global-typography-primary-line-height, 1.2) !important;
}

/* Headings inside Text Editor within that container */
.container123 .elementor-widget-text-editor h1,
.container123 .elementor-widget-text-editor h2,
.container123 .elementor-widget-text-editor h3,
.container123 .elementor-widget-text-editor h4,
.container123 .elementor-widget-text-editor h5,
.container123 .elementor-widget-text-editor h6 {
  font: inherit !important;
}

/* Ensure H2 is larger than H3 */
.container123 h2,
.container123 .elementor-widget-text-editor h2 {
  font-size: var(--e-global-typography-h2-font-size, 2rem) !important;
}
.container123 h3,
.container123 .elementor-widget-text-editor h3 {
  font-size: var(--e-global-typography-h3-font-size, 1.5rem) !important;
}

/* Body text inside the container */
.container123,
.container123 p,
.container123 .elementor-widget-text-editor {
  font-family: var(--e-global-typography-text-font-family, "Manrope"),
               system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  font-weight: var(--e-global-typography-text-font-weight, 400) !important;
  line-height: var(--e-global-typography-text-line-height, 1.6) !important;
}





/* CSS 21 – Article Content Typography System */

/* Paragraphs */
.article-content p {
  font-size: 18px;
  line-height: 1.7;
  margin-bottom: 1.5em;
  color: #222;
}

/* Headings */
.article-content h2 {
  font-size: 28px;
  margin-top: 2em;
  margin-bottom: 0.8em;
  font-weight: 600;
}

.article-content h3 {
  font-size: 22px;
  margin-top: 1.8em;
  margin-bottom: 0.6em;
  font-weight: 500;
}

/* Links */
.article-content a {
  color: #E87337;
  text-decoration: underline;
  transition: color 0.2s ease;
}
.article-content a:hover {
  color: #c65e2d;
}

/* Blockquotes */
.article-content blockquote {
  font-size: 20px;
  font-style: italic;
  color: #81848A;
  border-left: 4px solid #E87337;
  padding: 1em 1.5em;
  margin: 2em 0;
  background: #f9f9f9;
}
.article-content blockquote p {
  margin: 0;
}

/* Lists */
.article-content ul,
.article-content ol {
  margin: 1.2em 0 1.5em 2em;
  font-size: 18px;
  line-height: 1.6;
}
.article-content li {
  margin-bottom: 0.6em;
}

/* Images inside article */
.article-content img {
  max-width: 100%;
  height: auto;
  margin: 1.5em 0;
  border-radius: 6px;
}

/* Inline quotes */
.article-content q {
  quotes: "“" "”" "‘" "’";
  font-size: 20px;
  color: #81848A;
}





/* CSS 22 – Recab Breadcrumbs: Horizontal Trail with “»” Separators (Scoped) */

/* Scope everything to the breadcrumb shortcode wrapper */
.recab-breadcrumb-wrap {
  width: 100%;
}

/* Reset + align ONLY inside the breadcrumb wrapper */
.recab-breadcrumb-wrap,
.recab-breadcrumb-wrap .elementor-shortcode {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  display: flex;
  justify-content: flex-start;
}

/* Breadcrumb wrapper */
.recab-breadcrumb-wrap .recab-breadcrumb,
.recab-breadcrumb-wrap .breadcrumbs,
.recab-breadcrumb-wrap nav.breadcrumb-trail ol {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: #081528;
}

/* List items inline */
.recab-breadcrumb-wrap .breadcrumb li,
.recab-breadcrumb-wrap .breadcrumbs li,
.recab-breadcrumb-wrap .recab-breadcrumb li,
.recab-breadcrumb-wrap nav.breadcrumb-trail li {
  display: inline;
  margin: 0;
  padding: 0;
}

/* Links */
.recab-breadcrumb-wrap .breadcrumb a,
.recab-breadcrumb-wrap .breadcrumbs a,
.recab-breadcrumb-wrap .recab-breadcrumb a,
.recab-breadcrumb-wrap nav.breadcrumb-trail a {
  color: #081528;
  text-decoration: none;
  transition: color 0.2s ease-in-out;
}

.recab-breadcrumb-wrap .breadcrumb a:hover,
.recab-breadcrumb-wrap .breadcrumbs a:hover,
.recab-breadcrumb-wrap .recab-breadcrumb a:hover,
.recab-breadcrumb-wrap nav.breadcrumb-trail a:hover {
  color: #E87337;
}

/* Separator " » " */
.recab-breadcrumb-wrap .breadcrumb li + li::before,
.recab-breadcrumb-wrap .breadcrumbs li + li::before,
.recab-breadcrumb-wrap .recab-breadcrumb li + li::before,
.recab-breadcrumb-wrap nav.breadcrumb-trail li + li::before {
  content: " » ";
  color: #081528;
  margin: 0 5px;
}

/* Current (last) item */
.recab-breadcrumb-wrap .breadcrumb li:last-child,
.recab-breadcrumb-wrap .breadcrumbs li:last-child,
.recab-breadcrumb-wrap .recab-breadcrumb li:last-child,
.recab-breadcrumb-wrap nav.breadcrumb-trail li:last-child {
  color: #081528;
}

/* Optional alignment rule: ONLY within the wrapper */
.recab-breadcrumb-wrap nav.breadcrumb-trail {
  font-weight: 400;
  margin-bottom: 20px;
  padding-left: var(--container-padding, 30px);
  box-sizing: border-box;
}

















/* Cluster A MASTER – Normal News Card System
   Identical behavior to your CSS 28
   Only change: safely scoped to .recab-card-news-normal so it cannot affect other cards
*/

/* a) Card Layout and Footer Pinning */
.recab-card-news-normal .news-card {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 370px;
  padding-bottom: 20px;
}

.recab-card-news-normal .news-card-content {
  flex-grow: 1;
}

.recab-card-news-normal .news-card-footer {
  margin-top: auto;
}

.recab-card-news-normal .news-card-footer {
  position: absolute;
  bottom: -5px;
  left: 10px;
  right: 10px;
}

.recab-card-news-normal .news-card-footer .learn-more {
  display: inline-block;
  font-weight: 600;
  color: #e87337;
  text-decoration: none;
}

.recab-card-news-normal .news-card img {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  border-radius: 8px;
}

/* b) Date Badge Overlay and Image Container Positioning */
.recab-card-news-normal .news-card-date {
  position: absolute;
  top: 10px;
  right: 10px;
  background: #fff;
  color: #000;
  font-size: 13px;
  font-weight: 600;
  padding: 4px 10px;
  border-radius: 3px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.recab-card-news-normal .news-card-image {
  position: relative;
}

/* c) Card CTA Interaction: Title Color Shift and Icon Rotation */
.recab-card-news-normal .card-title,
.recab-card-news-normal .card-title * {
  transition: color 0.3s ease;
}

.recab-card-news-normal .rotate-icon {
  transition: transform 0.3s ease;
}

.recab-card-news-normal .news-card:hover .card-title,
.recab-card-news-normal .news-card:hover .card-title * {
  color: #E87337 !important;
}

.recab-card-news-normal .news-card {
  border-radius: 10px;
  overflow: hidden;
}

.recab-card-news-normal .news-card:hover .rotate-icon {
  transform: rotate(45deg);
}

/* d) Icon Motion Enhancement on Hover */
.recab-card-news-normal .news-card i,
.recab-card-news-normal .news-card svg {
  transition: transform 0.3s ease;
}


.recab-card-news-normal .news-card:hover svg {
  transform: rotate(45deg);
}







/* Consent checkbox layout fix (shared across forms) */
.recab-form-consent .wpcf7-acceptance label{
  display:flex;
  align-items:flex-start;
  gap:8px;
  white-space:normal;
  line-height:1.4;
}
.recab-form-consent .wpcf7-acceptance input{
  margin-top:3px;
  flex-shrink:0;
}/* End custom CSS */