.elementor-4141 .elementor-element.elementor-element-34bd316{--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;}/* Start custom CSS *//* ============================================================
   CER HOSPITAL — CSS CONSOLIDADO
   Página: Blog Post — Tijuana Hotels Near CER Hospital
   URL destino: /tijuana-hotels-near-cer-hospital/
   Elementos: 1-Article Header  2-Hotel Cards  3-Tip/Amenities/Resources  4-FAQ
   ============================================================ */

/* ── VARIABLES LOCALES ── */
:root {
  --bp-navy:       #1e3c78;   /* Azul navy oscuro — títulos */
  --bp-blue:       #2c52a0;   /* Azul CER — acentos, headings */
  --bp-blue-light: #4a9fd4;   /* Azul claro — bordes, iconos, review labels */
  --bp-bg-soft:    #f8f9fc;
  --bp-bg-tag:     #eef2f6;
  --bp-border:     #eaeef3;
  --bp-border-alt: #dbe4f0;
  --cer-white:     #ffffff;
  --cer-text:      #444444;
  --cer-text-soft: #555555;
  --cer-text-muted:#666666;
  --cer-font:      'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --cer-radius-lg: 20px;
  --cer-radius-md: 15px;
  --cer-radius-sm: 12px;
  --cer-transition: all 0.3s ease;
}


/* ============================================================
   ELEMENTO 1 — ARTICLE WRAPPER + HEADER + BENEFITS BOX
   ============================================================ */

.cer-article-container {
  font-family: var(--cer-font) !important;
  max-width: 900px !important;
  margin: 60px auto !important;
  padding: 0 20px !important;
  color: var(--cer-text) !important;
  line-height: 1.8 !important;
}

/* ── Header / Hero ── */
.cer-article-header {
  text-align: center !important;
  margin-bottom: 50px !important;
  padding-bottom: 40px !important;
  border-bottom: 1px solid var(--bp-border) !important;
}

.cer-category-tag {
  display: inline-block !important;
  background: var(--bp-bg-tag) !important;
  color: var(--bp-blue) !important;
  padding: 8px 16px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 0.85rem !important;
  margin-bottom: 20px !important;
}

.cer-article-title {
  font-size: 3.2rem !important;
  font-weight: 800 !important;
  color: var(--bp-navy) !important;
  line-height: 1.15 !important;
  margin-bottom: 20px !important;
  letter-spacing: -0.5px !important;
}

.cer-article-subtitle {
  font-size: 1.4rem !important;
  color: var(--cer-text-muted) !important;
  font-weight: 400 !important;
  max-width: 700px !important;
  margin: 0 auto !important;
}

/* ── Body typography ── */
.cer-lead-paragraph {
  font-size: 1.2rem !important;
  color: #333 !important;
  margin-bottom: 30px !important;
}

.cer-article-container h2 {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  color: var(--bp-blue) !important;
  margin: 50px 0 25px !important;
}

.cer-article-container p {
  font-size: 1.1rem !important;
  margin-bottom: 25px !important;
}

/* ── Benefits box (checklist SVG) ── */
.cer-benefits-box {
  background: var(--bp-bg-soft) !important;
  border-radius: var(--cer-radius-lg) !important;
  padding: 40px !important;
  margin: 40px 0 !important;
  box-shadow: 0 10px 30px rgba(44, 82, 160, 0.05) !important;
  border-left: 6px solid var(--bp-blue-light) !important;
}

.cer-benefits-box h3 {
  color: var(--bp-navy) !important;
  font-size: 1.5rem !important;
  margin-top: 0 !important;
  margin-bottom: 20px !important;
}

.cer-benefits-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.cer-benefits-list li {
  font-size: 1.1rem !important;
  color: var(--cer-text-soft) !important;
  margin-bottom: 15px !important;
  padding-left: 35px !important;
  position: relative !important;
}

/* SVG checkmark via data-URI — color #4a9fd4 */
.cer-benefits-list li::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: 4px !important;
  width: 20px !important;
  height: 20px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a9fd4' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 11.08V12a10 10 0 1 1-5.93-9.14'%3E%3C/path%3E%3Cpolyline points='22 4 12 14.01 9 11.01'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
}


/* ============================================================
   ELEMENTO 2 — HOTEL PREMIUM CARDS
   ============================================================ */

/* H2 de sección que antes era inline style */
.blog-section-h2 {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  color: var(--bp-blue) !important;
  margin: 50px 0 20px !important;
}

.cer-hotels-intro {
  font-size: 1.15rem !important;
  color: var(--cer-text) !important;
  margin-bottom: 50px !important;
  line-height: 1.8 !important;
}

