/* =========================================
Featured Tickets Section Starts
========================================= */
.tickets-section {
background-color: #F6F5F3; /* Very light gray/beige to make white cards pop */
padding: 180px 0;
font-family: var(--font-body);
}

/* Header Area */
.tickets-header-row {
margin-bottom: 60px;
}

.tickets-main-title {
font-family: var(--font-body); /* Using sans-serif as per the screenshot */
color: var(--dark-color);
font-size: 3.2rem;
font-weight: 800;
line-height: 1.1;
margin: 0;
letter-spacing: -1px;
}

.tickets-header-desc {
color: #6c757d;
font-size: 1rem;
line-height: 1.6;
max-width: 500px;
margin-left: auto; /* Pushes to the right on desktop */
}
@media (min-width: 992px) {
    .text-lg-end {
        text-align: left !important;
    }
}
/* Ticket Cards */
.ticket-card {
background-color: #ffffff;
border: 1px solid rgba(0, 0, 0, 0.08); /* Crisp, thin border */
padding: 40px 30px;
height: 100%;
display: flex;
flex-direction: column;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.ticket-card:hover {
transform: translateY(-5px);
box-shadow: 0 20px 40px rgba(0, 0, 0, 0.06);
}

/* Card Header (Eyebrow & Price) */
.ticket-header {
text-align: center;
}

.ticket-eyebrow {
color: #FF6B00; /* Vibrant Orange */
font-size: 0.75rem;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 1.5px;
margin-bottom: 15px;
display: block;
}

.ticket-price {
color: var(--dark-color);
font-size: 2.8rem;
font-weight: 800;
letter-spacing: -1px;
margin: 0;
line-height: 1;
}

.ticket-price-text {
font-size: 1.8rem; /* For the "Enter Amount" text */
}

/* Divider */
.ticket-divider {
border: 0;
border-top: 1px solid #EAEAEA;
margin: 30px 0;
opacity: 1;
}

/* Features List */
.ticket-features {
list-style: none;
padding: 0;
margin: 0 0 30px 0;
flex-grow: 1; /* This pushes the BUY button to the bottom! */
}

.ticket-features li {
display: flex;
align-items: flex-start;
gap: 12px;
margin-bottom: 16px;
color: #4A5665;
font-size: 0.85rem;
line-height: 1.6;
font-weight: 500;
}

.ticket-features svg {
flex-shrink: 0;
width: 14px;
height: 14px;
margin-top: 4px; /* Perfectly aligns checkmark with the first line of text */
stroke: var(--dark-color);
stroke-width: 2.5;
}

/* Buy Button */
.btn-ticket-buy {
background-color: var(--primary-teal); /* Deep Purple */
color: #ffffff;
font-weight: 800;
font-size: 0.8rem;
text-transform: uppercase;
letter-spacing: 1px;
padding: 16px;
width: 100%;
border: none;
border-radius: 0; /* Sharp corners matching design */
transition: background-color 0.3s ease;
text-align: center;
text-decoration: none;
display: block;
}

.btn-ticket-buy:hover {
background-color: var(--primary-teal); /* Darker purple on hover */
color: #ffffff;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
.tickets-section {
padding: 80px 0;
}
.tickets-header-desc {
margin-left: 0;
margin-top: 20px;
text-align: left;
max-width: 100%;
}
.tickets-main-title {
font-size: 2.8rem;
}
}

@media (max-width: 575.98px) {
.tickets-section {
padding: 60px 0;
}
.tickets-main-title {
font-size: 2.2rem;
}
.ticket-card {
padding: 30px 20px;
}
}
/* Featured Tickets Section Ends */

/* media-partners-section starts */
.media-partners-section {
  padding: 100px 0;
  background: linear-gradient(
    to bottom right,
    #fdfcff 0%,
    #f5f0ff 80%,
    #f5f0ff 100%
  );
  overflow: hidden;
}

.media-partners-title {
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 3rem;
  font-weight: 600;
  color: #131313;
  text-align: center;
  margin-bottom: 50px;
}
.sponsor-content {
    flex-grow: 1;
    padding: 20px;
    text-align: center;
    position: relative;
    z-index: 3;
    display: flex;
    /* flex-direction: column; */
    justify-content: center;
    /* align-items: center; */
    top: 50px;
}
.partner-card {
  background: linear-gradient(to bottom right, #ffffff 0%, #ffffff 100%);
  border: 1px solid #131313;
  /*padding: 60px 50px;*/
  /* height: 120px;  */
  display: flex;
  justify-content: center;
  align-items: center;
  transition: box-shadow 0.3s ease;
}

.partner-card:hover {
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
}

.partner-logo-content {
  display: flex;
  align-items: center;
  gap: 15px;
}

.partner-logo-content img {
  height: 180px;
}

.partner-logo-content .partner-name {
  font-family: "DM Sans", sans-serif;
  font-size: 1.1rem;
  color: #131313;
  line-height: 1.4;
  font-weight: 600;
}

/* Responsive Design */
@media (max-width: 991px) {
  .media-partners-title {
    font-size: 2.5rem;
  }
}

@media (max-width: 767px) {
  .media-partners-section {
    padding: 80px 0;
  }
  .media-partners-title {
    font-size: 2.2rem;
  }
  .partner-card {
    height: 100px;
  }
}

@media (max-width: 575px) {
  .partner-logo-content .partner-name {
    font-size: 1rem;
  }
}
/* Sponsors Section */
.sponsors-section {
  background-color: #fff;
  padding: 90px 0;
}

.sponsors-section .container {
  max-width: 1200px;
}

.sponsors-section-title {
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 3rem;
  font-weight: 600; /* Semi bold */
  margin-bottom: 50px;
}

.sponsor-card {
  background-color: var(--primary-teal); /* Match section background */
  border: 1px solid rgba(255, 255, 255); /* White border, slightly transparent */
  border-radius: 5px;
  position: relative;
  height: 280px; /* Fixed height for consistent cards */
  display: flex;
  flex-direction: column;
  overflow: hidden; /* Important for clip-path */
}

/* New element for the slanted white background */
.sponsor-top-bg-shape {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; /* Take full height of the card */
  background-color: #f5f5f5; /* White background */
  clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 35%);
  /* Adding a shadow to this white shape */
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
  z-index: 1; /* Below text and content */
}

/* Sponsor Label (Text positioned on the white background) */
.sponsor-label {
  position: absolute;
  top: 0;
  left: 0;
  padding: 15px; /* Padding for the text from top-left corner */
  pointer-events: none; /* Allows clicks to pass through to card */
  z-index: 2; /* Above the white background shape */
}

.sponsor-label .category-text {
  color: #131313;
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  line-height: 1.2;
  text-align: left;
  font-weight: 600;
  white-space: nowrap;
}

.sponsor-content {
  flex-grow: 1; /* Take up remaining space */
  padding: 20px;
  text-align: center;
  position: relative;
  z-index: 3; /* Above all other layers */
  display: flex; /* Ensure content is still flex for centering */
  /* flex-direction: column; */
  justify-content: center;
  /* align-items: center; */
  top: 50px;
}

.sponsor-logo {
  max-width: 60px;
  height: auto;
  margin-bottom: 10px;
  margin-right: 20px;
}

.sponsor-name {
  font-family: "DM Sans", sans-serif;
  font-size: 1.1rem;
  font-weight: 400; /* Regular */
  line-height: 1.3;
  text-align: start;
}

.sponsor-now-card {
  border: 1px solid #fff;
}

.sponsor-now-card .sponsor-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.sponsor-now-btn {
  background-color: transparent;
  color: #ff6d01;
  border: 1px solid #ff6d01;
  padding: 0.7rem 1.5rem;
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  font-weight: bold;
  text-transform: uppercase;
  transition:
    background-color 0.3s ease,
    border-color 0.3s ease;
  border-radius: 0;
}

.sponsor-now-btn:hover {
  background-color: rgba(255, 255, 255, 0.1);
  border-color: #ffffff;
  color: #fff;
}
.sponsors-hero {
    background-color: var(--dark-navy);
    color: #fff;
    padding: 120px 0;
    text-align: center;
}

.sponsors-hero-title {
    font-family: "Bricolage Grotesque", sans-serif;
    font-size: 4rem;
    font-weight: 700;
    margin-bottom: 20px;
}

.sponsors-hero-desc {
    /*max-width: 900px;*/
    margin: 0 auto 25px;
    font-size: 1.3rem;
    line-height: 1.6;
    opacity: 0.9;
    font-family: "DM Sans", sans-serif;
}

.sponsors-hero-btn {
    background: #6c757d;
    color: #fff;
    padding: 10px 22px;
    border-radius: 8px;
    text-decoration: none;
    transition: 0.3s;
    display: inline-block;
}

.sponsors-hero-btn:hover {
    background: #5a6268;
    color: #fff;
}
/* Responsive Styles for Sponsors Section */
@media (max-width: 1200px) {
  .sponsors-section-title {
    font-size: 2.7rem;
  }
  .sponsor-card {
    height: 260px;
  }
  .sponsor-label {
    padding: 12px;
  }
}

@media (max-width: 992px) {
  .sponsors-section {
    padding: 60px 0;
  }
  .sponsors-section-title {
    font-size: 2.2rem;
  }
  .col-lg-3 {
    flex: 0 0 50%; /* Two cards per row on tablets */
    max-width: 50%;
  }
  .sponsor-card {
    height: 250px;
  }
  /* Adjust clip-path for slightly different slant on smaller cards if needed */
  .sponsor-top-bg-shape {
    clip-path: polygon(
      0 0,
      100% 0,
      100% 0%,
      0% 36%
    ); /* Slightly different slant for balance */
  }
  .sponsor-label {
    padding: 10px;
  }
  .sponsor-label .category-text {
    font-size: 0.8rem;
  }
}

@media (max-width: 768px) {
  .sponsors-section-title {
    font-size: 1.8rem;
  }
  .col-md-6 {
    flex: 0 0 80%; /* One card per row on smaller tablets, centered */
    max-width: 80%;
    margin: 0 auto 20px auto;
  }
  .sponsor-card {
    height: 220px;
  }
  .sponsor-logo {
    max-width: 60px;
  }
  .sponsor-name {
    font-size: 1rem;
  }
  .sponsor-now-btn {
    padding: 0.6rem 1.2rem;
    font-size: 0.8rem;
  }
  .sponsor-top-bg-shape {
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 36%);
  }
  .sponsor-label {
    padding: 8px;
  }
  .sponsor-label .category-text {
    font-size: 0.75rem;
  }
}

