.elementor-3912 .elementor-element.elementor-element-8dd6527{--display:flex;left:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:30px;--padding-bottom:0px;--padding-left:120px;--padding-right:0px;}.elementor-3912 .elementor-element.elementor-element-8dd6527.e-con{--order:-99999 /* order start hack */;}.elementor-widget-theme-post-title .elementor-heading-title{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 );color:var( --e-global-color-primary );}.elementor-3912 .elementor-element.elementor-element-6674098 > .elementor-widget-container{margin:0px 0px 0px -0px;padding:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-6674098 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:44px;font-weight:600;line-height:55px;color:#255E99;}.elementor-3912 .elementor-element.elementor-element-5ed8910{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:120px;--padding-right:0px;}.elementor-3912 .elementor-element.elementor-element-5ed8910.e-con{--order:-99999 /* order start hack */;}.elementor-widget-post-info .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-post-info .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-post-info .elementor-icon-list-text, .elementor-widget-post-info .elementor-icon-list-text a{color:var( --e-global-color-secondary );}.elementor-widget-post-info .elementor-icon-list-item{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-3912 .elementor-element.elementor-element-62a55e1 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:20px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-62a55e1 .elementor-icon-list-icon{width:14px;}.elementor-3912 .elementor-element.elementor-element-62a55e1 .elementor-icon-list-icon i{font-size:14px;}.elementor-3912 .elementor-element.elementor-element-62a55e1 .elementor-icon-list-icon svg{--e-icon-list-icon-size:14px;}.elementor-widget-theme-post-featured-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-3912 .elementor-element.elementor-element-b03c1de{width:100%;max-width:100%;text-align:left;}.elementor-3912 .elementor-element.elementor-element-b03c1de > .elementor-widget-container{margin:0px 0px 0px 0px;padding:30px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-b03c1de img{width:50%;}.elementor-3912 .elementor-element.elementor-element-7fa7b8b{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );left:0px;--padding-top:20px;--padding-bottom:0px;--padding-left:120px;--padding-right:500px;}.elementor-3912 .elementor-element.elementor-element-7fa7b8b.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-widget-theme-post-content{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-3912 .elementor-element.elementor-element-f2c73a4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-f2c73a4{text-align:justify;font-family:"Poppins", Sans-serif;font-size:17px;font-weight:400;line-height:29px;}.elementor-3912 .elementor-element.elementor-element-622bb2b{--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-3912 .elementor-element.elementor-element-712a115 > .elementor-widget-container{margin:-48px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-712a115{top:62px;}.elementor-3912 .elementor-element.elementor-element-a70801d{--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(min-width:768px){.elementor-3912 .elementor-element.elementor-element-7fa7b8b{--width:100%;}}@media(max-width:1024px){.elementor-3912 .elementor-element.elementor-element-8dd6527{--padding-top:100px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-3912 .elementor-element.elementor-element-6674098 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-6674098 .elementor-heading-title{font-size:40px;}.elementor-3912 .elementor-element.elementor-element-5ed8910{--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-widget-post-info .elementor-icon-list-item{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-theme-post-featured-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-3912 .elementor-element.elementor-element-7fa7b8b{--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:20px;}.elementor-widget-theme-post-content{font-size:var( --e-global-typography-text-font-size );}}@media(max-width:767px){.elementor-3912 .elementor-element.elementor-element-8dd6527{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-3912 .elementor-element.elementor-element-6674098 > .elementor-widget-container{margin:0px 0px 0px 3px;padding:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-6674098 .elementor-heading-title{font-size:30px;line-height:1.2em;}.elementor-3912 .elementor-element.elementor-element-5ed8910{--padding-top:5px;--padding-bottom:5px;--padding-left:5px;--padding-right:5px;}.elementor-widget-post-info .elementor-icon-list-item{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-theme-post-featured-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-3912 .elementor-element.elementor-element-b03c1de > .elementor-widget-container{padding:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-b03c1de img{width:100%;}.elementor-3912 .elementor-element.elementor-element-7fa7b8b{--width:367.667px;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:6px;--padding-right:6px;}.elementor-widget-theme-post-content{font-size:var( --e-global-typography-text-font-size );}.elementor-3912 .elementor-element.elementor-element-f2c73a4 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3912 .elementor-element.elementor-element-f2c73a4{text-align:justify;}}/* Start custom CSS for theme-post-title, class: .elementor-element-6674098 *//* ===== Single Post hard align: title, meta, image, content share same left edge ===== */
:root{
  --post-max: 860px;
  --post-pad: 24px;
}

/* One consistent container for all primary bits */
body.single-post .site-main > article,
body.single-post .site-main > article .entry-header,
body.single-post .site-main > article .entry-content,
body.single-post .site-main > article .post-thumbnail,
body.single-post .site-main > article .entry-meta,
body.single-post .site-main > article .post-meta {
  box-sizing: border-box;
  max-width: var(--post-max);
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--post-pad);
  padding-right: var(--post-pad);
}

