@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

:root {
    --purple: #4B0082;
    --light: #f8f9fa;
}

* {
    box-sizing: border-box
}

body {
    font-family: 'Poppins', sans-serif;
    scroll-behavior: smooth;
    margin: 0;
    padding-top: 70px;
    background: var(--light);
    color: #222
}
:root {
  --primary: #2e0f6e; /* your brand color on scroll */
}

:root {
  --primary: #2e0f6e;
  --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);
}

/* Main navbar */
.navbar {
  background: #fff;
  transition:
    background-color 0.4s var(--default-transition-timing-function),
    box-shadow 0.4s var(--default-transition-timing-function),
    padding 0.3s var(--default-transition-timing-function);
  z-index: 1030;
  padding: 10px 0;
}

/* Navbar brand (logo) */
.navbar-brand {
  display: flex;
  align-items: center;
  gap: 10px;
}

.navbar-brand img {
  height: 65px;
  width: auto;
  transition: transform 0.4s var(--default-transition-timing-function);
}

/* Nav links */
.navbar .nav-link {
  color: var(--primary) !important;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin: 0 8px;
  transition: color 0.3s var(--default-transition-timing-function);
}

.navbar .nav-link:hover {
  color: #e32636 !important;
}

/* CTA button */
.navbar .btn-outline-light {
  background: #e32636;
  color: #fff !important;
  border: none;
  font-weight: 700;
  border-radius: 8px;
  padding: 8px 18px;
  transition:
    background 0.3s var(--default-transition-timing-function),
    color 0.3s var(--default-transition-timing-function);
}

.navbar .btn-outline-light:hover {
  background: #c41f2e;
  color: #fff;
}

/* Scroll state */
.navbar.scrolled {
  background: #fff !important;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
}

.navbar.scrolled .nav-link {
  color: var(--primary) !important;
}


/* Navbar toggler icon (white → dark on scroll) */
.navbar-toggler {
  border: none;
  outline: none;
}

.navbar-toggler-icon {
  width: 30px;
  height: 22px;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='%23ffffff' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>");
  transition: background-image 0.3s var(--default-transition-timing-function);
}

.navbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='%23000' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>");
}

/* Responsive */
@media (max-width: 991px) {
  .nav-link, .nav-item {
    text-align: right;
    padding: 10px 0;
  }
}


#header-main.hero-overlay h1,
#header-main.hero-overlay h2,
#header-main.hero-overlay p {
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.5);
}

.section-title {
    color: var(--purple);
    font-weight: 700;
    margin-bottom: 1rem
}

#about {
    background-color: #f8f9fa;
    /* light gray for contrast */
}

#about img {
    max-width: 70%;
    /* default desktop/tablet size */
    height: auto;
    border-radius: 10px;
    display: block;
    margin: 0 auto;
    /* center horizontally */
}

/* Mobile view (smaller than 768px) */
@media (max-width: 767px) {
    #about img {
        max-width: 100%;
        /* increase size on mobile */
    }
}

.section-title {
    color: #4b0082;
    /* same indigo tone as your hero overlay */
    font-weight: 700;
}

.about-img {
    width: 60%;
    /* smaller width relative to column */
    max-width: 300px;
    /* optional cap */
    height: auto;
    /* keeps aspect ratio */
    border-radius: 10px;
}

.card {
    border-radius: 12px;
    border: 0;
    transition: transform .35s, box-shadow .35s
}

.card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 40px rgba(11, 10, 29, 0.12)
}




.btn-primary {
    background: var(--purple);
    border: 0;
    padding: 12px 28px;
    border-radius: 8px
}

.btn-outline-primary {
    border-color: var(--purple);
    color: var(--purple)
}

footer {
    /* color: white */
}

@media(min-width:992px) {
    header {
        min-height: 85vh
    }
}

#portfolio {
    background-image: url('./easylink_images/page1_img4.png');
    /* your background image */
    background-size: cover;
    /* cover entire section */
    background-position: center;
    /* center the image */
    background-repeat: no-repeat;
    /* prevent tiling */
    position: relative;
    padding: 80px 0;
}

/* Optional overlay for better text/card visibility */
#portfolio::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* dark overlay */
    z-index: 0;
}

/* Make container content above overlay */
#portfolio .container {
    position: relative;
    z-index: 1;
}

/* Optional: adjust card style for overlay contrast */
.portfolio-card {
    min-height: 350px;
    display: flex;
    flex-direction: column;
}

#stories {
    background-image: url('./easylink_images/page1_img8.png');
    /* your background image */
    background-size: cover;
    /* cover entire section */
    background-position: center;
    /* center the image */
    background-repeat: no-repeat;
    /* prevent tiling */
    position: relative;
    padding: 80px 0;
    height: auto;
}

