.scroll-animation-wrapper {
    position: relative;
    z-index: 1;
}
.scroll-animation.scroll-right-left {
    -webkit-animation: scroll 40s linear infinite;
    -moz-animation: scroll 40s linear infinite;
    animation: scroll 40s linear infinite;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
}
.scroll-animation.scroll-left-right {
    -webkit-animation: scrollLeft 40s linear infinite;
    -moz-animation: scrollLeft 40s linear infinite;
    animation: scrollLeft 40s linear infinite;
    -webkit-animation-fill-mode: forwards;
    -moz-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: forwards;
}

.scroll-animation {
    display: flex;
    width: -webkit-calc((420px * 16) + (30px * 16));
    width: -moz-calc((420px * 16) + (30px * 16));
    width: 7200px;
    position: relative;
}
.scroll-animation .single-column-20 {
    width: 376px;
    padding: 0 20px;
}
@-webkit-keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-webkit-calc(-250px * 7));
    transform: translateX(-1750px);
  }
}
@-moz-keyframes scroll {
  0% {
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -moz-transform: translateX(-moz-calc(-250px * 7));
    transform: translateX(-1750px);
  }
}
@keyframes scroll {
  0% {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-webkit-calc(-250px * 7));
    -moz-transform: translateX(-moz-calc(-250px * 7));
    transform: translateX(-1750px);
  }
}
@-webkit-keyframes scrollLeft {
  0% {
    -webkit-transform: translateX(-webkit-calc(-250px * 7));
    transform: translateX(-1750px);
  }
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}
@-moz-keyframes scrollLeft {
  0% {
    -moz-transform: translateX(-moz-calc(-250px * 7));
    transform: translateX(-1750px);
  }
  to {
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
@keyframes scrollLeft {
  0% {
    -webkit-transform: translateX(-webkit-calc(-250px * 7));
    -moz-transform: translateX(-moz-calc(-250px * 7));
    transform: translateX(-1750px);
  }
  to {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    transform: translateX(0);
  }
}
.typefooter-1 .scroll-animation .logo img {
  opacity: 0.1;
}
.rbt-testimonial-area {
  padding-top: 50px;
  padding-bottom: 80px;
}
.our-padd {
  padding-right: 150px;
  padding-left: 150px;
  border-bottom: 1px solid #fc5a4033;
  padding-bottom: 30px;
}
.phone .icon {
  font-size: 24px;
  color: #fc5c42;
  padding-right: 20px;
  padding-bottom: 20px;
}
.phone .socialicon {
  font-size: 24px;
  color: #000;
  padding-right: 30px;
  padding-bottom: 20px;
}
.phone .socialicon a { 
  color: #000;
}
.phone .number a{
  font-size: 20px;
  line-height: 20px;
  color: #000;
  font-weight: 600;
}
.new-content p {
  margin-bottom: 0px;
  line-height: 1.8;
  font-size: 18px;
}
.new-content {
  padding-bottom: 20px;
  min-height: 150px;
}
.head {
  padding-bottom: 20px;
}
.our-color {
  background: linear-gradient(0deg, rgb(255, 237, 216) 0%, rgba(255, 245, 225, 0) 100%);
}
.padding-top {
  padding-top: 40px!important;
}
.padding-bottom {
  padding-bottom: 40px!important;
}
.pading-botom {
  padding-bottom: 20px;
}
.footer-list li {
  line-height: 40px;
}
.footer-list li a {
  font-size: 18px;
}
.new-border {
  border-top: 1px solid #fc5a4033;
}
.just-btn {
  justify-content: space-between;
}
.pt-10 {
  padding-top: 10px!important;
}
.pb-10 {
  padding-bottom: 10px!important;
}
.pt-20 {
  padding-top: 20px!important;
}
.pb-20 {
  padding-bottom: 20px!important;
}
.pl-30 {
  padding-left: 30px!important;
}
.pr-30 {
  padding-right: 30px!important;
}
.pl-25 {
  padding-left: 25px!important;
}
.pr-25 {
  padding-right: 25px!important;
}
.pl-20 {
  padding-left: 20px!important;
}
.pr-20 {
  padding-right: 20px!important;
}
.pt-60 {
  padding-top: 60px!important;
}
.main-footer__copyright {
  font-size: 18px!important;
}
.border-btm {
  border-bottom: 1px solid #fc5a4033;
}
.head h3 {
  font-weight: 500!important;
}
.select-wrapper {
  position: relative;
}
.select-wrapper select {
  background: transparent;
  border: none;
  border-bottom: 1px solid #000;
  width: 100%;
  padding: 8px 30px 8px 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: 14px;
  outline: none;
}
.select-wrapper i.fa {
  position: absolute;
  right: 27px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: #333;
  font-size: 16px;
}
/*header*/
.our-head {
  padding: 10px 10px 10px 10px;
}
.sub-menu .content .head-cont {
  min-width: 100px;
}
.head-bg-color {
  padding: 20px 20px 20px 20px;
  border: 1px solid #ffffff66;
}
.sub-menu .content {
  width: 1300px!important;
  height: 480px!important;
}
.menu-floor .content{
  max-width: 450px!important;
  max-height: 300px!important;
}
.menu-door .content{
  max-width: 160px!important;
  max-height: 260px!important;
}
/*.menu-contact .content{
  max-width: 1000px;
  min-height: 440px;
}*/
.menu-contact .content .scroll-container {
  max-height: 440px;
}
header ul.megamenu li .submenu-1.sub-menu {
/*  right: 317px!important;*/
  left: unset!important;
}
header ul.megamenu .menu-floor .sub-menu {
  right: auto!important;
  left: unset;
}
.gap {
  gap: 40px;
  margin-bottom: 20px;
}
.head-image img {
  border-radius: 10px;
}
.newhead-contet h3 {
  font-weight: 400;
  font-size: 19px;
}
.scroll-container {
    max-height: 450px;
    overflow-y: auto;
    padding-right: 30px;
    scrollbar-width: thin;
    scrollbar-color: #000 gray;
}
.scroll-container::-webkit-scrollbar {
    width: 4px;
}
.scroll-container::-webkit-scrollbar-thumb {
    background: #000;
    border-radius: 4px;
}
.scroll-container::-webkit-scrollbar-thumb:hover {
    background: #000;
}
.head-bg-color {
    margin-bottom: 15px;
}
.sub-head .headnew-list {
  text-align: left;
}
.sub-head .headnew-list li { 
  padding: 20px 20px 6px 20px;
}
.sub-head .headnew-list li a{
  font-size: 18px;
  font-weight: 500;
  color: #000;
}
.new-arrow {
  width: 15px;
}
.breadcrumb li {
  font-size: 16px;
  padding: 0px 18px 0px 18px;
}
.kitchen img {
  border-radius: 20px;
}
/*kitchen*/
.left-cont .our-title h1 {
  letter-spacing: 1px;
  font-weight: 500;
  line-height: 45px;
  font-size: 2rem;
}
.left-cont .paragraph p {
  font-size: 18px!important;
}
.left-cont {
  padding-left: 50px;
}
.padd-left {
  padding-left: 50px;
}
.kitchen .paragraph p {
  font-size: 17.5px!important;
  line-height: 31px;
}
.kit.title h3 {
  font-weight: 500;
} 
.beautypress-team-person-details {
  padding: 0px 37px 10px 12px;
}
.beautypress-team-person-details h5 {
  color: #fff;
  font-size: 22px;
  font-weight: 500;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 270px;
}
.beautypress-team-person-details h4 {
  color: #fff;
  font-size: 15px;
  font-weight: 400;
  text-transform: capitalize;
}
.beautypress-team-person-details h4:after {
  position: absolute;
  content: '\f067';
  right: 39px;
  top: 15px;
  width: 0px;
  height: 0px;
  color: #f05a28;
  font-weight: 100;
  font-family: 'FontAwesome';
}
.new-blog.shape .item:hover .new .imgBx img {
    transform: scale(1.1);
}
.new-blog .imgBx img {
  transition: all .6s;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.new-blog.shape .imgBx {
  overflow: hidden;
  position: relative;
  border: 1px solid #dcdcdc;
}
.black {
  color: #000!important;
}
.new-blog.shape .beautypress-team-person-details h4:after {
  position: absolute;
  content: '\f067';
  right: 39px;
  top: auto;
  width: 0px;
  height: 0px;
  color: #f05a28;
  font-weight: 100;
  font-family: 'FontAwesome';
}
.new-blog.shape .beautypress-team-person-details {
  padding: 30px 37px 30px 12px;
  position: relative;
  top: -75px;
}
/*.gallery.shape .item:hover .imgBx img {
    transform: scale(1.1);
}*/
.gallery.shape .imgBx img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.6s ease;
}
.gallery.shape .item .imgBx{
  overflow: hidden;
  position: relative;
}
/*form*/
.getintouch .our-form {
  padding: 10px 80px 50px 80px;
  background: #f05a2812;
}
.myBtn a {
  letter-spacing: 2px;
  color: #f05a28;
}
.myBtn .whatsapp {
  padding: 10px 10px 10px 10px;
  rotate: 280deg;
  font-size: 24px;
}
.myBtn .whatsapp a{
  color: #2aa81a;
}
.myBtn .phone {
  padding: 10px 10px 10px 10px;
  rotate: 280deg;
  font-size: 24px;
}
.myBtn .web {
  padding: 10px 10px 10px 10px;
/*  rotate: 280deg;*/
  font-size: 24px;
  width: 50px;
}
.myBtn .new-form {
  padding: 10px 10px 10px 10px;
}
.social-links {
  position: fixed;
  right: 55px;
  bottom: 51%;
  display: none;
  flex-direction: row;
  gap: 30px;
  background: #f05a28;
  padding: 8px 14px 8px 14px;
  z-index: 1000;
}
.social-links a {
  font-size: 18px;
  color: #fff;
  transition: color 0.3s;
}
.social-links a:hover {
  color: white;
   transform: scale(0.8);
}
.accessories .our-sec {
  padding: 50px 50px 50px 50px;
  background: #fffaf3;
}
.accessories-type .blogLink::after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #fff 109.75%);
}
.accessories-type .blogLink::after {
  height: 0% !important;
}
.pt-0 {
  padding-top: 0px!important;
}
.pb-0 {
  padding-bottom: 0px!important;
}
.accessories-type .new-title h3 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}
.wooden .our-title h3 {
  line-height: 30px;
}
.wooden .our-title h4 {
  line-height: 30px;
  font-size: 20px!important;
  font-weight: 600;
}
.wooden .whychoose .mainTxt ul li {
  font-size: 17px!important;
}
.new-sec .shadow {
  background: #fff;
  box-shadow: 0 0 7px 0 #00000070;
}
.new-sec .shadow img {
  border-radius: 5px;
}
.new-sec .shadow .our-content {
  padding: 20px 20px 10px 20px;
  min-height: 236px;
}
.new-sec .shadow .our-content.long {
  min-height: 262px;
}
.featured-products .item .beautypress-team-person-details h5 {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  max-width: 270px;
  text-transform: uppercase;
}
/*table*/
table, th, td {
    border: 1px solid #ddd;
    padding: 10px 10px 10px 30px;
    font-size: 18px;
    color: #000;
}
.full-widthnew {
  width: 100%;
}
.bold {
  font-weight: 600;
}
.featured-tab .nav li.active .title-underline a{
  color: #f05a28;
}
.featured-tab .nav li.active .title-underline:after{
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 4px;
  background-color: #f05a28;
}
.featured-tab .nav li {
  margin-right: 50px;
}
#goal .cmnBtn{
margin-bottom: 0px;
}
#goal .icon img{
    height: 50px;
}
#goal .icon::after {
position: absolute;
content: "";
bottom: 0;
right: 0;
width: 80px;
height: 80px;
border-radius: 50%;
background: rgba(230, 131, 105, .17);
transition: all .5s;
}
#goal .icon {
  margin-bottom: 30px;
}
#goal .icon {
  width: 80px;
  height: 80px;
  margin-top: 20px;
  margin-bottom: 20px;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
}
#goal .pad-left {
    padding-left: 60px;
}
.center-seg .color {
  background: #f05a2812;
}
.name h4 {
  font-weight: 400;
}
.center-seg .pad-left  {
  padding-left: 60px;
}
.time-line .line:after {
  content: "";
  position: absolute;
  right: -23px;
  top: 19px;
  width: 4rem;
  height: 1px;
  background-color: #f05a28;
}
.time-image .image {
  border: 1px solid #d0d0d0;
  padding: 10px 10px 10px 10px;
  max-width: 240px;
}
.time-image {
  text-align: -webkit-center;
}
.time-line .new-time .paragraph {
  min-height: 220px;
}
.time-line.featured-products .featured-slider .owl2-controls .owl2-nav div {
  top: calc(1% - 35px / 2)!important;
}
/*value*/
.values {
  background: url(../../image/web-images/about/value-bg.webp);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 40px 0px;
  background-attachment: fixed;
  position: relative;
}
.values .new-value {
  border: 1px solid #f05a2880;
  padding: 35px 40px 15px 40px;
  border-radius: 10px;
  text-align: center;
  background: #ffffff0d;
  backdrop-filter: blur(1.5px);
  height: calc(100% - 4px);
}
.values .new-value .our-title h4{
  color: #fff;
}
.values .new-value .paragraph p{
  color: #fff;
}
.white {
  color: #fff;
}
.imag img {
  width: 100%;
  cursor: pointer;
}
.lft {
  font-size: 16px;
  color: #fff;
}
/*blog-details*/
.side-bar .ourtitle h3:after{
  content: "";
  position: absolute;
  left: 70px;
  top: 37px;
  width: 4rem;
  height: 4px;
  background-color: #f05a28;
}
.blog-details .pad-left {
  padding-left: 50px;
}
.side-bar {
  position: sticky;    
  top: 100px;       
}
.blog-details .container,
.blog-details .row,
.blog-details .col-lg-4 {
  overflow: visible;  
}
@media (min-width: 992px) {
  .side-bar {
/*    max-height: calc(100vh - 120px); */
    overflow: auto;                    
  }
}
@media (min-width: 992px) {
  .blog-details .side-bar {
    top: 100px;
  }
}
.recent-blog-carousel { 
  overflow: hidden;
  position: relative;
}

