/*
Theme Name: Css project
Theme URI: None
Author: None
Author URI: none
Description: A custom advance css website.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: Horizontal Web Design
Tags: Css, Advance Css, Beautiful, animation
*/

/* Global CSS */
@import url("https://use.typekit.net/luy8gzq.css");

@font-face {
  font-family: "TT Neoris";
  src: url("Fonts/font.woff2") format("woff2"),
    url("Fonts/font.woff") format("woff");
  font-weight: 900;
  font-style: normal;
}

* {
  padding: 0;
  margin: 0;
  scroll-behavior: auto !important; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}

body {
  height: 100%;
  width: max-content;
  background-color: #ebebec;
  overflow: hidden;
} 

h1 {
  font-family: "TT Neoris", sans-serif;
}

h2 {
  font-family: "TT Neoris", sans-serif;
}

h3 {
  font-family: "area-normal";
}

p {
  font-family: "area-normal";
}

/* Extra animation */
.char {
  display: inline-block;
  cursor: pointer;
  will-change: transform, color;

  /* Inherit all font & text styles from parent */
  font-size: inherit;
  font-weight: inherit;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  color: inherit;
}

/* Page Transition */
#pageTransitionId {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: #000;
  z-index: 99;
  pointer-events: none;
}

.vertical-transition-active {
  /* Example changes */
  background-color: #111;
}

.vertical-transition-active .some-section {
  animation: fadeInUp 1s ease;
}

#pagetranstextlocation {
  position: absolute;
  width: 0; /* 65%	 */
  height: 100vh;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: end;
  opacity: 0;
  background: transparent;
  overflow: hidden;
}


.sidefix {
  width: 75%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: end;
}

.side {
  width: 41%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: end;
}

/* Global Logo */

#logo-trigger {
  position: fixed;
  top: 2.5rem;
  left: 2.5rem;
  width: 82px; /* Match logo size */
  height: 40px;
  pointer-events: none;
  z-index: 99;
}

.logo-wrapper {
  position: fixed;
  top: 2.5rem;
  left: 2.5rem;
  width: 81.55px;
  height: 40px;
  z-index: 99;
}

.logo {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  left: 0;
  transition: opacity 0.3s ease;
  pointer-events: none;
}


.white-logo {
  filter: invert(1); /* Example: make black logo look white */
  opacity: 1;
}



/* Example */
.logo.logo-visible-white svg path {
  fill: white;
}

.logo-visible-white .logo-white {
  opacity: 1;
}

.logo-visible-white .logo-black {
  opacity: 0;
}

/* Navbar */
.NavbarContainer {
  x: 0;
  position: fixed;
  width: auto;
  top: 0;
  right: 0;
  height: 100%;
  z-index: 999;
  display: flex;
  flex-direction: column;
  background-color: #fff;
  box-shadow: -2px 0 5px rgba(0, 0, 0, 0.3);
}

/* Modify this to align vertically inside sticky navbar */
.NavbarClose {
  width: 72px;
  height: 100vh;
  display: flex;
  align-items: center;
  flex-direction: column;
  background-color: #fff;
  user-select: none;
}

/* This is the open navbar */
.NavbarOpen {
  width: 416px;
  height: 100vh;
  position: fixed;
  top: 0;
  right: 0;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: 10;
  justify-content: space-between;
  transform: translateX(100%);
  transition: none !important;
  overflow-x: visible;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform: translateZ(0);
  overflow-x: hidden;
}

/* GPU acceleration For Fast and smooth perfomance */
.NavbarOpen,
.NavLayout,
.NavLayoutDown,
.NavLayoutText,
.NavLink a,
.NavbarPera,
.NavComPera {
  will-change: transform, opacity;
  backface-visibility: hidden;
  transform: translateZ(0);
  /* overflow: hidden; */
}

#openNavBtn {
  cursor: pointer;
  user-select: none;
  user-select: none;
}

.navicon {
  margin-top: 40px;
  background-color: #fff;
  padding: 12px 16px;
  user-select: none;
  cursor: pointer;
}

.NavbarClosebtndiv {
  display: block;
  text-align: end;
  padding: 0;
  width: 100%;
}

.NavLayout {
  width: 256px;
  font-family: "TT Neoris", sans-serif;
  font-weight: 900;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.16px;
  text-transform: uppercase;
}

.Navlayfirst {
  flex: 1;
  width: 100%;
  align-items: center;
  display: flex;
  flex-direction: column;
}

.NavLayoutText {
  display: block;
  padding: 16px 0px;
  font-size: 16px;
  font-weight: 900;
  border-bottom: 1px solid black;
  color: black;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
}

.NavLink {
  padding: 16px 0px;
  display: flex;
  gap: 1rem;
  cursor: pointer;
  user-select: none;
}