#stories h1 {
    color: var(--purple);
    font-weight: 900;
    margin-bottom: 1rem
}

#projects {
    background-image: url('./easylink_images/project-bg.png');
    /* your background image */
    background-size: cover;
    /* cover entire section */
    background-position: center;
    /* center the image */
    background-repeat: no-repeat;
    /* prevent tiling */
    position: relative;
    padding: 80px 0;
    height: auto;
}

#projects h1 {
    color: var(--purple);
    font-weight: 900;
    margin-bottom: 1rem
}

/* -----------------------------
   PROJECTS SECTION
------------------------------*/

/* Card overlay style */

/* Card title */
#projects .overlay-card h3 {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 1rem;
  color: #000;
}

/* Card text */
#projects .overlay-card p {
  font-size: 1.1rem;
  line-height: 1.6;
  color: #000;
}

/* Links inside overlay */
#projects .overlay-card a {
  color: red;
  font-weight: 600;
  text-decoration: none;
  transition: color 0.2s ease;
}


/* Section heading */
#projects h1 {
    color: var(--purple);
    font-weight: 900;
    margin-bottom: 1rem
}

@media (max-width: 767px) {
    #projects .overlay-card  {
        max-height: 390px;
        /* increase size on mobile */
    }
}


.cleint_story {
    background-image: url('./easylink_images/client-bg.png');
    /* your background image */
    background-size: cover;
    /* cover entire section */
    background-position: center;
    /* center the image */
    background-repeat: no-repeat;
    /* prevent tiling */
    position: relative;
    padding: 80px 0;
    height: auto;
}

.cleint_story h6 {
    color: var(--purple);
    font-weight: 900;
    margin-bottom: 1rem
}

#sub-footer {
    background-image: url('./easylink_images/footer-bg.png');
    /* your background image */
    background-size: cover;
    /* cover entire section */
    background-position: center;
    /* center the image */
    background-repeat: no-repeat;
    /* prevent tiling */
    position: relative;
    padding: 80px 0;
    height: auto;
}


.download-btn {
    bottom: 20px;
    right: 20px;
    z-index: 1050;
    font-weight: 600;
    padding: 12px 20px;
    transition: all 0.3s ease;
  }

  .download-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 8px 18px rgba(220, 53, 69, 0.5);
  }

  /* Mobile adjustments */
  @media (max-width: 576px) {
    .download-btn {
      bottom: 15px;
      right: 15px;
      padding: 10px 14px;
      border-radius: 50px;
    }
    .download-btn span {
      display: none; /* Hide text on very small screens */
    }
    .download-btn i {
      font-size: 1.3rem;
    }
  }



   .btn-outline-light {
  background: #e32636;
  color: #fff !important;
  border: none;
  font-weight: 600;
  border-radius: 8px;
  padding: 8px 18px;
  transition:
    background 0.3s var(--default-transition-timing-function),
    color 0.3s var(--default-transition-timing-function);
}
 .btn-outline-light:hover {
  background: #c41f2e;
  color: #fff;
}

/* ======= Footer Styling ======= */
.footer {
  background: #0d1723;
  color: #fff;
  padding: 70px 0 30px;
  font-family: "Poppins", sans-serif;
}

.footer-title {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
  color: #fff;
}

.footer-contact li,
.footer-links li {
  list-style: none;
  margin-bottom: 10px;
  font-size: 15px;
  color: #d0d0d0;
}

.footer-contact li i {
  color: #ff4040;
  margin-right: 10px;
}

.footer-links li a {
  text-decoration: none;
  color: #d0d0d0;
  transition: 0.3s;
}

.footer-links li a:hover {
  color: #ff4040;
}

.footer-social a {
  display: inline-block;
  color: #fff;
  font-size: 18px;
  margin-right: 12px;
  transition: 0.3s;
}

.footer-social a:hover {
  color: #ff4040;
}

.newsletter-form {
  display: flex;
  gap: 10px;
  margin-top: 10px;
}

.newsletter-form input {
  flex: 1;
  padding: 10px;
  border-radius: 6px;
  border: none;
  background: #1c2733;
  color: #fff;
}

.newsletter-form button {
  background: #ff4040;
  border: none;
  padding: 10px 16px;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  transition: 0.3s;
}

.newsletter-form button:hover {
  background: #e53636;
}

.privacy-text {
  font-size: 12px;
  margin-top: 8px;
  color: #b5b5b5;
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: 40px;
  padding-top: 20px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

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

.footer-bottom-links a {
  color: #ccc;
  margin-left: 15px;
  font-size: 14px;
  text-decoration: none;
}

.footer-bottom-links a:hover {
  color: #ff4040;
}

@media (max-width: 768px) {
  .footer {
    text-align: center;
  }
  .newsletter-form {
    flex-direction: column;
  }
  .newsletter-form input {
    width: 100%;
  }
}