/*
* Custom CSS for Lernora
* Version: 2.0 - Updated Color Scheme (#001972 & #da0000)
* Last Updated: 2025-11-07
* Add your custom styles here
*/

/* Import Poppins Font from Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

/* ========================================
Custom Styles
======================================== */

/* Example: You can add your custom CSS here */

/* Body and General Styles with Poppins Font */
body {
font-family: 'Poppins', sans-serif !important;
font-weight: 400;
line-height: 1.6;
}

/* Headings with Poppins Font */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
font-family: 'Poppins', sans-serif !important;
font-weight: 600;
line-height: 1.3;
}

/* Buttons and Links */
a, button, .btn, .default-btn {
font-family: 'Poppins', sans-serif !important;
}

/* Navigation Menu */
.navbar, .navbar-nav, .navbar-nav .nav-link {
font-family: 'Poppins', sans-serif !important;
font-weight: 500;
}

/* Navigation Menu Hover Effect */
.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus,
.navbar-nav .nav-link.active {
color: #001972 !important;
}

.dropdown-item:hover,
.dropdown-item:focus {
color: #001972 !important;
background-color: rgba(0, 25, 114, 0.1) !important;
}

/* Input Fields and Forms */
input, textarea, select, .form-control {
font-family: 'Poppins', sans-serif !important;
}

