/******************************************************************
  Template Name: Bsidespune
  Description: Bsidespune Event HTML Template
  Author: Bsidespune
  Author URI: http://bsidespune.com
  Version: 1.0
  Created: Bsidespune
******************************************************************/

/*------------------------------------------------------------------
[Table of contents]

1.  Template default CSS
	1.1	Variables
	1.2	Mixins
	1.3	Flexbox
	1.4	Reset
2.  Helper Css
3.  Header Section
4.  Hero Section
5.  Home About Section
6.  Team Member Section
7.  Pricing Section
8.  Latest Blog Section
9.  Contact
10.  Footer Style

-------------------------------------------------------------------*/

/*----------------------------------------*/

/* Template default CSS
/*----------------------------------------*/

        html, body {
            height: 100%;
            font-family: "Work Sans", sans-serif;
            -webkit-font-smoothing: antialiased;
            font-smoothing: antialiased;
        }
        h1, h2, h3, h4, h5, h6 { margin: 0; color: #111111; font-weight: 400; font-family: "Work Sans", sans-serif; }
        h1 { font-size: 70px; }
        h2 { font-size: 36px; }
        h3 { font-size: 30px; }
        h4 { font-size: 24px; }
        h5 { font-size: 18px; }
        h6 { font-size: 16px; }
        p { font-size: 16px; font-family: "Work Sans", sans-serif; color: #6a6b7c; font-weight: 400; line-height: 28px; margin: 0 0 15px 0; }
        img { max-width: 100%; }
        input:focus, select:focus, button:focus, textarea:focus { outline: none; }
        a:hover, a:focus { text-decoration: none; outline: none; color: #fff; }
        ul, ol { padding: 0; margin: 0; }
        .section-title { text-align: center; margin-bottom: 52px; }
        .section-title h2 { font-size: 40px; font-weight: 700; color: #171822; margin-bottom: 10px; }
        .section-title p { font-size: 18px; color: #6a6b7c; margin-bottom: 0; }
        .spad { padding-top: 10px; padding-bottom: 40px; }

/*---------------------
  Helper CSS
-----------------------*/

.section-title {
	text-align: center;
	margin-bottom: 52px;
}

.section-title h2 {
	font-size: 40px;
	font-weight: 700;
	color: #171822;
	margin-bottom: 10px;
}

.section-title p {
	font-size: 18px;
	color: #6a6b7c;
	margin-bottom: 0;
}

.set-bg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
}

.spad {
	padding-top: 10px;
	padding-bottom: 40px;
}

.spad-2 {
	padding-top: 50px;
	padding-bottom: 70px;
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white span,
.text-white li,
.text-white a {
	color: #fff;
}

.bg-gradient,
.bd-text .bd-tag-share .s-share a:hover,
.bh-text .play-btn,
.schedule-table-tab .nav-tabs .nav-item .nav-link.active,
.newslatter-inner .ni-form button,
.latest-item .li-tag,
.price-item .price-btn:hover,
.price-item .pi-price,
.price-item .tr-tag,
.schedule-tab .nav-tabs .nav-item .nav-link.active,
.site-btn {
	background-image: -o-linear-gradient(330deg, #ee8425 0%, #f9488b 100%), -o-linear-gradient(330deg, #ee8425 0%, #f9488b 100%);
	background-image: linear-gradient(120deg, #ee8425 0%, #f9488b 100%), linear-gradient(120deg, #ee8425 0%, #f9488b 100%);
}

/* buttons */

.primary-btn {
	display: inline-block;
	font-size: 16px;
	font-weight: 600;
	padding: 12px 40px;
	color: #ffffff;
	text-align: center;
	border-radius: 50px;
	background-image: -webkit-gradient(linear, left top, right top, from(#ee8425), to(#f9488b)), -webkit-gradient(linear, left top, right top, from(#ee8425), to(#f9488b));
	background-image: -o-linear-gradient(left, #ee8425 0%, #f9488b 100%), -o-linear-gradient(left, #ee8425 0%, #f9488b 100%);
	background-image: linear-gradient(to right, #ee8425 0%, #f9488b 100%), linear-gradient(to right, #ee8425 0%, #f9488b 100%);
}

.site-btn {
	font-size: 16px;
	color: #ffffff;
	font-weight: 600;
	border: none;
	padding: 10px 40px 12px;
	border-radius: 50px;
}

/* Preloder */

#preloder {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 999999;
	background: #000;
}

.loader {
	width: 40px;
	height: 40px;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -13px;
	margin-left: -13px;
	border-radius: 60px;
	animation: loader 0.8s linear infinite;
	-webkit-animation: loader 0.8s linear infinite;
}

@keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

@-webkit-keyframes loader {
	0% {
		-webkit-transform: rotate(0deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
	50% {
		-webkit-transform: rotate(180deg);
		border: 4px solid #673ab7;
		border-left-color: transparent;
	}
	100% {
		-webkit-transform: rotate(360deg);
		border: 4px solid #f44336;
		border-left-color: transparent;
	}
}

/*---------------------
  Header
-----------------------*/

.header-section {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.header-section.header-normal {
	border-bottom: 1px solid #e5e5e5;
}

.logo {
	float: left;
	padding-top: 36px;
	padding-bottom: 37px;
}

.logo a {
	display: inline-block;
}

.nav-menu {
	float: right;
}

.nav-menu .mainmenu {
	display: inline-block;
}

.nav-menu .mainmenu ul li {
	display: inline-block;
	list-style: none;
	margin-right: 40px;
	position: relative;
}

.nav-menu .mainmenu ul li .dropdown {
	position: absolute;
	width: 180px;
	background: #ffffff;
	z-index: 99;
	left: 0;
	top: 130px;
	opacity: 0;
	visibility: hidden;
	-webkit-box-shadow: 4px 13px 30px rgba(0, 0, 0, 0.15);
	box-shadow: 4px 13px 30px rgba(0, 0, 0, 0.15);
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.nav-menu .mainmenu ul li .dropdown li {
	display: block;
	margin-right: 0;
}

.nav-menu .mainmenu ul li .dropdown li a {
	padding: 8px 10px;
	display: block;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	text-transform: capitalize;
}

.nav-menu .mainmenu ul li .dropdown li a:hover {
	color: #f44949;
}

.nav-menu .mainmenu ul li .dropdown li a:after {
	display: none;
}

.nav-menu .mainmenu ul li.active a:after {
	opacity: 1;
}

.nav-menu .mainmenu ul li:hover>a:after {
	opacity: 1;
}

.nav-menu .mainmenu ul li:hover .dropdown {
	opacity: 1;
	visibility: visible;
	top: 100px;
}

.nav-menu .mainmenu ul li a {
	font-size: 16px;
	color: #171822;
	text-transform: uppercase;
	font-weight: 600;
	padding: 42px 0;
	position: relative;
	display: inline-block;
}

.nav-menu .mainmenu ul li a:after {
	position: absolute;
	left: 0;
	bottom: 36px;
	height: 2px;
	width: 100%;
	background: #F44949;
	content: "";
	opacity: 0;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.nav-menu .primary-btn.top-btn {
	margin: 27px 0;
}

.slicknav_menu {
	display: none;
}

/*---------------------
  Hero
-----------------------*/

.hero-section {
	padding-top: 55px;
}

.hero-section .hero-text {
	padding-top: 184px;
}

.hero-section .hero-text span {
	font-size: 16px;
	color: #f44949;
	text-transform: uppercase;
	letter-spacing: 2px;
}

.hero-section .hero-text h2 {
	font-size: 60px;
	color: #ffffff;
	line-height: 72px;
	font-weight: 600;
	margin-top: 24px;
	margin-bottom: 35px;
}

/*---------------------
  Conter
-----------------------*/

/* --- ENHANCED DYNAMIC COUNTER STYLING --- */

.counter-section {
    padding: 40px 0;
}

.counter-section .counter-text span {
    font-size: 16px;
    color: #ffffff;
}

.counter-section .counter-text h3 {
    color: #ffffff;
    font-weight: 700;
    line-height: 38px;
    margin-top: 10px;
}

/* Using Flexbox for better alignment and responsiveness */
.counter-section .cd-timer {
    display: flex;
    justify-content: flex-end; /* Keeps it right-aligned on desktop */
    flex-wrap: wrap; /* Allows items to wrap on smaller screens */
    gap: 30px; /* Modern way to add space between items */
}

.counter-section .cd-timer .cd-item {
    text-align: center;
    position: relative;
    padding: 30px 20px; /* Flexible padding instead of fixed height/width */
    min-width: 120px; /* Ensures a minimum size */
    
    /* --- DYNAMIC EFFECT --- */
    transition: transform 0.3s ease-in-out;
}

/* The border with initial low opacity */
.counter-section .cd-timer .cd-item:after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    border: 2px solid #ffffff;
    content: "";
    opacity: 0.2; /* Slightly more visible */
    border-radius: 4px;
    
    /* --- DYNAMIC EFFECT --- */
    transition: opacity 0.3s ease-in-out;
}


/* --- HOVER EFFECTS --- */
.counter-section .cd-timer .cd-item:hover {
    /* Lifts the box up and makes it slightly bigger */
    transform: translateY(-8px) scale(1.05);
}

.counter-section .cd-timer .cd-item:hover::after {
    /* Makes the border "light up" */
    opacity: 1;
}

.counter-section .cd-timer .cd-item:hover span {
    /* Adds a subtle glow to the number */
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.7);
}


/* Text styling remains the same as you liked */
.counter-section .cd-timer .cd-item span {
    font-size: 60px;
    color: #ffffff;
    font-weight: 600;
    line-height: 1.2; /* Better line-height for flexibility */
    display: block; /* Ensures proper spacing */
    transition: text-shadow 0.3s ease; /* Transition for the glow */
}

.counter-section .cd-timer .cd-item p {
    font-size: 18px;
    color: #ffffff;
    margin-bottom: 0;
    line-height: 1.2;
    margin-top: 5px;
}

/* --- RESPONSIVE ADJUSTMENTS --- */
@media screen and (max-width: 991px) {
    .counter-section .counter-text {
        text-align: center;
        margin-bottom: 40px;
    }
    .counter-section .cd-timer {
        justify-content: center; /* Center the timer on tablets and mobiles */
    }
}

@media screen and (max-width: 576px) {
    .counter-section .cd-timer {
        /* Changes to a 2x2 grid on small screens */
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 15px;
    }
    .counter-section .cd-timer .cd-item {
        padding: 20px 10px;
        min-width: auto;
    }
    .counter-section .cd-timer .cd-item span {
        font-size: 40px; /* Reduces font size for small screens */
    }
    .counter-section .cd-timer .cd-item p {
        font-size: 14px;
    }
}
/*---------------------
  Home About Section
-----------------------*/

.home-about-section {
	padding-bottom: 90px;
}

.ha-pic {
	-webkit-box-shadow: 0px 0px 30px rgba(11, 12, 48, 0.15);
	box-shadow: 0px 0px 30px rgba(11, 12, 48, 0.15);
	margin-right: 30px;
}

.ha-pic img {
	min-width: 100%;
	border-radius: 2px;
}

.ha-text {
	padding-top: 74px;
}

.ha-text h2 {
	color: #171822;
	font-size: 40px;
	font-weight: 700;
	margin-bottom: 32px;
}

.ha-text p {
	margin-bottom: 21px;
}

.ha-text ul {
	margin-bottom: 27px;
}

.ha-text ul li {
	list-style: none;
	font-size: 16px;
	line-height: 30px;
	color: #6a6b7c;
}

.ha-text ul li span {
	color: #f44949;
}

.ha-text .ha-btn {
	font-size: 16px;
	color: #171822;
	font-weight: 600;
	position: relative;
}

.ha-text .ha-btn:before {
	position: absolute;
	left: 0;
	bottom: -6px;
	height: 2px;
	width: 100%;
	background: #f44949;
	content: "";
}

/*---------------------
  Member Item
-----------------------*/

.team-member-section {
	overflow: hidden;
}

.member-item {
	width: 20%;
	float: left;
	height: 420px;
	position: relative;
	overflow: hidden;
}

.member-item:hover .mi-social {
	top: 0;
}

.member-item:hover .mi-text {
	left: 20px;
}

.member-item .mi-social {
	text-align: center;
	position: relative;
	top: -60px;
	-webkit-transition: all 0.3s ease-out;
	-o-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

.member-item .mi-social .mi-social-inner {
	display: inline-block;
	padding: 10px 23px 8px;
	border-radius: 0 0 4px 4px;
}

.member-item .mi-social .mi-social-inner a {
	display: inline-block;
	font-size: 18px;
	color: #ffffff;
	margin-right: 10px;
}

.member-item .mi-social .mi-social-inner a:last-child {
	margin-right: 0;
}

.member-item .mi-text {
	background: #ffffff;
	padding: 16px 0 18px 25px;
	position: absolute;
	left: -500px;
	bottom: 20px;
	width: calc(100% - 40px);
	-webkit-transition: all 0.5s ease-out;
	-o-transition: all 0.5s ease-out;
	transition: all 0.5s ease-out;
}

.member-item .mi-text h5 {
	font-size: 20px;
	color: #171822;
	font-weight: 600;
	margin-bottom: 5px;
}

.member-item .mi-text span {
	font-size: 16px;
	color: #f44949;
	display: block;
}

/*---------------------
  Schedule Section
-----------------------*/

    .event-details-section {
        background-color: #171822; /* Dark navy blue background from your image */
        padding: 120px 0;
        text-align: center;
        color: #fff;
    }
    .event-heading h1 {
        font-family: 'Playfair Display', serif; /* Elegant serif font */
        font-size: 6vw; /* Responsive font size */
        font-weight: 700;
        line-height: 1.2;
        margin: 0;
        color: #FFFFFF;
    }
    @media (min-width: 1200px) {
      .event-heading h1 { font-size: 72px; }
    }
    
    .heading-divider {
        width: 300px;
        height: 1px;
        background-color: rgba(255, 255, 255, 0.2);
        margin: 40px auto;
    }

    .event-info-grid {
        margin-top: 50px;
    }
    .info-item h3 {
        font-family: 'Poppins', sans-serif;
        font-size: 16px;
        font-weight: 400;
        text-transform: uppercase;
        letter-spacing: 2px;
        color: rgba(255, 255, 255, 0.6);
        margin-bottom: 20px;
    }
    .info-item p {
        font-family: 'Poppins', sans-serif;
        font-size: 20px;
        font-weight: 500;
        line-height: 1.6;
        color: #fff;
        margin-bottom: 0;
    }

    .event-cta-button {
        background: linear-gradient(90deg, #9C33F1, #7135E2);
        color: #fff;
        padding: 16px 45px;
        border-radius: 8px;
        font-family: 'Poppins', sans-serif;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 1px;
        display: inline-block;
        text-decoration: none;
        transition: all 0.3s ease;
        box-shadow: 0 8px 25px rgba(156, 51, 241, 0.3);
        border: none;
    }
    .event-cta-button:hover {
        color: #fff;
        transform: translateY(-5px);
        box-shadow: 0 12px 30px rgba(156, 51, 241, 0.5);
    }
    
    /* Responsive adjustment for mobile */
    @media (max-width: 767px) {
        .info-item {
            margin-bottom: 40px;
        }
        .event-details-section {
            padding: 80px 0;
        }
        .event-info-grid .col-md-4:last-child .info-item {
            margin-bottom: 0;
        }
    }

/*---------------------
  Pricing Section
-----------------------*/

/* --- MODERN PRICING SECTION STYLING --- */
.pricing-section {
    position: relative;
}

/* Dark overlay to make text readable over the background image */
.pricing-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(15, 16, 35, 0.8); /* Dark blue overlay */
    z-index: 0;
}

/* Ensure container content is above the overlay */
.pricing-section .container {
    position: relative;
    z-index: 1;
}

.pricing-section .section-title h2 {
    color: #ffffff;
}

.pricing-section .section-title p {
    color: #cccccc;
}


/* --- THE NEW PRICING CARD (GLASSMORPHISM) --- */
.pricing-card {
    background: rgba(255, 255, 255, 0.05); /* Frosted glass effect */
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    padding: 40px;
    text-align: center;
    color: #ffffff;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden; /* For the tag */
}

/* Card Content Styling */
.pricing-card h4 {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 25px;
    color: #FD752F; /* Orange accent */
}

.pricing-card .pi-price {
    margin-bottom: 30px;
}

.pricing-card .pi-price h2 {
    font-size: 56px;
    font-weight: 700;
    color: #ffffff;
}

.pricing-card .pi-price h2 span {
    font-size: 30px;
    vertical-align: top;
    margin-right: 5px;
}

/* Custom Feature List */
.features-list {
    list-style: none;
    padding: 0;
    margin: 0 0 40px 0;
}

.features-list li {
    font-size: 16px;
    color: #d0d0d0;
    padding: 10px 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* Custom checkmark icon */
.features-list li::before {
    content: '✓';
    color: #FD752F; /* Orange checkmark */
    font-weight: bold;
    margin-right: 12px;
}

/* Button Styling */
.price-btn {
    display: inline-block;
    padding: 12px 35px;
    border: 2px solid #FD752F;
    color: #FD752F;
    border-radius: 50px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.price-btn:hover {
    background-color: #FD752F;
    color: #ffffff;
}

.price-btn i {
    margin-left: 5px;
}


/* --- FEATURED CARD STYLING --- */
.pricing-card.featured {
    transform: scale(1.05);
    border: 2px solid #FD752F;
}

/* The 'Most Popular' ribbon */
.featured .tr-tag {
    position: absolute;
    top: -1px;
    right: -1px;
    background-image: linear-gradient(45deg, #FF6B6B, #F06595);
    color: #fff;
    padding: 8px 15px;
    font-weight: bold;
    font-size: 14px;
    border-radius: 0 15px 0 15px;
}

/* Button for the featured card */
.featured .price-btn {
    background-image: linear-gradient(45deg, #FF6B6B, #F06595);
    color: #fff;
    border: none;
    padding: 14px 35px;
}

.featured .price-btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 5px 15px rgba(240, 101, 149, 0.4);
}


/* --- RESPONSIVE STYLES --- */
@media screen and (max-width: 991px) {
    .pricing-card {
        margin-bottom: 30px;
    }
    .pricing-card.featured {
        transform: scale(1); /* No scaling on smaller screens to save space */
    }
}

@media screen and (max-width: 767px) {
     .pricing-card.featured {
        /* You can add a little scale back for medium devices if you want */
        transform: scale(1.02);
    }
}
/*---------------------
  Latest Blog
-----------------------*/

.latest-blog {
	background: #f4f6f8;
	padding-bottom: 160px;
}

.latest-item {
	height: 255px;
	position: relative;
	margin-bottom: 40px;
	margin-left: 15px;
	border-radius: 2px;
	-webkit-box-shadow: 0px 0px 30px rgba(79, 84, 139, 0.15);
	box-shadow: 0px 0px 30px rgba(79, 84, 139, 0.15);
}

.latest-item.large-item {
	height: 550px;
	margin-right: 15px;
	margin-left: 0;
}

.latest-item.large-item .li-tag {
	left: 40px;
	top: 40px;
}

.latest-item.large-item .li-text {
	padding: 0 40px;
	bottom: 35px;
}

.latest-item.large-item .li-text h4 {
	margin-bottom: 17px;
}

.latest-item.large-item .li-text h4 a {
	color: #ffffff;
	font-weight: 600;
	line-height: 36px;
}

.latest-item.large-item .li-text span {
	font-size: 16px;
	color: #ffffff;
}

.latest-item.large-item .li-text span i {
	color: #f44949;
}

.latest-item .li-tag {
	font-size: 14px;
	color: #ffffff;
	display: inline-block;
	padding: 5px 18px;
	border-radius: 2px;
	position: absolute;
	left: 30px;
	top: 30px;
}

.latest-item .li-text {
	position: absolute;
	left: 0;
	bottom: 26px;
	width: 100%;
	padding: 0 30px;
}

.latest-item .li-text h5 {
	margin-bottom: 5px;
}

.latest-item .li-text h5 a {
	display: block;
	color: #ffffff;
	font-weight: 600;
	line-height: 30px;
}

.latest-item .li-text span {
	font-size: 14px;
	color: #ffffff;
}

.latest-item .li-text span i {
	color: #f44949;
}

/*---------------------
  Newslatter Section
-----------------------*/

/* --- MODERN CTA/NEWSLETTER SECTION STYLING --- */
.newslatter-section {
    padding: 60px 0;
    background-color: #f8f9fa; /* A light background for the page */
}

.newslatter-inner {
    padding: 60px 50px;
    border-radius: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    overflow: hidden; /* To contain the overlay */
}

/* Dark overlay to make text readable over any image */
.newslatter-inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.4) 100%);
    z-index: 1;
}

/* Make sure content is above the overlay */
.ni-text, .ni-button-wrapper {
    position: relative;
    z-index: 2;
}

/* Text Styling */
.ni-text h3 {
    color: #ffffff;
    font-size: 36px;
    font-weight: 700;
    margin-bottom: 10px;
}

.ni-text p {
    color: #e0e0e0; /* Softer white for the subtitle */
    font-size: 18px;
    margin: 0;
}

/* The 'Contact Us' Button Styling */
.cta-button {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    padding: 14px 30px;
    border-radius: 50px; /* Pill shape */
    /* The gradient from your design */
    background-image: linear-gradient(45deg, #fd7e14, #ff6b6b, #f06595);
    background-size: 200% auto;
    border: 2px solid #ffffff;
    box-shadow: 0 5px 20px rgba(255, 107, 107, 0.3);
    transition: all 0.4s ease-out;
}

.cta-button:hover {
    background-position: right center; /* Change gradient direction on hover */
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(255, 107, 107, 0.5);
}

.cta-button span {
    margin-right: 10px;
}

.cta-button i {
    transition: transform 0.3s ease;
}

.cta-button:hover i {
    transform: translateX(5px);
}


/* --- RESPONSIVE STYLES --- */
@media screen and (max-width: 991px) {
    .newslatter-inner {
        flex-direction: column; /* Stack elements vertically */
        text-align: center;
        padding: 50px 30px;
    }

    .ni-text {
        margin-bottom: 30px; /* Space between text and button */
    }

    .ni-text h3 {
        font-size: 30px;
    }

    .ni-text p {
        font-size: 16px;
    }
}
/*---------------------
  Home Contact 
-----------------------*/

/* --- CONTACT SECTION STYLING --- */
.contact-section {
    background-color: #171822;
    padding: 100px 0;
    position: relative;
    overflow: hidden; /* For any future decorative elements */
}

/* --- THE NEW 'CARD' STYLE --- */
.contact-info-card {
    background-color: #1f202b; /* Slightly lighter background for the card */
    padding: 40px;
    border-radius: 12px;
    border: 1px solid #333;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.contact-info-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
}

/* --- NEW TITLE STYLE --- */
.contact-info-card .section-title h2 {
    color: #FD752F;
    font-weight: 700;
    display: inline-block; /* To make border only fit the text */
    padding-bottom: 10px;
    border-bottom: 3px solid #fd752f44; /* Subtle underline */
}

.contact-info-card .section-title p {
    color: #a0a0a0;
    font-size: 16px;
    margin-top: 10px;
}

/* Contact Info Items */
.cs-text {
    margin-top: 30px;
}

.ct-item {
    display: flex;
    align-items: center;
    margin-bottom: 25px;
}

/* Icon Box - with the requested hover */
.ct-icon {
    flex-shrink: 0;
    width: 50px;
    height: 50px;
    background-color: #2a2b38;
    border-radius: 8px; /* Slightly more rounded */
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px;
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.ct-icon i {
    color: #FD752F;
    font-size: 20px;
}

.ct-item:hover .ct-icon {
    background-color: transparent;
    border: 2px solid #FD752F;
}

/* Content (Address, Email, etc.) */
.ct-content span {
    display: block;
    color: #ffffff;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.ct-content p {
    margin-bottom: 0;
    color: #cccccc;
    font-size: 16px;
}

.ct-content a {
    color: #cccccc;
    text-decoration: none;
    transition: color 0.3s ease;
}

.ct-content a:hover {
    color: #FD752F;
}


/* Google Map Styling */
.cs-map iframe {
    border-radius: 12px;
    border: 0; /* No border needed, shadow is enough */
    height: 450px;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.4);
}

/* --- RESPONSIVE ADJUSTMENTS --- */
@media screen and (max-width: 991px) {
    .cs-map {
        margin-top: 40px; /* Space between card and map on tablet/mobile */
    }
    .cs-map iframe {
        height: 350px;
    }
}

@media screen and (max-width: 768px) {
    .contact-section {
        padding: 60px 0;
    }
    .contact-info-card {
        padding: 30px;
    }
    .contact-info-card .section-title,
    .cs-text {
        text-align: center;
    }
    .ct-item {
        flex-direction: column;
        align-items: center;
    }
    .ct-icon {
        margin-right: 0;
        margin-bottom: 15px;
    }
}/*---------------------
  Footer
-----------------------*/

/* === NEW PREMIUM FOOTER STYLING === */
.footer-section-new {
    background-color: #1A1A1A; /* Premium dark background */
    color: #A1A1A1; /* Soft grey text for readability */
    padding: 80px 0 0 0;
}

/* Main Footer Columns */
.footer-main {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    padding-bottom: 40px;
}

.footer-col h4 {
    color: #ffffff;
    font-size: 18px;
    margin-bottom: 20px;
    font-weight: 600;
}

.footer-logo {
    font-size: 24px;
    font-weight: 700;
    color: #ffffff;
    text-decoration: none;
    margin-bottom: 15px;
    display: inline-block;
}

.footer-tagline {
    font-size: 15px;
    line-height: 1.6;
}

/* Footer Lists & Links */
.footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

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

.footer-col ul li a {
    color: #A1A1A1;
    text-decoration: none;
    transition: all 0.3s ease;
}

.footer-col ul li a:hover {
    color: #FD7A32; /* Electric Blue Accent */
    padding-left: 5px;
}

/* Social Links */
.footer-social a {
    display: flex;
    align-items: center;
    color: #A1A1A1;
    text-decoration: none;
    margin-bottom: 12px;
    transition: color 0.3s ease;
}

.footer-social a:hover {
    color: #FD7A32; /* Electric Blue Accent */
}

.footer-social a i {
    font-size: 18px;
    width: 30px; /* To align the text nicely */
    margin-right: 5px;
}

/* Partner Logos Section */
.footer-partners {
    padding: 40px 0;
    text-align: center;
    border-top: 1px solid #2d2d2d;
    border-bottom: 1px solid #2d2d2d;
}

.partner-title {
    color: #A1A1A1;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-bottom: 30px;
}

/* The robust grid for logos - NO MORE BLANK SPACE */
.partner-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 50px; /* Space between logos */
}

.partner-item img {
    max-height: 45px; /* Control logo height */
    max-width: 150px; /* Control logo width */
    filter: grayscale(1) brightness(1.5);
    opacity: 0.6;
    transition: all 0.3s ease;
}

.partner-item:hover img {
    filter: none;
    opacity: 1;
    transform: scale(1.1);
}

/* Bottom Bar */
.footer-bottom {
    padding: 25px 0;
    text-align: center;
}

.footer-bottom p {
    margin: 0;
    font-size: 14px;
    color: #6b6b6b;
}


/* --- RESPONSIVE STYLES --- */
@media (max-width: 768px) {
    .footer-main {
        text-align: center;
    }
    .footer-col {
        margin-bottom: 30px;
    }
    .footer-social a {
        justify-content: center; /* Center social links */
    }
}
/* ----------------------------------- Other Pages Styles ------------------------------- */

/*---------------------
  Breadcrumb
-----------------------*/

        .breadcrumb-section {
            padding: 75px 0 75px;
            background: #f8f9fa; /**/
        }
        .breadcrumb-text {
            text-align: center;
        }
        .breadcrumb-text h2 {
            font-size: 40px;
            color: #171822;
            font-weight: 700;
            margin-bottom: 14px;
        }
        .breadcrumb-text .bt-option a {
            font-size: 18px;
            color: #6a6b7c;
            display: inline-block;
            margin-right: 25px;
            position: relative;
            text-decoration: none;
        }
        .breadcrumb-text .bt-option a:after {
            position: absolute;
            right: -17px;
            top: 2px;
            content: ">";
            font-family: "FontAwesome";
        }
        .breadcrumb-text .bt-option span {
            display: inline-block;
            color: #a0a1b5;
            font-size: 18px;
        }
/*---------------------
  About Section
-----------------------*/

    .about-us-enhanced {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .about-us-enhanced .section-title {
        margin-bottom: 60px;
    }

    /* "What Makes Us Unique" Card Styling */
    .feature-card {
        background: #ffffff;
        padding: 40px 30px;
        text-align: center;
        border-radius: 12px;
        box-shadow: 0 10px 30px rgba(0,0,0,0.07);
        margin-bottom: 30px;
        transition: transform 0.3s ease, box-shadow 0.3s ease;
        height: 100%;
    }
    .feature-card:hover {
        transform: translateY(-10px);
        box-shadow: 0 15px 40px rgba(0,0,0,0.1);
    }
    .feature-card .icon-circle {
        height: 80px;
        width: 80px;
        background: rgba(229, 54, 55, 0.1); /* Light red background for icon */
        border-radius: 50%;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 25px;
        color: #e53637; /* Main theme color for icon */
        font-size: 36px;
    }
    .feature-card h3 {
        font-size: 22px;
        font-weight: 700;
        color: #1a1a1a;
        margin-bottom: 15px;
    }
    .feature-card p {
        color: #666;
        line-height: 1.7;
    }

    /* "Our Story" Section Styling */
    .our-story-section {
        margin-top: 60px;
    }
    .about-image-wrapper {
        position: relative;
    }
    /* This creates the cool background shape */
    .about-image-wrapper::before {
        content: '';
        position: absolute;
        top: -30px;
        left: -30px;
        height: 100%;
        width: 100%;
        background: #f3f4f6;
        border-radius: 12px;
        z-index: -1;
    }
    .about-image-wrapper img {
        border-radius: 12px;
        box-shadow: 0 15px 40px rgba(0,0,0,0.15);
    }
    .about-text-content h3 {
        font-size: 36px;
        font-weight: 700;
        color: #1a1a1a;
        margin-bottom: 20px;
    }
    .about-text-content p {
        color: #555;
        font-size: 17px;
        line-height: 1.8;
        margin-bottom: 20px;
    }
    /* Reusing your primary button style */
    .about-text-content .primary-btn {
        margin-top: 20px;
    }

/*---------------------
  Testimonial Section
-----------------------*/

       .testimonial-section {
            background-color: #f8f9fa;
            padding: 50px 0;
        }
        .section-title h2 {
            font-weight: 700;
            color: #1a1a1a;
        }

        /* Main Team Card Styling */
        .testimonial-item {
            position: relative;
            background: #ffffff;
            padding: 30px;
            border-radius: 15px;
            text-align: center;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
            transition: transform 0.3s ease, box-shadow 0.3s ease;
            height: 380px; /* Thodi height badhai hai icons ke liye */
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            margin: 15px 0;
        }
        .testimonial-item:hover {
            transform: translateY(-12px);
            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
        }

        /* Profile Picture */
        .testimonial-item .ta-pic img {
            width: 130px;
            height: 130px;
            border-radius: 50%;
            object-fit: cover;
            border: 6px solid #f0f0f0;
            margin-bottom: 20px;
        }

        /* Name and Designation */
        .testimonial-item .ta-text h5 {
            font-size: 22px;
            font-weight: 700;
            color: #1a1a1a;
            margin-bottom: 5px;
        }
        .testimonial-item .ta-text span {
            font-size: 16px;
            color: #e53637;
            font-weight: 500;
        }

        /* === SOCIAL ICONS STYLING (NEW) === */
        .social-icons {
            margin-top: 25px;
            padding-top: 20px;
            border-top: 1px solid #eee;
            width: 100%;
        }
        .social-icons a {
            color: #888;
            font-size: 20px;
            margin: 0 12px;
            transition: color 0.3s ease, transform 0.3s ease;
        }
        .social-icons a:hover {
            color: #e53637; /* Theme color on hover */
            transform: scale(1.2);
        }

        /* === SLIDER ARROW BUTTONS STYLING (NEW) === */
        .testimonial-slider .owl-nav button {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: #fff !important;
            border-radius: 50% !important;
            width: 50px;
            height: 50px;
            box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
            color: #1a1a1a !important;
            font-size: 20px !important;
            transition: all 0.3s ease;
        }
        .testimonial-slider .owl-nav button:hover {
            background: #e53637 !important;
            color: #fff !important;
        }
        .testimonial-slider .owl-nav .owl-prev {
            left: -25px;
        }
        .testimonial-slider .owl-nav .owl-next {
            right: -25px;
        }

        /* Responsive adjustments for arrows */
        @media (max-width: 767px) {
            .testimonial-slider .owl-nav .owl-prev {
                left: 10px;
            }
            .testimonial-slider .owl-nav .owl-next {
                right: 10px;
            }
        }
        
        /* Owl Carousel dots styling */
        .owl-dots { margin-top: 20px; }
        .owl-theme .owl-dots .owl-dot.active span, 
        .owl-theme .owl-dots .owl-dot:hover span { background: #e53637; }

/*---------------------
  Speaker Section
-----------------------*/

.speaker-section.spad {
            padding-top: 80px;
            padding-bottom: 30px; /* नीचे से गैप कम किया */
        }

        .speaker-item {
            margin-bottom: 70px; /* स्पीकर्स के बीच वर्टीकल गैप */
        }

        .speaker-item .si-pic img {
            width: 100%;
            height: 380px; /* <<< सभी तस्वीरों के लिए एक जैसी ऊंचाई */
            object-fit: cover; /* <<< इमेज को बिना खींचे फिट करेगा */
            object-position: center top; /* फोकस चेहरे पर रखेगा */
            border-radius: 4px;
        }

        .speaker-item .si-text {
            padding-left: 25px; /* तस्वीर और टेक्स्ट के बीच गैप */
        }

        .speaker-item .si-text .si-title {
            margin-bottom: 20px;
        }

        .speaker-item .si-text .si-title h4 {
            color: #171822;
            font-weight: 700;
            font-size: 24px;
            margin-bottom: 5px;
        }

        .speaker-item .si-text .si-title span {
            color: #e53632; /* स्क्रीनशॉट वाला लाल रंग */
            font-size: 16px;
            font-weight: 600;
            display: block;
        }

        .speaker-item .si-text .si-social {
            margin-bottom: 25px;
        }

        .speaker-item .si-text .si-social a {
            display: inline-block;
            font-size: 16px;
            color: #171822;
            height: 40px;
            width: 40px;
            text-align: center;
            line-height: 40px;
            background: #f0f0f0; /* हल्का ग्रे बैकग्राउंड */
            border-radius: 50%;
            margin-right: 8px;
            transition: all 0.3s ease;
        }

        .speaker-item .si-text .si-social a:hover {
            background: #e53632; /* Hover पर लाल रंग */
            color: #ffffff;
        }

        .speaker-item .si-text p {
            color: #6a6b7c;
            line-height: 26px;
            margin-bottom: 25px;
        }

        .speaker-item .si-text b {
            font-weight: 700;
            color: #171822;
            font-size: 16px;
        }
        
        /* Responsive Fixes */
        @media (max-width: 991.98px) {
            .speaker-item .si-text {
                padding-top: 30px;
                padding-left: 15px; /* मोबाइल पर भी थोड़ा गैप */
            }
        }
        @media (max-width: 767.98px) {
            .speaker-item .si-text {
                padding-left: 0; /* छोटे मोबाइल पर कोई गैप नहीं */
            }
             .speaker-item .si-pic img {
                height: auto; /* मोबाइल पर इमेज की हाइट ऑटो हो जाएगी */
                max-height: 450px;
            }
        }
/*------------------------
  Schedule Table Section
-------------------------*/

.schedule-table-section {
	padding-top: 0;
}

.schedule-table-tab .nav-tabs {
	border: none;
	border-radius: 4px;
	margin-bottom: 50px;
	-webkit-box-shadow: 3px 10px 30px rgba(74, 74, 77, 0.15);
	box-shadow: 3px 10px 30px rgba(74, 74, 77, 0.15);
}

.schedule-table-tab .nav-tabs .nav-item {
	border-right: 1px solid #e7e7e8;
	width: 20%;
	text-align: center;
}

.schedule-table-tab .nav-tabs .nav-item:last-child {
	border-right: none;
}

.schedule-table-tab .nav-tabs .nav-item .nav-link {
	padding: 22px 0;
	border: none;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	color: #171822;
}

.schedule-table-tab .nav-tabs .nav-item .nav-link.active {
	border-color: #e7e7e8;
	color: #ffffff;
}

.schedule-table-tab .schedule-table-content table {
	width: 100%;
	text-align: center;
	border: 1px solid #e1e1e1;
}

.schedule-table-tab .schedule-table-content table thead {
	border-bottom: 1px solid #e5e5e5;
}

.schedule-table-tab .schedule-table-content table thead tr th {
	border-right: 1px solid #e5e5e5;
	padding: 24px 0 26px;
}

.schedule-table-tab .schedule-table-content table thead tr th strong {
	font-size: 24px;
	color: #171822;
	font-weight: 600;
	margin-bottom: 8px;
}

.schedule-table-tab .schedule-table-content table thead tr th span {
	color: #f5523b;
	font-size: 16px;
	display: block;
	font-weight: 400;
}

.schedule-table-tab .schedule-table-content table tbody tr {
	border-bottom: 1px solid #e5e5e5;
}

.schedule-table-tab .schedule-table-content table tbody tr td {
	border-right: 1px solid #e5e5e5;
	width: 260px;
	height: 134px;
	padding: 37px 0 36px;
}

.schedule-table-tab .schedule-table-content table tbody tr td h5 {
	color: #171822;
	font-weight: 600;
	margin-bottom: 10px;
}

.schedule-table-tab .schedule-table-content table tbody tr td p {
	color: #171822;
	margin-bottom: 0;
}

.schedule-table-tab .schedule-table-content table tbody tr td p span {
	color: #a0a1b5;
}

.schedule-table-tab .schedule-table-content table tbody tr td.event-time {
	width: 140px;
	color: #f44949;
	font-size: 24px;
	font-weight: 600;
}

.schedule-table-tab .schedule-table-content table tbody tr td.break h5 {
	margin-bottom: 0;
}

.schedule-table-tab .schedule-table-content table tbody tr td.hover-bg:hover {
	background: -o-linear-gradient(330deg, #ee8425, #f9488b);
	background: linear-gradient(120deg, #ee8425, #f9488b);
}

.schedule-table-tab .schedule-table-content table tbody tr td.hover-bg:hover h5 {
	color: #ffffff;
}

.schedule-table-tab .schedule-table-content table tbody tr td.hover-bg:hover p {
	color: #ffffff;
}

.schedule-table-tab .schedule-table-content table tbody tr td.hover-bg:hover p span {
	color: #ffffff;
}

/*---------------------
  Blog
-----------------------*/

.blog-section {
	padding-top: 0;
}

.blog-item {
	height: 277px;
	position: relative;
	border-radius: 10px;
	margin-bottom: 30px;
	-webkit-box-shadow: 0px 0px 30px rgba(11, 12, 48, 0.15);
	box-shadow: 0px 0px 30px rgba(11, 12, 48, 0.15);
}

.blog-item .bi-tag {
	font-size: 12px;
	font-weight: 600;
	color: #ffffff;
	display: inline-block;
	padding: 3px 20px 5px;
	border-radius: 2px;
	position: absolute;
	left: 20px;
	top: 20px;
}

.blog-item.large-item {
	height: 575px;
}

.blog-item.large-item .bi-tag {
	left: 30px;
	top: 30px;
}

.blog-item.large-item .bi-text {
	padding: 0 30px;
	bottom: 28px;
}

.blog-item .bi-text {
	position: absolute;
	left: 0;
	bottom: 18px;
	width: 100%;
	padding: 0 20px;
}

.blog-item .bi-text h5 {
	margin-bottom: 10px;
}

.blog-item .bi-text h5 a {
	color: #ffffff;
	line-height: 24px;
	font-weight: 600;
	display: block;
}

.blog-item .bi-text h3 {
	margin-bottom: 15px;
}

.blog-item .bi-text h3 a {
	font-size: 28px;
	color: #ffffff;
	font-weight: 600;
	line-height: 36px;
	display: block;
}

.blog-item .bi-text span {
	font-size: 14px;
	color: #ffffff;
	display: block;
}

.blog-item .bi-text span i {
	color: #f44949;
}

.load-more.blog-more {
	padding-top: 20px;
}

/*---------------------
  Blog Hero Section
-----------------------*/

.blog-hero-section {
	padding: 200px 0;
}

.bh-text {
	text-align: center;
}

.bh-text .play-btn {
	height: 70px;
	width: 70px;
	border-radius: 50%;
	display: inline-block;
	text-align: center;
	line-height: 79px;
}

.bh-text .play-btn i {
	color: #ffffff;
	font-size: 28px;
	margin-left: 6px;
}

.bh-text h2 {
	color: #ffffff;
	font-size: 60px;
	font-weight: 700;
	margin-top: 34px;
	margin-bottom: 14px;
}

.bh-text ul li {
	font-size: 14px;
	color: #ffffff;
	text-transform: uppercase;
	letter-spacing: 2px;
	list-style: none;
	display: inline-block;
	margin-right: 45px;
	position: relative;
}

.bh-text ul li:after {
	position: absolute;
	right: -22px;
	top: 4px;
	height: 14px;
	width: 1px;
	background: #6e6e6e;
	content: "";
}

.bh-text ul li:last-child {
	margin-right: 0;
}

.bh-text ul li:last-child:after {
	display: none;
}

.bh-text ul li span {
	font-size: 16px;
	text-transform: capitalize;
}

.bh-text ul li span strong {
	font-weight: 600;
}

/*---------------------
  Blog Details Section
-----------------------*/

.blog-details-section {
	padding-top: 70px;
}

.bd-text .bd-title {
	margin-bottom: 28px;
}

.bd-text .bd-quote {
	position: relative;
	padding-left: 32px;
	margin-bottom: 36px;
}

.bd-text .bd-quote:before {
	position: absolute;
	left: 0;
	top: 0;
	width: 4px;
	height: 100%;
	background: #f44949;
	content: "";
}

.bd-text .bd-quote p {
	font-size: 18px;
	color: #171822;
	font-weight: 500;
	line-height: 30px;
}

.bd-text .bd-quote span {
	font-size: 14px;
	color: #f44949;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 600;
}

.bd-text .bd-quote img {
	position: absolute;
	right: 0;
	bottom: 0;
}

.bd-text .bd-more-text {
	margin-bottom: 32px;
}

.bd-text .bd-more-text.second-text {
	margin-bottom: 56px;
}

.bd-text .bd-more-text h4 {
	color: #171822;
	font-weight: 600;
	margin-bottom: 22px;
}

.bd-text .bd-more-pic {
	margin-bottom: 36px;
}

.bd-text .bd-more-pic img {
	min-width: 100%;
	border-radius: 2px;
}

.bd-text .bd-tag-share {
	overflow: hidden;
	border-top: 1px solid #e5e5e5;
	padding-top: 20px;
}

.bd-text .bd-tag-share .tag {
	float: left;
	margin-top: 7px;
}

.bd-text .bd-tag-share .tag a {
	display: inline-block;
	font-size: 14px;
	background: #ebebeb;
	color: #6a6b7c;
	padding: 2px 17px 4px;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	border-radius: 2px;
	margin-right: 6px;
	margin-bottom: 5px;
}

.bd-text .bd-tag-share .tag a:hover {
	background: #f44949;
	color: #ffffff;
}

.bd-text .bd-tag-share .s-share {
	float: right;
}

.bd-text .bd-tag-share .s-share span {
	display: inline-block;
	color: #171822;
	font-size: 16px;
	margin-right: 12px;
}

.bd-text .bd-tag-share .s-share a {
	display: inline-block;
	font-size: 16px;
	color: #171822;
	width: 40px;
	height: 40px;
	text-align: center;
	line-height: 40px;
	background: #ebebeb;
	margin-left: 11px;
	border-radius: 50%;
}

.bd-text .bd-tag-share .s-share a:hover {
	color: #ffffff;
}

/*---------------------
  Comment Section
-----------------------*/

.comment-section h3 {
	color: #171822;
	font-weight: 600;
}

.comment-form input {
	width: 100%;
	height: 46px;
	background: #f4f6f8;
	padding-left: 20px;
	padding-right: 5px;
	border: none;
	margin-bottom: 30px;
	border-radius: 2px;
	border: 1px solid transparent;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}

.comment-form input::-webkit-input-placeholder {
	color: #a0a1b5;
}

.comment-form input::-moz-placeholder {
	color: #a0a1b5;
}

.comment-form input:-ms-input-placeholder {
	color: #a0a1b5;
}

.comment-form input::-ms-input-placeholder {
	color: #a0a1b5;
}

.comment-form input::placeholder {
	color: #a0a1b5;
}

.comment-form input:focus {
	border: 1px solid #f44949;
	color: #171822;
}

.comment-form textarea {
	width: 100%;
	height: 120px;
	background: #f4f6f8;
	padding-left: 20px;
	border: none;
	padding-top: 12px;
	padding-right: 5px;
	margin-bottom: 32px;
	border-radius: 2px;
	border: 1px solid transparent;
	-webkit-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
	resize: none;
}

.comment-form textarea::-webkit-input-placeholder {
	color: #a0a1b5;
}

.comment-form textarea::-moz-placeholder {
	color: #a0a1b5;
}

.comment-form textarea:-ms-input-placeholder {
	color: #a0a1b5;
}

.comment-form textarea::-ms-input-placeholder {
	color: #a0a1b5;
}

.comment-form textarea::placeholder {
	color: #a0a1b5;
}

.comment-form textarea:focus {
	border: 1px solid #f44949;
	color: #171822;
}

/*---------------------
  Related Post Section
-----------------------*/

.related-post-section {
	background: #f4f6f8;
	padding-bottom: 70px;
	padding-top: 90px;
}

.related-post-section .blog-item {
	height: 350px;
}

.related-post-section .blog-item .bi-tag {
	left: 30px;
	top: 30px;
}

.related-post-section .blog-item .bi-text {
	padding: 0 30px;
	bottom: 28px;
}

.related-post-section .blog-item .bi-text h5 {
	margin-bottom: 10px;
}

.related-post-section .blog-item .bi-text h5 a {
	font-size: 20px;
	line-height: 30px;
}

/*---------------------
  Contact Top Content
-----------------------*/

.contact-content-section {
	overflow: hidden;
}

.cc-text {
	height: 580px;
	margin-left: -15px;
	margin-right: -15px;
	padding-top: 94px;
}

.cc-text .section-title {
	text-align: left;
	margin-bottom: 42px;
}

.cc-text .section-title h2 {
	color: #ffffff;
}

.cc-text .section-title p {
	color: #ffffff;
}

.cc-text .cs-text .ct-address span {
	color: #ffffff;
}

.cc-text .cs-text .ct-address p {
	color: #ffffff;
}

.cc-text .cs-text ul li {
	color: #ffffff;
}

.cc-text .cs-text ul li span {
	color: #ffffff;
}

.cc-text .cs-text .ct-links span {
	color: #ffffff;
}

.cc-text .cs-text .ct-links p {
	color: #ffffff;
}

.cc-map {
	height: 580px;
	margin-left: -15px;
	margin-right: -15px;
	position: relative;
}

.cc-map iframe {
	width: 100%;
}

.cc-map .map-hover {
	position: absolute;
	left: 50%;
	top: 260px;
	-webkit-transform: translateX(-132px);
	-ms-transform: translateX(-132px);
	transform: translateX(-132px);
}

.cc-map .map-hover i {
	font-size: 30px;
	color: #f44949;
	position: absolute;
	left: 50%;
	top: -55px;
	-webkit-transform: translateX(-9px);
	-ms-transform: translateX(-9px);
	transform: translateX(-9px);
}

.cc-map .map-hover .map-hover-inner {
	width: 264px;
	text-align: center;
	background: #ffffff;
	padding: 27px 0 11px;
	-webkit-box-shadow: 0px 0px 30px rgba(74, 101, 106, 0.2);
	box-shadow: 0px 0px 30px rgba(74, 101, 106, 0.2);
}

.cc-map .map-hover .map-hover-inner:after {
	position: absolute;
	left: 50%;
	top: -6px;
	width: 30px;
	height: 30px;
	background: #ffffff;
	content: "";
	-webkit-transform: translateX(-15px) rotate(45deg);
	-ms-transform: translateX(-15px) rotate(45deg);
	transform: translateX(-15px) rotate(45deg);
}

.cc-map .map-hover .map-hover-inner h5 {
	color: #171822;
	font-weight: 600;
	margin-bottom: 7px;
}

.cc-map .map-hover .map-hover-inner p {
	color: #171822;
}

/*---------------------
  Contact Form
-----------------------*/

.comment-form.contact-form input {
	margin-bottom: 25px;
}

.comment-form.contact-form textarea {
	height: 150px;
	margin-bottom: 42px;
}

/*-------------------------------- Respinsive Media Styles --------------------------------*/

@media only screen and (min-width: 1200px) {
	.container {
		max-width: 1170px;
	}
}

/* Medium Device: 1200px */

@media only screen and (min-width: 992px) and (max-width: 1199px) {
	.nav-menu .mainmenu ul li {
		margin-right: 25px;
	}
	.hero-section .hero-text {
		padding-top: 110px;
	}
	.counter-section .cd-timer .cd-item {
		margin-left: 25px;
	}
	.ha-text {
		padding-top: 0;
	}
	.member-item {
		width: 25%;
		height: 310px;
	}
	.testimonial-slider.owl-carousel .owl-nav button {
		left: -10px;
	}
	.testimonial-slider.owl-carousel .owl-nav button.owl-next {
		right: -10px;
	}
	.newslatter-inner .ni-form {
		width: 350px;
	}
	.cc-text {
		padding-top: 65px;
	}
}

@media only screen and (max-width: 991px) {
	.schedule-tab .st-content .sc-pic {
		text-align: left;
		padding: 30px 0 0;
	}
	.schedule-tab .st-content .sc-text {
		padding: 30px 0 0;
	}
	.schedule-tab .st-content .sc-widget {
		padding: 30px 0;
	}
	.schedule-tab .st-content {
		padding-left: 30px;
	}
	.price-item.top-rated {
		margin-top: 0;
	}
	.latest-item.large-item {
		height: 550px;
		margin-right: 0;
		margin-left: 0;
	}
	.latest-item {
		margin-left: 0;
	}
	.cs-map {
		margin-top: 20px;
	}
	.about-text {
		margin-top: 30px;
	}
	.story-right {
		padding-left: 0;
	}
	.newslatter-inner .ni-text {
		float: none;
	}
	.newslatter-inner .ni-form {
		float: none;
		margin-top: 30px;
	}
	.testimonial-slider.owl-carousel .owl-nav button {
		left: -10px;
	}
	.testimonial-slider.owl-carousel .owl-nav button.owl-next {
		right: -10px;
	}
	.counter-section .counter-text {
		margin-bottom: 30px;
	}
	.counter-section .cd-timer {
		text-align: left;
	}
	.speaker-item .si-text .si-title {
		padding-top: 30px;
	}
	.bd-text .bd-more-pic img {
		margin-bottom: 10px;
	}
	.cc-text {
		padding-left: 40px;
	}
	.ha-pic {
		margin-right: 0;
	}
	.hero-section .hero-text {
		margin-bottom: 20px;
	}
}

/* Tablet Device: 768px */

@media only screen and (min-width: 768px) and (max-width: 991px) {
	.nav-menu .primary-btn.top-btn {
		display: none;
	}
	.nav-menu .mainmenu ul li {
		margin-right: 20px;
	}
	.bh-text h2 {
		font-size: 45px;
	}
	.nav-menu .mainmenu ul li:last-child {
		margin-right: 0;
	}
	.hero-section .hero-text {
		margin-bottom: 20px;
	}
	.member-item {
		width: 33.33%;
	}
}

/* Large Mobile: 480px */

@media only screen and (max-width: 767px) {
	.counter-section .cd-timer .cd-item {
		margin-bottom: 10px;
	}
	.member-item {
		width: 50%;
	}
	.newslatter-inner {
		padding: 60px 50px 48px;
	}
	.newslatter-inner .ni-form {
		width: 350px;
	}
	.footer-text ul li {
		margin-right: 15px;
	}
	.schedule-table-tab .schedule-table-content {
		overflow-x: auto;
	}
	.schedule-table-tab .nav-tabs .nav-item {
		width: 33.33%;
	}
	.bd-text .bd-tag-share .tag {
		float: none;
		margin-top: 0;
		margin-bottom: 25px;
	}
	.bd-text .bd-tag-share .s-share {
		float: none;
	}
	.slicknav_menu {
		display: block;
		background: transparent;
		padding: 0;
	}
	.nav-menu .mainmenu {
		display: none;
	}
	.nav-menu .primary-btn.top-btn {
		display: none;
	}
	.slicknav_btn {
		margin: 34px 0;
		border-radius: 0;
	}
	.slicknav_nav {
		background: #222;
	}
	.slicknav_nav .slicknav_row,
	.slicknav_nav a {
		margin: 0;
		padding: 10px 20px;
		-webkit-transition: all 0.3s;
		-o-transition: all 0.3s;
		transition: all 0.3s;
	}
	.slicknav_nav ul {
		margin: 0;
	}
	.slicknav_nav a:hover {
		border-radius: 0;
		background: #f44949;
		color: #ffffff;
	}
	.slicknav_nav .slicknav_row:hover {
		border-radius: 0;
		background: #f44949;
		color: #ffffff;
	}
	.member-item .mi-text {
		left: -1000px;
	}
	.bh-text h2,
	.hero-section .hero-text h2 {
		font-size: 40px;
		line-height: normal;
	}
	.counter-section .cd-timer .cd-item {
		margin-right: 10px;
		margin-left: 0;
	}
	.counter-section .cd-timer .cd-item:last-child {
		margin-right: 0;
	}
	.testimonial-slider.owl-carousel {
		text-align: center;
	}
	.testimonial-slider.owl-carousel .owl-nav button {
		margin-top: 10px;
		position: relative;
	}
}

/* Small Mobile: 320px */

@media only screen and (max-width: 479px) {
	.bh-text h2,
	.hero-section .hero-text h2 {
		font-size: 36px;
		line-height: normal;
	}
	.newslatter-inner {
		padding: 60px 20px 48px;
	}
	.counter-section .cd-timer .cd-item {
		margin-right: 10px;
		margin-left: 0;
	}
	.schedule-tab .nav-tabs .nav-item {
		width: 33.33%;
	}
	.member-item {
		width: 100%;
	}
	.newslatter-inner .ni-form {
		width: 100%;
	}
	.newslatter-inner .ni-form button {
		width: 95px;
	}
	.newslatter-inner .ni-form input {
		padding-right: 100px;
	}
	.footer-text ul li {
		margin-bottom: 10px;
	}
	.schedule-table-tab .nav-tabs .nav-item {
		width: 50%;
	}
	.cc-text {
		padding-left: 30px;
		padding-top: 35px;
	}
	.story-item h2 {
		float: none;
		margin-bottom: 10px;
	}
	.bd-text .bd-tag-share .s-share a {
		font-size: 14px;
		height: 35px;
		width: 35px;
		line-height: 35px;
		margin-left: 5px;
	}
}


/* agenda sections */
/* General Section Styling */
.agenda-section {
    background-color: #171822; /* Dark Black Background */
    padding: 80px 0;
}

.agenda-tab .nav-tabs {
    border-bottom: 2px solid #FD752F; /* Orange border for the tab bar */
    margin-bottom: 30px;
    display: flex; /* Helps in centering on mobile */
    justify-content: center; /* Center tabs */
}

.agenda-tab .nav-tabs .nav-item {
    margin-bottom: 0; /* Bootstrap override */
}

.agenda-tab .nav-tabs .nav-item .nav-link {
    border: none;
    color: #cccccc; /* Light grey for inactive tab text */
    background-color: transparent;
    font-size: 18px;
    font-weight: 600;
    padding: 15px 30px;
    transition: all 0.3s ease;
    border-radius: 5px 5px 0 0; /* Slightly rounded top corners */
}

.agenda-tab .nav-tabs .nav-item .nav-link.active {
    background-color: #FD752F; /* Bright Orange background for active tab */
    color: #000000; /* Black text for active tab */
}

.agenda-tab .nav-tabs .nav-item .nav-link:hover {
    color: #ffffff;
    background-color: #fd752f99; /* Semi-transparent orange on hover */
}

/* Table Styling (Desktop) */
.agenda-table-content table {
    width: 100%;
    border: 1px solid #333;
    border-collapse: collapse; /* Ensures borders are clean */
}

.agenda-table-content th, 
.agenda-table-content td {
    padding: 18px 20px;
    text-align: left;
    border-bottom: 1px solid #333;
    color: #ffffff;
    vertical-align: middle;
}

.agenda-table-content thead th {
    background-color: #171822;
    color: #FD752F; /* Orange for headers */
    font-size: 16px;
    text-transform: uppercase;
}

/* --- UPDATED HOVER EFFECT --- */
.agenda-table-content tbody tr:hover td {
    background-color: #fd752f20; /* Subtle orange glow on hover */
}

.agenda-table-content .event-time {
    font-weight: bold;
    color: #FD752F; /* Orange for time */
    font-size: 18px;
    width: 20%;
}

.agenda-table-content .event-title h5 {
    margin: 0;
    font-size: 20px;
    color: #ffffff;
}

.agenda-table-content .event-speaker {
    font-style: italic;
    color: #bbbbbb;
    font-size: 15px;
}

.agenda-table-content .event-speaker span {
    color: #888888;
}

.agenda-table-content .event-venue {
    font-weight: bold;
    color: #dddddd;
    font-size: 16px;
}

/* --- NETWORKING EVENT STYLE CHANGE --- */
/* The special background color is removed as requested. */
/* You can still target it for other styles if needed. */
.networking-event .event-title h5 {
    color: #dddddd; /* Orange title for special events */
}


/* ------------------------------------------- */
/* --- RESPONSIVE STYLES FOR TABLET/MOBILE --- */
/* ------------------------------------------- */
@media screen and (max-width: 768px) {
    
    .agenda-tab .nav-tabs .nav-item .nav-link {
        padding: 12px 18px; /* Slightly smaller tabs on mobile */
        font-size: 16px;
    }

    /* Hide the original table header */
    .agenda-table-content table thead {
        display: none;
    }

    /* Transform table into a list of "cards" */
    .agenda-table-content table, 
    .agenda-table-content table tbody, 
    .agenda-table-content table tr, 
    .agenda-table-content table td {
        display: block;
        width: 100%;
    }

    .agenda-table-content table tr {
        margin-bottom: 25px; /* Space between each event "card" */
        border: 1px solid #444;
        border-radius: 5px;
        overflow: hidden; /* To contain floated elements */
    }

    .agenda-table-content table td {
        text-align: right; /* Align cell content to the right */
        padding: 12px 15px;
        position: relative;
        border: none;
        border-bottom: 1px dotted #333; /* Separator inside the card */
    }
    
    .agenda-table-content table tr td:last-child {
        border-bottom: none; /* Remove separator from the last item */
    }

    /* Use the data-label from HTML to create a pseudo-header */
    .agenda-table-content table td::before {
        content: attr(data-label); /* The magic! */
        position: absolute;
        left: 15px;
        font-weight: bold;
        color: #FD752F; /* Use theme color for the label */
        text-transform: uppercase;
        font-size: 14px;
    }

    /* Adjust specific cell content for better alignment on mobile */
    .agenda-table-content .event-title h5,
    .agenda-table-content .event-speaker,
    .agenda-table-content .event-venue,
    .agenda-table-content .event-time {
        text-align: right; /* Ensure text aligns to the right */
        width: auto; /* Reset desktop width */
        font-size: 16px; /* Normalize font size */
    }

    .agenda-table-content .event-title h5 {
        font-size: 18px;
    }

    .agenda-table-content .event-speaker span {
        display: none; /* "By" text is less necessary in this layout */
    }
}