.carousel-inner {
  display: flex;
  flex-direction: column;
  transition: transform 0.5s ease;
}

.blog-item {
  margin-bottom: 20px;
  margin-top: 20px;
  padding: 0px 30px 60px;
}

.blog-item:hover {
  transform: scale(1.03);
}
.the-clr h4 {
  color: #f05a28;
}
/*gallery*/
.gallery { padding: 60px 0; }

.gall-item{
  position: relative; display:block; overflow:hidden; border-radius:12px;
}
.gall-item img{ width:100%; display:block; transition:transform .45s ease; }

/* Default small bottom caption (always visible) */
.caption{
  position:absolute; left:0; right:0; bottom:0; padding:60px 28px;
  background:linear-gradient(to top, rgba(0,0,0,.75), rgba(0,0,0,0));
  text-align: center;
}
.caption h4 {
    margin: 0;
    color: #fff;
    font-weight: 500;
    text-transform: uppercase;
    font-size: 25px;
}

/* Hover panel (hidden by default) */
.hover-panel{
  position:absolute; inset:0; display:flex; flex-direction:column;
  justify-content:center; align-items:center; text-align:center;
  padding:70px; background:rgba(0,0,0,.72);
  opacity:0; visibility:hidden; transition:opacity .35s ease, visibility .35s ease;
}
.hover-panel h4{ color:#fff; font-size:28px; margin:0 0 10px; letter-spacing:1px; }
.hover-panel p{ color:#ddd; margin:0 0 18px; font-size:15px; }
.cmnBtn{
  display:inline-block; border:1px solid #fff; color:#fff;
  padding:9px 18px; text-transform:uppercase; font-size:13px; letter-spacing:1px;
  transition:background .25s ease, color .25s ease;
}
.cmnBtn:hover{ background:#fff; color:#000; }

/* Orange outline on hover using :after */
.gall-item::after{
  content:""; position:absolute; inset:24px; border-radius:10px;
  border:1px solid transparent; transition:border-color .35s ease;
}

/* Hover effects — only for the item you hover */
.gall-item:hover img{ transform:scale(1.05); }
.gall-item:hover .hover-panel{ opacity:1; visibility:visible; }
.gall-item:hover .caption{ opacity:0; }                 /* hide small caption */
.gall-item:hover::after{ border-color:#f08a24; }        /* orange border */

@media (max-width: 767px){
  .hover-panel h4{ font-size:18px; }
  .hover-panel p{ font-size:14px; }
  .cmnBtn{ font-size:12px; padding:7px 14px; }
}
.gall-item .cmnBtn {
  width: fit-content!important;
  background: transparent;
  color: #fff;
}
/*video-detail*/
.video-detail .video .play_btn{
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 11;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 126%);
}
.video-detail .video .play_btn img {
  width: 45px !important;
  height: 45px !important;
  object-fit: contain !important;
} 
.video-detail .video img {
  height: 400px;
  display: block;
  width: 100%;
  border-radius: 5px;
  overflow: hidden;
  object-fit: cover;
}
.video-modal {
  display: none;
  position: fixed;
  z-index: 9999;
  padding-top: 60px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: rgba(0,0,0,0.8);
}

.video-modal-content {
  position: relative;
  margin: auto;
  padding: 0;
  width: 80%;
  max-width: 1000px;
}

.video-modal-content iframe {
  width: 100%;
  height: 60vh;
  border: none;
  display: block;
}

.video-close {
  position: absolute;
  top: -30px;
  right: 0;
  color: #fff;
  font-size: 40px;
  font-weight: bold;
  cursor: pointer;
}

.video-detail .video {
  position: relative;
  cursor: pointer;
}
/*image-gal*/
.gall-img {
  position: relative;
  overflow: hidden;
}

/* Make the image fill and animate smoothly */
.image-detail .gall-img .popup-link img {
  display: block;
  width: 100%;
  height: 455px;
  object-fit: cover;
  transition: transform 0.4s ease;
  will-change: transform;
}

/* Zoom on hover */
.gall-img:hover img {
  transform: scale(1.1);
}

/* Overlay that doesn't block clicks */
.gall-img .overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.4);
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.4s ease;
  pointer-events: none; /* critical: let clicks hit the <a> */
}

.gall-img .overlay i {
  color: #fff;
  font-size: 20px;
  width: 40px;
  height: 40px;
  line-height: 40px;
  padding-left: 10px;
  border: 1px solid #fff;
  border-radius: 50px;
}

.gall-img:hover .overlay {
  opacity: 1;
}
.testimonial .rdmr {
  color: #f05a28;
  font-weight: 500;
}
.testimonial .sege {
  padding: 45px;
}
.testimonial .sege {
  padding: 45px;
  border-bottom: 1px solid transparent; /* Initially hidden */
  transition: border-color 0.3s ease;   /* Smooth effect */
}
.testimonial .sege:hover {
  border-bottom: 1px solid #f05a28;  
  border-radius: 20px;
}
.test-details .test-padd {
  padding: 80px;
  border: 1px solid #f05a28;
  background: #fae5df;
}
.accessories-clr {
  background: #fffaf3;
}
.pb-60 {
  padding-bottom: 60px;
}
.accessories .blogLink .imgBx img {
    width: 100%;
    height: 100%;
    object-fit: cover!important;
    transition: all .6s;
}
.carrer .new-padd {
  padding: 10px 60px 60px 60px;
}
/*contact*/
.contact .padd-left {
  padding-left: 60px;
}
.contact .our-title h1{
  font-size: 50px;
}
.contact .text {
  padding-left: 10px;
  text-decoration: underline;
  font-weight: 500;
  color: #000;
}
.contact .our-phone {
  background: #fc5a4014;
  padding: 30px 18px;
  border-radius: 10px;
}
.contact .our-phone .icon {
  background: #f05a28;
  width: 50px;
  height: 50px;
  animation: call 2s linear infinite;
  border-radius: 50px;
  color: #fff;
  line-height: 50px;
  font-size: 30px;
  padding-left: 15px;
}
@keyframes  call {
  0% {
    box-shadow: 0 0 0 0 rgba(240, 90, 40, .35);
}
50% {
    box-shadow: 0 0 0 8px rgba(240, 90, 40, .35);
}
100% {
    box-shadow: 0 0 0 rgba(240, 90, 40, 0);
}
}
.our-phone .gap {
  gap: 20px;
  margin-bottom: 0px;
}
.mb-0 {
  margin-bottom: 0px!important;
}
.contact .our-email {
  background: #fc5a4014;
  padding: 30px 18px;
  border-radius: 10px;
}
.contact .our-email .icon {
  width: 50px;
  height: 50px;
  border-radius: 50px;
  color: #f05a28;
  line-height: 47px;
  font-size: 26px;
  padding-left: 12px;
}
.our-email .gap {
  gap: 20px;
  margin-bottom: 0px;
}
.contact .our-email:hover .icon{
  background: #f05a28;
  color: #fff;
}
.contact-phg .imgBx img {
  height: 810px;
  max-width: 510px;
}
.location .paragraph p {
  margin-bottom: 0px;
}
.location .locati .icon {
  font-size: 30px;
  color: #f05a28;
}
.location .locati {
  gap: 10px;
}
.location .our-loc {
  padding: 40px 40px 60px 40px;
  border: 1px solid #f05a28;
  height: calc(100% - 40px);
}
.new-color {
  background: #fff3f0;
}
.new-color h1 {
  line-height: 50px;
}
.kochi .booking {
  padding: 40px 40px 40px 40px;
  background: #fff;
}
.new-btn .btn-color {
  background: #f05a28!important;
  color: #fff;
  border: 1px solid transparent!important;
}
.new-btn:hover .btn-color{
  background: #000!important;
  color: #fff!important;
  border: 1px solid #f05a28 !important;
}
.new-btn:hover .btn-color span {
  color: #fff!important;
}
.services .padd-left {
  padding-left: 60px;
}
.services .btm {
  border-bottom: 1px solid #00000047;
}
.city-card{
  position:relative;
  width:100%;
  height: 100%;
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
  isolation:isolate; 
  max-height: 550px!important;
}

/* Image */
.city-card__img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  /*object-fit:cover;
  filter:saturate(1.05);
  transform:scale(1.02);
  transition: transform .6s ease;*/
}