/* Custom Banner Styles */
.banner-area.bg-3 {
background-image: url(https://loms-moodle.envytheme.com/theme/loms/pix/banner/banner-bg-3.webp);
}

/* Join Students Section */
.join-students {
background-image: url(https://loms-moodle.envytheme.com/theme/loms/pix/join-students-bg.webp);
}

/* User Dropdown Menu */
.user_setting .dropdown-menu {
position: absolute;
left: auto;
right: 0;
will-change: transform;
}

/* Registration Form Styling */
.register-area {
padding: 50px 0;
}

.register-form {
background: #fff;
padding: 40px;
border-radius: 10px;
box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

.register-form h2 {
font-size: 28px;
font-weight: 700;
margin-bottom: 10px;
color: #333;
}

.register-form p {
color: #666;
margin-bottom: 30px;
}

.register-form .form-group {
margin-bottom: 20px;
}

.register-form label {
font-weight: 600;
color: #333;
margin-bottom: 8px;
display: block;
}

.register-form label i {
margin-right: 5px;
color: #001972;
}

.register-form .form-control {
height: 50px;
border: 1px solid #ddd;
border-radius: 5px;
padding: 10px 15px;
}

.register-form .form-control:focus {
border-color: #001972;
box-shadow: 0 0 0 0.2rem rgba(0, 25, 114, 0.25);
}

.register-form .default-btn {
padding: 15px 30px;
font-size: 16px;
font-weight: 600;
margin-top: 10px;
}

.register-footer a {
color: #da0000;
font-weight: 600;
}

.register-footer a:hover {
text-decoration: underline;
}

.or-divider {
position: relative;
}

.or-divider span {
background: #fff;
padding: 0 15px;
color: #999;
font-weight: 600;
}

.or-divider::before {
content: '';
position: absolute;
left: 0;
right: 0;
top: 50%;
height: 1px;
background: #ddd;
z-index: -1;
}

.social-login button {
border: 2px solid #ddd;
padding: 12px 20px;
font-weight: 600;
}

.social-login button:hover {
background: #f8f9fa;
border-color: #001972;
}

/* ========================================
Home Page Course Library Section
======================================== */

/* Comprehensive Course Library Styling */
.selection-courses-area {
background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
padding: 60px 0;
border-radius: 15px;
}

.selection-courses-area .section-title {
margin-bottom: 20px;
}

.selection-courses-area .section-title h2 {
color: #001972 !important;
font-weight: 700;
margin-bottom: 15px;
}

.selection-courses-area .section-title p {
color: #666 !important;
}

.selection-courses-area .default-btn {
background: linear-gradient(135deg, #001972 0%, #da0000 100%) !important;
color: #ffffff !important;
padding: 12px 30px;
border-radius: 8px;
font-weight: 600;
transition: all 0.3s ease;
border: none;
text-decoration: none;
display: inline-block;
box-shadow: 0 4px 15px rgba(0, 25, 114, 0.3);
}

.selection-courses-area .default-btn:hover {
background: linear-gradient(135deg, #da0000 0%, #001972 100%) !important;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(218, 0, 0, 0.4);
color: #ffffff !important;
}

/* Owl Carousel - 4 columns display */
.selection-courses-slide.owl-carousel {
margin-top: 40px;
position: relative;
padding: 0 70px;
}

.selection-courses-slide.owl-carousel .owl-stage-outer {
padding: 25px 0 70px 0;
overflow: visible;
}

.selection-courses-slide.owl-carousel .owl-stage {
display: flex;
align-items: stretch;
}

.selection-courses-slide.owl-carousel .owl-item {
display: flex;
align-items: stretch;
padding: 0 10px;
}

/* Increase course card width */
.selection-courses-slide .single-courses {
width: 100%;
height: 100%;
display: flex;
flex-direction: column;
margin: 0;
}

/* Carousel Animation */
.selection-courses-slide.owl-carousel .owl-item {
opacity: 0.4;
transition: opacity 0.3s ease;
}

.selection-courses-slide.owl-carousel .owl-item.active {
opacity: 1;
}

.selection-courses-slide.owl-carousel .owl-item.active.center {
opacity: 1;
}

/* Owl Carousel Navigation Arrows */
.selection-courses-slide .owl-nav {
position: absolute;
top: 35%;
transform: translateY(-50%);
width: calc(100% + 100px);
left: -50px;
display: flex !important;
justify-content: space-between;
pointer-events: none;
z-index: 10;
}

.selection-courses-slide .owl-nav button.owl-prev,
.selection-courses-slide .owl-nav button.owl-next {
pointer-events: all;
background: #da0000 !important;
color: #ffffff !important;
width: 55px !important;
height: 55px !important;
border-radius: 50% !important;
display: flex !important;
align-items: center;
justify-content: center;
font-size: 26px !important;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 0 6px 20px rgba(218, 0, 0, 0.35) !important;
border: 3px solid #ffffff !important;
outline: none !important;
line-height: 1;
cursor: pointer;
}

.selection-courses-slide .owl-nav button.owl-prev:hover,
.selection-courses-slide .owl-nav button.owl-next:hover {
background: #001972 !important;
transform: scale(1.15);
box-shadow: 0 8px 25px rgba(0, 25, 114, 0.4) !important;
}

.selection-courses-slide .owl-nav button.owl-prev {
margin-left: 0;
}

.selection-courses-slide .owl-nav button.owl-next {
margin-right: 0;
}

.selection-courses-slide .owl-nav button.owl-prev i,
.selection-courses-slide .owl-nav button.owl-next i {
font-size: 26px;
line-height: 1;
color: #ffffff;
}

/* Owl Carousel Dots */
.selection-courses-slide .owl-dots {
text-align: center !important;
margin-top: 35px !important;
display: block !important;
position: absolute;
bottom: 15px;
left: 50%;
transform: translateX(-50%);
width: 100%;
}

.selection-courses-slide .owl-dots .owl-dot {
display: inline-block !important;
width: 10px;
height: 10px;
background: #c0c0c0 !important;
border-radius: 50%;
margin: 0 6px;
transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
border: 2px solid transparent !important;
outline: none !important;
cursor: pointer;
}

.selection-courses-slide .owl-dots .owl-dot.active {
background: #da0000 !important;
width: 35px !important;
border-radius: 12px !important;
border-color: #da0000 !important;
}

.selection-courses-slide .owl-dots .owl-dot:hover {
background: #001972 !important;
border-color: #001972 !important;
transform: scale(1.2);
}

.selection-courses-slide .owl-dots .owl-dot span {
display: none;
}

/* Carousel Responsive Adjustments */
@media only screen and (max-width: 1199px) {
.selection-courses-slide.owl-carousel {
padding: 0 60px;
}
}

@media only screen and (max-width: 991px) {
.selection-courses-slide.owl-carousel {
padding: 0 50px;
}

.selection-courses-slide .owl-nav button.owl-prev,
.selection-courses-slide .owl-nav button.owl-next {
width: 45px !important;
height: 45px !important;
font-size: 22px !important;
}
}

@media only screen and (max-width: 767px) {
.selection-courses-slide.owl-carousel {
padding: 0 40px;
}

.selection-courses-slide.owl-carousel .owl-stage-outer {
padding: 20px 0 60px 0;
}

.selection-courses-slide .owl-nav button.owl-prev,
.selection-courses-slide .owl-nav button.owl-next {
width: 40px !important;
height: 40px !important;
font-size: 20px !important;
}
}

@media only screen and (max-width: 575px) {
.selection-courses-slide.owl-carousel {
padding: 0 30px;
}
}

/* ========================================
Index Page - Categories & Other Sections
======================================== */

/* Categories Area */
.categories-area .section-title h2 {
color: #001972 !important;
}

.categories-area .section-title h2 span {
color: #da0000 !important;
}

.single-categories {
transition: all 0.3s ease;
padding: 20px;
border-radius: 10px;
background: #ffffff;
margin-bottom: 20px;
}

.single-categories:hover {
background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
transform: translateX(5px);
box-shadow: 0 5px 20px rgba(0, 25, 114, 0.1);
}

.single-categories h3 {
color: #001972 !important;
transition: color 0.3s ease;
}

.single-categories:hover h3 {
color: #da0000 !important;
}

/* Subject Category Icons */
.single-categories .icon {
width: 60px;
height: 60px;
display: flex;
align-items: center;
justify-content: center;
background: rgba(0, 25, 114, 0.08);
border-radius: 12px;
transition: all 0.3s ease;
}

.single-categories .icon img {
width: 32px;
height: 32px;
filter: brightness(0) saturate(100%) invert(10%) sepia(76%) saturate(5473%) hue-rotate(228deg) brightness(89%) contrast(102%);
transition: filter 0.3s ease;
}

.single-categories:hover .icon {
background: rgba(0, 25, 114, 0.12);
transform: scale(1.05);
}

.single-categories:hover .icon img {
filter: brightness(0) saturate(100%) invert(12%) sepia(94%) saturate(7461%) hue-rotate(356deg) brightness(91%) contrast(114%);
}

/* Section Titles - Global */
.section-title h2 {
color: #001972 !important;
font-weight: 700;
}

.section-title span {
color: #da0000 !important;
}

.section-title p {
color: #666 !important;
}

/* ========================================
Courses Page Styles
======================================== */

/* Single Course Card */
.single-courses {
margin-bottom: 30px;
border-radius: 12px;
overflow: hidden;
box-shadow: 0 3px 20px rgba(0, 0, 0, 0.08);
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
background: #ffffff;
display: flex;
flex-direction: column;
height: 100%;
border: 1px solid rgba(0, 0, 0, 0.05);
}

.single-courses:hover {
transform: translateY(-8px);
box-shadow: 0 12px 35px rgba(0, 25, 114, 0.15);
border-color: rgba(218, 0, 0, 0.1);
}

.single-courses .courses-img {
position: relative;
overflow: hidden;
width: 100%;
height: 220px;
}

.single-courses .courses-img img {
width: 100%;
height: 220px !important;
object-fit: cover;
transition: transform 0.3s ease;
}

.single-courses:hover .courses-img img {
transform: scale(1.05);
}

.courses-content {
padding: 18px 15px;
flex: 1;
display: flex;
flex-direction: column;
}

.courses-content h3 {
font-size: 18px;
margin-bottom: 15px;
min-height: 55px;
line-height: 1.4;
}

.courses-content h3 a {
color: #333;
text-decoration: none;
transition: color 0.3s ease;
}

.courses-content h3 a:hover {
color: #da0000;
}

/* Course Type Badge */
.courses-content h3 .badge {
vertical-align: middle;
white-space: nowrap;
}

/* Star Price Section */
.star-price {
margin-bottom: 15px;
padding-bottom: 15px;
border-bottom: 1px solid #eee;
}

.loms-course-date {
font-size: 14px;
color: #666;
display: flex;
align-items: center;
}

.star-price .price {
font-size: 20px;
font-weight: 700;
color: #da0000;
}

/* User/Instructor Section */
.courses-content .user {
font-size: 14px;
}

.courses-content .user .icon {
width: 40px;
height: 40px;
background: #f0f7ff;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
color: #001972;
}

.courses-content .user h4 {
font-size: 14px;
color: #666;
}

.courses-content .user h4 a {
color: #333;
text-decoration: none;
}

.courses-content .user h4 a:hover {
color: #da0000;
}

/* ========================================
Media Queries for Responsive Design
======================================== */

/* Large Tablets and Small Desktops (992px - 1199px) */
@media (max-width: 1199px) {
.courses-content h3 {
font-size: 17px;
min-height: 60px;
}

.single-courses .courses-img,
.single-courses .courses-img img {
height: 200px !important;
}
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) {
.selection-courses-area {
padding: 40px 0;
}

.courses-content h3 {
font-size: 16px;
min-height: 50px;
}

.single-courses .courses-img,
.single-courses .courses-img img {
height: 200px !important;
}

.courses-content {
padding: 15px;
}

.star-price .price {
font-size: 18px;
}
}

/* Mobile Landscape and Small Tablets (576px - 767px) */
@media (max-width: 767px) {
.selection-courses-area {
padding: 30px 0;
}

.selection-courses-area .section-title h2 {
font-size: 24px;
}

/* Hide navigation arrows on mobile */
.selection-courses-slide .owl-nav button {
display: none !important;
}

.single-courses {
margin-bottom: 25px;
}

.single-courses .courses-img,
.single-courses .courses-img img {
height: 220px !important;
}

.courses-content h3 {
font-size: 18px;
min-height: auto;
flex-wrap: wrap;
}

.courses-content h3 a {
flex: 1 1 100%;
margin-bottom: 8px;
}

.courses-content h3 .badge {
margin-left: 0 !important;
margin-top: 5px;
}

.loms-course-date {
font-size: 13px;
flex-wrap: wrap;
}

.star-price {
flex-wrap: wrap;
}
}

/* Mobile Portrait (max 575px) */
@media (max-width: 575px) {
.single-courses .courses-img img {
height: 200px;
}

.courses-content {
padding: 15px;
}

.courses-content h3 {
font-size: 16px;
margin-bottom: 12px;
}

.loms-course-date {
font-size: 12px;
}

.loms-course-date i {
font-size: 12px;
}

.star-price .price {
font-size: 18px;
}

.courses-content .user .icon {
width: 35px;
height: 35px;
}

.courses-content .user h4 {
font-size: 13px;
}

/* Stack date and price vertically on very small screens */
.star-price {
flex-direction: column !important;
align-items: flex-start !important;
}

.star-price li {
margin-bottom: 8px;
}
}

/* Extra Small Mobile (max 380px) */
@media (max-width: 380px) {
.single-courses .courses-img img {
height: 180px;
}

.courses-content h3 {
font-size: 15px;
}

.courses-content h3 .badge {
font-size: 10px !important;
padding: 4px 8px !important;
}

.loms-course-date strong {
font-size: 12px;
}

.star-price .price {
font-size: 16px;
}
}

/* ========================================
Dashboard Page Responsive Styles
======================================== */

/* Large Tablets and Small Desktops (992px - 1199px) */
@media (max-width: 1199px) {
.dashboard-container {
padding: 0 15px;
}

.stats-grid {
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}

.actions-grid {
grid-template-columns: repeat(2, 1fr);
gap: 20px;
}

.welcome-section {
padding: 30px;
}

.page-title-main {
font-size: 32px;
}
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) {
.dashboard-wrapper {
padding: 30px 0;
}

.dashboard-page-header {
padding: 40px 0;
margin: -30px 0 30px 0;
border-radius: 0 0 25px 25px;
}

.page-title-main {
font-size: 28px;
}

.page-title-main i {
font-size: 32px;
}

.welcome-section {
padding: 25px;
margin-bottom: 30px;
}

.welcome-text h2 {
font-size: 28px;
}

.welcome-text p {
font-size: 15px;
}

.user-avatar {
width: 70px;
height: 70px;
font-size: 28px;
}

.stats-grid {
grid-template-columns: repeat(2, 1fr);
gap: 15px;
margin-bottom: 30px;
}

.stat-card {
padding: 25px;
}

.stat-value {
font-size: 36px;
}

.stat-icon {
width: 55px;
height: 55px;
font-size: 24px;
}

.actions-grid {
grid-template-columns: repeat(2, 1fr);
gap: 15px;
margin-bottom: 30px;
}

.action-card {
padding: 20px;
}

.action-icon-wrapper {
width: 55px;
height: 55px;
font-size: 26px;
}

.action-title {
font-size: 16px;
}

.action-description {
font-size: 13px;
}

.section-title {
font-size: 24px;
}

.section-title i {
font-size: 26px;
}

.recent-activity-section {
padding: 25px;
}
}

/* Mobile Landscape and Small Tablets (576px - 767px) */
@media (max-width: 767px) {
.dashboard-wrapper {
padding: 20px 0;
}

.dashboard-container {
padding: 0 15px;
}

.dashboard-page-header {
padding: 30px 0;
margin: -20px -15px 25px -15px;
border-radius: 0 0 20px 20px;
}

.page-header-content {
padding: 0 15px;
}

.breadcrumb-nav {
font-size: 13px;
gap: 8px;
}

.page-title-main {
font-size: 24px;
flex-direction: column;
align-items: flex-start;
gap: 10px;
}

.page-title-main i {
font-size: 28px;
}

/* Welcome Section */
.welcome-section {
padding: 20px;
margin-bottom: 25px;
border-radius: 15px;
}

.welcome-header {
flex-direction: column;
align-items: flex-start;
gap: 15px;
}

.welcome-text h2 {
font-size: 24px;
margin-bottom: 8px;
}

.welcome-text p {
font-size: 14px;
}

.user-profile-info {
width: 100%;
justify-content: flex-start;
}

.user-avatar {
width: 60px;
height: 60px;
font-size: 24px;
}

.user-details h4 {
font-size: 16px;
}

.user-email {
font-size: 13px;
}

.membership-tag {
font-size: 11px;
padding: 5px 12px;
}

/* Stats Grid - Single Column on Mobile */
.stats-grid {
grid-template-columns: 1fr;
gap: 15px;
margin-bottom: 25px;
}

.stat-card {
padding: 20px;
}

.stat-card-header {
margin-bottom: 15px;
}

.stat-icon {
width: 50px;
height: 50px;
font-size: 22px;
}

.stat-value {
font-size: 32px;
}

.stat-label {
font-size: 13px;
}

.stat-trend {
font-size: 11px;
padding: 4px 8px;
}

/* Actions Grid - Single Column on Mobile */
.actions-grid {
grid-template-columns: 1fr;
gap: 15px;
margin-bottom: 25px;
}

.action-card {
padding: 18px;
gap: 15px;
}

.action-card:hover {
transform: translateX(5px);
}

.action-icon-wrapper {
width: 50px;
height: 50px;
font-size: 24px;
}

.action-title {
font-size: 16px;
}

.action-description {
font-size: 13px;
}

.action-arrow {
font-size: 20px;
}

/* Section Headers */
.section-header {
margin-bottom: 20px;
}

.section-title {
font-size: 20px;
gap: 10px;
}

.section-title i {
font-size: 22px;
}

/* Recent Activity */
.recent-activity-section {
padding: 20px;
border-radius: 15px;
}

.activity-item {
padding: 15px;
gap: 15px;
margin-bottom: 12px;
}

.activity-icon-wrapper {
width: 40px;
height: 40px;
font-size: 18px;
}

.activity-title {
font-size: 15px;
}

.activity-time {
font-size: 12px;
}

.no-activity {
padding: 30px 15px;
}

.no-activity i {
font-size: 40px;
}
}

/* Mobile Portrait (max 575px) */
@media (max-width: 575px) {
.dashboard-wrapper {
padding: 15px 0;
}

.dashboard-container {
padding: 0 10px;
}

.dashboard-page-header {
padding: 25px 0;
margin: -15px -10px 20px -10px;
}

.page-header-content {
padding: 0 10px;
}

.page-title-main {
font-size: 22px;
}

.welcome-section {
padding: 18px;
margin-bottom: 20px;
}

.welcome-text h2 {
font-size: 20px;
}

.welcome-text p {
font-size: 13px;
}

.user-avatar {
width: 55px;
height: 55px;
font-size: 22px;
}

.user-details h4 {
font-size: 15px;
}

.user-email {
font-size: 12px;
}

.membership-tag {
font-size: 10px;
padding: 4px 10px;
}

.stats-grid {
gap: 12px;
margin-bottom: 20px;
}

.stat-card {
padding: 18px;
}

.stat-icon {
width: 45px;
height: 45px;
font-size: 20px;
}

.stat-value {
font-size: 28px;
}

.stat-label {
font-size: 12px;
}

.actions-grid {
gap: 12px;
margin-bottom: 20px;
}

.action-card {
padding: 15px;
gap: 12px;
}

.action-icon-wrapper {
width: 45px;
height: 45px;
font-size: 22px;
}

.action-title {
font-size: 15px;
}

.action-description {
font-size: 12px;
}

.section-title {
font-size: 18px;
gap: 8px;
}

.section-title i {
font-size: 20px;
}

.recent-activity-section {
padding: 18px;
}

.activity-item {
padding: 12px;
gap: 12px;
}

.activity-icon-wrapper {
width: 38px;
height: 38px;
font-size: 16px;
}

.activity-title {
font-size: 14px;
}

.activity-time {
font-size: 11px;
}
}

/* Extra Small Mobile (max 380px) */
@media (max-width: 380px) {
.page-title-main {
font-size: 20px;
}

.welcome-section {
padding: 15px;
}

.welcome-text h2 {
font-size: 18px;
}

.welcome-text p {
font-size: 12px;
}

.user-profile-info {
flex-direction: column;
align-items: flex-start;
gap: 12px;
}

.user-avatar {
width: 50px;
height: 50px;
font-size: 20px;
}

.stat-card {
padding: 15px;
}

.stat-icon {
width: 40px;
height: 40px;
font-size: 18px;
}

.stat-value {
font-size: 24px;
}

.stat-label {
font-size: 11px;
}

.action-card {
padding: 12px;
gap: 10px;
}

.action-icon-wrapper {
width: 40px;
height: 40px;
font-size: 20px;
}

.action-title {
font-size: 14px;
}

.action-description {
font-size: 11px;
}

.section-title {
font-size: 16px;
}

.section-title i {
font-size: 18px;
}

.activity-item {
padding: 10px;
gap: 10px;
}

.activity-icon-wrapper {
width: 35px;
height: 35px;
font-size: 15px;
}

.activity-title {
font-size: 13px;
}

.activity-time {
font-size: 10px;
}
}

/* ========================================
Home Page Responsive Styles
======================================== */

/* Banner and Hero Section */
.banner-area,
.loms-banner-area {
position: relative;
overflow: hidden;
}

.banner-content h1,
.banner-title {
line-height: 1.2;
}

/* Owl Carousel Responsive */
.owl-carousel .owl-nav button {
transition: all 0.3s ease;
}

/* Selection Courses Tab */
.selection-courses-tab {
flex-wrap: wrap;
gap: 10px;
}

.selection-courses-tab .default-btn {
white-space: nowrap;
}

/* Drawer Sidebar */
.drawer {
z-index: 1000;
}

.drawer-left {
left: 0;
}

/* Large Tablets (992px - 1199px) */
@media (max-width: 1199px) {
.banner-content h1 {
font-size: 42px;
}

.banner-content p {
font-size: 16px;
}

.owl-carousel .owl-nav button {
width: 45px;
height: 45px;
font-size: 20px;
}
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) {
.banner-content h1 {
font-size: 36px;
}

.banner-content p {
font-size: 15px;
}

.banner-content .default-btn {
padding: 12px 30px;
font-size: 15px;
}

/* Owl Carousel */
.owl-carousel .owl-nav button {
width: 40px;
height: 40px;
font-size: 18px;
}

.owl-carousel .owl-dots {
margin-top: 20px;
}

/* Selection Courses */
.selection-courses-area {
padding: 60px 0;
}

.section-title h2 {
font-size: 32px;
}

.section-title p {
font-size: 15px;
}
}

/* Mobile Landscape (576px - 767px) */
@media (max-width: 767px) {
/* Banner/Hero Section */
.banner-area,
.loms-banner-area {
padding: 80px 0 60px;
}

.banner-content {
text-align: center;
padding: 0 15px;
}

.banner-content h1 {
font-size: 28px;
margin-bottom: 15px;
}

.banner-content p {
font-size: 14px;
margin-bottom: 20px;
}

.banner-content .default-btn {
padding: 10px 25px;
font-size: 14px;
}

/* Drawer Sidebar */
.drawer {
width: 280px;
}

.drawerheader {
padding: 15px;
}

.list-group-item {
padding: 12px 15px;
font-size: 14px;
}

/* Owl Carousel */
.owl-carousel .owl-nav {
display: none !important;
}

.owl-carousel .owl-dots {
margin-top: 25px;
}

.owl-carousel .owl-dots .owl-dot {
width: 10px;
height: 10px;
margin: 0 5px;
}

/* Selection Courses */
.selection-courses-area {
padding: 50px 0;
}

.selection-courses-title {
margin-bottom: 20px;
}

.section-title h2 {
font-size: 26px;
margin-bottom: 12px;
}

.section-title p {
font-size: 14px;
}

.selection-courses-tab {
justify-content: center;
margin-bottom: 25px;
}

.selection-courses-tab .default-btn {
padding: 10px 20px;
font-size: 14px;
}

/* Container Fluid Adjustments */
.container-fluid {
padding-left: 15px;
padding-right: 15px;
}

/* Block Regions */
.block-region {
margin-bottom: 20px;
}

.block {
margin-bottom: 15px;
}

.card-body {
padding: 15px !important;
}
}

/* Mobile Portrait (max 575px) */
@media (max-width: 575px) {
/* Banner */
.banner-area,
.loms-banner-area {
padding: 60px 0 40px;
}

.banner-content h1 {
font-size: 24px;
line-height: 1.3;
}

.banner-content p {
font-size: 13px;
line-height: 1.6;
}

.banner-content .default-btn {
padding: 10px 20px;
font-size: 13px;
display: block;
max-width: 200px;
margin: 0 auto;
}

/* Drawer */
.drawer {
width: 260px;
}

.drawer-toggles {
padding: 10px;
}

.list-group-item {
padding: 10px 12px;
font-size: 13px;
}

.pl-5 {
padding-left: 2rem !important;
}

/* Section Titles */
.section-title h2 {
font-size: 22px;
margin-bottom: 10px;
}

.section-title p {
font-size: 13px;
line-height: 1.6;
}

/* Selection Courses */
.selection-courses-area {
padding: 40px 0;
}

.selection-courses-tab .default-btn {
padding: 8px 16px;
font-size: 13px;
}

/* Owl Carousel Dots */
.owl-carousel .owl-dots {
margin-top: 20px;
}

.owl-carousel .owl-dots .owl-dot {
width: 8px;
height: 8px;
margin: 0 4px;
}

/* Containers */
.container,
.container-fluid {
padding-left: 10px;
padding-right: 10px;
}

/* Cards */
.card {
margin-bottom: 12px;
border-radius: 10px;
}

.card-body {
padding: 12px !important;
}

/* Block Regions */
.block-region {
margin-bottom: 15px;
}

.loms-fullwidth-top,
.fullwidth-bottom {
padding: 0;
}
}

/* Extra Small Mobile (max 380px) */
@media (max-width: 380px) {
/* Banner */
.banner-content h1 {
font-size: 20px;
}

.banner-content p {
font-size: 12px;
}

.banner-content .default-btn {
padding: 8px 16px;
font-size: 12px;
max-width: 180px;
}

/* Drawer */
.drawer {
width: 240px;
}

.list-group-item {
padding: 8px 10px;
font-size: 12px;
}

/* Section Titles */
.section-title h2 {
font-size: 20px;
}

.section-title p {
font-size: 12px;
}

/* Selection Courses */
.selection-courses-tab .default-btn {
padding: 7px 14px;
font-size: 12px;
}

/* Containers */
.container,
.container-fluid {
padding-left: 8px;
padding-right: 8px;
}

.card-body {
padding: 10px !important;
}
}

/* ========================================
View Course Page Responsive Styles
======================================== */

/* Course Index Drawer */
.courseindex {
padding: 15px;
}

.courseindex ul {
list-style: none;
padding: 0;
}

/* Course Content */
.course-content {
padding: 20px 0;
}

.course-section-header {
flex-wrap: wrap;
padding: 15px;
background: #f8f9fa;
border-radius: 8px;
margin-bottom: 10px;
}

.course-section-header h3 {
font-size: 18px;
flex: 1;
}

.course-content-item-content {
padding: 20px;
}

/* Course Overview Details */
.courses-overview {
line-height: 1.8;
}

.courses-overview h3 {
font-size: 22px;
margin-top: 25px;
margin-bottom: 15px;
font-weight: 600;
color: #2d3436;
}

.courses-overview ul {
list-style: none;
padding: 0;
margin: 20px 0;
}

.courses-overview ul li {
padding: 10px 0 10px 35px;
position: relative;
line-height: 1.6;
}

.courses-overview ul li i {
position: absolute;
left: 0;
top: 12px;
color: #da0000;
font-size: 18px;
}

.courses-overview p {
margin-bottom: 15px;
line-height: 1.8;
color: #636e72;
}

/* Activity Icons */
.activityiconcontainer {
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
background: #f0f7ff;
border-radius: 10px;
}

/* Course Blocks */
.block_loms_course_desc {
margin-bottom: 20px;
border-radius: 12px;
overflow: hidden;
}

.block_loms_course_desc .card-title {
font-size: 20px;
font-weight: 600;
color: #2d3436;
}

/* Lectures List */
.lectures-list {
margin-top: 20px;
}

.lecture-item {
transition: all 0.3s ease;
}

.lecture-item:hover {
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
transform: translateY(-2px);
}

.lecture-number-badge {
font-weight: 700;
}

.lecture-item h5 {
font-size: 18px;
color: #2d3436;
font-weight: 600;
}

.lecture-item .btn-success {
background: linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);
border: none;
font-weight: 600;
}

.lecture-item .btn-success:hover {
transform: scale(1.05);
box-shadow: 0 4px 12px rgba(67, 233, 123, 0.4);
}

/* Loading Placeholder */
.bg-pulse-grey {
background-color: #e9ecef;
animation: pulse 1.5s ease-in-out infinite;
}

@keyframes pulse {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0.5;
}
}

/* Large Tablets (992px - 1199px) */
@media (max-width: 1199px) {
.course-section-header h3 {
font-size: 17px;
}

.courses-overview h3 {
font-size: 20px;
}

.course-content-item-content {
padding: 18px;
}
}

/* Tablets (768px - 991px) */
@media (max-width: 991px) {
/* Course Index Drawer */
#theme_boost-drawers-courseindex {
width: 280px;
}

.courseindex {
padding: 12px;
}

/* Course Content */
.course-content {
padding: 15px 0;
}

.course-section-header {
padding: 12px;
}

.course-section-header h3 {
font-size: 16px;
}

.course-content-item-content {
padding: 15px;
}

/* Course Overview */
.courses-overview h3 {
font-size: 18px;
margin-top: 20px;
margin-bottom: 12px;
}

.courses-overview ul li {
padding: 8px 0 8px 30px;
font-size: 15px;
}

.courses-overview ul li i {
font-size: 16px;
top: 10px;
}

.courses-overview p {
font-size: 15px;
}

.activityiconcontainer {
width: 45px;
height: 45px;
}

.block_loms_course_desc .card-title {
font-size: 18px;
}
}

/* Mobile Landscape (576px - 767px) */
@media (max-width: 767px) {
/* Course Index Drawer - Hide or Minimize */
#theme_boost-drawers-courseindex {
width: 260px;
transform: translateX(-100%);
transition: transform 0.3s ease;
}

#theme_boost-drawers-courseindex.show {
transform: translateX(0);
}

.courseindex {
padding: 10px;
}

/* Course Content */
.course-content {
padding: 10px 0;
}

.course-section-header {
padding: 10px;
flex-direction: column;
align-items: flex-start !important;
}

.course-section-header h3 {
font-size: 15px;
width: 100%;
margin-top: 5px;
}

.course-section-header .btn {
margin-bottom: 5px;
}

.course-content-item-content {
padding: 12px;
}

/* Course Overview */
.courses-overview {
font-size: 14px;
}

.courses-overview h3 {
font-size: 17px;
margin-top: 18px;
margin-bottom: 10px;
}

.courses-overview ul {
margin: 15px 0;
}

.courses-overview ul li {
padding: 7px 0 7px 28px;
font-size: 14px;
}

.courses-overview ul li i {
font-size: 15px;
top: 9px;
}

.courses-overview p {
font-size: 14px;
line-height: 1.7;
}

/* Activity Icons */
.activityiconcontainer {
width: 40px;
height: 40px;
}

/* Course Blocks */
.block_loms_course_desc {
margin-bottom: 15px;
border-radius: 10px;
}

.block_loms_course_desc .card-title {
font-size: 17px;
}

.block_loms_course_desc .card-text {
margin-top: 10px !important;
}

/* Topics List */
.topics {
padding: 0 !important;
}

.section.course-section {
margin-bottom: 12px;
}

/* Collapsible Sections */
.icons-collapse-expand {
padding: 8px !important;
}

/* Lectures List Mobile */
.lecture-item {
padding: 15px !important;
}

.lecture-item .row {
flex-direction: column;
}

.lecture-item .col-md-1,
.lecture-item .col-md-8,
.lecture-item .col-md-3 {
width: 100%;
text-align: center !important;
margin-bottom: 10px;
}

.lecture-item h5 {
font-size: 16px;
}

.lecture-number-badge {
margin-bottom: 10px;
}
}

