/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://wordpress.org/themes/twentytwentyfive/
Template: twentytwentyfive
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Five emphasizes simplicity and adaptability. It offers flexible design options, supported by a variety of patterns for different page types, such as services and landing pages, making it ideal for building personal blogs, professional portfolios, online magazines, or business websites. Its templates cater to various blog styles, from text-focused to image-heavy layouts. Additionally, it supports international typography and diverse color palettes, ensuring accessibility and customization for users worldwide.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready,wide-blocks,block-styles,style-variations,accessibility-ready,blog,portfolio,news
Version: 1.1.1742904186
Updated: 2025-03-25 12:03:06

*/

p {
	margin: 0;
}
.banner-img img {
	aspect-ratio: 1;
    background-image: url(https://uidesigners.in/wp-content/uploads/2025/03/bg-img.svg);
    background-position: 50% 0;
    background-size: cover;
    display: block;
    -webkit-mask-image: url(https://uidesigners.in/wp-content/uploads/2025/03/bg-img.svg);
    mask-image: url(https://uidesigners.in/wp-content/uploads/2025/03/bg-img.svg);
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-size: cover;
    mask-size: cover;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
}
.border-shape {
    position: relative;
    z-index: 1;
    transition: transform 0.3s ease !important;
    overflow: hidden;
}
/* .border-shape:before {
    content: '';
  z-index: -2;
  text-align: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0deg);
  position: absolute;
	width: 99999px;
	height: 99999px;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-image: conic-gradient(rgba(0,0,0,0), #1976ed, rgba(0,0,0,0) 25%);
	animation: rotate 4s linear infinite;
}
.border-shape:after {
    content: '';
	position: absolute;
	z-index: -1;
	left: 5px;
	top: 5px;
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	background: #292a2e;
}
@keyframes rotate {
	100% {
		transform: translate(-50%, -50%) rotate(1turn);
	}
} */

.border-shape:after {
    width: 100%;
    content: "";
    display: inline-block;
    height: 0px;
    background-color: transparent;
    border: solid 1px #f25616;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: expand 5s infinite;
    z-index: 0;
}
@-webkit-keyframes expand{
    0%{height:0px; width: 0px;}
    100%{height:100%; width: 100%;}
}
.border-shape:before {
    content: "";
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    background: #000;
    z-index: 2;
}
.border-shape .elementor-social-icons-wrapper {
    position: relative;
    z-index: 2;
}

/* .border-shape:before {
    content: '';
    position: absolute;
    z-index: -1;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background-repeat: no-repeat;
	background-position: 0 0;
	background-image: conic-gradient(rgba(0,0,0,0), #f25616, rgba(0,0,0,0) 25%);
    animation: rotateBorder 4s linear infinite;
}

.border-shape:after {
    content: "";
    position: absolute;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
}
@keyframes rotateBorder {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
} */
.service-icon .elementor-icon-wrapper {
    width: 103px;
    height: 103px;
    padding: 10px;
    border: solid 1px #6a6a6a;
    border-radius: 16px;
    margin: auto;
}
.service-icon .elementor-icon {
    width: 83px;
    height: 83px;
    padding: 8px;
    border: solid 1px #6a6a6a !important;
    border-radius: 10px;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: linear-gradient(#292929, #1c1c1c);
}
.framing-line-glow-blocker {
    background-color: #111;
    width: 100%;
    height: 36px;
}
.framing-line-glow {
    z-index: -1;
    filter: blur(15px);
    background-color: #f2561633;
    border-radius: 100%;
    width: 36px;
    height: 36px;
    position: absolute;
    top: -45px;
    left: 50%;
    transform: translate(-50%);
}
.line-bottom .framing-line-glow-blocker {
    margin-top: -38px;
}
.line-bottom .framing-line-glow {
    top: unset;
    bottom: -6px;
}
.round-main {
    height: 500px;
    right: 0;
}
.round {
    aspect-ratio: 1;
    right: 0;
    margin: auto;
}
.service-circle-fill {
    aspect-ratio: 1;
}
.service-circle-decor-blocker-back {
    height: 75%;
}
.service-circle-decor-blocker-front {
    height: 60%;
}
.desktop-full-height {
    height: 100%;
}
/* Case study section design start */
.case-img {
    -webkit-clip-path: polygon(0 0, calc(100% - 54.142px) .786377px, calc(100% - 54.142px) .786377px, calc(100% - 53.3502px) .817752px, calc(100% - 52.5683px) .910952px, calc(100% - 51.7995px) 1.06458px, calc(100% - 51.0473px) 1.27726px, calc(100% - 50.3151px) 1.54758px, calc(100% - 49.6062px) 1.87417px, calc(100% - 48.924px) 2.25563px, calc(100% - 48.2718px) 2.69056px, calc(100% - 47.653px) 3.17759px, calc(100% - 47.071px) 3.71531px, calc(100% - 2.929px) 47.8574px, calc(100% - 2.929px) 47.8574px, calc(100% - 2.39112px) 48.4395px, calc(100% - 1.904px) 49.0583px, calc(100% - 1.46902px) 49.7105px, calc(100% - 1.08756px) 50.3928px, calc(100% - .761px) 51.1017px, calc(100% - .49072px) 51.8338px, calc(100% - .2781px) 52.586px, calc(100% - .12452px) 53.3547px, calc(100% - .03136px) 54.1367px, calc(100% - 5.68434e-14px) 54.9285px, 100% 100%, 0 100%, 0 0);
    clip-path: polygon(0 0, calc(100% - 54.142px) .786377px, calc(100% - 54.142px) .786377px, calc(100% - 53.3502px) .817752px, calc(100% - 52.5683px) .910952px, calc(100% - 51.7995px) 1.06458px, calc(100% - 51.0473px) 1.27726px, calc(100% - 50.3151px) 1.54758px, calc(100% - 49.6062px) 1.87417px, calc(100% - 48.924px) 2.25563px, calc(100% - 48.2718px) 2.69056px, calc(100% - 47.653px) 3.17759px, calc(100% - 47.071px) 3.71531px, calc(100% - 2.929px) 47.8574px, calc(100% - 2.929px) 47.8574px, calc(100% - 2.39112px) 48.4395px, calc(100% - 1.904px) 49.0583px, calc(100% - 1.46902px) 49.7105px, calc(100% - 1.08756px) 50.3928px, calc(100% - .761px) 51.1017px, calc(100% - .49072px) 51.8338px, calc(100% - .2781px) 52.586px, calc(100% - .12452px) 53.3547px, calc(100% - .03136px) 54.1367px, calc(100% - 5.68434e-14px) 54.9285px, 100% 100%, 0 100%, 0 0);
}
.case-studies-arrow {
    width: 46px;
    height: 46px;
    clip-path: polygon(
  100% 0,
  100% 100%,
  54.142px calc(100% - 0.786377px),
  54.142px calc(100% - 0.786377px),
  53.3502px calc(100% - 0.817752px),
  52.5683px calc(100% - 0.910952px),
  51.7995px calc(100% - 1.06458px),
  51.0473px calc(100% - 1.27726px),
  50.3151px calc(100% - 1.54758px),
  49.6062px calc(100% - 1.87417px),
  48.924px calc(100% - 2.25563px),
  48.2718px calc(100% - 2.69056px),
  47.653px calc(100% - 3.17759px),
  47.071px calc(100% - 3.71531px),
  2.929px calc(100% - 47.8574px),
  2.929px calc(100% - 47.8574px),
  2.39112px calc(100% - 48.4395px),
  1.904px calc(100% - 49.0583px),
  1.46902px calc(100% - 49.7105px),
  1.08756px calc(100% - 50.3928px),
  0.761px calc(100% - 51.1017px),
  0.49072px calc(100% - 51.8338px),
  0.2781px calc(100% - 52.586px),
  0.12452px calc(100% - 53.3547px),
  0.03136px calc(100% - 54.1367px),
  0px calc(100% - 54.9285px),
  0 100%,
  0 0,
  100% 0);
}
.case-study-block .case-studies-arrow .icon-one,
.case-study-block .case-studies-arrow .icon-two {
    transform: translate3d(0rem, 0rem, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg) !important;
    transform-style: preserve-3d !important;
}
.case-study-block:hover .case-studies-arrow .icon-one,
.case-study-block:hover .case-studies-arrow .icon-two {
    transform: translate3d(1rem, -1rem, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg) !important;
    transform-style: preserve-3d !important;
}
.case-study-block,
.case-study-block .case-img img {
    transition: transform 0.3s ease-in-out;
}
.case-study-block:hover .case-img img {
    transform: scale(1.1);
}
.case-study-block .case-img {
    overflow: hidden;
    border-radius: 10px;
}
.case-content {
    transform: translate3d(0px, 3rem, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    transform-style: preserve-3d;
    opacity: 0;
    position: absolute;
    bottom: 0;
    z-index: 1;
    width: 100%;
    -webkit-backdrop-filter: blur(30px);
    backdrop-filter: blur(30px);
}
.case-study-block:hover .case-content {
    transform: translate3d(0px, 0rem, 0px) scale3d(1, 1, 1) rotateX(0deg) rotateY(0deg) rotateZ(0deg) skew(0deg, 0deg);
    transform-style: preserve-3d;
    opacity: 1;
}
.case-slider .elementor-swiper-button {
    top: -40px !important;
}
.case-slider .elementor-swiper-button.elementor-swiper-button-prev {
    left: unset !important;
    right: 100px;
}
.case-slider .elementor-swiper-button.elementor-swiper-button-next {
    right: 40px !important;
}
.case-main {
    background-position: 40% -40px;
}
/* Case study section design end */

/* Testimonial section design start */
.continuous-carousel .swiper-wrapper {
    transition-timing-function: linear !important;
}
.continuous-carousel .swiper-slide {
    width: 400px !important; /* Allows smooth horizontal scrolling */
    background-image: linear-gradient(#ffffff0f, #f2561608);
}
.continuous-carousel .elementor-testimonial {
    display: flex;
    flex-wrap: wrap;
}
.continuous-carousel .elementor-testimonial .elementor-testimonial__footer {
    order: 1;
}
.continuous-carousel .elementor-testimonial .elementor-testimonial__content {
    order: 2;
    margin-top: 16px;
}
.home-testmonial:after,
.home-testmonial:before {
    content: "";
    z-index: 5;
    width: 200px;
    height: 100%;
    position: absolute;
    top: 0;
}
.home-testmonial:before {
    background-image: linear-gradient(90deg, #111, #00000000);
    left: 0;
}
.home-testmonial:after {
    background-image: linear-gradient(270deg, #111, #00000000);
    right: 0;
}
/* only target wrappers inside the home-testmonial section */
.home-testmonial .continuous-carousel .swiper {
  overflow: hidden !important;
}

/* we'll tag wrappers with .hs-marquee */
.home-testmonial .continuous-carousel .swiper .swiper-wrapper.hs-marquee {
  display: flex;
  align-items: center;
  width: max-content;
  will-change: transform;
  /* animation properties will be set dynamically from JS */
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-name: hs-marquee-scroll;
}

/* reverse direction for second slider */
.home-testmonial .continuous-carousel.reverse .swiper .swiper-wrapper.hs-marquee {
  animation-direction: reverse;
}

/* keep slides inline-flex so width measurements are reliable */
.home-testmonial .continuous-carousel .swiper .swiper-wrapper.hs-marquee .swiper-slide {
  display: inline-flex;
  box-sizing: border-box;
  /* you can override exact card width here if needed */
  /* width: 360px !important; */
  margin-right: 40px; /* spaceBetween equivalent */
}

/* animation keyframes (transform applied by JS - duration set there) */
@keyframes hs-marquee-scroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); } /* because slides are duplicated */
}
.testimonial-bg .elementor-widget-image {

}
/* Testimonial section design end */

@media screen and (max-width: 1024px) {
    .service-circle-decor-blocker-back {
        height: 80%;
    }
    .service-circle-decor-blocker-front {
        height: 70%;
    }
    .line-top {
        right: 0;
    }
    .line-bottom {
        left: 0;
    }
    .case-main {
        background-position: 70% -40px;
    }
}
@media screen and (max-width: 767px) {
    .service-circle-decor-blocker-back {
        height: 89%;
    }
    .service-circle-decor-blocker-front {
        height: 83%;
    }
    .desktop-full-height {
        height: auto;
    }
}
@media screen and (max-width: 479px) {
    .service-circle-decor-blocker-back,
    .service-circle-decor-blocker-front {
        height: 90%;
    }
    .case-main {
        background-position: 60% -40px;
    }
}