.elementor-707 .elementor-element.elementor-element-dc70d35:not(.elementor-motion-effects-element-type-background), .elementor-707 .elementor-element.elementor-element-dc70d35 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://hospitalcer.cergroupco.com/wp-content/uploads/2024/09/Heading-10.jpg");background-position:bottom right;background-repeat:no-repeat;background-size:cover;}.elementor-707 .elementor-element.elementor-element-dc70d35 > .elementor-background-overlay{background-color:#0F59BCB5;opacity:0;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-707 .elementor-element.elementor-element-dc70d35 > .elementor-container{max-width:1300px;}.elementor-707 .elementor-element.elementor-element-dc70d35{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:0px;margin-bottom:0px;padding:0em 0em 0em 0em;}.elementor-707 .elementor-element.elementor-element-11427c9{--spacer-size:9vh;}.elementor-707 .elementor-element.elementor-element-cfd211a{width:100%;max-width:100%;}.elementor-707 .elementor-element.elementor-element-cfd211a.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-707 .elementor-element.elementor-element-cfd211a .jeg-elementor-kit.jkit-heading.title-float-left .jkit-heading-title-wrapper{width:98%;}.elementor-707 .elementor-element.elementor-element-cfd211a .jeg-elementor-kit.jkit-heading{text-align:center;}.elementor-707 .elementor-element.elementor-element-cfd211a .jeg-elementor-kit.jkit-heading .heading-title{font-family:"Outfit", Sans-serif;font-size:75px;font-weight:700;color:var( --e-global-color-primary );}.elementor-707 .elementor-element.elementor-element-cfd211a .jeg-elementor-kit.jkit-heading .heading-title > span{color:#7CD6FF;}.elementor-707 .elementor-element.elementor-element-0031d6d{--spacer-size:50px;}.elementor-707 .elementor-element.elementor-element-4857ebe{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-707 .elementor-element.elementor-element-26ea6db{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-707 .elementor-element.elementor-element-26ea6db.e-con{--flex-grow:1;--flex-shrink:0;}.elementor-707 .elementor-element.elementor-element-1c371f3{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-707 .elementor-element.elementor-element-576bc85{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-707 .elementor-element.elementor-element-b7115fb{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-707 .elementor-element.elementor-element-fdd8ab4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(max-width:1366px){.elementor-707 .elementor-element.elementor-element-cfd211a{width:var( --container-widget-width, 1170px );max-width:1170px;--container-widget-width:1170px;--container-widget-flex-grow:0;}}@media(min-width:1367px){.elementor-707 .elementor-element.elementor-element-dc70d35:not(.elementor-motion-effects-element-type-background), .elementor-707 .elementor-element.elementor-element-dc70d35 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}@media(max-width:1024px){.elementor-707 .elementor-element.elementor-element-11427c9{--spacer-size:340px;}}@media(max-width:767px){.elementor-707 .elementor-element.elementor-element-dc70d35{padding:0em 0em 3em 0em;}.elementor-707 .elementor-element.elementor-element-11427c9{--spacer-size:0vh;}.elementor-707 .elementor-element.elementor-element-cfd211a{width:100%;max-width:100%;}.elementor-707 .elementor-element.elementor-element-cfd211a > .elementor-widget-container{padding:0em 1em 0em 1em;}.elementor-707 .elementor-element.elementor-element-cfd211a .jeg-elementor-kit.jkit-heading .heading-title{font-size:38px;}.elementor-707 .elementor-element.elementor-element-0031d6d{--spacer-size:0px;}}/* Start custom CSS *//* ============================================================
   CER HOSPITAL — CSS CONSOLIDADO
   Página: Bariatric Program (/bariatric-program/)
   Elementos: 1-Hero  2-About  3-Benefits  4-Procedures
              5-Doctors  6-CTA
   ============================================================ */

