/* font for quotes  */
@import url('https://fonts.googleapis.com/css2?family=Lavishly+Yours&display=swap');

/* btn font  */
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');



/* text change  */
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400..900&display=swap');
@font-face {
  font-family: 'Mulish';
  src: url('../fonts/Mulish/Mulish-VariableFont_wght.ttf') format('truetype');
  font-weight: 100 900;
  font-style: normal;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;      /* optional for smooth scrolling */
  scroll-padding-top: 40px;     /* height of your navbar */
}


/* star bg  */



  

 

/* section color  */
section:nth-of-type(odd) {
  background: linear-gradient(90deg, #0d1b2a, #402844);
  color: white;
}

section:nth-of-type(even) {
  
  background: linear-gradient( 90deg, #0a0f1f, #3a2947);

  color: white;
}

section {
  
  padding: 80px 20px;
  transition: background 0.5s ease;
  
}
section{
  padding-top: 50px;
  padding-bottom: 50px;
}
.section-title {
  font-family: "Lavishly Yours", cursive;
  font-size: 5rem;
  text-align: center;
  padding-bottom: 70px;
  color: #E7E7E7; /* pure white */
  position: relative;
  user-select: none;
}


@media(max-width:786px){
  .section-title{
    padding-top: 50px;
    font-size: 3rem;
    padding-bottom: 50px;
  }
}
 






/* nav bar  */

/* === Your original navbar settings === */
.navbar {
  background-color: transparent;
  transition: background-color 0.5s ease;
  z-index: 1000;
  height: 60px;
  padding: 0;
}

.navbar.solid {
  background: rgba(16, 14, 14, 0.299); /* semi-transparent */
  backdrop-filter: blur(10px);       /* frosted glass blur */
  -webkit-backdrop-filter: blur(10px); /* Safari support */
  border-bottom: 1px solid rgba(255, 255, 255, 0.1); /* subtle edge */
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}


.navbar .nav-link {
  font-size: 1.1rem;
  font-weight: 600;
  color: white;
  margin: 0 6px;  
  transition: color 0.3s ease;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: #C57ED3;
  border-bottom: 1px solid #C57ED3;
}

.navbar.solid .nav-link {
  color: #000000;
}

@media (max-width: 586px) {
  .navbar {
    height: 50px;
  }
  .navbar .nav-link {
    font-size: 0.9rem;
  }
}

/* === New Ionicon-style animated nav buttons === */
.magic-navbar {
  gap: 25px;
}

.magic-navbar li {
  position: relative;
  list-style: none;
  width: 50px;
  height: 50px;
  /* background: white; */
  /* box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); */
  border-radius: 50px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.5s;
  border: none;
}

.magic-navbar li::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 60px;
  background: linear-gradient(45deg, var(--i), var(--j));
  opacity: 0;
  transition: 0.5s;
  border: none;
}

.magic-navbar li::after {
  content: "";
  position: absolute;
  top: 10px;
  width: 100%;
  height: 100%;
  border-radius: 60px;
  background: linear-gradient(45deg, var(--i), var(--j));
  filter: blur(15px);
  z-index: -1;
  opacity: 0;
  transition: 0.5s;
}

.magic-navbar li:hover {
  width: 180px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0);
}

.magic-navbar li:hover::before {
  opacity: 1;
}

.magic-navbar li:hover::after {
  opacity: 0.5;
}

.magic-navbar li a {
  width: 100%;
  height: 100%;
  border-radius: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  overflow: hidden;
  text-decoration: none;
  padding: 0;
}

.magic-navbar li a .icon ion-icon {
  color: #ffffff;
  font-size: 1.5em;
  transition: 0.5s;
  transition-delay: 0.25s;
}

.magic-navbar li:hover a .icon ion-icon {
  transform: scale(0);
  color: #ffffff;
  transition-delay: 0s;
}

.magic-navbar li a .title {
  font-family: "Poppins", sans-serif;
  position: absolute;
  color: #fff;
  font-size: 1em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transform: scale(0);
  transition: 0.5s;
  transition-delay: 0s;
}

