/* Variables */
:root {
  --margins: 50px;
  --max-width: 1924px;
  --magenta-light: #A30046;
  --magenta-shade-2: #760033;
  --white: #FFF;
  --black: #000;
  --dark-grey: #333;
  --tension-fabrics: #25B0F5;
  --off-white: #E6E6E6;
  --scroll-distance: translateX(-50%);
}

/*--scroll-distance: translateX(-50%) translate(-50px);*/

:root {
  /* fallback for older browsers */
  --vh: 1vh;
  --app-height: 100vh;
}

html, body {
  height: var(--app-height);
}

/* Reset back to defaults */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  scroll-behavior: smooth;
  -webkit-tap-highlight-color: transparent;
}

*, *::before, *::after {
  box-sizing: border-box;
}

/* Generic styling */
.center h3,
.center h4,
.center h5,
.center h6,
.center p {
  text-align: center;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
.left p,
.left h1,
.left h2,
.left h3,
.left h4,
.left h5,
.left h6,
/*.center .left p,
.center .left h1,
.center .left h2,
.center .left h3,
.center .left h4,
.center .left h5,
.center .left h6,
.center .left p*/
.center h1,
.center h2,
.left-on-phone p {
  text-align: left;
}

.center-on-phone {
  display: flex;
  justify-content: center;
}

.center-on-phone h2 {
  text-align: center;
}

/*
.center h1,
.center h2,
.center h3,
.center h4,
.center h5,
.center h6,
.center p {
  text-align: center;
}
*/

h1,
h2 {
  font-family: Outfit;
}

h3,
h4,
h5,
h6,
p,
button {
  font-family: Poppins;
}

p {
  font-size: 20px;
  line-height: 1.4em;
}

a {
  cursor: pointer;
  text-decoration: none;
  color: var(--magenta-light);
  -webkit-tap-highlight-color: transparent;
}

a.disabled {
  pointer-events: none;   /* optional: disables clicking */
  cursor: default;        /* changes the cursor from a hand to an arrow */
  text-decoration: none;  /* optional: remove underline */
}

#return-home.disabled {
  cursor: default; /* or 'not-allowed' */
  pointer-events: none; /* Optional: prevent clicks */
}

li {
  list-style-type: none;
}

/* Importing fonts */
@font-face {
  font-family: "Outfit";
  src: url("fonts/Outfit/Outfit-VariableFont_wght.ttf");
  font-display: swap;
}

@font-face {
  font-family: "Poppins";
  src: url("fonts/Poppins/Poppins-VariableFont_wght.ttf");
  font-display: swap;
}

/* Rest of the page styling */
html {
  scrollbar-gutter: stable;
  /*overscroll-behavior: contain;*/
  /*height: 100vh*/
}

body {
  background: var(--magenta-light);
  font-family: Outfit, sans-serif;
  /*overscroll-behavior: contain;*/
  /*height: 100vh*/
}

.main-body {
  background: white;
  overscroll-behavior: contain;
  /*height: 100vh*/
}

.page-wrapper {
  overscroll-behavior: contain;
  /*height: 100vh*/
  /*position: absolute;
  top: 117px;*/
}

/* The main navigation bar styling */
header {
  display: flex;
  justify-content: space-between;
}

/* The Taaurus logo styling */
.logo {
  margin: 30px;
}

.logo a {
  display: inline-block;
}

.icon {
  color: var(--magenta-light);
  transition: color 0.3s ease-out;
}

/* Hamburger styling */
.hamburger {
  z-index: 21;
  margin: 30px;
  height: 100%;
  right: 0;
  overflow: visible;
  cursor: pointer;
}

.logo {
  width: 100%;
  height: 100%;
}

.hamburger.open {
  transform: rotate(45deg);
}

.hide {
  /*transition: transform 0.3s ease-in-out;*/ /* Smooth transition */
}

.hide.hidden {
  transform: translateY(calc(-2 * var(--margins) - 3.3vw));
}

nav {
  position: fixed;
  z-index: 0;
  opacity: 0;
  background: var(--white);
  transition: opacity 0.1s ease-out;
}

html.open {
  overflow: hidden;
}

nav.open {
  width: 100%;
  height: 100%;
  z-index: 11;
  opacity: 1;
  transition: opacity 0.1s ease-out;
  overflow: hidden;
}

nav.open .navigation {
  height: 100%;
  width: 100%;
  opacity: 1;
  margin: 0;
  padding-top: 117px;
  /*transition: all 0.5s;*/
}

nav.open .navigate li {
  width: 100%;
  opacity: 1;
}

/* Navigation popup styling */
.navigation-wrapper {
  width: 100%;
  height: 100%;
  display: flex;
  position: absolute;
  z-index: 0;
  align-items: center;
  background: inherit;
}

.navigation {
  position: fixed;
  opacity: 0;
  display: flex;
  align-items: center;
  margin: 0 10vw;
  padding: 30px;
}

/*
.contact li {
  padding: 2vh 3.1vw;
  display: inline-block;
  font-size: 18px;
}
*/

.navigate ul {
  display: flex;
  flex-direction: column;
  gap: 40px;
  margin: 0;
  margin-top: auto;
}

.navigate li {
  width: 0;
  list-style-type: none;
  overflow-x: hidden;
  /*font-size: 60px;*/ /* making this 50px to match landscape phone */
  font-size: 50px;
  font-weight: 900;
}

.navigate a {
  transition: color 1s;
}

.darken,
.darken a {
  color: var(--magenta-light);
}

.darken:hover,
.darken a:hover {
  color: var(--magenta-shade-2);
}

/* Header styling -> 'Driven' / Hero banner styling */
.top {
  position: fixed;
}

header {
  z-index: 12;
  width: 100%;
  background: none;
  transition: background 1s;
  max-width: 100vw;
}

header.light {
  background: transparent;
}

.dark header.show,
header.light.show {
  background: var(--white);
}

.light header.show {
  background: var(--magenta-light);
}

.light header.show .darken,
.light header.show .darken a {
  color: var(--white);
}

.light header.show .darken:hover,
.light header.show .darken a:hover {
  color: var(--off-white);
}

h1 a {
  color: white;
}

.banner h1 {
  font-size: 75px;
  font-style: normal;
  font-weight: 700;
  line-height: 75px; /* 100% */
}

.light-text,
.light-text h1 {
  color: var(--magenta-light);
}

.dark .light {
  background: var(--white);
}

.light {
  background: var(--white);
  color: var(--magenta-light);
}

h1 a:hover {
  opacity: 0.5;
}

header a {
  cursor: pointer;
  font-weight: 550;
  color: white;
}

/* The whole page container styling */
.dark {
  background: var(--magenta-light);
}

.page-wrapper {
  width: 100%;
  display: flex;
  flex-direction: column;
  /*gap: 100px;*/
  /*position: relative;*/
  /*z-index: 1;*/
}

.section {
  display: flex;
  flex-direction: column;
  gap: 100px;
  /*position: relative;*/
  z-index: 1;
}

/* For any section which we're scrolling to on an anchor */
#branding,
#design,
#development,
#seo {
  scroll-margin-top: 117px; /* same as header height */
}

.transparent {
  background: transparent;
}

.tall {
  padding: calc(2 * var(--margins)) var(--margins);
}

.content {
  margin: 0 auto;
}

.page-wrapper .banner,
.banner .banner-wrapper {
  overflow-x: hidden;
  overflow-y: hidden;
  min-width: 100%;
  margin: 0;
}

.banner-wrapper {
  position: absolute;
  top: 0;
  display: block;
  text-align: left;
  min-height: 100%;
}

.banner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  background-size: cover;
  background: url("") center center no-repeat;
  padding: 0 30px;
  min-height: 100vh;
}

.banner video {
  position: absolute;
  top: 0;
  left: 0;
  /*width: 100%;*/
  min-height: max(100%, 100vh);
  object-fit: cover;
  z-index: 3;
  min-width: 100%;
  min-height: 100%;
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0.20) 0%, rgba(255, 255, 255, 0.20) 100%);
  pointer-events: none; /* lets clicks pass through */
  z-index: 4;
}

/* Main heading */
.max-height {
  /*min-height: calc(100vh - 117px);*/
  margin-top: auto;
  display: flex;
  margin-right: auto;
}

.banner .info {
  display: flex;
  margin-top: auto;
  z-index: 4;
  margin-top: 117px;
  margin-bottom: 100px;
  /*margin-bottom: auto;*/
  flex-direction: column;
  /*justify-content: center;*/
  /*align-items: flex-start;*/
  gap: 30px;
  flex: 1 0 0;
  align-self: stretch;
  /*min-height: 100vh;*/
}

.banner .info .sub-info {
  font-family: Poppins;
}

.sub-info a,
.sub-info button,
input[type="submit"] {
  display: inline-block;
  padding: 30px;
  gap: 10px;
  background: var(--white);
  text-align: center;
  color: var(--magenta-light);
  leading-trim: both;
  text-edge: cap;
  font-size: 25px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  letter-spacing: 0.125px;
  border: 2px solid var(--magenta-light);
  transition: all 0.3s ease-out;
}

.sub-info a:hover,
.sub-info a:focus,
.sub-info button:hover,
.sub-info button:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
  background: var(--magenta-light);
  color: var(--white);
  border: 2px solid var(--white);
}

