/* Blue card styling for Explore Courses button in hero/main content section ONLY */
/* Exclude header and footer */
.home a[href*='courses']:not(header a):not(footer a):not(.site-header a):not(.site-footer a):not(nav a) {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    padding: 12px 30px !important;
    background: #0073aa !important;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 25px !important;
    font-weight: bold !important;
    margin: 10px 5px !important;
    transition: background 0.3s !important;
    border: 2px solid #0073aa !important;
}

.home a[href*='courses']:not(header a):not(footer a):not(.site-header a):not(.site-footer a):not(nav a):hover {
    background: #005177 !important;
    border-color: #005177 !important;
}

/* Blue card styling for View All Courses button in main content ONLY */
.home a[href*='view-all-courses']:not(header a):not(footer a):not(.site-header a):not(.site-footer a):not(nav a),
.home .view-all-courses-btn {
    display: table !important;
    visibility: visible !important;
    opacity: 1 !important;
    padding: 12px 30px !important;
    background: #0073aa !important;
    color: #fff !important;
    text-decoration: none !important;
    border-radius: 25px !important;
    font-weight: bold !important;
    margin: 0 auto 30px auto !important;
    transition: background 0.3s !important;
    border: 2px solid #0073aa !important;
}

.home a[href*='view-all-courses']:not(header a):not(footer a):not(.site-header a):not(.site-footer a):not(nav a):hover,
.home .view-all-courses-btn:hover {
    background: #005177 !important;
    border-color: #005177 !important;
}

/* Body reset for home page */
body.home {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
}

/* Remove extra padding and margins from home page elements to eliminate gaps */
/* Remove extra padding and margins from home page elements to eliminate gaps */
.home .site-content,
.home .entry-content,
.home main,
.home .site-main,
.home article,
.home .site-wrapper,
.home #content,
.home #page,
.home .site-inner,
.home #primary {
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

.home .wp-block-group,
.home .wp-block-cover,
.home .elementor-section,
.home .elementor-column,
.home .elementor-widget-wrap,
.home .elementor-container {
    padding: 0 !important;
    margin: 0 !important;
}





.home .elementor-heading-title,
.home .elementor-widget-container,
.home .elementor-widget {
    margin-top: 0 !important;
}

