 * {
   box-sizing: border-box;
 }

 body {
   margin: 0;
   font-family: "Inter", sans-serif;
   color: #10231e;
 }

 section {
   margin-bottom: 90px;
 }

 @media (max-width: 800px) {
   section {
     margin-bottom: 50px;
   }
 }

 .gs-web-hero {
   --green: #18b45c;
   position: relative;
   isolation: isolate;
   overflow: hidden;
   min-height: calc(100vh - 75px);
   padding: 24px 32px;
   display: flex;
   flex-direction: column;
   justify-content: center;
   background:
     linear-gradient(to right, rgba(16, 35, 30, .025) 1px, transparent 1px),
     linear-gradient(to bottom, rgba(16, 35, 30, .025) 1px, transparent 1px),
     #fff;
   background-size: 38px 38px;
 }

 /* Faint architectural lines in the background */
 .gs-web-hero::before,
 .gs-web-hero::after {
   content: "";
   position: absolute;
   z-index: -1;
   width: 410px;
   height: 500px;
   opacity: .12;
   pointer-events: none;
   border: 1px solid #82928b;
 }

 .gs-web-hero::before {
   left: -150px;
   top: 94px;
   transform: skewY(24deg);
   border-radius: 0 160px 0 0;
 }

 .gs-web-hero::after {
   right: -170px;
   top: 175px;
   transform: skewY(-27deg);
   border-radius: 180px 0 0 0;
 }

 .gs-web-hero__inner {
   max-width: 1660px;
   margin: 0 auto;
 }

 .gs-web-hero__intro {
   position: relative;
   z-index: 3;
   text-align: center;
 }

 .gs-web-hero__eyebrow {
   margin: 0 0 13px;
   color: var(--green);
   font-size: 14px;
   font-weight: 800;
   letter-spacing: .23em;
   text-transform: uppercase;
 }

 .gs-web-hero h1 {
   max-width: 1100px;
   margin: 0 auto;
   font-size: clamp(34px, 3.8vw, 56px);
   font-weight: 700;
   line-height: 1.11;
   letter-spacing: -.065em;
 }

 .gs-web-hero h1 span {
   color: var(--green);
 }

 .gs-web-hero__description {
   max-width: 740px;
   margin: 16px auto 0;
   color: #58615f;
   font-size: clamp(14px, 1.1vw, 16px);
   line-height: 1.48;
 }

 .gs-web-hero__buttons {
   display: flex;
   justify-content: center;
   flex-wrap: wrap;
   gap: 16px;
   margin-top: 20px;
 }

 .gs-web-hero__button {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 20px;
   min-width: 220px;
   height: 48px;
   padding: 0 20px;
   border: 1px solid var(--green);
   border-radius: 7px;
   color: var(--green);
   background: #fff;
   text-decoration: none;
   font-size: 15px;
   font-weight: 600;
   transition: transform .2s ease, background .2s ease, color .2s ease;
 }

 .gs-web-hero__button:hover {
   transform: translateY(-3px);
   background: #eaf9f0;
 }

 .gs-web-hero__button--primary {
   color: #fff;
   background: var(--green);
 }

 .gs-web-hero__button--primary:hover {
   background: #10984a;
 }

 .gs-web-hero__button svg {
   width: 19px;
   height: 19px;
   flex: none;
 }

 /* Timeline */
 .gs-web-hero__showcase {
   position: relative;
   margin-top: 24px;
 }

 .gs-web-hero__timeline {
   position: relative;
   width: 76%;
   height: 50px;
   margin-left: 15%;
   border-top: 2px solid #51ca82;
   transform: translateY(20px);
 }

 .gs-web-hero__timeline::after {
   content: "➜";
   position: absolute;
   right: -10px;
   top: -15px;
   color: var(--green);
   font-size: 26px;
   font-weight: 400;
 }

 .gs-web-hero__stage {
   position: absolute;
   top: -31px;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 13px;
   transform: translateX(-50%);
   white-space: nowrap;
 }

 .gs-web-hero__stage:nth-child(1) {
   left: 5%;
 }

 .gs-web-hero__stage:nth-child(2) {
   left: 31%;
 }

 .gs-web-hero__stage:nth-child(3) {
   left: 61%;
 }

 .gs-web-hero__stage:nth-child(4) {
   left: 91%;
 }

 .gs-web-hero__stage-label {
   font-size: 11px;
   font-weight: 700;
   text-transform: uppercase;
 }

 .gs-web-hero__stage-dot {
   width: 19px;
   height: 19px;
   border: 4px solid #fff;
   border-radius: 50%;
   background: var(--green);
   box-shadow: 0 0 0 2px #d8f4e3;
 }

 /* Website mockups */
 .gs-web-hero__screens {
   position: relative;
   display: grid;
   grid-template-columns: .9fr 1fr 1fr;
   align-items: start;
   width: 100%;
   min-height: 310px;
 }

 .gs-browser {
   position: relative;
   overflow: hidden;
   height: 290px;
   border: 1px solid #dce2df;
   border-radius: 16px;
   background: #fff;
   box-shadow: 0 11px 22px rgba(15, 36, 27, .13);
 }

 .gs-browser--wire {
   z-index: 1;
   margin-right: -18px;
 }

 .gs-browser--light {
   z-index: 2;
   margin-left: -12px;
   margin-right: -18px;
 }

 .gs-browser--dark {
   z-index: 3;
   margin-left: -12px;
   margin-right: 105px;
   border-color: #09362e;
   background: #052c26;
   color: #fff;
 }

 .gs-browser__bar {
   display: flex;
   align-items: center;
   gap: 5px;
   height: 30px;
   padding: 0 17px;
   border-bottom: 1px solid #e5e8e6;
 }

 .gs-browser--dark .gs-browser__bar {
   border-color: rgba(255, 255, 255, .16);
 }

 .gs-browser__bar i {
   width: 5px;
   height: 5px;
   border-radius: 50%;
   background: #16322e;
 }

 .gs-browser--dark .gs-browser__bar i {
   background: #fff;
 }

 .gs-browser__navigation {
   display: flex;
   justify-content: space-between;
   align-items: center;
   height: 33px;
   padding: 0 22px;
   border-bottom: 1px solid #edf0ee;
   font-size: 6px;
 }

 .gs-browser__navigation span:last-child {
   word-spacing: 19px;
 }

 .gs-browser--dark .gs-browser__navigation {
   border-color: rgba(255, 255, 255, .13);
 }

 /* Wireframe screen */
 .gs-wireframe {
   padding: 17px 22px;
   filter: grayscale(1);
   opacity: .58;
 }

 .gs-wireframe__nav {
   display: flex;
   justify-content: space-between;
   margin-bottom: 18px;
 }

 .gs-wireframe__logo,
 .gs-wireframe__nav-links span,
 .gs-wireframe__line,
 .gs-wireframe__image,
 .gs-wireframe__box {
   border: 1px solid #b9c4bf;
 }

 .gs-wireframe__logo {
   width: 46px;
   height: 19px;
   display: grid;
   place-items: center;
   font-size: 7px;
 }

 .gs-wireframe__nav-links {
   display: flex;
   gap: 18px;
   padding-top: 6px;
 }

 .gs-wireframe__nav-links span {
   width: 23px;
   height: 4px;
 }

 .gs-wireframe__main {
   display: grid;
   grid-template-columns: 1.1fr .8fr .6fr;
   gap: 13px;
 }

 .gs-wireframe__image {
   height: 100px;
   background:
     linear-gradient(31deg, transparent 49.5%, #bdc7c1 50%, transparent 50.5%),
     linear-gradient(-31deg, transparent 49.5%, #bdc7c1 50%, transparent 50.5%);
 }

 .gs-wireframe__line {
   height: 8px;
   margin-bottom: 8px;
   background: #fafafa;
 }

 .gs-wireframe__line:nth-child(2) {
   width: 84%;
 }

 .gs-wireframe__line:nth-child(3) {
   width: 92%;
 }

 .gs-wireframe__line:nth-child(4) {
   width: 63%;
 }

 .gs-wireframe__box {
   height: 48px;
   margin-bottom: 8px;
 }

 .gs-wireframe__bottom {
   display: grid;
   grid-template-columns: 1fr 1fr 1fr;
   gap: 13px;
   margin-top: 24px;
 }

 .gs-wireframe__bottom .gs-wireframe__box {
   height: 57px;
 }

 /* Developed website screens */
 .gs-site-preview {
   display: grid;
   grid-template-columns: 1fr .82fr;
   gap: 16px;
   align-items: center;
   height: 232px;
   padding: 16px 14px 16px 28px;
 }

 .gs-site-preview__copy h2 {
   margin: 0 0 12px;
   font-size: clamp(16px, 1.45vw, 23px);
   line-height: 1.17;
   letter-spacing: -.05em;
 }

 .gs-site-preview__copy h2 span {
   color: var(--green);
 }

 .gs-site-preview__copy p {
   max-width: 220px;
   margin: 0 0 19px;
   font-size: 8px;
   line-height: 1.6;
 }

 .gs-site-preview__copy a,
 .gs-phone__button {
   display: inline-flex;
   gap: 12px;
   align-items: center;
   padding: 9px 12px;
   border-radius: 3px;
   color: #fff;
   background: var(--green);
   text-decoration: none;
   font-size: 7px;
   font-weight: 700;
 }

 .gs-site-preview__photo,
 .gs-phone__photo {
   position: relative;
   overflow: hidden;
   height: 200px;
   border-radius: 4px;
   background:
     linear-gradient(135deg, transparent 48%, rgba(211, 200, 183, .35) 49%, transparent 50%),
     linear-gradient(90deg, #eae5dd 0 20%, #f6f3ed 20% 62%, #dcd4c7 62% 100%);
 }

 .gs-site-preview__photo::before,
 .gs-phone__photo::before {
   content: "";
   position: absolute;
   left: 46%;
   bottom: 16px;
   width: 35%;
   height: 64%;
   background: #fffefb;
   box-shadow: -19px -40px 0 -4px #f1ebe2;
 }

 .gs-site-preview__photo::after,
 .gs-phone__photo::after {
   content: "✳";
   position: absolute;
   left: 52%;
   bottom: 29px;
   color: #6c856a;
   font-size: 55px;
   line-height: 1;
   text-shadow: 1px 17px 0 #8e8274;
 }

 .gs-browser--dark .gs-site-preview {
   padding-left: 30px;
 }

 .gs-browser--dark .gs-site-preview__copy p {
   color: #d1dfd8;
 }

 .gs-browser__footer {
   margin: -12px 26px 0;
   padding-top: 11px;
   border-top: 1px solid rgba(255, 255, 255, .2);
   color: #c9d9d1;
   font-size: 8px;
   letter-spacing: .12em;
   word-spacing: 13px;
 }

 /* Overlapping mobile screen */
 .gs-phone {
   position: absolute;
   z-index: 4;
   top: 25px;
   right: 1%;
   width: 145px;
   height: 310px;
   overflow: hidden;
   padding: 14px 10px 10px;
   border: 5px solid #202b28;
   border-radius: 27px;
   color: #fff;
   background: #052c26;
   box-shadow: 0 10px 16px rgba(0, 0, 0, .27);
 }

 .gs-phone::before {
   content: "";
   position: absolute;
   top: 3px;
   left: 50%;
   width: 37px;
   height: 7px;
   transform: translateX(-50%);
   border-radius: 0 0 7px 7px;
   background: #202b28;
 }

 .gs-phone__nav {
   display: flex;
   justify-content: space-between;
   margin: 4px 0 26px;
   font-size: 8px;
   font-weight: 700;
 }

 .gs-phone h3 {
   margin: 0 0 9px;
   font-size: 14px;
   line-height: 1.16;
   letter-spacing: -.04em;
 }

 .gs-phone h3 span {
   color: var(--green);
 }

 .gs-phone p {
   margin: 0 0 12px;
   color: #c4d4ce;
   font-size: 6px;
   line-height: 1.6;
 }

 .gs-phone__button {
   padding: 8px 9px;
   font-size: 6px;
 }

 .gs-phone__photo {
   height: 125px;
   margin-top: 13px;
 }

 /* Bottom features */
 .gs-web-hero__features {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: clamp(28px, 5vw, 85px);
   margin-top: 10px;
 }

 .gs-web-hero__feature {
   display: flex;
   align-items: center;
   gap: 16px;
   white-space: nowrap;
   font-size: 15px;
   font-weight: 500;
 }

 .gs-web-hero__feature-icon {
   display: grid;
   place-items: center;
   width: 43px;
   height: 43px;
   flex: none;
   border-radius: 50%;
   background: #dff7e9;
   color: #137e4c;
   font-size: 23px;
 }

 .gs-web-hero__separator {
   color: #274039;
   font-weight: 700;
 }

 @media (max-width: 1050px) {
   .gs-web-hero {
     min-height: auto;
     padding: 55px 22px 45px;
   }

   .gs-web-hero__screens {
     min-height: 300px;
   }

   .gs-browser {
     height: 275px;
   }

   .gs-browser--dark {
     margin-right: 75px;
   }

   .gs-site-preview {
     height: 218px;
     padding-left: 18px;
   }

   .gs-site-preview__photo {
     height: 185px;
   }

   .gs-phone {
     width: 125px;
     height: 292px;
     right: 0;
   }

   .gs-phone__photo {
     height: 103px;
   }

   .gs-web-hero__features {
     margin-top: 26px;
     gap: 24px;
   }

   .gs-web-hero__feature {
     font-size: 12px;
     gap: 9px;
   }
 }

 @media (max-width: 700px) {
   .gs-web-hero {
     padding: 54px 18px 42px;
   }

   .gs-web-hero__eyebrow {
     font-size: 10px;
     letter-spacing: .17em;
   }

   .gs-web-hero h1 {
     font-size: clamp(34px, 8vw, 48px);
     letter-spacing: -.055em;
   }

   .gs-web-hero__description {
     margin-top: 19px;
     font-size: 14px;
   }

   .gs-web-hero__buttons {
     gap: 10px;
   }

   .gs-web-hero__button {
     min-width: 0;
     width: 100%;
     max-width: 330px;
     height: 48px;
     font-size: 13px;
   }

   .gs-web-hero__showcase {
     margin-top: 64px;
   }

   .gs-web-hero__timeline {
     width: 86%;
     margin-left: 7%;
   }

   .gs-web-hero__stage-label {
     font-size: 8px;
   }

   .gs-web-hero__screens {
     display: block;
     min-height: 360px;
   }

   .gs-browser--wire,
   .gs-browser--light {
     display: none;
   }

   .gs-browser--dark {
     height: 290px;
     margin: 0 52px 0 0;
   }

   .gs-browser--dark .gs-site-preview {
     height: 235px;
     grid-template-columns: 1fr .8fr;
     padding: 14px;
     gap: 10px;
   }

   .gs-site-preview__copy h2 {
     font-size: clamp(14px, 3.2vw, 21px);
   }

   .gs-site-preview__copy p {
     font-size: 7px;
   }

   .gs-site-preview__photo {
     height: 176px;
   }

   .gs-phone {
     top: 45px;
     right: 0;
     width: 112px;
     height: 265px;
     padding: 12px 7px;
   }

   .gs-phone h3 {
     font-size: 11px;
   }

   .gs-phone__nav {
     font-size: 6px;
     margin-bottom: 18px;
   }

   .gs-phone__photo {
     height: 88px;
   }

   .gs-web-hero__features {
     justify-content: flex-start;
     flex-wrap: wrap;
     gap: 15px 24px;
     margin-top: 0;
   }

   .gs-web-hero__feature {
     font-size: 12px;
   }

   .gs-web-hero__separator {
     display: none;
   }
 }

 @media (max-width: 420px) {
   .gs-web-hero__stage:nth-child(1) {
     left: 7%;
   }

   .gs-web-hero__stage:nth-child(2) {
     left: 34%;
   }

   .gs-web-hero__stage:nth-child(3) {
     left: 64%;
   }

   .gs-web-hero__stage:nth-child(4) {
     left: 94%;
   }

   .gs-browser--dark .gs-site-preview {
     grid-template-columns: 1fr;
   }

   .gs-browser--dark .gs-site-preview__photo {
     display: none;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

 .gs-clients,
 .gs-clients * {
   box-sizing: border-box;
 }

 .gs-clients {
   --gs-dark: #082823;
   --gs-muted: #687a7d;
   --gs-green: #0bc879;

   position: relative;
   width: 100%;
   overflow: hidden;
   padding: 60px 32px 40px;
   background: #ffffff;
   color: var(--gs-dark);
   font-family: "Inter", sans-serif;
 }

 .gs-clients__inner {
   position: relative;
   width: 100%;
   max-width: 1360px;
   margin: 0 auto;
 }

 .gs-clients__content {
   position: relative;
   z-index: 1;
   text-align: center;
 }

 .gs-clients__eyebrow {
   margin: 0 0 24px;
   color: var(--gs-green);
   font-size: 16px;
   font-weight: 700;
   letter-spacing: 0.36em;
   line-height: 1.2;
   text-transform: uppercase;
 }

 .gs-clients h2 {
   margin: 0;
   color: #092722;
   font-size: clamp(22px, 3.0vw, 46px);
   font-weight: 600;
   letter-spacing: -0.066em;
   line-height: 1.12;
 }

 /* Corner crosses */
 .gs-clients__corner {
   position: absolute;
   z-index: 2;
   width: 49px;
   height: 98px;
   pointer-events: none;
 }

 .gs-clients__corner::before,
 .gs-clients__corner::after {
   position: absolute;
   display: block;
   content: "";
   background: #8c9b9e;
 }

 .gs-clients__corner::before {
   left: 24px;
   top: 0;
   width: 1.5px;
   height: 98px;
 }

 .gs-clients__corner::after {
   top: 25px;
   left: 0;
   width: 49px;
   height: 1.5px;
 }

 .gs-clients__corner--tl {
   top: 20px;
   left: 33px;
 }

 .gs-clients__corner--tr {
   top: 20px;
   right: 28px;
 }

 .gs-clients__corner--bl {
   bottom: 12px;
   left: 33px;
 }

 .gs-clients__corner--br {
   right: 28px;
   bottom: 12px;
 }

 /* Small editorial labels near the corners */
 .gs-clients__edge {
   position: absolute;
   z-index: 2;
   color: #65767b;
   font-size: 14px;
   font-weight: 700;
   letter-spacing: 0.18em;
   line-height: 1.2;
   text-transform: uppercase;
 }

 .gs-clients__edge--tl {
   top: 65px;
   left: 100px;
   text-align: left;
 }

 .gs-clients__edge--tl span {
   display: block;
   width: 38px;
   height: 1px;
   margin-top: 12px;
   background: #92a0a2;
 }

 .gs-clients__edge--tr {
   top: 45px;
   right: 111px;
   display: flex;
   align-items: flex-start;
   gap: 23px;
   text-align: left;
 }

 .gs-clients__edge--tr span,
 .gs-clients__edge--br span {
   width: 44px;
   height: 1px;
   margin-top: 29px;
   background: #92a0a2;
 }

 .gs-clients__edge--tr p,
 .gs-clients__edge--br p {
   margin: 0;
 }

 .gs-clients__edge--bl {
   bottom: 35px;
   left: 108px;
   text-align: left;
 }

 .gs-clients__edge--br {
   right: 109px;
   bottom: 30px;
   display: flex;
   align-items: center;
   gap: 24px;
   text-align: left;
 }

 /* Curve and client names */
 .gs-clients__map {
   position: relative;
   height: 220px;
   margin-top: 8px;
 }

 .gs-clients__line {
   position: absolute;
   top: 10px;
   left: 0;
   width: 100%;
   height: 150px;
   overflow: visible;
 }

 .gs-clients__name {
   position: absolute;
   color: #617579;
   font-size: clamp(18px, 1.57vw, 32px);
   font-weight: 400;
   letter-spacing: -0.052em;
   white-space: nowrap;
   transform: translateX(-50%) scale(1);
   transform-origin: center;
 }

 /* Animated green line – driven entirely by rAF, no CSS transition */
 #gs-curve-anim {
   will-change: stroke-dashoffset;
 }

 /* Active (lit-up) dot */
 .gs-dot {
   /* Fade-out transition (slow and smooth) */
   transition: fill 0.7s ease, filter 0.7s ease, transform 0.7s ease;
   transform-origin: center;
   transform-box: fill-box;
 }

 .gs-dot.gs-dot--active {
   fill: #0cc580 !important;
   filter: drop-shadow(0 0 6px rgba(12, 197, 128, 0.6));
   transform: scale(1.15);
   /* Fade-in transition (crisp and quick) */
   transition: fill 0.4s ease, filter 0.4s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
 }

 /* Active (lit-up) client name */
 .gs-clients__name {
   /* Fade-out transition (slow and smooth) */
   transition:
     color 0.7s ease,
     text-shadow 0.7s ease,
     transform 0.7s ease;
 }

 .gs-clients__name.gs-name--active {
   color: #0cc580 !important;
   transform: translateX(-50%) scale(1.08);
   text-shadow: 0 0 1px rgba(12, 197, 128, 0.4);
   /* Fade-in transition (crisp and quick) */
   transition:
     color 0.4s ease,
     text-shadow 0.4s ease,
     transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
 }

 .gs-clients__name--meridian {
   top: 7px;
   left: 6.1%;
   color: #16423a;
 }

 .gs-clients__name--north {
   top: 155px;
   left: 19.45%;
 }

 .gs-clients__name--lumina {
   top: 35px;
   left: 34.7%;
   color: #16423a;
 }

 .gs-clients__name--vantage {
   top: 165px;
   left: 51.1%;
 }

 .gs-clients__name--aveni {
   top: 34px;
   left: 66.7%;
 }

 .gs-clients__name--cobalt {
   top: 158px;
   left: 82%;
 }

 .gs-clients__name--helix {
   top: 8px;
   left: 95.6%;
   color: #16423a;
 }

 /* Bottom message */
 .gs-clients__message {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 16px;
   margin: 80px auto 0;
 }

 .gs-clients__message p {
   margin: 0;
   color: #65777b;
   font-size: clamp(14px, 1.1vw, 18px);
   line-height: 1.5;
   letter-spacing: -0.04em;
 }

 .gs-clients__shield {
   position: relative;
   display: block;
   width: 33px;
   height: 39px;
   flex: 0 0 33px;
   overflow: hidden;
   clip-path: polygon(50% 0, 100% 21%, 100% 67%, 50% 100%, 0 67%, 0 21%);
   background: #06c97b;
 }

 .gs-clients__shield::before {
   position: absolute;
   inset: 0 0 50%;
   content: "";
   background: #36dda0;
 }

 .gs-clients__shield::after {
   position: absolute;
   inset: 0 50% 0 0;
   content: "";
   background: rgba(0, 116, 71, 0.14);
 }

 .gs-clients__disclaimer {
   margin: 16px 0 0;
   color: #95a1a4;
   font-size: 14px;
   line-height: 1.4;
   letter-spacing: 0.015em;
 }

 /* Tablet */
 @media (max-width: 1100px) {
   .gs-clients {
     min-height: 610px;
     padding-top: 90px;
   }

   .gs-clients__eyebrow {
     font-size: 13px;
   }

   .gs-clients h2 {
     font-size: clamp(36px, 5vw, 56px);
   }

   .gs-clients__map {
     margin-top: 62px;
     height: 220px;
   }

   .gs-clients__message {
     max-width: 780px;
   }

   .gs-clients__edge {
     font-size: 10px;
   }

   .gs-clients__edge--tr,
   .gs-clients__edge--br {
     right: 85px;
   }
 }

 /* Mobile: keep names readable instead of compressing the curve */
 @media (max-width: 700px) {
   .gs-clients {
     min-height: auto;
     padding: 75px 24px 72px;
   }

   .gs-clients__corner {
     transform: scale(0.65);
   }

   .gs-clients__corner--tl,
   .gs-clients__corner--bl {
     left: 3px;
   }

   .gs-clients__corner--tr,
   .gs-clients__corner--br {
     right: 3px;
   }

   .gs-clients__corner--tl,
   .gs-clients__corner--tr {
     top: 0;
   }

   .gs-clients__corner--bl,
   .gs-clients__corner--br {
     bottom: -24px;
   }

   .gs-clients__edge {
     display: none;
   }

   .gs-clients__eyebrow {
     margin-bottom: 22px;
     font-size: 11px;
     letter-spacing: 0.28em;
   }

   .gs-clients h2 {
     max-width: 530px;
     margin: 0 auto;
     font-size: clamp(32px, 7.5vw, 48px);
     line-height: 1.13;
     letter-spacing: -0.055em;
   }

   .gs-clients h2 br {
     display: none;
   }

   .gs-clients__map {
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     align-content: center;
     gap: 14px;
     height: auto;
     margin-top: 40px;
   }

   .gs-clients__line {
     display: none;
   }

   .gs-clients__name {
     position: static;
     display: grid;
     min-height: 62px;
     place-items: center;
     padding: 10px 6px;
     border: 1px solid #e4ece8;
     border-radius: 4px;
     color: #24423b;
     background: #fff;
     font-size: clamp(17px, 4vw, 22px);
     transform: none;
   }

   .gs-clients__name--lumina {
     border-color: #b5ecd0;
     color: #098f59;
   }

   .gs-clients__message {
     align-items: flex-start;
     gap: 13px;
     margin-top: 35px;
     text-align: left;
   }

   .gs-clients__message p {
     font-size: 13px;
   }

   .gs-clients__shield {
     width: 27px;
     height: 32px;
     flex-basis: 27px;
   }

   .gs-clients__disclaimer {
     margin-top: 20px;
     font-size: 11px;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

 .gs-overview,
 .gs-overview * {
   box-sizing: border-box;
 }

 .gs-overview {
   --dark: #092922;
   --body: #344351;
   --green: #72d600;
   --muted: #7575a3;
   width: 100%;
   overflow: hidden;
   background: #fff;
   font-family: "Inter", sans-serif;
 }

 .gs-overview__inner {
   display: grid;
   grid-template-columns: 46% 54%;
   max-width: 1360px;
   min-height: 560px;
   margin: 0 auto;
 }

 /* =========================
   LEFT SIDE
========================= */

 .gs-overview__content {
   display: flex;
   flex-direction: column;
   padding: 57px clamp(30px, 3.7vw, 75px) 35px clamp(30px, 3.7vw, 75px);
 }

 .gs-overview__eyebrow {
   display: flex;
   align-items: center;
   gap: 21px;
   margin-bottom: 24px;
 }

 .gs-overview__eyebrow span {
   flex: none;
   color: var(--muted);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .3em;
   line-height: 1;
   text-transform: uppercase;
 }

 .gs-overview__eyebrow i {
   width: 100%;
   height: 1px;
   background: #bfc0cf;
 }

 .gs-overview h2 {
   max-width: 650px;
   margin: 0;
   color: var(--dark);
   font-size: clamp(34px, 2.85vw, 53px);
   font-weight: 750;
   letter-spacing: -.062em;
   line-height: 1.065;
 }

 .gs-overview__accent {
   display: block;
   width: 73px;
   height: 5px;
   flex: none;
   margin: 21px 0 23px;
   background: var(--green);
 }

 .gs-overview__body {
   max-width: 650px;
 }

 .gs-overview__body p {
   margin: 0 0 18px;
   color: var(--body);
   font-size: clamp(14px, .92vw, 17px);
   font-weight: 400;
   letter-spacing: -.025em;
   line-height: 1.43;
 }

 .gs-overview__body p:last-child {
   margin-bottom: 0;
 }

 .gs-overview__footer {
   display: flex;
   align-items: center;
   gap: 20px;
   margin-top: auto;
   padding-top: 25px;
 }

 .gs-overview__footer>span {
   height: 1px;
   flex: 1;
   background: #b6bfcd;
 }

 .gs-overview__footer p {
   flex: none;
   margin: 0;
   color: #8390a1;
   font-size: 10px;
   font-weight: 600;
   letter-spacing: .42em;
   text-transform: uppercase;
   white-space: nowrap;
 }

 .gs-overview__footer b {
   margin: 0 10px;
   font-weight: 400;
 }

 /* =========================
   RIGHT SIDE
========================= */

 .gs-overview__visual {
   position: relative;
   min-width: 0;
   min-height: 500px;
   margin: 24px 32px 24px 0;
   border-radius: 20px;
   overflow: hidden;
   background: #faf7f5;
 }

 .gs-overview__visual-label {
   position: absolute;
   z-index: 3;
   top: 24px;
   right: 34px;
   color: #334554;
   font-size: 9px;
   font-weight: 600;
   letter-spacing: .38em;
   text-transform: uppercase;
   white-space: nowrap;
 }

 .gs-overview__visual-label span {
   margin: 0 11px;
   color: #7d8d90;
 }

 .gs-overview__skyline {
   position: absolute;
   z-index: 1;
   top: 5px;
   left: 0;
   width: 100%;
   height: 290px;
 }

 .gs-overview__warm-shape {
   position: absolute;
   z-index: 0;
   right: 5%;
   bottom: 27%;
   width: 240px;
   height: 110px;
   border-radius: 0 0 0 100%;
   background: #e7d0bd;
 }

 .gs-overview__lilac-shape {
   position: absolute;
   z-index: 0;
   bottom: -90px;
   left: -85px;
   width: 210px;
   height: 225px;
   border-radius: 50%;
   background: #ded7e6;
 }

 .gs-overview__browser {
   position: absolute;
   z-index: 2;
   top: 25%;
   left: 6%;
   width: 66%;
   height: 60%;
   min-height: 330px;
   overflow: hidden;
   border: 1px solid #d7d9dd;
   border-radius: 17px;
   background: #fff;
   box-shadow: 0 22px 38px rgba(37, 41, 45, .11);
 }

 .gs-overview__browser-bar {
   position: relative;
   display: flex;
   align-items: center;
   height: 28px;
   padding: 0 15px;
   border-bottom: 1px solid #e3e5e6;
   background: #fcfcfc;
 }

 .gs-overview__dots {
   display: flex;
   gap: 5px;
 }

 .gs-overview__dots i {
   width: 7px;
   height: 7px;
   border-radius: 50%;
   background: #526b63;
 }

 .gs-overview__address {
   position: absolute;
   top: 4px;
   left: 27%;
   width: 44%;
   overflow: hidden;
   padding: 4px 13px;
   border-radius: 20px;
   background: #fff;
   color: #697783;
   font-size: 7px;
   text-align: center;
   white-space: nowrap;
 }

 .gs-overview__browser-nav {
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 56px;
   padding: 0 22px;
 }

 .gs-overview__mock-logo-img {
   height: 98px;
   width: auto;
   display: block;
 }

 .gs-overview__mock-links {
   display: flex;
   gap: 17px;
   color: #263b42;
   font-size: 7px;
 }

 .gs-overview__menu-icon {
   font-size: 16px;
   line-height: 1;
 }

 .gs-overview__browser-body {
   position: relative;
   height: calc(100% - 84px);
   overflow: hidden;
 }

 .gs-overview__browser-copy {
   position: relative;
   z-index: 2;
   width: 67%;
   padding: 32px 0 0 10.5%;
 }

 .gs-overview__mini-eyebrow {
   display: block;
   margin-bottom: 15px;
   color: #415660;
   font-size: 6px;
   font-weight: 700;
   letter-spacing: .26em;
   text-transform: uppercase;
 }

 .gs-overview__browser-copy h3 {
   margin: 0;
   color: #0a3029;
   font-size: clamp(22px, 2vw, 36px);
   font-weight: 400;
   letter-spacing: -.07em;
   line-height: 1.08;
 }

 .gs-overview__browser-copy h3 strong {
   font-weight: 700;
 }

 .gs-overview__browser-copy p {
   max-width: 265px;
   margin: 13px 0 11px;
   color: #43515b;
   font-size: 9px;
   line-height: 1.45;
 }

 .gs-overview__small-line {
   display: block;
   width: 25px;
   height: 2px;
   background: var(--green);
 }

 /* Architectural shapes inside the mock website */
 .gs-overview__building {
   position: absolute;
   overflow: hidden;
   background:
     linear-gradient(114deg, #f5f2ef 0 27%, #e2ded9 27% 30%, #faf9f7 30% 48%, #c5c0ba 48% 50%, #f4f1ed 50% 100%);
 }

 .gs-overview__building::before {
   position: absolute;
   inset: 0;
   content: "";
   background:
     repeating-linear-gradient(90deg,
       transparent 0 27px,
       rgba(111, 111, 107, .12) 28px,
       transparent 29px);
 }

 .gs-overview__building span {
   position: absolute;
   right: 12%;
   bottom: 0;
   width: 22%;
   height: 68%;
   transform: skewY(-25deg);
   background: #d1cdc8;
 }

 .gs-overview__building--desktop {
   right: -5%;
   bottom: 0;
   width: 35%;
   height: 75%;
   clip-path: polygon(24% 0, 100% 25%, 100% 100%, 0 100%, 0 21%);
   opacity: .8;
 }

 .gs-overview__browser-bottom {
   position: absolute;
   z-index: 3;
   right: 0;
   bottom: 0;
   left: 0;
   height: 29%;
   overflow: hidden;
   background: #f8f8f7;
 }

 .gs-overview__building--wide {
   top: -20%;
   left: 0;
   width: 66%;
   height: 180%;
   clip-path: polygon(22% 0, 100% 15%, 75% 100%, 0 100%);
 }

 .gs-overview__browser-bottom p {
   position: absolute;
   top: 24%;
   right: 6%;
   margin: 0;
   color: #334752;
   font-size: 6px;
   font-weight: 600;
   letter-spacing: .22em;
   line-height: 1.9;
   text-transform: uppercase;
 }

 /* Phone */
 .gs-overview__phone {
   position: absolute;
   z-index: 4;
   top: 36%;
   right: 17%;
   width: 20%;
   height: 48%;
   min-width: 105px;
   min-height: 245px;
   overflow: hidden;
   padding: 5px;
   border: 3px solid #101515;
   border-radius: 26px;
   background: #101515;
   box-shadow: 0 14px 26px rgba(0, 0, 0, .2);
 }

 .gs-overview__phone-notch {
   position: absolute;
   z-index: 5;
   top: 8px;
   left: 50%;
   width: 29%;
   height: 10px;
   transform: translateX(-50%);
   border-radius: 10px;
   background: #101515;
 }

 .gs-overview__phone-screen {
   height: 100%;
   overflow: hidden;
   padding: 23px 10px 10px;
   border-radius: 20px;
   background: #fff;
 }

 .gs-overview__phone-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
 }

 .gs-overview__phone-header .gs-overview__mock-logo-img {
   height: 62px;
 }

 .gs-overview__phone-header>span {
   color: #123a31;
   font-size: 11px;
 }

 .gs-overview__phone-kicker {
   margin: 24px 0 12px;
   color: #243c42;
   font-size: 8px;
   font-weight: 700;
   letter-spacing: .32em;
   line-height: 1.7;
   text-transform: uppercase;
 }

 .gs-overview__phone .gs-overview__small-line {
   width: 23px;
   margin-bottom: 11px;
 }

 .gs-overview__building--phone {
   position: relative;
   width: 100%;
   height: 26%;
   min-height: 63px;
   clip-path: polygon(0 35%, 65% 0, 100% 18%, 100% 100%, 0 100%);
 }

 .gs-overview__phone-words {
   margin: 13px 0 0;
   color: #17352e;
   font-size: clamp(9px, .9vw, 15px);
   letter-spacing: -.045em;
   line-height: 1.13;
 }

 .gs-overview__visual-footer {
   position: absolute;
   right: 4%;
   bottom: 4%;
   display: flex;
   align-items: center;
   gap: 18px;
 }

 .gs-overview__visual-footer span {
   width: 44px;
   height: 1px;
   background: #aeb6bf;
 }

 .gs-overview__visual-footer p {
   margin: 0;
   color: #536573;
   font-size: 7px;
   font-weight: 700;
   letter-spacing: .3em;
   line-height: 1.75;
   text-transform: uppercase;
 }

 /* =========================
   RESPONSIVE
========================= */

 @media (max-width: 1100px) {
   .gs-overview__inner {
     grid-template-columns: 48% 52%;
   }

   .gs-overview__content {
     padding: 48px 30px 30px;
   }

   .gs-overview h2 {
     font-size: clamp(30px, 3.4vw, 41px);
   }

   .gs-overview__body p {
     font-size: 13px;
   }

   .gs-overview__visual {
     min-height: 580px;
   }

   .gs-overview__browser {
     left: 3%;
     width: 73%;
   }

   .gs-overview__phone {
     right: 9%;
   }

   .gs-overview__mock-links {
     gap: 8px;
   }
 }

 @media (max-width: 800px) {
   .gs-overview__inner {
     display: block;
   }

   .gs-overview__content {
     padding: 62px 7% 45px;
   }

   .gs-overview h2 {
     max-width: 650px;
     font-size: clamp(36px, 6vw, 52px);
   }

   .gs-overview__body p {
     max-width: 650px;
     font-size: 15px;
     line-height: 1.6;
   }

   .gs-overview__footer {
     margin-top: 27px;
   }

   .gs-overview__visual {
     min-height: 560px;
     margin: 0 5% 50px;
   }

   .gs-overview__browser {
     width: 70%;
   }

   .gs-overview__phone {
     right: 12%;
     width: 19%;
   }
 }

 @media (max-width: 560px) {
   .gs-overview__content {
     padding: 48px 22px 34px;
   }

   .gs-overview__eyebrow {
     margin-bottom: 21px;
   }

   .gs-overview h2 {
     font-size: clamp(33px, 8.5vw, 44px);
   }

   .gs-overview__body p {
     font-size: 14px;
   }

   .gs-overview__footer {
     gap: 9px;
   }

   .gs-overview__footer p {
     font-size: 7px;
     letter-spacing: .22em;
   }

   .gs-overview__footer b {
     margin: 0 3px;
   }

   .gs-overview__visual {
     min-height: 410px;
     margin: 0 12px 40px;
   }

   .gs-overview__visual-label {
     top: 17px;
     right: 13px;
     font-size: 6px;
     letter-spacing: .2em;
   }

   .gs-overview__visual-label span {
     margin: 0 4px;
   }

   .gs-overview__skyline {
     top: 10px;
     height: 220px;
   }

   .gs-overview__browser {
     top: 28%;
     left: 4%;
     width: 78%;
     height: 56%;
     min-height: 230px;
     border-radius: 10px;
   }

   .gs-overview__browser-bar {
     height: 19px;
     padding: 0 8px;
   }

   .gs-overview__dots i {
     width: 4px;
     height: 4px;
   }

   .gs-overview__address {
     top: 2px;
     padding: 3px 5px;
     font-size: 4px;
   }

   .gs-overview__browser-nav {
     height: 31px;
     padding: 0 10px;
   }

   .gs-overview__browser-nav .gs-overview__logo-mark {
     font-size: 15px;
   }

   .gs-overview__browser-nav .gs-overview__mock-logo-img {
     height: 36px;
   }

   .gs-overview__mock-links {
     display: none;
   }

   .gs-overview__browser-body {
     height: calc(100% - 50px);
   }

   .gs-overview__browser-copy {
     width: 75%;
     padding: 18px 0 0 9%;
   }

   .gs-overview__mini-eyebrow {
     margin-bottom: 7px;
     font-size: 4px;
   }

   .gs-overview__browser-copy h3 {
     font-size: clamp(17px, 4.2vw, 25px);
   }

   .gs-overview__browser-copy p {
     max-width: 150px;
     margin: 8px 0;
     font-size: 5px;
   }

   .gs-overview__building--desktop {
     width: 34%;
   }

   .gs-overview__browser-bottom p {
     font-size: 4px;
   }

   .gs-overview__phone {
     top: 39%;
     right: 4%;
     width: 25%;
     height: 49%;
     min-width: 88px;
     min-height: 205px;
     padding: 3px;
     border-width: 2px;
     border-radius: 18px;
   }

   .gs-overview__phone-screen {
     padding: 17px 6px 6px;
     border-radius: 13px;
   }

   .gs-overview__phone-notch {
     top: 5px;
     height: 6px;
   }

   .gs-overview__phone-kicker {
     margin: 16px 0 7px;
     font-size: 5px;
   }

   .gs-overview__building--phone {
     min-height: 42px;
   }

   .gs-overview__phone-words {
     margin-top: 8px;
     font-size: 8px;
   }

   .gs-overview__visual-footer {
     bottom: 3%;
     gap: 6px;
   }

   .gs-overview__visual-footer span {
     width: 20px;
   }

   .gs-overview__visual-footer p {
     font-size: 5px;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap");

 .gs-build,
 .gs-build * {
   box-sizing: border-box;
 }

 .gs-build {
   --gs-deep: #06271e;
   --gs-ink: #102d26;
   --gs-green: #19d875;
   --gs-lime: #b9e96a;
   --gs-sage: #cadad0;
   --gs-cream: #f1ede5;

   padding: 105px 24px 125px;
   background: #f7f9f7;
   color: var(--gs-ink);
   font-family: "Inter", sans-serif;
 }

 .gs-build__intro {
   max-width: 1240px;
   margin: 0 auto 62px;
 }

 .gs-build__eyebrow {
   display: flex;
   align-items: center;
   gap: 11px;
   margin: 0 0 22px;
   color: #18854e;
   font-size: 12px;
   font-weight: 700;
   letter-spacing: .22em;
   text-transform: uppercase;
 }

 .gs-build__eyebrow-dot {
   width: 7px;
   height: 7px;
   border-radius: 50%;
   background: var(--gs-green);
 }

 .gs-build__intro h2 {
   max-width: 970px;
   margin: 0;
   font-size: clamp(32px, 3.8vw, 54px);
   font-weight: 600;
   letter-spacing: -.065em;
   line-height: 1.08;
 }

 .gs-build__intro h2 span {
   color: #248d62;
 }

 .gs-build__description {
   max-width: 680px;
   margin: 24px 0 0;
   color: #60736a;
   font-size: clamp(15px, 1.15vw, 18px);
   line-height: 1.65;
 }

 .gs-build__stack {
   max-width: 1240px;
   margin: 0 auto;
 }

 /* The later cards layer over the earlier cards while scrolling */
 .gs-build__card {
   position: sticky;
   top: 88px;
   display: grid;
   grid-template-columns: 34% 1fr;
   gap: clamp(24px, 3vw, 52px);
   align-items: stretch;
   min-height: 440px;
   margin-bottom: 28px;
   padding: clamp(28px, 3.2vw, 52px);
   overflow: hidden;
   border: 1px solid rgba(0, 0, 0, .06);
   border-radius: 28px;
   background: #fff;
   box-shadow: 0 22px 45px rgba(10, 37, 26, .05);
   color: #092922;
 }

 .gs-build__card:last-child {
   margin-bottom: 0;
 }

 /* Light color variations for cards */
 .gs-build__card--design {
   background: #0a251e;
   /* The dark green from the image */
 }

 .gs-build__card--development {
   background: #f0f7f9;
 }

 .gs-build__card--commerce {
   background: #d1f0db;
 }

 .gs-build__card--redesign {
   background: #fdfaf6;
 }

 .gs-build__card--responsive {
   background: #f2f5fa;
 }

 .gs-build__card--ux {
   background: #f6faf6;
 }

 .gs-build__card--cms {
   background: #fcf6f1;
 }

 .gs-build__card--support {
   background: #eff2f2;
 }

 /* Dark mode overrides for specific cards */
 .gs-build__card.gs-build__card--dark {
   color: #fff;
 }

 .gs-build__card--dark .gs-build__category {
   color: #b8d4c2;
 }

 .gs-build__card--dark .gs-build__copy>p {
   color: #d1e0d7;
 }

 .gs-build__card--dark .gs-build__detail-label {
   color: #a8cbb6;
 }

 .gs-build__card--dark .gs-build__detail>p:not(.gs-build__detail-label) {
   color: #d2e2d7;
 }

 .gs-build__card--dark .gs-build__detail-bottom {
   color: #b9e96a;
   border-top-color: rgba(255, 255, 255, .27);
 }

 .gs-build__card--dark .gs-build__button {
   border-color: #1fa360;
   color: #073026;
 }


 .gs-build__copy {
   display: flex;
   flex-direction: column;
   align-items: flex-start;
   min-width: 0;
 }

 .gs-build__category {
   margin-bottom: 34px;
   color: #3b5f4f;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .17em;
   text-transform: uppercase;
 }

 .gs-build__copy h3 {
   margin: 0 0 19px;
   font-size: clamp(27px, 2.4vw, 39px);
   font-weight: 600;
   letter-spacing: -.055em;
   line-height: 1.13;
 }

 .gs-build__copy>p {
   max-width: 400px;
   margin: 0;
   color: #43584e;
   font-size: clamp(13px, .98vw, 15px);
   line-height: 1.7;
 }

 .gs-build__button {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 22px;
   min-width: 145px;
   margin-top: auto;
   padding: 13px 17px;
   border: 1px solid #1fa360;
   border-radius: 100px;
   background: var(--gs-green);
   color: #073026;
   font-size: 13px;
   font-weight: 700;
   text-decoration: none;
   transition: background .2s ease, transform .2s ease;
 }

 .gs-build__button:hover {
   transform: translateY(-3px);
   background: #b9ee85;
 }

 .gs-build__button span {
   font-size: 18px;
   line-height: .8;
 }

 /* =========================
   NEW SHOWCASE STRUCTURE
========================= */

 .gs-build__showcase {
   display: flex;
   align-items: center;
   justify-content: space-between;
   position: relative;
   min-width: 0;
   padding-right: 50px;
 }

 .gs-build__mockups {
   position: relative;
   flex: 1;
   min-width: 0;
   height: 100%;
   display: flex;
   align-items: center;
   justify-content: flex-start;
   padding-right: 40px;
 }

 .gs-build__features {
   flex: none;
   width: 250px;
   position: relative;
   z-index: 2;
 }

 .gs-build__features ul {
   list-style: none;
   margin: 0;
   padding: 0;
   display: flex;
   flex-direction: column;
   gap: 30px;
 }

 .gs-build__features li {
   display: flex;
   align-items: center;
   gap: 15px;
   color: #2b4539;
   font-size: 15px;
   font-weight: 600;
   letter-spacing: -0.01em;
 }

 .gs-build__feature-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 48px;
   height: 48px;
   border-radius: 50%;
   background: rgba(14, 184, 102, 0.08);
   color: #0e6c46;
 }

 .gs-build__feature-icon svg {
   width: 22px;
   height: 22px;
 }

 /* Dark mode specific (Design & Commerce cards) */
 .gs-build__card--dark .gs-build__features li {
   color: #c5e2d3;
 }

 .gs-build__card--dark .gs-build__feature-icon {
   background: rgba(14, 184, 102, 0.15);
   color: #19d875;
 }

 .gs-build__circuit {
   position: absolute;
   right: -20px;
   top: 0;
   bottom: 0;
   width: 150px;
   background-image: radial-gradient(circle at 100% 50%, rgba(20, 150, 85, 0.05) 0%, transparent 60%),
     linear-gradient(90deg, transparent 90%, rgba(20, 150, 85, 0.1) 90%, rgba(20, 150, 85, 0.1) 92%, transparent 92%);
   background-size: 100% 100%, 20px 20px;
   z-index: 1;
   pointer-events: none;
 }

 /* Mockup: Lumina */
 .gs-build__lumina {
   width: 420px;
   height: 280px;
   background: #fff;
   border-radius: 12px;
   border: 6px solid #1a1a1a;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   display: flex;
   flex-direction: column;
   overflow: hidden;
 }

 .gs-build__lumina-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 10px 15px;
   border-bottom: 1px solid #eee;
 }

 .gs-build__lumina-header .logo {
   font-size: 8px;
   font-weight: 700;
   letter-spacing: 0.1em;
 }

 .gs-build__lumina-header nav {
   display: flex;
   gap: 10px;
 }

 .gs-build__lumina-header nav i {
   font-size: 6px;
   font-style: normal;
   color: #666;
 }

 .gs-build__lumina-header button {
   background: #08271e;
   color: #fff;
   border: none;
   border-radius: 4px;
   padding: 4px 8px;
   font-size: 6px;
 }

 .gs-build__lumina-body {
   display: flex;
   padding: 15px;
   gap: 15px;
   flex: 1;
 }

 .gs-build__lumina-copy {
   flex: 1;
 }

 .gs-build__lumina-copy h4 {
   font-size: 14px;
   line-height: 1.1;
   margin: 0 0 8px 0;
   color: #222;
 }

 .gs-build__lumina-copy p {
   font-size: 7px;
   line-height: 1.4;
   color: #666;
   margin: 0 0 12px 0;
 }

 .gs-build__lumina-copy button {
   background: #111;
   color: #fff;
   border: none;
   border-radius: 4px;
   padding: 6px 12px;
   font-size: 6px;
 }

 .gs-build__lumina-image {
   width: 140px;
   background: #ebe6df url('../assets/design_card.jpg') no-repeat center center / cover;
   border-radius: 6px;
 }

 .gs-build__lumina-palette {
   position: absolute;
   bottom: -20px;
   left: 40px;
   width: 320px;
   background: #fff;
   border-radius: 8px;
   padding: 8px 15px;
   display: flex;
   align-items: center;
   box-shadow: 0 8px 25px rgba(0, 0, 0, 0.06);
 }

 .gs-build__lumina-palette span:first-child {
   font-size: 10px;
   font-weight: 600;
   margin-right: 5px;
 }

 .gs-build__lumina-palette>small {
   font-size: 8px;
   color: #666;
 }

 .gs-build__lumina-palette i.div {
   width: 1px;
   height: 15px;
   background: #eee;
   margin: 0 15px;
 }

 .gs-build__colors {
   display: flex;
   align-items: center;
   gap: 6px;
 }

 .gs-build__colors span {
   width: 14px;
   height: 14px;
   border-radius: 50%;
 }

 .gs-build__colors .c1 {
   background: #08271E;
 }

 .gs-build__colors .c2 {
   background: #19D875;
 }

 .gs-build__colors .c3 {
   background: #EBF8EF;
   border: 1px solid #ddd;
 }

 .gs-build__colors small {
   font-size: 6px;
   color: #999;
   margin-left: -2px;
   margin-right: 4px;
 }

 /* Mockup: Nexora */
 .gs-build__nexora-bg {
   width: 380px;
   height: 260px;
   background: #fff;
   border-radius: 12px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   margin-left: 80px;
   display: flex;
   flex-direction: column;
 }

 .gs-build__nexora-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 12px 18px;
 }

 .gs-build__nexora-header .logo {
   font-size: 10px;
   font-weight: 700;
   letter-spacing: 0.1em;
 }

 .gs-build__nexora-header nav i {
   font-size: 7px;
   margin: 0 6px;
   font-style: normal;
   color: #555;
 }

 .gs-build__nexora-header .menu {
   width: 12px;
   height: 8px;
   border-top: 1px solid #333;
   border-bottom: 1px solid #333;
 }

 .gs-build__nexora-body {
   padding: 20px;
 }

 .gs-build__nexora-body h4 {
   font-size: 18px;
   line-height: 1.1;
   margin: 0 0 10px 0;
   max-width: 200px;
 }

 .gs-build__nexora-body p {
   font-size: 8px;
   color: #666;
   max-width: 180px;
   margin: 0 0 15px 0;
 }

 .gs-build__nexora-body button {
   background: #111;
   color: #fff;
   border: none;
   border-radius: 4px;
   padding: 6px 14px;
   font-size: 7px;
 }

 .gs-build__nexora-cubes {
   position: absolute;
   right: -10px;
   bottom: 0;
   width: 180px;
   height: 140px;
   background: #e0e5ec url('../assets/dev_card.jpg') no-repeat center center / cover;
   clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
 }

 .gs-build__nexora-code {
   position: absolute;
   left: 0;
   top: 30px;
   width: 240px;
   background: #1e1e1e;
   border-radius: 8px;
   box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
   border: 1px solid #333;
 }

 .gs-build__code-head {
   padding: 8px 12px;
   border-bottom: 1px solid #333;
 }

 .gs-build__code-head span {
   font-size: 8px;
   color: #aaa;
 }

 .gs-build__code-body {
   padding: 12px;
   font-family: "Inter", sans-serif;
 }

 .gs-build__code-body p {
   margin: 0 0 4px 0;
   font-size: 7px;
   color: #d4d4d4;
 }

 .gs-build__code-body p span {
   color: #569cd6;
 }

 .gs-build__code-body p.indent {
   padding-left: 10px;
 }

 .gs-build__code-body p.indent-2 {
   padding-left: 20px;
 }

 .gs-build__code-body p.indent-3 {
   padding-left: 30px;
 }

 .gs-build__code-body p.indent-4 {
   padding-left: 40px;
 }

 .gs-build__code-badge {
   position: absolute;
   right: -15px;
   top: 50%;
   transform: translateY(-50%);
   background: #444;
   color: #fff;
   width: 30px;
   height: 30px;
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   font-size: 9px;
   border: 2px solid #fff;
 }

 /* Mockup: Velora */
 .gs-build__velora {
   width: 340px;
   height: 250px;
   background: #fff;
   border-radius: 12px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
 }

 .gs-build__velora-header {
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 12px 15px;
   border-bottom: 1px solid #f0f0f0;
 }

 .gs-build__velora-header .logo {
   font-size: 9px;
   font-weight: 700;
   letter-spacing: 0.15em;
 }

 .gs-build__velora-header nav i {
   font-size: 7px;
   margin: 0 8px;
   font-style: normal;
   color: #555;
 }

 .gs-build__velora-header .icons i {
   font-size: 8px;
   margin-left: 8px;
   font-style: normal;
   font-weight: bold;
 }

 .gs-build__velora-body {
   display: flex;
   padding: 15px;
   gap: 15px;
 }

 .gs-build__velora-image {
   width: 140px;
   height: 140px;
   background: #eef2eb url('../assets/chair.jpg') no-repeat center center / cover;
   border-radius: 8px;
 }

 .gs-build__velora-details h4 {
   font-size: 13px;
   margin: 0 0 5px 0;
 }

 .gs-build__velora-details .price {
   font-size: 11px;
   font-weight: 600;
   margin: 0 0 8px 0;
 }

 .gs-build__velora-details .stars {
   font-size: 8px;
   color: #555;
   margin-bottom: 12px;
 }

 .gs-build__velora-details .swatches {
   display: flex;
   gap: 5px;
   margin-bottom: 15px;
 }

 .gs-build__velora-details .swatches span {
   width: 14px;
   height: 14px;
   border-radius: 3px;
   border: 1px solid #eee;
 }

 .gs-build__velora-details .swatches .s1 {
   background: #4a5c48;
 }

 .gs-build__velora-details .swatches .s2 {
   background: #1a221c;
 }

 .gs-build__velora-details .swatches .s3 {
   background: #fff;
 }

 .gs-build__velora-details button {
   display: block;
   width: 100%;
   padding: 7px;
   border-radius: 4px;
   font-size: 7px;
   border: none;
   margin-bottom: 5px;
 }

 .gs-build__velora-details .add {
   background: #08271e;
   color: #fff;
 }

 .gs-build__velora-details .buy {
   background: #fff;
   color: #08271e;
   border: 1px solid #ccc;
 }

 .gs-build__velora-phone {
   position: absolute;
   right: 40px;
   top: 10px;
   width: 120px;
   height: 270px;
   background: #fff;
   border-radius: 18px;
   border: 4px solid #f2f7f0;
   box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
   padding: 15px 12px;
   display: flex;
   flex-direction: column;
 }

 .gs-build__velora-phone .phone-notch {
   position: absolute;
   top: 0;
   left: 50%;
   transform: translateX(-50%);
   width: 40px;
   height: 12px;
   background: #f2f7f0;
   border-radius: 0 0 8px 8px;
 }

 .gs-build__velora-phone .phone-header {
   font-size: 10px;
   font-weight: 600;
   display: flex;
   justify-content: space-between;
   margin-top: 5px;
   margin-bottom: 15px;
 }

 .gs-build__velora-phone .phone-header i {
   font-style: normal;
   font-weight: normal;
 }

 .gs-build__velora-phone .phone-cart-item {
   display: flex;
   gap: 8px;
   margin-bottom: 15px;
 }

 .gs-build__velora-phone .phone-cart-item .thumb {
   width: 30px;
   height: 30px;
   background: #eef2eb url('../assets/chair.jpg') no-repeat center center / cover;
   border-radius: 4px;
 }

 .gs-build__velora-phone .phone-cart-item p {
   margin: 0;
   font-size: 6px;
   font-weight: 600;
 }

 .gs-build__velora-phone .phone-cart-item small {
   font-size: 6px;
   color: #666;
 }

 .gs-build__velora-phone .phone-totals {
   margin-bottom: 15px;
   border-top: 1px solid #eee;
   padding-top: 10px;
 }

 .gs-build__velora-phone .phone-totals p,
 .gs-build__velora-phone .phone-totals h4 {
   display: flex;
   justify-content: space-between;
   margin: 0 0 5px 0;
   font-size: 6px;
 }

 .gs-build__velora-phone .phone-totals h4 {
   font-size: 8px;
   margin-top: 10px;
 }

 .gs-build__velora-phone button {
   width: 100%;
   padding: 8px;
   border-radius: 4px;
   border: none;
   font-size: 7px;
   font-weight: 600;
   margin-bottom: 5px;
 }

 .gs-build__velora-phone .pay-card {
   background: #111;
   color: #fff;
 }

 .gs-build__velora-phone .pay-apple,
 .gs-build__velora-phone .pay-google {
   background: #f0f0f0;
   color: #111;
 }

 /* Mockup: Redesign */
 .gs-build__redesign-old {
   position: absolute;
   left: 20px;
   top: 30px;
   width: 260px;
   height: 200px;
   background: #e8e6e1;
   border-radius: 8px;
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
   padding: 10px;
   display: flex;
   flex-direction: column;
   gap: 10px;
 }

 .gs-build__redesign-old .wire-header {
   height: 15px;
   background: #dcdad5;
   border-radius: 4px;
 }

 .gs-build__redesign-old .wire-hero {
   height: 80px;
   background: #d5d3ce;
   border-radius: 4px;
 }

 .gs-build__redesign-old .wire-grid {
   display: flex;
   gap: 10px;
   height: 60px;
 }

 .gs-build__redesign-old .wire-grid span {
   flex: 1;
   background: #dcdad5;
   border-radius: 4px;
 }

 .gs-build__redesign-new {
   position: absolute;
   left: 60px;
   /* Shifted left to avoid overlapping icons on the right */
   top: 60px;
   width: 320px;
   height: 220px;
   background: #fff;
   border-radius: 12px;
   border: 1px solid #eee;
   box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
   display: flex;
   flex-direction: column;
   overflow: hidden;
 }

 /* Mockup: Responsive */
 .gs-build__resp-tablet {
   position: absolute;
   left: 30px;
   top: 30px;
   width: 280px;
   height: 200px;
   background: #fff;
   border-radius: 16px;
   border: 12px solid #222;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
   overflow: hidden;
 }

 .gs-build__resp-tablet .content {
   padding: 15px;
 }

 .gs-build__resp-tablet .hero {
   height: 80px;
   background: #f0f4fa url('../assets/responsive_hero.jpg') no-repeat center center / cover;
   border-radius: 8px;
   margin-bottom: 10px;
 }

 .gs-build__resp-tablet .grid {
   display: flex;
   gap: 10px;
 }

 .gs-build__resp-tablet .grid i {
   flex: 1;
   height: 60px;
   background: #e2e8f0;
   border-radius: 6px;
 }

 .gs-build__resp-tablet .grid i:nth-child(1) {
   background: url('../assets/ui_card_1.jpg') no-repeat center center / cover;
 }

 .gs-build__resp-tablet .grid i:nth-child(2) {
   background: url('../assets/ui_card_2.jpg') no-repeat center center / cover;
 }

 .gs-build__resp-mobile {
   position: absolute;
   left: 260px;
   top: 60px;
   width: 100px;
   height: 200px;
   background: #fff;
   border-radius: 16px;
   border: 8px solid #222;
   box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
   overflow: hidden;
 }

 .gs-build__resp-mobile .content {
   padding: 10px;
 }

 .gs-build__resp-mobile .hero {
   height: 60px;
   background: #f0f4fa url('../assets/responsive_hero.jpg') no-repeat center center / cover;
   border-radius: 6px;
   margin-bottom: 10px;
 }

 .gs-build__resp-mobile i {
   display: block;
   height: 40px;
   background: #e2e8f0;
   border-radius: 4px;
   margin-bottom: 10px;
 }

 .gs-build__resp-mobile i:nth-of-type(1) {
   background: url('../assets/ui_card_1.jpg') no-repeat center center / cover;
 }

 .gs-build__resp-mobile i:nth-of-type(2) {
   background: url('../assets/ui_card_2.jpg') no-repeat center center / cover;
 }

 /* Mockup: UX */
 .gs-build__ux-flow {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 100%;
   height: 100%;
 }

 .gs-build__ux-flow .node {
   padding: 12px 24px;
   background: #fff;
   border: 2px solid #ddd;
   border-radius: 8px;
   font-size: 11px;
   font-weight: 600;
   color: #333;
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
   position: relative;
 }

 .gs-build__ux-flow .n1 {
   border-color: #999;
 }

 .gs-build__ux-flow .n2 {
   border-color: #555;
 }

 .gs-build__ux-flow .n3 {
   background: #08271e;
   color: #fff;
   border-color: #08271e;
 }

 .gs-build__ux-flow .line {
   width: 40px;
   height: 2px;
   background: #ccc;
   position: relative;
 }

 .gs-build__ux-flow .line::after {
   content: '';
   position: absolute;
   right: 0;
   top: -4px;
   border-top: 5px solid transparent;
   border-bottom: 5px solid transparent;
   border-left: 6px solid #ccc;
 }

 /* Mockup: CMS */
 .gs-build__cms-dash {
   width: 420px;
   height: 260px;
   background: #fff;
   border-radius: 12px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   display: flex;
   overflow: hidden;
   border: 1px solid #eee;
 }

 .gs-build__cms-dash aside {
   width: 70px;
   background: #fafafa;
   border-right: 1px solid #eee;
   padding: 15px 10px;
 }

 .gs-build__cms-dash .nav-item {
   height: 8px;
   background: #ddd;
   border-radius: 4px;
   margin-bottom: 15px;
 }

 .gs-build__cms-dash main {
   flex: 1;
   display: flex;
   flex-direction: column;
 }

 .gs-build__cms-dash .header {
   display: flex;
   justify-content: space-between;
   padding: 15px;
   border-bottom: 1px solid #eee;
   font-size: 10px;
   font-weight: 600;
 }

 .gs-build__cms-dash .header button {
   background: #19d875;
   color: #08271e;
   border: none;
   border-radius: 4px;
   padding: 4px 8px;
   font-size: 8px;
   font-weight: bold;
 }

 .gs-build__cms-dash .editor {
   padding: 20px;
 }

 .gs-build__cms-dash .title {
   font-size: 20px;
   font-weight: 600;
   margin-bottom: 20px;
   border-left: 2px solid #19d875;
   padding-left: 10px;
 }

 .gs-build__cms-dash .text-block {
   height: 8px;
   background: #f0f0f0;
   border-radius: 4px;
   margin-bottom: 10px;
 }

 .gs-build__cms-dash .short {
   width: 70%;
 }

 /* Mockup: Support */
 .gs-build__status-dash {
   width: 380px;
   height: 240px;
   background: #fff;
   border-radius: 12px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   padding: 25px;
   display: flex;
   flex-direction: column;
   border: 1px solid #eee;
   margin-left: 30px;
 }

 .gs-build__status-dash .top {
   display: flex;
   gap: 15px;
   align-items: center;
   margin-bottom: 30px;
 }

 .gs-build__status-dash .pulse {
   width: 14px;
   height: 14px;
   background: #19d875;
   border-radius: 50%;
   box-shadow: 0 0 0 6px rgba(25, 216, 117, 0.2);
 }

 .gs-build__status-dash small {
   font-size: 10px;
   color: #666;
   display: block;
   margin-bottom: 4px;
 }

 .gs-build__status-dash strong {
   font-size: 22px;
   font-weight: 600;
   display: block;
 }

 .gs-build__status-dash .graph {
   flex: 1;
   display: flex;
   align-items: flex-end;
   gap: 12px;
 }

 .gs-build__status-dash .graph span {
   flex: 1;
   background: #e0f5e9;
   border-radius: 4px 4px 0 0;
   position: relative;
 }

 .gs-build__status-dash .graph span:last-child {
   background: #19d875;
 }



 /* =========================
   CSS ILLUSTRATIONS
========================= */

 /* 01 - Design */
 .gs-build__mini-window,
 .gs-build__code-window,
 .gs-build__shop-window,
 .gs-build__cms-window,
 .gs-build__status-window {
   position: relative;
   z-index: 1;
   width: 77%;
   box-shadow: 0 23px 35px rgba(24, 45, 32, .17);
 }

 .gs-build__mini-window {
   height: 230px;
   overflow: hidden;
   transform: rotate(-5deg);
   border: 1px solid #dde2da;
   border-radius: 11px;
   background: #fff;
 }

 .gs-build__mini-bar {
   display: flex;
   align-items: center;
   gap: 4px;
   height: 23px;
   padding: 0 10px;
   border-bottom: 1px solid #e9ece8;
   background: #f7f9f7;
 }

 .gs-build__mini-bar i {
   width: 5px;
   height: 5px;
   border-radius: 50%;
   background: #709385;
 }

 .gs-build__mini-page {
   position: relative;
   height: calc(100% - 23px);
   padding: 28px 20px;
   background: #fafaf6;
 }

 .gs-build__mini-kicker {
   display: block;
   margin-bottom: 12px;
   color: #80968a;
   font-size: 7px;
   letter-spacing: .2em;
   text-transform: uppercase;
 }

 .gs-build__mini-page strong {
   display: block;
   font-size: clamp(19px, 2vw, 30px);
   letter-spacing: -.07em;
   line-height: 1.1;
 }

 .gs-build__mini-rule {
   display: block;
   width: 27px;
   height: 3px;
   margin-top: 14px;
   background: #5aab77;
 }

 .gs-build__mini-block {
   position: absolute;
   right: -15px;
   bottom: -17px;
   width: 43%;
   height: 80%;
   border-radius: 70px 70px 0 0;
   background: #c6d2bd;
 }

 /* 02 - Development */
 .gs-build__code-window {
   height: 232px;
   overflow: hidden;
   transform: rotate(4deg);
   border-radius: 11px;
   background: #153b30;
 }

 .gs-build__code-window .gs-build__mini-bar {
   border-color: #31574b;
   background: #0c2e26;
 }

 .gs-build__code-lines {
   width: 67%;
   padding: 22px 16px;
 }

 .gs-build__code-lines span {
   display: block;
   height: 5px;
   margin-bottom: 12px;
   border-radius: 4px;
   background: #78a894;
 }

 .gs-build__code-lines span:nth-child(even) {
   background: #c1d8b0;
 }

 .gs-build__code-small {
   width: 28%;
 }

 .gs-build__code-medium {
   width: 53%;
 }

 .gs-build__code-long {
   width: 78%;
 }

 .gs-build__code-preview {
   position: absolute;
   right: -5%;
   bottom: -12%;
   width: 44%;
   height: 76%;
   padding: 23px 12px;
   border-radius: 7px;
   background: #f4f2e9;
 }

 .gs-build__code-preview span {
   display: block;
   height: 13px;
   margin-bottom: 12px;
   border-radius: 3px;
   background: #b2cbbb;
 }

 .gs-build__code-preview span:first-child {
   height: 58px;
   background: #83ac91;
 }

 /* 03 - Commerce */
 .gs-build__shop-window {
   height: 235px;
   padding: 17px;
   transform: rotate(-3deg);
   border-radius: 11px;
   background: #fffdf9;
 }

 .gs-build__shop-heading {
   display: flex;
   justify-content: space-between;
   font-size: 11px;
   font-weight: 700;
 }

 .gs-build__products {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   gap: 12px;
   margin-top: 18px;
 }

 .gs-build__products div>span {
   display: block;
   height: 108px;
   border-radius: 5px;
   background: #ced8c9;
 }

 .gs-build__products div:nth-child(2)>span {
   background: #e4d5bd;
 }

 .gs-build__products i {
   display: block;
   width: 70%;
   height: 5px;
   margin-top: 8px;
   border-radius: 4px;
   background: #ccd4cc;
 }

 .gs-build__products i:last-child {
   width: 39%;
 }

 /* 04 - Redesign */
 .gs-build__before-after {
   position: relative;
   z-index: 1;
   display: grid;
   grid-template-columns: 1fr 1fr;
   width: 78%;
   height: 235px;
   overflow: hidden;
   transform: rotate(3deg);
   border: 5px solid #fff;
   border-radius: 11px;
   box-shadow: 0 23px 35px rgba(24, 45, 32, .17);
 }

 .gs-build__before,
 .gs-build__after {
   padding: 18px 14px;
 }

 .gs-build__before {
   background: #f0f0ec;
 }

 .gs-build__after {
   background: #f9faf6;
 }

 .gs-build__before small,
 .gs-build__after small {
   display: block;
   margin-bottom: 20px;
   font-size: 9px;
   font-weight: 700;
   text-transform: uppercase;
 }

 .gs-build__before>span {
   display: block;
   height: 13px;
   margin-bottom: 13px;
   background: #d3d6d2;
 }

 .gs-build__before>span:nth-of-type(2) {
   height: 90px;
 }

 .gs-build__after strong {
   display: block;
   font-size: 20px;
   letter-spacing: -.06em;
   line-height: 1.1;
 }

 .gs-build__after>span {
   display: block;
   height: 80px;
   margin-top: 15px;
   border-radius: 45px 45px 0 0;
   background: #acc6ae;
 }

 /* 05 - Responsive */
 .gs-build__responsive-desktop {
   position: relative;
   z-index: 1;
   width: 75%;
   height: 205px;
   padding: 33px 24px;
   transform: rotate(-3deg);
   border: 6px solid #25483a;
   border-radius: 11px;
   background: #fafbf7;
   box-shadow: 0 20px 35px rgba(24, 45, 32, .13);
 }

 .gs-build__responsive-desktop>span,
 .gs-build__responsive-phone>span {
   display: block;
   width: 35px;
   height: 4px;
   margin-bottom: 20px;
   background: #65ad7b;
 }

 .gs-build__responsive-desktop strong {
   display: block;
   font-size: 27px;
   letter-spacing: -.07em;
 }

 .gs-build__responsive-desktop i {
   display: block;
   width: 55%;
   height: 32px;
   margin-top: 20px;
   background: #dae6d7;
 }

 .gs-build__responsive-phone {
   position: absolute;
   z-index: 2;
   right: 9%;
   bottom: 14%;
   width: 27%;
   height: 164px;
   padding: 25px 11px 10px;
   transform: rotate(6deg);
   border: 5px solid #25483a;
   border-radius: 17px;
   background: #fff;
   box-shadow: 0 16px 25px rgba(24, 45, 32, .18);
 }

 .gs-build__responsive-phone>span {
   width: 19px;
   height: 3px;
   margin-bottom: 12px;
 }

 .gs-build__responsive-phone strong {
   font-size: 16px;
   letter-spacing: -.07em;
 }

 .gs-build__responsive-phone i {
   display: block;
   height: 45px;
   margin-top: 14px;
   background: #d8e5d6;
 }

 /* 06 - UX */
 .gs-build__ux-map {
   position: relative;
   z-index: 1;
   display: flex;
   align-items: center;
   gap: 7px;
   transform: rotate(-5deg);
 }

 .gs-build__ux-map div {
   display: grid;
   place-items: center;
   width: clamp(70px, 6.5vw, 105px);
   height: 94px;
   padding: 6px;
   border: 1px solid #9dbcaa;
   border-radius: 11px;
   background: #fffef9;
   box-shadow: 0 13px 20px rgba(24, 45, 32, .1);
   font-size: 10px;
   font-weight: 700;
 }

 .gs-build__ux-map div:last-child {
   border-color: #60af7e;
   background: #d4ead6;
 }

 .gs-build__ux-map>span {
   color: #39845c;
   font-size: 20px;
 }

 /* 07 - CMS */
 .gs-build__cms-window {
   display: grid;
   grid-template-columns: 55px 1fr;
   height: 230px;
   overflow: hidden;
   transform: rotate(3deg);
   border-radius: 10px;
   background: #fff;
 }

 .gs-build__cms-window aside {
   padding: 25px 15px;
   background: #19392f;
 }

 .gs-build__cms-window aside i {
   display: block;
   height: 7px;
   margin-bottom: 19px;
   border-radius: 4px;
   background: #759685;
 }

 .gs-build__cms-window>div {
   padding: 25px 18px;
 }

 .gs-build__cms-window small {
   color: #71877c;
   font-size: 8px;
 }

 .gs-build__cms-window strong {
   display: block;
   margin: 15px 0;
   font-size: 21px;
   letter-spacing: -.06em;
 }

 .gs-build__cms-window>div>span {
   display: block;
   width: 90%;
   height: 7px;
   margin-bottom: 10px;
   background: #d8e1d9;
 }

 .gs-build__cms-window>div>span:nth-of-type(2) {
   width: 70%;
 }

 .gs-build__cms-window b {
   display: inline-block;
   margin-top: 15px;
   padding: 8px 12px;
   border-radius: 5px;
   background: #30b976;
   color: #fff;
   font-size: 9px;
 }

 /* 08 - Support */
 .gs-build__status-window {
   height: 225px;
   padding: 32px 26px;
   transform: rotate(-4deg);
   border-radius: 13px;
   background: #f9fbf7;
 }

 .gs-build__status-pulse {
   display: block;
   width: 12px;
   height: 12px;
   margin-bottom: 18px;
   border-radius: 50%;
   background: #25c979;
   box-shadow: 0 0 0 7px #d9f6e5;
 }

 .gs-build__status-window small {
   display: block;
   margin-bottom: 6px;
   color: #778d80;
   font-size: 10px;
 }

 .gs-build__status-window strong {
   display: block;
   font-size: 24px;
   letter-spacing: -.06em;
 }

 .gs-build__status-window>div {
   display: flex;
   align-items: end;
   gap: 8px;
   height: 64px;
   margin-top: 19px;
 }

 .gs-build__status-window>div span {
   width: 25%;
   height: 50%;
   border-radius: 4px 4px 0 0;
   background: #aed7bb;
 }

 .gs-build__status-window>div span:nth-child(2) {
   height: 80%;
   background: #80c99c;
 }

 .gs-build__status-window>div span:nth-child(3) {
   height: 100%;
   background: #37b977;
 }

 /* =========================
   TABLET
========================= */

 @media (max-width: 1100px) {
   .gs-build__card {
     grid-template-columns: 1fr;
     gap: 40px;
   }

   .gs-build__showcase {
     flex-direction: column;
     align-items: flex-start;
     padding-right: 0;
   }

   .gs-build__mockups {
     padding-right: 0;
     margin-bottom: 40px;
   }

   .gs-build__features {
     width: 100%;
   }

   .gs-build__features ul {
     flex-direction: row;
     flex-wrap: wrap;
     gap: 20px;
   }

   .gs-build__circuit {
     display: none;
   }

   .gs-build__copy h3 {
     font-size: clamp(28px, 3.5vw, 37px);
   }
 }

 /* =========================
   MOBILE
========================= */

 @media (max-width: 700px) {
   .gs-build {
     padding: 75px 16px 85px;
   }

   .gs-build__intro {
     margin-bottom: 35px;
   }

   .gs-build__intro h2 {
     font-size: clamp(35px, 8vw, 48px);
   }

   .gs-build__description {
     margin-top: 17px;
     font-size: 14px;
   }

   .gs-build__card {
     position: relative;
     top: auto;
     display: flex;
     flex-direction: column;
     min-height: 0;
     gap: 23px;
     margin-bottom: 17px;
     padding: 25px;
     border-radius: 21px;
   }

   .gs-build__category {
     margin-bottom: 20px;
     font-size: 10px;
   }

   .gs-build__copy h3 {
     margin-bottom: 13px;
     font-size: clamp(29px, 7vw, 37px);
   }

   .gs-build__copy>p {
     font-size: 13px;
     line-height: 1.65;
   }

   .gs-build__button {
     margin-top: 25px;
   }

   .gs-build__showcase {
     overflow-x: auto;
     overflow-y: hidden;
     padding-bottom: 20px;
   }
 }

 @media (max-width: 390px) {
   .gs-build__card {
     padding: 21px;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-process,
 .gs-process * {
   box-sizing: border-box;
 }

 .gs-process {
   --process-ink: #112823;
   --process-green: #17b86b;

   position: relative;
   overflow: hidden;
   padding: 75px 30px 95px;
   background: #fff;
   color: var(--process-ink);
   font-family: "Inter", sans-serif;
 }

 /* Faint technical grid at the outer edges */
 .gs-process::before,
 .gs-process::after {
   position: absolute;
   top: 0;
   width: 88px;
   height: 270px;
   content: "";
   opacity: .45;
   background-image:
     linear-gradient(#d9e3e0 1px, transparent 1px),
     linear-gradient(90deg, #d9e3e0 1px, transparent 1px);
   background-size: 20px 20px;
   mask-image: linear-gradient(to bottom, #000, transparent);
   pointer-events: none;
 }

 .gs-process::before {
   left: 0;
 }

 .gs-process::after {
   right: 0;
 }

 .gs-process__inner {
   position: relative;
   z-index: 1;
   max-width: 1240px;
   margin: 0 auto;
 }

 .gs-process__header {
   display: grid;
   grid-template-columns: 1fr 340px;
   align-items: end;
   gap: 70px;
   margin-bottom: 36px;
 }

 .gs-process__eyebrow {
   display: inline-block;
   margin: 0 0 13px;
   border-bottom: 1px solid #5a9e7b;
   color: #24453a;
   font-size: 12px;
   font-weight: 700;
   letter-spacing: .27em;
   line-height: 1.5;
   text-transform: uppercase;
 }

 .gs-process__header h2 {
   max-width: 860px;
   margin: 0;
   font-size: clamp(37px, 3.45vw, 55px);
   font-weight: 600;
   letter-spacing: -.06em;
   line-height: 1.08;
 }

 .gs-process__intro {
   max-width: 340px;
   margin: 0 0 5px;
   color: #52615d;
   font-size: 15px;
   line-height: 1.65;
 }

 .gs-process__accordion {
   border: 1px solid #d9e2de;
 }

 .gs-process__item {
   --step-accent: #17b86b;
   --step-bg: #f3fbf6;
   --visual-bg: #e5f2e8;

   display: flex;
   flex-direction: column;
   background: #fff;
   border-bottom: 1px solid #d9e2de;
 }

 .gs-process__item[data-step="testing"],
 .gs-process__item[data-step="deployment"],
 .gs-process__item[data-step="support"] {
   flex-direction: column-reverse;
 }

 .gs-process__item:last-child {
   border-bottom: 0;
 }



 .gs-process__item.is-open {
   background: var(--step-bg);
   outline: 1px solid color-mix(in srgb, var(--step-accent) 45%, white);
   outline-offset: -1px;
 }

 /* Collapsed row */
 .gs-process__trigger {
   display: grid;
   grid-template-columns: 55px 245px minmax(0, 1fr) 30px;
   align-items: center;
   gap: 18px;
   width: 100%;
   min-height: 65px;
   padding: 12px 27px;
   border: 0;
   background: transparent;
   color: var(--process-ink);
   font: inherit;
   text-align: left;
   cursor: pointer;
 }

 .gs-process__trigger:hover {
   background: rgba(18, 75, 51, .025);
 }

 .gs-process__trigger:focus-visible {
   position: relative;
   z-index: 2;
   outline: 3px solid var(--step-accent);
   outline-offset: -4px;
 }

 .gs-process__number {
   font-size: 28px;
   font-weight: 500;
   letter-spacing: -.06em;
 }

 .gs-process__title {
   font-size: clamp(24px, 2.2vw, 32px);
   font-weight: 600;
   letter-spacing: -.04em;
 }

 .gs-process__summary {
   max-width: 525px;
   color: #465651;
   font-size: 13px;
   line-height: 1.55;
 }

 .gs-process__toggle {
   position: relative;
   width: 20px;
   height: 20px;
   justify-self: end;
 }

 .gs-process__toggle::before,
 .gs-process__toggle::after {
   position: absolute;
   top: 9px;
   left: 1px;
   width: 18px;
   height: 1.5px;
   content: "";
   background: currentColor;
   transition: transform .22s ease;
 }

 .gs-process__toggle::after {
   transform: rotate(90deg);
 }

 .gs-process__item.is-open .gs-process__toggle::after {
   transform: rotate(0);
 }

 .gs-process__item.is-open .gs-process__number,
 .gs-process__item.is-open .gs-process__title,
 .gs-process__item.is-open .gs-process__toggle {
   color: var(--step-accent);
 }

 /* When open, the heading moves to the left side of the visual */
 .gs-process__item.is-open .gs-process__trigger {
   grid-template-columns: 55px minmax(0, 1fr) 30px;
   min-height: 76px;
   padding-bottom: 0;
 }

 .gs-process__item.is-open[data-step="testing"] .gs-process__trigger,
 .gs-process__item.is-open[data-step="deployment"] .gs-process__trigger,
 .gs-process__item.is-open[data-step="support"] .gs-process__trigger {
   padding-bottom: 12px;
   padding-top: 0;
 }

 .gs-process__item.is-open .gs-process__summary {
   display: none;
 }

 .gs-process__panel[hidden] {
   display: none;
 }

 .gs-process__panel-inner {
   display: grid;
   grid-template-columns: 315px minmax(0, 1fr);
   gap: 26px;
   padding: 0 93px 32px 27px;
   align-items: center;
 }

 .gs-process__panel-copy {
   padding-top: 4px;
 }

 .gs-process__small-line {
   display: block;
   width: 43px;
   height: 2px;
   margin-bottom: 18px;
   background: var(--step-accent);
 }

 .gs-process__panel-copy>p {
   max-width: 285px;
   margin: 0;
   color: #34443d;
   font-size: 15px;
   line-height: 1.6;
 }

 .gs-process__panel-tag {
   display: block;
   margin-top: 25px;
   color: var(--step-accent);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .06em;
 }

 /* Shared visual layout */
 .gs-process__visual {
   position: relative;
   display: flex;
   flex-direction: column;
   justify-content: center;
   min-width: 0;
   height: 265px;
   overflow: hidden;
   border: 1px solid color-mix(in srgb, var(--step-accent) 23%, white);
   border-radius: 7px;
   background: var(--visual-bg);
 }

 .gs-process__visual-topline {
   position: absolute;
   top: 16px;
   right: 20px;
   left: 20px;
   display: flex;
   justify-content: space-between;
   color: #43574d;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: .1em;
   text-transform: uppercase;
 }

 .gs-process__visual-caption {
   position: absolute;
   right: 25px;
   bottom: 12px;
   left: 25px;
   display: flex;
   justify-content: space-between;
   gap: 10px;
   padding-top: 10px;
   border-top: 1px solid color-mix(in srgb, var(--step-accent) 40%, white);
   color: #51625a;
   font-size: 9px;
   font-weight: 700;
   letter-spacing: .12em;
   text-transform: uppercase;
 }

 .gs-process__visual-caption span:last-child {
   color: var(--step-accent);
 }

 /* Discovery visual */
 .gs-process__discovery-map {
   position: relative;
   width: 100%;
   height: 175px;
   margin-top: 8px;
 }

 .gs-process__discovery-map::before,
 .gs-process__discovery-map::after {
   position: absolute;
   top: 84px;
   left: 21%;
   width: 58%;
   height: 1px;
   content: "";
   background: #82b7ae;
 }

 .gs-process__discovery-map::after {
   transform: rotate(24deg);
 }

 .gs-process__discovery-center,
 .gs-process__discovery-point {
   position: absolute;
   z-index: 1;
   display: grid;
   place-items: center;
   border-radius: 50%;
   font-weight: 700;
   text-align: center;
 }

 .gs-process__discovery-center {
   top: 33px;
   left: calc(50% - 52px);
   width: 104px;
   height: 104px;
   background: #257b73;
   color: #fff;
   font-size: 15px;
   line-height: 1.2;
 }

 .gs-process__discovery-point {
   width: 78px;
   height: 78px;
   border: 1px solid #96c8c0;
   background: #fff;
   color: #316d66;
   font-size: 11px;
 }

 .gs-process__discovery-point--one {
   top: 3px;
   left: 15%;
 }

 .gs-process__discovery-point--two {
   top: 82px;
   left: 22%;
 }

 .gs-process__discovery-point--three {
   top: 42px;
   right: 15%;
 }

 /* Planning visual */
 .gs-process__sitemap {
   width: 77%;
   margin: 18px auto 0;
   text-align: center;
 }

 .gs-process__sitemap-home {
   width: 135px;
   margin: 0 auto 19px;
   padding: 10px;
   border-radius: 5px;
   background: #6f82ba;
   color: #fff;
   font-size: 13px;
   font-weight: 700;
 }

 .gs-process__sitemap-branches {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 15px;
 }

 .gs-process__sitemap-branches div {
   position: relative;
   padding: 10px;
   border: 1px solid #c5cde9;
   border-radius: 5px;
   background: #fff;
 }

 .gs-process__sitemap-branches div::before {
   position: absolute;
   bottom: 100%;
   left: 50%;
   height: 19px;
   border-left: 1px solid #9aa9d1;
   content: "";
 }

 .gs-process__sitemap-branches strong,
 .gs-process__sitemap-branches span {
   display: block;
   font-size: 10px;
 }

 .gs-process__sitemap-branches strong {
   margin-bottom: 5px;
   color: #5369a0;
 }

 .gs-process__sitemap-branches span {
   color: #6c7685;
   line-height: 1.55;
 }

 /* UI/UX visual: wireframe to designed site */
 .gs-process__visual--design {
   display: grid;
   grid-template-columns: 1fr 1fr;
   align-items: stretch;
   background: #fff;
 }

 .gs-process__design-before,
 .gs-process__design-after {
   min-width: 0;
   height: 226px;
   overflow: hidden;
 }

 .gs-process__design-before {
   background: #fcfcfc;
 }

 .gs-process__design-after {
   background: #052d26;
   color: #fff;
 }

 .gs-process__mock-nav {
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 35px;
   padding: 0 16px;
   border-bottom: 1px solid rgba(130, 143, 140, .25);
 }

 .gs-process__mock-nav b {
   font-size: 8px;
 }

 .gs-process__mock-nav>span {
   font-size: 5px;
 }

 .gs-process__wire-content,
 .gs-process__finished-content {
   display: grid;
   grid-template-columns: 1fr .9fr;
   align-items: center;
   gap: 14px;
   height: 180px;
   padding: 14px 21px;
 }

 .gs-process__wire-line {
   display: block;
   width: 90%;
   height: 7px;
   margin-bottom: 8px;
   background: #d7dad8;
 }

 .gs-process__wire-line--short {
   width: 60%;
 }

 .gs-process__wire-button {
   display: block;
   width: 70px;
   height: 20px;
   margin-top: 15px;
   background: #c7cdca;
 }

 .gs-process__wire-image {
   display: block;
   height: 110px;
   border: 1px solid #c4ccca;
   background:
     linear-gradient(32deg, transparent 49.5%, #c4ccca 50%, transparent 50.5%),
     linear-gradient(-32deg, transparent 49.5%, #c4ccca 50%, transparent 50.5%);
 }

 .gs-process__design-arrow {
   position: absolute;
   z-index: 2;
   top: 42%;
   left: 50%;
   display: grid;
   place-items: center;
   width: 36px;
   height: 36px;
   transform: translate(-50%, -50%);
   border-radius: 50%;
   background: #fff;
   color: #19b96a;
   font-size: 24px;
   box-shadow: 0 4px 12px rgba(0, 0, 0, .12);
 }

 .gs-process__finished-content small {
   display: block;
   margin-bottom: 13px;
   color: #a5d3b9;
   font-size: 6px;
   letter-spacing: .17em;
   text-transform: uppercase;
 }

 .gs-process__finished-content strong {
   display: block;
   font-size: clamp(13px, 1.5vw, 23px);
   font-weight: 500;
   letter-spacing: -.05em;
   line-height: 1.12;
 }

 .gs-process__finished-content em {
   color: #22ce79;
   font-style: normal;
 }

 .gs-process__finished-content div:first-child>span {
   display: inline-block;
   margin-top: 18px;
   padding: 8px 10px;
   background: #1abe6e;
   color: #fff;
   font-size: 6px;
 }

 .gs-process__finished-shape {
   width: 100%;
   height: 136px;
   background: #8a9a91 url('../assets/finished_shape.jpg') no-repeat center center / cover;
   clip-path: polygon(45% 0, 100% 35%, 100% 100%, 0 100%, 0 35%);
   box-shadow: inset 18px 0 rgba(255, 255, 255, 0.15);
 }

 .gs-process__visual--design .gs-process__visual-caption {
   bottom: 0;
   padding-bottom: 10px;
   background: #fff;
 }

 /* Development visual */
 .gs-process__dev-workspace {
   display: grid;
   grid-template-columns: 1fr .8fr;
   width: 78%;
   height: 165px;
   margin: 7px auto 0;
   overflow: hidden;
   border: 5px solid #fff;
   border-radius: 6px;
   box-shadow: 0 12px 30px rgba(23, 62, 81, .12);
 }

 .gs-process__dev-code {
   display: flex;
   flex-direction: column;
   justify-content: center;
   gap: 7px;
   padding-left: 20px;
   background: #113848;
   color: #9ddef0;
   font-family: "Inter", sans-serif;
   font-size: 11px;
 }

 .gs-process__dev-code span:nth-child(3) {
   color: #c6e5a2;
 }

 .gs-process__dev-preview {
   display: flex;
   flex-direction: column;
   justify-content: center;
   padding: 18px;
   background: #fff;
 }

 .gs-process__dev-preview small {
   color: #6b8e98;
   font-size: 8px;
   letter-spacing: .15em;
 }

 .gs-process__dev-preview strong {
   margin-top: 9px;
   color: #164554;
   font-size: 20px;
   letter-spacing: -.06em;
 }

 .gs-process__dev-preview i {
   width: 45px;
   height: 3px;
   margin-top: 13px;
   background: #4d9bb8;
 }

 /* Testing visual */
 .gs-process__checks {
   display: grid;
   gap: 9px;
   width: 72%;
   margin: 6px auto 0;
 }

 .gs-process__checks div {
   display: flex;
   align-items: center;
   gap: 11px;
   padding: 7px 12px;
   border: 1px solid #ead9b8;
   border-radius: 4px;
   background: #fff;
   color: #4e514b;
   font-size: 11px;
 }

 .gs-process__checks div>span {
   display: grid;
   place-items: center;
   width: 19px;
   height: 19px;
   border-radius: 50%;
   background: #b2874c;
   color: #fff;
   font-size: 12px;
 }

 .gs-process__checks b {
   margin-left: auto;
   color: #a98043;
   font-size: 9px;
   text-transform: uppercase;
 }

 /* Deployment visual */
 .gs-process__launch {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 38px;
   margin-top: 10px;
 }

 .gs-process__launch-ring {
   display: grid;
   place-items: center;
   width: 135px;
   height: 135px;
   border: 1px solid #8eb281;
   border-radius: 50%;
   box-shadow: 0 0 0 14px rgba(113, 157, 96, .1);
 }

 .gs-process__launch-ring span {
   color: #5c9551;
   font-size: 69px;
   font-weight: 400;
 }

 .gs-process__launch small,
 .gs-process__growth small {
   color: #688e5b;
   font-size: 9px;
   font-weight: 700;
   letter-spacing: .18em;
 }

 .gs-process__launch strong,
 .gs-process__growth strong {
   display: block;
   margin-top: 9px;
   color: #305c36;
   font-size: 28px;
   letter-spacing: -.06em;
   line-height: 1.1;
 }

 /* Support visual */
 .gs-process__growth {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 38px;
   margin-top: 12px;
 }

 .gs-process__growth-bars {
   display: flex;
   align-items: end;
   gap: 8px;
   width: 195px;
   height: 125px;
   padding: 0 10px;
   border-bottom: 1px solid #ab9ac0;
 }

 .gs-process__growth-bars span {
   width: 19px;
   height: 32%;
   border-radius: 3px 3px 0 0;
   background: #baaccd;
 }

 .gs-process__growth-bars span:nth-child(2) {
   height: 45%;
 }

 .gs-process__growth-bars span:nth-child(3) {
   height: 40%;
 }

 .gs-process__growth-bars span:nth-child(4) {
   height: 64%;
 }

 .gs-process__growth-bars span:nth-child(5) {
   height: 76%;
 }

 .gs-process__growth-bars span:nth-child(6) {
   height: 96%;
   background: #8b78a7;
 }

 .gs-process__growth small {
   color: #8b78a7;
 }

 .gs-process__growth strong {
   color: #514268;
 }

 /* Tablet */
 @media (max-width: 1000px) {
   .gs-process__header {
     grid-template-columns: 1fr 260px;
     gap: 30px;
   }

   .gs-process__trigger {
     grid-template-columns: 45px 190px minmax(0, 1fr) 25px;
     gap: 12px;
   }

   .gs-process__panel-inner {
     grid-template-columns: 245px minmax(0, 1fr);
     gap: 16px;
     padding-right: 27px;
   }

   .gs-process__panel-copy>p {
     font-size: 13px;
   }
 }

 /* Mobile */
 @media (max-width: 700px) {
   .gs-process {
     padding: 65px 16px 75px;
   }

   .gs-process__header {
     display: block;
     margin-bottom: 28px;
   }

   .gs-process__header h2 {
     font-size: clamp(34px, 8vw, 45px);
   }

   .gs-process__desktop-break {
     display: none;
   }

   .gs-process__intro {
     max-width: 540px;
     margin-top: 17px;
     font-size: 14px;
   }

   .gs-process__trigger,
   .gs-process__item.is-open .gs-process__trigger {
     grid-template-columns: 35px minmax(0, 1fr) 25px;
     gap: 10px;
     min-height: 68px;
     padding: 12px 15px;
   }

   .gs-process__item.is-open[data-step="testing"] .gs-process__trigger,
   .gs-process__item.is-open[data-step="deployment"] .gs-process__trigger,
   .gs-process__item.is-open[data-step="support"] .gs-process__trigger {
     padding-bottom: 12px;
     padding-top: 0;
   }

   .gs-process__number {
     font-size: 23px;
   }

   .gs-process__title {
     font-size: 18px;
   }

   .gs-process__summary {
     display: none;
   }

   .gs-process__panel-inner {
     display: block;
     padding: 0 15px 20px;
   }

   .gs-process__panel-copy {
     padding: 0 0 20px 45px;
   }

   .gs-process__small-line {
     margin-bottom: 12px;
   }

   .gs-process__panel-copy>p {
     max-width: 470px;
     font-size: 13px;
   }

   .gs-process__panel-tag {
     margin-top: 12px;
     font-size: 10px;
   }

   .gs-process__visual {
     height: 225px;
   }

   .gs-process__visual--design {
     height: 210px;
   }

   .gs-process__design-before,
   .gs-process__design-after {
     height: 178px;
   }

   .gs-process__wire-content,
   .gs-process__finished-content {
     gap: 7px;
     height: 143px;
     padding: 9px;
   }

   .gs-process__wire-image {
     height: 83px;
   }

   .gs-process__finished-content strong {
     font-size: clamp(12px, 3vw, 19px);
   }

   .gs-process__finished-shape {
     height: 100px;
   }

   .gs-process__visual-caption {
     right: 12px;
     left: 12px;
     font-size: 8px;
   }
 }

 @media (max-width: 420px) {
   .gs-process__mock-nav {
     padding: 0 7px;
   }

   .gs-process__mock-nav>span {
     display: none;
   }

   .gs-process__finished-content div:first-child>span {
     display: none;
   }

   .gs-process__sitemap {
     width: 94%;
   }

   .gs-process__sitemap-branches {
     gap: 5px;
   }

   .gs-process__dev-workspace {
     width: 92%;
   }

   .gs-process__checks {
     width: 94%;
   }

   .gs-process__growth,
   .gs-process__launch {
     gap: 16px;
   }

   .gs-process__growth-bars {
     width: 120px;
     gap: 4px;
   }

   .gs-process__growth-bars span {
     width: 14px;
   }

   .gs-process__launch-ring {
     width: 95px;
     height: 95px;
   }

   .gs-process__launch strong,
   .gs-process__growth strong {
     font-size: 21px;
   }
 }

 /* --- PREMIUM VISUAL REPLACEMENTS --- */

 /* 1. Discovery Premium Dashboard */
 .gs-process__discovery-premium {
   position: relative;
   width: 100%;
   height: 200px;
   background: #f8faf9;
   border-radius: 12px;
   margin-top: 10px;
   overflow: hidden;
   box-shadow: inset 0 2px 10px rgba(0, 0, 0, 0.02);
   display: flex;
   align-items: center;
   justify-content: center;
 }

 .gs-process__persona-card {
   position: absolute;
   left: 20px;
   top: 30px;
   width: 160px;
   background: rgba(255, 255, 255, 0.95);
   backdrop-filter: blur(8px);
   border-radius: 10px;
   padding: 12px;
   box-shadow: 0 10px 25px rgba(23, 184, 107, 0.12);
   border: 1px solid rgba(23, 184, 107, 0.2);
   z-index: 2;
   transform: rotate(-3deg);
 }

 .persona-avatar {
   width: 32px;
   height: 32px;
   border-radius: 50%;
   background: #17b86b;
   margin-bottom: 8px;
 }

 .persona-info strong {
   display: block;
   font-size: 11px;
   color: #111;
 }

 .persona-info span {
   display: block;
   font-size: 9px;
   color: #666;
   margin-bottom: 8px;
 }

 .persona-stats {
   display: flex;
   gap: 4px;
 }

 .persona-stats i {
   height: 4px;
   border-radius: 2px;
   background: #e2e8e5;
   flex: 1;
 }

 .persona-stats i:first-child {
   background: #17b86b;
   width: 60%;
   flex: none;
 }

 .gs-process__strategy-card {
   position: absolute;
   left: 50%;
   top: 50%;
   transform: translate(-50%, -50%);
   width: 170px;
   background: rgba(255, 255, 255, 0.95);
   backdrop-filter: blur(8px);
   border-radius: 8px;
   padding: 12px;
   box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
   border: 1px solid rgba(0, 0, 0, 0.05);
   z-index: 2;
 }

 .gs-process__strategy-card .strategy-header {
   font-size: 10px;
   font-weight: 600;
   color: #111;
   margin-bottom: 12px;
 }

 .gs-process__strategy-card .strategy-item {
   display: flex;
   align-items: center;
   gap: 8px;
   margin-bottom: 8px;
 }

 .gs-process__strategy-card .strategy-item i {
   width: 12px;
   height: 12px;
   border-radius: 3px;
   background: #e2e8e5;
 }

 .gs-process__strategy-card .strategy-item:nth-child(2) i {
   background: #17b86b;
   box-shadow: 0 0 8px rgba(23, 184, 107, 0.4);
 }

 .gs-process__strategy-card .strategy-item span {
   flex: 1;
   height: 4px;
   background: #f0f4f2;
   border-radius: 2px;
 }

 .gs-process__insight-graph {
   position: absolute;
   right: 20px;
   bottom: 20px;
   width: 180px;
   height: 120px;
   background: #fff;
   border-radius: 8px;
   padding: 12px;
   box-shadow: 0 8px 20px rgba(0, 0, 0, 0.06);
   z-index: 1;
 }

 .graph-header {
   font-size: 10px;
   font-weight: 600;
   color: #333;
   margin-bottom: 15px;
 }

 .graph-bars {
   display: flex;
   align-items: flex-end;
   gap: 12px;
   height: 70px;
   border-bottom: 1px solid #eee;
 }

 .graph-bars div {
   flex: 1;
   background: #e8f0ec;
   border-radius: 4px 4px 0 0;
   transition: height 0.5s ease;
 }

 .graph-bars .highlight {
   background: #17b86b;
   box-shadow: 0 -4px 12px rgba(23, 184, 107, 0.3);
 }


 /* 2. Planning Premium Kanban/Roadmap */
 .gs-process__planning-premium {
   width: 100%;
   height: 200px;
   background: linear-gradient(135deg, #f9fbfb 0%, #f0f4f2 100%);
   border-radius: 12px;
   margin-top: 10px;
   padding: 15px;
   overflow: hidden;
 }

 .gs-process__kanban {
   background: #fff;
   border-radius: 8px;
   height: 100%;
   box-shadow: 0 5px 15px rgba(0, 0, 0, 0.04);
   display: flex;
   flex-direction: column;
 }

 .k-header {
   padding: 12px 15px;
   font-size: 11px;
   font-weight: 700;
   color: #111;
   border-bottom: 1px solid #f0f0f0;
   background: #fafcfa;
   border-radius: 8px 8px 0 0;
 }

 .k-board {
   display: flex;
   gap: 10px;
   padding: 12px;
   flex: 1;
 }

 .k-col {
   flex: 1;
   background: #f7f9f8;
   border-radius: 6px;
   padding: 8px;
 }

 .k-col span {
   display: block;
   font-size: 9px;
   font-weight: 600;
   color: #888;
   margin-bottom: 10px;
   text-transform: uppercase;
   letter-spacing: 0.05em;
 }

 .k-card {
   background: #fff;
   padding: 8px 10px;
   border-radius: 4px;
   font-size: 10px;
   color: #333;
   margin-bottom: 6px;
   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.02);
   border-left: 3px solid #e0e6e4;
 }

 .k-card.active {
   border-left-color: #17b86b;
   box-shadow: 0 4px 10px rgba(23, 184, 107, 0.1);
   font-weight: 500;
 }

 .k-card.done {
   border-left-color: #889993;
   text-decoration: line-through;
   color: #888;
 }


 /* 5. Testing Premium CI/CD Dashboard */
 .gs-process__testing-premium {
   width: 100%;
   height: 200px;
   background: #0d1a15;
   border-radius: 12px;
   margin-top: 10px;
   overflow: hidden;
   box-shadow: 0 10px 25px rgba(0, 0, 0, 0.15);
   border: 1px solid rgba(255, 255, 255, 0.05);
 }

 .gs-process__ci-dashboard {
   display: flex;
   height: 100%;
 }

 .ci-sidebar {
   width: 110px;
   background: rgba(255, 255, 255, 0.02);
   border-right: 1px solid rgba(255, 255, 255, 0.05);
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   padding: 15px;
 }

 .ci-ring {
   width: 60px;
   height: 60px;
   border-radius: 50%;
   border: 4px solid #17b86b;
   display: grid;
   place-items: center;
   margin-bottom: 12px;
   box-shadow: 0 0 15px rgba(23, 184, 107, 0.4);
 }

 .ci-ring span {
   color: #fff;
   font-size: 13px;
   font-weight: 700;
 }

 .ci-sidebar small {
   color: #8a9c94;
   font-size: 9px;
   text-align: center;
   line-height: 1.3;
 }

 .ci-main {
   flex: 1;
   padding: 20px;
   display: flex;
   flex-direction: row;
   gap: 30px;
   justify-content: center;
   align-items: flex-start;
 }

 .ci-col {
   flex: 1;
   display: flex;
   flex-direction: column;
 }

 .ci-task {
   font-size: 11px;
   color: #cfd8d3;
   margin-bottom: 10px;
   display: flex;
   align-items: center;
   gap: 8px;
 }

 .ci-task span {
   color: #17b86b;
   font-weight: bold;
 }

 .ci-console {
   margin-top: auto;
   padding-top: 15px;
   border-top: 1px dashed rgba(255, 255, 255, 0.1);
   font-family: "Inter", sans-serif;
   font-size: 10px;
   color: #648274;
   line-height: 1.6;
 }

 .ci-console .cursor {
   color: #17b86b;
   animation: blink 1s step-end infinite;
 }

 @keyframes blink {
   50% {
     opacity: 0;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-work,
 .gs-work * {
   box-sizing: border-box;
 }

 .gs-work {
   --gs-work-dark: #10241f;
   --gs-work-green: #18b46b;
   --gs-work-muted: #62716d;
   --gs-work-border: #dbe4df;

   width: 100%;
   padding: 72px 32px 85px;
   background: #fff;
   color: var(--gs-work-dark);
   font-family: "Inter", sans-serif;
 }

 .gs-work__container {
   max-width: 1240px;
   margin: 0 auto;
 }

 /* =========================
   SECTION HEADING
========================= */

 .gs-work__heading-row {
   display: grid;
   grid-template-columns: minmax(0, 1.55fr) minmax(320px, .75fr);
   align-items: start;
   gap: 75px;
   margin-bottom: 38px;
 }

 .gs-work__eyebrow {
   margin: 0 0 12px;
   color: var(--gs-work-green);
   font-size: 13px;
   font-weight: 700;
   letter-spacing: .035em;
   text-transform: uppercase;
 }

 .gs-work__heading h2 {
   margin: 0;
   font-size: clamp(28px, 3vw, 55px);
   font-weight: 600;
   letter-spacing: -.067em;
   line-height: 1.06;
 }

 .gs-work__intro {
   min-height: 145px;
   padding-left: 38px;
   border-left: 1px solid var(--gs-work-border);
 }

 .gs-work__intro-lead {
   max-width: 370px;
   margin: 0 0 9px;
   color: #263832;
   font-size: 19px;
   line-height: 1.4;
 }

 .gs-work__intro-note {
   max-width: 370px;
   margin: 0 0 14px;
   color: #7c8883;
   font-size: 13px;
   line-height: 1.4;
 }

 .gs-work__all-link {
   display: inline-flex;
   align-items: center;
   gap: 13px;
   min-height: 43px;
   padding: 0 19px;
   border: 1px solid #899a93;
   color: var(--gs-work-dark);
   font-size: 13px;
   font-weight: 600;
   text-decoration: none;
   transition: color .2s ease, border-color .2s ease, background .2s ease;
 }

 .gs-work__all-link:hover {
   border-color: var(--gs-work-dark);
   background: var(--gs-work-dark);
   color: #fff;
 }

 /* =========================
   PROJECT GRID
========================= */

 .gs-work__grid {
   display: grid;
   grid-template-columns: minmax(0, 1.54fr) minmax(0, 1fr);
   align-items: start;
   gap: 27px;
 }

 .gs-work__side {
   display: grid;
   gap: 29px;
   min-width: 0;
 }

 .gs-work__project {
   min-width: 0;
 }

 .gs-work__image-wrap {
   position: relative;
   width: 100%;
   overflow: visible;
   background: #e9eeeb;
 }

 .gs-work__project--featured .gs-work__image-wrap {
   height: clamp(480px, 42vw, 620px);
 }

 .gs-work__project--small .gs-work__image-wrap {
   height: clamp(220px, 16.1vw, 250px);
 }

 .gs-work__image {
   display: block;
   width: 100%;
   height: 100%;
   object-fit: cover;
   object-position: top center;
   background: #e9eeeb;
 }

 .gs-work__side .gs-work__project:first-child .gs-work__image {
   object-position: left top;
 }

 .gs-work__project-number {
   position: absolute;
   z-index: 2;
   top: 0;
   left: 0;
   display: grid;
   place-items: start center;
   width: 31px;
   height: 31px;
   padding-top: 3px;
   background: #fff;
   color: var(--gs-work-green);
   font-size: 11px;
   font-weight: 700;
 }

 /* Featured project phone overlay */
 .gs-work__phone {
   position: absolute;
   z-index: 3;
   right: 5.5%;
   bottom: 0;
   width: 29%;
   height: 56%;
   min-width: 135px;
   overflow: hidden;
   padding: 5px;
   border: 5px solid #1c2220;
   border-bottom: 0;
   border-radius: 24px 24px 0 0;
   background: #1c2220;
   box-shadow: -9px 2px 19px rgba(0, 0, 0, .27);
 }

 .gs-work__phone-notch {
   position: absolute;
   z-index: 2;
   top: 8px;
   left: 50%;
   width: 34%;
   height: 9px;
   transform: translateX(-50%);
   border-radius: 0 0 7px 7px;
   background: #1c2220;
 }

 .gs-work__phone img {
   display: block;
   width: 100%;
   height: 100%;
   border-radius: 15px 15px 0 0;
   object-fit: cover;
   object-position: top center;
   background: #fff;
 }

 /* =========================
   DETAILS UNDER PROJECTS
========================= */

 .gs-work__project-info {
   display: grid;
   grid-template-columns: minmax(0, 1fr) minmax(165px, .56fr);
   gap: 20px;
   margin-top: 15px;
   padding-top: 11px;
   border-top: 1px solid var(--gs-work-border);
 }

 .gs-work__category,
 .gs-work__result>span {
   margin: 0 0 5px;
   color: var(--gs-work-green);
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .035em;
   text-transform: uppercase;
 }

 .gs-work__project-description h3 {
   margin: 0 0 5px;
   font-size: 18px;
   font-weight: 500;
   letter-spacing: -.04em;
   line-height: 1.35;
 }

 .gs-work__services {
   margin: 0;
   color: var(--gs-work-muted);
   font-size: 12px;
   line-height: 1.4;
 }

 .gs-work__case-link {
   display: inline-block;
   margin-top: 12px;
   padding-bottom: 5px;
   border-bottom: 1px solid var(--gs-work-green);
   color: var(--gs-work-dark);
   font-size: 12px;
   font-weight: 500;
   text-decoration: none;
   transition: color .2s ease;
 }

 .gs-work__case-link:hover {
   color: var(--gs-work-green);
 }

 .gs-work__result {
   min-width: 0;
   padding-left: 23px;
   border-left: 1px solid var(--gs-work-border);
 }

 .gs-work__result p {
   margin: 5px 0 0;
   color: #82908a;
   font-size: 12px;
   line-height: 1.45;
 }

 .gs-work__project--small .gs-work__project-info {
   grid-template-columns: minmax(0, 1fr) minmax(145px, .55fr);
   gap: 13px;
   margin-top: 10px;
   padding-top: 8px;
 }

 .gs-work__project--small .gs-work__project-description h3 {
   font-size: 15px;
 }

 .gs-work__project--small .gs-work__services,
 .gs-work__project--small .gs-work__result p {
   font-size: 11px;
 }

 .gs-work__project--small .gs-work__result {
   padding-left: 15px;
 }

 /* =========================
   RESPONSIVE
========================= */

 @media (max-width: 1100px) {
   .gs-work__heading-row {
     gap: 35px;
   }

   .gs-work__heading h2 {
     font-size: clamp(37px, 4.4vw, 55px);
   }

   .gs-work__grid {
     gap: 19px;
   }

 }

 @media (max-width: 800px) {
   .gs-work {
     padding: 65px 22px 75px;
   }

   .gs-work__heading-row {
     grid-template-columns: 1fr;
     gap: 23px;
     margin-bottom: 31px;
   }

   .gs-work__heading h2 {
     font-size: clamp(37px, 6.5vw, 55px);
   }

   .gs-work__heading h2 br {
     display: none;
   }

   .gs-work__intro {
     min-height: 0;
     padding-left: 18px;
   }

   .gs-work__grid {
     grid-template-columns: 1fr;
     gap: 34px;
   }

   .gs-work__side {
     gap: 34px;
   }

   .gs-work__project--featured .gs-work__image-wrap {
     height: clamp(350px, 70vw, 540px);
   }

   .gs-work__project--small .gs-work__image-wrap {
     height: clamp(270px, 48vw, 430px);
   }

 }

 @media (max-width: 520px) {
   .gs-work {
     padding: 55px 16px 65px;
   }

   .gs-work__heading h2 {
     font-size: clamp(33px, 9vw, 43px);
   }

   .gs-work__intro-lead {
     font-size: 16px;
   }

   .gs-work__intro-note {
     font-size: 12px;
   }

   .gs-work__project--featured .gs-work__image-wrap {
     height: 370px;
   }

   .gs-work__project--small .gs-work__image-wrap {
     height: 225px;
   }

   .gs-work__phone {
     right: 4%;
     width: 33%;
     height: 53%;
     min-width: 92px;
     padding: 3px;
     border-width: 3px;
     border-radius: 17px 17px 0 0;
   }

   .gs-work__phone-notch {
     top: 5px;
     height: 6px;
   }

   .gs-work__project-info,
   .gs-work__project--small .gs-work__project-info {
     grid-template-columns: 1fr;
     gap: 12px;
   }

   .gs-work__result,
   .gs-work__project--small .gs-work__result {
     padding: 10px 0 0;
     border-top: 1px solid var(--gs-work-border);
     border-left: 0;
   }

   .gs-work__project-description h3,
   .gs-work__project--small .gs-work__project-description h3 {
     font-size: 17px;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-compare,
 .gs-compare * {
   box-sizing: border-box;
 }

 .gs-compare {
   --dark: #0b2823;
   --green: #16bd7c;
   --line: #dce3e1;
   --muted: #626b75;

   width: 100%;
   padding: 39px 34px 46px;
   background: #fff;
   color: var(--dark);
   font-family: "Inter", sans-serif;
 }

 .gs-compare__container {
   max-width: 1240px;
   margin: 0 auto;
 }

 /* Heading */
 .gs-compare__heading {
   margin-bottom: 38px;
   text-align: center;
 }

 .gs-compare__heading>p {
   margin: 0 0 19px;
   color: var(--green);
   font-size: 15px;
   font-weight: 700;
   letter-spacing: .36em;
   text-transform: uppercase;
 }

 .gs-compare__heading h2 {
   margin: 0;
   color: #071c19;
   font-size: clamp(25px, 3.0vw, 54px);
   font-weight: 600;
   letter-spacing: -.062em;
   line-height: 1.08;
 }

 /* Main comparison */
 .gs-compare__grid {
   position: relative;
   display: grid;
   grid-template-columns: 27% 31% 6% 36%;
   overflow: hidden;
 }

 .gs-compare__head {
   display: flex;
   align-items: center;
   height: 65px;
   padding: 0 24px;
   color: #333943;
   font-size: 21px;
   font-weight: 600;
   letter-spacing: -.055em;
 }

 .gs-compare__head--typical {
   padding-left: 23px;
 }

 .gs-compare__head--growth {
   padding-left: 48px;
   border-radius: 13px 13px 0 0;
   background: #eafff5;
   color: #102b25;
 }

 /*
  Each row is displayed as four cells.
  "display: contents" allows the four cells to align
  with the four heading columns above.
*/
 .gs-compare__row {
   display: contents;
 }

 .gs-compare__feature,
 .gs-compare__typical,
 .gs-compare__arrow,
 .gs-compare__growth {
   display: flex;
   align-items: center;
   min-height: 72px;
   border-top: 1px solid var(--line);
 }

 .gs-compare__feature {
   gap: 34px;
   padding: 12px 17px 12px 27px;
 }

 .gs-compare__feature svg {
   width: 34px;
   height: 34px;
   flex: 0 0 34px;
   fill: none;
   stroke: #193b35;
   stroke-width: 2.35;
   stroke-linecap: round;
   stroke-linejoin: round;
 }

 .gs-compare__feature span {
   font-size: clamp(17px, 1.38vw, 24px);
   font-weight: 600;
   letter-spacing: -.045em;
   white-space: nowrap;
 }

 .gs-compare__typical {
   gap: 37px;
   padding: 12px 10px 12px 23px;
 }

 .gs-compare__empty {
   width: 37px;
   height: 37px;
   flex: 0 0 37px;
   border: 2px dashed #9ca6b0;
   border-radius: 50%;
 }

 .gs-compare__typical p,
 .gs-compare__growth p {
   margin: 0;
   font-size: clamp(14px, 1.12vw, 19px);
   font-weight: 400;
   line-height: 1.36;
 }

 .gs-compare__typical p {
   color: var(--muted);
 }

 .gs-compare__arrow {
   justify-content: center;
   color: var(--green);
   font-size: 36px;
   font-weight: 300;
 }

 .gs-compare__growth {
   position: relative;
   gap: 36px;
   padding: 12px 24px 12px 48px;
   background: #eafff5;
 }

 .gs-compare__growth::before {
   position: absolute;
   top: 0;
   bottom: 0;
   left: 65px;
   width: 1px;
   content: "";
   background: #98ebbe;
 }

 .gs-compare__check {
   position: relative;
   z-index: 1;
   display: grid;
   place-items: center;
   width: 37px;
   height: 37px;
   flex: 0 0 37px;
   border-radius: 50%;
   background: var(--green);
   color: #fff;
   font-size: 25px;
   font-weight: 400;
   line-height: 1;
 }

 .gs-compare__growth p {
   position: relative;
   z-index: 1;
   color: #233732;
 }

 /* Bottom corners of highlighted column */
 .gs-compare__row:last-child .gs-compare__growth {
   border-radius: 0 0 13px 13px;
 }

 /* Tablet */
 @media (max-width: 1100px) {
   .gs-compare__grid {
     grid-template-columns: 27% 30% 5% 38%;
   }

   .gs-compare__feature {
     gap: 16px;
     padding-left: 12px;
   }

   .gs-compare__feature svg {
     width: 33px;
     height: 33px;
     flex-basis: 33px;
   }

   .gs-compare__feature span {
     white-space: normal;
   }

   .gs-compare__typical {
     gap: 17px;
     padding-left: 10px;
   }

   .gs-compare__growth {
     gap: 18px;
     padding-left: 20px;
   }

   .gs-compare__growth::before {
     left: 37px;
   }

   .gs-compare__head--growth {
     padding-left: 20px;
   }
 }

 /* Mobile: each comparison becomes a readable card */
 @media (max-width: 750px) {
   .gs-compare {
     padding: 65px 17px;
   }

   .gs-compare__heading {
     margin-bottom: 30px;
   }

   .gs-compare__heading>p {
     font-size: 11px;
     letter-spacing: .25em;
   }

   .gs-compare__heading h2 {
     font-size: clamp(33px, 7vw, 46px);
   }

   .gs-compare__heading h2 br {
     display: none;
   }

   .gs-compare__grid {
     display: block;
     overflow: visible;
   }

   .gs-compare__head {
     display: none;
   }

   .gs-compare__row {
     display: grid;
     grid-template-columns: 1fr;
     overflow: hidden;
     margin-bottom: 13px;
     border: 1px solid var(--line);
     border-radius: 13px;
   }

   .gs-compare__feature,
   .gs-compare__typical,
   .gs-compare__arrow,
   .gs-compare__growth {
     min-height: 0;
     border-top: 0;
   }

   .gs-compare__feature {
     gap: 12px;
     padding: 17px 18px;
   }

   .gs-compare__feature svg {
     width: 29px;
     height: 29px;
     flex-basis: 29px;
   }

   .gs-compare__feature span {
     font-size: 18px;
   }

   .gs-compare__typical {
     gap: 13px;
     padding: 0 18px 10px;
   }

   .gs-compare__empty {
     width: 25px;
     height: 25px;
     flex-basis: 25px;
   }

   .gs-compare__typical p,
   .gs-compare__growth p {
     font-size: 14px;
   }

   .gs-compare__arrow {
     display: none;
   }

   .gs-compare__growth {
     gap: 13px;
     padding: 14px 18px;
     border-top: 1px solid #c9f0dd;
     background: #eafff5;
   }

   .gs-compare__growth::before {
     display: none;
   }

   .gs-compare__check {
     width: 25px;
     height: 25px;
     flex-basis: 25px;
     font-size: 17px;
   }

   .gs-compare__row:last-child .gs-compare__growth {
     border-radius: 0;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-investment,
 .gs-investment * {
   box-sizing: border-box;
 }

 .gs-investment {
   --gs-dark: #0d2924;
   --gs-text: #53635e;
   --gs-green: #18c878;
   --gs-line: #dbe7e1;

   width: 100%;
   padding: 28px 38px 32px;
   background: #fff;
   color: var(--gs-dark);
   font-family: "Inter", sans-serif;
 }

 .gs-investment__container {
   max-width: 1240px;
   margin: 0 auto;
 }

 /* HEADER */

 .gs-investment__header {
   display: grid;
   grid-template-columns: 1.6fr .82fr;
   align-items: center;
   gap: 60px;
   margin-bottom: 32px;
 }

 .gs-investment__eyebrow {
   margin: 0 0 10px;
   color: var(--gs-green);
   font-size: 13px;
   font-weight: 700;
   letter-spacing: .05em;
   text-transform: uppercase;
 }

 .gs-investment__header h2 {
   margin: 0;
   font-size: clamp(22px, 2.1vw, 40px);
   font-weight: 600;
   letter-spacing: -.064em;
   line-height: 1.08;
 }

 .gs-investment__header-note p {
   max-width: 440px;
   margin: 0 0 9px;
   color: #4d5d58;
   font-size: 17px;
   line-height: 1.45;
 }

 .gs-investment__header-note small {
   display: block;
   color: #7a8882;
   font-size: 13px;
   line-height: 1.5;
 }

 /* PLAN COLUMNS */

 .gs-investment__plans {
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
 }

 .gs-investment__plan {
   min-width: 0;
   padding: 0 33px 4px;
 }

 .gs-investment__plan:first-child {
   padding-left: 0;
   border-right: 1px solid var(--gs-line);
 }

 .gs-investment__plan:nth-child(2) {
   border-right: 1px solid var(--gs-line);
 }

 .gs-investment__plan:last-child {
   padding-right: 0;
 }

 /* VISUALS AND CONNECTING LINES */

 .gs-investment__visual {
   position: relative;
   isolation: isolate;
   height: 350px;
   margin-bottom: 23px;
 }

 .gs-investment__lines {
   position: absolute;
   z-index: 1;
   inset: 0;
   width: 100%;
   height: 100%;
   overflow: visible;
   pointer-events: none;
 }

 .gs-investment__lines path {
   fill: none;
   stroke: #8fc8aa;
   stroke-width: 1.25;
   vector-effect: non-scaling-stroke;
 }

 .gs-investment__lines circle {
   fill: #269d6a;
 }

 .gs-investment__starter-label {
   position: absolute;
   z-index: 4;
   color: #344f45;
   font-size: 11px;
   line-height: 1.2;
   white-space: nowrap;
 }

 .gs-investment__starter-label--pages {
   top: 126px;
   right: calc(100% - 16.3% + 8px);
   text-align: right;
 }

 .gs-investment__starter-label--cms {
   top: 269px;
   right: calc(100% - 16.3% + 8px);
   text-align: right;
 }

 .gs-investment__starter-label--responsive {
   top: 128px;
   left: calc(88.2% + 8px);
 }

 .gs-investment__starter-label--launch {
   top: 267px;
   left: calc(89.8% + 8px);
 }

 /* SHARED BROWSER */

 .gs-investment__browser {
   position: absolute;
   z-index: 3;
   overflow: hidden;
   border: 1px solid #d4dfda;
   border-radius: 7px;
   background: #fff;
   box-shadow: 0 8px 16px rgba(17, 44, 31, .14);
 }

 .gs-investment__browser-bar {
   display: flex;
   align-items: center;
   height: 15px;
   padding: 0 8px;
   background: #e9eef0;
 }

 .gs-investment__dots {
   display: flex;
   gap: 3px;
 }

 .gs-investment__dots i {
   width: 3px;
   height: 3px;
   border-radius: 50%;
   background: #21c978;
 }

 .gs-investment__dots i:nth-child(2) {
   background: #efc575;
 }

 .gs-investment__dots i:nth-child(3) {
   background: #ef9b8a;
 }

 .gs-investment__browser-nav {
   display: flex;
   align-items: center;
   justify-content: space-between;
   height: 30px;
   padding: 0 11px;
 }

 .gs-investment__browser-nav strong {
   font-size: 7px;
   letter-spacing: -.055em;
 }

 .gs-investment__browser-nav>span {
   color: #63736c;
   font-size: 5px;
 }

 .gs-investment__browser-nav b {
   font-size: 9px;
   font-weight: 400;
 }

 .gs-investment__browser-main {
   display: grid;
   grid-template-columns: 1fr .78fr;
   align-items: center;
   gap: 7px;
   height: 145px;
   padding: 9px 12px 12px;
 }

 .gs-investment__browser-copy h4 {
   margin: 0;
   color: #102e27;
   font-size: clamp(13px, 1.15vw, 18px);
   font-weight: 600;
   letter-spacing: -.065em;
   line-height: 1.12;
 }

 .gs-investment__browser-copy p {
   max-width: 132px;
   margin: 8px 0 10px;
   color: #53645e;
   font-size: 5px;
   line-height: 1.45;
 }

 .gs-investment__browser-copy>span {
   display: inline-block;
   padding: 6px 9px;
   border-radius: 20px;
   background: #073a2c;
   color: #fff;
   font-size: 5px;
 }

 .gs-investment__building {
   position: relative;
   height: 120px;
   overflow: hidden;
   background:
     linear-gradient(132deg, #e9efed 0 34%, transparent 34%),
     linear-gradient(90deg, #c2cdca 0 26%, #f6f8f6 26% 68%, #93a8a4 68%);
 }

 .gs-investment__building::before {
   position: absolute;
   top: 12%;
   right: 18%;
   bottom: 0;
   left: 26%;
   border-top: 16px solid #eff5f1;
   border-left: 18px solid #d1dbd6;
   content: "";
   transform: skewY(-23deg);
 }

 .gs-investment__building::after {
   position: absolute;
   right: 0;
   bottom: 0;
   width: 25%;
   height: 70%;
   background: #839a95;
   clip-path: polygon(0 24%, 100% 0, 100% 100%, 0 100%);
   content: "";
 }

 .gs-investment__browser-footer {
   display: flex;
   gap: 7px;
   padding: 0 11px;
 }

 .gs-investment__browser-footer i {
   height: 15px;
   flex: 1;
   background: #e8eeeb;
 }

 .gs-investment__browser-footer--words i {
   padding-top: 4px;
   color: #75847d;
   font-size: 5px;
   font-style: normal;
   text-align: center;
 }

 /* STARTER VISUAL */

 .gs-investment__browser--starter {
   top: 102px;
   left: 20%;
   width: 62%;
   height: 205px;
 }

 .gs-investment__phone {
   position: absolute;
   z-index: 4;
   top: 178px;
   right: 10%;
   width: 17%;
   height: 164px;
   overflow: hidden;
   padding: 12px 5px 5px;
   border: 3px solid #27352e;
   border-radius: 14px;
   background: #fff;
   box-shadow: 0 6px 11px rgba(0, 0, 0, .2);
 }

 .gs-investment__phone-notch {
   position: absolute;
   top: 3px;
   left: 35%;
   width: 30%;
   height: 4px;
   border-radius: 4px;
   background: #27352e;
 }

 .gs-investment__phone strong {
   display: block;
   font-size: 5px;
 }

 .gs-investment__phone p {
   margin: 15px 0 6px;
   font-size: 9px;
   font-weight: 700;
   letter-spacing: -.07em;
   line-height: 1.1;
 }

 .gs-investment__phone small {
   display: block;
   font-size: 3px;
   line-height: 1.4;
 }

 .gs-investment__phone-building {
   height: 58px;
   margin-top: 10px;
   background: linear-gradient(110deg, #dae5e1 50%, #9bafaa 50%);
   clip-path: polygon(36% 0, 100% 20%, 100% 100%, 0 100%, 0 30%);
 }

 /* GROWTH VISUAL */

 .gs-investment__growth-halo {
   position: absolute;
   z-index: 0;
   top: 20px;
   left: 13%;
   width: 74%;
   height: 307px;
   border-radius: 50%;
   background: #e5fbf1;
 }

 .gs-investment__browser--growth {
   top: 111px;
   left: 17%;
   width: 66%;
   height: 193px;
 }

 .gs-investment__building--growth {
   background:
     linear-gradient(130deg, #dceaea 0 34%, transparent 34%),
     linear-gradient(90deg, #aec9c8 0 30%, #e8f2ee 30% 66%, #749c95 66%);
 }

 .gs-investment__feature {
   position: absolute;
   z-index: 4;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   width: 75px;
   height: 80px;
   border: 1px solid #d5e9df;
   border-radius: 10px;
   background: #fff;
   color: #263e35;
   font-size: 10px;
   line-height: 1.15;
   text-align: center;
   box-shadow: 0 4px 14px rgba(27, 75, 45, .04);
 }

 .gs-investment__feature svg {
   width: 26px;
   height: 26px;
   margin-bottom: 6px;
   fill: none;
   stroke: #284c3c;
   stroke-width: 1.8;
   stroke-linecap: round;
   stroke-linejoin: round;
 }

 .gs-investment__feature--tl {
   top: 18px;
   left: 0;
 }

 .gs-investment__feature--tr {
   top: 18px;
   right: 0;
 }

 .gs-investment__feature--bl {
   bottom: 0;
   left: 0;
 }

 .gs-investment__feature--br {
   right: 0;
   bottom: 0;
 }

 /* ENTERPRISE VISUAL */

 .gs-investment__browser--enterprise {
   top: 103px;
   left: 20%;
   width: 60%;
   height: 206px;
 }

 .gs-investment__building--enterprise {
   background:
     linear-gradient(90deg, #dce7e9 0 35%, #eff3f3 35% 65%, #9bb9bf 65%);
 }

 .gs-investment__building--enterprise::before {
   inset: 5% 30% 0 34%;
   border-top: 16px solid #e4eeed;
   border-left: 16px solid #98b8be;
   transform: none;
 }

 .gs-investment__enterprise-point {
   position: absolute;
   z-index: 4;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 6px;
   color: #2e4b41;
   font-size: 10px;
   line-height: 1.15;
   text-align: center;
 }

 .gs-investment__enterprise-point--tl {
   top: 0;
   left: 0;
 }

 .gs-investment__enterprise-point--tr {
   top: 0;
   right: 0;
 }

 .gs-investment__enterprise-point--bl {
   bottom: 0;
   left: 0;
 }

 .gs-investment__enterprise-point--br {
   right: 0;
   bottom: 0;
 }

 .gs-investment__icon-circle {
   display: grid;
   place-items: center;
   width: 55px;
   height: 55px;
   border-radius: 50%;
   background: #e7faf0;
 }

 .gs-investment__icon-circle svg {
   width: 26px;
   height: 26px;
   fill: none;
   stroke: #2c5242;
   stroke-width: 1.8;
   stroke-linecap: round;
   stroke-linejoin: round;
 }

 /* PLAN TEXT */

 .gs-investment__content {
   padding-top: 22px;
 }

 .gs-investment__plan:nth-child(2) .gs-investment__content {
   padding-top: 0;
 }

 .gs-investment__plan-label {
   margin: 0 0 10px;
   color: var(--gs-green);
   font-size: 12px;
   font-weight: 700;
   letter-spacing: .04em;
   text-transform: uppercase;
 }

 .gs-investment__content h3 {
   margin: 0 0 13px;
   font-size: clamp(39px, 3.2vw, 56px);
   font-weight: 500;
   letter-spacing: -.07em;
   line-height: 1;
 }

 .gs-investment__description {
   min-height: 55px;
   margin: 0 0 17px;
   color: var(--gs-text);
   font-size: clamp(14px, 1.05vw, 17px);
   line-height: 1.45;
 }

 .gs-investment__content ul {
   margin: 0;
   padding: 12px 0 0;
   border-top: 1px solid var(--gs-line);
   list-style: none;
 }

 .gs-investment__content li {
   margin-bottom: 10px;
   color: #64746d;
   font-size: clamp(13px, .98vw, 16px);
   line-height: 1.3;
 }

 /* BOTTOM BAR */

 .gs-investment__bottom {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 25px;
   margin-top: 30px;
   padding-top: 23px;
   border-top: 1px solid var(--gs-line);
 }

 .gs-investment__bottom p {
   margin: 0;
   color: #4b5d56;
   font-size: 16px;
 }

 .gs-investment__quote {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 15px;
   min-height: 49px;
   padding: 0 22px;
   border-radius: 10px;
   background: #14cb72;
   color: #092d22;
   font-size: 15px;
   font-weight: 600;
   text-decoration: none;
   white-space: nowrap;
   transition: transform .2s ease, background .2s ease;
 }

 .gs-investment__quote:hover {
   transform: translateY(-2px);
   background: #a5efbd;
 }

 .gs-investment__quote span {
   font-size: 20px;
 }

 /* TABLET */

 @media (max-width: 1100px) {
   .gs-investment__header {
     grid-template-columns: 1.3fr 1fr;
     gap: 25px;
   }

   .gs-investment__plan {
     padding-right: 17px;
     padding-left: 17px;
   }

   .gs-investment__visual {
     height: 320px;
   }

   .gs-investment__starter-label {
     font-size: 8px;
   }

   .gs-investment__feature {
     width: 55px;
     height: 65px;
     font-size: 8px;
   }

   .gs-investment__feature svg {
     width: 20px;
     height: 20px;
   }

   .gs-investment__browser--starter {
     top: 92px;
   }

   .gs-investment__browser--growth {
     top: 103px;
   }

   .gs-investment__browser--enterprise {
     top: 96px;
   }

   .gs-investment__phone {
     top: 158px;
     height: 153px;
   }
 }

 /* MOBILE */

 @media (max-width: 750px) {
   .gs-investment {
     padding: 62px 18px;
   }

   .gs-investment__header {
     grid-template-columns: 1fr;
     gap: 17px;
     margin-bottom: 29px;
   }

   .gs-investment__header h2 {
     font-size: clamp(35px, 8vw, 48px);
   }

   .gs-investment__header h2 br {
     display: none;
   }

   .gs-investment__header-note p {
     font-size: 15px;
   }

   .gs-investment__plans {
     grid-template-columns: 1fr;
     gap: 28px;
   }

   .gs-investment__plan,
   .gs-investment__plan:first-child,
   .gs-investment__plan:last-child {
     padding: 0 0 27px;
     border-right: 0;
     border-bottom: 1px solid var(--gs-line);
   }

   .gs-investment__visual {
     max-width: 460px;
     height: 350px;
     margin: 0 auto 18px;
   }

   .gs-investment__starter-label {
     font-size: 10px;
   }

   .gs-investment__browser--starter {
     top: 102px;
   }

   .gs-investment__browser--growth {
     top: 111px;
   }

   .gs-investment__browser--enterprise {
     top: 103px;
   }

   .gs-investment__phone {
     top: 178px;
     height: 164px;
   }

   .gs-investment__content,
   .gs-investment__plan:nth-child(2) .gs-investment__content {
     padding-top: 0;
   }

   .gs-investment__content h3 {
     font-size: 47px;
   }

   .gs-investment__description {
     min-height: 0;
     font-size: 15px;
   }

   .gs-investment__content li {
     font-size: 14px;
   }

   .gs-investment__bottom {
     align-items: flex-start;
     flex-direction: column;
     margin-top: 0;
     border-top: 0;
   }

   .gs-investment__bottom p {
     font-size: 15px;
   }
 }

 @media (max-width: 390px) {
   .gs-investment__visual {
     height: 300px;
   }

   .gs-investment__starter-label {
     font-size: 7px;
   }

   .gs-investment__starter-label--pages {
     top: 97px;
   }

   .gs-investment__starter-label--cms {
     top: 219px;
   }

   .gs-investment__starter-label--responsive {
     top: 101px;
   }

   .gs-investment__starter-label--launch {
     top: 244px;
   }

   .gs-investment__browser--starter {
     top: 86px;
     height: 180px;
   }

   .gs-investment__browser--growth {
     top: 96px;
     height: 170px;
   }

   .gs-investment__browser--enterprise {
     top: 90px;
     height: 180px;
   }

   .gs-investment__phone {
     top: 146px;
     height: 145px;
   }

   .gs-investment__feature {
     width: 50px;
     height: 59px;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-project-cta,
 .gs-project-cta * {
   box-sizing: border-box;
 }

 .gs-project-cta {
   --cta-green: #17d77f;
   --cta-white: #f7fbf8;
   --cta-muted: #b9cdc5;

   position: relative;
   width: 100%;
   overflow: hidden;
   background: #073b32;
   color: var(--cta-white);
   font-family: "Inter", sans-serif;
 }

 /* Subtle green depth, without changing the dark overall appearance */
 .gs-project-cta::before {
   position: absolute;
   inset: 0;
   content: "";
   pointer-events: none;
   background:
     radial-gradient(circle at 67% 48%, rgba(15, 104, 77, .24), transparent 40%),
     linear-gradient(110deg, #073a31 0%, #06372f 50%, #073b32 100%);
 }

 .gs-project-cta__frame {
   position: relative;
   max-width: 1240px;
   min-height: 700px;
   margin: 0 auto;
   padding: 100px 40px 0;
   border-right: 1px solid rgba(214, 244, 226, .08);
   border-left: 1px solid rgba(214, 244, 226, .08);
 }

 /* Thin top and bottom guide lines */
 .gs-project-cta__frame::before,
 .gs-project-cta__frame::after {
   position: absolute;
   right: 0;
   left: 0;
   height: 1px;
   content: "";
   background: rgba(193, 236, 216, .17);
 }

 .gs-project-cta__frame::before {
   top: 56px;
 }

 .gs-project-cta__frame::after {
   bottom: 111px;
 }

 /* Small cross marks at the four line intersections */
 .gs-project-cta__corner {
   position: absolute;
   z-index: 3;
   width: 36px;
   height: 36px;
   pointer-events: none;
 }

 .gs-project-cta__corner::before,
 .gs-project-cta__corner::after {
   position: absolute;
   content: "";
   background: rgba(175, 229, 203, .38);
 }

 .gs-project-cta__corner::before {
   top: 0;
   left: 17px;
   width: 1px;
   height: 36px;
 }

 .gs-project-cta__corner::after {
   top: 17px;
   left: 0;
   width: 36px;
   height: 1px;
 }

 .gs-project-cta__corner--tl {
   top: 39px;
   left: -18px;
 }

 .gs-project-cta__corner--tr {
   top: 39px;
   right: -18px;
 }

 .gs-project-cta__corner--bl {
   bottom: 94px;
   left: -18px;
 }

 .gs-project-cta__corner--br {
   right: -18px;
   bottom: 94px;
 }

 .gs-project-cta__main {
   display: grid;
   grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
   align-items: center;
   gap: 45px;
 }

 /* LEFT CONTENT */
 .gs-project-cta__content {
   position: relative;
   z-index: 2;
   padding-bottom: 55px;
 }

 .gs-project-cta__eyebrow {
   display: flex;
   align-items: center;
   gap: 15px;
   margin: 0 0 40px;
   color: #c8d9d1;
   font-size: 15px;
   font-weight: 600;
   letter-spacing: .32em;
   text-transform: uppercase;
 }

 .gs-project-cta__eyebrow span {
   display: block;
   width: 16px;
   height: 16px;
   background: var(--cta-green);
 }

 .gs-project-cta__content h2 {
   max-width: 780px;
   margin: 0;
   color: #fff;
   font-size: clamp(40px, 4.5vw, 65px);
   font-weight: 600;
   letter-spacing: -.068em;
   line-height: .98;
 }

 .gs-project-cta__description {
   max-width: 650px;
   margin: 39px 0 0;
   color: #c4d6ce;
   font-size: clamp(15px, 1.25vw, 20px);
   line-height: 1.45;
 }

 .gs-project-cta__promises {
   margin: 29px 0 34px;
   color: #c5d6cf;
   font-size: clamp(13px, 1vw, 16px);
   line-height: 1.5;
 }

 .gs-project-cta__promises span {
   margin: 0 6px;
   color: #83afa0;
 }

 .gs-project-cta__button {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 20px;
   min-width: 260px;
   min-height: 55px;
   padding: 0 28px;
   border-radius: 3px;
   background: var(--cta-green);
   color: #073328;
   font-size: 16px;
   font-weight: 600;
   text-decoration: none;
   transition: background .2s ease, transform .2s ease;
 }

 .gs-project-cta__button:hover {
   transform: translateY(-3px);
   background: #8bebae;
 }

 .gs-project-cta__button span {
   font-size: 22px;
   line-height: 1;
 }

 /* RIGHT DIAGRAM */
 .gs-project-cta__diagram {
   position: relative;
   display: grid;
   grid-template-columns: 110px minmax(235px, 1fr) 210px;
   align-items: center;
   width: 100%;
   min-height: 490px;
   margin-top: 55px;
 }

 /* Large faint circular construction lines */
 .gs-project-cta__orbit {
   position: absolute;
   z-index: 0;
   border: 1px dashed rgba(102, 186, 153, .16);
   border-radius: 50%;
   pointer-events: none;
 }

 .gs-project-cta__orbit--one {
   top: 0;
   left: 4%;
   width: 540px;
   height: 540px;
 }

 .gs-project-cta__orbit--two {
   top: 23px;
   left: -56%;
   width: 500px;
   height: 500px;
   border-style: solid;
   border-color: rgba(102, 186, 153, .1);
 }

 /* Brief document */
 .gs-project-cta__brief,
 .gs-project-cta__plan {
   position: relative;
   z-index: 2;
   display: flex;
   flex-direction: column;
   align-items: center;
   gap: 18px;
 }

 .gs-project-cta__brief svg {
   width: 100px;
   height: 130px;
   fill: none;
   stroke: rgba(198, 233, 217, .58);
   stroke-width: 1.5;
   stroke-linecap: round;
   stroke-linejoin: round;
 }

 .gs-project-cta__brief>span,
 .gs-project-cta__plan>span {
   color: #c2d8ce;
   font-size: 13px;
   font-weight: 600;
   letter-spacing: .22em;
   text-align: center;
   text-transform: uppercase;
   white-space: nowrap;
 }

 /* The goals → scope → timeline line */
 .gs-project-cta__journey {
   position: relative;
   z-index: 2;
   display: flex;
   align-items: center;
   justify-content: space-around;
   height: 170px;
   margin-top: -38px;
 }

 .gs-project-cta__journey-line {
   position: absolute;
   top: 107px;
   right: 0;
   left: 0;
   height: 2px;
   background: linear-gradient(to right,
       rgba(23, 215, 127, .1),
       var(--cta-green) 13%,
       var(--cta-green) 85%,
       rgba(181, 227, 207, .5));
 }

 .gs-project-cta__milestone {
   position: relative;
   z-index: 1;
   display: flex;
   align-items: center;
   flex-direction: column;
   align-self: flex-start;
   margin-top: 38px;
 }

 .gs-project-cta__milestone>span {
   color: #c6d9d0;
   font-size: 12px;
   font-weight: 600;
   letter-spacing: .18em;
   text-transform: uppercase;
 }

 .gs-project-cta__milestone>span::after {
   display: block;
   width: 1px;
   height: 48px;
   margin: 13px auto 0;
   border-left: 1px dashed rgba(132, 212, 170, .54);
   content: "";
 }

 .gs-project-cta__milestone i {
   display: block;
   width: 23px;
   height: 23px;
   margin-top: 0;
   border: 2px solid #31e297;
   border-radius: 50%;
   background: #0c8060;
   box-shadow: 0 0 0 4px #073b32;
 }

 .gs-project-cta__arrow {
   position: absolute;
   top: 89px;
   right: -10px;
   color: #c4dfd0;
   font-size: 32px;
   line-height: 1;
 }

 /* Project-plan browser outline */
 .gs-project-cta__browser {
   width: 210px;
   height: 193px;
   overflow: hidden;
   border: 1.5px solid rgba(203, 236, 220, .7);
   border-radius: 7px;
 }

 .gs-project-cta__browser-top {
   display: flex;
   align-items: center;
   gap: 8px;
   height: 28px;
   padding: 0 13px;
   border-bottom: 1px solid rgba(203, 236, 220, .65);
 }

 .gs-project-cta__browser-top i {
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: #90e8c3;
 }

 .gs-project-cta__browser-image {
   height: 85px;
   margin: 16px 16px 13px;
   border: 1px solid rgba(150, 214, 184, .22);
   background:
     linear-gradient(25deg,
       transparent calc(50% - .5px),
       rgba(150, 214, 184, .23) 50%,
       transparent calc(50% + .5px)),
     linear-gradient(-25deg,
       transparent calc(50% - .5px),
       rgba(150, 214, 184, .23) 50%,
       transparent calc(50% + .5px));
 }

 .gs-project-cta__browser-line {
   display: block;
   height: 1px;
   margin: 0 16px 10px;
   background: rgba(150, 214, 184, .25);
 }

 .gs-project-cta__browser-line--one {
   width: 70%;
 }

 .gs-project-cta__browser-line--two {
   width: 57%;
 }

 .gs-project-cta__browser-line--three {
   width: 36%;
 }

 .gs-project-cta__diagram-note {
   position: absolute;
   right: 0;
   bottom: 0;
   margin: 0;
   color: #c6d8d0;
   font-size: 16px;
   white-space: nowrap;
 }

 /* FOOTER LINE */
 .gs-project-cta__footer {
   position: absolute;
   right: 95px;
   bottom: 63px;
   left: 95px;
   display: flex;
   justify-content: space-between;
   color: #a7c0b5;
   font-size: 13px;
   font-weight: 500;
   letter-spacing: .06em;
 }

 /* RESPONSIVE */
 @media (max-width: 1300px) {
   .gs-project-cta__frame {
     min-height: 810px;
     padding: 125px 55px 0;
   }

   .gs-project-cta__main {
     gap: 15px;
   }

   .gs-project-cta__content h2 {
     font-size: clamp(58px, 6vw, 78px);
   }

   .gs-project-cta__diagram {
     grid-template-columns: 82px minmax(200px, 1fr) 155px;
     transform: scale(.9);
     transform-origin: center;
   }

   .gs-project-cta__brief svg {
     width: 76px;
     height: 99px;
   }

   .gs-project-cta__browser {
     width: 155px;
     height: 155px;
   }

   .gs-project-cta__browser-image {
     height: 54px;
   }

   .gs-project-cta__footer {
     right: 55px;
     left: 55px;
   }
 }

 @media (max-width: 900px) {
   .gs-project-cta__frame {
     min-height: 0;
     padding: 110px 40px 145px;
   }

   .gs-project-cta__main {
     grid-template-columns: 1fr;
   }

   .gs-project-cta__content {
     padding-bottom: 0;
   }

   .gs-project-cta__content h2 {
     font-size: clamp(55px, 8vw, 86px);
   }

   .gs-project-cta__diagram {
     max-width: 680px;
     min-height: 410px;
     margin: 5px auto 0;
     transform: none;
   }

   .gs-project-cta__orbit--one {
     top: -45px;
   }

   .gs-project-cta__diagram-note {
     bottom: -10px;
   }

   .gs-project-cta__footer {
     bottom: 47px;
   }
 }

 @media (max-width: 600px) {
   .gs-project-cta__frame {
     padding: 100px 23px 125px;
   }

   .gs-project-cta__frame::before {
     top: 40px;
   }

   .gs-project-cta__frame::after {
     bottom: 91px;
   }

   .gs-project-cta__corner--tl,
   .gs-project-cta__corner--tr {
     top: 23px;
   }

   .gs-project-cta__corner--bl,
   .gs-project-cta__corner--br {
     bottom: 74px;
   }

   .gs-project-cta__eyebrow {
     gap: 10px;
     margin-bottom: 29px;
     font-size: 10px;
     letter-spacing: .25em;
   }

   .gs-project-cta__eyebrow span {
     width: 11px;
     height: 11px;
   }

   .gs-project-cta__content h2 {
     font-size: clamp(43px, 10.4vw, 64px);
   }

   .gs-project-cta__description {
     margin-top: 25px;
     font-size: 16px;
     line-height: 1.55;
   }

   .gs-project-cta__promises {
     margin: 22px 0 25px;
     font-size: 12px;
   }

   .gs-project-cta__button {
     min-width: 0;
     min-height: 56px;
     padding: 0 23px;
     font-size: 15px;
   }

   .gs-project-cta__diagram {
     grid-template-columns: 57px minmax(0, 1fr) 83px;
     gap: 3px;
     min-height: 270px;
     margin-top: 25px;
   }

   .gs-project-cta__orbit--one {
     top: -10px;
     left: 7%;
     width: 270px;
     height: 270px;
   }

   .gs-project-cta__orbit--two {
     display: none;
   }

   .gs-project-cta__brief,
   .gs-project-cta__plan {
     gap: 9px;
   }

   .gs-project-cta__brief svg {
     width: 47px;
     height: 65px;
   }

   .gs-project-cta__brief>span,
   .gs-project-cta__plan>span {
     font-size: 7px;
     letter-spacing: .1em;
   }

   .gs-project-cta__journey {
     height: 110px;
     margin-top: -25px;
   }

   .gs-project-cta__journey-line {
     top: 75px;
   }

   .gs-project-cta__milestone {
     margin-top: 24px;
   }

   .gs-project-cta__milestone>span {
     font-size: 6px;
     letter-spacing: .08em;
   }

   .gs-project-cta__milestone>span::after {
     height: 35px;
     margin-top: 9px;
   }

   .gs-project-cta__milestone i {
     width: 14px;
     height: 14px;
   }

   .gs-project-cta__arrow {
     top: 63px;
     right: -6px;
     font-size: 22px;
   }

   .gs-project-cta__browser {
     width: 82px;
     height: 92px;
     border-radius: 4px;
   }

   .gs-project-cta__browser-top {
     gap: 3px;
     height: 14px;
     padding: 0 5px;
   }

   .gs-project-cta__browser-top i {
     width: 3px;
     height: 3px;
   }

   .gs-project-cta__browser-image {
     height: 37px;
     margin: 6px 6px 7px;
   }

   .gs-project-cta__browser-line {
     margin: 0 6px 5px;
   }

   .gs-project-cta__diagram-note {
     right: 0;
     bottom: 0;
     font-size: 11px;
   }

   .gs-project-cta__footer {
     right: 23px;
     bottom: 35px;
     left: 23px;
     gap: 10px;
     font-size: 9px;
   }
 }

 @media (prefers-reduced-motion: reduce) {
   .gs-project-cta__button {
     transition: none;
   }
 }

 @import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");

 .gs-why3d,
 .gs-why3d * {
   box-sizing: border-box;
 }

 .gs-why3d {
   --dark: #102822;
   --green: #11bd70;
   --line: #dce8e3;

   overflow: hidden;
   padding: 34px 35px 0;
   background:
     linear-gradient(90deg, rgba(28, 89, 58, .025) 1px, transparent 1px),
     linear-gradient(rgba(28, 89, 58, .025) 1px, transparent 1px),
     #fff;
   background-size: 160px 160px;
   color: var(--dark);
   font-family: "Inter", sans-serif;
 }

 .gs-why3d__wrap {
   max-width: 1240px;
   margin: 0 auto;
   border-right: 1px solid rgba(24, 90, 59, .08);
   border-left: 1px solid rgba(24, 90, 59, .08);
 }

 /* HEADER */

 .gs-why3d__header {
   display: grid;
   grid-template-columns: 1.65fr .7fr;
   gap: 55px;
   align-items: start;
   padding: 0 50px;
 }

 .gs-why3d__eyebrow {
   margin: 0 0 12px;
   color: #0da25c;
   font-size: 12px;
   font-weight: 700;
   letter-spacing: .28em;
   text-transform: uppercase;
 }

 .gs-why3d__heading h2 {
   margin: 0;
   font-size: clamp(36px, 3.65vw, 58px);
   font-weight: 600;
   letter-spacing: -.065em;
   line-height: 1.06;
 }

 .gs-why3d__intro p {
   max-width: 360px;
   margin: 5px 0 16px;
   color: #4c5c56;
   font-size: 13px;
   line-height: 1.5;
 }

 .gs-why3d__about {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 25px;
   padding: 10px 16px;
   border: 1px solid #a9bcb1;
   border-radius: 25px;
   color: var(--dark);
   font-size: 12px;
   font-weight: 600;
   text-decoration: none;
   transition: background .2s ease;
 }

 .gs-why3d__about:hover {
   background: #e8faf0;
 }

 .gs-why3d__about span {
   font-size: 18px;
 }

 /* SCENE STRUCTURE */

 .gs-why3d__scene {
   display: grid;
   grid-template-columns: 225px minmax(0, 1fr) 225px;
   gap: 0;
   min-height: 700px;
   margin-top: 0;
   padding: 0 42px;
 }

 .gs-why3d__notes,
 .gs-why3d__system {
   position: relative;
   min-width: 0;
 }

 .gs-why3d__system {
   height: 700px;
   perspective: 1100px;
   filter: drop-shadow(0 15px 16px rgba(29, 103, 70, .08));
 }

 /* SIDE LABELS */

 .gs-why3d__note {
   position: absolute;
   left: 0;
   width: 100%;
 }

 .gs-why3d__note strong {
   display: block;
   padding-bottom: 8px;
   border-bottom: 1px solid #d2e2d9;
   color: #293c34;
   font-size: 13px;
   font-weight: 700;
   letter-spacing: .03em;
   text-transform: uppercase;
 }

 .gs-why3d__note>p {
   margin: 18px 0 0;
   color: #35483f;
   font-size: 13px;
   line-height: 1.45;
 }

 .gs-why3d__note--experience {
   top: 79px;
 }

 .gs-why3d__note--foundation {
   top: 245px;
 }

 .gs-why3d__note--delivery {
   top: 407px;
 }

 .gs-why3d__note--lifecycle {
   top: 540px;
 }

 .gs-why3d__leader {
   position: absolute;
   height: 1px;
   background: #9bb7a8;
 }

 .gs-why3d__leader::before,
 .gs-why3d__leader::after {
   position: absolute;
   top: -2px;
   width: 5px;
   height: 5px;
   border-radius: 50%;
   background: #275e44;
   content: "";
 }

 .gs-why3d__notes--left .gs-why3d__leader {
   top: 58px;
   right: -42px;
   width: 83px;
 }

 .gs-why3d__notes--left .gs-why3d__leader::before {
   left: 0;
 }

 .gs-why3d__notes--left .gs-why3d__leader::after {
   right: 0;
 }

 .gs-why3d__note--lifecycle .gs-why3d__leader {
   top: 75px;
   background: #49c68d;
 }

 .gs-why3d__right-note {
   position: absolute;
   right: 0;
   width: 100%;
 }

 .gs-why3d__right-note p {
   margin: 0 0 0 25px;
   color: #35483f;
   font-size: 13px;
   line-height: 1.45;
 }

 .gs-why3d__notes--right .gs-why3d__leader {
   top: 10px;
   left: -60px;
   width: 74px;
 }

 .gs-why3d__notes--right .gs-why3d__leader::before {
   left: 0;
 }

 .gs-why3d__notes--right .gs-why3d__leader::after {
   right: 0;
 }

 .gs-why3d__right-note--mobile {
   top: 150px;
 }

 .gs-why3d__right-note--seo {
   top: 319px;
 }

 .gs-why3d__right-note--process {
   top: 458px;
 }

 .gs-why3d__right-note--support {
   top: 615px;
 }

 .gs-why3d__secure-label {
   display: flex;
   align-items: center;
   gap: 9px;
   margin-top: 14px;
   font-size: 12px;
 }

 .gs-why3d__secure-label i {
   width: 12px;
   height: 12px;
   border-radius: 2px;
   background: #0fb76c;
 }

 .gs-why3d__security-card {
   max-width: 190px;
   margin-top: 14px;
   padding: 14px;
   border-radius: 7px;
   background: #e6f8ee;
 }

 .gs-why3d__security-card b {
   color: #32694d;
   font-size: 10px;
   text-transform: uppercase;
 }

 .gs-why3d__security-card p {
   margin: 6px 0 0;
   color: #486357;
   font-size: 10px;
   line-height: 1.45;
 }

 /* SHARED FLOATING PLATFORMS */

 .gs-why3d__layer {
   position: absolute;
   right: 0;
   left: 0;
 }

 /* The platform is a flat slab - we use a wrapper approach:
    the element itself = top face, ::after = right/bottom thick edge */
 .gs-why3d__platform {
   position: absolute;
   left: 5%;
   width: 90%;
   height: 60px;
   border: 1px solid rgba(196, 221, 208, .55);
   border-radius: 6px;
   background: #fff;
   box-shadow:
     0 2px 0 0 #e5ede9,
     0 4px 0 0 #dde9e4,
     0 6px 0 0 #d4e4de,
     0 8px 0 0 #c8dbd4,
     0 20px 30px rgba(13, 72, 42, .10);
   transform: none;
 }

 .gs-why3d__platform::after {
   position: absolute;
   bottom: -9px;
   left: 6px;
   right: -1px;
   height: 9px;
   border-radius: 0 0 6px 0;
   background: linear-gradient(to bottom, #cdd9d4, #b8c9c2);
   content: "";
   clip-path: polygon(0 0, 100% 0, 100% 100%, 2px 100%);
 }

 .gs-why3d__layer--devices {
   z-index: 4;
   top: 0;
   height: 260px;
 }

 .gs-why3d__platform--top {
   top: 186px;
 }

 .gs-why3d__layer--foundation {
   z-index: 3;
   top: 252px;
   height: 210px;
 }

 .gs-why3d__platform--foundation {
   top: 72px;
   background:
     linear-gradient(90deg, rgba(100, 185, 144, .09) 1px, transparent 1px),
     linear-gradient(rgba(100, 185, 144, .09) 1px, transparent 1px),
     #fdfffd;
   background-size: 24px 24px;
 }

 .gs-why3d__layer--delivery {
   z-index: 2;
   top: 400px;
   height: 160px;
 }

 .gs-why3d__platform--delivery {
   top: 62px;
 }

 .gs-why3d__layer--lifecycle {
   z-index: 1;
   top: 528px;
   height: 180px;
 }

 .gs-why3d__platform--bottom {
   top: 72px;
 }

 /* TOP DEVICE GROUP */

 .gs-why3d__laptop {
   position: absolute;
   z-index: 3;
   top: 8px;
   left: 17%;
   width: 57%;
   height: 204px;
   transform: perspective(900px) rotateY(-8deg) rotateX(4deg) skewX(-3deg);
   transform-origin: bottom center;
 }

 .gs-why3d__laptop-screen {
   height: 184px;
   overflow: hidden;
   border: 8px solid #18322c;
   border-radius: 9px 9px 3px 3px;
   background: #fff;
   box-shadow: 0 7px 14px rgba(7, 45, 29, .2);
 }

 .gs-why3d__laptop-base {
   position: absolute;
   bottom: 0;
   left: -8%;
   width: 116%;
   height: 19px;
   border-radius: 2px 2px 50% 50%;
   background: linear-gradient(#d8e4df, #91aaa0);
   transform: perspective(200px) rotateX(60deg);
 }

 .gs-why3d__site-nav {
   display: flex;
   justify-content: space-between;
   align-items: center;
   height: 30px;
   padding: 0 13px;
 }

 .gs-why3d__site-nav strong {
   font-size: 8px;
 }

 .gs-why3d__site-nav>span {
   font-size: 5px;
 }

 .gs-why3d__site-nav b {
   padding: 5px 7px;
   border-radius: 2px;
   background: #06402f;
   color: #fff;
   font-size: 5px;
 }

 .gs-why3d__site-body {
   display: grid;
   grid-template-columns: 1fr 1fr;
   height: 150px;
 }

 .gs-why3d__site-body>div:first-child {
   padding: 17px 13px;
 }

 .gs-why3d__site-body h3 {
   margin: 0;
   font-size: clamp(13px, 1.2vw, 19px);
   letter-spacing: -.06em;
   line-height: 1.1;
 }

 .gs-why3d__site-body p {
   max-width: 145px;
   margin: 7px 0;
   color: #70827b;
   font-size: 5px;
 }

 .gs-why3d__site-body div:first-child>span {
   display: inline-block;
   padding: 5px 8px;
   background: #159766;
   color: #fff;
   font-size: 5px;
 }

 .gs-why3d__architecture {
   position: relative;
   overflow: hidden;
   background: #e8f0ed;
 }

 .gs-why3d__architecture::before {
   position: absolute;
   inset: 10% 16% -15%;
   border-left: 35px solid #d0ddda;
   border-top: 26px solid #f8faf9;
   border-radius: 75px 60px 0 0;
   content: "";
   transform: skewX(-18deg);
 }

 .gs-why3d__architecture::after {
   position: absolute;
   right: 0;
   bottom: 0;
   width: 45%;
   height: 66%;
   background: #a7bbb3;
   clip-path: polygon(0 0, 100% 25%, 100% 100%, 0 100%);
   content: "";
 }

 .gs-why3d__tablet {
   position: absolute;
   z-index: 4;
   top: 65px;
   right: 10%;
   width: 22%;
   height: 154px;
   padding: 6px;
   border: 5px solid #1d312c;
   border-radius: 9px;
   background: #fff;
   box-shadow: 0 7px 10px rgba(0, 0, 0, .23);
   transform: perspective(700px) rotateY(-10deg) rotateZ(2deg);
 }

 .gs-why3d__tablet-screen {
   height: 100%;
   overflow: hidden;
 }

 .gs-why3d__tablet-screen>strong {
   font-size: 6px;
 }

 .gs-why3d__tablet-screen h3 {
   margin: 19px 0 6px;
   font-size: 15px;
   letter-spacing: -.06em;
   line-height: 1.05;
 }

 .gs-why3d__tablet-screen p {
   max-width: 95px;
   font-size: 5px;
 }

 .gs-why3d__tablet-building {
   height: 60px;
   margin-left: 25%;
   background: #c2d3cb;
   clip-path: polygon(65% 0, 100% 29%, 100% 100%, 0 100%, 0 35%);
 }

 .gs-why3d__phone {
   position: absolute;
   z-index: 5;
   top: 86px;
   right: 1%;
   width: 11%;
   height: 141px;
   padding: 8px 4px 4px;
   border: 4px solid #1c312b;
   border-radius: 11px;
   background: #fff;
   box-shadow: 0 6px 10px rgba(0, 0, 0, .2);
 }

 .gs-why3d__phone-screen {
   overflow: hidden;
   height: 100%;
 }

 .gs-why3d__phone-screen>strong {
   font-size: 4px;
 }

 .gs-why3d__phone-screen h3 {
   margin: 20px 0 8px;
   font-size: 9px;
   letter-spacing: -.07em;
 }

 .gs-why3d__phone-building {
   height: 61px;
   background: #c2d3cb;
   clip-path: polygon(55% 0, 100% 30%, 100% 100%, 0 100%, 0 27%);
 }

 /* FOUNDATION BLOCKS */

 .gs-why3d__foundation-grid {
   position: absolute;
   top: 115px;
   left: 10%;
   width: 80%;
   height: 85px;
   opacity: .6;
   background-image:
     linear-gradient(rgba(58, 150, 100, .2) 1px, transparent 1px),
     linear-gradient(90deg, rgba(58, 150, 100, .2) 1px, transparent 1px);
   background-size: 20px 20px;
   transform: rotateX(55deg);
 }

 .gs-why3d__block {
   position: absolute;
   z-index: 2;
   top: 84px;
   display: flex;
   align-items: center;
   flex-direction: column;
   justify-content: center;
   width: 21%;
   height: 87px;
   border: 1px solid #d5e6dd;
   background: #f7fffb;
   box-shadow:
     7px 7px 0 #d9ebe0,
     12px 15px 16px rgba(15, 88, 44, .12);
   text-align: center;
 }

 .gs-why3d__block--semantic {
   left: 19%;
 }

 .gs-why3d__block--ai {
   left: 41%;
   height: 100px;
   background: #e8fcf2;
 }

 .gs-why3d__block--modular {
   left: 64%;
 }

 .gs-why3d__block-icon {
   margin-bottom: 6px;
   color: #25b478;
   font-size: 22px;
 }

 .gs-why3d__block>span:last-child {
   font-size: 11px;
   line-height: 1.2;
 }

 /* DELIVERY WORKFLOW */

 .gs-why3d__workflow {
   position: absolute;
   z-index: 2;
   top: 61px;
   left: 18%;
   display: flex;
   justify-content: space-between;
   width: 64%;
 }

 .gs-why3d__workflow::before {
   position: absolute;
   top: 22px;
   right: 9%;
   left: 9%;
   height: 2px;
   background: #36c487;
   content: "";
 }

 .gs-why3d__workflow-step {
   position: relative;
   z-index: 1;
   display: flex;
   align-items: center;
   flex-direction: column;
   gap: 7px;
 }

 .gs-why3d__workflow-step>span {
   display: grid;
   place-items: center;
   width: 46px;
   height: 46px;
   border: 1px solid #e7f2eb;
   border-radius: 50%;
   background: #fff;
   color: #24443a;
   font-size: 22px;
   box-shadow: 0 5px 10px rgba(31, 94, 53, .09);
 }

 .gs-why3d__workflow-step--last>span {
   background: #0c513d;
   color: #fff;
 }

 .gs-why3d__workflow-step small {
   font-size: 10px;
 }

 /* SERVER AND MONITORING */

 .gs-why3d__server {
   position: absolute;
   z-index: 2;
   top: 54px;
   left: 17%;
   width: 35%;
   height: 95px;
 }

 .gs-why3d__server>div {
   height: 25px;
   margin-bottom: 4px;
   border: 1px solid #1c5240;
   background: linear-gradient(110deg, #183f32, #0c2c24);
   box-shadow: 7px 6px 0 #0e3026;
 }

 .gs-why3d__server>div::after {
   display: block;
   width: 5px;
   height: 5px;
   margin: 9px 14px 0 auto;
   border-radius: 50%;
   background: #2fe39a;
   content: "";
 }

 .gs-why3d__shield {
   position: absolute;
   top: 14px;
   left: 25%;
   display: grid;
   place-items: center;
   width: 63px;
   height: 76px;
   border: 3px solid #79edb4;
   border-radius: 27px 27px 34px 34px;
   background: rgba(32, 130, 84, .75);
   color: #fff;
   font-size: 28px;
   box-shadow: 0 0 20px rgba(21, 211, 120, .5);
 }

 .gs-why3d__monitor {
   position: absolute;
   z-index: 2;
   top: 60px;
   right: 11%;
   width: 40%;
   height: 92px;
   overflow: hidden;
   border: 1px solid #b3d8c3;
   border-radius: 3px;
   background: linear-gradient(110deg, rgba(22, 71, 51, .88), rgba(89, 137, 109, .36));
 }

 .gs-why3d__monitor p {
   margin: 10px 12px;
   color: #d8f3e5;
   font-size: 8px;
   letter-spacing: .08em;
 }

 .gs-why3d__monitor svg {
   width: 100%;
   height: 57px;
 }

 .gs-why3d__monitor path {
   fill: none;
   stroke: #9be9bf;
   stroke-width: 2;
   filter: drop-shadow(0 0 3px #52dca0);
 }

 /* BOTTOM STRIP */

 .gs-why3d__footer {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   margin: 0 50px;
   border-top: 1px solid #dce8e2;
 }

 .gs-why3d__footer>div {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 15px;
   min-height: 76px;
   font-size: 19px;
   letter-spacing: -.03em;
 }

 .gs-why3d__footer>div+div {
   border-left: 1px solid #dce8e2;
 }

 .gs-why3d__footer span {
   font-size: 28px;
 }

 /* RESPONSIVE */

 @media (max-width: 1250px) {
   .gs-why3d__scene {
     grid-template-columns: 180px minmax(0, 1fr) 180px;
     padding: 0 26px;
   }

   .gs-why3d__header {
     padding: 0 30px;
   }

   .gs-why3d__note>p,
   .gs-why3d__right-note p {
     font-size: 11px;
   }

   .gs-why3d__note strong {
     font-size: 11px;
   }

   .gs-why3d__leader {
     display: none;
   }

   .gs-why3d__system {
     transform: scale(.95);
     transform-origin: top center;
   }
 }

 @media (max-width: 900px) {
   .gs-why3d {
     padding: 60px 18px 0;
   }

   .gs-why3d__header {
     grid-template-columns: 1fr;
     gap: 20px;
     padding: 0;
   }

   .gs-why3d__heading h2 br {
     display: none;
   }

   .gs-why3d__intro p {
     max-width: 650px;
     font-size: 14px;
   }

   .gs-why3d__scene {
     display: block;
     min-height: 0;
     padding: 0;
   }

   .gs-why3d__notes {
     display: none;
   }

   .gs-why3d__system {
     width: 100%;
     max-width: 680px;
     height: 620px;
     margin: 20px auto 0;
     transform: none;
   }

   .gs-why3d__footer {
     margin: 0;
   }

   .gs-why3d__footer>div {
     font-size: 13px;
   }
 }

 @media (max-width: 600px) {
   .gs-why3d__heading h2 {
     font-size: clamp(33px, 8.5vw, 45px);
   }

   .gs-why3d__system {
     width: 580px;
     height: 440px;
     margin: 20px 0 0 50%;
     transform: translateX(-50%) scale(.68);
     transform-origin: top center;
   }

   .gs-why3d__footer {
     grid-template-columns: 1fr;
     margin-top: -70px;
   }

   .gs-why3d__footer>div {
     justify-content: flex-start;
     min-height: 56px;
     padding-left: 15px;
   }

   .gs-why3d__footer>div+div {
     border-top: 1px solid #dce8e2;
     border-left: 0;
   }

   .gs-why3d__footer span {
     width: 35px;
     font-size: 24px;
   }
 }

 @media (max-width: 390px) {
   .gs-why3d__system {
     transform: translateX(-50%) scale(.57);
   }

   .gs-why3d__footer {
     margin-top: -125px;
   }
 }

 :root {
   --ink: #102525;
   --muted: #48565a;
   --line: #dce6e4;
   --green: #0ab875;
   --mint: #e8faf2;
 }

 * {
   box-sizing: border-box;
 }

 html {
   scroll-behavior: smooth;
 }

 body {
   margin: 0;
   font-family: "Inter", sans-serif;
   color: var(--ink);
   background: #fff;
 }

 .why-growthspell {
   overflow: hidden;
   background:
     linear-gradient(90deg, rgba(16, 62, 52, .035) 1px, transparent 1px) center / 142px 142px,
     linear-gradient(rgba(16, 62, 52, .035) 1px, transparent 1px) center / 142px 142px,
     #fff;
   scroll-margin-top: 110px;
 }

 .section-frame {
   position: relative;
   width: min(100% - 80px, 1240px);
   margin: 0 auto;
   padding: 36px 48px 25px;
   border-left: 1px solid var(--line);
   border-right: 1px solid var(--line);
 }

 .section-header {
   position: relative;
   z-index: 2;
   display: grid;
   grid-template-columns: minmax(0, 1fr) 365px;
   align-items: start;
   gap: 45px;
   padding: 0 12px 0 10px;
 }

 .eyebrow {
   margin: 0 0 12px;
   color: #149866;
   font-size: 12px;
   font-weight: 800;
   letter-spacing: .29em;
 }

 .section-header h2 {
   max-width: 900px;
   margin: 0;
   font-size: clamp(28px, 2.3vw, 48px);
   font-weight: 700;
   letter-spacing: -.055em;
   line-height: 1.075;
 }

 .header-aside {
   padding-top: 35px;
 }

 .header-aside p {
   margin: 0 0 16px;
   color: var(--muted);
   font-size: 14px;
   line-height: 1.5;
 }

 .about-button {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   min-width: 175px;
   padding: 11px 18px;
   border: 1px solid #bbc9c7;
   border-radius: 18px;
   color: var(--ink);
   font-size: 14px;
   font-weight: 600;
   text-decoration: none;
   background: #fff;
   transition: border-color .2s, background .2s;
 }

 .about-button:hover {
   border-color: var(--green);
   background: var(--mint);
 }

 .about-button span {
   font-size: 21px;
   line-height: 1;
 }

 /* Main 3D composition and annotations */
 .diagram {
   position: relative;
   display: grid;
   grid-template-columns: 270px minmax(0, 1fr) 205px;
   align-items: stretch;
   min-height: 705px;
   margin-top: -2px;
 }

 .diagram::before {
   content: "";
   position: absolute;
   z-index: 0;
   inset: 9% 14% 6%;
   border-radius: 50%;
   background: radial-gradient(ellipse, rgba(21, 209, 139, .075), transparent 68%);
   pointer-events: none;
 }

 .diagram-art {
   position: relative;
   z-index: 1;
   display: flex;
   align-items: center;
   justify-content: center;
   margin: 0 -100px;
   pointer-events: none;
 }

 .diagram-art img {
   display: block;
   width: 100%;
   max-width: 1100px;
   height: 705px;
   object-fit: contain;
   filter: drop-shadow(0 15px 17px rgba(23, 81, 68, .045));
 }

 .notes {
   position: relative;
   z-index: 2;
 }

 .note,
 .right-note {
   position: absolute;
   font-size: 13px;
   line-height: 1.38;
 }

 .notes-left .note {
   left: 78px;
   width: 230px;
 }

 .note h3 {
   width: 100%;
   margin: 0 0 24px;
   padding-bottom: 8px;
   border-bottom: 1px solid #d7e0df;
   font-size: 13px;
   font-weight: 700;
   letter-spacing: .035em;
 }

 .note p {
   margin: 0;
   color: #29383a;
 }

 .note-experience {
   top: 9%;
 }

 .note-foundation {
   top: 35%;
 }

 .note-delivery {
   top: 57%;
 }

 .note-lifecycle {
   top: 76%;
 }

 .connector {
   position: absolute;
   height: 1px;
   background: #9fbbb4;
 }

 .connector::before,
 .connector::after {
   content: "";
   position: absolute;
   top: -3px;
   width: 6px;
   height: 6px;
   border-radius: 50%;
   background: #12362e;
 }

 .note>.connector {
   top: 66px;
   left: 170px;
   width: 150px;
 }

 .note>.connector::before {
   left: 0;
 }

 .note>.connector::after {
   right: 0;
 }

 .note-lifecycle>.connector {
   top: 46px;
   background: var(--green);
 }

 .note-lifecycle>.connector::before,
 .note-lifecycle>.connector::after {
   background: var(--green);
 }

 .green-square {
   display: inline-block;
   width: 14px;
   height: 14px;
   margin-right: 10px;
   border-radius: 2px;
   background: var(--green);
   vertical-align: -2px;
 }

 .secure-label {
   white-space: nowrap;
 }

 .secure-card {
   width: 225px;
   margin-top: 13px;
   padding: 14px 15px;
   border-radius: 7px;
   background: #e5f9f0;
 }

 .secure-card strong,
 .secure-card span {
   display: block;
 }

 .secure-card strong {
   margin-bottom: 7px;
   font-size: 11px;
 }

 .secure-card span {
   color: #39504b;
   font-size: 11px;
   line-height: 1.4;
 }

 .notes-right .right-note {
   left: 12px;
   width: 205px;
   margin: 0;
   color: #29383a;
 }

 .right-experience {
   top: 16%;
 }

 .right-foundation {
   top: 42%;
 }

 .right-delivery {
   top: 63%;
 }

 .right-lifecycle {
   top: 85%;
 }

 .right-note .connector {
   top: 9px;
   right: calc(100% + 12px);
   width: 95px;
 }

 .right-note .connector::before {
   left: 0;
 }

 .right-note .connector::after {
   right: 0;
 }

 .section-footer {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   align-items: center;
   margin: 0 42px;
   padding: 21px 0 9px;
   border-top: 1px solid var(--line);
 }

 .section-footer>div {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 17px;
   min-height: 43px;
   font-size: 19px;
   font-weight: 500;
 }

 .section-footer>div+div {
   border-left: 1px solid var(--line);
 }

 .benefit-icon {
   font-size: 29px;
   line-height: 1;
 }

 .benefit-icon.infinity {
   font-size: 36px;
 }

 .side-caption {
   position: absolute;
   top: 44%;
   left: -9px;
   color: #627072;
   font-size: 10px;
   font-weight: 700;
   letter-spacing: .22em;
   writing-mode: vertical-rl;
   transform: rotate(180deg);
 }

 .bottom-left-note,
 .bottom-right-note {
   position: absolute;
   bottom: 8px;
   color: #a7b1b0;
   font-size: 8px;
   font-weight: 700;
   letter-spacing: .08em;
   line-height: 1.3;
 }

 .bottom-left-note {
   left: -8px;
 }

 .bottom-right-note {
   right: -8px;
   text-align: right;
 }

 /* Tablet and mobile: keep the illustration readable */
 @media (max-width: 1200px) {
   .section-frame {
     width: min(100% - 38px, 1100px);
     padding-inline: 24px;
   }

   .section-header {
     grid-template-columns: minmax(0, 1fr) 290px;
   }

   .diagram {
     grid-template-columns: 190px minmax(0, 1fr) 175px;
     min-height: 600px;
   }

   .diagram-art {
     margin: 0 -70px;
   }

   .diagram-art img {
     height: 600px;
   }

   .notes-left .note {
     left: 25px;
     width: 175px;
   }

   .note>.connector {
     left: 135px;
     width: 90px;
   }

   .right-note .connector {
     width: 55px;
   }

   .section-footer>div {
     font-size: 15px;
   }
 }

 @media (max-width: 850px) {
   .section-frame {
     width: min(100% - 30px, 700px);
     padding: 38px 18px 30px;
   }

   .section-header {
     display: block;
     padding: 0;
   }

   .section-header h2 {
     font-size: clamp(34px, 6vw, 49px);
   }

   .desktop-break {
     display: none;
   }

   .header-aside {
     max-width: 560px;
     padding-top: 22px;
   }

   .diagram {
     display: flex;
     flex-direction: column;
     min-height: 0;
     margin-top: 18px;
   }

   .diagram-art {
     order: 0;
     margin: 0 -25px;
   }

   .diagram-art img {
     height: auto;
     max-height: 600px;
   }

   .notes {
     position: static;
     display: grid;
     grid-template-columns: repeat(2, minmax(0, 1fr));
     gap: 20px;
   }

   .notes-left {
     order: 1;
   }

   .notes-right {
     order: 2;
     margin-top: 20px;
   }

   .notes-left .note,
   .notes-right .right-note {
     position: static;
     width: auto;
   }

   .note h3 {
     margin-bottom: 9px;
   }

   .note>.connector,
   .right-note .connector,
   .side-caption,
   .bottom-left-note,
   .bottom-right-note {
     display: none;
   }

   .right-note {
     padding-top: 10px;
     border-top: 1px solid var(--line);
   }

   .section-footer {
     margin: 36px 0 0;
   }
 }

 @media (max-width: 560px) {
   .section-frame {
     width: calc(100% - 20px);
     padding-inline: 15px;
   }

   .section-header h2 {
     font-size: 35px;
   }

   .notes {
     gap: 19px 14px;
   }

   .note,
   .right-note {
     font-size: 12px;
   }

   .secure-card {
     width: 100%;
   }

   .section-footer {
     grid-template-columns: 1fr;
     padding-top: 10px;
   }

   .section-footer>div {
     justify-content: flex-start;
     padding: 13px 4px;
   }

   .section-footer>div+div {
     border-left: 0;
     border-top: 1px solid var(--line);
   }
 }


 .gs-audience {
   overflow: hidden;
   background: #fff;
   color: var(--gs-ink);
   font-family: "Inter", sans-serif;
 }

 .gs-audience__container {
   width: min(calc(100% - 80px), 1240px);
   margin: auto;
   padding: 44px 0 36px;
 }

 .gs-audience__header {
   position: relative;
   z-index: 4;
   display: grid;
   grid-template-columns: minmax(0, 1fr) 315px;
   gap: 45px;
   align-items: start;
 }

 .gs-audience__eyebrow {
   margin: 0 0 13px;
   color: #098d65;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .34em;
 }

 .gs-audience__header h2 {
   margin: 0;
   font-family: "Inter", sans-serif;
   font-size: clamp(18px, 2.25vw, 39px);
   font-weight: 600;
   line-height: 1.02;
   letter-spacing: -.055em;
 }

 .gs-audience__intro {
   margin: 37px 0 0;
   padding-left: 28px;
   border-left: 1px solid #bac5c8;
   color: #617080;
   font-size: 17px;
   line-height: 1.55;
 }

 .gs-audience__showcase {
   position: relative;
   margin-top: -9px;
 }

 .gs-audience__skyline {
   position: absolute;
   z-index: 0;
   top: -18px;
   left: 12%;
   width: 80%;
   height: 300px;
   opacity: .75;
   pointer-events: none;
 }

 .gs-audience__columns {
   position: relative;
   z-index: 2;
   display: grid;
   grid-template-columns: repeat(3, minmax(0, 1fr));
   gap: clamp(25px, 3vw, 52px);
 }

 .gs-stage {
   min-width: 0;
 }

 .gs-stage__art {
   position: relative;
   height: 382px;
 }

 .gs-stage__copy {
   position: relative;
   z-index: 4;
   max-width: 390px;
   padding-left: 24px;
   margin-top: 16px;
 }

 .gs-stage__copy h3 {
   margin: 0 0 5px;
   font-family: "Inter", sans-serif;
   font-size: clamp(22px, 2.2vw, 32px);
   font-weight: 600;
   line-height: 1.1;
   letter-spacing: -.055em;
 }

 .gs-stage__copy p {
   margin: 0;
   color: var(--gs-muted);
   font-size: 14px;
   line-height: 1.44;
 }

 .gs-scene-plinth {
   position: absolute;
   z-index: 0;
   right: 0;
   bottom: 15px;
   left: 0;
   height: 34px;
   transform: skewX(-13deg);
   border: 1px solid #e1e5e5;
   box-shadow: 0 11px 17px rgba(34, 64, 71, .08);
 }

 .gs-scene-plinth--warm {
   background: linear-gradient(110deg, #f1ede8, #fff9ef);
 }

 .gs-scene-plinth--blue {
   background: linear-gradient(110deg, #e9f0fa, #fff);
 }

 .gs-scene-plinth--slate {
   background: linear-gradient(110deg, #edf2f4, #f8f6f4);
 }

 /* STARTUP LAPTOP */

 .gs-startup-scene,
 .gs-dashboard-scene,
 .gs-enterprise-scene {
   position: relative;
   width: 100%;
   height: 100%;
 }

 .gs-startup-laptop {
   position: absolute;
   z-index: 2;
   right: 11%;
   bottom: 49px;
   left: 2%;
   height: 235px;
 }

 .gs-startup-laptop__screen {
   overflow: hidden;
   height: 222px;
   border: 6px solid #1d2929;
   border-radius: 8px 8px 3px 3px;
   background: #fff;
   box-shadow: 0 10px 17px rgba(33, 52, 52, .18);
 }

 .gs-startup-laptop__base,
 .gs-enterprise-laptop__base,
 .gs-dashboard__base {
   position: absolute;
   right: -5%;
   bottom: 0;
   left: -5%;
   height: 12px;
   border-radius: 2px 2px 45% 45%;
   background: linear-gradient(#e7ecec, #788789 55%, #c8d0d0);
 }

 .gs-demo-nav {
   display: flex;
   align-items: center;
   gap: 9px;
   height: 29px;
   padding: 0 12px;
   border-bottom: 1px solid #eee;
   white-space: nowrap;
 }

 .gs-demo-nav strong {
   margin-right: auto;
   font-family: "Inter", sans-serif;
   font-size: 9px;
   letter-spacing: .14em;
 }

 .gs-demo-nav>span {
   font-size: 5px;
 }

 .gs-demo-nav b {
   padding: 5px 7px;
   border-radius: 9px;
   background: #293331;
   color: #fff;
   font-size: 5px;
   font-weight: 500;
 }

 .gs-startup-web {
   position: relative;
   height: calc(100% - 29px);
   background: linear-gradient(130deg, #fff 0 50%, #eddbc6 50% 100%);
 }

 .gs-startup-web__copy {
   position: relative;
   z-index: 2;
   padding: 24px 0 0 18px;
 }

 .gs-startup-web__copy h4 {
   margin: 0 0 7px;
   font-family: "Inter", sans-serif;
   font-size: 20px;
   font-weight: 400;
   line-height: 1.03;
   letter-spacing: -.055em;
 }

 .gs-startup-web__copy p {
   margin: 0 0 10px;
   font-size: 6px;
   line-height: 1.4;
 }

 .gs-startup-web__copy>span {
   display: inline-block;
   padding: 6px 9px;
   border-radius: 12px;
   background: #303831;
   color: #fff;
   font-size: 6px;
 }

 .gs-startup-web__building {
   position: absolute;
   right: -5px;
   bottom: 0;
   width: 49%;
   height: 100%;
   background: linear-gradient(135deg, #ead6bb, #c8ac88 60%, #9c7653);
   clip-path: polygon(32% 0, 100% 0, 100% 100%, 0 100%, 0 57%);
 }

 .gs-startup-web__arch {
   position: absolute;
   right: 16%;
   bottom: 0;
   width: 52%;
   height: 82%;
   border-radius: 90px 90px 0 0;
   border: 26px solid rgba(247, 227, 199, .94);
   border-bottom: 0;
   box-shadow: inset 18px 2px 15px rgba(111, 77, 45, .23);
 }

 .gs-startup-web__palm {
   position: absolute;
   z-index: 2;
   bottom: 17px;
   left: 5%;
   color: #566c4e;
   font-size: 49px;
 }

 .gs-startup-phone {
   position: absolute;
   z-index: 4;
   right: -5%;
   bottom: 45px;
   overflow: hidden;
   width: 82px;
   height: 179px;
   padding: 14px 7px 6px;
   border: 5px solid #182725;
   border-radius: 15px;
   background: #fff;
   box-shadow: 0 9px 10px rgba(31, 51, 50, .2);
 }

 .gs-phone-notch {
   position: absolute;
   top: -1px;
   left: 29%;
   width: 42%;
   height: 6px;
   border-radius: 0 0 5px 5px;
   background: #182725;
 }

 .gs-startup-phone__nav,
 .gs-enterprise-phone>small {
   display: flex;
   justify-content: space-between;
   font-family: "Inter", sans-serif;
   font-size: 5px;
 }

 .gs-startup-phone h4 {
   position: relative;
   z-index: 2;
   margin: 18px 0 5px;
   font-family: "Inter", sans-serif;
   font-size: 10px;
   font-weight: 400;
   line-height: 1.04;
 }

 .gs-startup-phone p {
   position: relative;
   z-index: 2;
   margin: 0 0 5px;
   font-size: 4px;
 }

 .gs-phone-button {
   position: relative;
   z-index: 2;
   padding: 4px 5px;
   border-radius: 8px;
   background: #183936;
   color: #fff;
   font-size: 4px;
 }

 .gs-startup-phone__building {
   position: absolute;
   right: 0;
   bottom: 0;
   width: 100%;
   height: 45%;
   background: linear-gradient(135deg, #ebd9c0, #a9845a);
   clip-path: polygon(0 45%, 68% 0, 100% 11%, 100% 100%, 0 100%);
 }

 /* SME DASHBOARD */

 .gs-dashboard {
   position: absolute;
   z-index: 2;
   right: 6%;
   bottom: 38px;
   left: 7%;
   height: 259px;
   overflow: hidden;
   border: 7px solid #1c2728;
   border-radius: 8px 8px 3px 3px;
   background: #fff;
   box-shadow: 0 12px 21px rgba(30, 58, 73, .2);
 }

 .gs-dashboard__top {
   height: 11px;
   background: #1c2728;
 }

 .gs-dashboard__dots {
   display: flex;
   gap: 3px;
   padding: 3px 0 0 5px;
 }

 .gs-dashboard__dots i {
   width: 3px;
   height: 3px;
   border-radius: 50%;
   background: #e3bc82;
 }

 .gs-dashboard__dots i:first-child {
   background: #e58983;
 }

 .gs-dashboard__dots i:last-child {
   background: #7cc892;
 }

 .gs-dashboard__inside {
   display: flex;
   height: calc(100% - 11px);
 }

 .gs-dashboard__sidebar {
   display: flex;
   flex: 0 0 22%;
   flex-direction: column;
   gap: 10px;
   padding: 11px 6px;
   background: #1b2930;
   color: #fff;
 }

 .gs-dashboard__sidebar strong {
   margin: 0 0 7px 4px;
   font-size: 12px;
 }

 .gs-dashboard__sidebar span {
   font-size: 5px;
   white-space: nowrap;
 }

 .gs-dashboard__content {
   flex: 1;
   min-width: 0;
   padding: 8px 9px;
 }

 .gs-dashboard__title {
   display: flex;
   justify-content: space-between;
   margin-bottom: 9px;
 }

 .gs-dashboard__title strong {
   font-size: 8px;
 }

 .gs-dashboard__title small {
   font-size: 5px;
 }

 .gs-dashboard__stats {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 4px;
 }

 .gs-dashboard__stats>div {
   display: grid;
   gap: 3px;
 }

 .gs-dashboard__stats small {
   color: #77828a;
   font-size: 4px;
 }

 .gs-dashboard__stats b {
   font-size: 8px;
 }

 .gs-dashboard__stats em {
   color: #079968;
   font-size: 5px;
   font-style: normal;
 }

 .gs-dashboard__chart {
   display: block;
   width: 100%;
   height: 76px;
   margin-top: 7px;
 }

 .gs-dashboard__table {
   display: grid;
   gap: 5px;
   border-top: 1px solid #e8edef;
   padding-top: 5px;
 }

 .gs-dashboard__table b {
   font-size: 6px;
 }

 .gs-dashboard__table span {
   display: flex;
   justify-content: space-between;
   font-size: 4px;
 }

 .gs-dashboard__table i {
   font-style: normal;
 }

 .gs-dashboard__table em {
   color: #178464;
   font-style: normal;
 }

 .gs-dashboard__base {
   z-index: 3;
   right: 0;
   bottom: 25px;
   left: 0;
 }

 .gs-floating-card {
   position: absolute;
   z-index: 5;
   display: flex;
   align-items: flex-start;
   gap: 8px;
   padding: 10px;
   border: 1px solid #ecedf1;
   border-radius: 10px;
   background: rgba(255, 255, 255, .98);
   box-shadow: 0 9px 19px rgba(62, 85, 110, .11);
 }

 .gs-floating-card__symbol {
   display: grid;
   place-items: center;
   flex: 0 0 24px;
   height: 24px;
   border-radius: 5px;
   background: #edf2ff;
   color: #5d7dd8;
   font-size: 16px;
 }

 .gs-floating-card strong,
 .gs-floating-card small {
   display: block;
 }

 .gs-floating-card strong {
   margin-bottom: 4px;
   font-size: 10px;
 }

 .gs-floating-card small {
   color: #586477;
   font-size: 7px;
   line-height: 1.3;
 }

 .gs-floating-card>b {
   margin-left: auto;
   color: #8da3ed;
   font-size: 17px;
   white-space: nowrap;
 }

 .gs-floating-card--crm {
   top: 27px;
   left: 0;
   width: 165px;
 }

 .gs-floating-card--cms {
   bottom: 47px;
   left: -1%;
   width: 118px;
 }

 .gs-floating-card--commerce {
   top: 155px;
   right: -4%;
   width: 123px;
 }

 .gs-floating-card__toggle {
   align-self: end;
   width: 17px;
   height: 9px;
   border-radius: 9px;
   background: var(--gs-green);
 }

 /* ENTERPRISE DEVICES */

 .gs-enterprise-orbit {
   position: absolute;
   z-index: 1;
   top: -18px;
   left: 20%;
   width: 72%;
   height: 245px;
   border: 1px dashed #bdd0f3;
   border-radius: 50%;
 }

 .gs-enterprise-orbit::before {
   content: "";
   position: absolute;
   top: 51px;
   left: 26%;
   width: 48%;
   height: 131px;
   border: 1px solid #c9d7f5;
   border-radius: 50%;
 }

 .gs-enterprise-orbit__icon {
   position: absolute;
   display: grid;
   place-items: center;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background: #ebefff;
   color: #4269a9;
   font-size: 22px;
 }

 .orbit-one {
   top: -17px;
   left: 43%;
 }

 .orbit-two {
   top: 38px;
   left: -13px;
 }

 .orbit-three {
   top: 77px;
   left: 44%;
 }

 .orbit-four {
   top: 38px;
   right: -13px;
 }

 .gs-enterprise-laptop {
   position: absolute;
   z-index: 2;
   right: 6%;
   bottom: 48px;
   left: 5%;
   height: 235px;
 }

 .gs-enterprise-laptop__screen {
   height: 222px;
   overflow: hidden;
   border: 6px solid #1e292a;
   border-radius: 8px 8px 3px 3px;
   background: #1e2c35;
   box-shadow: 0 10px 17px rgba(27, 44, 57, .19);
 }

 .gs-enterprise-nav {
   display: flex;
   align-items: center;
   gap: 13px;
   height: 31px;
   padding: 0 11px;
   color: white;
   white-space: nowrap;
 }

 .gs-enterprise-nav strong {
   margin-right: auto;
   font-size: 14px;
 }

 .gs-enterprise-nav span {
   font-size: 5px;
 }

 .gs-enterprise-nav b {
   padding: 5px 10px;
   border: 1px solid #a7b5c4;
   border-radius: 20px;
   font-size: 5px;
   font-weight: 400;
 }

 .gs-enterprise-web {
   position: relative;
   height: calc(100% - 31px);
   background: linear-gradient(120deg, #152631 15%, #43526b 64%, #b8a68d);
 }

 .gs-enterprise-web__copy {
   position: relative;
   z-index: 2;
   padding: 26px 0 0 17px;
   color: #fff;
 }

 .gs-enterprise-web__copy h4 {
   margin: 0 0 8px;
   font-family: "Inter", sans-serif;
   font-size: 22px;
   font-weight: 400;
   line-height: 1.04;
 }

 .gs-enterprise-web__copy p {
   margin: 0 0 10px;
   font-size: 6px;
   line-height: 1.4;
 }

 .gs-enterprise-web__copy>span {
   display: inline-block;
   padding: 6px 9px;
   border: 1px solid #fff;
   border-radius: 12px;
   font-size: 5px;
 }

 .gs-enterprise-web__building {
   position: absolute;
   right: 0;
   bottom: 0;
   width: 56%;
   height: 94%;
   background:
     repeating-linear-gradient(90deg,
       transparent 0 9px,
       rgba(230, 239, 244, .28) 9px 10px),
     linear-gradient(145deg, #99b0c4, #354a58 55%, #b8905f);
   clip-path: polygon(26% 16%, 91% 0, 100% 100%, 0 100%);
 }

 .gs-enterprise-laptop__base {
   bottom: 0;
 }

 .gs-enterprise-tablet {
   position: absolute;
   z-index: 4;
   right: 0;
   bottom: 33px;
   width: 113px;
   height: 160px;
   overflow: hidden;
   padding: 10px 7px;
   border: 5px solid #1d292b;
   border-radius: 8px;
   background: #fff;
   box-shadow: 0 7px 12px rgba(27, 47, 58, .22);
 }

 .gs-enterprise-tablet__top {
   display: flex;
   justify-content: space-between;
   font-size: 7px;
 }

 .gs-enterprise-tablet h4 {
   margin: 18px 0 3px;
   font-family: "Inter", sans-serif;
   font-size: 11px;
   font-weight: 400;
   line-height: 1.12;
 }

 .gs-enterprise-tablet__map {
   height: 49px;
   color: #b9cae4;
   font-size: 51px;
   line-height: 1;
   text-align: center;
 }

 .gs-enterprise-tablet small {
   color: #398a76;
   font-size: 5px;
   line-height: 1.1;
 }

 .gs-enterprise-phone {
   position: absolute;
   z-index: 5;
   right: -11%;
   bottom: 32px;
   width: 60px;
   height: 127px;
   overflow: hidden;
   padding: 11px 5px;
   border: 4px solid #1e2a2a;
   border-radius: 12px;
   background: #fff;
   box-shadow: 0 7px 12px rgba(27, 47, 58, .22);
 }

 .gs-enterprise-phone>small {
   font-size: 5px;
 }

 .gs-enterprise-phone h4 {
   margin: 17px 0 9px;
   font-family: "Inter", sans-serif;
   font-size: 9px;
   font-weight: 400;
   line-height: 1.08;
 }

 .gs-enterprise-phone>span:last-child {
   display: block;
   color: #8196c7;
   font-size: 25px;
   text-align: center;
 }

 /* CURVED LINE */

 .gs-audience__path {
   position: absolute;
   z-index: 6;
   top: 344px;
   left: 0;
   width: 100%;
   height: 70px;
   overflow: visible;
   pointer-events: none;
 }

 /* Tablet */

 @media (max-width: 1100px) {
   .gs-audience__container {
     width: min(calc(100% - 48px), 1000px);
   }

   .gs-audience__header {
     grid-template-columns: minmax(0, 1fr) 240px;
   }

   .gs-audience__header h2 {
     font-size: clamp(35px, 4vw, 50px);
   }

   .gs-audience__intro {
     font-size: 14px;
   }

   .gs-audience__columns {
     gap: 13px;
   }

   .gs-stage__art {
     height: 340px;
   }

   .gs-startup-scene,
   .gs-dashboard-scene,
   .gs-enterprise-scene {
     transform: scale(.86);
     transform-origin: bottom left;
     width: 116%;
   }

   .gs-audience__path {
     top: 306px;
   }

   .gs-stage__copy {
     padding-left: 10px;
   }

   .gs-stage__copy p {
     font-size: 12px;
   }
 }

 /* Mobile: the visual scenes remain, but stages stack */

 @media (max-width: 760px) {
   .gs-audience__container {
     width: min(calc(100% - 36px), 480px);
     padding: 55px 0;
   }

   .gs-audience__header {
     display: block;
   }

   .gs-audience__header h2 {
     font-size: clamp(35px, 9vw, 51px);
   }

   .gs-audience__header h2 br {
     display: none;
   }

   .gs-audience__intro {
     margin-top: 22px;
     padding-left: 17px;
     font-size: 16px;
   }

   .gs-audience__intro br {
     display: none;
   }

   .gs-audience__showcase {
     margin-top: 40px;
   }

   .gs-audience__skyline,
   .gs-audience__path {
     display: none;
   }

   .gs-audience__columns {
     display: block;
   }

   .gs-stage {
     padding-bottom: 32px;
     margin-bottom: 38px;
     border-bottom: 1px solid #dde9e7;
   }

   .gs-stage:last-child {
     margin-bottom: 0;
   }

   .gs-stage__art {
     width: min(100%, 420px);
     height: 320px;
   }

   .gs-startup-scene,
   .gs-dashboard-scene,
   .gs-enterprise-scene {
     width: 100%;
     transform: scale(.85);
     transform-origin: bottom left;
   }

   .gs-stage__copy {
     max-width: 390px;
     padding-left: 0;
     margin-top: 7px;
   }

   .gs-stage__copy h3 {
     font-size: 28px;
   }

   .gs-stage__copy p {
     font-size: 15px;
   }
 }

 @media (max-width: 390px) {
   .gs-stage__art {
     height: 275px;
   }

   .gs-startup-scene,
   .gs-dashboard-scene,
   .gs-enterprise-scene {
     transform: scale(.73);
     width: 130%;
     transform-origin: bottom left;
   }
 }


 .gs-built-on {
   width: 100%;
   overflow: hidden;
   background: #fff;
   color: var(--gs-ink);
   font-family: "Inter", sans-serif;
 }

 .gs-built-on__container {
   width: min(calc(100% - 90px), 1240px);
   margin: 0 auto;
   padding: 38px 0 31px;
 }

 /* Heading and right-hand description */

 .gs-built-on__header {
   display: grid;
   grid-template-columns: minmax(0, 1fr) 350px;
   gap: 60px;
   align-items: center;
   margin-bottom: 18px;
 }

 .gs-built-on__title>p {
   margin: 0 0 16px;
   color: #10a875;
   font-size: 13px;
   font-weight: 800;
   letter-spacing: .22em;
 }

 .gs-built-on__title h2 {
   margin: 0;
   font-size: clamp(22px, 3vw, 47px);
   font-weight: 700;
   line-height: 1.02;
   letter-spacing: -.065em;
 }

 .gs-built-on__intro {
   margin: 16px 0 0;
   padding: 9px 0 9px 34px;
   border-left: 1px solid #7ebdaf;
   color: #64737b;
   font-size: 19px;
   line-height: 1.55;
 }

 /* SVG diagram */

 .gs-built-on__scroll {
   width: 100%;
 }

 .gs-built-on__diagram {
   display: block;
   width: 100%;
   height: auto;
   overflow: visible;
 }

 .gs-built-on__diagram text {
   font-family: "Inter", sans-serif;
   fill: var(--gs-ink);
 }

 .gs-svg-category>text:first-child {
   font-size: 14px;
   font-weight: 800;
   letter-spacing: .16em;
 }

 .gs-svg-category .gs-svg-description {
   fill: #64747a;
   font-size: 12px;
   font-weight: 400;
   letter-spacing: 0;
 }

 .gs-svg-tech rect {
   fill: #fff;
   stroke: #a9d5c9;
   stroke-width: 1.2;
 }

 .gs-svg-tech text {
   font-size: 13px;
   font-weight: 500;
 }

 .gs-svg-small-label {
   font-size: 10px;
   font-weight: 800;
   letter-spacing: .16em;
 }

 .gs-svg-small-label text {
   fill: #516468;
 }

 .gs-svg-website-label {
   font-size: 15px;
   font-weight: 800;
   letter-spacing: .16em;
 }

 .gs-svg-brand {
   font-size: 14px;
   font-weight: 700;
   letter-spacing: -.05em;
 }

 .gs-svg-nav {
   font-size: 7px;
   font-weight: 500;
 }

 .gs-svg-nav-button,
 .gs-svg-preview-button {
   fill: #fff !important;
   font-size: 7px;
 }

 .gs-svg-preview-title {
   font-size: 27px;
   font-weight: 600;
   letter-spacing: -.055em;
 }

 .gs-svg-preview-small {
   fill: #56686c !important;
   font-size: 10px;
 }

 .gs-svg-preview-body {
   fill: #637279 !important;
   font-size: 9px;
 }

 .gs-svg-image-text {
   fill: #fff !important;
   font-size: 14px;
 }

 .gs-svg-feature {
   font-size: 12px;
   font-weight: 500;
 }

 .gs-svg-mini-brand {
   font-size: 8px;
   font-weight: 700;
 }

 .gs-svg-tablet-title {
   font-size: 15px;
   font-weight: 600;
   letter-spacing: -.045em;
 }

 .gs-svg-phone-brand {
   font-size: 5px;
   font-weight: 700;
 }

 .gs-svg-phone-title {
   font-size: 12px;
   font-weight: 600;
   letter-spacing: -.05em;
 }

 .gs-svg-under-caption {
   fill: #58696d !important;
   font-size: 10px;
   font-weight: 800;
   letter-spacing: .17em;
 }

 /* Content → delivery row */

 .gs-built-on__process {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 25px;
   margin: -2px 0 45px;
 }

 .gs-built-on__process span {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   font-size: 11px;
   font-weight: 800;
   letter-spacing: .1em;
   white-space: nowrap;
 }

 .gs-built-on__process span i {
   width: 17px;
   height: 17px;
   border: 2px solid #a5c9bf;
   border-radius: 50%;
 }

 .gs-built-on__process b {
   color: #9bbcb2;
   font-size: 24px;
   font-weight: 400;
   line-height: 1;
 }

 .gs-built-on__process-current i {
   border-color: var(--gs-green) !important;
   background: var(--gs-green);
   box-shadow: inset 0 0 0 3px #fff;
 }

 /* Bottom note */

 .gs-built-on__footer {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 24px;
 }

 .gs-built-on__footer span {
   width: 70px;
   height: 1px;
   background: #accdc3;
 }

 .gs-built-on__footer p {
   margin: 0;
   color: var(--gs-muted);
   font-size: 14px;
   line-height: 1.5;
   text-align: center;
 }

 /* Smaller desktop */

 @media (max-width: 1200px) {
   .gs-built-on__container {
     width: calc(100% - 48px);
   }

   .gs-built-on__header {
     grid-template-columns: minmax(0, 1fr) 280px;
     gap: 30px;
   }

   .gs-built-on__title h2 {
     font-size: clamp(40px, 4.2vw, 55px);
   }

   .gs-built-on__intro {
     font-size: 15px;
   }
 }

 /*
  The diagram has many small labels. On phones it retains a readable
  minimum width and scrolls horizontally instead of crushing the text.
*/

 @media (max-width: 800px) {
   .gs-built-on__container {
     width: calc(100% - 36px);
     padding: 48px 0;
   }

   .gs-built-on__header {
     display: block;
     margin-bottom: 30px;
   }

   .gs-built-on__title h2 {
     font-size: clamp(36px, 8vw, 51px);
   }

   .gs-built-on__title h2 br,
   .gs-built-on__intro br {
     display: none;
   }

   .gs-built-on__intro {
     max-width: 500px;
     margin-top: 24px;
     padding-left: 18px;
     font-size: 16px;
   }

   .gs-built-on__scroll {
     overflow-x: auto;
     overflow-y: hidden;
     padding-bottom: 12px;
     -webkit-overflow-scrolling: touch;
   }

   .gs-built-on__diagram {
     width: 1050px;
     max-width: none;
   }

   .gs-built-on__process {
     flex-wrap: wrap;
     gap: 10px;
     margin: 25px 0 29px;
   }

   .gs-built-on__process span {
     font-size: 9px;
   }

   .gs-built-on__process b {
     font-size: 16px;
   }
 }

 @media (max-width: 480px) {
   .gs-built-on__title h2 {
     font-size: 37px;
   }

   .gs-built-on__diagram {
     width: 950px;
   }

   .gs-built-on__process {
     gap: 7px;
   }

   .gs-built-on__process span {
     gap: 5px;
     font-size: 8px;
   }

   .gs-built-on__process span i {
     width: 12px;
     height: 12px;
   }

   .gs-built-on__footer span {
     display: none;
   }

   .gs-built-on__footer p {
     font-size: 12px;
   }
 }

 .growthspell-testimonial {
   --gt-ink: #102729;
   --gt-gray: #626d74;
   --gt-green: #0bc47e;

   width: 100%;
   overflow: hidden;
   background: #fff;
   color: var(--gt-ink);
   font-family: "Inter", sans-serif;
 }

 .growthspell-testimonial *,
 .growthspell-testimonial *::before,
 .growthspell-testimonial *::after {
   box-sizing: border-box;
 }

 .gt-container {
   width: min(calc(100% - 110px), 1240px);
   margin: 0 auto;
   padding: 47px 0 28px;
 }

 /* Section heading */

 .gt-eyebrow {
   margin: 0 0 17px;
   color: var(--gt-green);
   font-size: 15px;
   font-weight: 800;
   letter-spacing: .18em;
 }

 .gt-header h2 {
   margin: 0;
   font-family: "Inter", sans-serif;
   font-size: clamp(39px, 3.15vw, 56px);
   font-weight: 700;
   line-height: 1.12;
   letter-spacing: -.035em;
 }

 /* Quote on left; diagram on right */

 .gt-content {
   display: grid;
   grid-template-columns: minmax(0, 44%) minmax(0, 56%);
   gap: 0;
   align-items: start;
   min-height: 568px;
   margin-top: 30px;
 }

 .gt-quote-column {
   position: relative;
   z-index: 1;
   min-width: 0;
 }

 .gt-placeholder {
   display: inline-block;
   max-width: 100%;
   margin: 0 0 29px;
   padding: 11px 14px;
   border: 1px solid #cad2d6;
   border-radius: 10px;
   color: #626b71;
   font-size: clamp(9px, .45vw, 13px);
   font-weight: 750;
   line-height: 1.35;
   letter-spacing: .045em;
   white-space: nowrap;
 }

 .gt-quote {
   max-width: 710px;
   margin: 0;
   font-family: "Inter", sans-serif;
   font-size: clamp(35px, 3.1vw, 53px);
   font-weight: 400;
   line-height: 1.02;
   letter-spacing: -.052em;
 }

 .gt-author {
   display: flex;
   align-items: flex-start;
   gap: 26px;
   margin-top: 33px;
 }

 .gt-author-line {
   width: 52px;
   height: 2px;
   flex: 0 0 52px;
   margin-top: 13px;
   background: var(--gt-green);
 }

 .gt-author strong,
 .gt-author div>span,
 .gt-author small {
   display: block;
 }

 .gt-author strong {
   margin-bottom: 3px;
   font-size: 22px;
   font-weight: 750;
   line-height: 1.25;
 }

 .gt-author div>span {
   color: var(--gt-gray);
   font-size: 18px;
   line-height: 1.35;
 }

 .gt-author small {
   color: var(--gt-gray);
   font-size: 15px;
   line-height: 1.4;
 }

 .gt-diagram {
   position: relative;
   z-index: 2;
   min-width: 0;
   margin: -6px -5px 0 3px;
 }

 .gt-diagram svg {
   display: block;
   width: 100%;
   height: auto;
   overflow: visible;
 }

 .gt-diagram svg text {
   font-family: "Inter", sans-serif;
   fill: var(--gt-ink);
 }

 .gt-svg-heading {
   font-size: 19px;
   font-weight: 800;
   letter-spacing: .12em;
 }

 .gt-svg-box {
   fill: #fff;
   stroke: #d7e1e3;
   stroke-width: 1.5;
 }

 .gt-svg-connections,
 .gt-svg-timeline,
 .gt-svg-timeline-arrow {
   fill: none;
   stroke: #0acb82;
   stroke-width: 1.8;
   stroke-linecap: round;
   stroke-linejoin: round;
 }

 .gt-svg-person {
   fill: #404c53 !important;
   font-size: 18px;
   font-weight: 400;
 }

 .gt-svg-node-halo {
   fill: #e0f9ed;
 }

 .gt-svg-node-core {
   fill: #0aba7a;
 }

 .gt-svg-center {
   fill: #fff !important;
   font-size: 22px;
   font-weight: 800;
   letter-spacing: .16em;
 }

 .gt-svg-milestone-outer {
   fill: #fff;
   stroke: #17c986;
   stroke-width: 2;
 }

 .gt-svg-milestone-inner {
   fill: #0bb879;
 }

 .gt-svg-step {
   font-size: 14px;
   font-weight: 800;
   letter-spacing: .13em;
 }

 /* Bottom rule and CTA */

 .gt-footer {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 30px;
   min-height: 80px;
   padding-top: 20px;
   border-top: 1px solid #aab5b8;
 }

 .gt-footer p {
   margin: 0;
   color: #69737a;
   font-size: 17px;
   line-height: 1.5;
 }

 .gt-work-link {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   gap: 16px;
   min-width: 207px;
   padding: 13px 19px;
   border: 1.5px solid #1a393b;
   border-radius: 14px;
   background: #fff;
   color: var(--gt-ink);
   font-size: 16px;
   font-weight: 700;
   text-decoration: none;
   white-space: nowrap;
   transition: background .2s, border-color .2s;
 }

 .gt-work-link span {
   font-size: 22px;
   line-height: 1;
 }

 .gt-work-link:hover {
   border-color: var(--gt-green);
   background: #effbf5;
 }

 /* Tablet */

 @media (max-width: 1200px) {
   .gt-container {
     width: min(calc(100% - 65px), 1060px);
   }

   .gt-content {
     grid-template-columns: 46% 54%;
     min-height: 480px;
   }

   .gt-quote {
     font-size: clamp(30px, 3.4vw, 45px);
   }

   .gt-placeholder {
     white-space: normal;
   }

   .gt-author {
     margin-top: 24px;
   }
 }

 @media (max-width: 850px) {
   .gt-container {
     width: min(calc(100% - 46px), 690px);
     padding: 55px 0 30px;
   }

   .gt-content {
     display: block;
     min-height: 0;
     margin-top: 25px;
   }

   .gt-placeholder {
     margin-bottom: 26px;
     font-size: 11px;
   }

   .gt-quote {
     max-width: 690px;
     font-size: clamp(35px, 6vw, 50px);
   }

   .gt-diagram {
     width: 100%;
     margin: 40px 0 20px;
   }

   .gt-footer {
     margin-top: 12px;
   }
 }

 /* Mobile */

 @media (max-width: 580px) {
   .gt-container {
     width: calc(100% - 36px);
     padding: 46px 0 26px;
   }

   .gt-eyebrow {
     margin-bottom: 13px;
     font-size: 12px;
   }

   .gt-header h2 {
     font-size: clamp(35px, 9vw, 48px);
   }

   .gt-placeholder {
     padding: 9px 10px;
     font-size: 9px;
   }

   .gt-quote {
     font-size: clamp(29px, 8.4vw, 42px);
     line-height: 1.08;
   }

   .gt-author {
     gap: 15px;
     margin-top: 26px;
   }

   .gt-author-line {
     width: 31px;
     flex-basis: 31px;
   }

   .gt-author strong {
     font-size: 18px;
   }

   .gt-author div>span {
     font-size: 15px;
   }

   .gt-author small {
     font-size: 13px;
   }

   /*
    Keep the diagram's text readable by letting the diagram scroll.
    SVG connections stay aligned because everything shares its viewBox.
  */
   .gt-diagram {
     overflow-x: auto;
     overflow-y: hidden;
     margin: 37px 0 21px;
     padding-bottom: 8px;
     -webkit-overflow-scrolling: touch;
   }

   .gt-diagram svg {
     width: 650px;
     max-width: none;
   }

   .gt-footer {
     display: block;
     padding-top: 19px;
   }

   .gt-footer p {
     margin-bottom: 18px;
     font-size: 14px;
   }

   .gt-work-link {
     min-width: 190px;
     font-size: 14px;
   }
 }

 .gs-consultation {
   --gs-dark: #102628;
   --gs-muted: #5f6970;
   --gs-green: #12c984;

   position: relative;
   width: 100%;
   overflow: hidden;
   border-top: 1px solid #6b9b94;
   background: #fff;
   color: var(--gs-dark);
   font-family: "Inter", sans-serif;
 }

 .gs-consultation *,
 .gs-consultation *::before,
 .gs-consultation *::after {
   box-sizing: border-box;
 }

 .gs-consultation__inner {
   width: min(100%, 1240px);
   margin: 0 auto;
   padding: 85px 0 53px;
 }

 .gs-consultation__content {
   position: relative;
   z-index: 2;
   padding: 0 24px;
   text-align: center;
 }

 .gs-consultation__eyebrow {
   display: inline-flex;
   align-items: center;
   gap: 18px;
   margin: 0 0 35px;
   font-size: 15px;
   font-weight: 700;
   letter-spacing: .25em;
 }

 .gs-consultation__eyebrow span {
   display: block;
   width: 16px;
   height: 16px;
   background: var(--gs-green);
 }

 .gs-consultation h2 {
   max-width: 1040px;
   margin: 0 auto 27px;
   font-size: clamp(45px, 4.2vw, 74px);
   font-weight: 750;
   line-height: .98;
   letter-spacing: -.068em;
 }

 .gs-consultation__description {
   margin: 0;
   color: #565f66;
   font-size: clamp(18px, 1.63vw, 29px);
   line-height: 1.38;
 }

 .gs-consultation__actions {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 45px;
   margin-top: 42px;
 }

 .gs-consultation__primary,
 .gs-consultation__secondary {
   display: inline-flex;
   align-items: center;
   justify-content: space-between;
   text-decoration: none;
 }

 .gs-consultation__primary {
   gap: 23px;
   min-width: 280px;
   min-height: 54px;
   padding: 14px 28px;
   border-radius: 5px;
   background: linear-gradient(110deg, #16ce89, #10c477);
   color: #092b27;
   font-size: 17px;
   font-weight: 700;
   box-shadow: 0 5px 11px rgba(11, 178, 111, .08);
   transition: transform .2s, box-shadow .2s;
 }

 .gs-consultation__primary:hover {
   transform: translateY(-2px);
   box-shadow: 0 9px 19px rgba(11, 178, 111, .17);
 }

 .gs-consultation__primary span {
   font-size: 20px;
   line-height: 1;
   font-weight: 400;
 }

 .gs-consultation__secondary {
   gap: 38px;
   min-height: 48px;
   padding: 4px 2px 8px;
   border-bottom: 2px solid #263b3d;
   color: var(--gs-dark);
   font-size: 19px;
   font-weight: 500;
 }

 .gs-consultation__secondary span {
   font-size: 26px;
   line-height: 1;
 }

 .gs-consultation__secondary:hover {
   color: #058e5d;
   border-color: #058e5d;
 }

 /* The SVG contains every line and marker on one coordinate system. */
 .gs-consultation__journey {
   width: 100%;
   margin-top: -118px;
   pointer-events: none;
 }

 .gs-consultation__journey svg {
   display: block;
   width: 100%;
   height: auto;
   overflow: visible;
 }

 .gs-consultation__journey text {
   font-family: "Inter", sans-serif;
   fill: var(--gs-dark);
 }

 .gs-consultation__svg-label {
   font-size: 15px;
   font-weight: 750;
   letter-spacing: .22em;
 }

 .gs-consultation__svg-small {
   fill: #66757b !important;
   font-size: 11px;
   font-weight: 700;
   letter-spacing: .2em;
 }

 .gs-consultation__milestone circle:first-child {
   fill: #fff;
   stroke: #60dda7;
   stroke-width: 2;
 }

 .gs-consultation__milestone circle:last-child {
   fill: #09ba78;
 }

 .gs-consultation__footnote {
   margin: -2px 20px 0;
   color: var(--gs-muted);
   font-size: 18px;
   line-height: 1.4;
   text-align: center;
 }

 /* Medium desktop and tablet */

 @media (max-width: 1100px) {
   .gs-consultation__inner {
     padding-top: 76px;
   }

   .gs-consultation__journey {
     margin-top: -55px;
   }

   .gs-consultation__primary {
     min-width: 310px;
     min-height: 60px;
     font-size: 18px;
   }

   .gs-consultation__secondary {
     font-size: 17px;
   }

   .gs-consultation__footnote {
     margin-top: 9px;
     font-size: 15px;
   }
 }

 /* Mobile: keep the same layout and readable CTA */

 @media (max-width: 700px) {
   .gs-consultation__inner {
     padding: 67px 0 52px;
   }

   .gs-consultation__content {
     padding: 0 20px;
   }

   .gs-consultation__eyebrow {
     gap: 11px;
     margin-bottom: 25px;
     font-size: 10px;
     letter-spacing: .18em;
   }

   .gs-consultation__eyebrow span {
     width: 11px;
     height: 11px;
   }

   .gs-consultation h2 {
     max-width: 550px;
     margin-bottom: 20px;
     font-size: clamp(33px, 8vw, 55px);
     line-height: 1.03;
   }

   .gs-consultation h2 br,
   .gs-consultation__description br {
     display: none;
   }

   .gs-consultation__description {
     max-width: 500px;
     margin: auto;
     font-size: 17px;
     line-height: 1.5;
   }

   .gs-consultation__actions {
     flex-direction: column;
     gap: 19px;
     margin-top: 30px;
   }

   .gs-consultation__primary {
     width: min(100%, 350px);
     min-width: 0;
     min-height: 57px;
     padding: 14px 19px;
     font-size: 16px;
   }

   .gs-consultation__secondary {
     gap: 25px;
     font-size: 16px;
   }

   /*
    Keep the whole journey illustration visible on narrow screens.
    The line, bulb, dots and labels scale together.
  */
   .gs-consultation__journey {
     width: 820px;
     max-width: none;
     margin: 18px 0 0 50%;
     transform: translateX(-50%);
   }

   .gs-consultation__footnote {
     max-width: 350px;
     margin: 13px auto 0;
     padding: 0 15px;
     font-size: 13px;
   }
 }

 @media (max-width: 400px) {
   .gs-consultation__journey {
     width: 750px;
   }
 }

 .gs-footer {
   --gs-footer-ink: #12292b;
   --gs-footer-muted: #637078;
   --gs-footer-line: #d6e2e3;
   --gs-footer-green: #12ce86;

   position: relative;
   width: 100%;
   min-height: 570px;
   overflow: hidden;
   border-top: 1px solid #b9cecc;
   background: #fff;
   color: var(--gs-footer-ink);
   font-family: "Inter", sans-serif;
 }

 .gs-footer *,
 .gs-footer *::before,
 .gs-footer *::after {
   box-sizing: border-box;
 }

 .gs-footer__inner {
   position: relative;
   z-index: 1;
   display: grid;
   grid-template-columns: minmax(0, 43%) minmax(0, 57%);
   gap: 45px;
   width: min(calc(100% - 140px), 1240px);
   margin: 0 auto;
   padding: 52px 0 20px;
 }

 .gs-footer__architecture {
   position: absolute;
   bottom: -3px;
   left: -8px;
   width: 310px;
   height: 245px;
   opacity: .7;
   pointer-events: none;
 }

 /* Left side */

 .gs-footer__brand-column {
   min-width: 0;
 }

 .gs-footer__logo {
   display: inline-flex;
   align-items: center;
   gap: 14px;
   color: var(--gs-footer-ink);
   text-decoration: none;
 }

 .gs-footer__logo svg {
   display: block;
   width: 44px;
   height: 44px;
 }

 .gs-footer__logo span {
   font-size: 27px;
   font-weight: 750;
   letter-spacing: -.065em;
 }

 .gs-footer__message {
   margin: 61px 0 0 25px;
 }

 .gs-footer__message h2 {
   margin: 0 0 22px;
   font-size: clamp(32px, 2.8vw, 50px);
   font-weight: 750;
   line-height: 1.045;
   letter-spacing: -.066em;
 }

 .gs-footer__message p {
   margin: 0;
   color: var(--gs-footer-muted);
   font-size: clamp(16px, 1.5vw, 26px);
   line-height: 1.32;
 }

 .gs-footer__back-to-top {
   display: inline-flex;
   align-items: center;
   gap: 13px;
   margin: 54px 0 0 63px;
   padding-bottom: 4px;
   border-bottom: 2px solid var(--gs-footer-green);
   color: var(--gs-footer-ink);
   font-size: 18px;
   font-weight: 500;
   line-height: 1;
   text-decoration: none;
 }

 .gs-footer__back-to-top span {
   font-size: 27px;
   line-height: .75;
   font-weight: 400;
 }

 .gs-footer__back-to-top:hover {
   color: #078b5b;
 }

 /* Right side */

 .gs-footer__contact-column {
   min-width: 0;
 }

 .gs-footer__contact-row {
   display: flex;
   align-items: center;
   justify-content: space-between;
   gap: 25px;
   min-height: 156px;
   padding: 31px 10px 29px;
   border-top: 1px solid var(--gs-footer-line);
 }

 .gs-footer__contact-row:last-child {
   border-bottom: 1px solid var(--gs-footer-line);
 }

 .gs-footer__contact-row--address {
   min-height: 180px;
   align-items: flex-start;
 }

 .gs-footer__contact-row>div {
   min-width: 0;
 }

 .gs-footer__label {
   display: block;
   margin-bottom: 11px;
   color: #77858b;
   font-size: 18px;
   font-weight: 500;
   letter-spacing: .035em;
 }

 .gs-footer__contact-row address {
   margin: 0;
   color: #334449;
   font-size: clamp(21px, 1.65vw, 31px);
   font-style: normal;
   line-height: 1.42;
 }

 .gs-footer__contact-row a {
   display: inline-block;
   max-width: 100%;
   padding-bottom: 3px;
   border-bottom: 3px solid var(--gs-footer-green);
   color: var(--gs-footer-ink);
   font-size: clamp(27px, 2.3vw, 43px);
   font-weight: 500;
   line-height: 1.1;
   letter-spacing: -.045em;
   text-decoration: none;
   overflow-wrap: anywhere;
 }

 .gs-footer__contact-row a:hover {
   color: #078b5b;
 }

 .gs-footer__row-icon {
   flex: 0 0 40px;
   width: 40px;
   height: 40px;
   margin-top: 19px;
   color: #203c40;
 }

 .gs-footer__arrow {
   align-self: center;
   margin-right: 2px;
   color: #203c40;
   font-size: 44px;
   font-weight: 300;
   line-height: 1;
 }

 /* Tablet */

 @media (max-width: 1200px) {
   .gs-footer__inner {
     width: calc(100% - 80px);
     grid-template-columns: minmax(0, 42%) minmax(0, 58%);
     gap: 20px;
   }

   .gs-footer__message {
     margin-left: 0;
   }

   .gs-footer__back-to-top {
     margin-left: 0;
   }

   .gs-footer__contact-row address br,
   .gs-footer__message p br {
     display: none;
   }
 }

 /* Mobile */

 @media (max-width: 800px) {
   .gs-footer {
     min-height: 0;
   }

   .gs-footer__inner {
     display: block;
     width: calc(100% - 42px);
     padding: 45px 0 60px;
   }

   .gs-footer__logo svg {
     width: 38px;
     height: 38px;
   }

   .gs-footer__logo span {
     font-size: 25px;
   }

   .gs-footer__message {
     margin: 52px 0 0;
   }

   .gs-footer__message h2 {
     font-size: clamp(33px, 7vw, 42px);
   }

   .gs-footer__message p {
     max-width: 520px;
     font-size: 17px;
     line-height: 1.5;
   }

   .gs-footer__back-to-top {
     margin: 30px 0 49px;
     font-size: 16px;
   }

   .gs-footer__contact-row,
   .gs-footer__contact-row--address {
     min-height: 0;
     padding: 24px 0;
   }

   .gs-footer__label {
     font-size: 13px;
   }

   .gs-footer__contact-row address {
     font-size: clamp(18px, 4.4vw, 24px);
   }

   .gs-footer__contact-row a {
     font-size: clamp(23px, 6vw, 34px);
   }

   .gs-footer__arrow {
     font-size: 31px;
   }

   .gs-footer__architecture {
     width: 220px;
     height: 180px;
     opacity: .38;
   }
 }

 /* =========================================================
   FREQUENTLY ASKED QUESTIONS (FAQ)
========================================================= */
 .gs-faq-section {
   --faq-green: #00d977;
   --faq-green-dark: #00be68;
   --faq-deep-green: #06271e;
   --faq-dark: #071814;
   --faq-text: #5d6a66;
   --faq-border: #dce7e2;
   --faq-soft: #f3f8f5;
   --faq-white: #ffffff;

   position: relative;
   width: 100%;
   padding: 80px 0;
   overflow: hidden;
   background:
     radial-gradient(circle at 10% 20%, rgba(0, 217, 119, 0.05), transparent 25%),
     linear-gradient(135deg, #f8fbf9 0%, #ffffff 55%, #f5faf7 100%);
   font-family: "Inter", sans-serif;
   -webkit-font-smoothing: antialiased;
 }

 .gs-faq-container {
   display: grid;
   grid-template-columns: minmax(280px, 0.82fr) minmax(440px, 1.18fr);
   gap: clamp(30px, 4.5vw, 70px);
   width: min(1300px, calc(100% - 96px));
   max-width: 1300px;
   margin: 0 auto;
 }

 .gs-faq-intro {
   position: relative;
   align-self: start;
   padding-top: 5px;
 }

 .gs-faq-eyebrow {
   display: inline-flex;
   align-items: center;
   gap: 10px;
   margin-bottom: 14px;
   color: var(--faq-green-dark);
   font-size: 11px;
   font-weight: 700;
   line-height: 1;
   letter-spacing: 0.18em;
 }

 .gs-faq-eyebrow::before {
   width: 8px;
   height: 8px;
   border-radius: 2px;
   background: var(--faq-green);
   content: "";
 }

 .gs-faq-intro h2 {
   max-width: 530px;
   margin: 0;
   color: var(--faq-deep-green);
   font-size: clamp(26px, 2.3vw, 36px);
   font-weight: 700;
   line-height: 1.15;
   letter-spacing: -0.04em;
 }

 .gs-faq-intro>p {
   max-width: 440px;
   margin: 14px 0 0;
   color: var(--faq-text);
   font-size: 14px;
   line-height: 1.6;
 }

 .gs-faq-contact {
   display: inline-flex;
   align-items: center;
   gap: 12px;
   margin-top: 24px;
   color: var(--faq-deep-green);
   font-size: 13.5px;
   font-weight: 700;
   text-decoration: none;
 }

 .gs-faq-contact:hover {
   color: var(--faq-green-dark);
 }

 .gs-faq-contact-icon {
   display: grid;
   place-items: center;
   width: 32px;
   height: 32px;
   border-radius: 50%;
   background: #e6f7f0;
   color: var(--faq-green-dark);
 }

 .gs-faq-contact-icon svg {
   width: 16px;
   height: 16px;
 }

 .gs-faq-list {
   display: flex;
   flex-direction: column;
   gap: 14px;
 }

 .gs-faq-item {
   border: 1px solid var(--faq-border);
   border-radius: 12px;
   background: var(--faq-white);
   transition: border-color 0.2s ease, box-shadow 0.2s ease;
   overflow: hidden;
 }

 .gs-faq-item[open] {
   border-color: var(--faq-green-dark);
   box-shadow: 0 4px 20px rgba(0, 190, 104, 0.08);
 }

 .gs-faq-summary {
   display: flex;
   align-items: center;
   gap: 16px;
   padding: 20px 24px;
   cursor: pointer;
   list-style: none;
   font-weight: 600;
   color: var(--faq-deep-green);
   user-select: none;
 }

 .gs-faq-summary::-webkit-details-marker {
   display: none;
 }

 .gs-faq-number {
   font-size: 13px;
   font-weight: 700;
   color: var(--faq-green-dark);
   opacity: 0.8;
 }

 .gs-faq-question {
   flex: 1;
   font-size: clamp(15px, 1.2vw, 17px);
   line-height: 1.4;
 }

 .gs-faq-toggle {
   position: relative;
   width: 20px;
   height: 20px;
   flex-shrink: 0;
 }

 .gs-faq-toggle::before,
 .gs-faq-toggle::after {
   content: "";
   position: absolute;
   top: 50%;
   left: 50%;
   background: var(--faq-deep-green);
   transition: transform 0.2s ease;
 }

 .gs-faq-toggle::before {
   width: 12px;
   height: 2px;
   margin-top: -1px;
   margin-left: -6px;
 }

 .gs-faq-toggle::after {
   width: 2px;
   height: 12px;
   margin-top: -6px;
   margin-left: -1px;
 }

 .gs-faq-item[open] .gs-faq-toggle::after {
   transform: rotate(90deg);
   opacity: 0;
 }

 .gs-faq-answer {
   padding: 0 24px 20px 53px;
   color: var(--faq-text);
   font-size: 14.5px;
   line-height: 1.65;
 }

 .gs-faq-answer p {
   margin: 0;
 }

 @media (max-width: 900px) {
   .gs-faq-container {
     grid-template-columns: 1fr;
     gap: 40px;
   }
 }

/* =========================================================
   SOFTWARE SERVICES — MOBILE POLISH (WEBSITE DESIGN & DEV)
   Hero: right/bottom mockups & timeline removed, compact copy.
   Sections: full-width containers (16px gutters), consistent heading scale.
========================================================= */

@media (max-width: 700px) {

  /* ---------- Hero ---------- */
  .gs-web-hero__showcase,
  .gs-web-hero__screens,
  .gs-web-hero__timeline,
  .gs-phone,
  .gs-browser {
    display: none !important;
  }

  .gs-web-hero {
    min-height: 0 !important;
    padding: 28px 16px 36px !important;
    background-size: 24px 24px;
  }

  .gs-web-hero::before,
  .gs-web-hero::after {
    display: none !important;
  }

  .gs-web-hero__inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .gs-web-hero__intro {
    text-align: center;
  }

  .gs-web-hero__eyebrow {
    display: block;
    max-width: 100%;
    margin: 0 auto 12px !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
    line-height: 1.5;
  }

  .gs-web-hero h1 {
    font-size: clamp(24px, 7.2vw, 32px) !important;
    line-height: 1.15 !important;
    letter-spacing: -0.8px !important;
  }

  .gs-web-hero h1 br {
    display: none;
  }

  .gs-web-hero__description {
    max-width: 100% !important;
    margin: 14px auto 20px !important;
    font-size: 13.5px !important;
    line-height: 1.6 !important;
    text-align: center;
  }

  .gs-web-hero__buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-top: 18px;
  }

  .gs-web-hero__button {
    display: flex !important;
    width: 100% !important;
    max-width: 340px !important;
    min-width: 0 !important;
    min-height: 48px !important;
    margin-inline: auto !important;
    padding: 12px 20px !important;
    justify-content: space-between !important;
    font-size: 13.5px !important;
  }

  .gs-web-hero__features {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px 18px !important;
    margin-top: 24px !important;
  }

  .gs-web-hero__feature {
    font-size: 11.5px !important;
    gap: 8px !important;
  }

  .gs-web-hero__feature-icon {
    width: 28px !important;
    height: 28px !important;
    font-size: 15px !important;
  }

  .gs-web-hero__separator {
    display: none !important;
  }

  /* ---------- Section containers: full width, 16px gutters ---------- */
  .gs-clients__inner,
  .gs-overview__inner,
  .gs-process__inner,
  .gs-work__container,
  .gs-compare__container,
  .gs-investment__container,
  .gs-audience__container,
  .gs-built-on__container,
  .gt-container,
  .gs-consultation__inner,
  .gs-faq-container {
    width: calc(100% - 32px) !important;
    max-width: 100% !important;
    margin-inline: auto !important;
  }

  /* ---------- Consistent section headings ---------- */
  .gs-clients h2,
  .gs-overview h2,
  .gs-build h2,
  .gs-process h2,
  .gs-work h2,
  .gs-compare h2,
  .gs-investment h2,
  .gs-project-cta h2,
  .why-growthspell h2,
  .gs-audience h2,
  .gs-built-on h2,
  .growthspell-testimonial h2,
  .gs-consultation h2,
  .gs-faq-section h2 {
    font-size: clamp(24px, 6.8vw, 32px) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.8px !important;
  }

  .gs-clients h2 br,
  .gs-overview h2 br,
  .gs-build h2 br,
  .gs-process h2 br,
  .gs-work h2 br,
  .gs-compare h2 br,
  .gs-investment h2 br,
  .gs-project-cta h2 br,
  .why-growthspell h2 br,
  .gs-audience h2 br,
  .gs-built-on h2 br,
  .growthspell-testimonial h2 br,
  .gs-consultation h2 br,
  .gs-faq-section h2 br {
    display: none;
  }

  .gs-web-hero,
  .gs-clients,
  .gs-overview,
  .gs-build,
  .gs-process,
  .gs-work,
  .gs-compare,
  .gs-investment,
  .gs-project-cta,
  .why-growthspell,
  .gs-audience,
  .gs-built-on,
  .growthspell-testimonial,
  .gs-consultation,
  .gs-faq-section {
    overflow-x: clip;
  }
}

@media (max-width: 390px) {
  .gs-clients__inner,
  .gs-overview__inner,
  .gs-process__inner,
  .gs-work__container,
  .gs-compare__container,
  .gs-investment__container,
  .gs-audience__container,
  .gs-built-on__container,
  .gt-container,
  .gs-consultation__inner,
  .gs-faq-container {
    width: calc(100% - 24px) !important;
  }
}