@import url("https://fonts.googleapis.com/css2?family=Montserrat");/* =========================================================
   SVG & SCROLL BUTTONS
   ========================================================= */
.css-en-1eks2fk {
  height: 180px !important;
}
.css-en-15kvmoc {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px;
}
.svg-button-white .elementor-button-icon svg path {
  fill: white !important;
}
.tg-scroll-to-top {
  background-color: #000;
  border-radius: 30px;
}
.masteriyo-checkout----create-user {
  display: none !important;
}
.masteriyo-courses-view-mode-section {
  display: none;
}
.masteriyo-course-search .search-field {
  margin-right: 10px;
}
.hentry {
  margin-top: 80px;
}
.hentry .entry-header,
.hentry .masteriyo-instructor-card .info,
.hentry .about {
  display: none !important;
}
blockquote,
.wp-block-quote {
  border-left: 1px solid #e9ecef;
}
.masteriyo-course-item--wrapper.masteriyo-course--card {
  box-shadow: none !important;
  border-radius: 0px !important;
}
.masteriyo-courses-wrapper.grid-view .masteriyo-col .masteriyo-course--img-wrap img,
.masteriyo-related-post .masteriyo-course--card .masteriyo-course--img-wrap img,
.masteriyo-single-course--wrapper[data-layout=default] .masteriyo-main-content-area .masteriyo-course--content .masteriyo-course--img-wrap .masteriyo-feature-img img {
  border: 0px !important;
}
/* Hide Masteriyo Reviews tab when no reviews exist */
.masteriyo-tab[onclick*="course-reviews"],
.tab-content.course-reviews {
  display: none !important;
}
.mie-marquee-item .mie-marquee-title {
  display: none;
}
.masteriyo-related-post .masteriyo-course--card .masteriyo-course--img-wrap {
  max-height: 100%;
}
/* =========================================================
   COURSE IMAGES: 3:4 PORTRAIT POSTERS
   ========================================================= */
/* Reset any 16:9 overrides */
.masteriyo-course.grid-view .masteriyo-col .masteriyo-course--img-wrap a img {
  aspect-ratio: auto !important;
  height: 100% !important;
  width: 100% !important;
  object-position: center center !important;
  background-color: #fff;
  display: block !important;
  max-width: none !important;
  max-height: none !important;
}
/* Portrait 3:4 frame */
.masteriyo-course-item--wrapper .masteriyo-course--img-wrap,
.masteriyo-course-item--wrapper .masteriyo-feature-img {
  position: relative;
  width: 100%;
  aspect-ratio: 0.75 !important;
  overflow: hidden;
  border-radius: 0px !important;
  border: 0px !important;
  background: #fff;
}
/* Ensure anchor and feature image fill the frame */
.masteriyo-course-item--wrapper .masteriyo-course--img-wrap > a {
  display: block;
  height: 100%;
  line-height: 0;
}
.masteriyo-course-item--wrapper .masteriyo-course--img-wrap .masteriyo-feature-img {
  position: absolute;
  inset: 0;
  border-radius: 0px !important;
}
/* Full image inside the frame */
.masteriyo-course-item--wrapper .masteriyo-course--img-wrap .masteriyo-feature-img img {
  width: 100%;
  height: 100%;
  object-position: center center !important;
  display: block;
  background-color: #fff;
  max-width: none !important;
  max-height: none !important;
}
/* Single course pages */
.masteriyo-single-course--wrapper .masteriyo-feature-img img {
  aspect-ratio: 0.75 !important;
  height: 100% !important;
  width: 100% !important;
  object-position: center center !important;
  background-color: #fff;
  border-radius: var(--r-xs, 12px) !important;
}
.masteriyo-single-course--main__content .masteriyo-stab {
  gap: 5px;
}
/* =========================================================
   DESIGN TOKENS
   ========================================================= */
:root {
  /* Breakpoints */
  --bp-mobile: 640px;
  --bp-tablet: 1024px;
  --bp-phone-landscape: 956px;
  --bp-iphone16pm-p: 440px;
  /* Layout */
  --header-h: 200px;
  /* Spacing */
  --space-xxs: 8px;
  --space-xs: 12px;
  --space-sm: 16px;
  --space-md: 24px;
  --space-lg: 32px;
  /* Colors */
  --c-black: #000;
  --c-white: #fff;
  --c-muted: #111;
  --c-text: #51585F;
  --c-accent: #1877F2;
  --c-accordion: #A0A0A019;
  /* Radius & Effects */
  --r-xxs: 8px;
  --r-xs: 10px;
  --r-sm: 12px;
  --r-md: 14px;
  --r-lg: 16px;
  --r-pill: 999px;
  --shadow-card: 0 0.05rem 2.8rem rgba(160, 160, 160, 0.1);
}
/* =========================================================
   COMPONENTS
   ========================================================= */