/* Mobile Portrait (max 575px) */
@media (max-width: 575px) {
/* Course Index Drawer */
#theme_boost-drawers-courseindex {
width: 240px;
}

.courseindex {
padding: 8px;
font-size: 13px;
}

/* Course Content */
.course-content {
padding: 8px 0;
}

.course-section-header {
padding: 8px;
}

.course-section-header h3 {
font-size: 14px;
line-height: 1.4;
}

.course-content-item-content {
padding: 10px;
}

/* Course Overview */
.courses-overview {
font-size: 13px;
}

.courses-overview h3 {
font-size: 16px;
margin-top: 15px;
margin-bottom: 8px;
}

.courses-overview ul {
margin: 12px 0;
}

.courses-overview ul li {
padding: 6px 0 6px 25px;
font-size: 13px;
line-height: 1.5;
}

.courses-overview ul li i {
font-size: 14px;
top: 8px;
}

.courses-overview p {
font-size: 13px;
line-height: 1.6;
margin-bottom: 12px;
}

/* Activity Icons */
.activityiconcontainer {
width: 38px;
height: 38px;
}

/* Course Blocks */
.block_loms_course_desc {
margin-bottom: 12px;
}

.block_loms_course_desc .card-title {
font-size: 16px;
}

.block_loms_course_desc .card-body {
padding: 12px !important;
}