.inverted a:hover,
.inverted a:focus {
  background: var(--white);
  color: var(--magenta-light);
}

.darken .inverted a:hover {
  background: var(--magenta-shade-2);
}

.banner .info .sub-info p {
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 30px;
  letter-spacing: -0.04px;
}

.sub-info {
  color: var(--magenta-light);
}

.inverted a {
  background: var(--magenta-light);
  color: var(--white);
  border: 2px solid var(--white);
}

h1 {
  display: block;
  color: white;
  font-size: 8vw;
  font-weight: 400;
}

/* Sections styling */
.dark {
  background: var(--magenta-light);
  color: var(--white);
}

.center {
  text-align: center;
}

section {
  /*padding: 0px 30px;*/
}

section,
footer {
  position: relative;
  z-index: 1;
}

section .title,
section .text {
  /*padding: 0 30px;*/
  display: flex;
  margin-right: auto;
  width: 100%;
}

section .title {
  margin-bottom: 50px;
}

.center .title {
  margin-bottom: 20px;
}

section .media {
  margin-top: 100px;
}

section .text {
  margin-bottom: 100px;
}

/* Pop up text statement styling */
section {
  margin: 0px 30px;
  /*margin: -100px 0px;
  padding: 100px auto;*/
}

.home section,
.home footer {
  margin-top: 0px;
}

section.fixed {
  padding: 0px;
}

.home section.fixed {
  margin-top: 0px;
  margin-bottom: 100px;
}

.page-wrapper .after-fixed {
  margin-top: 100px;
  /*margin-top: 0px;*/
  /*padding-top: 100px;*/
  padding-bottom: 0px;
}

.dark .content {
  background: var(--magenta-light);
}

.fixed .content {
  z-index: 2;
  position: relative;
  /*margin: -50px 0px;*/
  /*margin: -100px -30px;*/
  /*padding: 100px 0px;*/
  /*padding: 100px 30px;*/
}

.fixed .content .text {
  margin-bottom: 0px;
}

.spacer {
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  height: calc(100vh + 200px);
}

.fixed-media {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 1; /* Behind everything initially */
  overflow: hidden;
}

.scroll-over {
  height: 100vh;
  background: transparent;
}

/* Our work section styling */
.row .text {
  margin-bottom: 0px;
}

.dark .light .content {
  background: transparent;
}

section .media video,
video {
  max-height: 100vh;
  width: 100%;
  height: 100vh;
  object-fit: cover;
  z-index: 3;
  min-width: 100%;
}

section h2 {
  font-size: 40px;
  font-weight: 900;
}

section h3 {
  font-size: 30px;
  font-weight: 700;
}

.table {
  /*padding: 0px 30px;*/
  display: flex;
  gap: 50px;
  flex-direction: column;
  margin-bottom: 50px;
}

.double .table {
  gap: 40px;
}

.row {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0px;
  position: relative;
  overflow: hidden;
}

.row .content {
  flex-direction: column;
}

.home .row .number,
.home .row .title,
.home .row .text {
  padding: 0px 30px;
}

.steps .step {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.step .title {
  display: block;
}

#step-1 {
  background-image: url("./media/step-1.webp");
}

#step-2 {
  background-image: url("./media/step-2.webp");
}

#step-3 {
  background-image: url("./media/step-3.webp");
}

#step-4 {
  background-image: url("./media/step-4.webp");
}

.row .overlay {
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
}

.row .content {
  position: relative;
  z-index: 2;
}

.row .title {
  margin: 30px 0;
}

.row .number,
.call-to-action .title {
  margin-top: 50px;
}

.row .text {
  margin-bottom: 50px;
}

/* .row .number p */
.table .number p {
  font-family: Outfit;
  font-size: 150px;
  font-weight: 900;
  line-height: calc(1em * 190/250);
}

/* Premium work section styling */
.desktop {
  display: none;
}

.phone {
  display: flex;
}

.center .phone {
  margin: 0 auto;
}

.large-gap .title {
  margin-bottom: 50px;
}

.large-gap .row .title {
  /*margin: 50px 0px 30px 0px;*/
  margin: 50px auto 30px 0;
}

.large-gap .row .title,
.large-gap .row .text {
  padding: 0px;
}

.large-gap .row .text {
  margin: 0px;
}

.clients .row .image {
  overflow: hidden;
  display: flex;
  align-items: center;
  /*width: max-content;*/
  /*max-height: 330px;*/
}

.clients .row .image img {
  /*width: 100%;*/
  /*max-width: 100%;
  max-height: 330px;*/
  width: 100%;
}

.left {
  text-align: left;
}

/* Testimonials styling */
.testimonials,
.call-to-action .table {
  margin-bottom: 0;
}

/*
.testimonials p {
  color: var(--black);
}
*/

