/*
Theme Name: Twenty Twenty-Five
Theme URI: https://wordpress.org/themes/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.
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
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
*/

/*
 * IMPORTANT: This file is only served on the frontend when `SCRIPT_DEBUG` is enabled;
 * in most instances, the `style.min.css` file will be served. It is not recommended that you
 * use the Theme File Editor to modify this stylesheet. Instead, add the necessary style
 * overrides via "Additional CSS" in the Site Editor.
 */

/*
 * Link styles
 * https://github.com/WordPress/gutenberg/issues/42319
 */
a {
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.1em;
}

/* Focus styles */
:where(.wp-site-blocks *:focus) {
  outline-width: 2px;
  outline-style: solid;
}

/* Increase the bottom margin on submenus, so that the outline is visible. */
.wp-block-navigation
  .wp-block-navigation-submenu
  .wp-block-navigation-item:not(:last-child) {
  margin-bottom: 3px;
}

/* Increase the outline offset on the parent menu items, so that the outline does not touch the text. */
.wp-block-navigation
  .wp-block-navigation-item
  .wp-block-navigation-item__content {
  outline-offset: 4px;
}

/* Remove outline offset from the submenus, otherwise the outline is visible outside the submenu container. */
.wp-block-navigation
  .wp-block-navigation-item
  ul.wp-block-navigation__submenu-container
  .wp-block-navigation-item__content {
  outline-offset: 0;
}

/*
 * Progressive enhancement to reduce widows and orphans
 * https://github.com/WordPress/gutenberg/issues/55190
 */
h1,
h2,
h3,
h4,
h5,
h6,
blockquote,
caption,
figcaption,
p {
  text-wrap: pretty;
}

/*
 * Change the position of the more block on the front, by making it a block level element.
 * https://github.com/WordPress/gutenberg/issues/65934
*/
.more-link {
  display: block;
}

/*
 * Prevents unnecessary scrollbars while handling long lines of preformatted text.
 * https://core.trac.wordpress.org/ticket/63875
 */
:where(pre) {
  overflow-x: auto;
}

.footer-inner-container {
  position: relative;
}

.footer-bg-image {
  position: absolute;
  right: 0px;
  bottom: 0px;
}

.header-main {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  background: rgba(0, 0, 0, 0.3);
  z-index: 9999;
  backdrop-filter: blur(104px);
}

.hero-banner {
  position: relative;
}

.hero-banner-bulb {
  position: absolute;
  top: 20px;
  left: 50%;
  transform: translateX(-50%);
}

.hero-section-content {
  position: relative;
}

.hero-banner-ring {
  position: absolute;
  top: -50%;
  left: 50%;
  transform: translateX(-50%);
}

/* continuous rotation */
.hero-banner-ring img {
  animation: ringRotate 20s linear infinite;
  display: block;
}

/* gradient fade (bottom dark → top clear) */
.hero-banner-ring::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to top,
    #0c1312 20%,
    rgba(12, 19, 18, 0.6) 60%,
    transparent 70%
  );
  pointer-events: none;
  bottom: -30px;
}