.magic-navbar li:hover a .title {
  transform: scale(1);
  transition-delay: 0.25s;
}




/* start hero section */
.hero {
  height: 100vh;
  min-width: 98vw;
  background: 
    linear-gradient(rgba(0, 0, 0, 0.742), rgba(0, 0, 0, 0.781)), 
    url('https://ik.imagekit.io/santumondal/photography/hcl.jpg?updatedAt=1754664966796') no-repeat center center !important;
    background-size: 100% auto;
  background-size: cover !important;
  background-position: center !important;
   display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding: 0 1rem;
}

.hero-content {
  position: relative;
  z-index: 1;
  max-width: 900px;
  padding: 20px;
}

.hero h1 {
  font-family: 'Playfair Display', serif;
  letter-spacing: 2px ;
  font-size: 5rem; /* Bigger font */
  font-weight: 600;
  margin-bottom: 1rem;
  color: #fff;
}

.tagline {
  padding-bottom: 40px;
  font-family: "Lavishly Yours", cursive;
  font-size: 4.2rem;
  font-weight: 400;
  background: linear-gradient(
    90deg,
    #fff9c4,  /* light yellow */
    #ffe0b2,  /* soft peach */
    #f8bbd0,  /* light pink */
    #c5cae9,  /* lavender */
    #b60bff   /* light aqua */
  );
  background-size: 300% 300%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-bottom: 1.5rem;
  letter-spacing: 3px;
  animation: gradientMove 6s ease infinite;
}

@keyframes gradientMove {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}





/* text animation  */

.text-chanege {
  font-family: "Cinzel", serif;
  height: 50px;
 padding: 10px;
 border-radius: 8px;
 display: flex;
   /* align-items: center; */
  justify-content: center; 
 color: #ffffff;
 font-size: 2rem;
  font-weight: 600;
 box-sizing: content-box;
 text-transform: unset !important;
}
.intro-text{
  margin-top: -2px;
}
.roles-container {
  padding-left: 20px;
overflow: hidden;
position: relative;
}
.role{
  height: 100%;
  padding-left: 6px;
  color: rgb(255, 200, 0);
  animation: role-change 5s  infinite;

}
@keyframes role-change {
  100% { transform: translateY(-102%); }
  25% { transform: translateY(-100%); }
  35% { transform: translateY(-202%); }
  50% { transform: translateY(-200%); }
  60% { transform: translateY(-302%); }
  75% { transform: translateY(-300%); }
  85% { transform: translateY(-402%); }
  100% { transform: translateY(-400%); }
}
  

/* Responsive Font Scaling */
@media (max-width: 768px) {
  .text-chanege {
    font-size: 1.5rem;
    padding: 8px;
  }

  .roles-container {
    height: 1.8rem;
    padding-left: 15px;
  }

  .intro-text {
    margin-right: 5px;
  }
}

@media (max-width: 576px) {
  .text-chanege {
    font-size: 1.2rem;
    height: 1.3rem;
    text-align: center;
  }

  .intro-text {
    margin-bottom: 5px;
  }

  .roles-container {
    height: 1.9rem;
    padding-left: 10px;
  }
}



.social-icons {
  margin-top: 1.5rem;
}

.social-icons a {
  margin: 10px 15px;
  font-size: 2rem; /* Bigger icons */
  color: #fff;
  transition: color 0.3s ease;
}

.down-arrow-a {
  text-decoration: none;
  display: flex;
  justify-content: center;
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  z-index: 2;
}

.down-arrow {
  color: #ffffff;
}


@media (max-width: 768px) {
  .hero {
      background: 
    linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.566)), 
    url('https://ik.imagekit.io/santumondal/photography/hcm.jpg?updatedAt=1754664966345') no-repeat center center !important;
      background-size: 100% auto;
  background-size: cover !important;
  background-position: center !important;
    height: 100vh;
    padding: 3rem 1rem;
    background-position: center top;
    flex-direction: column;

  }

  .hero h1 {
    font-size: 2.5rem;
  }

  .tagline {
    font-size: 2.5rem;
  }

  .quote {
    font-size: 1rem;
  }

  .social-icons a {
    font-size: 1.5rem;
    margin: 0 10px;
  }

  .hero-content {
    padding: 10px;
  }
}