/* Marquee */
.deensimc-marquee-main-container {
  --deensimc-item-gap: 0.5rem;
  padding-block: 0;
}
.deensimc-marquee-main-container .deensimc-marquee-track > .deensimc-text-wrapper {
  background: var(--c-black);
  padding: 20px;
  border: 1px solid var(--c-black);
  border-radius: var(--r-xs);
}
.cta-title {
  border-right: 1px solid var(--c-white);
  padding-right: 10px;
}
.cta-price {
  font-weight: 600;
  padding-left: 10px;
}
.cta-year {
  font-size: 13px;
}
/* Course card images */
.masteriyo-course.grid-view .masteriyo-col .masteriyo-course--img-wrap a img {
  width: 100%;
  height: auto;
  aspect-ratio: 1.77777778;
  object-fit: cover;
  border-radius: var(--r-xxs);
}
/* Front page tiles */
.front-page-courses .masteriyo-course--content {
  display: none;
}
/* Promo card */
.tlc-promo-card .tlc-promo-card__wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1.77777778;
  border-radius: var(--r-lg);
  overflow: hidden;
  align-items: flex-end;
}
.tlc-promo-card__content {
  color: var(--c-muted);
}
.tlc-promo-card__content p {
  margin: 0 0 14px;
  font-size: 16px;
  line-height: 1.6;
  opacity: 0.85;
}
.tlc-promo-card__content h3 {
  font: 400 45px/45px "Alata", Sans-serif;
}
.tlc-promo-card__btn {
  display: inline-block;
  padding: 10px 16px;
  border-radius: var(--r-pill);
  background: var(--c-muted);
  color: var(--c-white);
  text-decoration: none;
  font-weight: 600;
}
/* FAQ accordion */
.ha-accordion .ha-accordion__item {
  border: none;
}
.ha-accordion__icon--closed svg {
  position: relative;
  top: -5px;
  font-size: 0.8em;
  width: 0.8em !important;
}
.elementor-708 .elementor-element.elementor-element-4ff6a0d .ha-accordion__item-title {
  background: var(--c-accordion);
}
.elementor-708 .elementor-element.elementor-element-4ff6a0d .ha-accordion__item-title,
.elementor-708 .elementor-element.elementor-element-4ff6a0d .ha-accordion__item-title.ha-accordion__item--active {
  border-radius: 30px;
}
/* Courses grid heading */
.courses-grid-heading {
  overflow: visible !important;
}
.courses-grid-heading .tlc-promo-card__wrap {
  aspect-ratio: auto !important;
  height: auto !important;
  border: 0 !important;
}
/* Cosmetic scrollbar */
.tlcc--is-carousel::-webkit-scrollbar {
  height: 0;
}
/* =========================================================
   MASTERIYO: SINGLE / LIST / CHECKOUT / AUTH
   ========================================================= */