/* Logo and site title adjustments - All Pages */
/* Logo and text side by side with proper alignment */
.site-branding {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.site-logo,
.custom-logo-link {
    flex-shrink: 0 !important;
    margin-right: 0 !important;
}

.site-logo img,
.custom-logo {
    max-width: 70px !important;
    width: 70px !important;
    height: auto !important;
    display: block !important;
}

.site-title,
.site-branding .site-title {
    font-size: 24px !important;
    font-weight: 600 !important;
    margin: 0 !important;
    line-height: 1 !important;
}

.site-title a {
    font-size: 24px !important;
}

/* Masteriyo Course Search UI Correction - Explore Courses Page */
/* Tighten space above Our Courses / Course List */
.masteriyo-course-list-display-section,
.masteriyo-home-courses {
    padding-top: 10px !important;
    margin-top: 0 !important;
}

.masteriyo-course-search {
    display: flex !important;
    position: relative !important;
    align-items: center !important;
    gap: 0 !important;
    background: #ffffff !important;
    border: 1px solid #d1d5db !important;
    border-radius: 12px !important;
    padding: 2px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
    overflow: hidden !important;
    max-width: 600px !important;
    /* Limit width */
    margin: 0 auto 30px auto !important;
    /* Centered with top/bottom space */
}

.masteriyo-course-search .masteriyo-course-search__icon {
    display: flex !important;
    position: absolute !important;
    left: 15px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 5 !important;
    color: #94a3b8 !important;
}

/* Icon styles removed */

.masteriyo-course-search input.masteriyo-input.search-field {
    flex: 1 !important;
    border: none !important;
    background: transparent !important;
    padding: 12px 15px 12px 45px !important;
    /* Space for icon on left */
    font-size: 16px !important;
    color: #1f2937 !important;
    outline: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    height: auto !important;
    line-height: normal !important;
}

.masteriyo-course-search input.masteriyo-input.search-field::placeholder {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

.masteriyo-course-search input.masteriyo-input.search-field::-webkit-input-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

.masteriyo-course-search input.masteriyo-input.search-field::-moz-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

.masteriyo-course-search input.masteriyo-input.search-field:-ms-input-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

.masteriyo-course-search input.masteriyo-input.search-field::-ms-input-placeholder {
    color: #000000 !important;
    opacity: 1 !important;
    font-weight: 500 !important;
}

.masteriyo-course-search .masteriyo-btn {
    background: #356df1 !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 10px 24px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    margin: 4px !important;
    border: none !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

.masteriyo-course-search .masteriyo-btn:hover {
    background: #2563eb !important;
    transform: translateY(-1px) !important;
}

.masteriyo-course-search label.screen-reader-text {
    display: none !important;
}

/* UNIVERSAL BLUE BORDER FOR COURSE CARDS - PREMIUM & PROMINENT */
.masteriyo-course-list-display-section .masteriyo-archive-card,
.masteriyo-archive-card.masteriyo-layout-1,
.masteriyo-course-item,
.masteriyo-course-horizontal-card,
.masteriyo-archive-card {
    border: 3px solid #356df1 !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    overflow: visible !important;
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02), 0 1px 3px rgba(0, 0, 0, 0.08) !important;
}

.masteriyo-archive-card:hover {
    box-shadow: 0 8px 25px rgba(53, 109, 241, 0.12) !important;
}

/* Ensure full course title is displayed & wraps correctly in horizontal layout */
/* Target only when NOT specifically being told to be a grid, or by standard default */
.masteriyo-archive-card .masteriyo-archive-card__content {
    flex: 1;
    min-width: 0;
    padding: 0;
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 0 30px;
    align-items: center;
}

/* Force details items into the first column and set strict order */
.masteriyo-modern-layout--categories,
.masteriyo-course-title-wrapper,
.masteriyo-modern-layout--author,
.masteriyo-modern-layout--stats-rating,
.masteriyo-archive-card__content--info {
    grid-column: 1 !important;
}

.masteriyo-modern-layout--categories {
    order: 1 !important;
}

.masteriyo-course-title-wrapper {
    order: 2 !important;
}

/* Arrange email and rating stars on a single line - Left Aligned */
.masteriyo-modern-layout--stats-rating {
    grid-column: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    flex-direction: row !important;
    white-space: nowrap !important;
    margin: 5px 0 !important;
    margin-left: 0 !important;
    /* Reset margin to align with title */
    justify-self: start !important;
    text-align: left !important;
    padding-left: 0 !important;
}

/* Share order with title or come after */
.masteriyo-modern-layout--stats-rating {
    order: 3 !important;
}



/* Place the aside (button section) in the second column and make it span all rows */
.masteriyo-course-archive--aside {
    grid-column: 2 !important;
    grid-row: 1 / span 10 !important;
    /* Span everything */
    border-left: 1px solid #f3f4f6 !important;
    padding: 10px 10px 10px 20px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    height: 100% !important;
    min-height: 80px !important;
}

.masteriyo-archive-card .masteriyo-course-title {
    white-space: normal !important;
    overflow: visible !important;
    word-wrap: break-word !important;
    overflow-wrap: anywhere !important;
    display: block !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
    height: auto !important;
    font-size: 20px !important;
    line-height: 1.2 !important;
    margin: 0 0 8px 0 !important;
    color: #1f2937 !important;
}

/* Rating Wrapper in Archive Card */
.masteriyo-archive-card .masteriyo-modern-layout--stats-rating {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}



/* Arrange email and rating stars on a single centered line in cards */
.masteriyo-archive-card__content--rating {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 15px !important;
    width: 100% !important;
    margin: 8px 0 !important;
}

/* --- Stats Section Height Adjustment --- */
.elementor-element-204bd88,
.elementor-element-12b7de4 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
    min-height: auto !important;
    height: auto !important;
    margin-bottom: 25px !important;
}

/* Reduce spacing of inner columns/items in stats section */
.elementor-element-204bd88 .elementor-element,
.elementor-element-12b7de4 .elementor-element {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Statistics Counters - minimize bottom gap */
.elementor-element-204bd88 .elementor-widget-counter,
.elementor-element-12b7de4 .elementor-widget-counter {
    margin-bottom: 5px !important;
}

/* 'Start Learning Today' White Box - minimize top gap */
.elementor-element-add4b9a,
.elementor-element-c25e111 {
    margin-top: 0 !important;
    padding-top: 0 !important;
}




.masteriyo-course-author--name {
    display: inline-block !important;
    width: auto !important;
    flex: none !important;
    margin: 0 !important;
    font-size: 15px !important;
    color: #555 !important;
    white-space: nowrap !important;
}

/* Ensure stars are aligned properly with the text */
.masteriyo-archive-card__content--rating svg,
.masteriyo-archive-card__content--rating i {
    margin: 0 4px !important;
    display: inline-block !important;
    vertical-align: middle !important;
}




/* COMPACT CARD IMAGE & LAYOUT */
.masteriyo-archive-card .masteriyo-course-thumbnail img,
.masteriyo-archive-card .masteriyo-archive-card__thumbnail img,
.masteriyo-archive-card figure img {
    max-width: 220px !important;
    height: auto !important;
    max-height: 180px !important;
    /* Force card height reduction */
    object-fit: cover !important;
}

/* FORCED Spacing for Course Meta Elements - Tightened */
.masteriyo-archive-card__content--info {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 20px !important;
    /* Smaller gap */
    margin-top: 8px !important;
    /* Reduced from 15px */
    padding-top: 8px !important;
    /* Reduced from 15px */
    border-top: 1px solid #f3f4f6 !important;
    width: 100% !important;
}

/* Explicit margin on each group for extra safety */
.masteriyo-archive-card__content--info>div {
    display: flex !important;
    align-items: center !important;
    gap: 30px !important;
    /* Restored Space between ICON and TEXT */
    margin-right: 50px !important;
    /* Restored Extra backup margin */
}

.masteriyo-archive-card__content--info>div:last-child {
    margin-right: 0 !important;
}

.masteriyo-info-label {
    font-size: 17px !important;
    color: #374151 !important;
    font-weight: 600 !important;
}

.masteriyo-archive-card__content--info svg {
    width: 24px !important;
    height: 24px !important;
    flex-shrink: 0 !important;
}

/* Vertical spacing between main blocks */
.masteriyo-modern-layout--categories {
    margin-bottom: 12px !important;
}

.masteriyo-course-title-wrapper {
    margin-bottom: 15px !important;
}

.masteriyo-modern-layout--stats-rating {
    margin-bottom: 15px !important;
}

.masteriyo-archive-card__content--rating {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
}


/* Ensure no pseudo-elements add extra icons or overlap */
.masteriyo-course-search::before,
.masteriyo-course-search::after,
.masteriyo-course-search input::before,
.masteriyo-course-search input::after {
    display: none !important;
    content: none !important;
}

/* PROPER VISUAL ENHANCEMENT FOR ALL 8 FEATURE BLOCKS */
/* UNIVERSAL SECTION SPACING - Prevent Overlap */
.elementor-element-b447283 {
    margin-bottom: 25px !important;
}

.elementor-element-a29d3e5 {
    margin-top: 25px !important;
}

/* Targets both rows (Section IDs: b447283 and a29d3e5) */
.elementor-element-b447283 .elementor-column .elementor-widget-wrap,
.elementor-element-a29d3e5 .elementor-column .elementor-widget-wrap {
    background: #ffffff !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05) !important;
    padding: 15px !important;
    /* Reduced padding to minimize size */
    margin: 10px !important;
    /* Added margin to provide space between each class card */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

/* Gentle Hover Effect */
.elementor-element-b447283 .elementor-column .elementor-widget-wrap:hover,
.elementor-element-a29d3e5 .elementor-column .elementor-widget-wrap:hover {
    transform: translateY(-4px) !important;
    /* transform: translateY(-4px) */
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.08) !important;
}

/* Typography Enhancements - Headings */
.elementor-element-b447283 h1,
.elementor-element-b447283 h2,
.elementor-element-b447283 h3,
.elementor-element-b447283 h4,
.elementor-element-b447283 h5,
.elementor-element-a29d3e5 h1,
.elementor-element-a29d3e5 h2,
.elementor-element-a29d3e5 h3,
.elementor-element-a29d3e5 h4,
.elementor-element-a29d3e5 h5 {
    font-weight: 700 !important;
    margin-bottom: 8px !important;
    /* Reduced margin */
}

/* Typography Enhancements - Paragraphs */
.elementor-element-b447283 .elementor-text-editor,
.elementor-element-a29d3e5 .elementor-text-editor {
    line-height: 1.6 !important;
    /* slightly improve paragraph line-height */
}

/* Center icons within their containers */
.elementor-element-b447283 .elementor-image img,
.elementor-element-a29d3e5 .elementor-image img {
    margin: 0 auto 10px auto !important;
    /* Reduced margin */
    display: block !important;
    max-width: 35px !important;
    /* Slightly smaller icons */
}