@media (max-width:586px) {

  .hero-content {
    padding-top: 30%;
  }
  .social-icons{
    padding-top: 50px;
  }
}


/* end hero section */





/* btn  */

.btn-div {
  padding-top: 80px !important;
  padding-bottom: 60px !important;
  display: flex;
  justify-content: center; /* horizontal center */
  align-items: center;     /* vertical center */
  text-decoration: none !important;
}
.btn-div a{
  text-decoration: none !important;
}

@media (max-width:576px) {
  .btn-div{
      padding-top: 50px !important;
      padding-bottom: 40px !important;
  }
}


.ui-btn {
  
  cursor: pointer;
  border-radius: 5px;
  color: rgb(219, 218, 218);
  border-style: solid;
  background-color: transparent;
  border-color: rgb(219, 218, 218);
  width: 200px;
  height: 50px;
  transition: 0.2s ease;
  font-family: "Poppins", sans-serif;
  /* text-transform: uppercase; */
  border-width: 2px;
  font-weight: 500;
  font-size: 18px;
  letter-spacing: 2px;
}
.ui-btn:hover {

  background-color: rgb(42, 145, 73);
  border-color: rgb(42, 145, 73);
  text-shadow: 0 0 50px white, 0 0 20px white, 0 0 15px white;
  box-shadow: 0 0 50px rgb(42, 145, 73), 0 0 30px rgb(42, 145, 73),
    0 0 60px rgb(42, 145, 73), 0 0 120px rgb(42, 145, 73);
  font-size: 20px;
  transform: scale(1.2);
  letter-spacing: 3px;
}
.ui-btn:active {
  width: 115px;
  height: 38px;
  letter-spacing: 0px;
}


/* gallery  */


.gallery {
  column-count: 3;
  column-gap: 1em;
}
@media (max-width: 1000px) {
  .gallery { column-count: 2; }
}
@media (max-width: 600px) {
  .gallery { column-count: 1; }
}

/* Photo block */
.photo {
  position: relative;
  margin-bottom: 1em;
  break-inside: avoid;
  overflow: hidden;
  cursor: pointer;
}
.photo img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  transition: transform 0.3s ease;
}
/* full screen  */
    .image-container {
      position: relative;
      display: inline-block;
      
      overflow: hidden;
    }

    .image-container img {
      display: block;
      width: 100%;
      height: auto;
      max-width: 100%;
    }

 .overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;  /* Match image width */
  height: 100%; /* Match image height */
  background-color: rgba(0, 0, 0, 0.5);
  color: white;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  padding: 10px;
  
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 10;
  pointer-events: none; /* Allows clicking through overlay */
}

    .photo:hover .overlay {
      opacity: 1;
    }
    .photo:hover img{
      transform: scale(1.2);
    }

    .photo .overlay i{
      
      background: none;
      border: none;
      color: rgb(226, 226, 226);
      font-size: 30px;
      cursor: pointer;
    }

.modal-content {
  background-color: transparent;
}
body.modal-open {
  overflow: hidden;
}
.modal-content {
  background-color: #0000004c;
  border: none;
  border-radius: 0;
}



.btn-close {
  z-index: 1056; /* above modal content */
  font-size: 1.5rem;
}


.modal-dialog {
  margin: 0;
  max-width: 100%;
}

.modal-body {
  padding: 0;
}

#modalImage {
  width: 90%;
  height: 90vh;
  object-fit: contain;
}
@media (max-width: 768px) {
  #modalImage {
    width: 100%;
    height: 100%;
  }
}

