/*
Theme Name: Inspire Softs Theme
Theme URI: https://inspiresofts.com/   
Author: Inspire Softs
Author URI: https://inspiresofts.com/  
Description: A custom WordPress theme developed by Inspire Softs. This Theme is developed for bulchand high school sunamganj. Bulchand High School (বুলচান্দ উচ্চ বিদ্যালয়, সুনামগঞ্জ।) is located in Sunamganj district. সুনামগঞ্জ শহরের প্রাণকেন্দ্রে নতুনপাড়া ও কালীবাড়ীর মধ্যস্থলে চার দেয়াল ঘেরা ২ একর ভূমির উপর ১৯৩২ সালে বিদ্যালয়টি অবস্থিত।
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: inspire-softs
Tags: custom-theme, responsive, modern, busines
*/

/* Import the original CSS files */
@import url('front_end_assets/css/bootstrap.min.css');

/* Add custom WordPress-specific styles here */
body {
    margin: 0;
    padding: 0;
}

/* Executive Committee Section */
.executive_committee_section {
    margin-bottom: 30px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    padding: 25px;
    overflow: hidden;
}

.executive_committee_section .central_notice_title {
    background: linear-gradient(135deg, #3498db, #2980b9);
    margin: -25px -25px 20px -25px;
    padding: 15px 25px;
    position: relative;
}

.executive_committee_section .central_notice_title:after {
    content: '';
    position: absolute;
    bottom: -10px;
    right: 0;
    width: 0;
    height: 0;
    border-left: 20px solid #2980b9;
    border-bottom: 10px solid transparent;
}

.executive_committee_section .central_notice_title h2 {
    color: white;
    margin: 0;
    font-size: 20px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.ec_members_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 20px;
}

.ec_member_item {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
    position: relative;
    overflow: hidden;
}

.ec_member_item:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #3498db, #2ecc71);
}

.ec_member_item:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0,0,0,0.15);
}

.ec_member_photo {
    margin-bottom: 15px;
    position: relative;
}

.ec_member_photo img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid #f8f9fa;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
}

.ec_member_item:hover .ec_member_photo img {
    transform: scale(1.05);
    border-color: #3498db;
}

.ec_member_info h4 {
    font-size: 16px;
    font-weight: 600;
    margin: 15px 0 8px;
    color: #2c3e50;
    line-height: 1.3;
}