@media (max-width: 576px) {
  .sponsors-section-title {
    font-size: 1.5rem;
    margin-bottom: 30px;
  }
  .col-sm-6 {
    flex: 0 0 95%; /* Almost full width on mobile */
    max-width: 95%;
  }
  .sponsor-card {
    height: 200px;
  }
  .sponsor-logo {
    max-width: 50px;
  }
  .sponsor-name {
    font-size: 1rem;
  }
  .sponsor-now-btn {
    padding: 0.5rem 1rem;
    font-size: 0.75rem;
  }
  .sponsor-top-bg-shape {
    clip-path: polygon(0 0, 100% 0, 100% 0%, 0% 36%);
  }
  .sponsor-label {
    padding: 5px;
  }
  .sponsor-label .category-text {
    font-size: 0.7rem;
  }
}
/* media-partners-section ends */



/* annual-summit-section start */
/* =========================================
   NEW SECTIONS GLOBALS & UTILITIES
   ========================================= */

/* Typography Overrides based on new screenshots */
.section-heading-xl {
    font-family: var(--font-heading);
    color: var(--dark-navy);
    font-size: clamp(2.2rem, 3.5vw, 3rem);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -0.5px;
    margin-bottom: 1.25rem;
}

.section-paragraph {
    font-family: var(--font-body);
    color: #64748B;
    font-size: 1.1rem;
    line-height: 1.6;
}