.dark.outline {
  border: 3px solid var(--white);
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.light .outline {
  border: 2px solid var(--magenta-light);
}

.testimonials .row {
  /*padding: 48px 41px;*/
  padding: 30px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.testimonials .row .testimonial {
  display: flex;
  flex-direction: column;
  gap: 40px;
  width: 100%;
}

.testimonials .row .text {
  margin-bottom: 0px;
  padding: 0px;
}

.testimonials .image {
  /*
  width: 150px;
  height: 150px;
  */
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  /*
  border-radius: 50%;
  padding: 10px;
  */
}

.testimonials .image img {
  width: 100%;
}

/*
#tension-fabrics .image {
  background-color: var(--tension-fabrics);
}
*/

#tension-fabrics .image img {
  width: auto;
  height: 150px;
}

.box {
  box-shadow: 0px 4px 20px 5px rgba(0, 0, 0, 0.25);
}

.author {
  /*font-weight: 700;*/
  margin-bottom: 10px;
}

.role {
  margin-bottom: 5px;
}

.role,
.client {
  /*font-size: 15px;*/
  /*font-weight: 500;*/
}

.role,
.client,
.author {
  font-size: 20px;
}

/* Call to action section styling */
.call-to-action .table .row {
  display: flex;
  flex-direction: column;
  gap: 75px;
}

.call-to-action .row {
  padding: 0px 30px;
}

.call-to-action .table .row .title,
.call-to-action .table .row .text {
  padding: 0px;
}

/*
.call-to-action .table .row,
.call-to-action .table .row .title,
.call-to-action .table .row .text {
  background: var(--white);
  color: var(--magenta-light);
}
*/

.call-to-action .title {
  margin-bottom: 0px;
}

.call-to-action .text {
  margin-bottom: 0px;
}

.call-to-action .info {
  margin-bottom: 50px;
}

/* Footer styling */
.full-width .table {
  padding: 0;
}

footer {
  gap: 60px;
}

footer .table {
  margin-bottom: 0;
}

footer .row {
  gap: 60px;
}

footer .row .logos .title,
footer .row .logos .text {
  margin: 0;
  padding: 0;
}

footer .main-content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

footer .logos {
  margin-top: 50px;
  display: flex;
  flex-direction: column;
  gap: 30px;
}

footer .logos .taaurus {
  display: flex;
  gap: 25px;
  align-items: center;
  justify-content: center;
}

.taaurus p {
  font-size: 35px;
}

footer .logos .text {
  font-family: Outfit;
  font-size: 35px;
  font-weight: 700;
  margin-bottom: 0px;
}

footer .logos .socials {
  display: flex;
  gap: 25px;
  justify-content: center;
  margin: 10px 0px;
}

footer .logos .socials a:hover {
  scale: 1.2;
}

footer .sitemap {
  display: flex;
  justify-content: center;
  gap: 100px;
  margin: 0px 50px;
}

.home .sitemap .title {
  padding: 0px;
}

footer .sitemap .title {
  margin-bottom: 25px;
}

footer .sitemap .links ul {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

footer .sitemap .links a {
  font-size: 16px;
  display: inline-block;
}

footer .sitemap a:hover,
footer .tac a:hover {
  scale: 1.1;
  transition: scale 0.1s;
}

footer .forms {
  /*margin-top: 90px;*/
  margin-bottom: 25px;
  display: flex;
  flex-direction: column;
  gap: 30px;
  padding: 0px 50px;
  justify-content: center;
}

footer .forms .tac {
  display: flex;
  gap: 50px;
  justify-content: center;
}

footer .www {
  text-align: center;
}

footer .www p {
  font-size: 12px;
}

/* About page styling */
.black {
  color: var(--black);
}

.light section .half .text {
  margin-bottom: 75px;
}

.page-wrapper .squeeze {
  /*overflow: visible;*/
  min-height: auto;
  justify-content: left;
}

.light .squeeze {
  background: var(--white);
}

.page-wrapper.light {
  gap: 150px;
}

.page-wrapper.light section {
  /*margin: 0px;*/
  /*padding: 0px;*/
}

.page-wrapper.light .fixed .content {
  padding: 0px;
  margin: 0px;
}

.page-wrapper .squeeze .max-height {
  height: auto;
  margin-top: 117px;
  margin-bottom: auto;
  /*margin-left: 30px;
  margin-right: 30px;*/
}

.page-wrapper .squeeze .max-height .info {
  padding-top: 50px;
  gap: 75px;
  /*margin-bottom: 50px;*/
}

.page-wrapper .squeeze .max-height .info .carousel:not(.all) {
  margin-bottom: 50px;
}

.squeeze .info {
  margin-top: 0px;
}

.page-wrapper.light .squeeze .sub-info {
  /*max-width: calc(100vw - 60px);*/
  width: calc(100vw - 60px);
}

.page-wrapper.light .about-us .carousel:not(.all) .image,
.page-wrapper.light .about-us .carousel:not(.all) .image img  {
  width: calc(100vw - 60px);
}

/*
.page-wrapper.light .about-us {
  overflow: hidden;
}
*/

/*
.about-us .carousel {
  overflow-x: scroll;
}
*/

/*carousel:not(.all) {
  height: 650px;
}
*/

.carousel img {
  max-height: 100%;
}

.info .carousel,
.info .carousel .part {
  display: flex;
}

.info .carousel {
  gap: 50px;
}

.info .carousel.all {
  width: 100%;
}

.carousel.all,
.carousel.all .part {
  gap: 10px;
}

.info .carousel,
.info .carousel .part {
  gap: 50px;
}

.info .carousel:all,
.info .carousel:all .part {
  gap: 10px;
}

.info .carousel {
  margin-right: 0px;
}

/*
.about-us .carousel {
  animation: scroll-left 10s linear infinite;
}
*/

/*
.carousel {
  overflow-x: scroll;
}
*/

section .title {
  margin-bottom: 75px;
}

section .media {
  margin-top: 75px;
}

.max-height {
  /*height: 844px;*/
  /*height: 100vh;*/
}

.max-width {
  overflow: hidden;
  display: flex;
  align-items: center;
}

.max-width,
.max-width img {
  width: 100%;
}

.dropdowns {
  display: flex;
  flex-direction: column;
  gap: 30px;
  /*margin: 0px 30px;*/
}

.dropdowns .dropdown {
  border: 2px solid var(--white);
  display: flex;
  flex-direction: column;
}

.dropdowns .dropdown .content {
  display: none;
}

.dropdowns .dark {
  padding: 30px;
  background: var(--magenta-light);
  colour: var(--white);
}

.dropdowns svg,
.dropdowns .dropdown,
.dropdowns .dropdown .arrow,
.dropdowns .content {
  transition: all 0.2s;
}

.dropdowns .dropdown.active {
  border: 2px solid var(--magenta-light);
  background: var(--white);
  gap: 30px;
}

.dropdowns .dropdown.active .text {
  color: var(--black);
}

.dropdowns .dropdown.active .title {
  color: var(--magenta-light);
}

.dropdowns .dropdown .content {
  display: flex;
  height: 0;
  overflow: hidden;
  background: var(--magenta-light);
  color: var(--white);
}

.dropdowns .dropdown.active .content {
  background: var(--white);
  color: var(--black);
  height: auto;
}

.left {
  margin-left: 0;
}

.dropdowns .dropdown.active path {
  fill: var(--white);
}

.dropdowns .dropdown.active svg {
  transform: rotate(180deg);
}

.dropdowns .dropdown.active circle {
  fill: var(--magenta-light);
}

.dropdown .prompt {
  display: flex;
  justify-content: space-between;
}

.dropdown .title,
.dropdown .open {
  display: flex;
  align-items: center;
  padding: 0px;
  margin: 0px;
}

.dropdown .open,
.dropdown .open svg {
  width: 50px;
  height: 50px;
}

.page-wrapper.light .about-us {
  overflow-x: scroll;
  overflow-y: hidden;
  scrollbar-width: none;
}

.page-wrapper.light .about-us .image {
  flex-shrink: 1;
}

.page-wrapper.light .about-us .image img {
  height: auto;
  display: block; /* optional but avoids inline spacing issues */
  object-fit: contain; /* or cover depending on your desired behavior */
}

.page-wrapper.light .about-us .image img.desktop {
  display: none;
}

.page-wrapper.light .about-us .image img.phone {
  display: block;
}

.page-wrapper.light section .title {
  margin-bottom: 75px;
}

.page-wrapper.light.work .large-gap .title {
  margin-bottom: 150px;
}

.page-wrapper.light .call-to-action {
  margin-top: 0px;
}

.page-wrapper.light .dropdown .title,
.page-wrapper.light .call-to-action .title {
  margin-bottom: 0px;
}

.page-wrapper.light section .text {
  margin-bottom: 75px;
}

.team {
  gap: 30px;
  margin-bottom: 0px;
}

.team .row {
  border: 2px solid var(--magenta-light);
  padding: 20px;
  overflow: hidden;
  /*max-height: 750px;*/
  display: flex;
  flex-direction: column;
  /*height: 70vh;*/
  /*height: 200vw;*/
  min-height: unset;
  align-items: flex-start;
  /*min-height: 721px;*/
}

.team .image {
  width: 100%;
  /*max-height: 519px;*/
  overflow: hidden;
  aspect-ratio: 1 / 1;
  display: grid;
}

.team .row:not(.new) .image,
.team .row.new .inner {
  /*flex: 1 1 auto;*/ /* grow and shrink equally */
  min-height: 0;
  display: flex;
  align-items: center;
  margin-top: 0px;
  margin-bottom: auto;
}

.team .image img {
  width: 100%;
}

.page-wrapper.light .large-gap .row .title {
  margin-top: 60px;
  margin-bottom: 30px;
  padding: 0px;
}

.page-wrapper.light .large-gap .row .sub-title {
  margin-bottom: 20px;
}

.page-wrapper.light .large-gap .row .title,
.page-wrapper.light .large-gap .row .sub-title {
  width: 100%;
}

.team .new {
  /*height: 410px;*/
  /*height: 750px;*/
  /*aspect-ratio: 1 / 1;*/
  aspect-ratio: 1/1;
}

.team .row {
  /*max-height: 750px;*/
  /*aspect-ratio: 1 / 1;*/
}

.team .match {
  /*min-height: 732.2px;*/
  /*min-height: 750px;*/
  /*min-width: 583px;*/
  aspect-ratio: 1/1;
}

.team .new .inner {
  background: var(--off-white);
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.team .inner .image,
.team .inner img {
  width: auto;
}

.call-to-action .table .dark,
.call-to-action .table .dark .title,
.call-to-action .table .dark .text {
  background: var(--magenta-light);
  color: var(--white);
}

.page-wrapper.light .call-to-action .table .text {
  margin-bottom: 0px;
}

/* Contact page styling */
.form {
  /*margin: 0px 30px;*/
  display: flex;
  justify-content: center;
}

form {
  max-width: 1330px;
  display: flex;
  flex-direction: column;
}

.floating-label {
  position: relative;
  /*margin-top: 20px;*/
}

.floating-label input {
  width: 100%;
  padding: 16px 12px 6px 12px;
  border: 2px solid #a30050;
  border-radius: 4px;
  font-size: 16px;
  outline: none;
}

.floating-label input,
.floating-label textarea {
  position: relative;
  z-index: 0;
}

.yes label {
  position: absolute;
  left: 18px;
  top: 21px;
  /*top: 6px;*/
  background: white;
  padding-right: 10px;
  /*padding: 0 4px;*/
  pointer-events: none;
  opacity: 0;
}

.floating-label input:focus + label,
.floating-label textarea:focus + label {
  /*top: -1em;*/
  z-index: 2;
  transition: all 1s;
}

.above {
  position: relative;
  z-index: 2;
  /*padding: 7.5px;*/
  /*margin: 7.5px;*/
  /*border: 1px solid red;*/
}

/*
.floating-label input + label,
.floating-label input:not(:placeholder-shown) + label,
.floating-label textarea + label,
.floating-label textarea:not(:placeholder-shown) + label {
  transition: left 0.5s, top 0.5s, background 0s 0.5s;
  background: transparent;
}

.floating-label::before {
  content: "";
  transition: width 0.5s, height 0.5s;
  width: 0;
  height: 0;
  position: relative;
  left: 0px;
  top: -1em;
  font-size: 16px;
  opacity: 1;
  display: inline-block; *//* or just inline *//*
  width: auto;
}

.floating-label:focus::before {
  content: "";
  transition: width 0.5s, height 0.5s;
  width: 100%;
  height: 100%;
  background: var(--white);
  left: 0px;
  top: -1em;
  opacity: 1;
}
*/

.label-container {
  width: fit-content;
  position: absolute;
  left: 13px;
  top: -1em;
}

.label-container label {
  position: relative;
  left: 5px;
  top: 37px;
}

.floating-label:has(input:focus) label,
.floating-label:has(textarea:focus) label {
  left: -14px;
  top: 0px;
}

.label-container::before {
  content: "";
  position: absolute;
  height: 3px;
  left: 50%;
  top: calc(50% - 1px);
  width: 0%;
  transition: left 0.25s 0.25s, top 0.25s 0s, width 0.25s 0.25s, height 0s 0.25s;
  background: white;
}

.floating-label:has(input:focus) .label-container::before,
.floating-label:has(textarea:focus) .label-container::before {
  left: -14px;
  width: calc(100% + 10px);
  height: 1em;
  transition: left 0.25s, top 0s, width 0.5s, height 0.25s 0.25s;
}

.yes::before {
  content: "";
  transition: width 0.5s, height 0.5s;
  width: 0;
  height: 0;
  position: absolute;
  left: -50%;
  /*top: -1em;*/
  font-size: 16px;
  opacity: 1;
  /*display: inline-block;*/ /* or just inline */
  width: auto;
  /*display: flex;*/
  display: inline-block;
  align-items: center;
  /*background: transparent;*/
  width: 0%;
  /*height: 2em;*/
  /*height: 100%;*/
  height: 1.5em;
  transition: all 1s;
  /*top: calc(-19px - 0.5em);*/
  /*top: calc(-19px + 0.5em);*/
  top: -0.75em;
  left: -7.5px;
  /*top: -19px;
  left: -18px;*/
  opacity: 1;
  background: white;
  padding: 0px;
  /*border: 1px solid red;*/
}

.floating-label:has(input:focus) .yes::before,
.floating-label:has(textarea:focus) .yes::before {
  /*position: absolute;*/
  width: calc(100% + 7.5px);
  /*width: fit-content;*/
  /*height: 1.5em;*/
  /*left: -50%;*/
  display: flex;
  transition: top 0.2s, left 0.2s, width 2s, height 2s;
  background: white;
  /*top: 1.25em;*/
  top: -0.75em;
  left: -7.5px;
  z-index: 1;
  border: 1px solid black;
}

.floating-label:has(input:focus) .yes {
  top: 1em;
  left: 0px;
}

.floating-label input + label,
.floating-label input::placeholder + label,
.floating-label textarea + label,
.floating-label textarea::placeholder + label {
  background: transparent;
  transition: left 1s, top 1s;
}

.floating-label input:focus + label,
.floating-label input:not(:placeholder-shown) + label,
.floating-label textarea:focus + label,
.floating-label textarea:not(:placeholder-shown) + label {
  left: 0px;
  top: -2em;
  opacity: 1;
  transition: left 1s, top 1s, opacity 1s 0s;
  background: transparent;
  /*background: var(--white);*/
}

input::placeholder,
textarea::placeholder {
  transition: all 1s;
  opacity: 0;
}

input:placeholder-shown:not(:focus)::placeholder
textarea:placeholder-shown:not(:focus)::placeholder {
  opacity: 1;
}

input:focus::placeholder,
textarea:focus::placeholder {
  color: transparent;
  transition: all 1s;
}

input:focus,
textarea:focus {
  outline: none;
}

input:not([type="submit"]) {
  margin-bottom: 30px;
  display: flex;
  height: 75px;
  align-items: center;
  gap: 10px;
  align-self: stretch;
}

input[type="submit"] {
  align-self: start;
}

textarea {
  margin-bottom: 50px;
}

input:not([type="submit"]),
textarea {
  border: 2px solid var(--magenta-light);
  padding: 19px 16px;
  width: 100%;
}

label,
input,
textarea,
input::placeholder,
textarea::placeholder {
  color: var(--Magenta-Light, #A30046);
  font-family: Poppins;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 33px;
  transition: left 1s, top 1s;
}

/* Our work page styling */
.page-wrapper .squeeze .max-height .info {
  margin-bottom: 0px;
}

/*
.info .all {
  width: 100%;
}
*/

.info .all .part {
  /*width: 100%;*/
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 10px;
}

.info .all .part .image {
  display: flex;
  /*width: 100%;*/
}

.info .all .part .image img {
  width: 100%;
}

/*
.info .all .part.off-screen {
  display: none;
}
*/
.info .part.off-screen {
  display: none;
}

.content.our-work {
  display: flex;
  flex-direction: column;
  /*gap: 75px;*/
  gap: 150px;
}

.work .large-gap .info {
  margin-top: 75px;
}

.sub-info .unreveal.hide,
.reveal.hide {
  display: none;
}

.our-work .table,
.our-work .table .service,
.our-work .table .service .service-group {
  display: flex;
  flex-direction: column;
  gap: 30px;
  margin-bottom: 0px;
}

.our-work .table .service.hidden,
.our-work .table .service .service-group.hidden {
  display: none;
}

.service-group .row {
  justify-content: flex-start;
}

.our-work .our-clients .client-info {
  margin-right: auto;
}

.media.full {
  margin: 0px -30px;
  margin-top: 0px;
  max-height: 844px;
  overflow-y: hidden;
}

.media.full .phone,
.media.full .desktop {
  width: 100%;
}

.our-work .sub-title {
  display: flex;
  flex-direction: column;
  gap: 75px;
}

.expandable {
  position: relative;
  overflow: hidden;
  width: max-content;
  padding-bottom: 8px;
  color: var(--dark-grey);
  transition: all 0.3s ease;
}

.expandable button {
  border: none;
  background: none;
  transition: all 0.3s ease;
  color: var(--dark-grey);
}

.expandable.active,
.expandable.active button,
.expandable:hover,
.expandable:hover button {
  color: var(--magenta-light);
}

.expandable::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  height: 2px; /* line thickness */
  width: 50px;
  background: var(--dark-grey);
  /*background: var(--magenta-light);*/
  transition: all 0.3s ease;
}

.expandable.active::after,
.expandable:hover::after {
  background: var(--magenta-light);
}

.expandable:hover::after {
  width: 100%;
}

.page-wrapper.light .large-gap .our-work .row .title {
  margin: 20px 0px;
}

.page-wrapper.light .our-work .row .text {
  margin-bottom: 0px;
  color: var(--black);
}

.page-wrapper.light section .no-subheading h2 {
  font-weight: 400;
}

/* Services styling */

/* What we offer styling */
.offers .row {
  gap: 50px;
}

.service-info {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.row .service-title {
  display: flex;
  align-items: flex-start;
  gap: 30px;
}

.row .service-title .number {
  margin: 0px;
}

.service-info .number p {
  font-size: 30px;
  line-height: calc(46/30);
}

.page-wrapper.light .large-gap .row .service-title .title,
.page-wrapper.light .large-gap .row .process-title .title {
  margin: 0px;
}

.page-wrapper.light .service-info .text {
  margin-bottom: 50px;
}

.page-wrapper.light .service-content p {
  color: var(--dark-grey);
}

.table.services:not(.process) .image,
.table.services:not(.process) .image img {
  width: 100%;
}

/* How we do this/ process styling */
.table.process .image {
  width: 100%;
  height: 568px;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.table.process .image img {
  /*height: 100%;*/
  min-height: 100%;
  min-width: 100%;
}

/*.process-title*/
.table.process .row {
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.process-title {
  display: flex;
  margin-right: auto;
}

.page-wrapper.light .large-gap .process .row .sub-title,
.page-wrapper.light .service-info .text {
  margin-bottom: 0px;
}

.process h4 {
  font-size: 30px;
  font-weight: 400;
  text-align: left;
}

.page-wrapper.light .large-gap .row .process-title .sub-title {
  margin-bottom: 0px;
}

.process .service-info {
  gap: 50px;
}

.process .service-content {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

/* Testimonial styling */
.page-wrapper.services .title.bigger-gap {
  margin-bottom: 100px;
}

.services .testimonials .row {
  padding: 48px 41px;
}

.page-wrapper.services .testimonial .text {
  margin: 0px;
}

.services .testimonial p {
  font-size: 30px;
  font-weight: 900;
}

.services .testimonial .image {
  max-width: 100px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
}

/* Careers page styling */

/* Positions section styling */
.page-wrapper.light .positions .text {
  margin-bottom: 0px;
  margin-top: 75px;
}

.careers .content .center {
  display: flex;
}

/* Terms and conditions page styling */
.page-wrapper.light.other h1 {
  font-size: 65px;
}

.page-wrapper.light.other section .title,
.page-wrapper.light.other section .sub-title,
.page-wrapper.light.other section .text {
  margin-bottom: 50px;
}

.other section h2 {
  font-weight: 400;
}

.other.light .content {
  color: var(--black);
}

.other section h3 {
  font-size: 20px;
  font-weight: 600;
}

.error h1,
.error p,
.error a {
  margin: 0 auto;
}

.error h1 {
  text-align: center;
  font-size: 50px;
  line-height: normal;
}

.error .media-info,
.error .media {
  height: 212.971px;
  /*height: 30vh;*/
  align-self: stretch;
  aspect-ratio: 330.00/212.97;
}

.error .media {
  margin: 0px auto;
  display: flex;
  align-items: center;
}

.error .banner {
  height: 100vh;
}

.page-wrapper.error .squeeze .max-height {
  margin: 0 auto;
}

.page-wrapper.error .squeeze .max-height .info {
  /*padding-top: 0;*/
  gap: 0;
  display: flex;
  flex-direction: column;
  padding: 50px 0px;
  height: calc(100vh - 117px);
  max-width: none;
}

.page-wrapper.error .squeeze .max-height .info .sub-info {
  margin: auto;
  display: flex;
  justify-content: center;
  max-width: none;
  /*width: 100%;*/
}

.page-wrapper.error .sub-info.inline a {
  padding: 0;
  border: none;
  font-size: unset;
  text-decoration: underline;
}

.page-wrapper.error .sub-info.inline a:focus,
.page-wrapper.error .sub-info.inline a:hover {
  background: var(--white);
  color: var(--magenta-light);
}

@media (min-width: 800px) {
  /*
  .navigate {
    display: flex;
    margin-bottom: 0;
    margin-top: auto;
  }
  */

  /* Navigation page styling */
  .navigate ul {
    gap: 25px;
  }

  .navigate li {
    display: flex;
    align-items: center;
    overflow: hidden;
    max-height: 40px;
    font-size: 50px;
  }

  /* Home page Premium work styling */
  .table.clients .row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 50px;
  }

  .clients .row .image {
    max-height: none;
  }

  .large-gap .row .title {
    margin-top: 0px;
  }

  /* Work page clients section */
  .page-wrapper.light .large-gap .our-work .row .title {
    margin-top: 0px;
    margin-bottom: 30px;
  }

  /* Error pages styling */
  .page-wrapper.error .squeeze .max-height {
    margin: 0px auto;
  }

  .page-wrapper.error .squeeze .max-height .info {
    height: 100vh;
    padding: 25px 0px;
  }

  .page-wrapper.error .squeeze .max-height .info .sub-info {
    width: 100%;
  }

  .error .media-info,
  .error .media {
    /*height: 212.971px;*/
    height: 30vh;
  }

  .error img {
    height: 50vh;
  }

}

@media (min-width: 1000px) {

  .max-height {
    height: auto;
    align-items: flex-start;
  }

  /* Styles for screens 1000px and wider - Desktop */
  section {
    margin-top: 100px;
    padding: 0px 50px;
  }

  section .title,
  section .text {
    display: block;
  }

  /* Landing screen */
  .logo,
  .hamburger {
    margin: 30px 50px;
  }

  .center h1,
  .center h2,
  .center h3,
  .center h4,
  .center h5,
  .center h6,
  .left-on-phone p {
    text-align: center;
  }

  .large-gap .clients h3 {
    text-align: left;
  }

  .page-wrapper .banner {
    padding: 0 50px;
  }

  .home .max-height {
    /*margin-left: 50px;*/
  }

  .banner .info {
    gap: 50px;
    max-width: 826px;
    margin-left: 0;
    margin-right: auto;
  }

  p {
    font-size: 30px;
    line-height: 40px;
  }

  .banner .info .sub-info p {
    letter-spacing: -0.06px;
  }

  .banner h1,
  .page-wrapper.light.other h1 {
    font-size: 150px;
    line-height: 140px;
  }

  /* Nav screen */
  .navigation {
    /*padding: 0px 100px;*/ /* Changed to match section padding */
    padding: 0px 50px;
  }

  .navigate {
    max-width: 872px;
  }

  .navigate ul {
    gap: 60px;
  }

  .navigate li {
    display: flex;
    align-items: center;
    overflow: hidden;
    max-height: 115px;
    font-size: 150px;
  }

  /* Sections styling */

  /* Pop up text statement styling */
  /*
  .home section,
  .home footer {
    margin: -100px 0px;
  }*/

  /*
  .home section {*/
    /*margin: -100px 0px;*/
    /*padding: 200px 50px 0px 50px;*/
    /*padding: 0px 50px;*/
    /*padding: 0px;*/
  /*}*/

  .home .fixed {
    padding: 0px;
  }

  /* Pop up text statement styling */
  section {
    /*margin: -100px 0px;*/
    margin: 0px 50px;
    padding: 0px;
    /*padding: 200px 50px 0px 50px;*/
    /*padding: 0px 50px;*/
    /*padding: 0px;*/
  }

  .home section,
  .home footer {
    margin-top: 100px;
    /*margin: -100px 0px;*/
  }

  .home footer {
    /*margin: -100px 0px;*/
    /*padding: 200px 0px 0px 0px;*/
  }

  .fixed .content {
    /*margin: -100px 0px;*/
    /*padding: 200px 50px 100px 50px;*/
  }

  .spacer {
    height: 100vh;
  }

  .half {
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow: hidden;
  }

  .content {
    /*padding: 0px 100px;*/
    gap: 100px;
  }

  section h2 {
    font-size: 75px;
    font-weight: 700;
    line-height: 75px;
  }

  .other section h2 {
    font-size: 50px;
  }

  section .text,
  section .title {
    margin-bottom: 0px;
    padding: 0px;
  }

  /* What we offer styling */
  .page-wrapper .after-fixed {
    /*margin-bottom: 200px;*/
    /*padding-top: 200px;*/
    margin-top: 200px;
  }

  .page-wrapper footer.after-fixed {
    margin-bottom: 0px;
    /*margin-top: -100px;*/
  }

  .center {
    margin-top: 100px;
  }

  footer .center {
    margin-top: 0px;
  }

  .center .table .row {
    max-width: 100%;
  }

  .double .title {
    margin-bottom: 30px;
  }

  .center .text {
    margin-bottom: 100px;
  }

  .grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .steps .table .light {
    color: var(--white);
  }

  .steps .grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .table {
    /*margin: 0px 50px;*/
    margin-bottom: 100px;
    justify-content: center;
  }

  /*
  .table .row {
    background-color: var(--magenta-light);
  }
  */

  .table .content {
    /*
    padding: 250px 30px;
    */
    padding: 100px 30px;
  }

  .steps .row .content {
    justify-content: space-between;
  }

  .steps .row,
  .steps .row .content {
    min-height: 600px;
  }

  .content .text {
    margin-bottom: 0px;
  }

  .row,
  .row .overlay,
  #step-1,
  #step-2,
  #step-3,
  #step-4,
  .row .content {
    transition: all 0.1s;
  }

  .steps .light {
    color: var(--white);
  }

  .step {
    margin: 50px 0px;
  }

  .step:hover {
    /*
    margin: 0px;
    */
    /*
    transform: scaleY(1.1);
    */
    margin: 0px;
    padding: 50px 0px;
  }

  .step p {
    font-size: 20px;
  }

  .row {
    border: 3px solid var(--white);
  }

  .row .overlay {
    background: none;
    background-color: var(--magenta-light);
  }

  .row .content {
    display: flex;
    gap: 40px;
  }

  .row .number {
    margin-top: 0px;
  }

  .row .title {
    margin: 0px;
  }

  /*
  .row .number,
  .row .title,
  .row .text {
    color: var(--white);
  }
  */

  .center .table .step {
    max-width: 400px;
  }

  .step:hover .number,
  .step:hover .title,
  .step:hover .text {
    color: var(--magenta-light);
  }

  .row:hover .overlay {
    background-color: rgba(255, 255, 255, 0.8);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }

  .info {
    width: 100%;
  }

  /* Premium work section */
  .large-gap .table {
    margin-top: 100px;
    margin-bottom: 0px;
    /*
    grid-template-columns: 1fr 1fr;
    */
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    padding: 0px;
  }

  .table.clients {
    flex-wrap: nowrap;
  }

  .large-gap .title {
    margin-bottom: 0;
  }

  .large-gap .clients {
    /*margin-bottom: 100px;*/
    margin-top: 75px;
    margin-bottom: 75px;
  }

  .large-gap .clients.our-clients {
    margin-top: 0px;
    margin-bottom: 0px;
  }

  .clients .row {
    border: none;
    align-items: normal;
  }

  .table.clients .row {
    max-width: 800px;
    display: flex;
    flex-direction: column;
    /*gap: 0px;*/
  }

  .clients .image {
    /*margin-bottom: 50px;*/
    margin-bottom: 0px;
  }

  .clients .row .image {
    max-height: none;
  }

  .clients .row .image img {
    max-height: none;
  }

  .clients .title {
    margin-bottom: 30px;
  }

  .clients .text {
    margin-bottom: 0px;
    /*margin-bottom: 50px;*/
  }

  .clients .text p {
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
  }

  .desktop {
    display: flex;
  }

  .phone {
    display: none;
  }

  /* Testimonials styling */
  .testimonials.table .row:hover {
    background: var(--white);
    color: var(--magenta-light);
  }

  .testimonials.table .row {
    width: calc(50% - 25px);
    min-width: 500px;
  }

  /*
  .testimonials .row {
    background: var(--white);
    border: none;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    flex-direction: row;
  }

  span {
    display: flex;
    color: var(--black);
  }

  #tension-fabrics .image img,
  .testimonials .image,
  .testimonials .image img {
    height: 200px;
    width: 200px;
  }

  .testimonials .image {
    display: block;
    padding: 0;
    overflow: visible;
  }

  .testimonials .author {
    font-weight: 500;
  }

  .author,
  .role,
  .client {
    margin-bottom: 0;
  }
  */

  /* Call to action section styling */
  .home .call-to-action {
    /*margin-top: 100px;*/
    /*margin-bottom: -200px;*/
    /*padding-bottom: 100px;*/
    /*padding-bottom: 300px;*/
    /*
    margin-bottom: -100px;
    padding-bottom: 200px;
    */
  }

  .page-wrapper .call-to-action {
    /*padding: 0;*/
    /*margin: 0;*/
  }

  .page-wrapper.light .call-to-action {
    padding: 0;
  }

  .call-to-action .row {
    /*background: var(--white);*/
    padding: 100px 200px;
  }

  .call-to-action .info {
    margin-bottom: 0px;
  }

  .call-to-action .title,
  .call-to-action .text {
    margin: 0px;
    padding: 0px;
    /*color: var(--magenta-light);*/
  }

  /* Footer styling */
  .full-width .table {
    margin: 0;
    display: block;
  }

  footer .table .row {
    background: var(--white);
  }

  footer .row {
    gap: 150px;
    border: none;
  }

  footer .table .row .main-content {
    display: grid;
    grid-template-columns: 3fr 1fr;
    /*margin: 75px 0px 50px 0px;*/
    margin: 75px 0px 0px 0px;
    width: 100%;
  }

  footer .logos {
    gap: 25px;
    margin: 0px;
  }

  footer .logos .taaurus,
  footer .logos .socials {
    margin-left: 50px;
    margin-right: 50px;
    align-items: center;
    justify-content: left;
  }

  footer .sitemap {
    margin: 0px 50px 0px 50px;
    justify-content: right;
  }

  footer .table .text,
  footer .table .title {
    color: var(--magenta-light);
  }

  footer .forms {
    width: 100%;
    padding: 0px;
    margin-bottom: 0px;
    gap: 50px;
  }

  footer .www {
    background: var(--magenta-light);
    color: var(--white);
    display: flex;
    align-items: end;
    justify-content: center;
  }

  footer .www,
  footer .www p {
    height: 15px;
    line-height: calc(12/12 * 1em);
  }

  /* About us page styling */
  .page-wrapper.light {
    gap: 250px;
  }

  .page-wrapper.less-gap {
    gap: 150px;
  }

  .page-wrapper.light .about-us {
    overflow-x: hidden;
  }

  .squeeze .sub-info {
    max-width: calc(100vw - 200px);
  }

  .page-wrapper .squeeze .max-height {
    /*margin-left: 50px;
    margin-right: 50px;*/
  }

  .page-wrapper .squeeze .max-height .info {
    padding-top: 100px;
  }

  .page-wrapper.light .squeeze .about-us {
    margin-left: -50px;
    max-width: 100vw;
  }

  /*
  .carousel {
    height: 650px;
  }
  */

  /*
  .carousel {
    animation: scroll-left 10s linear infinite;
    overflow-x: hidden;
  }
  */

  .about-us .carousel {
    animation: scroll-left 20s linear infinite;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .carousel:not(.all) {
    height: 650px;
  }

  .carousel:hover {
    animation-play-state: paused;
  }

  .carousel img {
    height: 100%;
  }

  .page-wrapper.light .about-us .carousel:not(.all) .image,
  .page-wrapper.light .about-us .carousel:not(.all) .image img  {
    width: auto;
  }

  .page-wrapper.light .about-us .image img {
    max-height: 650px;
    width: auto;
    height: auto;
    display: block; /* optional but avoids inline spacing issues */
    object-fit: contain; /* or cover depending on your desired behavior */
    margin: 0px auto;
  }

  .page-wrapper.light .about-us .image img.phone {
    display: none;
  }

  .page-wrapper.light .about-us .image img.desktop {
    display: block;
  }

  .page-wrapper.light section .half .title {
    margin-bottom: 75px;
  }

  .page-wrapper.light section .half .text {
    margin-bottom: 0px;
  }

  .page-wrapper.light .half {
    gap: 75px;
    /*margin: 0px 50px;*/
    /*display: flex;*/
  }

  .page-wrapper.light.about .half {
    display: grid;
  }


  .page-wrapper.light section .content {
    padding: 0px;
  }

  .page-wrapper.light .large-gap {
    /*margin: 0px 50px;*/
  }

  .page-wrapper.light section .media {
    margin-top: 0px;
  }

  .page-wrapper.light .table .light {
    background: var(--white);
    color: var(--magenta-light);
  }

  .table .light {
    color: var(--magenta-light);
  }

  .dropdowns {
    /*margin: 0px 50px;*/
  }

  .dropdowns .dark {
    padding: 50px;
  }

  .large-gap .team {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .team {
    gap: 50px;
    margin: 0px;
  }

  .page-wrapper.light .large-gap .team {
    margin: 0px;
  }

  .team a {
    display: flex;
  }

  .team .row {
    padding: 30px;
  }

  .team .row {
    /*border: 2px solid var(--magenta-light);
    padding: 20px;
    overflow: hidden;*/
    /*max-height: 750px;*/
    display: flex;
    flex-direction: column;
    /*height: 70vh;*/
    min-height: 721px;
    height: unset;
  }

  .team .row.light:hover {
    background: var(--magenta-light);
    color: var(--white);
  }

  .team .row.light.new:hover {
    background: var(--white);
  }

  .team .row.light.new:hover .inner {
    background: var(--magenta-light);
  }

  /*
  .team .match {*/
    /*min-height: 732.2px;*/
    /*min-height: 750px;
    min-width: 583px;
  }
  */

  .team .match {
    aspect-ratio: unset;
  }

  .team .new {
    /*height: 100%;*/
    width: 100%;
    aspect-ratio: unset;
  }

  .team .image,
  .team img,
  .team .new .inner {
    width: 519px;
  }

  /*
  .team .inner .image,
  .team .inner img {
    width: auto;
  }
  */

  .page-wrapper.light .contact-form .text {
    margin-bottom: 150px;
  }

  .contact-form .center {
    margin-top: 0px;
  }

  input[type="submit"] {
    align-self: center;
  }

  .page-wrapper.light .table {
    /*margin: 0px 50px;*/
  }

  .page-wrapper.light .call-to-action .info {
    margin-bottom: 0px;
  }

  .page-wrapper.light .full-width .table {
    margin: 0px;
  }

  /* Our work page styling */
  .max-height .sub-info.about-us {
    display: flex;
  }

  .info .part {
    justify-content: space-between;
  }

  .info .part.off-screen {
    display: flex;
  }

  /*
  .info .part,
  .info .all .part {
    min-width: 100vw;
  }
  */

  .carousel.all,
  .carousel.all .part {
    gap: 80px;
  }

  .info .all .part,
  .info .all .part.off-screen {
    display: flex;
  }

  .page-wrapper.light .squeeze .sub-info {
    /*max-width: calc(100vw - 60px);*/
    width: 100vw;
  }

  .page-wrapper.light .about-us .carousel.all .image img {
    height: 100px;
  }

  .banner .info .sub-info p {
    font-size: 30px;
    font-weight: 400;
    line-height: 40px; /* 133.333% */
    letter-spacing: -0.06px;
  }

  .media.full {
    margin: 0px -50px;
    margin-top: 0px;
  }

  .page-wrapper.light section .no-subheading {
    margin-bottom: 150px;
  }

  .our-work .sub-title {
    flex-direction: row;
  }

  .our-clients.table .service .service-group {
    /*max-width: calc(50% - 15px);*/
    /*max-width: unset;*/
    width: fit-content;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 75px;
  }


  /*
  .our-clients.table .row .image {
    max-width: 800px;
  }
  */

  /*
  .our-clients .row:nth-child(odd) {
    margin-left: auto;
    margin-right: 0;
  }

  .our-clients .row:nth-child(even) {
    margin-right: auto;
    margin-left: 0;
  }
  */

  .center-on-pc {
    display: flex;
    justify-content: center;
  }

  /*
  .new {
    min-height: 668.5px;
  }
  */

  .team .row:not(.new) .image,
  .team .row.new .inner {
    /*flex: 1 1 auto;*/ /* grow and shrink equally */
    margin-top: unset;
    margin-bottom: unset;
  }

  /* Navigation page styling */
  .navigate {
    display: flex;
    margin-bottom: unset;
    margin-top: unset;
  }

  .navigate ul {
    gap: 40px;
  }

  .navigate li {
    display: flex;
    align-items: center;
    overflow: hidden;
    max-height: 95px;
    font-size: 120px;
  }

  /* Home page Premium work styling */
  .grid.table.offers {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    height: fit-content;
    /*overflow: hidden;*/
    /*overflow: scroll;*/
    /*height: 100vh;*/
  }

  .offers .row {
    /*display: grid;
    grid-template-columns: 1fr 1fr;*/
    display: contents;
    align-items: flex-start;
    /*display: flex;
    flex-direction: row;*/
    /*height: 100vh;*/
  }

  .offers .service-info-container {
    position: sticky;
    top: calc(117px + 10px);
    /*top: 0px;*/
    height: fit-content;
    /*height: 100%;*/
    display: flex;
    flex-direction: column;
    gap: 50px;
  }

  .image-scroller {
    height: 100%;
    overflow-y: auto;
    padding: 0 0 100vh 0; /* gives scroll space if needed */
    scroll-behavior: smooth;
  }

  .offers .service-info {
    /*width: 50%;*/
    /*padding: 2rem;*/
    display: flex;
    /*align-items: center;*/
    /*justify-content: center;*/
    flex-direction: row;
    cursor: pointer;
    /*position: sticky;*/
    /*height: 100vh;*/
    /*background: #f9f9f9;*/
  }

  .offers .service-info:not(.disabled):not(.active) p,
  .offers .service-info:not(.disabled):not(.active) h3 {
    color: var(--off-white);
  }

  .offers .images {
    display: flex;
    flex-direction: column;
    gap: 50px;
    /*overflow: scroll;*/
    height: auto; /* default */
  }

  .offers .images .image {
    transform: translateY(-50vh) translateY(50%) translateY(58.5px);
  }

  .offers .images img {
    transform: translateY(50vh) translateY(-50%) translateY(-58.5px);
  }

  .offers .images img:first-child:not(.phone) {
    display: block;
    width: 100%;     /* or a specific width */
    height: auto;    /* ensures natural image height */
  }

  .offers .image {
    aspect-ratio: 1000 / 662;
    /*overflow: hidden;*/
  }

  .offers img {
    width: 50%;
    object-fit: cover;
  }

  .offers .content-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
  }

  .page-wrapper.light .offers .title {
    margin-bottom: 0px;
  }

  /* Our process section */
  .process .row {
    position: sticky;
    top: 117px;
    /*background-size: cover;*/
    background-size: 100% 100%;
    background-repeat: no-repeat;
    border: none;
    /*background-color: var(--white);*/ /* this needs to be for a sub-div surrounding the sub title, text and image to allow for title to still show on scroll */
    min-height: calc(100vh - 117px - 60px);
    width: 100vw;
    padding: 0px 100px;
  }

  .process .row .service-info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 100px;
    height: calc(100vh - 117px - 120px);
    align-items: center;
    margin-top: 50px;
  }

  .process #discovery-step {
    background-image: url("./media/discovery-background.svg");
  }

  .process #content-step {
    background-image: url("./media/content-background.svg");
  }

  .process #design-step {
    background-image: url("./media/design-background.svg");
  }

  .process #implement-step {
    background-image: url("./media/implement-background.svg");
  }

  .process #testing-step {
    background-image: url("./media/testing-background.svg");
  }

  .process #launch-step {
    background-image: url("./media/launch-background.svg");
  }

  .full-on-desktop {
    margin: 0px -50px;
  }

  .process-title {
    position: absolute;
    top: 0.5vh;
    transform: translateX(-50%);
  }

  .process #discovery-step .process-title {
    left: calc(14.75vw);
  }

  .process #content-step .process-title {
    left: calc(29.25vw);
  }

  .process #design-step .process-title {
    left: calc(44vw);
  }

  .process #implement-step .process-title {
    left: calc(58.5vw);
  }

  .process #testing-step .process-title {
    left: calc(73.5vw);
  }

  .process #launch-step .process-title {
    left: calc(88vw);
  }

  .process h4 {
    font-size: 50px;
    font-weight: 700;
  }

  .process p {
    line-height: 50px;
  }

  .table.process .image img {
    /*min-height: auto;
    min-width: auto;*/
    object-fit: contain;
    height: 100%;
    width: 100%;
  }

  /* Careers page styling */
  .careers .content {
    width: 100%;
    margin: 0px;
  }

  .careers .content .media {
    justify-content: center;
  }

  .careers .content .media,
  .careers .content .media img {
    width: auto;
  }

  .center-on-pc p {
    text-align: center;
  }

  .careers .positions p {
    font-weight: 700;
  }

  /* Terms and conditions page styling */
  .other section h3 {
    font-size: 30px;
  }

  .other p {
    font-size: 25px;
  }



}