.ec_member_info .position {
    font-weight: 600;
    color: #3498db;
    margin: 8px 0;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.ec_member_info .member_id {
    font-size: 12px;
    color: #7f8c8d;
    margin: 5px 0 0;
    opacity: 0.8;
}

.default_ec_content {
    margin-top: 20px;
}

.view_all_ec {
    text-align: center;
    margin-top: 25px;
    grid-column: 1 / -1;
}

.view_all_ec .btn {
    background: linear-gradient(135deg, #3498db, #2980b9);
    border: none;
    color: white;
    padding: 12px 30px;
    border-radius: 25px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.view_all_ec .btn:hover {
    background: linear-gradient(135deg, #2980b9, #3498db);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(52, 152, 219, 0.3);
}

/* Speech Sections */
.speech_content {
    padding: 15px;
        border-left: 2px solid #3BACB6;
    box-shadow: 0 10px 10px #ccc;
    border-radius: 3px;
    background: rgba(79, 173, 182, 0.1);
}

.speech_photo {
    text-align: center;
    margin-bottom: 15px;
}

.speech_photo img {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #007bff;
}

.speech_text p {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 10px;
    text-align: justify;
}

.speech_text .read_more {
    background-color: #007bff;
    color: #fff;
    padding: 10px 25px;
    text-decoration: none;
    border-radius: 5px;
    display: inline-block;
    font-weight: 600;
    transition: all 0.3s ease;
}

.speech_text .read_more:hover {
    text-decoration: underline;
}

/* Quick Links - using bima_news styling instead */

.quick_links_list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quick_links_list li {
    margin-bottom: 8px;
    padding: 8px 0;
    border-bottom: 1px solid #eee;
}

.quick_links_list li:last-child {
    border-bottom: none;
}

.quick_links_list a {
    color: #333;
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: color 0.3s ease;
}

.quick_links_list a:hover {
    color: #007bff;
}

.quick_links_list i {
    margin-right: 10px;
    width: 16px;
    color: #007bff;
}

/* Announcements */
.announcements_list {
    padding: 15px;
}

.announcement_item {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    padding: 10px;
    background: #f8f9fa;
    border-radius: 5px;
    border-left: 4px solid #007bff;
}

.announcement_icon {
    margin-right: 15px;
    color: #007bff;
    font-size: 18px;
}

.announcement_content h5 {
    margin: 0 0 5px;
    font-size: 14px;
}

.announcement_content h5 a {
    color: #333;
    text-decoration: none;
}

.announcement_content h5 a:hover {
    color: #007bff;
}

.announcement_content .date {
    font-size: 12px;
    color: #666;
}

/* Contact Information */
.contact_info {
    padding: 15px;
}

.contact_item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 15px;
}

.contact_item i {
    margin-right: 10px;
    margin-top: 3px;
    color: #007bff;
    width: 16px;
}

.contact_item p {
    margin: 0;
    font-size: 14px;
    line-height: 1.5;
}

/* Activities Section */
.recent_activities_section {
    margin-bottom: 30px;
    background: #fff;
    border-radius: 5px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    padding: 20px;
}

.activities_list {
    margin-top: 15px;
}

.activity_item {
    display: flex;
    margin-bottom: 15px;
    padding: 15px;
    background: #f8f9fa;
    border-radius: 5px;
    transition: background 0.3s ease;
}

.activity_item:hover {
    background: #e9ecef;
}

.activity_date {
    text-align: center;
    margin-right: 15px;
    background: #007bff;
    color: white;
    border-radius: 5px;
    padding: 10px;
    min-width: 60px;
}

.activity_date .day {
    display: block;
    font-size: 18px;
    font-weight: bold;
}

.activity_date .month {
    display: block;
    font-size: 12px;
    text-transform: uppercase;
}

.activity_content h4 {
    margin: 0 0 8px;
    font-size: 16px;
}

.activity_content h4 a {
    color: #333;
    text-decoration: none;
}

.activity_content h4 a:hover {
    color: #007bff;
}

.activity_content p {
    margin: 0;
    font-size: 14px;
    color: #666;
    line-height: 1.5;
}

/* WordPress specific classes */
.wp-post-image {
    max-width: 100%;
    height: auto;
}

.alignleft {
    float: left;
    margin-right: 15px;
}

.alignright {
    float: right;
    margin-left: 15px;
}

.aligncenter {
    display: block;
    margin: 0 auto;
}

/* Responsive images */
img {
    max-width: 100%;
    height: auto;
}

/* WordPress gallery styles */
.gallery {
    margin: auto;
}

.gallery-item {
    float: left;
    margin-top: 10px;
    text-align: center;
}

.gallery-caption {
    margin-left: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .ec_members_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }
    
    .ec_member_photo img {
        width: 80px;
        height: 80px;
    }
    
    .ec_member_info h4 {
        font-size: 14px;
    }
    
    .ec_member_info .position {
        font-size: 12px;
    }
    
    .activity_item {
        flex-direction: column;
    }
    
    .activity_date {
        margin-right: 0;
        margin-bottom: 10px;
        align-self: flex-start;
    }
    
    .contact_item {
        flex-direction: column;
    }
    
    .contact_item i {
        margin-bottom: 5px;
    }
}

@media (max-width: 480px) {
    .ec_members_grid {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .executive_committee_section {
        padding: 15px;
        margin-bottom: 20px;
    }
    
    .executive_committee_section .central_notice_title {
        margin: -15px -15px 15px -15px;
        padding: 12px 15px;
    }
    
    .executive_committee_section .central_notice_title h2 {
        font-size: 18px;
    }
    
    .ec_member_item {
        padding: 15px;
    }
}

/* Inline CSS styles moved from front-page.php for better organization */

/* Activities Description Section */
.activities_description {
    margin-bottom: 20px;
    font-size: 16px;
    border: 2px solid #ddd;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(0,0,0,0.1);
    padding: 20px 25px;
    background: #fff;
}

.activities_description p:first-child {
    text-align: justify;
    font-weight: 600;
    font-size: 18px;
    letter-spacing: 1px;
    text-shadow: 1px 1px 2px #e0e0e0;
    margin-bottom: 15px;
}

.activities_description p {
    text-align: justify;
    text-shadow: 1px 1px 2px #e0e0e0;
    margin-bottom: 10px;
}

.activities_description .btn {
    background-color: #007bff;
    color: #fff;
    padding: 10px 25px;
    text-decoration: none;
    border-radius: 5px;
    display: inline-block;
    font-weight: 600;
    transition: all 0.3s ease;
}

.activities_description .btn i {
    margin-left: 5px;
}

/* Executive Committee Section Override */
.executive_committee_section {
    border: none !important;
    box-shadow: none !important;
}

.executive_committee_section .central_notice_title {
    background: none !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
}

.executive_committee_section .central_notice_title h2 {
    color: #333 !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Quick Links Section - removed conflicting styles to use bima_news */

.quick_links_list {
    padding: 15px 20px;
    background: #f8f9fa;
}

.quick_links_list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.quick_links_list li {
    border-bottom: 1px solid #e9ecef;
    padding: 8px 0;
}

.quick_links_list li:last-child {
    border-bottom: none;
}

.quick_links_list a {
    color: #4a90e2;
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: all 0.3s ease;
}

.quick_links_list a:hover {
    color: #357abd;
}

.quick_links_list a i {
    margin-right: 10px;
    width: 16px;
}

/* Dynamic Slider Styles */
.slider .owl-carousel .item img {
    width: 100%;
    height: auto;
    max-height: 400px;
    object-fit: cover;
    border-radius: 5px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transition: transform 0.3s ease;
}

.slider .owl-carousel .item:hover img {
    transform: scale(1.02);
}

.slider .owl-carousel .item a {
    display: block;
    text-decoration: none;
    outline: none;
}

/* Owl Carousel Custom Styling for Slider */
.slider .owl-carousel .owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
    pointer-events: none;
}

.slider .owl-carousel .owl-nav button {
    position: absolute;
    background: rgba(0,0,0,0.5) !important;
    color: white !important;
    border: none !important;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 18px;
    pointer-events: all;
    transition: all 0.3s ease;
}

.slider .owl-carousel .owl-nav button:hover {
    background: rgba(0,0,0,0.8) !important;
    transform: scale(1.1);
}

.slider .owl-carousel .owl-nav .owl-prev {
    left: 15px;
}

.slider .owl-carousel .owl-nav .owl-next {
    right: 15px;
}

.slider .owl-carousel .owl-dots {
    text-align: center;
    margin-top: 15px;
}

.slider .owl-carousel .owl-dots .owl-dot {
    display: inline-block;
    margin: 0 5px;
}

.slider .owl-carousel .owl-dots .owl-dot span {
    display: block;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(0,0,0,0.3);
    transition: all 0.3s ease;
}

.slider .owl-carousel .owl-dots .owl-dot.active span,
.slider .owl-carousel .owl-dots .owl-dot:hover span {
    background: #007bff;
    transform: scale(1.2);
}

/* Responsive Slider */
@media (max-width: 768px) {
    .slider .owl-carousel .item img {
        max-height: 250px;
    }
    
    .slider .owl-carousel .owl-nav button {
        width: 40px;
        height: 40px;
        font-size: 14px;
    }
    
    .slider .owl-carousel .owl-nav .owl-prev {
        left: 10px;
    }
    
    .slider .owl-carousel .owl-nav .owl-next {
        right: 10px;
    }
}

@media (max-width: 480px) {
    .slider .owl-carousel .item img {
        max-height: 200px;
        border-radius: 3px;
    }
    
    .slider .owl-carousel .owl-nav button {
        width: 35px;
        height: 35px;
        font-size: 12px;
    }
}

/* =============================================================================
   FOOTER STYLES - Modern WordPress Theme
   ============================================================================= */

/* NYU-Style Footer Exact Match */
.nyu-footer {
  background-color: #2a8a99; /* Deeper shade of menu color */
  color: #fff; /* Match menu text color */
  font-family: 'Gotham', 'Helvetica Neue', Arial, sans-serif;
  font-size: 14px;
  line-height: 1.4;
}

.nyu-footer .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Main Footer Content */
.footer-content {
  padding: 40px 0 30px;
}

.footer-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
  justify-content: center;
  max-width: 900px;
  margin: 0 auto;
}

.footer-column {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.footer-column h3.footer-title {
  font-size: 16px;
  font-weight: 700;
  margin: 0 0 20px 0;
  color: white;
  text-transform: none;
  text-align: center;
}

.footer-links {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  text-align: center;
  width: 100%;
}

.footer-links a {
  color: #d4d4d4;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  transition: color 0.2s ease;
}

.footer-links a:hover {
  color: white;
  text-decoration: underline;
}

/* Bottom Footer Bar */
.footer-bottom {
  background-color: #247885; /* Even deeper shade for bottom bar */
  border-top: 1px solid #21707b;
  padding: 20px 0;
}

.bottom-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

.footer-info {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 13px;
  color: #fff;
}

.footer-info .copyright {
  color: #fff;
}

.footer-info .separator {
  color: #fff;
  opacity: 0.5;
}

.footer-info a {
  color: #fff;
  text-decoration: none;
  transition: color 0.2s ease;
}

.footer-info a:hover {
  color: #E6AE6C;
  text-decoration: underline;
}

/* Social Media Icons */
.footer-social {
  display: flex;
  gap: 15px;
  align-items: center;
  flex-wrap: wrap;
}

.footer-social .developer-credit {
  color: #fff;
  font-size: 12px;
  margin-right: 20px;
}

.footer-social .developer-credit a {
  color: #E6AE6C;
  font-weight: 500;
  font-size: 12px;
}

.footer-social .developer-credit a:hover {
  color: #fff;
}

.footer-social a:not(.developer-credit a) {
  color: #fff;
  font-size: 18px;
  transition: color 0.2s ease;
  text-decoration: none;
}

.footer-social a:not(.developer-credit a):hover {
  color: #E6AE6C;
}

/* Footer Responsive Design */
@media (max-width: 768px) {
  .footer-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    max-width: 100%;
  }
  
  .bottom-content {
    flex-direction: column;
    text-align: center;
    gap: 15px;
  }
  
  .footer-info {
    flex-wrap: wrap;
    justify-content: center;
    line-height: 1.6;
  }
  
  .footer-social {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  
  .footer-social .developer-credit {
    margin-right: 0;
    margin-bottom: 10px;
    text-align: center;
  }
}

@media (max-width: 480px) {
  .footer-grid {
    grid-template-columns: 1fr;
    gap: 25px;
    max-width: 100%;
  }
  
  .footer-content {
    padding: 30px 0 20px;
  }
  
  .footer-column h3.footer-title {
    font-size: 15px;
    margin-bottom: 15px;
  }
  
  .footer-links {
    gap: 10px;
  }
  
  .footer-links a {
    font-size: 13px;
  }
}

/* Quick Links Container Styles - removed conflicting rules to use bima_news class */

.quick_links_list {
    padding: 15px;
    border-left: 2px solid #3BACB6;
    box-shadow: 0 10px 10px #ccc;
    border-radius: 3px;
    background: rgba(79, 173, 182, 0.1);
}

.quick_links_list ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.quick_links_list li {
    margin-bottom: 15px;
}

.quick_links_list a {
    color: #333;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.5;
    display: flex;
    align-items: flex-start;
}

.quick_links_list a i {
    margin-right: 10px;
    margin-top: 3px;
    color: #007bff;
    width: 16px;
}

.quick_links_list a:hover {
    color: #007bff;
    text-decoration: none;
}

/* Responsive Layout Ordering */
/* Desktop: Left (order-md-1) | Center (order-md-2) | Right (order-md-3) */
/* Mobile/Tablet: Center (order-1) | Left (order-2) | Right (order-3) */

@media (max-width: 767px) {
    /* Mobile: Center content comes first after member counter */
    .order-md-2.order-1 {
        order: 1 !important;
    }
    
    /* Mobile: Left sidebar comes second */
    .order-md-1.order-2 {
        order: 2 !important;
    }
    
    /* Mobile: Right sidebar comes third */
    .order-md-3.order-3 {
        order: 3 !important;
    }
    
    /* Add spacing between sections on mobile */
    .col-12 {
        margin-bottom: 20px;
    }
    
    /* Ensure flexbox display for proper ordering */
    .row {
        display: flex !important;
        flex-wrap: wrap !important;
    }
}

/* Tablet specific adjustments (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
    /* Tablet: Center content comes first */
    .order-md-2.order-1 {
        order: 1 !important;
    }
    
    /* Tablet: Left sidebar comes second */
    .order-md-1.order-2 {
        order: 2 !important;
    }
    
    /* Tablet: Right sidebar comes third */
    .order-md-3.order-3 {
        order: 3 !important;
    }
}

/* Desktop: Natural order maintained by order-md-* classes */
@media (min-width: 992px) {
    /* Desktop maintains: Left | Center | Right layout */
    .order-md-1 {
        order: 1 !important;
    }
    
    .order-md-2 {
        order: 2 !important;
    }
    
    .order-md-3 {
        order: 3 !important;
    }
}