/* Containers */
.single-mto-course .tg-container,
.single-mto-course .masteriyo-container,
.masteriyo-w-100.masteriyo-container {
  width: 100% !important;
  max-width: 100% !important;
}
.masteriyo-w-100.masteriyo-container {
  margin-top: 40px !important;
  padding: 0 4%;
}
.single-mto-course .tg-container {
  margin-top: 100px;
}
/* Feature image */
.masteriyo-single-course--wrapper[data-layout=default] .masteriyo-main-content-area .masteriyo-course--content .masteriyo-course--img-wrap .masteriyo-feature-img img {
  aspect-ratio: 1.77777778;
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: var(--r-xxs);
}
/* Bundle tabs */
.masteriyo-bundle__tabs {
  display: flex;
  gap: 10px;
}
.masteriyo-tab {
  padding: 10px 20px !important;
  cursor: pointer;
  font-size: 16px !important;
  background: var(--c-black) !important;
  color: var(--c-white) !important;
  border-radius: 8px !important;
  transition: background 0.3s ease;
  line-height: 35px !important;
}
.masteriyo-tab:hover,
.active-tab {
  background: var(--c-black);
  color: var(--c-white);
}
/* Hidden author on bundle */
.masteriyo-bundle__author {
  display: none;
}
/* Sidebar tweaks */
.masteriyo-bundle__sidebar .masteriyo-time-btn {
  border-bottom: none;
}
/* Cards & blocks */
.masteriyo-bundle__content,
.masteriyo-course--card {
  box-shadow: var(--shadow-card);
  border: 0;
}
.masteriyo-bundle__sidebar > div:first-child,
.masteriyo-bundle__sidebar > div,
.masteriyo-reset--wrapper {
  padding: 35px;
  border-radius: var(--r-xs);
  box-shadow: var(--shadow-card);
  border: 0;
}
/* Aside / checkout shells */
.masteriyo-single-course--wrapper[data-layout=default] .masteriyo-right-sidebar-area .masteriyo-single-course--aside,
.masteriyo-checkout-main,
.masteriyo-checkout-summary-your-order {
  padding: 35px;
  border-radius: var(--r-xs);
  box-shadow: var(--shadow-card);
  border: 0;
}
/* Main content */
.masteriyo-single-course--main {
  border: 0;
}
.masteriyo-single-course--main__content {
  border-radius: var(--r-xs);
  box-shadow: var(--shadow-card);
  border: 0;
  padding-right: 20px;
}
.masteriyo-course-curriculum-tabs {
  border: 0;
}
/* Author avatar */
.masteriyo-course-author a img {
  width: 50px;
  height: 50px;
}
/* Shared button style */
.masteriyo-courses-wrapper.grid-view .masteriyo-col .masteriyo-course--content .masteriyo-course-pricing--wrapper .masteriyo-enroll-btn,
.masteriyo-course-pricing--wrapper:has(.masteriyo-course-price) .masteriyo-enroll-btn,
.masteriyo-login-btn,
.masteriyo-login-form-wrapper .masteriyo-signup a,
.masteriyo-btn.masteriyo-btn-primary,
.css-en-11nemwk {
  background: var(--c-black);
  font-family: "Montserrat", Sans-serif;
  font-weight: 500;
  border: 2px solid var(--c-white);
  border-radius: 8px !important;
  padding: 15px 20px !important;
}
/* Text + forms */
.masteriyo-single-course--main__content .course-overview {
  color: var(--c-text);
  font-weight: 400;
}
.masteriyo-courses-header__title,
.masteriyo-courses-header .page-title,
.masteriyo-single-course .masteriyo-course-title {
  font-weight: 500;
}
.masteriyo-checkout-summary-apply-coupon .masteriyo-btn.masteriyo-btn {
  margin-left: 10px;
}
#billing-county,
#billing-state {
  width: 100%;
}
/* Search */
.masteriyo-search-section {
  margin-top: 100px;
  border: 0;
}
.masteriyo-search-section .masteriyo-courses-sorting-section {
  max-width: 270px;
}
.masteriyo-search .search-field:focus,
.masteriyo-search .search-field:hover {
  border-color: var(--c-accent);
}
/* Sidebar spacing */
.masteriyo-single-course--wrapper[data-layout=default] .masteriyo-right-sidebar-area .masteriyo-single-course--aside > div {
  margin-bottom: 30px;
  padding-bottom: 0;
  border-bottom: 0;
}
body.single-mto-course .masteriyo-container .masteriyo-single-course--wrapper .masteriyo-right-sidebar-area .masteriyo-single-course--aside {
  padding: 43px;
}
/* Checkout container */
.masteriyo-checkout .masteriyo-w-100.masteriyo-container {
  padding: 0 !important;
}
/* Auth / account pages */
.page-id-1022 .tg-container,
.page-id-1023 .tg-container {
  max-width: 100% !important;
  padding: 60px 4% 0;
}
.page-id-1022 .tg-container .entry-title:not(.tg-page-content__title) {
  font-weight: 500;
}
.masteriyo-login-form-wrapper,
.masteriyo-checkout {
  max-width: 100% !important;
}
.page-id-1022 .site-content {
  margin-bottom: 0;
  padding-bottom: 0;
}
.masteriyo-login-form-wrapper,
.masteriyo-signup--wrapper {
  padding: 35px;
  border-radius: var(--r-xs);
  box-shadow: var(--shadow-card);
  border: 0;
}
.masteriyo-login-form-wrapper .masteriyo-signup {
  border-radius: 20px;
}
.masteriyo-form-container {
  width: 100%;
}
.masteriyo-login {
  padding: 0 30px 0 0;
}
/* Bundle template containers */
.mto-bundle-template-default .tg-container {
  padding: 0 4%;
  margin-top: 140px;
}
.mto-bundle-template-default .masteriyo-container,
.mto-bundle-template-default .tg-container {
  max-width: 100% !important;
  width: 100% !important;
}
/* Custom classes */
.css-en-12hohor {
  border-radius: var(--r-xs);
  box-shadow: var(--shadow-card);
  border: 0;
  background-color: var(--c-white);
}
.css-en-1ygnaww {
  font-family: "Montserrat";
  font-weight: 500;
}
.css-en-1f5g571 {
  background: var(--c-black);
  font-family: "Montserrat", Sans-serif;
  font-weight: 500;
  padding: 20px !important;
  font-size: 16px;
}
/* =========================================================
   FRONT COURSE CAROUSEL
   ========================================================= */
