/* Dark Theme Styles */

/* Color Variables */
:root {
	
	--primary-color: #ff4895;
	--primary-color-hover: #ff4895; /* Darker shade for hover */
	
    --neutral-800: #13111a;
    --neutral-700: #302c3f;
    --neutral-600: #5e5b71;
    --neutral-500: #88849c;
    --neutral-400: #b7b4c7;
    --neutral-300: #d9d7e6;
    --neutral-200: #f5f4fa;
    --neutral-100: #ffffff;

    --secondary-1: #ff4895; /* Example primary color */
    --secondary-2: #6e4fe9; /* Example secondary color */
    --secondary-3: #1766ff; /* Example tertiary color */
    --secondary-4: #2d42ff; /* Example quaternary color */
    --secondary-5: #1d1a27; /* Example quinary color */
	
	--bs-primary: #ff4895 !important; /* Custom primary color */
    --bs-secondary: #6e4fe9; /* Custom secondary color */
    --bs-nav-link-color: #ffffff !important; /* Custom nav link color */

    --facebook:#3b5998;
	--twitter :#47c0d8;
	--google-plus:#ce482b;
	--linkedin:#0073B2;
	--youtube :#b72d24;
	--instagram :#e95950;
	--pinterest :#e60023;
	--whatsapp :#7bbf6a;
	
    --stop-color: #6e4fe9;

    --contrast-color:var(--neutral-100);
    --surface-color: var(--neutral-800);
    --accent-color: #ff4895; /* Accent color for highlights */

	--default-font: "Open Sans", sans-serif;
	--nav-font: "Montserrat", sans-serif;
	--heading-font: "Raleway", sans-serif;
}

/* Typography */
body {
    background-color: var(--neutral-800);
    color: var(--neutral-400);
    font-family: var(--default-font);
    font-size: 18px;
    line-height: 1.667em;
}

h1, h2, h3, h4, h5, h6 {
    color: var(--neutral-100);
    margin-bottom: 20px;
}

h1 {
    font-size: 60px;
    font-weight: 700;
}

h2 {
    font-size: 44px;
    font-weight: 700;
}

h3 {
    font-size: 24px;
    font-weight: 700;
}

p {
    margin-bottom: 20px;
}

/* Display Styles */
.display-1 {
  font-size: 78px;
  line-height: 1.077em;
}

.display-2 {
  font-size: 68px;
  line-height: 76px;
}

.display-3 {
  font-size: 32px;
  line-height: 36px;
}

/* Heading Styles */
h1 {
  font-size: 60px;
  font-weight: 700;
  margin-bottom: 20px;
}

h2 {
  font-size: 44px;
  font-weight: 700;
  margin-bottom: 15px;
}

h3 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
}

h4 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 12px;
}

h5 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 10px;
}

h6 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 8px;
}

/* Paragraph Styles */
p {
  margin-bottom: 20px;
}

.paragraph-large {
  font-size: 24px;
  line-height: 1.583em;
}

.paragraph-small {
  font-size: 15px;
  line-height: 1.6em;
}

/* Link Styles */
a {
  color: var(--neutral-100);
  text-decoration: underline;
  transition: color .3s;
}

a:hover {
  color: var(--secondary-1);
}

@media screen and (max-width: 991px) {
    .display-1 {
      font-size: 50px; /* Adjusted for tablet */
    }
    
    .display-2 {
      margin-bottom: 10px;
    }
    
    .display-3 {
      font-size: 26px; /* Adjusted for tablet */
      line-height: 36px; /* Adjusted for tablet */
    }
    
    .display-4 {
      font-size: 18px; /* Adjusted for tablet */
      line-height: 24px; /* Adjusted for tablet */
    }

    h1 {
        font-size: 50px;
        margin-bottom: 20px;
    }

    h2 {
        font-size: 37px;
    }

    .button-primary {
        padding: 20px 32px;
    }

    .card {
        padding: 40px 25px;
    }
  }
  
  @media screen and (max-width: 767px) {
    .display-1 {
      font-size: 38px; /* Adjusted for phone */
      line-height: 1.2em; /* Adjusted for phone */
    }
    
    .display-2 {
      font-size: 31px; /* Adjusted for phone */
    }
    
    .display-3 {
      font-size: 20px; /* Adjusted for phone */
    }
    
    .display-4 {
      font-size: 18px; /* Adjusted for phone */
    }

    h1 {
        font-size: 35px;
    }

    h2 {
        font-size: 31px;
    }

    .button-primary {
        padding: 15px 28px;
    }

    .card {
        padding: 28px 20px;
    }
  }

/*---------- Media Queries for Responsiveness ----------*/
@media (max-width: 768px) {
  body {
    font-size: 0.9rem; /* Adjust font size for smaller screens */
  }

  .container {
    padding: 0 15px;
  }
}

