.elementor-5754 .elementor-element.elementor-element-235e77c{--display:flex;--min-height:100vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-5754 .elementor-element.elementor-element-0c4dba3{--display:flex;--overflow:hidden;--border-radius:30px 30px 30px 30px;box-shadow:0px 0px 30px 5px rgba(3.2196376074470074, 76.25159177391853, 224.96673583984372, 0.5);--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-5754 .elementor-element.elementor-element-0c4dba3:not(.elementor-motion-effects-element-type-background), .elementor-5754 .elementor-element.elementor-element-0c4dba3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-5754 .elementor-element.elementor-element-e515142.elementor-element{--align-self:flex-end;}.elementor-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-5754 .elementor-element.elementor-element-c652b36 .elementor-heading-title{font-family:"Open Sans", Sans-serif;font-weight:700;color:#434343;}.elementor-widget-theme-post-content{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-5754 .elementor-element.elementor-element-3878aca{text-align:justify;}body.elementor-page-5754:not(.elementor-motion-effects-element-type-background), body.elementor-page-5754 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#D2D2D2;}@media(min-width:768px){.elementor-5754 .elementor-element.elementor-element-0c4dba3{--width:55%;}}/* Start custom CSS for html, class: .elementor-element-e515142 */.course-close{
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 26px;
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
  z-index: 999;
  color: #000;
  cursor: pointer;
}

.course-close:hover,
.course-close:focus,
.course-close:active,
.course-close:visited{
  color: #000;
  text-decoration: none;
}

.course-close{
  cursor: pointer;
}/* End custom CSS */
/* Start custom CSS *//* Overlay + modal positioning */
.course-overlay{
  min-height: 100vh;
  background: rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
}

.course-modal{
  position: relative; /* needed for absolute close button */
  max-width: 820px;
  width: 100%;
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
}

/* Close button */
.course-close{
  position: absolute;
  top: 16px;
  right: 16px;
  font-size: 26px;
  font-weight: 700;
  text-decoration: none;
  line-height: 1;
  z-index: 999;
  color: #000;
  cursor: pointer;
}
.course-close:hover,
.course-close:focus,
.course-close:visited{
  color: #000;
  opacity: 0.7;
}

/* Entrance animation */
.course-overlay{
  opacity: 1;
  transition: opacity 200ms ease;
}
.course-modal{
  transform: scale(1);
  opacity: 1;
  transition: transform 200ms ease, opacity 200ms ease;
}

/* Exit animation (triggered by JS adding .is-closing) */
.course-overlay.is-closing{
  opacity: 0;
}
.course-overlay.is-closing .course-modal{
  transform: scale(0.98);
  opacity: 0;
}

.course-modal .elementor-widget-theme-post-content img:first-of-type{
  max-width: 420px;
  width: 50%;
  height: auto;
  object-fit: contain;
  transform: scale(0.85);   /* ↓ makes image smaller */
  transform-origin: center;
  display: block;
  margin: 5px auto 10px;
}

@media (max-width: 768px){
  .course-modal .elementor-widget-theme-post-content img:first-of-type{
    max-width: 280px;
  }
}/* End custom CSS */