/* Section Availability */
.section_availability {
font-size: 12px;
}

/* Buttons */
.course-section-header .btn {
padding: 6px;
font-size: 14px;
}

/* Media List */
.media-list .media {
padding: 8px;
}

/* Loading Placeholder */
.bg-pulse-grey {
height: 30px;
}

/* Lectures List Mobile Portrait */
.lecture-item {
padding: 12px !important;
}

.lecture-item h5 {
font-size: 15px;
}

.lecture-item .btn-sm {
font-size: 12px;
padding: 6px 12px;
}

.lecture-number-badge .badge {
font-size: 14px !important;
padding: 8px 12px !important;
}
}

/* Extra Small Mobile (max 380px) */
@media (max-width: 380px) {
/* Course Index Drawer */
#theme_boost-drawers-courseindex {
width: 220px;
}

.courseindex {
padding: 6px;
font-size: 12px;
}

/* Course Content */
.course-section-header {
padding: 6px;
}

.course-section-header h3 {
font-size: 13px;
}

.course-content-item-content {
padding: 8px;
}

/* Course Overview */
.courses-overview {
font-size: 12px;
}

.courses-overview h3 {
font-size: 15px;
margin-top: 12px;
margin-bottom: 6px;
}

.courses-overview ul li {
padding: 5px 0 5px 22px;
font-size: 12px;
}