/* Eyebrow Styles (Left Line vs Center Lines) */
.eyebrow-left-line {
    display: flex;
    align-items: center;
    gap: 15px;
    font-family: var(--font-body);
    color: var(--primary-teal);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.eyebrow-left-line::before {
    content: '';
    display: block;
    width: 35px;
    height: 1.5px;
    background-color: var(--primary-teal);
}

.eyebrow-center-lines {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-family: var(--font-body);
    color: var(--primary-teal);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.eyebrow-center-lines::before,
.eyebrow-center-lines::after {
    content: '';
    display: block;
    width: 35px;
    height: 1.5px;
    background-color: var(--primary-teal);
}

/* Reusable Image Placeholder Box */
.image-placeholder-box {
    width: 100%;
    min-height: 400px;
    background-color: #F1F3F5;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    text-align: center;
}

.image-placeholder-box span {
    font-family: var(--font-body);
    color: #94A3B8;
    font-size: 1rem;
    font-weight: 500;
}

/* Light Outline Pills (Used in Overview & Agenda) */
.light-pills-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.light-pill {
    display: inline-block;
    background-color: #ffffff;
    border: 1px solid #E2E8F0;
    color: #64748B;
    font-family: var(--font-body);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 0.4rem 0.85rem;
    border-radius: 50rem;
    white-space: nowrap;
}

/* =========================================
   SECTION 1: Summit Hero
   ========================================= */
.summit-dark-hero {
    background-color: var(--dark-navy);
    padding: 8rem 0;
    color: #ffffff;
}

.sdh-title {
    font-family: var(--font-heading);
    font-size: clamp(2.5rem, 4vw, 3.5rem);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -1px;
    margin-bottom: 1.5rem;
}

.sdh-subtitle {
    font-family: var(--font-body);
    color: #B2BDC8;
    font-size: 1.15rem;
    line-height: 1.6;
    margin: 0 auto 2.5rem auto;
    max-width: 800px;
}

.sdh-pills-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.sdh-pill {
    font-family: var(--font-body);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #ffffff;
    border: 1px solid rgba(255, 255, 255, 0.25);
    padding: 0.5rem 1.25rem;
    border-radius: 50rem;
    background-color: transparent;
}

/* =========================================
   SECTION 2: Summit Overview
   ========================================= */
.summit-overview-section {
    padding: 6rem 0;
    background-color: #ffffff;
}

/* =========================================
   SECTION 3: Agenda Schedule
   ========================================= */
.agenda-section {
    padding: 6rem 0;
    background-color: #FAFAFA; /* Or var(--bg-off-white) if you prefer */
}

.agenda-item {
    display: flex;
    flex-direction: row;
    padding: 2.5rem 0;
    border-bottom: 1px solid #E2E8F0;
    gap: 2rem;
}

.agenda-time {
    font-family: var(--font-body);
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--primary-teal);
    flex: 0 0 140px; /* Fixed width for perfect alignment */
}

.agenda-content {
    flex: 1;
}

.agenda-title {
    font-family: var(--font-heading);
    color: var(--dark-navy);
    font-size: 1.35rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.agenda-desc {
    font-family: var(--font-body);
    color: #64748B;
    font-size: 1.05rem;
    line-height: 1.6;
    margin-bottom: 0;
}

@media (max-width: 767.98px) {
    .agenda-item {
        flex-direction: column;
        gap: 0.5rem;
        padding: 2rem 0;
    }
    .agenda-time {
        flex: none;
        margin-bottom: 0.25rem;
    }
}

/* =========================================
   SECTION 4: Registration & Pricing
   ========================================= */
.bg-off-white-soft {
    background-color: #FFF; /* Soft bg to make white cards pop */
}

.pricing-section {
    padding: 6rem 0;
}

.pricing-card {
    background-color: #ffffff;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 3rem 2rem;
    display: flex;
    flex-direction: column;
    height: 100%;
    position: relative;
    text-align: center;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02);
    transition: transform 0.3s ease;
}

.pricing-card:hover {
    transform: translateY(-5px);
}

/* Highlighted/Most Popular Card */
.pc-highlight {
    border: 2px solid var(--primary-teal);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
    padding: 3.5rem 2rem 3rem 2rem; /* Slightly taller */
}

.pc-badge {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--primary-teal);
    color: #ffffff;
    font-family: var(--font-body);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 0.4rem 1rem;
    border-radius: 50rem;
}

/* Pricing Typography */
.pc-tier-name {
    font-family: var(--font-body);
    color: #64748B;
    font-size: 0.85rem;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.pc-price {
    font-family: var(--font-heading);
    color: var(--dark-navy);
    font-size: 3rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0.5rem;
}

.pc-per {
    font-family: var(--font-body);
    color: #94A3B8;
    font-size: 0.95rem;
    margin-bottom: 2rem;
}

/* Checkmarks List */
.pc-features {
    list-style: none;
    padding: 0;
    margin: 0 0 2rem 0;
    text-align: left;
}

.pc-features li {
    font-family: var(--font-body);
    color: #64748B;
    font-size: 0.95rem;
    margin-bottom: 1rem;
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.pc-features li i {
    color: var(--primary-teal);
    font-size: 1.1rem;
    font-weight: bold;
}

/* New Outline Navy Button for Pricing */
.btn-outline-navy {
    background-color: transparent;
    color: var(--dark-navy) !important;
    font-family: var(--font-body);
    font-size: 1.0rem;
    font-weight: 600;
    padding: 0.85rem 1.8rem;
    border-radius: 4px;
    border: 1px solid var(--dark-navy);
    transition: all 0.3s ease;
}

.btn-outline-navy:hover {
    background-color: var(--dark-navy);
    color: #ffffff !important;
}

/* =========================================
   SECTION 5: Sponsorship Overview
   ========================================= */
.sponsorship-overview-section {
    padding: 6rem 0;
    background-color: #FAFAFA;
}

.sponsor-tiers-list {
    display: flex;
    flex-direction: column;
}

.st-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 0;
    border-bottom: 1px solid #E2E8F0;
}

.st-name {
    font-family: var(--font-heading);
    color: #64748B;
    font-size: 1.15rem;
}

.st-price {
    font-family: var(--font-heading);
    color: var(--dark-navy);
    font-size: 1.25rem;
    font-weight: 700;
}

/* General Mobile Padding Adjustments */
@media (max-width: 991.98px) {
    .summit-dark-hero, 
    .summit-overview-section, 
    .agenda-section, 
    .pricing-section, 
    .sponsorship-overview-section {
        padding: 4.5rem 0;
    }
}

/* Custom styling for the inserted images */
.content-image-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 8px; /* Matches your other card corners */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05); /* Soft premium shadow */
}