/* ── Card wrapper ── */
.cer-hotel-premium-card {
  display: flex !important;
  background: var(--cer-white) !important;
  border-radius: 25px !important;
  overflow: hidden !important;
  box-shadow: 0 15px 40px rgba(0,0,0,0.06) !important;
  border: 1px solid #f0f4f8 !important;
  margin-bottom: 50px !important;
  transition: transform 0.3s ease !important;
}
.cer-hotel-premium-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 20px 50px rgba(44,82,160,0.1) !important;
}

/* ── Image side (45%) ── */
.cer-hpc-image-box {
  flex: 0 0 45% !important;
  position: relative !important;
  min-height: 350px !important;
}
.cer-hpc-image-box img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* Distance badge over photo */
.cer-hpc-distance-badge {
  position: absolute !important;
  top: 20px !important;
  left: 20px !important;
  background: rgba(44, 82, 160, 0.95) !important;
  color: var(--cer-white) !important;
  padding: 10px 20px !important;
  border-radius: 50px !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  box-shadow: 0 10px 20px rgba(0,0,0,0.2) !important;
  backdrop-filter: blur(5px) !important;
}

/* ── Content side ── */
.cer-hpc-content {
  flex: 1 !important;
  padding: 40px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.cer-hpc-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: flex-start !important;
  margin-bottom: 15px !important;
}

.cer-hpc-title {
  font-size: 2rem !important;
  font-weight: 800 !important;
  color: var(--bp-navy) !important;
  margin: 0 !important;
  line-height: 1.2 !important;
}

.cer-hpc-stars {
  color: #fbbc04 !important;
  font-size: 1.3rem !important;
  letter-spacing: 2px !important;
}

.cer-hpc-highlights {
  font-size: 1.1rem !important;
  color: var(--cer-text-soft) !important;
  margin-bottom: 25px !important;
  line-height: 1.6 !important;
}

/* Key data grid (3 col) */
.cer-hpc-data-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 15px !important;
  background: #f8f9fa !important;
  padding: 20px 25px !important;
  border-radius: var(--cer-radius-md) !important;
  margin-bottom: 25px !important;
}

.cer-data-item {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
}

.cer-data-label {
  font-size: 0.85rem !important;
  text-transform: uppercase !important;
  color: #888 !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
}

.cer-data-value {
  font-size: 1.05rem !important;
  color: #333 !important;
  font-weight: 600 !important;
}

.cer-data-value.cer-highlight { color: var(--bp-blue) !important; }

/* Patient review blockquote */
.cer-hpc-review {
  background: var(--cer-white) !important;
  border-left: 4px solid var(--bp-blue-light) !important;
  padding: 15px 25px !important;
  font-style: italic !important;
  color: var(--cer-text-muted) !important;
  font-size: 1.05rem !important;
  line-height: 1.6 !important;
  margin: 0 !important;
}

.cer-review-label {
  display: block !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: var(--bp-blue-light) !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  margin-bottom: 8px !important;
  letter-spacing: 1px !important;
}


/* ============================================================
   ELEMENTO 3 — TRAVEL TIP / AMENITIES GRID / RESOURCES
   ============================================================ */

/* Travel Tip box */
.cer-travel-tip {
  background: var(--bp-bg-tag) !important;
  border-radius: var(--cer-radius-md) !important;
  padding: 30px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 20px !important;
  margin: 50px 0 !important;
  border: 1px solid var(--bp-border-alt) !important;
}

.cer-tip-icon {
  flex-shrink: 0 !important;
  background: var(--bp-blue) !important;
  color: var(--cer-white) !important;
  width: 50px !important;
  height: 50px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
}

.cer-tip-content h3 {
  margin-top: 0 !important;
  color: var(--bp-navy) !important;
  font-size: 1.3rem !important;
  margin-bottom: 10px !important;
}

.cer-tip-content p { margin: 0 !important; font-size: 1.05rem !important; }

/* Amenities grid (2 col) */
.cer-amenities-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 25px !important;
  margin-bottom: 60px !important;
}

.cer-amenity-card {
  background: var(--cer-white) !important;
  border: 1px solid var(--bp-border) !important;
  border-radius: var(--cer-radius-md) !important;
  padding: 25px !important;
  box-shadow: 0 10px 20px rgba(0,0,0,0.03) !important;
  transition: var(--cer-transition) !important;
}
.cer-amenity-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 15px 30px rgba(44,82,160,0.08) !important;
}