.courses-overview ul li i {
font-size: 13px;
top: 7px;
}

.courses-overview p {
font-size: 12px;
margin-bottom: 10px;
}

/* Activity Icons */
.activityiconcontainer {
width: 35px;
height: 35px;
}

/* Course Blocks */
.block_loms_course_desc .card-title {
font-size: 15px;
}

.block_loms_course_desc .card-body {
padding: 10px !important;
}

/* Buttons */
.course-section-header .btn {
padding: 5px;
font-size: 13px;
}

/* Lectures List Extra Small */
.lecture-item h5 {
font-size: 14px;
}

.lecture-item .btn-sm {
font-size: 11px;
padding: 5px 10px;
}

.lecture-number-badge .badge {
font-size: 12px !important;
padding: 6px 10px !important;
}
}

/* ========================================
Videos Notes Page Responsive Styles
======================================== */

/* Tablets (768px - 991px) */
@media (max-width: 991px) {
.page-header-section h1 {
font-size: 36px;
}

.page-header-section p {
font-size: 16px;
}

.resources-grid {
grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
gap: 20px;
}

.filter-tabs {
gap: 10px;
}

.filter-tab {
padding: 10px 20px;
font-size: 14px;
}
}

/* Mobile Landscape (576px - 767px) */
@media (max-width: 767px) {
.page-header-section {
padding: 40px 0;
border-radius: 0 0 20px 20px;
}

.page-header-section h1 {
font-size: 28px;
}

.page-header-section p {
font-size: 15px;
}

.filter-section {
padding: 20px;
}

.filter-tabs {
flex-direction: column;
gap: 10px;
}

.filter-tab {
width: 100%;
justify-content: space-between;
}

.filter-controls {
flex-direction: column;
}

.filter-controls > div {
width: 100% !important;
min-width: 100% !important;
}

.filter-controls button,
.filter-controls a.btn {
width: 100%;
}

.resources-grid {
grid-template-columns: 1fr;
gap: 20px;
}

.resource-card {
max-width: 100%;
}

.resource-title {
font-size: 18px;
}

.resource-meta {
flex-direction: column;
gap: 8px;
}
}