.content-image {
    width: 100%;
    height: 450px; /* Fixed height so both sections look uniform */
    object-fit: cover; /* Ensures the image doesn't stretch or warp */
    transition: transform 0.5s ease;
    display: block;
}

/* Optional: Slight zoom effect on hover to match your 'About' section images */
.content-image-wrapper:hover .content-image {
    transform: scale(1.03);
}

/* Make image height responsive for tablets and mobile */
@media (max-width: 991.98px) {
    .content-image {
        height: 350px;
    }
}

@media (max-width: 575.98px) {
    .content-image {
        height: 280px;
    }
}
/* annual-summit-section ends */
/* =========================================
   Speaker Faculty Section Starts
========================================= */
.speakers-section {
  background-color: #f9f8f6; /* Very light warm gray to contrast with white cards */
  padding: 100px 0;
  font-family: var(--font-body);
}

/* Left Column - Content */
.speakers-eyebrow {
  color: var(--primary-color);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  display: block;
}

.speakers-title {
  font-family: var(--font-heading);
  color: var(--dark-color);
  font-size: 3rem;
  line-height: 1.15;
  margin-bottom: 30px;
}

/* Custom Checkmark List */
.speakers-list {
  list-style: none;
  padding: 0;
  margin: 0 0 40px 0;
}

.speakers-list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 18px;
  color: #5c6773;
  font-size: 0.9rem;
  line-height: 1.5;
}

.speakers-list svg {
  flex-shrink: 0;
  margin-top: 2px; /* Aligns the checkmark perfectly with the first line of text */
  stroke: var(--primary-color);
  width: 16px;
  height: 16px;
}

/* Buttons */
.speakers-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

.btn-speaker-primary {
  background-color: var(--primary-color);
  color: #ffffff;
  font-weight: 600;
  font-size: 0.9rem;
  padding: 12px 28px;
  border-radius: 6px;
  border: 1px solid var(--primary-color);
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-speaker-primary:hover {
  background-color: var(--dark-color);
  border-color: var(--dark-color);
  color: #ffffff;
}

.btn-speaker-link {
  color: var(--primary-color);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 6px;
  transition: color 0.3s ease;
}

.btn-speaker-link svg {
  width: 16px;
  height: 16px;
  transition: transform 0.3s ease;
}

.btn-speaker-link:hover {
  color: var(--dark-color);
}

.btn-speaker-link:hover svg {
  transform: translateX(4px);
}

/* Right Column - Speaker Cards */
.speaker-card {
  background-color: #ffffff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  border: 1px solid rgba(0, 0, 0, 0.03);
  height: 100%;
  display: flex;
  flex-direction: column;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.speaker-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 35px rgba(160, 132, 92, 0.12);
}

.speaker-img-wrapper {
  width: 100%;
  aspect-ratio: 1 / 1.05; /* Keeps images beautifully proportioned like portraits */
  overflow: hidden;
}

.speaker-img-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.speaker-card:hover .speaker-img-wrapper img {
  transform: scale(1.03); /* Subtle zoom effect on hover */
}

.speaker-card-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.speaker-name {
  font-family: var(--font-body);
  font-size: 0.95rem;
  font-weight: 800;
  color: var(--dark-color);
  margin-bottom: 6px;
}

.speaker-role {
  font-size: 0.8rem;
  color: #6c757d;
  line-height: 1.5;
  margin-bottom: 20px;
  flex-grow: 1; /* Pushes the badge to the bottom */
}

/* Badges */
.speaker-badge {
  display: inline-block;
  background-color: #f5efeb; /* Very light beige/gold */
  color: #987c58;
  font-size: 0.65rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  padding: 6px 12px;
  border-radius: 4px;
  width: max-content;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
  .speakers-section {
    padding: 80px 0;
  }
  .speakers-title {
    font-size: 2.6rem;
  }
  .speakers-actions {
    margin-bottom: 50px; /* Adds space before cards wrap */
  }
}

@media (max-width: 575.98px) {
  .speakers-section {
    padding: 60px 0;
  }
  .speakers-title {
    font-size: 2.2rem;
  }
  .speakers-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .btn-speaker-primary {
    text-align: center;
  }
  .btn-speaker-link {
    justify-content: center;
  }
}
/* Speaker Faculty Section Ends */
/* --- Stage Speakers Section css starts --- */

.stage-speakers-section {
  background-color: #ffffff; /* Clean white background */
  padding: 100px 0;
  overflow: hidden;
}

/* Header Typography */
.stage-subtitle {
  color: var(--primary-orange);
  font-family: "DM Sans", sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.stage-title {
  color: var(--dark-color);
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 2.5rem;
  font-weight: 700;
  letter-spacing: -0.5px;
  margin-bottom: 0;
}

/* Primary Button */
.btn-stage-purple {
  background-color: var(--primary-teal);
  color: #ffffff;
  font-family: "DM Sans", sans-serif;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 12px 28px;
  border-radius: 0; /* Sharp, modern corners exactly as seen in design */
  border: none;
  display: inline-block;
  transition: all 0.3s ease;
}

.btn-stage-purple:hover {
  background-color: var(--primary-teal); 
  color: #ffffff;
}

/* Speaker Cards */
.stage-card {
  display: flex;
  flex-direction: column;
}

.stage-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1; /* Perfectly square ratio */
  overflow: hidden;
  border-radius: 0; /* No rounded corners */
}

.stage-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.stage-card:hover .stage-img-wrap img {
  transform: scale(1.05); /* Slight zoom on hover */
}

/* LinkedIn Floating Icon */
.stage-linkedin {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 36px;
  height: 36px;
  background-color: var(--primary-orange);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  opacity: 0.95;
  transition: all 0.3s ease;
}

.stage-linkedin svg {
  width: 18px;
  height: 18px;
  color: #ffffff;
  /* LinkedIn logo specific padding to look perfect in the circle */
  transform: translateY(-1px); 
}

.stage-linkedin:hover {
  background-color: #000;
  transform: scale(1.1);
  opacity: 1;
}

/* Content Area */
.stage-content {
  padding-top: 18px;
}

.stage-name {
  display: flex;
  align-items: flex-start;
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--text-black);
  margin-bottom: 6px;
  line-height: 1.3;
}