/* Title: force left alignment and remove stray offsets */
body.single-post .entry-title,
body.single-post h1.entry-title {
  text-align: left !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
}

/* Meta row under title */
body.single-post .entry-meta,
body.single-post .post-meta {
  text-align: left !important;
  margin-top: .375rem;
  padding-left: 0 !important;
}

/* Featured image + Gutenberg images align to same container */
body.single-post .post-thumbnail,
body.single-post .wp-block-image {
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.single-post .post-thumbnail img,
body.single-post .wp-block-image img {
  display: block;
  width: 100%;
  height: auto;
}

/* Neutralize "wide" and "full" that push images right on Safari */
body.single-post .alignwide,
body.single-post .alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  max-width: var(--post-max) !important;
  width: auto !important;
}

/* Some themes wrap content with extra negative margins — kill them */
body.single-post .entry-content > .wp-block-group.alignwide,
body.single-post .entry-content > .wp-block-group.alignfull {
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Small screens: trim side padding if you like */
@media (max-width: 640px){
  :root{ --post-pad: 16px; }
}/* End custom CSS */
/* Start custom CSS for theme-post-content, class: .elementor-element-f2c73a4 *//* --- Blog paragraph width control --- */
.single-post .entry-content,
.elementor-widget-theme-post-content {
  max-width: 750px;           /* desired text width */
  margin: 0 auto;             /* center the block */
  line-height: 1.75;          /* improve readability */
  font-size: 17px;            /* optional: slightly larger for long reads */
  color: #111827;             /* ensure good contrast */
}

/* Optional: Adjust padding for mobile */
@media (max-width: 768px) {
  .single-post .entry-content,
  .elementor-widget-theme-post-content {
    max-width: 90%;           /* use more space on small screens */
    font-size: 16px;
  }
}

/* Keep images nicely aligned with the text block */
.single-post .entry-content img,
.post-content img,
.elementor-widget-theme-post-content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 24px auto;
  border-radius: 8px;
  object-fit: cover;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-712a115 *//* === Related Courses: align & style like "Latest Articles" === */
.bs-related-courses{
  max-width: 1280px;
  padding: 0 20px;
  margin: 0 auto 32px;
  font-family: Poppins, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}
.bs-related-courses .bs-rc-title{
  font-size: 44px;
  line-height: 1.15;
  font-weight: 800;
  text-align: center;
  margin: 0 0 28px;
}

/* Desktop / tablet: grid */
.bs-related-courses .bs-rc-grid{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 32px;
  align-items: stretch;
}

.bs-related-courses .bs-rc-card{
  border-radius: 24px;
  box-shadow: 0 10px 28px rgba(0,0,0,.06);
  padding: 14px 16px 18px;
  background:#fff;
}
.bs-related-courses .bs-rc-thumb{ border-radius: 16px; display:block; width:100%; height:auto; }
.bs-related-courses .bs-rc-cat{
  margin: 12px 0 6px;
  font-size: 12px;
  letter-spacing: .06em;
  font-weight: 800;
  text-transform: uppercase;
  color: #0a8aa0;
}
.bs-related-courses .bs-rc-name{
  font-size: 22px;
  line-height: 1.3;
  font-weight: 700;
  margin: 0;
}

/* === Mobile full‑bleed + carousel with a peek of next card === */
@media (max-width: 767px){

  /* 1) Make the section full‑bleed (escape page padding) */
  .bs-related-courses{
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  .entry-content .bs-related-courses,
  .content-area .bs-related-courses,
  .site-main .bs-related-courses{
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* 2) Carousel track with small side gutters */
  .bs-related-courses .bs-rc-grid{
    display: flex !important;
    gap: 16px !important;
    overflow-x: auto !important;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    padding: 0 16px 12px !important;   /* left/right gutters */
  }
  .bs-related-courses .bs-rc-grid::-webkit-scrollbar{ height:0; width:0; }

  /* Let the last slide breathe */
  .bs-related-courses .bs-rc-grid::after{
    content:""; flex:0 0 16px;
  }

  /* 3) Slides: narrower than viewport so next card peeks in */
  .bs-related-courses .bs-rc-card{
    /* ~88% of viewport (minus gutters) shows a sliver of the next card */
    flex: 0 0 calc(88vw - 32px) !important;
    scroll-snap-align: start !important;

    border-radius: 28px !important;
    box-shadow: 0 16px 40px rgba(0,0,0,.10) !important;
    overflow: hidden !important;
    background: #fff;
  }

  /* Image keeps 16:9 and fills the top */
  .bs-related-courses .bs-rc-thumb{
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    display: block !important;
  }

  /* Comfortable inner spacing for text */
  .bs-related-courses .bs-rc-cat,
  .bs-related-courses .bs-rc-name{
    margin-left: 20px !important;
    margin-right: 20px !important;
  }
  .bs-related-courses .bs-rc-cat{
    margin-top: 14px !important;
    margin-bottom: 8px !important;
  }
  .bs-related-courses .bs-rc-name{
    font-size: 28px !important;   /* larger heading */
    line-height: 1.25 !important;
    font-weight: 800 !important;
    margin-bottom: 18px !important;
  }

  /* Title spacing */
  .bs-related-courses .bs-rc-title{
    padding: 0 16px !important;
    margin-bottom: 22px !important;
  }
}

/* Optional: tiny phones – small tweak keeps the peek visible */
@media (max-width: 380px){
  .bs-related-courses .bs-rc-card{
    flex-basis: calc(86vw - 28px) !important; /* a touch narrower on very small screens */
  }
}

  /* Optional: hide the scrollbar for WebKit */
  .bs-related-courses .bs-rc-grid::-webkit-scrollbar{ height:0; width:0; }

  /* Tighter heading on small screens */
  .bs-related-courses .bs-rc-title{ font-size: 32px; margin-bottom: 22px; }

  /* Slightly larger title inside cards for readability */
  .bs-related-courses .bs-rc-name{ font-size: 20px; }
}

/* Very small phones */
@media (max-width: 420px){
  .bs-related-courses .bs-rc-card{ flex-basis: 88%; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-a70801d */.dc-carousel-wrapper {
    max-width: 1120px; /* Or 1200px. Adjust as needed */
    margin: 60px auto;
    font-family: 'Poppins', sans-serif;
    padding: 0 20px;
}
.dc-carousel-track {
    display: flex;
    gap: 24px;    /* A little more space between cards */
    overflow-x: auto;
    scroll-behavior: smooth;
    padding-bottom: 10px;
}
.dc-carousel-card {
    flex: 0 0 32%;      /* 3 cards in a row, accounting for gap */
    min-width: 320px;   /* Prevents cards from getting too small */
    max-width: 400px;   /* Optional: Don’t let cards get too wide */
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    overflow: hidden;
    transition: transform 0.3s;
}
@media (max-width: 1000px) {
    .dc-carousel-card { flex: 0 0 48%; }
}
@media (max-width: 700px) {
    .dc-carousel-card { flex: 0 0 92%; min-width: 260px; }
}/* End custom CSS */