.NavLayoutDown {
  width: 256px;
  padding-bottom: 3rem;
  position: relative;
  height: auto;
  /* bottom: 0; */
  justify-content: end;
  gap: 1rem;
  display: flex;
  flex-direction: column;
  align-items: normal;
}

.NavbarPera {
  font-weight: 900;
  font-family: "Area Normal", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.16px;
}

.NavComPera {
  width: 200px;
}

.NavComtitle {
  display: flex;
  gap: 1rem;
  flex-direction: column;
  font-size: 0.8rem;
}

.NavCloseBtn {
  align-items: end;
  background-color: #fff;
  cursor: pointer;
  border: none;
}

.NavLayoutText:hover {
  transform: scale(1.05);
  transition: transform 0.3s ease;
}

/* Comman attributes */
.content {
  display: flex;
  flex-direction: column;
  align-self: self-end;
  align-items: start;
  padding: 0px 3rem 10rem 3rem;
  gap: 1rem;
}

.textblue {
  color: #0237f7;
  font-size: clamp(18px, calc(18px + 6 * ((100vw - 320px) / 880)), 24px);
  font-weight: 900;
  text-transform: capitalize;
  width: auto;
}

.detailstext {
  text-wrap-style: balance;
  font-weight: 900;
  font-size: clamp(32px, calc(34px + 15 * ((100vw - 1200px) / 100)), 56px);
  /* Starts at 36px from 1200px viewport, scales to max 56px */
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #0a0b14;
}

.rightmargin {
  padding-right: 28rem;
}

/* .left {
  width: 42%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: end;
  background-color: transparent;
} */

/* Page Transition Text */

#transitionTextOverlay {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  max-width: 1200px;
  z-index: 999999;
  pointer-events: none;
}

#transitionTextOverlay .transition-layout-container {
  width: 100%;
}

#transitionTextOverlay .left-aboutus {
  background-color: #bbb2fc;
}

#pageTransitionId {
  background: #000;
  z-index: 8;
  overflow: hidden;
}

/* Main Content - Home page */

.homepage-main {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  height: 100vh;
  width: max-content;
	background-color: #0237f7
}

.homepage-section-one {
  height: 100vh;
  width: 100vw;
  flex-shrink: 0; /* Prevent shrinking in flex row */
  background-color: black;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
}

.homepage-section-one {
  position: relative; /* Make sure the parent is positioned */
  height: 100vh; /* or any height you want */
}

.homepage-section-one .HomeLogo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  max-width: 20vw;
  height: auto;
  user-select: none;
  -webkit-user-drag: none;
}


.homepage-section-one .left-arm, .homepage-section-one .right-arm {
  position: absolute;
  bottom: 0;
  max-width: 40vw;
  height: 95vh;
  z-index: 1;
  user-select: none;
  -webkit-user-drag: none;
	    object-fit: contain;
    object-position: bottom;
}

.left-arm {
  left: 0;
}

.right-arm {
  right: 0;
}

.homepage-section-one .homepage-section-popup {
  width: 85%;
  max-width: 919px;
  height: 186px;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  margin-bottom: 3rem;
  background-color: #ff8599;
  display: flex;
  justify-content: center;
  align-items: center;
}

.homepage-section-popup .popup-context {
  width: 791px;
  height: 90px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.homepage-section-popup .popuptext {
  font-size: 1.5rem;
  font-weight: 900;
}

.homepage-section-popup #poupclose {
  position: absolute;
  right: 0;
  top: 0;
  cursor: pointer;
}

/* Home Page Section 2 */
.homepage-section-two {
  height: 100vh;
  width: 100vw;
  background-color: #0237f7;
  display: flex;
  justify-content: center;
  align-items: center;
}

.homepage-section-two .section-two-design {
  width: 80vw;
  height: 100vh;
  display: flex;
  flex-direction: column;
  padding: 5rem;
  gap: 2rem;
  justify-content: center;
}

.word {
  display: inline-block;
  opacity: 0;
  transform-origin: bottom;
}


.homepage-section-two .section-two-title {
  font-size: clamp(1.2rem, 3vw + 1rem, 3.5rem);
  font-weight: 900;
  text-transform: uppercase;
  color: #9fe203;
}

.homepage-section-two .section-two-title-small {
  font-weight: 600;
  font-size: clamp(1.5rem, 2.5vw + 0.5rem, 3rem);
  line-height: 1.25;
  color: white;
}

.homepage-section-two .section-two-title-mid {
  font-weight: 900;
  font-size: clamp(2rem, 3vw + 1rem, 3.5rem);
  text-transform: uppercase;
  color: #ff8599;
}

/* Section 3 */

.homepage-section-three {
  width: 100vw;
  display: flex;
  justify-content: center;
  height: 100vh;
  background-color: #0237f7;
}

.homepage-section-three .section-three-design {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: center;
  width: 80%;
}