/* The purple dot preceding the name */
.stage-dot {
  width: 8px;
  height: 8px;
  background-color: var(--primary-orange);
  border-radius: 50%;
  margin-right: 10px;
  margin-top: 6px; /* Pushes the dot slightly down to align visually with the center of the first line of text */
  flex-shrink: 0;
}

.stage-role {
  font-family: "DM Sans", sans-serif;
  font-size: 0.85rem;
  color: #777777; /* Soft grey matching the screenshot */
  margin: 0;
  margin-left: 18px; 
  line-height: 1.5;
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
  .stage-speakers-section {
    padding: 80px 0;
  }
  .stage-title {
    font-size: 2.2rem;
  }
}

@media (max-width: 576px) {
  .stage-speakers-section {
    padding: 60px 0;
  }
  .stage-title {
    font-size: 1.8rem;
  }
  .btn-stage-purple {
    width: 100%;
    text-align: center;
  }
}
/* --- Stage Speakers Section css ends --- */
/* gallery section start */
.gallery-section {
background-color: #FDFCFB; /* Very light, warm off-white */
padding: 100px 0;
font-family: var(--font-body);
}

/* Header Typography */
.gallery-eyebrow {
color: #F5A623; /* Bright vibrant orange matching the design */
font-size: 1.05rem;
font-weight: 800;
letter-spacing: 0.5px;
display: block;
margin-bottom: 8px;
}

.gallery-title {
font-family: var(--font-body);
color: var(--dark-color);
font-size: 2.6rem;
font-weight: 800;
letter-spacing: -0.5px;
margin-bottom: 50px;
}

/* Gallery Card Wrapper */
.gallery-card {
border-radius: 8px; /* Smooth rounded corners */
overflow: hidden;
position: relative;
width: 100%;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.04);
}

/* The absolute positioning combined with flex-grow in the HTML
is the secret to making the grid stretch and align perfectly */
.gallery-card img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.gallery-card:hover img {
transform: scale(1.04); /* Premium smooth zoom effect on hover */
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
.gallery-section {
padding: 80px 0;
}
.gallery-title {
font-size: 2.2rem;
margin-bottom: 40px;
}
}

@media (max-width: 575.98px) {
.gallery-section {
padding: 60px 0;
}
.gallery-title {
font-size: 1.8rem;
}
}
/* gallery section End */

/* ip-directory-section starts */
.ip-directory-section {
  padding: 80px 20px;
  background: linear-gradient(135deg, #fdfbf7 0%, #f4f0ff 100%); /* Softer, premium light gradient */
}

.ip-directory-header h1 {
  font-family: "Bricolage Grotesque", sans-serif;
  font-weight: 700;
  font-size: 3.2rem;
  color: #131313;
  line-height: 1.1;
  margin-top: 5px;
}

.ip-directory-description {
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  color: #555555;
  line-height: 1.6;
  max-width: 500px;
  margin-left: auto;
}

/* Responsive adjustments */
@media (max-width: 991.98px) {
  .ip-directory-section {
    padding: 60px 20px;
  }
  .ip-directory-header h1 {
    font-size: 2.8rem;
  }
  .ip-directory-description {
    max-width: 100%;
    margin-left: 0;
  }
}

@media (max-width: 767.98px) {
  .ip-directory-section {
    padding: 50px 15px;
  }
  .ip-directory-header h1 {
    font-size: 2.4rem;
  }
  .ip-directory-header {
    text-align: center;
  }
  .ip-directory-description {
    text-align: center;
    margin-bottom: 30px;
  }
}

@media (max-width: 575.98px) {
  .ip-directory-header h1 {
    font-size: 2rem;
  }
}
/* ip-directory-section ends */

/* directory-search-section starts */
.ds-filter-bar {
  background-color: #5b007f; /* Primary Brand Purple */
  padding: 40px 0;
  color: #ffffff;
}

.ds-label {
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 8px;
  display: block;
  color: #ffffff;
}

/* Inputs & Selects */
.ds-input,
.ds-select {
  width: 100%;
  background-color: rgba(255, 255, 255, 0.2); 
  border: 1px solid rgba(255, 255, 255, 0.5);
  color: #ffffff;
  padding: 12px 15px;
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  border-radius: 2px;
  outline: none;
  height: 48px; /* Fixed height for alignment */
  transition: all 0.3s ease;
}

/* Customizing Select Arrow */
.ds-select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23ffffff%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-position: right 15px top 50%;
  background-size: 10px auto;
}

.ds-select option {
  color: #333; /* Dark text for dropdown options */
}

/* Input Group for Search Icon */
.ds-input-group {
  position: relative;
}

.ds-search-icon {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: #ffffff;
  font-size: 1rem;
}

.ds-input-group .ds-input {
  padding-left: 40px; /* Space for icon */
}

.ds-input::placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.ds-input:focus,
.ds-select:focus {
  background-color: rgba(255, 255, 255, 0.3);
  border-color: #ffffff;
}

/* Search Button */
.ds-search-btn {
  width: 100%;
  height: 48px;
  background-color: #fff;
  border: 1px solid #ffffff;
  color: #5b007f;
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 2px;
  cursor: pointer;
  transition: all 0.3s ease;
}

.ds-search-btn:hover {
  background-color: #000;
  color: #fff;
}

/* --- Results Grid (Bottom) --- */
.ds-results-area {
  padding: 80px 0;
  background-color: #fffbf5; /* Very subtle off-white texture background */
  background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 40c5.523 0 10-4.477 10-10V0h20v30c0 5.523 4.477 10 10 10H0z' fill='%23f7f2eb' fill-opacity='0.4' fill-rule='evenodd'/%3E%3C/svg%3E");
}

.ds-card {
  background-color: #ffffff;
  border: 1px solid #333333;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  transition: transform 0.3s ease;
}

.ds-card:hover {
  transform: translateY(-5px);
}