/* Dark gradient overlay for readability */
.city-card__shade{
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.55) 10%, rgba(0,0,0,.35) 60%, rgba(0,0,0,.55) 100%);
  z-index:1;
}

/* Content */
.city-card__content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:24px;
  padding: clamp(20px, 3.8vw, 40px);
}

/* Title */
.city-card__title{
  margin:0;
  color:#fff;
  font-weight:600;
  line-height:1.3;
  letter-spacing:.5px;
  font-size: 36px;
  text-transform:uppercase;
}

/* CTA button */
.city-card__btn{
  align-self:flex-start;
  display:inline-block;
  padding: 12px 22px;
  background:#ff6a3d;              /* vibrant orange as in the mock */
  color:#fff;
  font-weight:700;
  letter-spacing:.6px;
  text-decoration:none;
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
  box-shadow: 0 6px 16px rgba(255,106,61,.35);
}

.city-card:focus-within{ outline: 2px solid #ff6a3d; outline-offset: 3px; }

.strip {
  background: linear-gradient(45deg,rgba(0, 0, 0, 0.50),rgba(0, 0, 0, 0.50) ),url(../image/web-images/location/strip.webp);
  background-attachment: fixed;
  background-size: cover;
}
.strip .new-back {
  background: #000000cf;
  padding: 80px 80px 80px 80px;
}
.white {
  color: #fff!important;
}
.strip .new-back .whychoose {
  background: #000000cf!important;
}
.our-new {
  background: #fff3f0;
}
.our-new .whychoose {
  background: transparent!important;
}
.new-sct .our-title h1 {
  text-transform: uppercase;
  font-size: 40px;
  line-height: 50px;
}
.project-new .beautypress-team-person-details .icon {
  color: #f05a28;
}
.project-new .beautypress-team-person-details .gap {
  gap: 15px;
}
.text-right {
  text-align: right;
}
.test .out-test {
  background: #fff;
  padding: 30px 20px 30px 20px;
  border-radius: 20px;
}
.test {
  background: #fff3f0;
}
.test .out-test:hover {
  border-bottom: 1px solid #f05a28;
}
.strip2 {
  background: linear-gradient(45deg,rgba(0, 0, 0, 0.50),rgba(0, 0, 0, 0.50) ),url(../image/web-images/location/strip2.webp);
  background-attachment: fixed;
  background-size: cover;
}
.strip2 .new-back {
  background: #000000cf;
  padding: 80px 80px 80px 80px;
}
.strip2 .new-back .whychoose {
  background: #000000cf!important;
}
.strip3 {
  background: linear-gradient(45deg,rgba(0, 0, 0, 0.50),rgba(0, 0, 0, 0.50) ),url(../image/web-images/location/strip3.webp);
  background-attachment: fixed;
  background-size: cover;
}
.new-bg-color {
  background: #fffaf3e6;
}
.gallery.bg-color {
  background: #fff3f0;
}
.left-color {
  background: #fff3f0;
}
/*kochi deatial*/
.left-color{background:#fff3f0;} /* subtle pink like the reference */
.koc-image img{width:100%;height:auto;display:block;}

/* --- Process styles --- */
:root{
  --heading:#0d0d0d;
  --muted:#9b9b9b;
  --text:#3b3b3b;
  --accent:#ff7a33; /* orange for active step */
  --dot:#bfbfbf;
  --dash:#cfcfcf;
}

.process-wrap{padding:48px 24px;}
.process-title{
  font-weight:800;
  letter-spacing:.5px;
  color:var(--heading);
  line-height:1.1;
  margin:0 0 28px;
  font-size:clamp(28px,3vw,46px);
}

/* timeline list */
.process-timeline{
  list-style:none;
  margin:0;
  padding:0 0 0 0px; /* space for step label + line */
  position:relative;
}

/* vertical dashed line */
.process-timeline::before{
  content:"";
  position:absolute;
  left:125px;
  top:32px;
  bottom:18px;
  border-left:2px dashed var(--dash);
}

/* each row */
.process-item{
  display:grid;
  grid-template-columns:80px 20px 1fr;
  align-items:center;
  column-gap:40px;
  min-height:72px;
}

/* left step label */
.process-item .step{
  font-weight:700;
  font-size:16px;
  color:black;
  letter-spacing:.5px;
}

/* dot */
.process-item .dot{
  width:12px;height:12px;border-radius:50%;
  background:var(--dot);
  display:inline-block;
  position:relative;
  z-index:1;
}

/* text */
.process-item .text{
  font-size:18px;
  color: black;
}

/* active (last) */
.process-item.is-active .step{color:var(--accent);}
.process-item.is-active .text{color:#000;}
.process-item .ring{
  background:#fff;
  border:3px solid var(--accent);
  width:16px;height:16px;
}

/* responsive tweaks */
@media (max-width: 991.98px){
  .process-wrap{padding:36px 16px;}
  .process-timeline{padding-left:0px;}
  .process-timeline::before{left:127px;}
  .process-item{grid-template-columns:81px 18px 1fr;min-height:64px;}
  .process-item .text{font-size:16px;}
}
@media (max-width: 575.98px){
  .process-title{font-size:26px;}
  .process-item{min-height:56px;}
}
.process-item.is-active .ring {
  background: #fff;
  border: 3px solid var(--accent);
}
.process-item.is-active .step {
  color: var(--accent);
}

.process-item.is-active .text {
  color: #000;
}

.process-item.is-active .dot {
  background: var(--accent);
  transform: scale(1.2);
  transition: all 0.3s ease;
}

.process-item.is-active .ring {
  background: var(--accent);
  border-color: var(--accent);
}