/* ── VARIABLES ── */
:root {
  --cer-blue-dark:  #1e3c78;
  --cer-blue:       #2c52a0;
  --cer-blue-light: #4a9fd4;
  --cer-white:      #ffffff;
  --cer-bg-soft:    #f9fbfc;
  --cer-border:     #eef2f6;
  --cer-text:       #333333;
  --cer-text-soft:  #555555;
  --cer-text-muted: #666666;
  --cer-font:       'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --cer-radius-lg:  30px;
  --cer-radius-md:  20px;
  --cer-radius-sm:  15px;
  --cer-btn-radius: 50px;
  --cer-shadow-sm:  0 10px 30px rgba(0, 0, 0, 0.05);
  --cer-shadow-md:  0 20px 40px rgba(44, 82, 160, 0.10);
  --cer-transition: all 0.3s ease;
}


/* ============================================================
   BASE COMPARTIDA — prefijo bp- (bariatric page)
   ============================================================ */

.bp-title {
  color: var(--cer-blue) !important;
  font-size: 2.5rem !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  margin-bottom: 20px !important;
}

.bp-title--lg {
  font-size: 2.8rem !important;
}

.bp-subtitle {
  color: var(--cer-text-muted) !important;
  font-size: 1.1rem !important;
  margin-bottom: 50px !important;
}

.bp-body {
  color: var(--cer-text-soft) !important;
  font-size: 1.05rem !important;
  line-height: 1.8 !important;
  margin-bottom: 20px !important;
}

.bp-section-header {
  text-align: center !important;
  margin-bottom: 50px !important;
}

/* Link estilo dotted — unifica btn-learn-more y btn-dr-bariatric */
.bp-link-btn {
  text-decoration: none !important;
  border-bottom: 1px dotted var(--cer-blue) !important;
  color: var(--cer-blue) !important;
  font-weight: 700 !important;
  padding-bottom: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: var(--cer-transition) !important;
  font-size: 0.9rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}
.bp-link-btn:hover {
  border-bottom-style: solid !important;
  opacity: 0.8 !important;
  color: var(--cer-blue) !important;
}

/* bp-link-btn variante sin uppercase (para doctor cards) */
.bp-link-btn--normal {
  font-size: 1rem !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}


/* ============================================================
   ELEMENTO 1 — SERVICE HERO
   ============================================================ */

.cer-service-section {
  font-family: var(--cer-font) !important;
  max-width: 1200px !important;
  margin: 60px auto !important;
  padding: 20px !important;
  color: var(--cer-text) !important;
}

.cer-grid-main {
  display: grid !important;
  grid-template-columns: 1fr 1.2fr !important;
  gap: 40px !important;
  align-items: start !important;
}

.cer-image-container { position: relative !important; }

.cer-main-img {
  width: 100% !important;
  border-radius: var(--cer-radius-md) !important;
  box-shadow: 0 20px 40px rgba(0,0,0,0.1) !important;
  display: block !important;
}

.cer-badge {
  position: absolute !important;
  bottom: -20px !important;
  left: 20px !important;
  background: var(--cer-white) !important;
  padding: 20px 30px !important;
  border-radius: var(--cer-radius-sm) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
  text-align: center !important;
  min-width: 180px !important;
}

.cer-badge-icon {
  font-size: 24px !important;
  margin-bottom: 8px !important;
  display: block !important;
}

.cer-badge strong {
  display: block !important;
  font-size: 1.1rem !important;
  color: var(--cer-blue) !important;
}

.cer-content { padding-top: 10px !important; }