/* Card Body */
.ds-card-body {
  padding: 25px;
  border-bottom: 1px solid #dcd0ff; /* Light purple separator line */
  flex-grow: 1;
}

.ds-firm-name {
  font-family: "DM Sans", sans-serif; /* Bold Sans-serif for names */
  font-size: 1.1rem;
  font-weight: 700;
  color: #131313;
  margin-bottom: 10px;
  min-height: 3em; /* Ensure alignment for long names */
}

.ds-location {
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  color: #555555;
  margin-bottom: 20px;
}

.ds-location i {
  margin-right: 5px;
  color: #333;
}

/* Tags */
.ds-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ds-tag {
  background-color: #f5f5f5;
  color: #333333;
  border: 1px solid #e0e0e0;
  padding: 5px 12px;
  font-size: 0.8rem;
  font-family: "DM Sans", sans-serif;
  border-radius: 2px;
}

.ds-tag-more {
  background-color: #f5f5f5;
  color: #333333;
  border: 1px solid #e0e0e0;
  padding: 5px 10px;
  font-size: 0.8rem;
  font-family: "DM Sans", sans-serif;
  border-radius: 2px;
}

/* Card Footer */
.ds-card-footer {
  padding: 20px 25px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.ds-stats {
  font-family: "DM Sans", sans-serif;
  font-size: 1rem;
  color: #555555;
}

.ds-stats strong {
  color: #131313;
  font-weight: 700;
}

.ds-view-btn {
  background-color: #5b007f;
  color: #ffffff;
  border: none;
  padding: 10px 20px;
  font-family: "DM Sans", sans-serif;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 2px;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.ds-view-btn:hover {
  background-color: #75159b;
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
  .ds-firm-name {
    min-height: auto;
  }
}

@media (max-width: 767px) {
  .ds-filter-bar {
    padding: 30px 0;
  }

  .ds-results-area {
    padding: 50px 0;
  }

  .ds-search-btn {
    margin-top: 10px;
  }
}

.directory-item[style*="display: none"] {
  display: none !important;
}
/* directory-search-section ends */

/* --- Awards Section css starts --- */

.awards-section {
  background-color: #fff; /* Soft grey background matching screenshot */
  padding: 100px 0;
  overflow: hidden;
}

/* Header Left Typography */
.aw-title {
  color: var(--text-black);
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 2.8rem;
  font-weight: 700;
  letter-spacing: -1px;
  line-height: 1.1;
  margin-bottom: 12px;
}

.aw-subtitle {
  color: #6d6d6d;
  font-family: "DM Sans", sans-serif;
  font-size: 1.05rem;
  font-weight: 500;
  margin-bottom: 0;
}

/* Primary Nominaton Button */
.btn-aw-nominate {
  background-color: var(--primary-teal);
  color: #ffffff;
  font-family: "DM Sans", sans-serif;
  font-weight: 700;
  font-size: 0.85rem;
  text-transform: uppercase;
  padding: 14px 28px;
  border-radius: 4px; /* Slight rounding to match screenshot */
  border: none;
  display: inline-block;
  transition: all 0.3s ease;
}

.btn-aw-nominate:hover {
  background-color: var(--primary-teal);
  color: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 6px 15px rgba(255, 109, 1, 0.3);
}

/* Header Right - Contributions List */
.aw-contributions-title {
  font-family: "DM Sans", sans-serif;
  font-size: 0.95rem;
  font-weight: 500;
  color: #444444;
}

.aw-contrib-item {
  display: flex;
  align-items: center;
}

.aw-contrib-icon {
  width: 32px;
  height: 32px;
  background-color: var(--primary-teal);
  border-radius: 6px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
  margin-right: 12px;
}

.aw-contrib-icon svg {
  width: 16px;
  height: 16px;
  color: #ffffff;
}

.aw-contrib-text {
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  color: #222222;
}

/* --- Card Architecture --- */
.aw-card {
  background-color: #ffffff;
  border-radius: 10px; /* Matching the soft corners of the screenshot */
  padding: 40px 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  border: 1px solid rgba(0,0,0,0.02);
}

.aw-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

/* Icon Wrapper inside Card */
.aw-card-icon-wrap {
  width: 65px;
  height: 65px;
  /* Very faint orange background with a subtle border to create the badge effect */
  background-color: #f9f9f9;
  border: 1px solid #e5e5e5; 
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 20px;
  transition: all 0.3s ease;
}



.aw-card-icon-wrap svg {
  width: 28px;
  height: 28px;
  color: var(--primary-teal); /* Requested Icon Color */
  transition: color 0.3s ease;
}



/* Card Title */
.aw-card-title {
  font-family: "Bricolage Grotesque", sans-serif;
  font-size: 1rem;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0;
  line-height: 1.4;
}
.aw-card-link {
  text-decoration: none;
  color: inherit;
  display: block;
  height: 100%;
}

.aw-card {
  height: 100%;
  cursor: pointer;
  transition: all 0.3s ease;
}

.aw-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.1);
}
/* --- Responsive Layout Adjustments --- */
@media (max-width: 991px) {
  .awards-section {
    padding: 80px 0;
  }
  .aw-title {
    font-size: 2.6rem;
  }
}

@media (max-width: 576px) {
  .awards-section {
    padding: 60px 0;
  }
  .aw-title {
    font-size: 2.2rem;
  }
  .aw-card {
    padding: 30px 15px;
  }
  .btn-aw-nominate {
    width: 100%;
    text-align: center;
  }
}
/* --- Awards Section css ends --- */
/* --- Stage Speakers Section css ends --- */
/* =========================================
   Image Gallery Section Starts
========================================= */
.image-gallery-section {
  width: 100%;
  overflow-x: auto;
  padding: 0;
  background-color: #1E2A38; /* Changed to dark navy to blend beautifully into the footer below it */
  cursor: grab;
  user-select: none; 
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

/* Active state for when the user is dragging */
.image-gallery-section.active {
  cursor: grabbing;
}

/* Hide scrollbar in Webkit browsers */
.image-gallery-section::-webkit-scrollbar {
  display: none;
}

.gallery-container {
  display: flex;
  width: max-content; /* Ensures container stretches to fit all cloned items */
}

.gallery-item {
  position: relative;
  flex-shrink: 0; 
  width: 350px; /* Slightly refined desktop width for better proportionality */
  height: 350px;
  overflow: hidden;
}

.gallery-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease, filter 0.4s ease-in-out;
}