.homepage-section-three .section-three-title {
  font-size: clamp(1.5rem, 2.5vw + 0.5rem, 3rem);
  font-weight: 600;
  color: white;
}

.homepage-section-three .section-three-title-mid {
  font-size: clamp(2rem, 3vw + 1rem, 3.5rem);
  font-weight: 900;
  text-transform: uppercase;
  color: #bbb2fc;
}

/* our Work */
.ourwork-main {
  height: 100vh;
  width: max-content;
  display: flex;
  min-width: fit-content;
  flex-wrap: nowrap;
  position: relative;
}

/* .left-section-one {
  display: flex;
  height: 100%;
  width: max-content;
} */

.ourwork-main .left-ourwork {
  width: 640px;
  background: transparent;
}


.right-section-one {
  flex: 1;
  height: 100%;
  position: relative;
  display: flex;
  align-items: center;
}

.right-section-one .card-container {
  align-items: center;
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(2, auto);
  grid-auto-columns: auto;
  gap: 0.5rem;
  padding: 20px;
}

.right-section-one .card-container .card {
  width: clamp(306px, calc(306px + 84 * ((100vw - 1200px) / 100)), 390px);
  /* height: clamp(0px, 85%, 400px); */
  height: auto;
  position: relative;
  box-sizing: border-box;
  padding: 10px;
  overflow: hidden;
}

.right-section-one .card-container .card a{
  overflow: hidden; /* crop anything overflowing inside link */
  position: relative; /* for positioning */
}

.img-wrapper {
  width: auto;
  height: 100%;
  max-height: 100%; /* fixed or clamp to control crop height */
  overflow: hidden;
  position: relative;
}

.right-section-one .card-container .card img {
  width: 100%;
  height: auto;
  object-fit: cover;
  transform-origin: center center; /* ensure zoom from center */
  will-change: transform;
  text-decoration: none;
  overflow-inline: hidden;
  display: block;
}

.right-section-one .card-container .card p {
  color: black;
  margin-top: 1rem;
  font-size: clamp(
    0.625rem,
    calc(0.75rem + 0.3 * ((100vw - 1200px) / 100)),
    1rem
  );
  max-width: 390px;
  max-height: 60px;
  width: 90%;
  height: auto;
}

.right-section-one .card-container .card img {
  width: 100%;
  height: auto;
  object-fit: cover;
  display: block;
  cursor: pointer;
  will-change: transform;
  /* Good for performance */
  transform-origin: center center;
}

/* Main Contact Post ID Page */

.postid-main {
  display: flex;
  height: 100vh;
  width: fit-content;
  flex-shrink: 0;
}

.postid-main .section-one {
  display: flex;
  height: 100vh;
  width: 100vw;
  z-index: -1;
}

.postid-left {
    background-color: white;
    width: 30%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    align-items: center;
}
.section-one .postid-left .content-post {
    display: flex;
    flex-direction: column;
    align-self: center;
    padding: 1rem;
    gap: 1rem;
    width: 100%;
    box-sizing: border-box;
    max-width: 400px;
}
.section-one .postid-left .content h1{ width: 100%; }

.postid-left-pera-gap {
  display: flex;
  flex-direction: column;
  gap: 1rem;
 width: 100%;
}

.postid-detailstext {
  font-size: 1.5rem;
  color: #000000;
  font-weight: 600;
}

.leftThirdtext {
  font-weight: 800;
  font-size: 20px;
  word-spacing: 8px;
}

