/* Custom Font: Nohemi */
@font-face {
    font-family: 'Nohemi';
    src: url('../font/Nohemi-Bold-BF6438cc577b524.woff') format('woff'),
        url('../font/Nohemi-Bold-BF6438cc587b5b5.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Nohemi';
    src: url('../font/Nohemi-Regular-BF6438cc579d934.woff') format('woff'),
        url('../font/Nohemi-Regular-BF6438cc4d0e493.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* Custom Font: Manrope */
@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Manrope';
    src: url('../font/Manrope-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

/* Mapping Outfit to Manrope as requested */
@font-face {
    font-family: 'Outfit';
    src: url('../font/Manrope-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Outfit';
    src: url('../font/Manrope-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Outfit';
    src: url('../font/Manrope-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
    --primary-color: #ff0055;
    --secondary-color: #00e5ff;
    --text-color: #333;
    --bg-light: #f8f9fa;
    --gradient-bg: linear-gradient(135deg, #fdfbfb 0%, #ebedee 100%);
    --font-heading: "Nohemi", sans-serif;
    --font-body: "Manrope", sans-serif;
    --header-top-offset: 0px;
    scroll-behavior: smooth;
}

body {
    font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-body);
    /* Default Headings to Manrope */
}

/* Scroll Offset for Navigation */
section[id] {
    scroll-margin-top: 100px;
}

/* --- Infinite Decorations Animations --- */
/* Variation 1: Pulse & Sway (Clockwise) */
@keyframes floatRotateVar1 {
    0% {
        transform: translateY(0) rotate(0deg) scale(1);
    }

    50% {
        transform: translateY(-15px) rotate(180deg) scale(1.1);
    }

    100% {
        transform: translateY(0) rotate(360deg) scale(1);
    }
}

/* Variation 2: Slow Lift & Spin (Counter-Clockwise) */
@keyframes floatRotateVar2 {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-20px) rotate(-180deg);
    }

    100% {
        transform: translateY(0) rotate(-360deg);
    }
}

/* Variation 3: Gentle Wobble */
@keyframes floatRotateVar3 {
    0% {
        transform: translate(0, 0) rotate(0deg);
    }

    25% {
        transform: translate(5px, -5px) rotate(5deg);
    }

    50% {
        transform: translate(0, -10px) rotate(0deg);
    }

    75% {
        transform: translate(-5px, -5px) rotate(-5deg);
    }

    100% {
        transform: translate(0, 0) rotate(0deg);
    }
}

/* Variation 4: Quick Drift */
@keyframes floatRotateVar4 {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-8px) rotate(90deg);
    }

    100% {
        transform: translateY(0) rotate(180deg);
    }
}

/* Wave Rolling Effect: Simulate Undulation */
@keyframes waveRolling {
    0% {
        transform: rotate(0deg) scaleY(1) skewX(0deg);
    }

    25% {
        transform: rotate(2deg) scaleY(1.05) skewX(2deg);
    }

    50% {
        transform: rotate(0deg) scaleY(1) skewX(0deg);
    }

    75% {
        transform: rotate(-2deg) scaleY(0.95) skewX(-2deg);
    }

    100% {
        transform: rotate(0deg) scaleY(1) skewX(0deg);
    }
}

/* Wave Rolling with persistent translateX(50%) */
@keyframes waveRollingFixed {
    0% {
        transform: translateX(50%) rotate(10deg) scaleY(1);
    }

    50% {
        transform: translateX(50%) rotate(14deg) scaleY(1.05);
    }

    100% {
        transform: translateX(50%) rotate(10deg) scaleY(1);
    }
}

/* Applying to Star Groups */
.footer-star-1,
.star-bottom-big {
    animation: floatRotateVar1 15s infinite ease-in-out !important;
}

.dec-attend-star1 {
    animation: floatRotateVar1 7s infinite ease-in-out !important;
}

.footer-star-2,
.star-inside-date {
    animation: floatRotateVar2 25s infinite ease-in-out !important;
}

.dec-star-left {
    animation: floatRotateVar2 15s infinite ease-in-out !important;
}

.dec-star-right1 {
    animation: floatRotateVar2 5s reverse infinite ease-in-out !important;
}

.dec-about-star {
    animation: floatRotateVar3 10s infinite ease-in-out !important;
}

.dec-attend-star,
.dec-partner-star {
    animation: floatRotateVar3 10s infinite ease-in-out !important;
}

.dec-attend-title-star,
.dec-attend-star2 {
    animation: floatRotateVar4 10s infinite ease-in-out !important;
}

.dec-star-new-1,
.star-bottom-small {
    animation: floatRotateVar4 12s infinite ease-in-out !important;
}

/* Applying to Waves */
.dec-wave-right,
.dec-partner-wave {
    animation: waveRolling 10s infinite ease-in-out !important;
    transform-origin: center;
}

.wave-decoration {
    animation: waveRollingFixed 8s infinite ease-in-out !important;
    transform-origin: center;
}

body {
    font-family: var(--font-body);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    background: var(--bg-light);
    min-height: 100vh;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--font-heading);
}

/* Sticky Registration Bar */
.sticky-registration-bar {
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10050;
    background: linear-gradient(90deg, #9d13d2, #ee21a1);
    color: white;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 -4px 15px rgba(0, 0, 0, 0.15);
    width: 80%;
    padding: 10px 0;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.sticky-registration-bar p {
    font-size: 1.4rem;
    letter-spacing: 0.5px;
    font-family: var(--font-heading);
}

#registration-timer {
    font-family: var(--font-heading);
    font-weight: 700;
    border-radius: 4px;
    margin-left: 5px;
}

/* Main Header Container */
.main-header {
    position: sticky;
    top: calc(var(--header-top-offset, 0px) + 0px);
    z-index: 10040;
    padding: 20px 20px 0;
    margin-top: 0;
    transition: all 0.4s ease;
    background: radial-gradient(circle at center, #ffffff 0%, #ffe6f2 100%);
    /* Start transparent, show white when stuck */
}

/* Inner White Navbar "Pill" */
.header-navbar {
    background: transparent;
    /* backdrop-filter: blur(10px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08); */
    /* Softer shadow */
    border-radius: 100px;
    /* Pill shape */
    padding: 0 2rem;
    /* Inner spacing */
    max-width: 1700px;
    margin: 0 auto;
    /* Center */
    transition: border-radius 0.3s ease, margin 0.3s ease, width 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 50px;
}

/* Header Inner Container */
.header-inner {
    background: #ffffff;
    border-radius: 12px;
    border: none;
    transition: border-radius 0.3s ease;
    width: 80%;
}

/* When header is stuck (user scrolled) */
.main-header.is-stuck {
    top: var(--header-top-offset, 0px) !important;
    /* Move up to be flush with bar */
    padding: 0;
    /* Remove top gap */
    background: #ffffff !important;
    /* Change gradient to solid white */
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
    z-index: 10045;
    /* Slightly higher but still below registration bar if needed */
}

.main-header.is-stuck .header-inner {
    border-radius: 0;
    width: 100%;
}

.main-header.is-stuck .header-navbar {
    max-width: 1700px;
    /* Keep container width for alignment */
    margin: 0 auto;
    padding: 0.5rem 2rem;
    border-radius: 0;
    background: transparent;
    /* Inner is already handled or header handles it */
}

.main-header.is-stuck .navbar-brand img {
    height: 35px;
    /* Slightly smaller logo when stuck */
}

.main-header .navbar-brand img {
    height: 40px;
    /* Adjust as per logo aspect ratio */
    width: auto;
}

/* Menu Links */
.main-header nav ul li a {
    position: relative;
    transition: all 0.3s ease;
    padding-bottom: 5px;
}

.main-header nav ul li a:hover,
.main-header nav ul li a.active {
    color: #ff1595 !important;
}

.main-header nav ul li a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 2px;
    bottom: 0;
    left: 0;
    background-color: #ff1595;
    transition: width 0.3s ease;
}

.main-header nav ul li a.active::after,
.main-header nav ul li a:hover::after {
    width: 100%;
}

.main-header .dropdown-menu {
    border-radius: 12px;
    padding: 0.5rem;
    min-width: 180px;
    transform: translate3d(90px, 35px, 0px) !important;
    box-shadow: 0px 0px 25px 2px #FFE6F2 !important;
}

.main-header .dropdown-item {
    font-size: 0.9rem;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    transition: all 0.2s;
}

.main-header .dropdown-item:hover {
    background-color: #ffedf7;
    color: #ff1595;
}

/* Custom Button Hover Effect (90% width fill) */
.btn-custom-hover,
.partner-btn {
    position: relative;
    overflow: hidden;
    z-index: 10;
    font-weight: 700;
    transition: all 0.4s ease;
    width: max-content;
}

.btn-custom-hover::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #ff1595;
    /* Hover color */
    z-index: -1;
    transition: width 0.4s ease-in-out;
}

.btn-custom-hover:hover::before {
    width: 100%;
    /* Stops at 90% as requested */
}

.btn-custom-hover:hover {
    border-color: var(--primary-color);
    color: #fff !important;
}

.partner-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #ffedf7;
    z-index: -1;
    transition: width 0.4s ease-in-out;
}

.partner-btn:hover::before {
    width: 100%;
    /* Stops at 90% as requested */
}

.partner-btn:hover {
    border-color: var(--primary-color);
    color: #000000 !important;
}



/* Mobile Sidebar Redesign */
.mobile-sidebar {
    background: radial-gradient(circle at top right, #ffffff 30%, #fff0f7 100%) !important;
    border-left: 1px solid rgba(255, 21, 149, 0.1);
    box-shadow: -10px 0 40px rgba(0, 0, 0, 0.05) !important;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: 100001 !important;
    /* Above everything */
}

/* Offcanvas Backdrop Customization */
.offcanvas-backdrop.show {
    opacity: 0.6 !important;
    background-color: #000000 !important;
    z-index: 100000;
}

/* Base width (screens <= 420px) */
@media (max-width: 420px) {
    .mobile-sidebar {
        width: 80% !important;
    }
}

/* Intermediate width (421px to 768px) */
@media (min-width: 421px) and (max-width: 768px) {
    .mobile-sidebar {
        width: 60% !important;
    }
}

/* Desktop-mobile transition width (769px to 1200px) */
@media (min-width: 769px) and (max-width: 1200px) {
    .mobile-sidebar {
        width: 30% !important;
    }
}

.mobile-sidebar .offcanvas-header {
    padding: 2rem 1.5rem;
    border-bottom: 1px solid rgba(255, 21, 149, 0.05);
}

.mobile-sidebar .offcanvas-title {
    color: #ff1595;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 1.2rem;
}

.mobile-sidebar .offcanvas-body {
    padding: 2rem 1.5rem;
}

.mobile-sidebar ul li a {
    font-size: 1.2rem;
    padding: 0.5rem 0;
    display: block;
    transition: all 0.3s;
    color: #333 !important;
    position: relative;
    padding-left: 0;
}

.mobile-sidebar ul li a:hover {
    color: #ff1595 !important;
}

/* .mobile-sidebar ul li a:hover::before {
    content: '';
    position: absolute;
    left: -15px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 2px;
    background: #ff1595;
    border-radius: 2px;
} */

/* Hamburger to Cross Transition (Alternative using CSS) */
/* If you want to use the Bootstrap button to toggle, it's easier with a custom class toggled by JS or just using the :not(.collapsed) if it was a collapse. 
   Since it's an offcanvas, we'll add a simple JS event listener in index to toggle the icon or use a CSS class on the body. */

/* Footer Section */
.footer-box {
    border-radius: 40px !important;
}

.footer-star-1 {
    top: -20px;
    right: 20%;
    width: 80px;
    opacity: 0.8;
}

.footer-star-2 {
    bottom: -30px;
    left: 20%;
    width: 100px;
    opacity: 0.8;
}

.footer-box a:not(.btn) {
    color: #ffffff !important;
    text-decoration: none;
    transition: color 0.3s ease;
}

.footer-box a:not(.btn):hover {
    color: #ff8ecc !important;
}

.social-icons .btn-secondary {
    background-color: #333;
    border: none;
    transition: all 0.3s;
}

.social-icons .btn-secondary:hover {
    background-color: #ffedf7;
    color: var(--primary-color);
}

/* Banner Section */
.banner-section {
    min-height: 100vh;
    background: #fff0f5;
    /* Light pink background like screenshot */
    background: radial-gradient(circle at center, #ffffff 0%, #ffe6f2 100%);
    position: relative;
    padding: 0rem 0rem;
}

/* Content Wrapper */
.content-wrapper {
    max-width: 800px;
    margin: 0 auto;
    border-radius: 20px;
    padding: 0 2rem;
    z-index: 10;
}

/* Logos & Text */
.present-text {
    letter-spacing: 2px;
    font-size: 0.9rem;
    margin-top: 1rem;
}

.subtitle-text {
    color: #444;
}

.tagline-text {
    font-size: 1.5rem;
    line-height: 1.4;
    font-family: nohemi;
    font-weight: 500 !important;
}

.next-techade {
    color: #f94000;
    font-weight: 800;
}

/* What to Expect Section */
.expect-section {
    background-color: #ffffff;
    position: relative;
    /* Ensure no overflow from decorations */
    overflow: hidden;
}

.expect-title {
    font-family: "Nohemi", sans-serif;
    font-weight: 800;
    color: #000;
}

.stat-item {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

.stat-number {
    font-family: "Nohemi", sans-serif;
    font-weight: 800;
    font-size: 4.5rem;
    line-height: 1;
    text-align: left;
}

.stat-label {
    color: #333;
    font-family: "Outfit", sans-serif;
    text-align: left;
}

/* Stat Colors */
.text-purple {
    color: #9300d8;
}

.text-blue {
    color: #00afe5;
}

.text-orange {
    color: #f94000;
}

.text-pink {
    color: #ff1595;
}

.bg-pink {
    background-color: #ff1595;
}

/* Decorations */
.dec-about-star {
    top: 50px;
    left: -70px;
    width: 200px;
    opacity: 0.5;
    z-index: 0;
}

/* About IDEAS Section */
.about-section {
    padding-top: 50px;
    padding-bottom: 80px;
    background-color: #fff;
}

.gradient-title {
    font-family: "Nohemi", sans-serif;
    color: #000;
}

.about-text p {
    color: #333;
    line-height: 1.6;
    font-size: 1.1rem;
}

/* About Decorations */
.dec-star-left {
    left: -50px;
    top: 30%;
    width: 150px;
    /* Adjust size as needed provided image size */
    z-index: 0;
}

.dec-star-right1 {
    right: 5%;
    bottom: 10%;
    width: 100px;
    z-index: 0;
}

.dec-wave-right {
    right: -100px;
    top: 0%;
    width: 300px;
    /* Adjust size as needed */
    z-index: 0;
}

.about-img {
    position: relative;
    z-index: 1;
    max-width: 90%;
}

/* Key Themes Section */
.key-themes-section {
    background-color: #fff;
}

.key-themes-section h2 {
    font-family: "Nohemi", sans-serif;
}

.theme-item {
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    height: 100%;
    transition: transform 0.3s ease;
    overflow: hidden;
}

.themes-carousel.owl-carousel .owl-stage {
    display: flex;
}

.themes-carousel.owl-carousel .owl-item {
    display: flex;
}

.theme-item:hover {
    transform: translateY(-5px);
}

.theme-purple {
    background-color: #f9f4ff;
    padding: 0px 0px 0;
    justify-content: space-between;
}

.theme-orange {
    background-color: #fff4f0;
    padding: 0px 0px 30px;
    justify-content: flex-start;

}

.theme-content {
    text-align: left;
    padding: 20px 20px 0;
}

.theme-title {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: #000;
    line-height: 1.2;
    letter-spacing: 1px;
}

section#leadership {
    background: #ffedf7;
}

.theme-details {
    color: #333;
    line-height: 1.5;
    margin-bottom: 0;
}

.theme-image {
    text-align: center;
    margin-top: 1.5rem;
}

.theme-image img {
    width: 100% !important;
    height: auto;
    object-fit: contain;
}

/* For items where image is at top, we already swaped in HTML */
.theme-item>.theme-image:first-child {
    margin-top: 0;
    margin-bottom: 1.5rem;
}

.theme-item>.theme-image:last-child {
    margin-bottom: 0;
    margin-top: 1.5rem;
}

/* Custom Owl Nav */
.custom-owl-nav button {
    width: 45px;
    height: 45px;
    border-radius: 50%;
    border: 2px solid #000;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}


.custom-owl-nav button:hover {
    background: #ff1595;
    border-color: #ff1595;
    color: #fff;
}

@media (max-width: 768px) {
    .theme-item {
        min-height: auto;
    }
}

/* Leadership Section */
.leadership-section {
    background-color: #ffedf7;
    /* Light pink background from design */
}

.leader-card {
    background-color: #fff;
    border-radius: 20px;
    padding: 1rem 0rem 0rem 1rem;
    /* Matches user manual edit */
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
    overflow: hidden;
    position: relative;
}

.leadership-carousel.owl-carousel .owl-stage {
    display: flex;
}

.leadership-carousel.owl-carousel .owl-item {
    display: flex;
}

.leader-card:hover .leader-img {
    transition: all 1s ease-in-out;
    transform: scale(1.1);
}

.leader-info {
    margin-bottom: 2rem;
    z-index: 2;
    position: relative;
}

.leader-designation {
    color: #333;
    font-size: 0.9rem;
    line-height: 1.4;
}

.leader-visuals {
    position: relative;
    margin-top: auto;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    /* Changed from space-between */
    min-height: 120px;
    /* Reduced since image is smaller */
}

.star-bg {
    position: absolute;
    z-index: 1;
    opacity: 0.8;
    max-width: 100px;
    /* Fixed max width as requested */
}

/* Star Position Utility Classes */
.star-pos-1 {
    top: -20%;
    right: 70%;
}

.star-pos-2 {
    bottom: -25%;
    left: 10%;
}

.star-pos-3 {
    top: -18%;
    right: 50%;
}

.star-pos-4 {
    top: 5%;
    left: -18%;
}

.star-pos-5 {
    bottom: 5%;
    right: 25%;
}

.leader-img {
    position: relative;
    z-index: 2;
    max-height: 130px;
    /* Capped as requested */
    width: auto !important;
    margin-left: 0;
    /* Moved to left */
    display: block;
}

.association-logo img {
    filter: drop-shadow(0 5px 15px rgba(0, 0, 0, 0.05));
}

@media (max-width: 991px) {
    .leadership-block .row {
        flex-direction: column;
    }

    .leadership-block .col-lg-3 {
        margin-bottom: 3rem;
    }
}

/* Limit Wrapper */
.banner-limit-wrapper {
    width: 100%;
    max-width: 1800px;
    /* Adjusted to 1800px as per general site constraint, user said cross like banner which is 1800px */
}

.banner-limit-wrapper>* {
    pointer-events: auto;
}

/* Why Attend IDEAS Section */
.why-attend-section {
    background-color: #ffffff;
}

.attend-item {
    display: flex;
    align-items: center;
    transition: transform 0.3s ease;
}

.attend-item:hover {
    transform: translateX(10px);
}

/* Why Attend Decorations */
.dec-attend-star1 {
    top: 10%;
    right: 10%;
    z-index: 0;
}

.dec-attend-star {
    bottom: 20%;
    left: 1%;
    z-index: 0;
}

.dec-attend-meeting {
    bottom: 3%;
    right: 0;
    width: 500px;
    /* Adjust size based on design, large enough to be right column visual */
    max-width: 50%;
    /* Ensure responsiveness */
    z-index: 0;
    pointer-events: none;
}

/* Limit Wrapper */
.banner-limit-wrapper {
    width: 100%;
    max-width: 1800px;
    margin: 0 auto;
    position: relative;
}

.banner-limit-wrapper>* {
    pointer-events: auto;
}

/* Why Attend IDEAS Section */
.why-attend-section {
    background-color: #ffffff;
}

.attend-content-box {
    max-width: 900px;
    width: 100%;
    margin: 0 auto;
    /* Center the box */
    /* Removed border and background from the wrapper */
    display: flex;
    align-items: stretch;
    /* Ensure both children are same height */
}

.attend-item:hover {
    transform: translateX(10px);
}

.attend-img {
    flex-shrink: 0;
    /* Prevent image container from shrinking */
}

.attend-img img {
    width: 180px;
    height: 120px;
    object-fit: cover;
    object-position: center;
}

.attend-item:nth-child(4) .attend-img img {
    object-position: bottom;
}

.attend-text {
    width: 100%;
    padding: 1.5rem;
    border-radius: 1rem;
    position: relative;
    display: flex;
    /* Flex to align text vertically if needed */
    align-items: flex-start;
}

/* Alternating backgrounds on the TEXT box now */
.attend-item:nth-child(odd) .attend-text {
    background-color: #f1ffd2;
}

.attend-item:nth-child(even) .attend-text {
    background-color: #d2f4ff;
}

footer.footer-section {
    background-color: #ffedf7;
}

/* Why Attend Decorations */
.dec-attend-star1 {
    top: 5%;
    right: 5%;
    width: 150px;
    z-index: 0;
}

.dec-attend-star {
    bottom: 10%;
    left: 2%;
    width: 150px;
    z-index: 0;
}

.dec-attend-meeting {
    bottom: 3%;
    right: 0;
    width: 300px;
    /* Reduced size as requested */
    max-width: 40%;
    z-index: 0;
    pointer-events: none;
}

@media (max-width: 991px) {
    .attend-content-box {
        max-width: 100%;
    }

    .dec-attend-meeting {
        position: relative;
        width: 100%;
        max-width: 250px;
        margin-top: 2rem;
        float: right;
        display: block !important;
    }

    .attend-item {
        flex-direction: column;
        /* Stack on mobile */
        align-items: center;
    }

    .attend-img {
        margin-right: 0 !important;
        margin-bottom: 1rem;
    }

    .attend-img img {
        width: 100%;
        height: 200px;
        /* Fixed height for mobile aesthetic */
        width: 300px;
        /* Or max-width */
    }

    .dec-attend-star1,
    .dec-attend-star {
        display: none;
    }
}

/* CTA Button with Cross/Swipe Hover Effect */
.express-btn {
    background: #000;
    color: #fff;
    border: none;
    font-weight: 600;
    letter-spacing: 1px;
    transition: color 0.4s ease;
    z-index: 10;
    border-radius: 50px;
    text-decoration: none;
    display: inline-block;
    position: relative;
    overflow: hidden;
}

.express-btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg,
            transparent,
            rgba(255, 255, 255, 0.2),
            transparent);
    transition: left 0.5s ease;
    z-index: -1;
}

.express-btn:hover::before {
    left: 100%;
    /* Sparkle/Swipe Effect */
}

.express-btn:hover {
    padding-right: 2.5rem;
    /* Slide text/icon effect */
    color: #fff;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}

.express-btn::after {
    content: "\f061";
    /* FontAwesome arrow right */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 20px;
    opacity: 0;
    transform: translateX(-10px);
    transition: all 0.3s ease;
}

.express-btn:hover::after {
    opacity: 1;
    transform: translateX(0);
}

/* Wave Decoration */
.wave-decoration {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1001;
    /* Above normal header (1000) */
    transform: translateX(50%) rotate(10deg);
    width: 400px;
    /* Adjust as needed */
    max-width: 50vw;
    pointer-events: none;
    opacity: 0.6;
}


/* Button "Different" Hover: Gradient Background Change */
.express-btn:hover {
    background: linear-gradient(45deg, #1a1a1a, #444);
    /* Subtle gradient change */
    padding-right: 2.5rem;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

/* Responsive Decoration Adjustments */
@media (max-width: 1400px) {
    .dec-star-new-1 {
        left: 80px;
        bottom: 60px;
    }

    .dec-kite-new-1 {
        left: 20px;
        bottom: 100px;
    }
}

/* Specific adjustment for 1200px - 1350px range */
@media (min-width: 1200px) and (max-width: 1350px) {
    .bottom-right-illustration img {
        width: 80%;
        position: absolute;
        bottom: 0;
        right: 0;
    }
}

@media (max-width: 1200px) {
    .content-wrapper {
        max-width: 90%;
    }

    .logo-separator {
        height: 60px;
    }

    .logo-iamai {
        height: 40px;
    }

    .logo-isa {
        height: 70px;
    }

    .dec-setting-new-1 {
        width: 50px;
        left: 0;
    }

    .dec-kite-new-1 {
        bottom: 90px;
    }
}

@media (max-width: 992px) {
    .decoration-right-top img {
        width: 80px !important;
    }

    /* Hide some heavy decorations on tablet/mobile if needed, or adjust */
    .star-bottom-big {
        bottom: 10%;
        left: 5%;
        width: 30px;
    }

    .star-bottom-small {
        bottom: 15%;
        left: 15%;
        width: 20px;
    }
}

@media (max-width: 768px) {
    body {
        height: auto;
        min-height: 100vh;
        overflow-y: auto;
    }

    .banner-section {
        height: auto;
        min-height: auto;
        padding-top: 0px;
        padding-bottom: 50px;
        flex-direction: column;
        justify-content: flex-start !important;
        margin-bottom: 20px;
    }

    .content-wrapper {
        margin-top: 2rem;
        z-index: 5;
    }

    /* Adjust Logos for Mobile */
    .row {
        width: 100%;
        margin: 0;
        display: flex;
        justify-content: center;
    }

    .logo-separator {
        height: 40px !important;
        /* Reduced height */
        margin: 0 0.5rem !important;
        /* Reduced margin */
        opacity: 0.4;
        width: 1px;
        background-color: #000;
        display: block !important;
        /* Force display */
    }

    .logo-iamai {
        height: 40px;
        /* Reduced for mobile fit */
        width: auto;
        max-width: 40%;
    }

    .logo-isa {
        height: 50px;
        /* Reduced for mobile fit */
        width: auto;
        max-width: 50%;
    }

    /* Right Bottom Illustration: Hide settings/kite/star specific to right bottom if any, 
       but request said "right bottom hide setting kite star position little up". 
       Assuming this means hide the bottom-right illustration entirely or specific parts? 
       "right bottom hide" -> likely the illustration. 
       "setting kite star position little up" -> likely the ones on the left.
       Re-reading: "right bottom hide" AND "setting kite star position little up". */

    .bottom-right-illustration {
        display: flex !important;
        justify-content: flex-end;
        /* Align right */
        width: 100%;
        position: absolute !important;
        bottom: 0 !important;
        right: 0 !important;
        left: auto !important;
        /* Reset left */
        z-index: 0;
        /* Behind */
        opacity: 0.2;
    }

    .bottom-right-illustration img {
        width: 80%;
        max-width: 350px;
        object-fit: contain;
        transform: translateX(20%);
        /* Push slightly off-screen if needed, or 0 to align exactly */
        margin-right: -10%;
        /* Ensure it's flush to the right edge */
    }

    /* Adjust Date & Location: Show at left side completely */
    .bottom-left-info {
        position: relative !important;
        width: 100%;
        margin-top: auto;
        padding-left: 0 !important;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        /* Align left */
        z-index: 6;
    }

    .date-badge-container {
        margin-left: -15px;
        /* Pull slightly left to edge */
    }



    .location-info {
        padding-left: 1rem !important;
        /* Align with text */
        align-items: center;
        justify-content: flex-start !important;
    }

    /* Adjust Setting/Kite/Star positions "little up" for mobile */


    .dec-star-new-1 {
        bottom: 220px !important;
        left: 80px;
        width: 20px;
        display: block !important;
    }

    /* Hide specific bottom stars if needed */
    .star-bottom-big,
    .star-bottom-small {
        display: none !important;
    }




    .logo-iamai {
        height: 35px;
    }

    .logo-isa {
        height: 60px;
    }

    /* Center stack logos on mobile? User didn't ask, but good practice. Keeping row for now. */


    .date-badge-container h2 {
        font-size: 2.5rem;
    }

    .bottom-left-info {
        padding-bottom: 1rem !important;
    }

    /* Adjust floating elements to not block text */
    .dec-star-new-1 {
        display: none;
    }

    /* Hide lower decorations on mobile */
    .star-bottom-big,
    .star-bottom-small {
        display: none;
    }
}

@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-15px);
    }

    100% {
        transform: translateY(0px);
    }
}

.float-anim-1 {
    animation: float 4s ease-in-out infinite;
}

.float-anim-2 {
    animation: float 5s ease-in-out infinite;
    animation-delay: 1s;
}

/* Logo Separator */
.logo-separator {
    height: 80px;
    align-self: center;
    background-color: #000;
    width: 2px;
    opacity: 0.2;
}

.logo-iamai {
    height: 120px;
    /* specific height to control size */
    width: auto;
}

.logo-isa {
    height: 70px;
    /* Larger as requested */
    width: auto;
}

.float-anim-3 {
    animation: float 3s ease-in-out infinite;
    animation-delay: 0.5s;
}

/* Additional Animations */
@keyframes pulse-custom {
    0% {
        transform: scale(1);
    }

    50% {
        transform: scale(1.05);
    }

    100% {
        transform: scale(1);
    }
}

.pulse-anim {
    animation: pulse-custom 3s ease-in-out infinite;
}

@keyframes rotate-sway {
    0% {
        transform: rotate(0deg);
    }

    25% {
        transform: rotate(5deg);
    }

    75% {
        transform: rotate(-5deg);
    }

    100% {
        transform: rotate(0deg);
    }
}

/* Fast Rotate for Settings */
.rotate-fast {
    animation: rotate-sway 2s ease-in-out infinite;
    /* Much faster */
}

/* Varied Star Animations */
@keyframes twinkle {

    0%,
    100% {
        opacity: 1;
        transform: scale(1);
    }

    50% {
        opacity: 0.5;
        transform: scale(0.8);
    }
}

@keyframes float-rotate {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-10px) rotate(10deg);
    }

    100% {
        transform: translateY(0) rotate(0deg);
    }
}