.gallery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.4s ease-in-out;
  background-color: rgba(30, 42, 56, 0.6); /* Estate Gorilla Dark Navy Tint */
}

.gallery-item:hover .gallery-img {
  transform: scale(1.05);
}

.gallery-item:hover .gallery-overlay {
  opacity: 1;
}

.instagram-icon {
  width: 60px;
  height: 60px;
  background-color: #ffffff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: translateY(20px);
  transition: transform 0.4s ease-out;
  box-shadow: 0 10px 20px rgba(0,0,0,0.2);
}

.gallery-item:hover .instagram-icon {
  transform: translateY(0); /* Icon floats up slightly on hover */
}

.instagram-icon svg {
  width: 28px;
  height: 28px;
  stroke: var(--primary-color, #A0845C); /* Uses your brand gold */
  stroke-width: 2;
  fill: none;
}

/* Responsive Design */
@media (max-width: 991px) {
  .gallery-item {
    width: 300px;
    height: 300px;
  }
}

@media (max-width: 575px) {
  .gallery-item {
    width: 260px;
    height: 260px;
  }
  .instagram-icon {
    width: 50px;
    height: 50px;
  }
  .instagram-icon svg {
    width: 24px;
    height: 24px;
  }
}
/* Image Gallery Section Ends */

/* =========================================
   Story Section Starts
========================================= */
.story-section {
  background-color: #fff;
  padding: 100px 0;
  font-family: var(--font-body);
}

/* Left Column - Image & Decorative Frame */
.story-visual-wrapper {
  position: relative;
  padding: 20px; /* Provides space for the decorative corners */
  max-width: 450px;
  margin: 0 auto;
}

/* Decorative Gold Brackets (L-Shapes) */
.story-visual-wrapper::before,
.story-visual-wrapper::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 60px;
  border-color: var(--primary-color);
  border-style: solid;
  opacity: 0.8;
}

.story-visual-wrapper::before {
  top: 0;
  left: 0;
  border-width: 2px 0 0 2px; /* Top and Left borders */
}

.story-visual-wrapper::after {
  bottom: 0;
  right: 0;
  border-width: 0 2px 2px 0; /* Bottom and Right borders */
}

.story-visual-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  border-radius: 12px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.08);
}

/* Right Column - Typography */
.story-eyebrow {
  display: block;
  color: var(--primary-color);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 15px;
}

.story-title {
  font-family: var(--font-heading);
  color: var(--dark-color);
  font-size: 2.8rem;
  line-height: 1.2;
  margin-bottom: 24px;
}

.story-text {
  color: #5c6773;
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 24px;
}

.story-text:last-child {
  margin-bottom: 0;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
  .story-section {
    padding: 80px 0;
  }
  .story-title {
    font-size: 2.4rem;
  }
}

@media (max-width: 575.98px) {
  .story-section {
    padding: 60px 0;
  }
  .story-title {
    font-size: 2.1rem;
  }
  .story-visual-wrapper {
    padding: 15px;
  }
  .story-visual-wrapper::before,
  .story-visual-wrapper::after {
    width: 45px;
    height: 45px;
  }
}
/* Story Section Ends */
/* =========================================
   Summit Value Section Starts
========================================= */
.value-section {
  background-color: var(--bg-off-white); /* Matches the beige #f4f1ec */
  padding: 100px 0;
  font-family: var(--font-body);
}

/* Header Typography */
.value-eyebrow {
  color: var(--primary-teal);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  display: block;
}

.value-title {
  font-family: var(--font-heading);
  color: var(--dark-color);
  font-size: 3rem;
  margin-bottom: 15px;
}

.value-subtitle {
  color: #6c757d;
  font-size: 1.05rem;
  line-height: 1.6;
  margin: 0 auto 60px auto;
}

/* Card Styling */
.value-card {
  background-color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.04);
  border-radius: 12px;
  padding: 40px 35px;
  display: flex;
  flex-direction: column;
  align-items: flex-start; /* Aligns contents neatly to the left */
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.value-card:hover {
  transform: translateY(-6px); /* Gentle hover lift */
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.05);
}

/* Number Box Styling */
.value-number-box {
  width: 55px;
  height: 55px;
  background-color: #f9f4ee; /* Pale gold/beige tint */
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--primary-teal); /* Gold numbers */
  margin-bottom: 24px;
}

/* Card Text Styling */
.value-card-text {
  font-size: 0.92rem;
  color: #5c6773;
  line-height: 1.7;
  margin: 0;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
  .value-section {
    padding: 80px 0;
  }
  .value-title {
    font-size: 2.6rem;
  }
}

@media (max-width: 575.98px) {
  .value-section {
    padding: 60px 0;
  }
  .value-title {
    font-size: 2.2rem;
  }
  .value-card {
    padding: 30px 25px; /* Shrinks internal padding to maximize text space on phones */
  }
}
/* Summit Value Section Ends */

/* =========================================
   2. WHO SHOULD ATTEND SECTION (DARK)
========================================= */
.attendees-section {
  background-color: #1e2a38; /* #1e2a38 */
  padding: 100px 0;
  color: #ffffff;
  font-family: var(--font-body);
}

.attend-eyebrow {
  color: var(--primary-teal);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  display: block;
}

.attend-title {
  font-family: var(--font-heading);
  font-size: 3rem;
  margin-bottom: 15px;
}

.attend-subtitle {
  color: #b4b9c0;
  font-size: 1.05rem;
}