/* Mobile Portrait (max 575px) */
@media (max-width: 575px) {
.page-header-section {
padding: 30px 0;
}

.page-header-section h1 {
font-size: 24px;
}

.page-header-section p {
font-size: 14px;
}

.filter-section {
padding: 15px;
}

.filter-tab {
padding: 10px 15px;
font-size: 13px;
}

.filter-tab .badge {
font-size: 11px;
padding: 3px 8px;
}

.resource-icon {
width: 50px;
height: 50px;
font-size: 24px;
}

.resource-type-badge {
font-size: 10px;
padding: 6px 12px;
}

.resource-title {
font-size: 17px;
}

.resource-description {
font-size: 13px;
}

.meta-item {
font-size: 12px;
}

.btn-view-resource {
font-size: 14px;
padding: 10px;
}

.empty-state {
padding: 40px 15px;
}

.empty-state i {
font-size: 60px;
}

.empty-state h3 {
font-size: 20px;
}

.empty-state p {
font-size: 14px;
}
}

/* Extra Small Mobile (max 380px) */
@media (max-width: 380px) {
.page-header-section h1 {
font-size: 20px;
}

.page-header-section p {
font-size: 13px;
}

.filter-tab {
padding: 8px 12px;
font-size: 12px;
}

.resource-icon {
width: 45px;
height: 45px;
font-size: 20px;
}

.resource-header {
padding: 15px;
}

.resource-body {
padding: 15px;
}

.resource-title {
font-size: 16px;
}

.resource-description {
font-size: 12px;
}

.meta-item {
font-size: 11px;
}

.btn-view-resource {
font-size: 13px;
padding: 8px;
}
}

/* ========================================
Header & Footer Color Scheme
======================================== */

/* Top Header Area */
.top-header-area.bg-color-0071dc {
background-color: #001972 !important;
}

.top-header-area .read-more {
color: #da0000 !important;
}

.top-header-area .read-more:hover {
color: #ff0000 !important;
}

/* ========================================
Footer Styles
======================================== */

/* Footer Area Background */
.footer-area.bg-color-f5faff {
background-color: #001972 !important;
}

/* Footer Text Colors */
.footer-area h3 {
color: #ffffff !important;
}

.footer-area p,
.footer-area .info li,
.footer-area .import-link li a {
color: #e0e0e0 !important;
}

.footer-area .import-link li a:hover {
color: #da0000 !important;
}

/* Contact Info Section - Professional Styling */
.footer-area .info li {
color: #ffffff !important;
font-size: 14px;
line-height: 1.8;
}

.footer-area .info li span {
color: #ffffff !important;
font-weight: 600;
display: block;
margin-bottom: 5px;
}

.footer-area .info li a {
color: #e0e0e0 !important;
text-decoration: none;
transition: color 0.3s ease;
}

.footer-area .info li a:hover {
color: #da0000 !important;
}

/* Footer Social Icons */
.footer-social li a {
background: #da0000 !important;
color: #ffffff !important;
}

.footer-social li a:hover {
background: #b30000 !important;
transform: translateY(-3px);
}

/* Copyright Area */
.copy-right-area.bg-color-f5faff {
background-color: #000d4d !important;
border-top: 1px solid rgba(218, 0, 0, 0.3);
}

.copy-right-area p {
color: #e0e0e0 !important;
}

.copy-right-area p a {
color: #da0000 !important;
font-weight: 600;
}

.copy-right-area p a:hover {
color: #ff0000 !important;
}

/* ========================================
Modern Hero Slider
======================================== */

.hero-slider-wrapper {
position: relative;
width: 100%;
overflow: hidden;
margin-bottom: 0;
}

.hero-slider {
position: relative;
width: 100%;
}

.hero-slide {
position: absolute;
top: 0;
left: 0;
width: 100%;
opacity: 0;
transition: opacity 1s ease-in-out;
z-index: 1;
}

.hero-slide.active {
position: relative;
opacity: 1;
z-index: 2;
}

.hero-slide img {
width: 100%;
height: auto;
display: block;
}

.hero-content {
position: absolute;
top: 50%;
left: 0;
right: 0;
transform: translateY(-50%);
z-index: 2;
text-align: center;
color: #fff;
padding: 0 20px;
}

.hero-title {
font-size: 56px;
font-weight: 700;
color: #fff;
margin: 0 0 20px 0;
line-height: 1.2;
text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

.hero-description {
font-size: 20px;
color: #fff;
margin: 0 0 30px 0;
line-height: 1.6;
max-width: 700px;
margin-left: auto;
margin-right: auto;
text-shadow: 0 1px 5px rgba(0, 0, 0, 0.2);
}

.hero-btn {
display: inline-block;
padding: 16px 40px;
background: #da0000;
color: #fff;
font-size: 18px;
font-weight: 600;
text-decoration: none;
border-radius: 50px;
transition: all 0.3s ease;
box-shadow: 0 4px 15px rgba(218, 0, 0, 0.4);
}

.hero-btn:hover {
background: #b30000;
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(218, 0, 0, 0.5);
color: #fff;
}

/* Slider Arrows */
.slider-arrow {
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 55px;
height: 55px;
background: rgba(255, 255, 255, 0.9);
border: none;
border-radius: 50%;
color: #001972;
font-size: 28px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
z-index: 10;
transition: all 0.3s ease;
box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
}

.slider-arrow:hover {
background: #fff;
transform: translateY(-50%) scale(1.1);
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.3);
}

.slider-prev {
left: 30px;
}

.slider-next {
right: 30px;
}

/* Slider Dots */
.slider-dots {
position: absolute;
bottom: 30px;
left: 50%;
transform: translateX(-50%);
display: flex;
gap: 12px;
z-index: 10;
}

.dot {
width: 12px;
height: 12px;
background: rgba(255, 255, 255, 0.5);
border-radius: 50%;
cursor: pointer;
transition: all 0.3s ease;
border: 2px solid transparent;
}

.dot:hover {
background: rgba(255, 255, 255, 0.8);
transform: scale(1.2);
}

