.elementor-53893 .elementor-element.elementor-element-d663d80 > .elementor-container{max-width:1140px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-53893 .elementor-element.elementor-element-370e49a > .elementor-container{max-width:1140px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-53893 .elementor-element.elementor-element-97633e3 img{height:100%;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-19882aa{text-align:center;}.elementor-53893 .elementor-element.elementor-element-63189a0{text-align:center;}.elementor-53893 .elementor-element.elementor-element-afe7b87 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-53893 .elementor-element.elementor-element-afe7b87{text-align:center;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-53893 .elementor-element.elementor-element-6824bd6 .elementor-button{background-color:#0EA0C6;}.elementor-53893 .elementor-element.elementor-element-4c5175c img{height:0%;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-4b57d52{text-align:center;}.elementor-53893 .elementor-element.elementor-element-a6cfce5{text-align:center;}.elementor-53893 .elementor-element.elementor-element-da45cb1{text-align:center;}.elementor-53893 .elementor-element.elementor-element-86fcd03 img{height:100%;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-45f7890{text-align:center;}.elementor-53893 .elementor-element.elementor-element-d553f0a{text-align:center;}.elementor-53893 .elementor-element.elementor-element-0d47927{text-align:center;}.elementor-53893 .elementor-element.elementor-element-c65355e img{height:340px;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-25523b5{text-align:center;}.elementor-53893 .elementor-element.elementor-element-741e8da{text-align:center;}.elementor-53893 .elementor-element.elementor-element-fd95132{text-align:center;}.elementor-53893 .elementor-element.elementor-element-96821e4 img{height:340px;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-72108e1{text-align:center;}.elementor-53893 .elementor-element.elementor-element-f858627{text-align:center;}.elementor-53893 .elementor-element.elementor-element-90c349d{text-align:center;}.elementor-53893 .elementor-element.elementor-element-dcb5139 img{border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-542d686{text-align:center;}.elementor-53893 .elementor-element.elementor-element-321fc4d{text-align:center;}.elementor-53893 .elementor-element.elementor-element-0a04795{text-align:center;}.elementor-53893 .elementor-element.elementor-element-7e07d676 > .elementor-background-overlay{background-color:#000000;opacity:1;}.elementor-53893 .elementor-element.elementor-element-7e07d676 > .elementor-container{max-width:1140px;}.elementor-53893 .elementor-element.elementor-element-7e07d676, .elementor-53893 .elementor-element.elementor-element-7e07d676 > .elementor-background-overlay{border-radius:15px 15px 15px 15px;}.elementor-53893 .elementor-element.elementor-element-7e07d676{margin-top:0px;margin-bottom:0px;padding:25px 0px 25px 0px;}.elementor-53893 .elementor-element.elementor-element-2619d614{text-align:start;}.elementor-53893 .elementor-element.elementor-element-2619d614 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;color:var( --e-global-color-primary );}.elementor-53893 .elementor-element.elementor-element-5e8ff4c3{font-family:"Roboto", Sans-serif;font-size:50px;font-weight:400;}.elementor-widget-image-box .elementor-image-box-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-widget-image-box:has(:hover) .elementor-image-box-title,
					 .elementor-widget-image-box:has(:focus) .elementor-image-box-title{color:var( --e-global-color-primary );}.elementor-widget-image-box .elementor-image-box-description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-53893 .elementor-element.elementor-element-63823658 > .elementor-widget-container{background-color:#FFFFFF;margin:0px 0px 0px 0px;padding:25px 25px 25px 25px;border-radius:15px 15px 15px 15px;}.elementor-53893 .elementor-element.elementor-element-63823658.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-53893 .elementor-element.elementor-element-63823658.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-53893 .elementor-element.elementor-element-63823658.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-53893 .elementor-element.elementor-element-63823658 .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-53893 .elementor-element.elementor-element-63823658 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-53893 .elementor-element.elementor-element-4ccaa63 > .elementor-widget-container{background-color:#FFFFFF;padding:25px 25px 25px 25px;border-radius:15px 15px 15px 15px;}.elementor-53893 .elementor-element.elementor-element-4ccaa63.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-53893 .elementor-element.elementor-element-4ccaa63.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-53893 .elementor-element.elementor-element-4ccaa63.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-53893 .elementor-element.elementor-element-4ccaa63 .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-53893 .elementor-element.elementor-element-4ccaa63 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-53893 .elementor-element.elementor-element-2f844da0 > .elementor-widget-container{background-color:#FFFFFF;padding:25px 25px 25px 25px;border-radius:15px 15px 15px 15px;}.elementor-53893 .elementor-element.elementor-element-2f844da0.elementor-position-right .elementor-image-box-img{margin-left:15px;}.elementor-53893 .elementor-element.elementor-element-2f844da0.elementor-position-left .elementor-image-box-img{margin-right:15px;}.elementor-53893 .elementor-element.elementor-element-2f844da0.elementor-position-top .elementor-image-box-img{margin-bottom:15px;}.elementor-53893 .elementor-element.elementor-element-2f844da0 .elementor-image-box-wrapper .elementor-image-box-img{width:30%;}.elementor-53893 .elementor-element.elementor-element-2f844da0 .elementor-image-box-img img{transition-duration:0.3s;}.elementor-53893 .elementor-element.elementor-element-3a77069 > .elementor-container{max-width:1140px;}.elementor-53893 .elementor-element.elementor-element-2ba0b91 img{height:340px;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-5c4a372{text-align:center;}.elementor-53893 .elementor-element.elementor-element-eb9c680{text-align:center;}.elementor-53893 .elementor-element.elementor-element-38dc0bf{text-align:center;}.elementor-53893 .elementor-element.elementor-element-24d0b93 img{border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-c580a5b{text-align:center;}.elementor-53893 .elementor-element.elementor-element-ff3f479{text-align:center;}.elementor-53893 .elementor-element.elementor-element-5d798fb{text-align:center;}.elementor-53893 .elementor-element.elementor-element-e0936ee img{width:120%;border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-6b0a0c6{text-align:center;}.elementor-53893 .elementor-element.elementor-element-35da07f{text-align:center;}.elementor-53893 .elementor-element.elementor-element-9b53f5b{text-align:center;}.elementor-53893 .elementor-element.elementor-element-4196e8a img{border-radius:25px 25px 25px 25px;}.elementor-53893 .elementor-element.elementor-element-42ef845{text-align:center;}.elementor-53893 .elementor-element.elementor-element-a78ebad{text-align:center;}.elementor-53893 .elementor-element.elementor-element-3898573{text-align:center;}.elementor-53893 .elementor-element.elementor-element-b92c9cd > .elementor-container{max-width:1140px;}@media(max-width:767px){.elementor-53893 .elementor-element.elementor-element-63823658 .elementor-image-box-img{margin-bottom:15px;}.elementor-53893 .elementor-element.elementor-element-4ccaa63 .elementor-image-box-img{margin-bottom:15px;}.elementor-53893 .elementor-element.elementor-element-2f844da0 .elementor-image-box-img{margin-bottom:15px;}}/* Start custom CSS for section, class: .elementor-element-b92c9cd *//* CCFAM Train the Trainers Page Styles */
:root {
  --ccfam-navy: #0ea0c6;
  --ccfam-blue-primary: #0ea0c6;
  --ccfam-blue-hover: #1b4d9c;
  --ccfam-text-dark: #334e68;
  --ccfam-text-muted: #627d98;
  --ccfam-line-gray: #d9e2ec;
  --ccfam-line-blue: #0ea0c6;
  --ccfam-shadow: 0 6px 16px rgba(16, 42, 67, 0.06);
}

/* Page Containers */
.ccfam-hero-section,
.ccfam-trainers-section,
.ccfam-why-train-section,
.ccfam-more-trainers-section,
.ccfam-footer-cta-section {
  width: min(1140px, calc(100% - 40px));
  max-width: 1140px;
  margin-left: auto;
  margin-right: auto;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
}

/* Typography elements */
.ccfam-main-title {
  margin-top: 40px;
}
.ccfam-main-title .elementor-heading-title {
  font-size: clamp(38px, 5vw, 52px);
  font-weight: 800;
  color: var(--ccfam-navy) !important;
  text-align: center;
  margin-bottom: 6px;
}

.ccfam-main-subtitle .elementor-heading-title {
  font-size: clamp(18px, 2.5vw, 22px);
  font-weight: 600;
  color: var(--ccfam-navy) !important;
  text-align: center;
  margin-bottom: 20px;
}

.ccfam-title-divider {
  width: 120px;
  height: 4px;
  background-color: #0ea0c;
  margin: 0 auto 30px;
}

.ccfam-intro-text,
.ccfam-intro-text p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--ccfam-text-dark);
  text-align: center;
  max-width: 940px;
  margin: 0 auto 40px;
}

.ccfam-section-title .elementor-heading-title {
  font-size: clamp(28px, 3.5vw, 36px);
  font-weight: 700;
  color: var(--ccfam-navy) !important;
  text-align: center;
  margin-top: 50px;
  margin-bottom: 34px;
}

/* Core Grid adjustments */
.ccfam-trainer-grid > .elementor-container {
  gap: 30px;
}

.ccfam-trainer-card {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 10px;
}

/* Image Aspect Ratio Constraint */
.ccfam-trainer-card img {
  width: 100%;
  aspect-ratio: 1.05 / 1;
  object-fit: cover;
  margin-bottom: 16px;
  box-shadow: var(--ccfam-shadow);
  border: 1px solid var(--ccfam-line-gray);
  background-color: #f7fafc;
}

.ccfam-trainer-name .elementor-heading-title {
  font-size: 20px;
  font-weight: 700;
  color: var(--ccfam-navy) !important;
  margin-bottom: 4px;
}

.ccfam-trainer-specialties .elementor-heading-title {
  font-size: 14px;
  font-weight: 600;
  color: var(--ccfam-blue-primary) !important;
  margin-bottom: 12px;
}

.ccfam-trainer-bio,
.ccfam-trainer-bio p {
  font-size: 14px;
  line-height: 1.5;
  color: var(--ccfam-text-dark);
  margin-bottom: 18px;
  min-height: 48px;
}

/* Button Formatting */
.ccfam-trainer-btn .elementor-button,
.ccfam-explore-btn .elementor-button,
.ccfam-footer-btn .elementor-button {
  background-color: var(--ccfam-blue-primary) !important;
  color: #fff !important;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 13px;
  padding: 10px 24px;
  border-radius: 2px;
  transition: background-color 0.2s ease-in-out;
}

.ccfam-trainer-btn .elementor-button:hover,
.ccfam-explore-btn .elementor-button:hover,
.ccfam-footer-btn .elementor-button:hover {
  background-color: var(--ccfam-blue-hover) !important;
}

.ccfam-explore-btn {
  text-align: center;
  margin-bottom: 50px;
}

/* Dividers */
.ccfam-section-divider {
  border: 0;
  border-top: 1px solid var(--ccfam-line-blue);
  width: 50%;
  margin: 50px auto;
}

.ccfam-full-divider {
  border: 0;
  border-top: 1px solid var(--ccfam-line-gray);
  width: 100%;
  margin: 50px auto;
}

/* Why Train layout styles */
.ccfam-why-intro,
.ccfam-why-intro p {
  font-size: 16px;
  line-height: 1.6;
  color: var(--ccfam-text-dark);
  text-align: center;
  max-width: 900px;
  margin: 0 auto 36px;
}

.ccfam-benefit-row > .elementor-container {
  align-items: center;
  margin-bottom: 16px;
}

.ccfam-benefit-label .elementor-heading-title {
  font-size: 16px;
  font-weight: 800;
  color: var(--ccfam-navy) !important;
  text-align: left;
}

.ccfam-benefit-desc,
.ccfam-benefit-desc p {
  font-size: 16px;
  color: var(--ccfam-text-dark);
  text-align: left;
}

/* CTA Styles */
.ccfam-footer-text,
.ccfam-footer-text p {
  font-size: 16px;
  font-weight: 700;
  line-height: 1.5;
  color: var(--ccfam-navy);
  text-align: center;
  max-width: 750px;
  margin: 0 auto 24px;
}

.ccfam-footer-btn {
  text-align: center;
  margin-bottom: 40px;
}

/* Responsive adjustment rules */
@media (max-width: 768px) {
  .ccfam-benefit-label .elementor-heading-title,
  .ccfam-benefit-desc,
  .ccfam-benefit-desc p {
    text-align: center;
  }
}

/* ==========================================================================
   CCFAM Train the Trainers - Mockup Alignment Fixes
   ========================================================================== */

/* 1. Typography & Colors (Match exact mockup values) */
.ccfam-main-title .elementor-heading-title,
.ccfam-section-title .elementor-heading-title,
.ccfam-trainer-name .elementor-heading-title,
.ccfam-benefit-label .elementor-heading-title,
.ccfam-footer-text p {
  color: #10355c !important; /* Mockup Deep Navy Blue */
  font-family: system-ui, -apple-system, sans-serif !important;
}

.ccfam-trainer-specialties .elementor-heading-title {
  color: #2d68c4 !important; /* Mockup Bright Specialty Blue */
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px;
}

/* 2. Button Shape & Proportions (Sharp corners, uniform widths) */
.ccfam-trainer-btn .elementor-button,
.ccfam-explore-btn .elementor-button,
.ccfam-footer-btn .elementor-button {
  background-color: #0ea0c6 !important; /* Mockup Primary Blue */
  border-radius: 0px !important;        /* Force sharp rectangular corners */
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px;
  text-transform: uppercase !important;
  transition: background-color 0.2s ease-in-out;
}

.ccfam-trainer-btn .elementor-button:hover,
.ccfam-explore-btn .elementor-button:hover,
.ccfam-footer-btn .elementor-button:hover {
  background-color: #10355c !important;
}

/* Ensure trainer "View Profile" buttons are uniformly sized and proportioned under headshots */
.ccfam-trainer-btn {
  width: 100%;
  margin-top: auto; /* Pushes button to bottom if bios have slightly different lengths */
}

.ccfam-trainer-btn .elementor-button {
  display: block !important;
  width: 82% !important;
  max-width: 220px;
  margin: 0 auto !important;
  padding: 12px 10px !important;
}

/* 3. Benefit Alignment split (Right-aligned bold keys, Left-aligned descriptions) */
@media (min-width: 769px) {
  /* Aligns keys neatly against the central space */
  .ccfam-benefit-label .elementor-heading-title {
    text-align: right !important;
    padding-right: 20px;
  }
  
  /* Aligns descriptions neatly starting from the center */
  .ccfam-benefit-desc, 
  .ccfam-benefit-desc p {
    text-align: left !important;
    padding-left: 20px;
    margin: 0;
  }
}

@media (max-width: 768px) {
  .ccfam-benefit-label .elementor-heading-title,
  .ccfam-benefit-desc, 
  .ccfam-benefit-desc p {
    text-align: center !important;
    padding: 0;
  }
}

/* 4. Crop consistency for uploaded headshots */
.ccfam-trainer-card img {
  width: 100% !important;
  aspect-ratio: 1.12 / 1 !important; /* Keeps portraits square-to-rectangular as seen in mockup */
  object-fit: cover !important;
  border-radius: 0px !important;      /* Eliminate any theme-level image rounding */
  border: none !important;
  box-shadow: none !important;        /* Mockup contains clean, flat images with no shadows */
}

/* 5. Clean layout lines & spacing adjustments */
.ccfam-title-divider {
  width: 100px !important;
  height: 5px !important;
  background-color: #2d68c4 !important;
  margin: 18px auto 32px !important;
}

.ccfam-section-divider {
  border-top: 1px solid #2d68c4 !important; /* Solid blue separator lines */
  opacity: 1 !important;
  width: 60% !important;
  margin: 54px auto !important;
}

.ccfam-full-divider {
  border-top: 1px solid #d9e2ec !important; /* Lighter grey full separator lines */
  opacity: 1 !important;
  width: 100% !important;
  margin: 54px auto !important;
}

/* 6. Grid spacing fixes */
.ccfam-trainer-grid > .elementor-container {
  gap: 40px 30px !important; /* Adds row-gap for stacked layout on mobile viewports */
}

/* ==========================================================================
   CCFAM Trainer Cards - Tighten Vertical Spacing
   ========================================================================== */

/* 1. Override Elementor's default widget margins on the column level */
.ccfam-trainer-card .elementor-widget.ccfam-trainer-name {
  margin-bottom: 2px !important; /* Gap between Image/Name */
}

.ccfam-trainer-card .elementor-widget.ccfam-trainer-specialties {
  margin-bottom: 8px !important; /* Gap between Name/Specialties */
}

.ccfam-trainer-card .elementor-widget.ccfam-trainer-bio {
  margin-bottom: 16px !important; /* Spacing before the button container */
}

/* 2. Strip any default theme heading/paragraph browser padding/margins */
.ccfam-trainer-name .elementor-heading-title,
.ccfam-trainer-name h1,
.ccfam-trainer-name h2,
.ccfam-trainer-name h3 {
  margin: 0 !important;
  padding: 0 !important;
}

.ccfam-trainer-specialties .elementor-heading-title,
.ccfam-trainer-specialties h1,
.ccfam-trainer-specialties h2,
.ccfam-trainer-specialties h3,
.ccfam-trainer-specialties h4 {
  margin: 0 !important;
  padding: 0 !important;
}

.ccfam-trainer-bio p {
  margin: 0 !important;
  padding: 0 !important;
}

/* Reduce spacing below the headshot wrapper */
.ccfam-trainer-card .elementor-widget-image {
  margin-bottom: 12px !important;
}/* End custom CSS */