.postid-right {
  width: 100%;
  height: 100%;
  background-image: url("/Res/work/card.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  z-index: 10;
}

.postid-img {
	width: 60%
}

/* Section 2 */

.postid-section-two {
  width: auto;
  height: 100%;
  display: flex;
}

.postid-section-two-left {
  width: 640px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-right: 3rem;
  margin-left: 6rem;
}

.postid-section-two-left p {
  font-size: 20px;
  font-weight: 600;
  color: #0a0b14;
  width: 496px;
  margin-top: 12rem;
}

.postid-section-two-right {
  display: flex;
  gap: 1.5rem;
}

/* Base layout for both grids */
.sec-layout {
  aspect-ratio: 1/1;
  display: grid;
  gap: 2.5svh;
  height: 78svh;
  margin: 10svh 0;
}

.sec-layout div {
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.sec-layout img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

/* Styling for secGrid1 */
.sec-layout-aabc {
  grid-template:
    "a a"
    "b c";
}

.sec-layout-aabc > div:nth-of-type(1) {
  grid-area: a;
}

.sec-layout-aabc > div:nth-of-type(2) {
  grid-area: b;
}

.sec-layout-aabc > div:nth-of-type(3) {
  grid-area: c;
}

.sec-layout-aaaa > div:nth-of-type(1) {
  grid-area: a;
}

.section-two-rightLast {
  width: 405px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
  margin-right: 416px;
}

.project-navigation {
  height: 76svh;
  display: flex;
  flex-direction: column;
  justify-content: end;
  gap: 1rem;
  width: 100%;
}

.project-navigation button {
  padding: 1rem;
  font-size: 16px;
  font-weight: 900;
  text-transform: uppercase;
  color: #231f20;
  text-align: center;
  background: transparent;
  display: flex;
  justify-content: center;
  cursor: pointer;
}

.nav-buttons {
  display: flex;
  gap: 1rem;
}

.nav-buttons img {
  margin: 0 8px;
  align-self: center;
  width: 12px;
}

.nav-buttons button {
  flex: 1 1 50%;
}

.view-all {
  width: 100%;
}

/* main Contant About Us */

.aboutus-main {
  display: flex;
  width: max-content;
  height: 100vh;
  transition: opacity 0.3s ease-in-out;
}

.parallax-image {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Section 1 */
.aboutus-section-one {
  display: flex;
  height: 100vh;
  width: 100vw;
}

.left-aboutus {
  background-color: #bbb2fc;
}

.section-one-rightimg {
  width: 52%;
  z-index: -10;
  height: 100%;
  position: relative;
  background-color: #dfcc22;
  overflow: hidden;
}

/* Section 2 */

.aboutus-section-two {
  height: 100vh;
  width: 100vw;
  background-color: #0a0b14;
  display: flex;
  justify-content: center;
  align-items: center;
}

.aboutus-section-two .section-two-design {
  width: 85%;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: center;
}

.section-two-first {
  font-size: clamp(1.2rem, 3vw + 1rem, 3.5rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: 0;
  margin-bottom: 32px;
  color: #bbb2fc;
  user-select: none;
}

.section-two-pera {
  color: #ffffff;
  font-size: clamp(0.875rem, calc(1.25rem - 1vw), 1.25rem);
  line-height: 150%;
}

/* Section3 */
.aboutus-section-three {
  display: flex;
  height: 100vh;
  width: 100vw;
  background-color: #bbb2fc;
}

.section-three-left {
  width: auto;
  margin: 2%;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: end;
}

.section-three-content {
  width: 392px;
  justify-self: center;
  height: 432px;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.section-three-pera {
  font-size: 24px;
  font-weight: 600;
}

.section-three-rightimg {
  width: inherit;
  height: 100%;
  position: relative;
  background-color: #dfcc22;
  overflow: hidden;
}

/* Section 4 */

.aboutus-section-four {
  width: calc(100vw - 72px);
  display: flex;
  background-color: #bbb2fc;
}

.aboutus-section-four-left {
  margin: 1rem 2rem;
  width: 70%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  color: white;
}

.aboutus-section-four-container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
}

.textcontain {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 976px;
}

.textcontain h2 {
  color: #0237f7;
  font-size: clamp(16px, 2vw + 1rem, 24px);
  font-weight: 900;
  text-transform: uppercase;
}

.textcontain p {
  color: #000000;
  font-weight: 600;
  font-size: clamp(
    0.875rem,
    /* minimum size: 14px */ calc(1.25rem - 1vw),
    /* fluid size: starts at 20px and shrinks with viewport */ 1.25rem
      /* maximum size: 20px */
  );
}

.section-four-right {
  width: 30%;
  background-color: #0a0b14;
  color: white;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  justify-content: end;
  align-items: center;
}

.section-four-Heading h2 {
  font-weight: 900;
  font-size: 56px;
  align-self: flex-end;
  text-transform: uppercase;
}

.section-four-pera {
  width: 90%;
  height: 432px;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.section-four-pera h2 {
  font-size: 24px;
  font-weight: 900;
  color: #bbb2fc;
  text-transform: uppercase;
}

.section-four-pera p {
  font-size: 24px;
}

/* Section 5 */
.aboutus-section-five {
  width: max-content;
  height: 100%;
  display: flex;
  background-color: #ebebec;
}

.profile-setup {
  display: flex;
  width: min-content;
}

.profile-contain {
  height: 100%;
  width: 536px;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  justify-content: center;
  align-items: center;
  background-color: transparent;
}

.imgcontain {
  width: 504px;
  height: 341.18px;
  background: transparent;
}

.noneprofile {
  width: 504px;
  height: 341.18px;
  background-color: black;
}

.section-five-title {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  text-align: center;
}

.section-five-title h2 {
  text-transform: uppercase;
  color: #0237f7;
  font-size: 24px;
  font-weight: 900;
}

.section-five-title p {
  font-size: 24px;
  font-weight: 600;
  color: #0a0b14;
  text-align: center;
}

.profile-contain a {
  font-family: 24px;
  font-weight: 800;
  color: #0a0b14;
}

.profile-details {
  display: none;
  position: relative;
  width: auto;
  height: 100%;
  justify-content: center;
  align-items: center;
  padding: 2em;
  box-sizing: border-box;
}

.profile-details.show {
  display: flex;
}

.closeBtn {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 72px;
  height: 78.89px;
  cursor: pointer;
}

.closeicon {
  text-align: left;
}

.profile-details p {
  width: 512px;
  height: 832px;
  font-size: 18px;
  font-weight: 600;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* ourexpertise Css */

/* main Contant */

.ourexpertise-main {
	flex-direction: row;
  display: flex;
  width: max-content;
}

/* Section 1 */
.ourexpertise-section-one {
  display: flex;
  height: 100vh;
  width: 100vw;
}

.ourexpertise-section-one .left {
  background-color: #dfcc22;
}

.section-one-rightimg {
  width: inherit;
  height: 100%;
  position: relative;
  background-color: #dfcc22;
  z-index: -10;
}

/* Section 2 */
.ourexpertise-section-two {
  width: calc(100vw - 72px);
  padding: 0rem 1rem;
  background-color: #0a0b14;
  display: flex;
  gap: 2rem;
  justify-content: space-evenly;
}

.imgcontainer {
  width: 256px;
  height: 332px;
  max-height: 332px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.textcontainer {
  height: 452px;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 1rem;
}

.textcontainer h2 {
  text-transform: uppercase;
  font-size: 1.5rem;
  font-weight: 600;
  color: #dfcc22;
  user-select: none;
}

.listcontainer {
  font-size: 20px;
  font-weight: 600;
  word-spacing: 8px;
  color: white;
}

/* sec 2 mid */

.content-bristol {
  display: flex;
  flex-direction: column;
  align-items: start;
  padding: 12rem 3rem;
  width: 640px;
  gap: 1rem;
}

/* Section 3 (Collaborations and Icons Grid) */

.ourexpertise-section-three {
  height: auto;
  width: 100vw;
  background-color: #dfcc22;
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 44px;
  padding: 40px 60px;
  box-sizing: border-box;
}

.section-three-container {
  width: 100%;
  max-width: 93%;
}

.section-three-container h2 {
  font-size: clamp(
    2.1rem,
    calc(2.25rem + 1.25 * ((100vw - 1200px) / 100)),
    3.5rem
  );
  font-weight: 900;
  text-transform: uppercase;
  line-height: 120%;
  color: #0a0b14;
  padding: 3rem 1rem;
  user-select: none;
}

.icons-grid {
  display: grid;
  grid-template-columns: repeat(
    auto-fit,
    minmax(120px, 1fr)
  ); /* auto columns based on container width */
  gap: 1rem;
  width: 100%;
  /* Optional: control max height or min height to trigger row changes */
  max-height: 80vh; /* Example max height */
  overflow-y: auto; /* Scroll if too tall */
  padding: 1rem;
}

.icons-grid div {
  display: flex;
  justify-content: center;
  align-items: center;
  /* aspect-ratio: 1 / 1;  */
  overflow: hidden; /* Hide overflow if clipped */
}

.icons-grid img {
  width: 80%;
  height: 80%;
  transition: transform 0.3s ease;
  user-select: none;
}

.icons-grid img:hover {
  transform: scale(1.1);
}

.ourexpertise-rightgap {
  background-color: #dfcc22;
}

/*
 *
 * Design For Good Css
 *
*/

/* main contant */
.designforgood-main {
  height: 100vh;
  width: 100vw;
  display: flex;
  flex-wrap: nowrap;
}

img,
h2,
p {
  will-change: transform, opacity;
}

.designforgood-section-one {
  display: flex;
  height: 100vh;
  width: 100vw;
}

.designforgood-section-one .left {
  background-color: #ff8599;
}

/* Section 2 */

.designforgood-section-two {
  display: flex;
  height: 100%;
}

.section-two-left {
  width: 536px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 2rem;
  color: white;
  background-color: #0a0b14;
}

.section-two-left .content {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 392px;
  align-self: center;
  padding: 0.3rem;
}

.section-two-left .content p {
  font-size: clamp(0.7rem, calc(1rem + 6 * ((100vw - 320px) / 880)), 24px);
  font-weight: 600;
}

.content button {
  width: 100%;
  padding: 1rem;
  text-transform: uppercase;
  border: 1px solid white;
  font-size: 24px;
  font-weight: 900;
  background: transparent;
  color: white;
  cursor: pointer;
}

.section-two-mid {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-top: 3rem;
}

.section-two-mid .content {
  width: 544px;
  padding-bottom: 0rem;
}

.pera {
  font-size: 20px;
  font-weight: 600;
}

.sec-layout {
  aspect-ratio: 1/1;
  display: grid;
  gap: 2.5svh;
  height: 78svh;
  margin: 10svh 0;

  & div {
    align-content: center;
  }
}

.sec-layout img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.sec-layout-aaaa {
  grid-template: "a a";
  padding-right: 1rem;

  & > div:nth-of-type(1) {
    grid-area: a;
  }
}

.sec-layout-abcd {
  grid-template:
    "a b"
    "c d";
}

.rightmagin {
  width: 32rem;
}

/* Contact Us Page */

/* Main */
.contactus-main {
  width: max-content;
  height: 100vh;
  background-color: #0237f7;
  display: flex;
}

.contactus-left {
  width: 52%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.leftinner {
  width: 640px;
  display: flex;
  flex-direction: column;
  gap: 2rem;
  padding: 3rem;
}

.white {
  color: white !important ;
}

.contactus-detailstext {
  font-weight: 900;
  font-size: clamp(36px, calc(36px + 15 * ((100vw - 1200px) / 100)), 56px);
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: uppercase;
  color: #0a0b14;
}

.leftinner img {
  width: 256px;
  height: 304.57px;
}

.contactus-content {
  display: flex;
  flex-direction: column;
  align-items: start;
  max-width: 640px;
  gap: 1rem;
}

.contactus-right {
  width: 50%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.formdesign {
  width: 640px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: start;
  gap: 2rem;
}

.formdesign textarea {
  padding: 8px;
  width: 100%;
  height: 56px;
  border: 1px solid black;

  line-height: normal;
  font-size: 16px;
  box-sizing: border-box;
}

.formdesign .area-descripation {
  height: 120px;
  width: 100%;
  border: 1px solid black;
  padding: 8px;
  font-size: 16px;
  box-sizing: border-box;
  resize: none;
}

.required {
  color: red;
}

.checkstyle {
  display: flex;
  gap: 0.5rem;
  color: white;
  align-items: center;
}

.Formcheckbox {
  display: flex;
  height: 24px;
  width: 24px;
  border: 1px solid black;
}

.formdesign button {
  width: 224px;
  height: 61px;
  border: 1px solid white;
  color: white;
  text-transform: uppercase;
  background-color: transparent;
  font-size: 24px;
  font-weight: 900;
  cursor: pointer;
}

.contant-us-extra {
  background-color: #0237f7;
}

/* 
---------------------------
Design For Small Device
---------------------------
*/

@media(max-width: 1199px) {
	.ourexpertise-section-two .container { width: calc(100% / 4 - 1rem); }
	.ourexpertise-section-two { gap: 1rem; }
	.ourexpertise-section-two .container .imgcontainer { width: 100%; height: auto; max-height: max-content; }
	.ourexpertise-section-two .textcontainer { height: auto; gap: 1rem; padding: 1rem 0 0 0; }
/* 	.ourexpertise-section-two .textcontainer h2 { font-size: 1.2rem; } */
/* 	.ourexpertise-section-two .listcontainer { font-size: 0.8rem; } */
}

@media(max-width:768px) {
	.ourexpertise-section-two .container { width:100%; }
	.ourexpertise-section-two .textcontainer { gap: 0; width: 100% , text-align: center; }
	.ourexpertise-section-two { padding-bottom: 50px; }
 	.ourexpertise-section-two .container .imgcontainer { max-width: 220px; }
	.ourexpertise-section-two .textcontainer p {
		font-size: 1rem;
    line-height: 1.56;
	}

}
 

@media (max-width: 1024px) {
	.NavLayout, .NavLayoutDown { width: calc(100% - 80px); }
}


@media (max-width: 768px) {
  body {
    overflow: scroll;
    overflow-x: hidden;
  }

  .designforgood-main {
    height: auto;
  }

  #pagetranstextlocation {
    width: 100vw;
  }

  .side {
    width: 100vw;
  }

  /* NavBar Design */

  .NavbarContainer {
    position: fixed;
    background-color: transparent;
    height: fit-content;
    width: fit-content;
    box-shadow: none;
  }
	
  .navicon{
	background-color: transparent;
	filter: invert(1);
    max-height: 40px;
	margin: 1.2rem 1.5rem 0 0;
    padding: 0;
  }

  .NavbarContainer .NavbarClose {
    background-color: transparent;
    height: fit-content;
    width: fit-content;
    overflow-x: hidden !important;
  }

  .NavbarOpen {
    width: 100vw;
    height: 100vh;
    overflow: auto;
  }

  .logo-wrapper {
    position: absolute;
	top: 1rem;
	left: 1.5rem;
  }

  /* Comman Attributes */
  .content {
    width: 100vw;
    padding: 2rem;
  }

  .rightmargin {
    display: none;
  }

  .sec-layout-aaaa {
    align-self: self-end;
    height: 55svh;
  }

  .sec-layout-abcd {
	  align-self: anchor-center;
	  width: 100%;
	  padding: 1rem;
	  height: auto;
	  margin: 0;
  }

  /* HomePage Design */

  .homepage-main {
    display: flex;
    flex-direction: column;
    height: 100%;
    /* width: 100vw; */
  }

  .homepage-section-one {
    height: 100vh;
  }
	
	.homepage-section-two{
		height: fit-content;
}
  .homepage-section-two .section-two-design {
    padding: 1rem 0;
	height: fit-content;
  }

  .homepage-section-popup {
    max-width: 98%;
    height: fit-content;
    background-color: #ff8599;
    gap: 0.6rem;
    margin-bottom: 3rem;
  }

  .homepage-section-popup .popup-context {
    width: 90vw;
    justify-content: center;
  }

  .homepage-section-popup .popuptext {
    font-size: 1rem;
    font-weight: 800;
  }
	
	.homepage-section-three{
	height: fit-content;
}
	.homepage-section-three .section-three-design{
		height: fit-content;
		margin-bottom: 1rem;
}
	
/* 	=================== */
.homepage-section-one .homepage-section-popup {width: 100%;max-width: 100%;height: auto;position: absolute;left: 0;bottom: 0;z-index: 2;margin-bottom: 0;background-color: #ff8599;display: flex;justify-content: center;align-items: center;padding: 2rem 1rem;box-sizing: border-box;}
.homepage-section-popup #poupclose { position: absolute; right:1rem; top: 0.5rem; cursor: pointer; width: 2rem; height: 2rem; }
.homepage-section-popup .popup-context {height: auto;width: 100%;}
.homepage-section-one .left-arm, .homepage-section-one .right-arm {  bottom: 15%; }
.homepage-section-one .left-arm { left: -15%; }
.homepage-section-one .right-arm {right: -14%;}
	
.NavLayout, .NavLayoutDown { width: calc(100% - 32px); }
.NavCloseBtn {width: 3rem;
        display: inline-block;
        object-fit: contain;
        object-position: center;
        margin: 10px 10px; }
	
.homepage-section-two .section-two-design { padding: 3rem 1rem 1.5rem 1rem; gap: 16px; width: 100%; box-sizing: border-box; }
.homepage-section-three .section-three-design { gap: 1rem; width: 100%; box-sizing: border-box; }
.homepage-section-three { padding: 1.5rem 1rem 3rem 1rem; box-sizing: border-box; }


/* ====================== */
	
  /* Our Work Design */

  .ourwork-main {
    flex-direction: column;
    height: fit-content;
    width: 100vw;
  }

  .

  .ourwork-main .left-section-one {
    height: fit-content;
    width: 100vw;
	  
  }
	
	.ourwork-main .left-ourwork{
		width: 100vw;
		margin-top: 3rem;
	}
	

  .ourwork-main .right-section-one {
    width: 100vw;
    flex-direction: column;
    height: fit-content;
  }

  .right-section-one .card-container {
    grid-auto-flow: row; /* Stack items vertically */
    grid-template-columns: 1fr; /* One column */
    grid-template-rows: auto;
    justify-items: center; /* Center cards horizontally */
	padding: 0rem;
  }
	
  main {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100%;
    overflow-x: hidden;
    /* width: 100vw; */
  }

	
  /* Post Id    */
	.postid-main{
		width: 100vw;
		height: auto
}

	.postid-main .section-one{
		flex-direction: column-reverse;
	}
	
	.postid-main .section-one .postid-left{
		    width: 100%;
    height: fit-content;
	}
	
	.postid-main .section-one .postid-img{
		width: 100%;
		height: inherit;
	}
	
	.postid-section-two{
		flex-direction: column;
}
	.postid-section-two-left{
		width: 100vw;
		align-items: anchor-center;
		margin-right: 0rem;
		margin-left: 0rem;
	}
	
	.postid-section-two-left p {
    width: 90%;
    margin-top: 1rem;
}
	
	.postid-section-two .postid-section-two-right{
		flex-direction: column;
		width: 100vw;
	}
	
	.postid-section-two .postid-section-two-right .sec-layout{
		align-self: center;
        height: auto;
        width: 100%;
        padding: 1rem;
		margin: 0;
	}
	
	.section-two-rightLast{
		width: 100vw;
		align-items: center;
		margin-right: 0;
}
	
	.section-two-rightLast .project-navigation{
		height: auto;
		width: 90%;
		margin: 1rem;
	}

  /* About Us Page */

  .aboutus-section-one {
    flex-direction: column-reverse;
    /* overflow-x: hidden; */
  }

  .left-aboutus {
    width: 100vw;
    background-color: #bbb2fc;
	height: fit-content;
  }

  .section-one-rightimg {
    height: inherit;
    width: 100vw;
  }

  .aboutus-section-two {
    height: max-content;
  }

  .aboutus-section-two .section-two-design {
    padding: 3rem 0;
  }

  .aboutus-section-three {
    width: 100vw;
    flex-direction: column;
  }

  .section-three-content {
    width: 86vw;
    height: fit-content;
    padding: 2rem;
    font-size: clamp(1.5rem, 2.5vw + 0.5rem, 3rem);
  }

  .aboutus-section-three .section-three-rightimg {
    height: inherit;
  }

  .aboutus-section-four {
    width: 100vw;
    height: max-content;
    flex-direction: column;
  }

  .aboutus-section-four-left {
    width: 100%;
	margin: 0;
	padding: 2rem;
  }

  .aboutus-section-four-container {
    width: 100%;
  }

  .aboutus-section-four-container .textcontain {
    width: 100%;
    opacity: 1;
  }

  .aboutus-section-four .section-four-right {
    width: 100vw;
	padding: 2rem
  }
	
	.aboutus-section-four .section-four-right .section-four-Heading{
		width: 100%
	}

    .aboutus-section-four .section-four-right h2{
    width: 100%;
  }
	
	.aboutus-section-four .section-four-right .section-four-pera{
		width: 100%;
		height: auto;
		gap: 0;
	}

  .aboutus-section-five {
    width: 100vw;
    flex-direction: column;
    gap: 2rem;
	padding: 2rem ;
  }

  .aboutus-section-five .profile-setup {
    justify-content: center;
	width: 100%;
	  
	}
  .profile-contain {
    width: 100%;
	gap: 1rem;
  }

  .profile-contain .imgcontain {
    width: 300px;
    height: auto;
  }

  .profile-contain .section-five-title {
    font-size: 1.2rem;
  }
	
  .profile-details {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background-color: white;
    z-index: 1000;
    padding: 1em;
    overflow-y: auto;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .profile-details p {
    width: 100%;
    height: auto;
    font-size: 16px;
    padding-top: 60px;
  }

  .closeBtn {
    width: 32px;
    height: 32px;
	z-index: 10;
  }
	
	.section-two-first {margin-bottom: 0; }

  /* Our Expoertise Page */

  .ourexpertise-main {
    width: 100vw;
	flex-direction: column;  
  }
  .ourexpertise-section-one {
    flex-direction: column-reverse;
  }

  .ourexpertise-section-one .left {
    width: 100vw;
	height: fit-content;
  }

  .ourexpertise-section-one .section-one-rightimg {
    height: inherit;
    width: 100vw;
  }

  .ourexpertise-section-two {
    flex-direction: column;
    width: 100vw;
    align-items: center;
    padding: 0 2rem 2rem 2rem;
  }

  .ourexpertise-section-two .container {
    width: 80vw;
    opacity: 1;
    justify-items: anchor-center;
  }

  .textcontainer {
    height: auto;
  }

  .imgcontainer {
    height: auto;
  }

  .ourexpertise-section-three {
    width: 100vw;
    height: max-content;
    padding: 40px 0;
  }

  .ourexpertise-section-three .section-three-container {
    height: max-content;
	max-width: 100%
	padding: 40px 2rem;
  }

  .icons-grid {
	max-width: 90vw;
    height: max-content;
    grid-template-columns: repeat(3, 1fr); /* 3 columns */
    gap: 0.5rem; /* Reduce spacing between icons */
    padding: 0; /* Less padding on smaller screens */
    overflow: unset;
  }

  .icons-grid img {
    width: 70%; /* Smaller image size */
    height: 70%;
  }

  /* Contact Us Page */

  .contactus-main {
    width: 100vw;
    height: max-content;
    flex-direction: column;
  }

  .contactus-left {
    height: fit-content;
    width: 90vw;
    align-self: center;
  }

  .contactus-left .contactus-content {
    width: 95vw;
    align-self: center;
  }

  .contactus-right {
    width: 93vw;
    height: 100vh;
    padding: 1rem;
    align-items: center;
  }

  /* Design For Good */

  .designforgood-section-one {
    flex-direction: column-reverse;
    width: 100vw;
  }
  .designforgood-section-one .left {
    width: 100vw;
	height: fit-content;
  }

  .designforgood-section-two {
    width: 100vw;
    align-self: center;
    flex-direction: column;
  }

  .designforgood-section-two .section-two-left {
    width: 100vw;
    padding: 2rem 0;
  }

  .designforgood-section-two .section-two-left .content {
    width: 93vw;
  }
	
  .section-two-mid {
		margin-top: 0;
   }

  .section-two-mid .content {
    width: 100%;
  }

  .designforgood-section-two .section-two-mid .sec-layout {
   height: auto;
    padding: 2rem;
    margin: 0;
    width: 100%;
  }
	
  .designforgood-section-two .section-two-mid .sec-layout-aaaa{
	padding-bottom: 0 !important;
  }

	
  .formdesign {
    width: 100%;
  }
	
}