.front-course-carousel {
  position: relative;
  isolation: isolate;
  background: var(--c-white) !important;
  overflow: visible !important;
}
/* Viewport & track */
.front-course-carousel .fcc-viewport {
  overflow: hidden !important;
  min-height: 320px;
}
.front-course-carousel .fcc-track {
  display: flex !important;
  flex-wrap: nowrap !important;
  position: relative !important;
  will-change: left;
}
.front-course-carousel .fcc-slide {
  flex: 0 0 100% !important;
}
/* Layout */
.front-course-carousel .masteriyo-course-item--wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 60px !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 80px 20px !important;
  background: var(--c-white) !important;
  border-radius: var(--r-sm) !important;
  box-shadow: none !important;
}
/* Image (portrait 3:4) */
.front-course-carousel .masteriyo-course--img-wrap {
  flex: 0 0 46% !important;
  border-radius: 0px !important;
}
.front-course-carousel .masteriyo-feature-img {
  position: relative;
  width: 100%;
  aspect-ratio: 0.75 !important;
  border-radius: var(--r-md) !important;
  overflow: hidden !important;
}
.front-course-carousel .masteriyo-feature-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: inherit !important;
}
.front-course-carousel .masteriyo-feature-img img:hover {
  transform: scale(1.01);
  transition: transform 0.5s ease-in-out;
}
/* Content */
.front-course-carousel .masteriyo-course--content {
  flex: 1 1 54% !important;
}
.front-course-carousel .masteriyo-course--content__wrapper {
  max-width: 640px;
  text-align: left;
}
.front-course-carousel .masteriyo-course--content__title a {
  font-family: Montserrat, sans-serif !important;
  font-size: 20px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  color: var(--c-black) !important;
  text-decoration: none !important;
  display: inline-block;
  margin: 0 0 16px !important;
}
.front-course-carousel .fcc-instructor {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 10px 0 18px !important;
}
.front-course-carousel .fcc-instructor-avatar {
  width: 50px !important;
  height: 50px !important;
  border-radius: 50% !important;
}
.front-course-carousel .fcc-instructor-name {
  font-family: Montserrat, sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #3a3f45 !important;
}
.front-course-carousel .fcc-desc {
  font-family: Montserrat, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  color: #4a4f55 !important;
  margin-bottom: 24px !important;
  max-width: 56ch;
}
.front-course-carousel .fcc-desc p {
  margin: 0 0 12px !important;
}
.front-course-carousel .fcc-desc p:last-child {
  margin-bottom: 0 !important;
}
/* CTA */
.front-course-carousel .masteriyo-course-card-footer {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  width: 100%;
  margin-top: 28px !important;
}
.front-course-carousel .masteriyo-enroll-btn {
  background: var(--c-black) !important;
  color: var(--c-white) !important;
  border-radius: var(--r-xs) !important;
  padding: 14px 32px !important;
  font-family: Montserrat, sans-serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: background 0.25s ease, transform 0.25s ease;
}
.front-course-carousel .masteriyo-enroll-btn:hover {
  background: #222 !important;
  transform: translateY(-2px);
}
/* Arrows */
.front-course-carousel .swiper-button-prev,
.front-course-carousel .swiper-button-next,
.front-course-carousel .masteriyo-swiper-button-prev,
.front-course-carousel .masteriyo-swiper-button-next,
.front-course-carousel::before,
.front-course-carousel::after {
  display: none !important;
}
.front-course-carousel .fcc-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;
  height: 44px;
  border: 0;
  border-radius: var(--r-pill);
  background: var(--c-white);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1000;
  opacity: 1;
  pointer-events: auto;
}
.front-course-carousel .fcc-arrow svg {
  width: 20px;
  height: 20px;
  stroke: var(--c-black);
  stroke-width: 2;
}
/* Default arrow offsets (desktop baseline) */
.front-course-carousel .fcc-prev {
  left: -56px !important;
}
.front-course-carousel .fcc-next {
  right: -56px !important;
}
/* =========================================================
   RESPONSIVE MEDIA QUERIES
   ========================================================= */