.dot.active {
background: #fff;
width: 40px;
border-radius: 10px;
}

/* Responsive Design for Hero Slider */
@media (max-width: 1199px) {

.hero-title {
font-size: 48px;
}

.hero-description {
font-size: 18px;
}

.hero-btn {
padding: 14px 35px;
font-size: 17px;
}
}

@media (max-width: 991px) {
.hero-title {
font-size: 42px;
}

.hero-description {
font-size: 17px;
}

.slider-arrow {
width: 50px;
height: 50px;
font-size: 24px;
}

.slider-prev {
left: 20px;
}

.slider-next {
right: 20px;
}
}

@media (max-width: 767px) {
.hero-title {
font-size: 36px;
}

.hero-description {
font-size: 16px;
margin-bottom: 25px;
}

.hero-btn {
padding: 12px 30px;
font-size: 16px;
}

.slider-arrow {
width: 45px;
height: 45px;
font-size: 22px;
}

.slider-prev {
left: 15px;
}

.slider-next {
right: 15px;
}

.slider-dots {
bottom: 20px;
gap: 10px;
}

.dot {
width: 10px;
height: 10px;
}

.dot.active {
width: 30px;
}
}

@media (max-width: 575px) {
.hero-title {
font-size: 28px;
margin-bottom: 15px;
}

.hero-description {
font-size: 15px;
margin-bottom: 20px;
}

.hero-btn {
padding: 10px 25px;
font-size: 15px;
}

.slider-arrow {
width: 40px;
height: 40px;
font-size: 20px;
}

.slider-prev {
left: 10px;
}

.slider-next {
right: 10px;
}
}

@media (max-width: 380px) {
.hero-title {
font-size: 24px;
}

.hero-description {
font-size: 14px;
}

.hero-btn {
padding: 10px 20px;
font-size: 14px;
}

.slider-arrow {
width: 35px;
height: 35px;
font-size: 18px;
}
}

/* ========================================
Trending Courses Section - Modern Udemy Style
======================================== */

.trending-courses-section {
background: #fff;
padding: 60px 0;
}

.trending-courses-section .section-header {
margin-bottom: 30px;
}

.trending-title {
font-size: 32px;
font-weight: 700;
color: #1c1d1f;
margin: 0;
}

/* Carousel Wrapper with Navigation Arrows */
.trending-carousel-wrapper {
position: relative;
padding: 0 0;
overflow: hidden;
max-width: 100%;
}

/* Carousel Navigation Arrows - Udemy Style */
.carousel-arrow {
position: absolute;
top: 40%;
transform: translateY(-50%);
width: 48px;
height: 48px;
background: rgba(0, 0, 0, 0.5);
border: none;
border-radius: 50%;
color: #fff;
font-size: 20px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
z-index: 10;
transition: all 0.3s ease;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08), 0 4px 12px rgba(0, 0, 0, 0.08);
}

.carousel-arrow:hover {
background: rgba(0, 0, 0, 0.8);
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
transform: translateY(-50%) scale(1.05);
}

.carousel-prev {
left: 10px;
}

.carousel-next {
right: 10px;
}

/* Owl Carousel for Trending Courses */

.trending-courses-carousel.owl-carousel {
margin: 0;
max-width: 100%;
}

.trending-courses-carousel.owl-carousel .owl-stage-outer {
overflow: hidden;
padding: 8px 0 16px 0;
}

.trending-courses-carousel.owl-carousel .owl-item {
padding: 0;
}

/* Course Card - Modern Clean Design */
.trending-course-card {
background: #fff;
border-radius: 8px;
overflow: hidden;
transition: all 0.3s ease;
height: 100%;
border: 1px solid #d1d7dc;
margin: 0 4px;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
}

.trending-course-card:hover {
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1), 0 4px 16px rgba(0, 0, 0, 0.1);
transform: translateY(-4px);
}

.course-card-link {
text-decoration: none;
color: inherit;
display: flex;
flex-direction: column;
height: 100%;
}

/* Course Image */
.course-image-wrapper {
width: 100%;
height: 160px;
overflow: hidden;
background: #f7f9fa;
position: relative;
flex-shrink: 0;
padding: 16px; border-radius: 60px;
}

.course-thumbnail {
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.3s ease;
border-radius: 0;
}

.trending-course-card:hover .course-thumbnail {
transform: scale(1.05);
}

/* Course Info Section */
.course-info {
padding: 12px;
position: relative;
display: flex;
flex-direction: column;
flex: 1;
}

.course-title {
font-size: 16px;
font-weight: 700;
color: #1c1d1f;
margin: 0 0 4px 0;
line-height: 1.4;
height: 44px;
overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;
}

.course-instructor {
font-size: 12px;
color: #6a6f73;
margin: 0 0 4px 0;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

/* Rating Section */
.course-rating {
display: flex;
align-items: center;
gap: 4px;
margin-bottom: 4px;
}

.rating-number {
font-size: 14px;
font-weight: 700;
color: #b4690e;
}

.stars {
display: flex;
gap: 1px;
}

.stars i {
color: #b4690e;
font-size: 13px;
}

.rating-count {
font-size: 12px;
color: #6a6f73;
margin-left: 2px;
}

/* Price Section */
.course-price {
display: flex;
align-items: center;
gap: 6px;
margin-top: auto;
padding-top: 4px;
}

.current-price {
font-size: 17px;
font-weight: 700;
color: #1c1d1f;
}

.original-price {
font-size: 14px;
color: #6a6f73;
text-decoration: line-through;
}

/* Bestseller Badge */
.course-badge {
position: absolute;
top: 8px;
left: 8px;
}

.badge-bestseller {
background: #eceb98;
color: #3d3c0a;
font-size: 12px;
font-weight: 700;
padding: 4px 8px;
border-radius: 0;
line-height: 1;
}

/* Hide Owl Carousel Default Navigation */
.trending-courses-carousel.owl-carousel .owl-nav {
display: none;
}

.trending-courses-carousel.owl-carousel .owl-dots {
display: none;
}

/* Responsive Design */
@media (max-width: 1399px) {
.trending-carousel-wrapper {
padding: 0 55px;
}

.course-image-wrapper {
height: 150px;
}
}

@media (max-width: 1199px) {
.trending-title {
font-size: 28px;
}

.trending-carousel-wrapper {
padding: 0 50px;
}

.carousel-arrow {
width: 44px;
height: 44px;
font-size: 18px;
}

.carousel-prev {
left: -5px;
}

.carousel-next {
right: -5px;
}

.course-image-wrapper {
height: 145px;
}

.course-title {
font-size: 15px;
height: 42px;
}

.trending-course-card {
margin: 0 6px;
}
}

@media (max-width: 991px) {
.trending-title {
font-size: 26px;
}

.trending-carousel-wrapper {
padding: 0 45px;
}

.carousel-arrow {
width: 40px;
height: 40px;
font-size: 18px;
}

.course-image-wrapper {
height: 160px;
}

.course-info {
padding: 8px;
}

.trending-course-card {
margin: 0 8px;
}
}

@media (max-width: 767px) {
.trending-courses-section {
padding: 40px 0;
}

.trending-title {
font-size: 24px;
}

.trending-carousel-wrapper {
padding: 0 40px;
}

.carousel-arrow {
width: 36px;
height: 36px;
font-size: 16px;
top: 35%;
}

.course-image-wrapper {
height: 180px;
}

.course-title {
font-size: 15px;
height: 42px;
}

.current-price {
font-size: 16px;
}

.original-price {
font-size: 13px;
}
}

@media (max-width: 575px) {
.trending-courses-section {
padding: 30px 0;
}

.trending-title {
font-size: 22px;
}

.trending-carousel-wrapper {
padding: 0 35px;
}

.carousel-arrow {
width: 32px;
height: 32px;
font-size: 14px;
}

.carousel-prev {
left: -2px;
}

.carousel-next {
right: -2px;
}

.course-image-wrapper {
height: 200px;
}

.course-info {
padding: 8px;
}

.course-title {
font-size: 16px;
height: 44px;
}

.course-instructor {
font-size: 12px;
}

.rating-number {
font-size: 13px;
}

.stars i {
font-size: 12px;
}

.rating-count {
font-size: 11px;
}

.current-price {
font-size: 16px;
}

.original-price {
font-size: 13px;
}

.badge-bestseller {
font-size: 11px;
padding: 4px 7px;
}
}

@media (max-width: 380px) {
.trending-title {
font-size: 20px;
}

.trending-carousel-wrapper {
padding: 0 30px;
}

.carousel-arrow {
width: 28px;
height: 28px;
font-size: 12px;
}

.course-image-wrapper {
height: 180px;
}

.course-title {
font-size: 15px;
height: 42px;
}

.course-instructor {
font-size: 11px;
}
}

/* ========================================
Modern Footer Styles
======================================== */

.modern-footer-area {
background: #001972;
padding: 40px 0 20px;
color: #ffffff;
position: relative;
}

.modern-footer-area::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent, rgba(218, 0, 0, 0.5), transparent);
}