.attend-card {
  background-color: #ffffff;
  border-radius: 8px;
  padding: 24px 15px;
  text-align: center;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.attend-card:hover {
  transform: translateY(-5px);
}

.attend-icon {
  width: 28px;
  height: 28px;
  stroke: var(--primary-teal);
  margin-bottom: 16px;
}

.attend-card-text {
  font-size: 0.8rem;
  font-weight: 600;
  color: #5c6773;
  line-height: 1.4;
  margin: 0;
}

.btn-attend-gold {
  background-color: var(--primary-teal);
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: 600;
  padding: 12px 32px;
  border-radius: 6px;
  text-decoration: none;
  display: inline-block;
  transition: all 0.3s ease;
}

.btn-attend-gold:hover {
  background-color: #ffffff;
  color: var(--primary-teal);
}



/* =========================================
   4. TICKETS & PRICING SECTION
========================================= */
.pricing-section {
  background-color: var(--bg-off-white);
  padding: 100px 0;
  font-family: var(--font-body);
}

.price-eyebrow,
.price-title,
.price-subtitle {
  display: block;
}
.price-eyebrow {
  color: var(--primary-teal);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
}
.price-title {
  font-family: var(--font-heading);
  color: var(--dark-color);
  font-size: 3rem;
  margin-bottom: 15px;
}
.price-subtitle {
  color: #6c757d;
  font-size: 1.05rem;
}

/* Card Base */
.price-card {
  background-color: #ffffff;
  border-radius: 8px;
  padding: 40px 30px;
  border: 1px solid rgba(0, 0, 0, 0.05);
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
}

/* Featured Card (Standard) */
.price-card-featured {
  padding: 0; /* Padding moved to inner wrapper to accommodate top banner */
  border: none;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
  transform: scale(1.03); /* Slightly larger */
  z-index: 2;
}

.price-featured-banner {
  background-color: var(--primary-teal);
  color: #ffffff;
  text-align: center;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 12px 0;
  border-radius: 8px 8px 0 0;
}

.price-card-inner {
  padding: 40px 30px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

/* Card Content */
.price-tier {
  color: var(--primary-teal);
  font-size: 0.7rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 15px;
  display: block;
}

.price-amount {
  font-family: var(--font-heading);
  font-size: 3rem;
  color: var(--dark-color);
  line-height: 1;
  margin-bottom: 10px;
}

.price-desc {
  font-size: 0.8rem;
  color: #8c98a4;
  margin-bottom: 0;
}

.price-divider {
  border-top: 1px dotted #ccc;
  opacity: 1;
  margin: 25px 0;
}

.price-features {
  list-style: none;
  padding: 0;
  margin: 0 0 30px 0;
  flex-grow: 1;
}

.price-features li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 0.8rem;
  color: #5c6773;
  margin-bottom: 14px;
  line-height: 1.4;
}

.price-features svg {
  width: 14px;
  height: 14px;
  stroke: var(--primary-teal);
  stroke-width: 2.5;
  flex-shrink: 0;
  margin-top: 2px;
}

/* Buttons */
.btn-price-outline {
  display: block;
  text-align: center;
  background-color: transparent;
  color: var(--dark-color);
  border: 1px solid #d1d5da;
  font-size: 0.85rem;
  font-weight: 700;
  padding: 12px 0;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-price-outline:hover {
  background-color: var(--light-color);
  border-color: #8c98a4;
}

.btn-price-gold {
  display: block;
  text-align: center;
  background-color: var(--primary-teal);
  color: #ffffff;
  border: 1px solid var(--primary-teal);
  font-size: 0.85rem;
  font-weight: 700;
  padding: 12px 0;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-price-gold:hover {
  background-color: var(--dark-color);
  border-color: var(--dark-color);
}

/* =========================================
   Global Responsive Adjustments
========================================= */
@media (max-width: 991.98px) {
  .agenda-title,
  .attend-title,
  .fac-title,
  .price-title {
    font-size: 2.5rem;
  }

  .price-card-featured {
    transform: scale(1); /* Remove scale on tablets to prevent overlapping */
  }
}

@media (max-width: 767.98px) {
  .agenda-item {
    text-align: left;
  }
  .agenda-time {
    margin-bottom: 5px;
  } /* Stack time above title nicely */
}

@media (max-width: 575.98px) {
  .agenda-section,
  .attendees-section,
  .faculty-section,
  .pricing-section {
    padding: 60px 0;
  }
  .agenda-title,
  .attend-title,
  .fac-title,
  .price-title {
    font-size: 2.2rem;
  }

  .fac-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .btn-fac-primary {
    text-align: center;
  }
}



/* =========================================
   5. PARTNERSHIP CTA SECTION
========================================= */
.sponsorship-cta-section {
  
  padding: 100px 0;
  font-family: var(--font-body);
}

/* Typography */
.sponsor-eyebrow {
  color: var(--primary-teal);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-bottom: 12px;
  display: block;
}

.sponsor-title {
  font-family: var(--font-heading);
  color: var(--dark-color);
  font-size: 3rem;
  margin-bottom: 20px;
}

.sponsor-desc {
  color: #6c757d;
  font-size: 1.05rem;
  line-height: 1.6;
  margin: 0 auto 40px auto;
}

/* Button Layout */
.sponsor-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  flex-wrap: wrap; /* Allows buttons to wrap safely on tiny screens */
}

/* Primary Button */
.btn-sponsor-primary {
  background-color: var(--primary-teal);
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: 600;
  padding: 14px 32px;
  border-radius: 6px;
  border: 1px solid var(--primary-teal);
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-sponsor-primary:hover {
  background-color: var(--dark-color);
  border-color: var(--dark-color);
  color: #ffffff;
}

/* Secondary Ghost Button */
.btn-sponsor-outline {
  background-color: transparent;
  color: var(--dark-color);
  font-size: 0.9rem;
  font-weight: 600;
  padding: 14px 32px;
  border-radius: 6px;
  border: 1px solid rgba(0, 0, 0, 0.08); /* Faint border as per design */
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-sponsor-outline:hover {
  background-color: #ffffff;
  border-color: #d1d5da;
}

/* Responsive Adjustments */
@media (max-width: 991.98px) {
  .sponsorship-cta-section {
    padding: 80px 0;
  }
  .sponsor-title {
    font-size: 2.6rem;
  }
}

@media (max-width: 575.98px) {
  .sponsorship-cta-section {
    padding: 60px 0;
  }
  .sponsor-title {
    font-size: 2.2rem;
  }

  /* Stack buttons full-width on mobile */
  .sponsor-actions {
    flex-direction: column;
    align-items: stretch;
  }

  .btn-sponsor-primary,
  .btn-sponsor-outline {
    width: 100%;
    text-align: center;
  }
}