/* btn  */
.photos  .ui-btn:hover {
  color: rgb(247, 247, 247);
  background: linear-gradient(45deg, #f58529, #dd2a7b, #8134af);
  border-color: transparent;
  text-shadow: 0 0 50px white, 0 0 20px white, 0 0 15px white;
  box-shadow: 0 0 50px rgba(221, 42, 123, 0.8), 
              0 0 30px rgba(221, 42, 123, 0.6),
              0 0 60px rgba(129, 52, 175, 0.7), 
              0 0 120px rgba(245, 133, 41, 0.6) !important;
  font-size: 20px;
  transform: scale(1.2);
  letter-spacing: 3px;
}


/* videoo  */


/* Container Card */
.video-card {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9 aspect ratio (9/16 = 0.5625) */
  background: #000;
  overflow: hidden;
  cursor: pointer;
  transition: transform 0.3s ease;
  border-radius: 10px;
}

.video-card:hover {
  transform: scale(1.05);
}

/* Embedded YouTube iframe */
.video-card iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 10px;
}

/* Responsive Grid (optional, if not using Bootstrap) */
.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -8px;
  margin-right: -8px;
  align-items: center;
  justify-content: center;
}
.col-10, .col-md-4, .col-md-5 {
  padding-left: 8px;
  padding-right: 8px;
  margin-bottom: 20px;
  box-sizing: border-box;
}


/* btn  */
.youtube-video-section .ui-btn:hover {
  color: rgb(247, 247, 247);
  background-color: #ff0000; /* YouTube Red */
  border-color: #ff0000;
  text-shadow: 0 0 50px white, 0 0 20px white, 0 0 15px white;
  box-shadow: 0 0 50px rgba(255, 0, 0, 0.8),
              0 0 30px rgba(255, 0, 0, 0.6),
              0 0 60px rgba(255, 0, 0, 0.7),
              0 0 120px rgba(255, 0, 0, 0.6);
  font-size: 20px;
  transform: scale(1.2);
  letter-spacing: 3px;
}

/* short videos  */
/* <!-- YouTube Shorts Section -- */



/* Layout */
.shorts-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

/* Scroll Area */
.scroll-x {
  display: flex;
  gap: 20px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 10px 40px; /* Leave space for buttons */
  scroll-snap-type: x mandatory;
}
.scroll-x::-webkit-scrollbar {
  display: none;
}
.scroll-x {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

/* Each Card */
/* .short-card {
  flex: 0 0 auto;
  width: 200px;
  scroll-snap-align: start;
  text-align: center;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
} */
@media (min-width:786px) {
  .shorts-card {
    
  position: relative;
  overflow: hidden;
  transition: transform 0.3s ease;
}

.shorts-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.2) 50%,
    rgba(255, 255, 255, 0) 100%
  );
  transform: skewX(-20deg);
}

.shorts-card:hover {
  transform: scale(1.05);
}

.shorts-card:hover::before {
  animation: shine 1s ease;
}

@keyframes shine {
  0% { left: -75%; }
  100% { left: 125%; }
}

}
.short-card iframe {
  width: 100%;
  aspect-ratio: 9 / 16;
  border-radius: 12px;
  border: none;
  background: #000;
}


/* Scroll Buttons */

.scroll-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  background-color: rgba(0,0,0,0.6);
  color: white;
  border: none;
  border-radius: 50%;
  font-size: 24px;
  width: 40px;
  height: 40px;
  cursor: pointer;
 
}
.scroll-btn:hover{
  background-color: #ffffff;
  color: #ff0000;
}
.scroll-btn.left {
  left: 0;
}
.scroll-btn.right {
  right: 0;

}