.cer-amenity-card h4 {
  color: var(--bp-blue) !important;
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  margin-top: 0 !important;
  margin-bottom: 15px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.cer-amenity-card p {
  font-size: 1rem !important;
  color: var(--cer-text-soft) !important;
  margin: 0 !important;
  line-height: 1.6 !important;
}

/* Resource links list */
.cer-resources-list {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  margin-bottom: 60px !important;
}

.cer-resource-item {
  background: var(--cer-white) !important;
  border-left: 4px solid var(--bp-blue-light) !important;
  padding: 20px 25px !important;
  border-radius: 0 10px 10px 0 !important;
  box-shadow: 0 5px 15px rgba(0,0,0,0.04) !important;
}

.cer-resource-item strong {
  color: var(--bp-navy) !important;
  font-size: 1.15rem !important;
  display: block !important;
  margin-bottom: 5px !important;
}

.cer-resource-item p {
  margin: 0 !important;
  font-size: 1rem !important;
}


/* ============================================================
   ELEMENTO 4 — FAQ ACCORDION
   (versión unificada — elimina la definición parcial de E3)
   ============================================================ */

.cer-faq-section {
  margin-top: 60px !important;
  margin-bottom: 60px !important;
}

.cer-faq-section h2 {
  font-size: 2.2rem !important;
  font-weight: 700 !important;
  color: var(--bp-blue) !important;
  margin-bottom: 15px !important;
}

.cer-faq-section > p {
  font-size: 1.1rem !important;
  color: var(--cer-text-soft) !important;
  margin-bottom: 30px !important;
}

.cer-faq-item {
  background: var(--cer-white) !important;
  border: 1px solid var(--bp-border) !important;
  border-radius: var(--cer-radius-sm) !important;
  margin-bottom: 15px !important;
  overflow: hidden !important;
  box-shadow: 0 5px 15px rgba(0,0,0,0.02) !important;
  transition: box-shadow 0.3s ease !important;
}
.cer-faq-item:hover { box-shadow: 0 10px 25px rgba(44, 82, 160, 0.08) !important; }

.cer-faq-summary {
  padding: 20px 25px !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--bp-navy) !important;
  cursor: pointer !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  list-style: none !important;
  transition: background 0.3s ease !important;
  margin: 0 !important;
}
.cer-faq-summary::-webkit-details-marker { display: none !important; }
.cer-faq-summary:hover { background: #f8f9fa !important; }

.cer-faq-icon {
  flex-shrink: 0 !important;
  transition: transform 0.3s ease, color 0.3s ease !important;
  color: var(--bp-blue-light) !important;
}
.cer-faq-item[open] .cer-faq-icon {
  transform: rotate(45deg) !important;
  color: var(--bp-blue) !important;
}

.cer-faq-content {
  padding: 20px 25px 25px !important;
  color: var(--cer-text-soft) !important;
  font-size: 1.05rem !important;
  line-height: 1.7 !important;
  border-top: 1px solid var(--bp-border) !important;
  animation: cerFadeInDown 0.4s ease-out forwards !important;
}

@keyframes cerFadeInDown {
  from { opacity: 0; transform: translateY(-10px); }
  to   { opacity: 1; transform: translateY(0); }
}


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

@media (max-width: 900px) {
  /* E2 — Hotel cards apilan verticalmente */
  .cer-hotel-premium-card  { flex-direction: column !important; }
  .cer-hpc-image-box       { flex: auto !important; height: 250px !important; min-height: auto !important; }
  .cer-hpc-header          { flex-direction: column !important; gap: 10px !important; }
  .cer-hpc-title           { font-size: 1.8rem !important; }
  .cer-hpc-data-grid       { grid-template-columns: 1fr !important; padding: 20px !important; }
  .cer-hpc-content         { padding: 30px 20px !important; }
  .cer-hpc-distance-badge  { top: 15px !important; left: 15px !important; font-size: 0.85rem !important; }
}

@media (max-width: 768px) {
  /* E1 */
  .cer-article-title  { font-size: 2.4rem !important; }
  .cer-benefits-box   { padding: 30px 20px !important; }

  /* E3 */
  .cer-travel-tip     { flex-direction: column !important; align-items: center !important; text-align: center !important; }
  .cer-amenities-grid { grid-template-columns: 1fr !important; }

  /* E4 */
  .cer-faq-section h2 { font-size: 1.8rem !important; }
  .cer-faq-summary    { font-size: 1.05rem !important; padding: 15px 20px !important; gap: 10px !important; }
  .cer-faq-content    { padding: 0 20px 20px 20px !important; font-size: 1rem !important; }
}/* End custom CSS */