@keyframes ringRotate {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

.hero-banner-top-bg {
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
}

.hero-banner-bottom-img {
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
}

.hero-banner-bottom-img-bg {
  position: absolute;
  bottom: -20%;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}

.hero-section-para {
  max-width: 613px;
  margin: auto;
}

.relative {
  position: relative;
}

.client-logo-bg {
  position: absolute;
  bottom: 0%;
  left: 50%;
  transform: translate(-50%);
}

.who-we-are-card-outer {
  border-left: 2px solid;
  border-image-slice: 1;
  border-image-source: linear-gradient(
    180deg,
    #5edace -13.64%,
    rgba(94, 218, 206, 0) 120.28%
  );
}

.yios-main-div {
  position: relative;
}

.yios-banner-img {
  position: absolute;
  right: 0px;
  bottom: 0px;
  max-width: 50%;
}

.service-hero-section {
  position: relative;
}

.service-hero-blur-back {
  position: absolute;
  top: -333px;
  left: 50%;
  transform: translateX(-50%);
  width: 517px;
  height: 517px;
  border-radius: 999px;
  filter: blur(120px);
  max-width: 100%;
}

.service-hero-right-image {
  position: absolute;
  top: 0px;
  right: 0px;
  height: 100%;
  z-index: 0;
}

.service-hero-bottom-left-image {
  position: absolute;
  bottom: 0px;
  left: 0px;
  z-index: 0;
  opacity: 0.3;
}

.gradient-text-service-hero-section {
  background: linear-gradient(180deg, #2bffc3 0%, #1a9975 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}

.service-hero-text-section {
  position: relative;
  z-index: 1;
}

.wcu-section {
  position: relative;
  overflow: hidden;
}

.wcu-service-left {
  max-width: 406px;
  position: relative;
  z-index: 2;
}

.wcu-service-left-blur-bg {
  position: absolute;
  max-width: 526px;
  max-height: 483px;
  width: 100%;
  height: 100%;
  left: -336px;
  bottom: 20px;
  background-color: #2252a0b2;
  filter: blur(100px);
}

.wcu-service-left-bottom-blur-bg {
  position: absolute;
  max-width: 663px;
  max-height: 641px;
  width: 100%;
  height: 100%;
  left: -250px;
  bottom: -553px;
  background-color: #16fed399;
  filter: blur(150px);
}

.wcu-service-bottom-blur-bg {
  position: absolute;
  max-width: 1320px;
  max-height: 390px;
  width: 100%;
  height: 100%;
  left: -200px;
  bottom: -390px;
  background-color: #22a07ce5;
  filter: blur(100px);
}

.wcu-service-bottom-right-blur-bg {
  position: absolute;
  max-width: 457px;
  max-height: 390px;
  width: 100%;
  height: 100%;
  right: -200px;
  bottom: -290px;
  background-color: #16fed399;
  filter: blur(200px);
}

.wcu-service-right {
  max-width: 692px;
}

.wcu-service-title {
  width: 140px;
}

.wcu-service-content {
  width: 350px;
}

.wcu-service-arrow {
  width: 46px;
  margin-top: auto !important;
}

.wcu-service-arrow img {
  width: 46px;
  padding: 10px;
}

.hwdi-left-section {
  max-width: 408px;
  height: 100%;
  min-height: 450px;
}

.hwdi-right-section {
  max-width: 692px;
}

.hwdi-seperator {
  height: 100% !important;
  width: 1px !important;
  min-height: 550px;
  background: linear-gradient(
    0deg,
    rgba(10, 10, 10, 0) 0%,
    rgba(255, 255, 255, 0.3) 20.54%,
    rgba(255, 255, 255, 0.3) 75.55%,
    rgba(10, 10, 10, 0) 100%
  );
}

.twu-seperator {
  height: 71px !important;
  background-color: #ffffff3d;
}

.wcu-card-wrapper {
  position: relative;
  z-index: 1;
  gap: 24px !important;
}

.wcu-card-single {
  width: calc((100% - 72px) / 4) !important;
}

.wcu-card-icon {
  width: 32px;
  padding: 12px;
  background: #ffffff1a;
  border-radius: 99px;
}

.wcu-card-button {
  margin-top: auto !important;
}

.wcu-card-button a {
  display: flex;
  gap: 10px;
  align-items: center;
}

@media screen and (max-width: 1180px) {
  .cus-global-padding {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }
  .tcysot-section-div {
    padding: 50px !important;
  }
  .service-w-c-u-section {
    flex-wrap: wrap;
  }
  .wcu-service-left {
    width: 100%;
    max-width: 100%;
  }
  .wcu-service-right {
    width: 100%;
    max-width: 100%;
  }
}

@media screen and (max-width: 991px) {
  .cus-global-padding {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .yios-banner-img {
    display: none !important;
  }
  .footer-navigation-cus-single {
    width: calc(50% - 16px);
  }
  .wcu-card-single {
    width: calc((100% - 24px) / 2) !important;
  }
  .xperia-highlight-text {
    font-size: 1.5rem;
  }
  .hwdi-inner-section {
    flex-wrap: wrap;
  }
  .hwdi-seperator {
    display: none;
  }
  .hwdi-left-section {
    max-width: 100% !important;
    min-height: 100px !important;
  }
  .xperia-highlight-text {
    margin-top: 20px;
  }
}

@media screen and (max-width: 768px) {
  .stat-big {
    font-size: 2.5rem;
  }
  .stat-small {
    font-size: 1.125rem;
  }
  .review-text {
    font-size: 1rem;
  }
  .author-name {
    font-size: 0.875rem;
  }
  .author-designation {
    font-size: 0.75rem;
  }
  .twu-wapper {
    flex-wrap: wrap;
    justify-content: center;
    row-gap: 50px;
  }
  .twu-seperator {
    display: none;
  }
}

@media screen and (max-width: 576px) {
  .footer-navigation-cus-single {
    width: 100%;
  }
  .wcu-card-single {
    width: 100% !important;
  }
}

/* 1. Parent container ko flex banao taaki cards line mein aayein */
.hww-right-box {
  display: flex !important;
  flex-wrap: nowrap !important; /* Mobile tak line mein rakhega */
  gap: 0 !important; /* Gap zero taaki separator chipak kar aaye */
  width: 100% !important;
  justify-content: space-between;
}

/* 2. Cards ki width set karo */
.wtlx-single-card {
  width: 33.33% !important;
  position: relative;
  padding: 40px 20px; /* Spacing ke liye */
}

/* 3. Fade Border (Separator) lagane ke liye ye magic code dalo */
.wtlx-single-card:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 10%; /* Thoda upar se niche */
  height: 80%; /* Poori height nahi, center mein dikhega */
  width: 1px;
  background: linear-gradient(
    0deg,
    rgba(10, 10, 10, 0) 0%,
    rgba(255, 255, 255, 0.32) 50%,
    rgba(10, 10, 10, 0) 100%
  );
}

/* 4. Mobile responsive ke liye */
@media screen and (max-width: 768px) {
  .hww-right-box {
    flex-wrap: wrap !important;
  }
  .wtlx-single-card {
    width: 100% !important;
    border-bottom: 1px solid #ffffff14; /* Mobile par niche line */
  }
  .wtlx-single-card::after {
    display: none; /* Mobile par vertical line hata do */
  }
}

/* 1. Base Styling for Inputs & Typography */
.xperia-inner-card
  .wpcf7-form-control:not(.wpcf7-submit):not([type="checkbox"]) {
  width: 100% !important;
  height: 65px !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 0.75px solid rgba(255, 255, 255, 0.13) !important;
  padding: 20px 0px 10px 0px !important;
  color: #ffffff !important;

  /* FIGMA TYPOGRAPHY APPLIED HERE */
  font-family: "Inter", sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 100% !important;
  letter-spacing: -0.02em !important; /* -2% Letter spacing */

  border-radius: 0 !important;
  outline: none !important;
  vertical-align: middle !important;
}

/* 2. Textarea Typography & Scrollbar Fix */
.xperia-inner-card textarea {
  height: 80px !important;
  padding-top: 30px !important;
  overflow: hidden !important;
  resize: none !important;
}

/* 3. Placeholder Styling (Same Typography for "Enter Name" etc.) */
.xperia-inner-card ::placeholder {
  color: #ffffff !important;
  opacity: 1 !important;
  font-family: "Inter", sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  line-height: 100% !important;
  letter-spacing: -0.02em !important;
}

/* 4. Layout & Spacing (Card & Outer Box) */
.xperia-inner-card .wpcf7-form {
  padding-bottom: 5px !important;
}

.xperia-outer-box {
  max-width: 643px !important;
  padding: 10px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  margin: 0 auto !important;
}

.xperia-inner-card {
  max-width: 623px !important;
  padding: 32px 32px 20px 32px !important;
  border-radius: 14px !important;
  background-color: #051014 !important;

  /* Glow Image Integration */
  background-image: url("http://localhost/xperiamysite2/wp-content/uploads/2026/05/Vector-12-1.png") !important;
  background-position: bottom center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
}

/* 5. Checkbox Styling */
.checkbox-group {
  margin-top: 15px !important;
  color: #ffffff !important;
  font-family: "Inter", sans-serif !important;
  font-size: 14px !important;
  letter-spacing: -0.02em !important;
}

/* 7. Button (Compact Size & Typography) */
.xperia-submit-btn {
  width: 100% !important;
  height: 48px !important;
  background: linear-gradient(180deg, #2bffc3 0%, #1a9975 100%) !important;
  border-radius: 8px !important;
  color: #000 !important;

  /* Button Font */
  font-family: "Inter", sans-serif !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  letter-spacing: -0.01em !important;

  border: none !important;
  margin-top: 15px !important;
  cursor: pointer !important;
  text-transform: none !important;
}