@media (min-width:786px) {

  .scroll-btn.left {
  left: 0;
  transform: translateX(-50px);
}
.scroll-btn.right {
  right: 0;
  transform: translateX(50px);
}
}
@media (max-width:576px) {

  .scroll-btn.left {
  left: 0;
  transform: translateX(-15px);
}
.scroll-btn.right {
  right: 0;
  transform: translateX(15px);
}
}
.shorts-card {
  flex: 0 0 auto;
  width: 270px;
  aspect-ratio: 9/16;
  border-radius: 12px;
  background-color: #000;
  overflow: hidden;
}
.shorts-card iframe {
  width: 100%;
  height: 100%;
  border: none;
}
@media (max-width:576px) {
  .shorts-card{
    width: 240px;
  }
}
/* btn  */
.shorts-video-section .ui-btn:hover {
  color: rgb(247, 247, 247);
  background: linear-gradient(45deg, #ff0000, #ff4d4d, #ff0000);
  border-color: transparent;
  text-shadow: 0 0 50px white, 0 0 20px white, 0 0 15px white;
  box-shadow: 0 0 50px rgba(255, 0, 0, 0.8),
              0 0 30px rgba(255, 77, 77, 0.6),
              0 0 60px rgba(255, 0, 0, 0.7),
              0 0 120px rgba(255, 0, 0, 0.6);

}


/* footer  */
footer{
  padding-top: 100px;
  padding-bottom: 50px;
    background: 
    linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.7)), 
    url('https://ik.imagekit.io/santumondal/photography/foot.jpg?updatedAt=1754664971029') no-repeat center center;
  background-size: cover;
  background-position: center;

}
footer .row{
  padding-bottom: 50px;
}
footer a{
  text-decoration: none;
}
.footer-link {
  transition: color 0.3s ease, text-decoration 0.3s ease;
}
/* * Vertical Sidebar Social Icons */ */
.social-links {
  margin-left: 40px;
  display: flex;
  flex-direction: row;  /* Vertical stacking */
  gap: 10px;               /* Space between icons */
}

.social-links a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  width: 60px;
  background: #fff;
  color: #333;
  border-radius: 50%;
  text-decoration: none;
  overflow: hidden;
  border: 2px solid #fff;
  transition: all 0.3s ease;
  z-index: 1;
}

/* Icon inside */
.social-links a i {
  position: relative;
  font-size: 32px;
  z-index: 3;
  transition: transform 0.5s, color 0.5s;
}

/* Hover: rotate icon and change color */
.social-links a:hover i {
  color: #fff;
  transform: rotateY(360deg);
}

/* Background slide-in on hover */
.social-links a::before {
  content: "";
  position: absolute;
  top: 100%; /* initially hidden below */
  left: 0;
  width: 100%;
  height: 100%;
  background: red; /* fallback */
  transition: top 0.5s;
  z-index: 2;
}

.social-links a:hover::before {
  top: 0; /* slides in from bottom */
}

/* Custom background for each platform */
.social-links a:nth-child(1)::before {
  background: #1877F2; /* Facebook */
}

.social-links a:nth-child(2)::before {
  background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888); /* Instagram */
}

.social-links a:nth-child(3)::before {
  background: #0077b5; /* LinkedIn */
}

.social-links a:nth-child(4)::before {
  background: #ff0000; /* YouTube */
}


/* icon hover color change  */

.fa-facebook-f:hover ,.fa-facebook:hover,.fa-envelope:hover{
  color: #1877F2;
  transform: scale(1.2);  /* 1.2 = 120% size */
  transition: all 0.3s ease;  /* Smooth animation */
}

.fa-linkedin-in:hover ,.fa-square-linkedin:hover , .fa-linkedin:hover{
  color: #0077b5;
  transform: scale(1.2);  /* 1.2 = 120% size */
  transition: all 0.3s ease;  /* Smooth animation */
}
.fa-orcid:hover{
  color: #1aba04;
  transform: scale(1.2);  /* 1.2 = 120% size */
  transition: all 0.3s ease;  /* Smooth animation */
}
.fa-x-twitter:hover,.fa-threads:hover{
  color:#000;
  transform: scale(1.2);  /* 1.2 = 120% size */
  transition: all 0.2s ease;  /* Smooth animation */
}
.fa-instagram:hover , .fa-youtube:hover{
color :#ff0026;
transform: scale(1.2);  /* 1.2 = 120% size */
  transition: all 0.3s ease;  /* Smooth animation */
}