@keyframes float-generic {
    0% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-8px);
    }

    100% {
        transform: translateY(0);
    }
}

.star-anim-1 {
    animation: twinkle 3s infinite;
}

.star-anim-2 {
    animation: float-rotate 4s ease-in-out infinite;
}

.star-anim-3 {
    animation: float-generic 5s ease-in-out infinite;
}

.star-anim-4 {
    animation: float-generic 3.5s ease-in-out infinite;
    animation-delay: 1s;
}

.rotate-anim {
    animation: rotate-sway 6s ease-in-out infinite;
}

/* Removed duplicate date-curve-bg */

.bottom-left-info {
    bottom: 30px;
    left: 0;
    z-index: 5;
    /* Ensure container respects responsive limits if needed, but fixed position implies overlay */
}

/* Target 1600px resolution container logic implies styling might change or align with it */
@media (min-width: 1600px) {
    .content-wrapper {
        min-width: 800px;
        /* Ensure it stays robust on huge screens */
    }
}

.date-badge-container h2 {
    font-family: "Nohemi", sans-serif;
    background: -webkit-linear-gradient(#333, #000);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 800;
    font-size: 3.5rem;
}

.month-year span {
    font-size: 1.1rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Location */
.location-info {
    margin-top: 5px;
    background: none;
    padding: 0;
    border-radius: 0;
    backdrop-filter: none;
    color: #000;
    padding-left: 0 !important;
}

/* Entrance Animations */
@keyframes slideUpFade {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }

    100% {
        opacity: 1;
        transform: translateY(0);
    }
}

.slide-up-anim {
    animation: slideUpFade 1s ease-out forwards;
}

.location-info i {
    color: #ff3366;
}

/* Responsive Adjustments */
@media (max-width: 992px) {
    .content-wrapper {
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .decoration-left,
    .decoration-right-top {
        display: none !important;
    }
}



/* New Decoration Position Classes */
.dec-star-new-1 {
    width: 30px;
    left: 100px;
    bottom: 80px;
}

/* Styles for Stars */
.star-inside-date {
    width: 35px;
    top: 5px;
    right: 25px;
    opacity: 1;
    pointer-events: none;
    filter: hue-rotate(260deg) saturate(5);
    /* Make the star more purple-ish if it's the standard orange/yellow one */
}

.star-bottom-big {
    width: 40px;
    bottom: 15%;
    left: 20%;
    z-index: 2;
}

.star-bottom-small {
    width: 25px;
    bottom: 25%;
    left: 25%;
    z-index: 2;
}

/* Updates for Date and Location */
.date-curve-bg {
    background: linear-gradient(135deg, #a7e1f7 0%, #fff 100%);
    color: #000;
    border-radius: 0 100px 100px 0;
    padding: 1.5rem 4rem 1.2rem 2rem;
    position: relative;
    margin-bottom: 0px !important;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

/* Ensure below 768px stays as pill and single line */


.date-badge-container h2 {
    font-family: "Nohemi", sans-serif;
    color: #000;
    background: none;
    -webkit-text-fill-color: initial;
    font-weight: 900;
    font-size: 3.5rem;
    line-height: 0.8;
}

.date-hyphen {
    font-size: 18px;
    font-weight: 900;
    margin: -12px 0 -8px;
    display: block;
    line-height: 1;
}

.month-year {
    color: #000;
}

.month-year span {
    font-size: 1.4rem;
    font-weight: 800;
    line-height: 1.1;
}

/* End decoration block replacement */

/* Target 1600px resolution container */
@media (min-width: 1600px) {
    .content-wrapper {
        min-width: 800px;
    }
}

/* Specific adjustment for 991px - 1350px range (Tablet/Laptop) */
@media (min-width: 991px) and (max-width: 1350px) {
    .bottom-right-illustration {
        display: block !important;
        z-index: 0;
        opacity: 1;
    }
}

@media (min-width: 768px) and (max-width: 1300px) {
    .main-logo {
        width: 80%;
    }

    .logo-iamai {
        width: 36%;
    }

    .logo-isa {
        height: 55px;
    }

    .banner-section {
        min-height: 500px;
    }
}

@media (max-width: 768px) {
    .bottom-right-illustration {
        display: none !important;
    }

    /* Mobile: Location next to ("infront of") date, Centered */
    .bottom-left-info {
        flex-direction: row !important;
        align-items: center !important;
        justify-content: center !important;
        /* CENTERED */
        padding-bottom: 0px !important;
        width: 100%;
        /* Ensure full width for centering */
        left: 0;
        position: absolute !important;
    }

    .present-text {
        letter-spacing: 0 !important;
        margin: -25px 0 15px !important;
    }

    .tagline-text {
        margin: 0px 0 40px !important;
    }

    .date-badge-container {
        margin-left: 0;
        /* Removing negative margin for centering */
    }

    .date-curve-bg {
        padding: 0.5rem 1.8rem !important;
        margin-left: 0;
        border-radius: 50px !important;
        /* PILL SHAPE */
        flex-direction: row !important;
        align-items: center !important;
        gap: 15px;
    }

    .date-badge-container h2 {
        font-size: 1.5rem;
        /* Adjusted for single line */
    }

    .month-year span {
        font-size: 0.9rem !important;
        font-weight: 700 !important;
    }

    .location-info {
        padding-left: 15px !important;
        text-align: left;
    }

    /* Show Decorations (Setting, Stars) on Mobile, Hide Kite */
    .decorations-wrapper {
        display: block !important;
        width: 300px;
        /* Limit width */
        left: 50%;
        /* Center start */
        transform: translateX(-50%);
        /* Center align */
        bottom: 0px !important;
        /* Move down closer to date */
        height: 100px;
        z-index: -1;
    }

    /* Position settings and stars around the centered date */




    .dec-star-new-1 {
        bottom: 60px !important;
        left: 20px !important;
        width: 20px !important;
    }


}

/* Utility classes to replace inline styles */
.delay-200 {
    animation-delay: 0.2s;
}

.delay-400 {
    animation-delay: 0.4s;
}

.decorations-wrapper {
    bottom: 100%;
    left: 0;
    width: 100%;
    height: 200px;
    pointer-events: none;
    z-index: -1;
}

.w-30 {
    width: 30% !important;
}

@media (min-width: 1400px) and (max-width: 1700px) {
    .banner-section {
        height: 600px;
        min-height: auto;
    }
}

@media (min-width: 1700px) {
    .banner-section {
        height: 700px;
        min-height: auto;
        -webkit-box-shadow: inset 0px -13px 0px -5px #8755dd;
        box-shadow: inset 0px -13px 0px -5px #8755dd;
    }
}

/* Constrain banner edge content */
.banner-limit-wrapper {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1600px;
    height: 100%;
    pointer-events: none;
    /* Let clicks pass through */
}

/* Restore pointer events for children if they have interactions */
.banner-limit-wrapper>* {
    pointer-events: auto;
}

/* Who Should Attend Section */
.who-should-attend-section .title-section {
    background-color: #e0f7fa;
    /* Light blue background */
    position: relative;
}

.dec-attend-title-star {
    top: 40%;
    right: -2%;
    width: 100px;
    z-index: 0;
}

section#who-should-attend {
    background-color: #ffffff;
}

.who-should-attend-section .icon-wrapper img {
    max-height: 80px;
    width: auto;
}

.who-should-attend-section .attend-category h3 {
    line-height: 1.3;
    min-height: 3em;
}

.who-should-attend-section .attend-category p {
    line-height: 1.6;
}

/* Custom separator for large screens */
@media (min-width: 992px) {
    .border-end-lg {
        border-right: 1px solid #b3e5fc;
        /* Light blue separator */
    }
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .border-end-lg {
        border-right: none;
        border-bottom: 1px solid #b3e5fc;
        /* Horizontal separator on tablet/mobile */
        margin-bottom: 1rem;
        padding-bottom: 1rem;
    }
}

/* Partnership Advantage Section */
.partnership-advantage-section {
    background-color: #ffedf7;
    z-index: 1;
}

.partnership-decorations {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    max-width: 1800px;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}

.partnership-decorations img {
    pointer-events: none;
    opacity: 0.8;
}

.dec-handshake {
    right: 5%;
    top: 30%;
    width: 250px;
    z-index: 10;
}

.dec-partner-star {
    right: 3%;
    top: 28%;
    width: 150px;
    z-index: 1;

}

.dec-partner-wave {
    left: -1%;
    top: 40%;
    width: 500px;
}

.partnership-cards-container {
    width: 60%;
    max-width: 1000px;
}

.partnership-card {
    background: #fff;
    border: 1px solid #f0f0f0;
    border-radius: 20px;
    transition: all 0.3s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 2rem;
}

.partnership-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

.partnership-card .icon-wrapper img {
    max-height: 100px;
    width: auto;
}

.partnership-card .small-text {
    font-size: 1rem;
    line-height: 1.4;
    color: #000;
    text-align: left;
}

.highlight-feature-card {
    width: 75%;
    max-width: 1200px;
    border-radius: 30px;
    background: #fff;
}

.highlight-feature-card.inner {
    background: #fff;
    /* White background requested */
    margin: 0 auto !important;
    /* Enforce no top margin natively and center vertically */
    width: 100%;
    max-width: 1000px;
    /* Constrain max width for better reading */
    border-radius: 30px;
}

.highlight-left {
    background: linear-gradient(45deg, #ff1595 5%, #000000 60%);
    color: #fff;
    min-height: 250px;
}

.highlight-left.inner {
    background: linear-gradient(45deg, #f21f9e 5%, #9503d7 60%);
    color: #fff;
    min-height: 250px;
}

.highlight-right {
    background: #fff;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}

.highlight-right.inner {
    background: #ffe9f5;
}

.highlight-left h3 {
    line-height: 1.2;
}

.partnership-list li {
    font-size: 1.1rem;
    font-weight: bold;
    color: #333;
}

/* Responsive Partnership Advantage */
@media (max-width: 1200px) {
    .partnership-cards-container {
        width: 80%;
    }
}

@media (max-width: 991px) {
    .partnership-cards-container {
        width: 95%;
    }

    .dec-handshake,
    .dec-partner-star,
    .dec-partner-wave {
        display: none !important;
    }

    .highlight-left {
        min-height: 180px;
    }
}


/* Consolidated Global Mobile Overrides (at the end for priority) */
@media (max-width: 768px) {

    /* Section Headings */
    h2 {
        text-align: center !important;
        font-size: 28px !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
    }

    /* Container Widths */
    .partnership-cards-container {
        width: 90% !important;
    }

    .highlight-feature-card {
        max-width: 100% !important;
        width: 90% !important;
    }

    /* Padding & Spacing */
    .footer-box {
        padding: 30px !important;
    }

    .partnership-card .small-text {
        font-size: 0.9rem !important;
    }

    .sticky-registration-bar p {
        font-size: 0.9rem !important;
    }
}

/* Engagement Formats Section */
.engagement-formats-section {
    background-color: #ffedf7;
    z-index: 1;
}

.engagement-img {
    width: 95%;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* Section Titles Overrides for Nohemi Font */
.expect-title,
.about-section .gradient-title,
.why-attend-section .gradient-title,
.who-should-attend-section .title-section h2,
.partnership-advantage-section h2,
.highlight-feature-card .highlight-left h3,
.engagement-formats-section h2,
.leadership-section h2,
.leader-name {
    font-family: 'Nohemi', sans-serif !important;
}

.leader-name {
    font-size: 1rem;
    color: #000;
    font-family: 'Manrope', sans-serif !important;
    font-weight: 1000 !important;
    margin-bottom: 1px !important;
}

.dec-leadership-wave {
    top: 40%;
    width: 30%;
    left: -10%;
    transform: rotate(8deg);
}

.policy-section {
    background-color: #ffedf7;
    min-height: 60vh;
    color: #000;
}

.policy-container {
    max-width: 1000px;
    width: 100%;
    background-color: #ffffff;
    border-radius: 20px;
}

.policy-content ul {
    list-style-type: disc;
    padding-left: 1.5rem;
}

.policy-content li {
    margin-bottom: 1rem;
}

@media (max-width: 768px) {
    .policy-card {
        height: auto;
        max-height: none;
    }

    div#roundtables-wrapper {
        width: 100% !important;
    }

    .roundtable-wave {
        left: -50%;
        bottom: -30%;
    }

    .policy-scroll-body {
        overflow: visible;
        padding: 1.5rem !important;
    }
}

.roundtable-banner,
.networking-banner {
    background: #ffe9f5;
    border-bottom: 5px solid #ff1595;
    height: 400px;
}

.roundtable-banner.inner,
.networking-banner.inner {
    background: #ffe9f5;
    border-bottom: 5px solid;
    border-image: linear-gradient(90deg, #fe2584 50%, #f94011 100%) 1;
}

.roundtable-banner.inner .container,
.networking-banner.inner .container {
    z-index: 1000;
}

.roundtable-title,
.networking-title {
    font-family: "Nohemi", sans-serif !important;
    color: #f94000 !important;
}

.roundtable-wave,
.networking-wave {
    left: -10%;
    bottom: 0;
    width: 300px;
    transform: rotate(20deg);
}

.roundtable-kite,
.networking-kite {
    right: 40%;
    top: 40%;
    width: 80px;
}

.roundtable-kite1 {
    right: 30%;
    top: 40%;
    width: 80px;
}

.roundtable-person,
.networking-person {
    right: 15%;
    bottom: 0;
    width: 20%;
}

.roundtable-person1 {
    right: 10%;
    bottom: 0;
    width: 20%;
}

.roundtable-star,
.networking-star {
    right: 5%;
    top: 30%;
    width: 6%;
}

.roundtable-star1 {
    right: 5%;
    bottom: 0;
    width: 6%;
}

span.roundtable-date-pill,
span.networking-date-pill {
    /* background-color: #ffeae4; */
    padding: 15px 30px 15px 0;
    font-size: 20px;
    color: #000000;
    font-weight: 700;
    border-radius: 50px;
    line-height: 30px;
    /* margin-bottom: 10px; */
}

.roundtable-desc p,
.networking-desc p {
    font-size: 16px;
    line-height: 25px;
    margin: 20px 0;
}

.roundtable-item,
.networking-item {
    margin-bottom: 50px;
}

h2.roundtable-item-title,
h2.networking-item-title {
    font-weight: 700;
    font-family: 'Nohemi', sans-serif;
    margin-bottom: 20px;
}

/* About Roundtable Responsive */
.about-roundtable-section {
    padding: 100px 0 50px !important;
}

.about-rt-title {
    font-family: 'Nohemi', sans-serif !important;
    font-size: 40px;
    line-height: 1.2;
}

.about-rt-desc {
    font-size: 16px;
    line-height: 1.6;
    color: #333;
}

.about-star-dec {
    left: -5%;
    bottom: 0%;
    z-index: 0;
    width: 250px;
}

.discussion-pill {
    background-color: #ffe9f5;
    border-radius: 100px;
    padding: 20px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    color: #000;
    line-height: 1.5;
    width: calc(21% - 0px);
    box-sizing: border-box;
    min-height: 150px;
}

@media (max-width: 991px) {
    .about-star-dec {
        width: 150px !important;
        left: -10% !important;
        bottom: 0% !important;
    }

    .about-roundtable-section h3 {
        font-size: 28px !important;
        margin-bottom: 20px !important;
        text-align: left !important;
    }
}

/* Discussion Points Section */
.discussion-points-section {
    padding: 0px 0 50px;
}

.discussion-rt-title {
    font-family: 'Nohemi', sans-serif !important;
    font-size: 35px;
}

.discussion-points-container {
    width: 90%;
    margin: 0 auto;
}

.discussion-pills-wrapper {
    gap: 20px;
    align-items: stretch;
    /* Make them match height */
    justify-content: center;
}

@media (max-width: 1200px) {
    .discussion-pill {
        width: calc(33.333% - 15px);
        /* 3 per row */
    }
}

@media (max-width: 991px) {
    .discussion-pill {
        width: calc(50% - 10px);
        /* 2 per row */
    }
}

@media (max-width: 768px) {
    .discussion-points-section {
        padding: 60px 0;
    }

    .discussion-pill {
        width: 100%;
        /* stack */
        border-radius: 40px;
        padding: 20px 30px;
        min-height: auto;
    }
}


@media (max-width: 768px) {
    .about-roundtable-section {
        padding: 60px 0 !important;
    }

    .about-roundtable-section .col-lg-7 p {
        font-size: 15px !important;
        text-align: left !important;
    }
}

/* Agenda Section */
.agenda-section,
.highlight-card-roundtable {
    padding: 50px 0;
    background: #fff !important;
}

.agenda-title {
    font-family: 'Nohemi', sans-serif !important;
    font-size: 35px;
}

.agenda-container {
    max-width: 800px;
    margin: 0 auto;
}

.agenda-time {
    background-color: #00b0f0;
    border-radius: 10px;
    width: 35%;
    padding: 15px 20px;
    font-size: 16px;
    text-align: center;
    margin-right: -10px;
    z-index: 10;
}

.agenda-detail {
    background-color: #eaf8fb;
    border-radius: 10px;
    width: 65%;
    padding: 15px 30px;
    font-size: 16px;
    color: #000;
}

@media (max-width: 768px) {
    .agenda-section {
        padding: 60px 0;
    }

    .agenda-time {
        width: 100%;
        text-align: center;
        justify-content: center;
        margin-right: 0;
        border-radius: 10px 10px 0 0;
    }

    .agenda-detail {
        width: 100%;
        text-align: center;
        justify-content: center;
        border-radius: 0 0 10px 10px;
    }
}

/* Speakers Section Specifics */
.bg-speaker-pink {
    background-color: #ffedf7 !important;
}

.bg-speaker-purple {
    background-color: #f5eeff !important;
}

.speakers-section .leader-card {
    height: 100%;
    /* Ensure all cards stretch to same height */
    border: none;
    box-shadow: none;
}

.speakers-section .leader-img {
    filter: grayscale(100%);
    /* Make images grayscale per design */
}

/* Header Dropdown Arrow Fix */
.header-navbar .nav-item.dropdown .nav-link.dropdown-toggle {
    display: flex;
    align-items: center;
    white-space: nowrap;
}

.header-navbar .nav-link.dropdown-toggle::after {
    display: none !important;
    /* Hide via css so we can use manual <i> tag */
}

div#roundtables-wrapper {
    width: 85%;
}

@media (min-width: 320px) and (max-width: 768px) {

    .roundtable-person1,
    .roundtable-person,
    .roundtable-wave,
    .roundtable-kite1,
    .roundtable-kite {
        display: none;
    }

    .btn-custom-hover,
    .partner-btn {
        width: auto;
    }

    .header-inner {
        width: auto;
    }

    .roundtable-banner.inner h2 {
        text-align: left !important;
    }
}


@media (min-width: 992px) {
    .banner-register-card {
        right: 5%;
        bottom: 55%;
        width: 180px;
        height: 180px;
        z-index: 10000;
    }
}

@media (max-width: 991px) {
    .banner-section {
        padding-bottom: 120px !important;
    }

    .banner-register-card {
        width: 180px;
        height: auto;
        position: relative !important;
    }
}

.register-card-inner {
    background: linear-gradient(135deg, #000000 0%, #1a0010 40%, #ff007f 100%);
    border: 2px solid rgba(255, 255, 255, 0.5);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.register-card-inner:hover {
    transform: translateY(-10px);
    box-shadow: 0 10px 20px rgba(255, 0, 127, 0.4) !important;
}

.register-card-star {
    width: 120px;
    transform: translate(20%, 20%);
    pointer-events: none;
}

.register-line {
    width: 30px;
    height: 3px;
    background-color: white;
}

.banner-register-card a,
.banner-register-card a:link,
.banner-register-card a:visited,
.banner-register-card a:hover,
.banner-register-card a:active {
    text-decoration: none;
}

a.btn.btn-outline-dark.btn-custom-hover.rounded-2.px-4 {
    background-color: #ffffff;
}

/* Partner With Us Classes */
.about-partner-waves {
    z-index: 10;
    max-width: 300px;
    top: 1%;
    left: -10%;
}

.about-partner-star1 {
    z-index: 10;
    max-width: 100px;
}

.about-partner-star2 {
    z-index: 10;
    max-width: 100px;
}

.about-partenr-with-us p {
    position: relative;
    z-index: 100;
}

.z-index-1 {
    z-index: 100;
}

.event-highlights-container {
    background-color: #fff0f7;
    max-width: 1200px;
}

.event-partner-container {
    max-width: 1200px;
}

.event-highlights-desc {
    max-width: 80%;
    color: #555;
}

.event-highlight-item {
    gap: 15px;
}

.event-highlight-icon {
    width: 50px;
    height: auto;
}

.event-highlight-title {
    overflow-wrap: anywhere;
}

/* Why Partner Section Styles */
.why-partner-section {
    position: relative;
    z-index: 100;
}

.why-partner-title {
    color: #000;
    font-size: 2.2rem;
}

.why-partner-card {
    padding: 1.5rem;
    border-radius: 1rem;
    height: 100%;
    gap: 1.5rem;
}

.why-partner-card.card-purple {
    background-color: #f6f0ff;
}

.why-partner-card.card-pink {
    background-color: #fff0f7;
}

.why-partner-icon {
    width: 65px;
    height: auto;
    flex-shrink: 0;
}

.why-partner-content p {
    width: 100% !important;
    font-weight: 400 !important;
}

@media (max-width: 768px) {
    .why-partner-card {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }
}

.partnership-opp-container {
    max-width: 60%;
}

.partnership-opp-wrapper {
    background: linear-gradient(10deg, #9200d7 0%, #00aee4 100%);
    padding: 2px;
}

.partnership-opp-inner {
    border-radius: calc(1rem - 2px);
    overflow: hidden;
}

.partnership-opp-left {
    background: linear-gradient(35deg, rgba(146, 0, 215, 1) 0%, rgba(0, 174, 228, 1) 100%);
}

.partnership-opp-desc {
    max-width: 600px;
}

.btn-partnership-opp {
    background: linear-gradient(35deg, rgba(146, 0, 215, 1) 0%, rgba(0, 174, 228, 1) 100%);
    border: none;
    font-weight: 600;
    white-space: nowrap;
}

.dp-star-small {
    top: 10%;
    right: 15%;
    width: 25px;
    z-index: -1;
}

.dp-star-big {
    top: 5%;
    right: 5%;
    width: 60px;
    z-index: -1;
}

.dp-subtitle {
    color: #666;
    font-size: 1.1rem;
}

.dp-card-pink {
    background-color: #fff0f7;
}

.dp-card-purple {
    background-color: #f6f0ff;
}

.delegate-profile .rounded-4 p {
    width: 70%;
    font-weight: 600;
}

.dp-card-star-left {
    left: -20%;
    top: 35%;
    width: 120px;
    opacity: 0.7;
}

.dp-card-star-right {
    right: -10%;
    bottom: -20%;
    width: 120px;
    opacity: 0.7;
}

.dp-card-icon-pink {
    height: 60px;
    background: #ffe1f1;
    padding: 10px;
    border-radius: 50px;
}

.dp-card-icon-purple {
    height: 60px;
    background: #efd6fb;
    padding: 10px;
    border-radius: 50px;
}

.dp-card-title {
    font-size: 1.25rem;
    color: #000;
}

.cta-highlight {
    color: #f94000;
    font-weight: 600;
}

.btn-cta-orange {
    background-color: #f94000;
    border: none;
    z-index: 10;
    color: white;
}

@media (max-width: 991px) {
    .partnership-opp-container {
        max-width: 90%;
    }

    .event-highlights-desc {
        max-width: 100%;
    }
}

@media (max-width: 768px) {
    .partnership-opp-container {
        max-width: 100%;
    }

    .about-partner-waves,
    .about-partner-star1,
    .about-partner-star2 {
        opacity: 0.3;
    }

    .about-partner-star1 {
        left: -20px !important;
        margin-left: 0 !important;
    }

    .about-partner-star2 {
        right: -20px !important;
        margin-right: 0 !important;
    }
}

/* =====================================================
   Brief Exchange (be-*) Class Aliases
   Mirrors the shared classes so brief-exchange.html
   can be styled independently without affecting other pages.
   ===================================================== */

/* Discussion Points Section */
.be-discussion-points-section {
    padding: 0px 0 50px;
}

.be-discussion-rt-title {
    font-family: 'Nohemi', sans-serif !important;
    font-size: 35px;
}

.be-discussion-points-container {
    width: 90%;
    margin: 0 auto;
}

.be-discussion-pills-wrapper {
    gap: 20px;
    align-items: stretch;
    justify-content: center;
}

.be-discussion-pill {
    background-color: #ffe9f5;
    border-radius: 100px;
    padding: 20px 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    color: #000;
    line-height: 1.5;
    width: calc(21% - 0px);
    box-sizing: border-box;
    min-height: 150px;
}

@media (max-width: 1200px) {
    .be-discussion-pill {
        width: calc(33.333% - 15px);
    }
}

@media (max-width: 991px) {
    .be-discussion-pill {
        width: calc(50% - 10px);
    }
}

@media (max-width: 768px) {
    .be-discussion-points-section {
        padding: 60px 0;
    }

    .be-discussion-pill {
        width: 100%;
        border-radius: 40px;
        padding: 20px 30px;
        min-height: auto;
    }
}

/* Brief Exchange Cards */
.brief-card-left {
    border-top: 5px solid #ff1595;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.brief-card-right {
    border-top: 5px solid #9503d7;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.brief-card-left:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(255, 21, 149, 0.15) !important;
}

.brief-card-right:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 30px rgba(149, 3, 215, 0.15) !important;
}

.brief-card-left .opacity-10,
.brief-card-right .opacity-10 {
    opacity: 0.05;
}

.brief-card-left ul li strong,
.brief-card-right ul li strong {
    color: #000;
}

.brief-card-left ul li,
.brief-card-right ul li {
    font-size: 0.95rem;
    color: #444;
    line-height: 1.6;
}

/* Speakers Section - be-* aliases */
.be-bg-speaker-pink {
    background-color: #ffedf7 !important;
}

.be-bg-speaker-purple {
    background-color: #f5eeff !important;
}

.be-leader-card {
    background-color: #fff;
    border-radius: 20px;
    padding: 1rem 0rem 0rem 1rem;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
    overflow: hidden;
    position: relative;
    border: none;
    box-shadow: none;
}

.be-leader-card:hover .be-leader-img {
    transition: all 1s ease-in-out;
    transform: scale(1.1);
}

.be-leader-info {
    margin-bottom: 2rem;
    z-index: 2;
    position: relative;
}

.be-leader-name {
    font-size: 1rem;
    color: #000;
    font-family: 'Manrope', sans-serif !important;
    font-weight: 1000 !important;
    margin-bottom: 1px !important;
}

.be-leader-designation {
    color: #333;
    font-size: 0.9rem;
    line-height: 1.4;
}

.be-leader-visuals {
    position: relative;
    margin-top: auto;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    min-height: 120px;
}

.be-star-bg {
    position: absolute;
    z-index: 1;
    opacity: 0.8;
    max-width: 100px;
}

.be-star-pos-1 {
    top: -20%;
    right: 70%;
}

.be-star-pos-2 {
    bottom: -25%;
    left: 10%;
}

.be-star-pos-3 {
    top: -18%;
    right: 50%;
}

.be-star-pos-4 {
    top: 5%;
    left: -18%;
}

.be-leader-img {
    position: relative;
    z-index: 2;
    max-height: 130px;
    width: auto !important;
    margin-left: 0;
    display: block;
    filter: grayscale(100%);
}

.be-speakers-section .be-leader-card {
    height: 100%;
    border: none;
    box-shadow: none;
}

.how-it-works-section {
    background-color: #ffffff;
}

.brief {
    height: 400px !important;
}

/* Thank You Page Styles */
.thank-you-section {
    padding: 80px 0;
    background-color: #fff;
}

.thank-you-card {
    background: #fff;
    border-radius: 24px;
    padding: 50px 30px;
    box-shadow: 0 10px 40px rgba(255, 21, 149, 0.1);
    text-align: center;
    max-width: 600px;
    margin: 0 auto;
    border: 1px solid rgba(255, 21, 149, 0.1);
}

.success-icon {
    width: 80px;
    height: 80px;
    background: #ffedf7;
    color: #ff1595;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    margin: 0 auto 25px;
}

.thank-you-card h2 {
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 15px;
    color: #000;
}

.thank-you-card p {
    font-size: 1.1rem;
    color: #444;
    margin-bottom: 30px;
}

.redirect-msg {
    font-size: 0.95rem;
    color: #666;
    margin-top: 20px;
}

#countdown {
    font-weight: 700;
    color: #ff1595;
}

@media (max-width: 768px) {
    .thank-you-section {
        padding: 60px 0;
    }

    .thank-you-card {
        padding: 40px 20px;
        margin: 0 15px;
    }
}

/* White Registration Bar Button */
.btn-white-bar {
    background: #ffffff;
    color: #ff1595 !important;
    border: 1px solid #ffffff;
    padding: 5px 20px;
    font-size: 0.9rem;
    transition: all 0.3s ease;
    text-decoration: none;
}

.btn-white-bar:hover {
    background: #ffedf7;
    color: #ee21a1 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

@media (max-width: 768px) {
    .sticky-registration-bar {
        width: 95%;
        border-top-left-radius: 8px;
        border-top-right-radius: 8px;
        padding: 10px 15px;
    }

    .sticky-registration-bar p {
        font-size: 0.9rem;
        margin-bottom: 8px !important;
    }

    .btn-white-bar {
        padding: 4px 15px;
        font-size: 0.8rem;
    }
}

@media (max-width: 575px) {
    .sticky-registration-bar {
        width: 100%;
        border-top-left-radius: 0;
        border-top-right-radius: 0;
    }
}