.cer-label {
  color: var(--cer-text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  display: block !important;
}

/* Galería de 2 imágenes — renombrada para evitar conflicto con our-hospital */
.bp-img-gallery {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
}

.bp-img-gallery-item {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  border-radius: var(--cer-radius-sm) !important;
  transition: transform 0.3s ease !important;
}
.bp-img-gallery-item:hover { transform: scale(1.03) !important; }


/* ============================================================
   ELEMENTO 2 — ABOUT HOSPITAL CER
   ============================================================ */

.cer-about-container {
  max-width: 1200px !important;
  margin: 60px auto !important;
  padding: 20px !important;
  font-family: var(--cer-font) !important;
}

.cer-about-flex {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 40px !important;
  align-items: center !important;
  background-color: var(--cer-bg-soft) !important;
  padding: 40px !important;
  border-radius: var(--cer-radius-lg) !important;
  border: 1px solid var(--cer-border) !important;
}

.cer-about-text { flex: 1 1 500px !important; }

.cer-about-image {
  flex: 1 1 350px !important;
  max-width: 450px !important;
}
.cer-about-image img {
  width: 100% !important;
  height: auto !important;
  border-radius: var(--cer-radius-md) !important;
  box-shadow: 15px 15px 30px rgba(0,0,0,0.08) !important;
  display: block !important;
  object-fit: cover !important;
}

/* Link "Learn More About Our Hospital" */
.cer-hospital-link {
  text-decoration: none !important;
  border-bottom: 1px dotted var(--cer-blue) !important;
  color: var(--cer-blue) !important;
  font-weight: 700 !important;
  padding-bottom: 3px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  transition: var(--cer-transition) !important;
  font-size: 1.1rem !important;
  margin-top: 10px !important;
}
.cer-hospital-link:hover {
  border-bottom-style: solid !important;
  opacity: 0.8 !important;
  color: var(--cer-blue) !important;
}


/* ============================================================
   ELEMENTO 3 — BENEFITS / ADVANTAGE
   ============================================================ */

.cer-benefits-section {
  max-width: 1200px !important;
  margin: 80px auto !important;
  padding: 20px !important;
  font-family: var(--cer-font) !important;
}

.cer-benefits-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
  gap: 30px !important;
}

.cer-benefit-item {
  background: var(--cer-white) !important;
  padding: 30px !important;
  border-radius: var(--cer-radius-md) !important;
  border: 1px solid var(--cer-border) !important;
  transition: var(--cer-transition) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}
.cer-benefit-item:hover {
  box-shadow: var(--cer-shadow-sm) !important;
  border-color: var(--cer-blue) !important;
}

.cer-benefit-icon {
  width: 50px !important;
  height: 50px !important;
  background: #f0f4fa !important;
  border-radius: 12px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 20px !important;
  font-size: 24px !important;
  color: var(--cer-blue) !important;
}

.cer-benefit-item h3 {
  color: var(--cer-text) !important;
  font-size: 1.25rem !important;
  margin-bottom: 12px !important;
  font-weight: 600 !important;
}

.cer-benefit-item p {
  color: var(--cer-text-muted) !important;
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}


/* ============================================================
   ELEMENTO 4 — PROCEDURE CARDS
   ============================================================ */

.bariatric-container {
  font-family: var(--cer-font) !important;
  max-width: 1200px !important;
  margin: 40px auto !important;
  padding: 20px !important;
  text-align: center !important;
}

.procedures-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  gap: 30px !important;
  padding: 10px !important;
}

.procedure-card {
  background: var(--cer-white) !important;
  border-radius: var(--cer-radius-sm) !important;
  padding: 30px 20px !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  border: 1px solid #eeeeee !important;
}
.procedure-card:hover {
  transform: translateY(-10px) !important;
  box-shadow: 0 15px 30px rgba(0,0,0,0.1) !important;
}

.procedure-icon {
  width: 120px !important;
  height: 120px !important;
  margin-bottom: 20px !important;
  object-fit: contain !important;
}

.procedure-card h3 {
  color: var(--cer-text) !important;
  font-size: 1.8rem !important;
  margin-bottom: 15px !important;
  line-height: 1.2 !important;
  min-height: 70px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.procedure-card p {
  color: var(--cer-text-muted) !important;
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  margin-bottom: 25px !important;
  flex-grow: 1 !important;
}


/* ============================================================
   ELEMENTO 5 — DOCTOR CARDS
   ============================================================ */

.bariatric-doctors-section {
  max-width: 1100px !important;
  margin: 80px auto !important;
  padding: 20px !important;
  font-family: var(--cer-font) !important;
}

.bariatric-doctors-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 40px !important;
}

.dr-card {
  background: var(--cer-white) !important;
  border-radius: var(--cer-radius-lg) !important;
  border: 1px solid var(--cer-border) !important;
  padding: 40px !important;
  text-align: center !important;
  transition: var(--cer-transition) !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.03) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
.dr-card:hover {
  transform: translateY(-10px) !important;
  box-shadow: var(--cer-shadow-md) !important;
  border-color: var(--cer-blue) !important;
}

.dr-img-wrapper {
  width: 200px !important;
  height: 200px !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  margin-bottom: 25px !important;
  border: 5px solid #f0f4fa !important;
}
.dr-img-wrapper img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