@media (min-width: 1400px) {
  /* Styles for screens 1000px and wider - Desktop */
  section {
    margin-top: 100px;
    padding: 0px 50px;
  }

  section .title,
  section .text {
    display: block;
  }

  /* Landing screen */
  .logo,
  .hamburger {
    margin: 30px 50px;
  }

  .center h1,
  .center h2,
  .center h3,
  .center h4,
  .center h5,
  .center h6,
  .left-on-phone p {
    text-align: center;
  }

  .large-gap .clients h3 {
    text-align: left;
  }

  .page-wrapper .banner {
    padding: 0 50px;
  }

  .home .max-height {
    /*margin-left: 50px;*/
  }

  .banner .info {
    gap: 50px;
    max-width: 826px;
    margin-left: 0;
    margin-right: auto;
  }

  p {
    font-size: 30px;
    line-height: 40px;
  }

  .banner .info .sub-info p {
    letter-spacing: -0.06px;
  }

  .banner h1 {
    font-size: 150px;
    line-height: 140px;
  }

  /* Nav screen */
  .navigation {
    /*padding: 0px 100px;*/ /* Changed to match section padding */
    padding: 0px 50px;
  }

  .navigate {
    max-width: 872px;
  }

  .navigate ul {
    gap: 60px;
  }

  .navigate li {
    display: flex;
    align-items: center;
    overflow: hidden;
    max-height: 115px;
    font-size: 150px;
  }

  /* Sections styling */

  /* Pop up text statement styling */
  /*
  .home section,
  .home footer {
    margin: -100px 0px;
  }*/

  /*
  .home section {*/
    /*margin: -100px 0px;*/
    /*padding: 200px 50px 0px 50px;*/
    /*padding: 0px 50px;*/
    /*padding: 0px;*/
  /*}*/

  .home .fixed {
    padding: 0px;
  }

  /* Pop up text statement styling */
  section {
    /*margin: -100px 0px;*/
    margin: 0px 50px;
    padding: 0px;
    /*padding: 200px 50px 0px 50px;*/
    /*padding: 0px 50px;*/
    /*padding: 0px;*/
  }

  .home section,
  .home footer {
    margin-top: 100px;
    /*margin: -100px 0px;*/
  }

  .home footer {
    /*margin: -100px 0px;*/
    /*padding: 200px 0px 0px 0px;*/
  }

  .fixed .content {
    /*margin: -100px 0px;*/
    /*padding: 200px 50px 100px 50px;*/
  }

  .spacer {
    height: 100vh;
  }

  .half {
    display: grid;
    grid-template-columns: 1fr 1fr;
    overflow: hidden;
  }

  .content {
    /*padding: 0px 100px;*/
    gap: 100px;
  }

  .content.our-work {
    gap: 150px;
  }

  .large-gap .table.our-clients {
    margin-top: 0px;
    margin-bottom: 0px;
  }

  section h2 {
    font-size: 75px;
    font-weight: 700;
    line-height: 75px;
  }

  section .text,
  section .title {
    margin-bottom: 0px;
    padding: 0px;
  }

  /* What we offer styling */
  .page-wrapper .after-fixed {
    /*margin-bottom: 200px;*/
    /*padding-top: 200px;*/
    margin-top: 200px;
  }

  .page-wrapper footer.after-fixed {
    margin-bottom: 0px;
    /*margin-top: -100px;*/
  }

  .center {
    margin-top: 100px;
  }

  footer .center {
    margin-top: 0px;
  }

  .center .table .row {
    max-width: 100%;
  }

  .double .title {
    margin-bottom: 30px;
  }

  .center .text {
    margin-bottom: 100px;
  }

  .grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .steps .table .light {
    color: var(--white);
  }

  .steps .grid {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

  .table {
    /*margin: 0px 50px;*/
    margin-bottom: 100px;
    justify-content: center;
  }

  /*
  .table .row {
    background-color: var(--magenta-light);
  }
  */

  .table .content {
    /*
    padding: 250px 30px;
    */
    padding: 100px 30px;
  }

  .steps .row .content {
    justify-content: space-between;
  }

  .steps .row,
  .steps .row .content {
    min-height: 600px;
  }

  .content .text {
    margin-bottom: 0px;
  }

  .row,
  .row .overlay,
  #step-1,
  #step-2,
  #step-3,
  #step-4,
  .row .content {
    transition: all 0.1s;
  }

  .steps .light {
    color: var(--white);
  }

  .step {
    margin: 50px 0px;
  }

  .step:hover {
    /*
    margin: 0px;
    */
    /*
    transform: scaleY(1.1);
    */
    margin: 0px;
    padding: 50px 0px;
  }

  .step p {
    font-size: 20px;
  }

  .row {
    border: 3px solid var(--white);
  }

  .row .overlay {
    background: none;
    background-color: var(--magenta-light);
  }

  .row .content {
    display: flex;
    gap: 40px;
  }

  .row .number {
    margin-top: 0px;
  }

  .row .title {
    margin: 0px;
  }

  /*
  .row .number,
  .row .title,
  .row .text {
    color: var(--white);
  }
  */

  .center .table .step {
    max-width: 400px;
  }

  .step:hover .number,
  .step:hover .title,
  .step:hover .text {
    color: var(--magenta-light);
  }

  .row:hover .overlay {
    background-color: rgba(255, 255, 255, 0.8);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }

  .info {
    width: 100%;
  }

  /* Premium work section */
  .large-gap .table {
    margin-top: 100px;
    margin-bottom: 0px;
    /*
    grid-template-columns: 1fr 1fr;
    */
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    padding: 0px;
  }

  .table.clients {
    flex-wrap: nowrap;
  }

  .large-gap .title {
    margin-bottom: 0;
  }

  .large-gap .clients {
    margin-bottom: 100px;
  }

  .clients .row {
    border: none;
    align-items: normal;
  }

  .clients.table .row {
    max-width: 800px;
  }

  .clients .image {
    /*margin-bottom: 50px;*/
    margin-bottom: 0px;
  }

  .clients .row .image {
    max-height: none;
  }

  .clients .row .image img {
    max-height: none;
  }

  .clients .title {
    margin-bottom: 30px;
  }

  .clients .text {
    margin-bottom: 0px;
    /*margin-bottom: 50px;*/
  }

  .clients .text p {
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
  }

  .desktop {
    display: flex;
  }

  .phone {
    display: none;
  }

  /* Testimonials styling */
  .testimonials.table .row:hover {
    background: var(--white);
    color: var(--magenta-light);
  }

  .testimonials.table .row {
    width: calc(50% - 25px);
    min-width: 500px;
  }

  /*
  .testimonials .row {
    background: var(--white);
    border: none;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    flex-direction: row;
  }

  span {
    display: flex;
    color: var(--black);
  }

  #tension-fabrics .image img,
  .testimonials .image,
  .testimonials .image img {
    height: 200px;
    width: 200px;
  }

  .testimonials .image {
    display: block;
    padding: 0;
    overflow: visible;
  }

  .testimonials .author {
    font-weight: 500;
  }

  .author,
  .role,
  .client {
    margin-bottom: 0;
  }
  */

  /* Call to action section styling */
  .home .call-to-action {
    /*margin-top: 100px;*/
    /*margin-bottom: -200px;*/
    /*padding-bottom: 100px;*/
    /*padding-bottom: 300px;*/
    /*
    margin-bottom: -100px;
    padding-bottom: 200px;
    */
  }

  .page-wrapper .call-to-action {
    /*padding: 0;*/
    /*margin: 0;*/
  }

  .page-wrapper.light .call-to-action {
    padding: 0;
  }

  .call-to-action .row {
    /*background: var(--white);*/
    padding: 100px 200px;
  }

  .call-to-action .info {
    margin-bottom: 0px;
  }

  .call-to-action .title,
  .call-to-action .text {
    margin: 0px;
    padding: 0px;
    /*color: var(--magenta-light);*/
  }

  /* Footer styling */
  .full-width .table {
    margin: 0;
    display: block;
  }

  footer .table .row {
    background: var(--white);
  }

  footer .row {
    gap: 150px;
    border: none;
  }

  footer .table .row .main-content {
    display: grid;
    grid-template-columns: 3fr 1fr;
    /*margin: 75px 0px 50px 0px;*/
    margin: 75px 0px 0px 0px;
    width: 100%;
  }

  footer .logos {
    gap: 25px;
    margin: 0px;
  }

  footer .logos .taaurus,
  footer .logos .socials {
    margin-left: 50px;
    margin-right: 50px;
    align-items: center;
    justify-content: left;
  }

  footer .sitemap {
    margin: 0px 50px 0px 50px;
    justify-content: right;
  }

  footer .table .text,
  footer .table .title {
    color: var(--magenta-light);
  }

  footer .forms {
    width: 100%;
    padding: 0px;
    margin-bottom: 0px;
    gap: 50px;
  }

  footer .www {
    background: var(--magenta-light);
    color: var(--white);
    display: flex;
    align-items: end;
    justify-content: center;
  }

  footer .www,
  footer .www p {
    height: 15px;
    line-height: calc(12/12 * 1em);
  }

  /* About us page styling */
  .page-wrapper.light {
    gap: 250px;
  }

  .page-wrapper.less-gap {
    gap: 150px;
  }

  .page-wrapper.light .about-us {
    overflow-x: hidden;
  }

  .squeeze .sub-info {
    max-width: calc(100vw - 200px);
  }

  .page-wrapper .squeeze .max-height {
    /*margin-left: 50px;
    margin-right: 50px;*/
  }

  .page-wrapper .squeeze .max-height .info {
    padding-top: 100px;
  }

  .page-wrapper.light .squeeze .about-us {
    margin-left: -50px;
    max-width: 100vw;
  }

  /*
  .carousel {
    height: 650px;
  }
  */

  /*
  .carousel {
    animation: scroll-left 10s linear infinite;
    overflow-x: hidden;
  }
  */

  .about-us .carousel {
    animation: scroll-left 20s linear infinite;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .carousel:not(.all) {
    height: 650px;
  }

  .carousel:hover {
    animation-play-state: paused;
  }

  .carousel img {
    height: 100%;
  }

  .page-wrapper.light .about-us .carousel:not(.all) .image,
  .page-wrapper.light .about-us .carousel:not(.all) .image img  {
    width: auto;
  }

  .page-wrapper.light .about-us .image img {
    max-height: 650px;
    width: auto;
    height: auto;
    display: block; /* optional but avoids inline spacing issues */
    object-fit: contain; /* or cover depending on your desired behavior */
    margin: 0px auto;
  }

  .page-wrapper.light section .half .title {
    margin-bottom: 75px;
  }

  .page-wrapper.light section .half .text {
    margin-bottom: 0px;
  }

  .page-wrapper.light .half {
    gap: 75px;
    /*margin: 0px 50px;*/
    display: flex;
  }

  .page-wrapper.light.about .half {
    display: grid;
  }

  .page-wrapper.light section .content {
    padding: 0px;
  }

  .page-wrapper.light .large-gap {
    /*margin: 0px 50px;*/
  }

  .page-wrapper.light section .media {
    margin-top: 0px;
  }

  .page-wrapper.light .table .light {
    background: var(--white);
    color: var(--magenta-light);
  }

  .table .light {
    color: var(--magenta-light);
  }

  .dropdowns {
    /*margin: 0px 50px;*/
  }

  .dropdowns .dark {
    padding: 50px;
  }

  .large-gap .team {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
  }

  .team {
    gap: 50px;
    margin: 0px;
  }

  .page-wrapper.light .large-gap .team {
    margin: 0px;
  }

  .team a {
    display: flex;
  }

  .team .row {
    padding: 30px;
  }

  .team .row {
    /*border: 2px solid var(--magenta-light);
    padding: 20px;
    overflow: hidden;*/
    /*max-height: 750px;*/
    display: flex;
    flex-direction: column;
    /*height: 70vh;*/
    min-height: 721px;
    height: unset;
  }

  .team .row.light:hover {
    background: var(--magenta-light);
    color: var(--white);
  }

  .team .row.light.new:hover {
    background: var(--white);
  }

  .team .row.light.new:hover .inner {
    background: var(--magenta-light);
  }

  /*
  .team .match {*/
    /*min-height: 732.2px;*/
    /*min-height: 750px;
    min-width: 583px;
  }
  */

  .team .match {
    aspect-ratio: unset;
  }

  .team .new {
    /*height: 100%;*/
    width: 100%;
    aspect-ratio: unset;
  }

  .team .image,
  .team img,
  .team .new .inner {
    width: 519px;
  }

  /*
  .team .inner .image,
  .team .inner img {
    width: auto;
  }
  */

  .page-wrapper.light .contact-form .text {
    margin-bottom: 150px;
  }

  .contact-form .center {
    margin-top: 0px;
  }

  input[type="submit"] {
    align-self: center;
  }

  .page-wrapper.light .table {
    /*margin: 0px 50px;*/
  }

  .page-wrapper.light .call-to-action .info {
    margin-bottom: 0px;
  }

  .page-wrapper.light .full-width .table {
    margin: 0px;
  }

  /* Our work page styling */
  .max-height .sub-info.about-us {
    display: flex;
  }

  .info .part {
    justify-content: space-between;
  }

  .info .part.off-screen {
    display: flex;
  }

  /*
  .info .part,
  .info .all .part {
    min-width: 100vw;
  }
  */

  .carousel.all,
  .carousel.all .part {
    gap: 80px;
  }

  .info .all .part,
  .info .all .part.off-screen {
    display: flex;
  }

  .page-wrapper.light .squeeze .sub-info {
    /*max-width: calc(100vw - 60px);*/
    width: 100vw;
  }

  .page-wrapper.light .about-us .carousel.all .image img {
    height: 100px;
  }

  .banner .info .sub-info p {
    font-size: 30px;
    font-weight: 400;
    line-height: 40px; /* 133.333% */
    letter-spacing: -0.06px;
  }

  .media.full {
    margin: 0px -50px;
    margin-top: 0px;
  }

  .page-wrapper.light section .no-subheading {
    margin-bottom: 150px;
  }

  .our-work .sub-title {
    flex-direction: row;
  }

  .our-clients.table .service .service-group {
    /*max-width: calc(50% - 15px);*/
    /*max-width: unset;*/
    width: fit-content;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 75px;
  }


  /*
  .our-clients.table .row .image {
    max-width: 800px;
  }
  */

  /*
  .our-clients .row:nth-child(odd) {
    margin-left: auto;
    margin-right: 0;
  }

  .our-clients .row:nth-child(even) {
    margin-right: auto;
    margin-left: 0;
  }
  */

  .center-on-pc {
    display: flex;
    justify-content: center;
  }

  /*
  .new {
    min-height: 668.5px;
  }
  */

  .team .row:not(.new) .image,
  .team .row.new .inner {
    /*flex: 1 1 auto;*/ /* grow and shrink equally */
    margin-top: unset;
    margin-bottom: unset;
  }

  /* Error page styling */
  .page-wrapper.error .squeeze .max-height .info {
    /*padding-top: 0;*/
    gap: 50px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0px;
    margin: 0px auto;
    height: calc(100vh - 117px);
    max-width: none;
  }

  .page-wrapper.error .squeeze .max-height .info .sub-info {
    margin: 0 auto;
  }


}

/* When the device is in portrait mode (vertical) */
@media (orientation: portrait) {
  .banner .info {
    display: flex;
    /*margin-top: auto;*/
    margin-top: 117px;
    margin-bottom: 100px;
    justify-content: flex-end
  }

  .page-wrapper.light .squeeze .max-height .info {
    justify-content: flex-start;
    padding-top: 50px;
    margin-top: 0px;
  }
}

/* When the device is in landscape mode (horizontal) */
@media (orientation: landscape) {
  .banner .info {
    /*margin-bottom: auto;*/

    /*margin-top: 117px;*/
  }

  .max-height .info {
    justify-content: flex-end;
    /*margin-bottom: 100px;*/
  }

  .max-height .sub-info:not(.about-us) {
    display: flex;
  }

  .page-wrapper .banner {
    margin-bottom: auto;
  }


}

/* Keyframes to define scrolling behavior */
@keyframes scroll-left {
  from {
    transform: translateX(0%); /* Start off-screen on the right */
  }
  to {
    transform: var(--scroll-distance); /* End off-screen on the left */
  }
}