/*---------- Container Styles for Large Screens ----------*/
@media (min-width: 769px) {
  .container {
    max-width: 1600px; /* Max width for large screens */
    margin: 0 auto; /* Center the container */
    padding: 0 15px; /* Padding for container */
  }
  
  .container-small {
    padding: 0 15px !important;
    max-width: 80% !important;
    margin: 0 auto;
	}
}


/* Override Bootstrap colors */

/* Primary Colors */
.primary-bg {
    background-color: var(--primary-color) !important; /* Change to your desired primary background color */
}

.primary-text {
    color: #ffffff !important; /* Change to your desired primary text color */
}

.primary-border {
    border-color: var(--primary-color) !important; /* Change to your desired primary border color */
}

.btn-primary {
	border: 0;
    background-color: var(--primary-color) !important; /* Change to your desired primary button background color */
    color: #ffffff !important; /* Change to your desired primary button text color */
}

.text-primary {
    color: var(--primary-color) !important; /* Change to your desired primary text color */
}

/* Secondary Colors */
.secondary-bg {
    background-color: var( --secondary-2) !important; /* Change to your desired secondary background color */
}

.secondary-text {
    color: #ffffff !important; /* Change to your desired secondary text color */
}

.secondary-border {
    border-color: var(--secondary-2) !important; /* Change to your desired secondary border color */
}

.btn-secondary {
	border: 0;
    background-color: var(--neutral-700) !important; 
    color: #ffffff !important; 
}

.btn-primary:hover {  
    transform: scale3d(1.04, 1.04, 1.01);
}
.btn-secondary:hover {  
    color: var(--neutral-100);
    transform: scale3d(1.04, 1.04, 1.01);
}

.section {
	padding-top: 6rem;
    padding-bottom: 6rem;
}

.py-24 {
    padding-top: 6rem;
    padding-bottom: 6rem;
}

/* Multi-color Buttons */

    /* General styles for both headers */

header {
    position: absolute; /* Fix the header at the top */
    top: 0 !important;
    width: 100%;
    height: 100px;
    background-color: transparent !important;
    z-index: 4;
    display: flex !important;
    align-items: center; /* Vertically center the content */
    justify-content: space-between;
    padding: 0 20px;
  }

.logo {
  width: 45px;
  max-width: 45px;
  margin-right: 10px;
}

.logo-text {
  font-family: 'Poppins', sans-serif;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.05em; /*letter-spacing: 0.1em;*/
  line-height: 35px;
  vertical-align: middle;
  text-transform: uppercase;
  color: var(--neutral-100);
}

body {
    padding-top: 100px; /* Ensure content is not hidden behind the fixed header */
}

/* Offcanvas Menu Styles */
.offcanvas {
    width: 100%;
}

.offcanvas-header .btn-close {
    position: absolute;
    top: 10px;
    right: 10px;
}

/*-------------------------------------------------------------- 
# Navigation Menu 
--------------------------------------------------------------*/
.navbar{
    height: 100%;
}

.navbar-nav {
  font-family: var(--nav-font);
  
}

.navbar-nav > li {
  padding-left: 15px;
  /* Increased spacing between menu items */
  padding-right: 15px;
}

/*
.navbar-nav > li > a {
  color: var(--nav-color);
}
  */
.navbar-nav > li > a {
  
  /* Change to your theme color */
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
  transition: color 0.3s ease, border-bottom 0.3s ease;
  color: var(--neutral-400);
}

.navbar-nav > li > a:hover,
.navbar-nav > .active > a {
  color: var(--nav-hover-color);
  /* Change to your theme color */
  transform: scale(1.1);
  /* Scale the text to 110% on hover */
  border-bottom: 0px solid var(--nav-hover-color);
  /* Optional: Add a border on hover */
}