.dr-info h3 {
  color: var(--cer-text) !important;
  font-size: 1.8rem !important;
  margin-bottom: 10px !important;
}

.dr-tag {
  background: var(--cer-border) !important;
  color: var(--cer-blue) !important;
  padding: 6px 15px !important;
  border-radius: var(--cer-btn-radius) !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  display: inline-block !important;
  margin-bottom: 20px !important;
}

.dr-bio {
  color: var(--cer-text-muted) !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
  margin-bottom: 30px !important;
  flex-grow: 1 !important;
}


/* ============================================================
   ELEMENTO 6 — HYBRID CTA
   ============================================================ */

.hybrid-cta-container {
  max-width: 1100px !important;
  margin: 80px auto !important;
  padding: 60px 40px !important;
  background: linear-gradient(135deg, #1e3a73 0%, var(--cer-blue) 50%, #4a90e2 100%) !important;
  border-radius: var(--cer-radius-lg) !important;
  font-family: var(--cer-font) !important;
  text-align: center !important;
  position: relative !important;
  box-shadow: 0 25px 50px rgba(30, 58, 115, 0.2) !important;
  border: 4px solid rgba(255, 255, 255, 0.1) !important;
}

.hybrid-logos {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 20px !important;
  margin-bottom: 35px !important;
  opacity: 0.9 !important;
}

.branding-separator-hybrid {
  width: 2px !important;
  height: 24px !important;
  background: var(--cer-white) !important;
  opacity: 0.5 !important;
}

.hybrid-logos strong {
  color: var(--cer-white) !important;
  font-size: 0.9rem !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

.hybrid-cta-content h2 {
  color: var(--cer-white) !important;
  font-size: 2.8rem !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  letter-spacing: -0.5px !important;
}

.hybrid-cta-content p {
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 1.2rem !important;
  max-width: 700px !important;
  margin: 0 auto 40px auto !important;
}

.hybrid-steps {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 20px !important;
  margin-bottom: 50px !important;
}

.h-step {
  background: rgba(255, 255, 255, 0.1) !important;
  backdrop-filter: blur(10px) !important;
  padding: 20px !important;
  border-radius: var(--cer-radius-sm) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  color: var(--cer-white) !important;
}

.h-step strong {
  display: block !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  margin-bottom: 5px !important;
  color: #a5c7ff !important;
  letter-spacing: 1px !important;
}

.hybrid-main-btn {
  background-color: #0d1b3e !important;
  color: var(--cer-white) !important;
  padding: 20px 60px !important;
  border-radius: var(--cer-btn-radius) !important;
  font-size: 1.2rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
  border: 2px solid transparent !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}
.hybrid-main-btn:hover {
  background-color: var(--cer-white) !important;
  color: #0d1b3e !important;
  transform: scale(1.05) !important;
}


/* ============================================================
   RESPONSIVE
   ============================================================ */

@media (max-width: 992px) {

  /* E1 */
  .cer-grid-main       { grid-template-columns: 1fr !important; }
  .cer-image-container { margin-bottom: 40px !important; }
  .cer-content .bp-title--lg { font-size: 2.2rem !important; }

  /* E2 */
  .cer-about-flex  { flex-direction: column !important; padding: 30px 20px !important; }
  .cer-about-image { max-width: 100% !important; }
  .cer-about-text .bp-title { font-size: 2rem !important; text-align: center !important; }
  .cer-about-text .bp-body  { text-align: center !important; }
  .cer-hospital-link { display: flex !important; justify-content: center !important; }
}

@media (max-width: 850px) {

  /* E5 */
  .bariatric-doctors-grid { grid-template-columns: 1fr !important; }

  /* E6 */
  .hybrid-steps           { grid-template-columns: 1fr !important; }
  .hybrid-cta-content h2  { font-size: 2rem !important; }
  .hybrid-logos           { flex-direction: column !important; gap: 10px !important; }
  .branding-separator-hybrid { display: none !important; }
}

@media (max-width: 768px) {

  /* E3 */
  .cer-benefits-grid { grid-template-columns: 1fr !important; }

  /* E4 */
  .procedures-grid   { grid-template-columns: 1fr !important; }
  .bariatric-container .bp-title { font-size: 2rem !important; }
}/* End custom CSS */