/* Wide desktops (≥ 1280px) */
/* Desktop (≥ 1025px): 4-column grid */
/* Tablet and below (≤ 1024px): edge-to-edge Elementor section */
/* Tablet landscape (≤ 1024px): 2-column carousel cards */
/* Mobile and small tablets (≤ 900px): carousel stack */
/* Desktop (≥ 901px): carousel columns */
/* Mobile (≤ 768px): general UI adjustments */
@media (min-width: 1280px) {
  .front-course-carousel .fcc-prev {
    left: -72px !important;
  }
  .front-course-carousel .fcc-next {
    right: -72px !important;
  }
}
@media (min-width: 1025px) {
  .elementor-element-a49a235 .masteriyo-courses-wrapper:is(.masteriyo-course, .masteriyo.course):not(.tlcc--is-carousel) {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 32px;
  }
}
@media (max-width: 1024px) {
  .elementor-708 .elementor-element.elementor-element-8491d2f {
    display: block !important;
    position: relative;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    left: auto !important;
    right: auto !important;
    overflow: visible !important;
  }
  .elementor-708 .elementor-element.elementor-element-8491d2f > .elementor-container {
    max-width: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .elementor-708 .elementor-element.elementor-element-8491d2f .elementor-row,
  .elementor-708 .elementor-element.elementor-element-8491d2f .elementor-columns {
    gap: 0 !important;
  }
  .elementor-708 .elementor-element.elementor-element-8491d2f .elementor-column > .elementor-element-populated,
  .elementor-708 .elementor-element.elementor-element-8491d2f .elementor-widget-wrap {
    padding: 0 !important;
    min-width: 0 !important;
  }
  .elementor-708 .elementor-element.elementor-element-8491d2f .masteriyo-courses-wrapper:is(.masteriyo-course, .masteriyo.course) {
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
  }
}
@media (max-width: 1024px) and (orientation: landscape) {
  .masteriyo-courses-wrapper[class*="masteriyo-course"].tlcc--is-carousel > * {
    flex: 0 0 calc((100% - 12px) / 2) !important;
    min-width: calc((100% - 12px) / 2) !important;
    max-width: calc((100% - 12px) / 2) !important;
  }
}
@media (max-width: 900px) {
  .front-course-carousel .masteriyo-enroll-btn {
    width: 100%;
    text-align: center;
  }
  .front-course-carousel .masteriyo-course-item--wrapper {
    flex-direction: column !important;
    text-align: center !important;
    padding: 40px 20px !important;
    gap: 32px !important;
  }
  .front-course-carousel .masteriyo-course--img-wrap,
  .front-course-carousel .masteriyo-course--content {
    flex: 0 0 100% !important;
  }
  .front-course-carousel .masteriyo-course-highlights {
    text-align: left !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  /* Bring arrows slightly in when very small */
  .front-course-carousel .fcc-prev {
    left: -22px !important;
  }
  .front-course-carousel .fcc-next {
    right: -22px !important;
  }
}
@media (min-width: 901px) {
  .front-course-carousel .masteriyo-course--img-wrap {
    flex: 0 0 38% !important;
  }
  .front-course-carousel .masteriyo-course--content {
    flex: 1 1 62% !important;
  }
}
@media (max-width: 768px) {
  div > .masteriyo-col h3,
  div .tlc-promo-card__wrap p,
  .masteriyo-col .tlc-promo-card__content {
    padding: 0 4%;
  }
  .elementor-2588 .elementor-element.elementor-element-b9f07fc {
    padding-left: 4%;
  }
  .masteriyo-course-search .search-field {
    margin-right: 10px;
  }
  .masteriyo-search-section,
  .masteriyo-search-section .masteriyo-courses-sorting-section,
  .masteriyo-search-section .masteriyo-courses-sorting-section .masteriyo-courses-sorting {
    max-width: 100%;
  }
  .masteriyo-search-section {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
  }
  .masteriyo-courses-view-mode-section {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
  }
}
