/*--  ----------- --------- - ----------- ----------- --->
<---  -----------  TJANSTER - Sektioner   ----------- --->
<---  ----------- --------- - ----------- ----------- --*/

.ui-service-page {
  padding-block: 2.5rem;
  overflow: hidden;
  background: var(--background-color-gradient);
}

.ui-service-page-alt {
  background: var(--background-color);
}

.ui-service-page-container {
  display: grid;
  gap: 0;
  align-items: stretch;
  background: linear-gradient(
    135deg,
    hsl(0 0% 100% / 0.04) 0%,
    hsl(0 0% 100% / 0.01) 100%
  );
  border-radius: 1rem;
  border: 1px solid hsl(0 0% 100% / 0.07);
  overflow: hidden;
}

.ui-service-page-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5rem;
  padding: 3rem 2.5rem;
  order: 1;
}

.ui-service-page-alt .ui-service-page-content {
  align-items: flex-start;
  text-align: left;
  order: 1;
}

.ui-service-page-content .ui-subtitle {
  margin: 0;
  border-bottom: 1px solid hsl(0 0% 100% / 0.07);
  padding-bottom: 1rem;
  width: 100%;
}

.ui-service-page-content .ui-text {
  color: var(--white-color-dark);
  white-space: normal;
  margin: 0;
  max-width: 100%;
  filter: drop-shadow(0 0 0.25rem var(--black-color-light-opacity));
}

.ui-service-page-alt .ui-text {
  align-items: flex-start;
  text-align: left;
  order: 1;
}

.ui-service-page-visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 16rem;
  border-top: 1px solid hsl(0 0% 100% / 0.07);
  order: 2;
}

.ui-service-page-alt .ui-service-page-visual {
  order: 2;
  border-right: none;
  border-top: 1px solid hsl(0 0% 100% / 0.07);
}

.ui-service-page-glow {
  position: absolute;
  inset: 10%;
  border-radius: 50%;
  background: radial-gradient(
    circle,
    hsl(49 99% 54% / 0.18) 0%,
    transparent 70%
  );
  filter: blur(2.5rem);
  pointer-events: none;
  z-index: 0;
}

.ui-service-page-icon-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 90%;
  height: 90%;
  border-radius: 2rem;
  border: 1px solid var(--brand-color);
  background: hsl(0 0% 0% / 0.2);
  z-index: 2;
  transition: all 400ms ease;
}

.ui-service-page-icon {
  width: clamp(5rem, 20vw, 12.5rem);
  height: clamp(5rem, 20vw, 12.5rem);
  filter: drop-shadow(0 0 1.5rem hsl(49 99% 54% / 0.3));
  transition: all 400ms ease;
}

/* 768px */
@media screen and (min-width: 48rem) {
  .ui-service-page-container {
    grid-template-columns: 1fr minmax(0, 22rem);
  }

  .ui-service-page-content {
    order: 1;
  }

  .ui-service-page-visual {
    order: 2;
    border-top: none;
    border-left: 1px solid hsl(0 0% 100% / 0.07);
    min-height: auto;
  }

  .ui-service-page-alt .ui-service-page-container {
    grid-template-columns: minmax(0, 22rem) 1fr;
  }

  .ui-service-page-alt .ui-service-page-content {
    align-items: flex-end;
    text-align: right;
    order: 2;
  }

  .ui-service-page-alt .ui-service-page-content .ui-subtitle {
    text-align: right;
  }

  .ui-service-page-alt .ui-service-page-visual {
    order: 1;
    border-top: none;
    border-left: none;
    border-right: 1px solid hsl(0 0% 100% / 0.07);
  }
}

/* 1024px */
@media screen and (min-width: 64rem) {
  .ui-service-page {
    padding-block: 3rem;
  }

  .ui-service-page-container {
    grid-template-columns: 1fr minmax(0, 26rem);
  }

  .ui-service-page-alt .ui-service-page-container {
    grid-template-columns: minmax(0, 26rem) 1fr;
  }

  .ui-service-page-content {
    padding: 4rem 3.5rem;
  }
}
