/* site_assets/css/services.style.css */

/* Page Title Section - Enhanced */
.services-hero{padding:calc(var(--spacing-unit)*3.5) 0;background-color:var(--color-primary);color:var(--color-text-light);text-align:center;border-bottom:6px solid var(--color-secondary);}.services-hero .page-main-title{font-size:clamp(2.8rem,6vw,4rem);}.services-hero .page-subtitle{font-size:clamp(1.05rem,2.5vw,1.25rem);max-width:850px;opacity:0.95;line-height:1.65;}.services-hero .page-subtitle strong{color:var(--color-secondary);}.services-hero .page-subtitle em{font-style:italic;color:var(--color-accent);opacity:0.9;}

/* Filter/Browse Section - Enhanced */
.filter-browse-section{padding:calc(var(--spacing-unit)*3) 0;background-color:var(--color-background-light);border-bottom:1px solid var(--color-border-light);}.filter-title{font-family:var(--font-mono);font-size:calc(var(--spacing-unit)*1.2);color:var(--color-text-main);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:calc(var(--spacing-unit)*1.5);text-align:center;font-weight:700;}.filter-tags-container{display:flex;flex-wrap:wrap;justify-content:center;gap:calc(var(--spacing-unit)*0.8);}.filter-tag{background-color:#fff;color:var(--color-primary);border:1px solid var(--color-border-light);padding:calc(var(--spacing-unit)*0.6) calc(var(--spacing-unit)*1.4);border-radius:25px;font-size:calc(var(--spacing-unit)*0.92);font-weight:600;cursor:pointer;transition:all 0.3s ease;box-shadow:0 2px 4px rgba(0,0,0,0.05);}.filter-tag:hover{background-color:var(--color-secondary);color:#fff;border-color:var(--color-secondary);transform:translateY(-2px) scale(1.03);box-shadow:0 4px 8px rgba(0,0,0,0.08);}.filter-tag.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 3px 6px rgba(0,77,64,0.2);}

/* Courses Listing Section */
.courses-listing-section{padding:calc(var(--spacing-unit)*4.5) 0;background-color:#fdfdfd;}.courses-layout-dynamic{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:calc(var(--spacing-unit)*3);align-items:start;}

/* Common Course Item Styling - Enhanced */
.course-item{background-color:#fff;border-radius:10px;box-shadow:0 6px 18px rgba(0,0,0,0.07);overflow:hidden;transition:box-shadow 0.3s ease, transform 0.3s ease;display:flex;flex-direction:column;border:1px solid var(--color-border-light);}.course-item:hover{box-shadow:0 12px 30px rgba(0,0,0,0.12);transform:translateY(-6px);}.course-item-content{padding:calc(var(--spacing-unit)*1.8) calc(var(--spacing-unit)*2);flex-grow:1;display:flex;flex-direction:column;}.course-item-title{font-family:var(--font-heading);font-size:clamp(1.4rem,3vw,1.75rem);color:var(--color-primary);margin-bottom:calc(var(--spacing-unit)*0.7);font-weight:700;line-height:1.35;}.course-item-authors{font-family:var(--font-mono);font-size:calc(var(--spacing-unit)*0.88);color:var(--color-text-main);margin-bottom:calc(var(--spacing-unit)*1.2);}.course-item-authors strong{font-weight:700;}.course-item-excerpt{font-size:calc(var(--spacing-unit)*0.98);line-height:1.65;margin-bottom:var(--spacing-unit);flex-grow:1;color:var(--color-text-main);}.course-item-excerpt strong{color:var(--color-primary);font-weight:600;}.course-item-excerpt em{font-style:italic;color:var(--color-secondary);}

.course-item-details-expandable{display:none;padding-top:calc(var(--spacing-unit)*1.2);border-top:1px dashed var(--color-border-light);margin-top:calc(var(--spacing-unit)*1.2);animation:fadeInDetails 0.5s ease forwards;}.course-item-details-expandable.open{display:block;}@keyframes fadeInDetails{from{opacity:0;transform:translateY(-10px);}to{opacity:1;transform:translateY(0);}}.course-item-details-expandable h4{font-family:var(--font-heading);font-size:calc(var(--spacing-unit)*1.1);color:var(--color-primary);margin:var(--spacing-unit) 0 calc(var(--spacing-unit)*0.6);font-weight:700;}.course-item-details-expandable ul, .course-item-details-expandable ol{padding-left:calc(var(--spacing-unit)*1.5);margin-bottom:var(--spacing-unit);font-size:calc(var(--spacing-unit)*0.92);line-height:1.6;}.course-item-details-expandable ul li::marker, .course-item-details-expandable ol li::marker{color:var(--color-secondary);font-weight:bold;}.course-item-details-expandable li{margin-bottom:calc(var(--spacing-unit)*0.4);}.course-item-details-expandable p{font-size:calc(var(--spacing-unit)*0.92);margin-bottom:calc(var(--spacing-unit)*0.6);line-height:1.6;}.course-item-details-expandable blockquote{font-style:italic;padding-left:var(--spacing-unit);border-left:3px solid var(--color-secondary);margin:var(--spacing-unit) 0;color:var(--color-text-main);opacity:0.9;}

.course-item-meta{margin-top:auto;padding-top:calc(var(--spacing-unit)*1.2);display:flex;flex-wrap:wrap;gap:calc(var(--spacing-unit)*0.6);}.meta-tag{background-color:rgba(0,77,64,0.08);color:var(--color-primary);font-size:calc(var(--spacing-unit)*0.78);padding:calc(var(--spacing-unit)*0.35) calc(var(--spacing-unit)*0.8);border-radius:5px;font-weight:600;}.course-item-expand-button{background-color:transparent;color:var(--color-secondary);border:2px solid var(--color-secondary);border-radius:5px;padding:calc(var(--spacing-unit)*0.5) calc(var(--spacing-unit)*1);font-weight:700;cursor:pointer;transition:all 0.3s ease;margin-top:var(--spacing-unit);align-self:flex-start;font-size:calc(var(--spacing-unit)*0.88);letter-spacing:0.3px;}.course-item-expand-button:hover{background-color:var(--color-secondary);color:#fff;transform:scale(1.03);}.course-item-expand-button .arrow-icon{display:inline-block;transition:transform 0.3s ease;margin-left:3px;}

/* Specific Course Item Styles - Enhanced */
.course-item-type-badge{position:absolute;top:calc(var(--spacing-unit)*1.2);left:calc(var(--spacing-unit)*1.2);background-color:var(--color-secondary);color:#fff;padding:calc(var(--spacing-unit)*0.3) calc(var(--spacing-unit)*0.8);font-size:calc(var(--spacing-unit)*0.78);font-weight:bold;border-radius:5px;z-index:2;text-transform:uppercase;letter-spacing:0.6px;box-shadow:0 2px 5px rgba(0,0,0,0.15);}.compact-badge{position:static;display:inline-block;margin-bottom:calc(var(--spacing-unit)*0.6);font-size:calc(var(--spacing-unit)*0.75);padding:calc(var(--spacing-unit)*0.25) calc(var(--spacing-unit)*0.7);background-color:var(--color-primary);color:var(--color-text-light);}

/* Featured Course - Enhanced */
.course-item-featured{grid-column:1 / -1;display:grid;grid-template-columns:minmax(300px, 0.8fr) 1.2fr;background-color:var(--color-background-light);border:1px solid var(--color-border-light);box-shadow:0 8px 25px rgba(0,0,0,0.08);}.course-item-featured .course-item-visual{position:relative;min-height:350px;background-color:var(--color-primary);border-radius:10px 0 0 10px;}.course-item-featured .visual-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;opacity:0.7;border-radius:10px 0 0 0;}.course-item-featured .course-item-content{padding:calc(var(--spacing-unit)*2.2) calc(var(--spacing-unit)*2.8);}.course-item-featured .course-item-title{font-size:clamp(1.8rem,4vw,2.2rem);}.course-item-featured .course-item-expand-button{padding:calc(var(--spacing-unit)*0.6) calc(var(--spacing-unit)*1.2);font-size:calc(var(--spacing-unit)*0.9);}@media(max-width:992px){.course-item-featured{grid-template-columns:1fr;}.course-item-featured .course-item-visual{min-height:280px;border-radius:10px 10px 0 0;}.course-item-featured .visual-bg{border-radius:10px 10px 0 0;}}

/* Standard Course with Icon - Enhanced */
.course-item-standard{position:relative;padding-top:calc(var(--spacing-unit)*0.5);}.course-item-icon{position:absolute;top:calc(var(--spacing-unit)*1.8);right:calc(var(--spacing-unit)*1.8);width:44px;height:44px;color:var(--color-secondary);opacity:0.25;}

/* Compact Course - Enhanced */
.course-item-compact{background-color:lighten(var(--color-accent),2%);border-left:5px solid var(--color-secondary);}.course-item-compact .course-item-title{font-size:clamp(1.25rem,2.5vw,1.5rem);}.course-item-compact .course-item-content{padding:calc(var(--spacing-unit)*1.5) calc(var(--spacing-unit)*1.8);}

/* Track/Specialization - Enhanced */
.course-item-track{padding:0;background-color:var(--color-background-light);border:1px solid var(--color-border-light);box-shadow:0 8px 25px rgba(0,0,0,0.08);}.track-header{position:relative;padding:calc(var(--spacing-unit)*2.5) calc(var(--spacing-unit)*2);color:var(--color-text-light);text-align:center;border-radius:10px 10px 0 0;overflow:hidden;border-bottom:3px solid var(--color-secondary);}.track-header-bg{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:0;filter:brightness(0.6) contrast(1.1);}.track-title{font-family:var(--font-heading);font-size:clamp(1.6rem,4vw,2rem);margin-bottom:calc(var(--spacing-unit)*0.75);position:relative;z-index:1;color:#fff;font-weight:900;}.track-description{font-size:calc(var(--spacing-unit)*0.95);position:relative;z-index:1;opacity:0.95;color:#fff;max-width:650px;margin:0 auto;line-height:1.6;}.track-description strong{color:var(--color-secondary);}.track-courses-list{padding:calc(var(--spacing-unit)*2);display:flex;flex-direction:column;gap:calc(var(--spacing-unit)*1.2);}.track-sub-item{background-color:#fff;padding:calc(var(--spacing-unit)*1.2) calc(var(--spacing-unit)*1.5);border-radius:6px;box-shadow:0 3px 8px rgba(0,0,0,0.06);border-left:4px solid var(--color-primary);}.track-sub-item h4{font-family:var(--font-heading);font-size:calc(var(--spacing-unit)*1.15);color:var(--color-primary);margin-bottom:calc(var(--spacing-unit)*0.4);font-weight:700;}.track-sub-item p{font-size:calc(var(--spacing-unit)*0.88);margin-bottom:calc(var(--spacing-unit)*0.6);color:var(--color-text-main);line-height:1.5;}.track-sub-link{font-size:calc(var(--spacing-unit)*0.82);color:var(--color-secondary);font-weight:bold;text-decoration:none;border-bottom:1px dashed var(--color-secondary);transition:color 0.2s ease, border-color 0.2s ease;}.track-sub-link:hover{color:darken(var(--color-secondary),10%);border-bottom-style:solid;}.track-meta{padding:0 calc(var(--spacing-unit)*2) calc(var(--spacing-unit)*2);}

@media (min-width: 768px) {
    .courses-layout-dynamic {
        grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
    }
     .course-item-featured {
        grid-column: span 2; 
    }
     .course-item-track {
        grid-column: span 2; 
    }
}
@media (min-width: 1200px) {
    .courses-layout-dynamic {
         grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); /* Larger base size on wide screens */
    }
}

/* Call to Explore Further Section - Enhanced */
.call-to-explore-further{padding:calc(var(--spacing-unit)*4.5) 0;background-color:var(--color-accent);text-align:center;border-top:1px solid var(--color-border-light);}.cta-explore-title{font-family:var(--font-heading);font-size:clamp(2rem,5vw,2.8rem);color:var(--color-primary);margin-bottom:var(--spacing-unit)*1.2;font-weight:900;}.cta-explore-text{font-size:clamp(1.05rem,2.5vw,1.2rem);max-width:750px;margin:0 auto calc(var(--spacing-unit)*2.5);line-height:1.7;color:var(--color-text-main);}.cta-explore-text strong{color:var(--color-primary);}.cta-buttons-group{display:flex;justify-content:center;gap:var(--spacing-unit)*1.5;flex-wrap:wrap;}