.footer-widget {
margin-bottom: 25px;
}

.footer-logo {
display: inline-block;
margin-bottom: 20px;
transition: transform 0.3s ease;
}

.footer-logo:hover {
transform: scale(1.05);
}

.footer-logo img {
max-width: 180px;
height: auto;
}

.footer-description {
color: #e8e8e8;
font-size: 14px;
line-height: 1.7;
margin-bottom: 20px;
max-width: 280px;
}

.footer-title {
color: #ffffff;
font-size: 17px;
font-weight: 600;
margin-bottom: 20px;
position: relative;
padding-bottom: 10px;
}

.footer-title::after {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 40px;
height: 2px;
background: #da0000;
}

.footer-social-links {
display: flex;
gap: 12px;
margin-top: 20px;
}

.social-icon {
display: flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
background: rgba(255, 255, 255, 0.1);
border-radius: 8px;
color: #ffffff;
font-size: 20px;
transition: all 0.3s ease;
text-decoration: none;
}

.social-icon:hover {
background: #da0000;
color: #ffffff;
transform: translateY(-3px);
box-shadow: 0 5px 15px rgba(218, 0, 0, 0.3);
}

.social-icon.facebook:hover {
background: #1877f2;
}

.social-icon.twitter:hover {
background: #1da1f2;
}

.social-icon.instagram:hover {
background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
}

.social-icon.youtube:hover {
background: #ff0000;
}

.footer-links {
list-style: none;
padding: 0;
margin: 0;
}

.footer-links li {
margin-bottom: 12px;
}

.footer-links li a {
color: #d4d4d4;
font-size: 14px;
text-decoration: none;
transition: all 0.3s ease;
display: inline-block;
position: relative;
padding-left: 0;
}

.footer-links li a::before {
content: '\f30f';
font-family: 'boxicons' !important;
position: absolute;
left: -20px;
opacity: 0;
transition: all 0.3s ease;
color: #da0000;
}

.footer-links li a:hover {
color: #ffffff;
padding-left: 20px;
}

.footer-links li a:hover::before {
opacity: 1;
left: 0;
}

.footer-contact {
list-style: none;
padding: 0;
margin: 0;
}

.footer-contact li {
display: flex;
gap: 15px;
margin-bottom: 18px;
align-items: flex-start;
}

.footer-contact li i {
font-size: 24px;
color: #da0000;
flex-shrink: 0;
margin-top: 2px;
}

.contact-details {
flex: 1;
}

.contact-label {
display: block;
color: #a8b3c0;
font-size: 11px;
text-transform: uppercase;
letter-spacing: 0.5px;
margin-bottom: 5px;
font-weight: 500;
}

.contact-details a,
.contact-details p {
color: #ffffff;
font-size: 14px;
text-decoration: none;
margin: 0;
line-height: 1.5;
transition: color 0.3s ease;
}

.contact-details a:hover {
color: #da0000;
}

/* Copyright Area */
.copy-right-area {
background: #0f1419;
padding: 20px 0;
border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.copy-right-area p {
color: #8892a0;
font-size: 14px;
margin: 0;
text-align: center;
}

.copy-right-area a {
color: #da0000;
text-decoration: none;
font-weight: 600;
transition: color 0.3s ease;
}

.copy-right-area a:hover {
color: #ff1a1a;
}

/* Go Top Button */
.go-top {
position: fixed;
bottom: 30px;
right: 30px;
width: 45px;
height: 45px;
background: linear-gradient(135deg, #001972 0%, #da0000 100%);
color: #ffffff;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
opacity: 0;
visibility: hidden;
transition: all 0.3s ease;
z-index: 999;
box-shadow: 0 5px 20px rgba(0, 25, 114, 0.3);
}

.go-top.active {
opacity: 1;
visibility: visible;
}

.go-top:hover {
transform: translateY(-5px);
box-shadow: 0 10px 30px rgba(218, 0, 0, 0.4);
}

.go-top i {
font-size: 24px;
}

/* Responsive Footer Styles */
@media (max-width: 991px) {
.modern-footer-area {
padding: 35px 0 15px;
}

.footer-widget {
margin-bottom: 30px;
}

.footer-title {
font-size: 16px;
margin-bottom: 18px;
}

.footer-description {
max-width: 100%;
}
}

@media (max-width: 767px) {
.modern-footer-area {
padding: 30px 0 15px;
}

.footer-title {
font-size: 15px;
margin-bottom: 15px;
}

.footer-social-links {
justify-content: flex-start;
}

.footer-contact li {
gap: 12px;
margin-bottom: 15px;
}

.footer-contact li i {
font-size: 20px;
}

.go-top {
width: 40px;
height: 40px;
bottom: 20px;
right: 20px;
}

.go-top i {
font-size: 20px;
}
}

@media (max-width: 575px) {
.modern-footer-area {
padding: 25px 0 12px;
}

.footer-logo img {
max-width: 140px;
}

.footer-description {
font-size: 13px;
margin-bottom: 15px;
}

.footer-title {
font-size: 15px;
margin-bottom: 12px;
padding-bottom: 8px;
}

.footer-title::after {
width: 35px;
}

.social-icon {
width: 36px;
height: 36px;
font-size: 18px;
}

.footer-links li {
margin-bottom: 10px;
}

.footer-links li a {
font-size: 13px;
}

.footer-contact li {
margin-bottom: 15px;
}

.contact-details a,
.contact-details p {
font-size: 13px;
}

.copy-right-area {
padding: 15px 0;
}

.copy-right-area p {
font-size: 13px;
}
}


/* Force footer dark background on all devices */
.modern-footer-area {
  background: #001972 !important;
  color: #ffffff !important;
}

.modern-footer-area * {
  color: inherit;
}

.footer-title {
  color: #ffffff !important;
}

.footer-description,
.footer-links li a,
.contact-details,
.contact-details a,
.contact-details p,
.contact-label {
  color: rgba(255, 255, 255, 0.85) !important;
}

.footer-links li a:hover {
  color: #da0000 !important;
}

.contact-details a:hover {
  color: #da0000 !important;
}