.hero-banner {
    min-height: calc(100vh - 100px);
            display: flex;
            justify-content: center;
            align-items: center;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        .hero-banner h1 {
            font-size: 78px;
            font-weight: bold;
        }
        .hero-banner h1 span {
            -webkit-text-fill-color: transparent;
            background-image: linear-gradient(270deg, #4f56ff, #ff4980);
            -webkit-background-clip: text;
            background-clip: text;
        }
 

   .buttons-wrapper {
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    gap: 20px; /* Add space between items */
    margin-bottom: -15px;
    margin-right: -24px;
    display: flex;
}

.button-primary-gradient {
    transform-style: preserve-3d;
    background-image: linear-gradient(to right, #6f86ff, #b372ce 49%, #ff7586);
    border-radius: 10000px !important;
    padding: 2px;
    transition: transform .3s;
    display: inline-block;
    transform: scale3d(1, 1, 1.01);
    box-shadow: 0 3px 7px #13111a24;
}

.button-primary-gradient .two-buttons {
    margin-bottom: 15px;
    margin-right: 28px;
}

.button-primary-gradient:hover {
    transform: scale3d(1.04, 1.04, 1.01);
}

.button-primary {
    background-color: var(--neutral-600) !important;
    color: var(--neutral-100) !important;
    text-align: center;
    letter-spacing: .01em;
    border-radius: 1000px !important;
   
}

.button-primary:hover {
    color: var(--neutral-100);
}



.w-button {
    color: #fff;
    line-height: inherit;
    cursor: pointer;
   
    border: 0;
    border-radius: 0;
    padding: 9px 15px;
    text-decoration: none;
    display: inline-block;

    padding: 22px 56px !important;
    font-size: 18px;
    line-height: 1.111em;
    font-weight: 700;
}

.button-secondary {
    background-color: var(--neutral-800);
    color: var(--neutral-100);
    text-align: center;
    letter-spacing: .01em;
    transform-style: preserve-3d;
    border-radius: 1000px;
   
    transition: transform .3s, background-color .3s;
    transform: scale3d(1, 1, 1.01);
}

.button-secondary .two-buttons {
    margin-bottom: 15px;
}

a:active,a:hover {
    outline: 0;
}

a:hover {
    color: var(--secondary-1);
}

/*Breadcrumb
------------------------------------*/
.breadcrumb {
    top: 10px;
    padding-right: 0;
	padding-left: 0;
    background: none;
    position: relative;
	color: var(--neutral-400);
}

ol.breadcrumb li {
    display: inline !important;
    margin: 0px;
    padding: 2px 10px 0px 0px;
    font-family: "Raleway", Arial, sans-serif;
	color: var(--neutral-400);
}

ol.breadcrumb li a, ol.breadcrumb li a:link, ol.breadcrumb li a:visited{
    display: inline;
    margin: 0px;
    padding: 2px 0px 0px 0px;
    font-family: "Raleway", Arial, sans-serif;
    color: var(--neutral-400);
    text-decoration: none;
}

ol.breadcrumb li a:hover{
    color: var(--primary-color) !important;   
}

ol.breadcrumb i {
    margin-left: 10px;
    margin-right: 10px;
}

.breadcrumb>li+li::before {
    color: var(--primary-color) !important;
    content: "\f105";
    font-family: FontAwesome;
	margin-right: 5px;
}

/*---------- Styles for Scroll Up ----------*/
.back-to-top {
    position: fixed;
    bottom: 20px !important;
    right: 20px !important;
    display: none;
    width: 50px; /* Set width */
    height: 50px; /* Set height */
    background-color: var(--primary-color);
    border-radius: 50%; /* Make the button fully rounded */
    text-align: center;
    display: flex; /* Use Flexbox for centering */
    align-items: center; /* Center items vertically */
    justify-content: center; /* Center items horizontally */
    color: #fff;
    transition: background-color 0.3s ease; /* Smooth transition for hover effect */
    z-index: 9999; /* Ensure it stays on top of other elements */
}

.back-to-top:hover {
    background-color: var(--primary-color-hover); /* Change to hover color */
    color: #fff; /* Ensure text color remains white */
}

.customer-service{
    position:fixed;
    z-index:999;
    right:20px;
    bottom:80px;	
}
.customer-service .item{
    cursor:pointer;
    margin-top:8px;
    width:50px;
    height:50px;
    background-color: var(--primary-color);
    border-radius: 50%; /* Make the button fully rounded */
    text-align:center;
    -webkit-transition:.3s;
    -o-transition:.3s;
    transition:.3s;
    position:relative;    
    -webkit-box-sizing:border-box;
    box-sizing:border-box;
    -webkit-box-shadow:0 4px 8px rgba(0,0,0,.02);
    box-shadow:0 4px 8px rgba(0,0,0,.02);
}
.customer-service .item .fa{
    display:block;
    position:absolute;
    top:50%;
    width:100%;
    -webkit-transform:translateY(-50%);
    transform:translateY(-50%);
    font-size:24px;
    color:#fff;
    -webkit-transition:.3s;
    -o-transition:.3s;
    transition:.3s;
}
.customer-service .item .message{
    position:fixed;
    right:70px;    
    padding-right:14px;    
	z-index:100;
	display:none;
	color: #000;
}
.customer-service .item .message .message-warp{
    -webkit-box-shadow:0 4px 8px rgba(0,0,0,.02);
    box-shadow:0 4px 8px rgba(0,0,0,.02);
    border:1px solid #e9e9e9;
    background:#fff;
    border-radius:6px;
    padding:8px 16px 8px;
    text-align:left;
}
.customer-service .item .message .message-warp h5{
    font-size:14px;
    color:#000;
    line-height:24px;
    margin:0 0 7px;
    font-weight:400;
}
.customer-service .item .message .message-warp p{
    margin:0;
    font-size:12px;
    line-height:24px;
    white-space:nowrap;
    color:#8c8889;
}
.customer-service .item .message .message-warp p a{
    color:#8c8889;
    -webkit-transition:.3s;
    -o-transition:.3s;
    transition:.3s;
}
.customer-service .item .message .message-warp p a:hover{
    color:var(--primary-color);
    text-decoration:underline
}
.customer-service .item:hover{
    background-color:var(--primary-color);
    border-color:var(--primary-color);
	
}
.customer-service .item:hover .iconfont{
    color:#fff;
}
.customer-service .item:hover .message{
    display:block;
}
.customer-service #back-to-top{
    display:none;
}



.button-secondary:hover {
    background-color: var(--secondary-5);
    color: var(--neutral-100);
    transform: scale3d(1.04, 1.04, 1.01);
}

.text-accent {
    -webkit-text-fill-color: transparent;
    background-image: linear-gradient(270deg, #4f56ff, #ff4980);
    -webkit-background-clip: text;
    background-clip: text;
}


.featured-message-content {
    justify-content: center;
    align-items: center;
    display: inline-block;
    position: relative;
}

.featured-message-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    border-radius: 20px;
    background: linear-gradient(to right, #ff3868, #714dff);
    filter: blur(10px);
    margin: -10px; /* Adjust the margin to create the shadow effect */
}

.featured-message-link {
    z-index: 1;
    background-color: var(--neutral-800);
    letter-spacing: .02em;
    border: 1px solid #ffffff36;
    border-radius: 100000px;
    align-items: center;
    padding: 6px 32px 6px 6px;
    font-size: 16px;
    line-height: 1.125em;
    text-decoration: none;
    display: flex;
    position: relative;
}

.featured-message-link :hover {
    color: var(--neutral-100);
}

.featured-message-tag {
    background-color: var(--neutral-700);
    letter-spacing: .04em;
    text-transform: uppercase;
    border-radius: 50px;
    margin-right: 10px;
    padding: 8px 14px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.286em;
}

.featured-message-text {
    color: var(--neutral-100);
    font-size: 16px;
    line-height: 1.125em;
}

.featured-message-icon {
    margin-left: 6px;
    font-family: Icons Dark Template, sans-serif;
    font-size: 11px;
    font-weight: 400;
}


.card {
    background-color: #1d1a27a3;
    border: 1px solid #ffffff29;
    justify-content: center;
    padding: 60px 35px;
    display: flex;
    box-shadow: 0 14px 74px #00000073;
}

.card-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
}

.icon-circle {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 15px;
    background-color: rgba(255, 255, 255, 0.1); /* Adjust as needed */
}

.icon-gradient {
    background: linear-gradient(to right, #ff3868, #714dff);
    -webkit-background-clip: text;
    color: transparent;
    font-size: 2rem;
}



.table-dark2 {
    background-color: var(--secondary-5) !important;
  }

.table-dark2 tr:nth-child(even) {
    background-color: var(--secondary-5) !important;
}

.table-dark2.table-bordered {
    border: none;
}

.table-dark2.table-bordered th,
.table-dark2.table-bordered td {
    border: none;
    padding: 20px; /* Increase padding */
}

.table-dark2.table-bordered tr {
    border-bottom: 5px solid var(--neutral-800); /* Add bottom border for each row */
}

        .primary-text {
            color: rgb(232, 255, 56); /* Primary color */
        }
        .secondary-text {
            color: rgb(0, 255, 211); /* Secondary color */
        }
        .week-title {
            font-size: 1.75rem;
            font-weight: bold;
        }
        .date-range {
            font-size: 0.9rem;
            color: #aaaaaa;
        }
        .badge {
            font-size: 1rem;
            font-weight: normal;
            margin: 2px;
            padding: 5px 10px;
        }
        .project-description {
    font-size: 1rem;
    color: #ccc;
}
.community-section {
    background-color: var(--secondary-5);    
    text-align: center;
}

.community-section h1 {
    font-size: 2.5rem;
    font-weight: bold;
    margin-bottom: 20px;
}

.community-section p {
    font-size: 1.25rem;
    margin-bottom: 0;
}
.gradient-button {
    background: linear-gradient(to right, #ff3868, #714dff);
    border: none;
    color: white;
    padding: 10px 20px;
    font-size: 1.25rem;
    border-radius: 50px;
    text-transform: uppercase;
    transition: background 0.3s ease;
}

.gradient-button:hover {
    background: linear-gradient(to right, #714dff, #ff3868);
}