@media screen and (max-width: 1024px) {
  /* Root Elements */

  :root {
    --Fxl: 4rem;
    --Fl: 48px;
    --Fm: 24px;
    --Fs: 24px;
    --Fb: 16px;
    --Hh: 50px;
  }

  /* Universal Elements */

  html {
    line-height: 1.3;
  }

  /* Universal Text Styling */

  h1,
  h2,
  h3,
  h4,
  p {
    font-size: var(--Fb);
    line-height: 20px;
  }

  .font_xlarge,
  .font_xlarge > * {
    font-size: var(--Fxl);
    line-height: 1.125;
  }

  .font_large {
    font-size: var(--Fl);
    line-height: 56px;
  }

  .font_medium {
    font-size: var(--Fm);
    line-height: 28px;
  }

  .font_small {
    font-size: var(--Fs);
    line-height: 20px;
  }

  .font_body {
    font-size: var(--Fb);
    line-height: 20px;
  }

  a,
  button,
  input,
  span {
    font-size: var(--Fb);
  }

  /* Main Styling */

  main section,
  footer {
    grid-template-columns: repeat(4, 1fr);
    padding: 0 16px;
  }

  footer {
    padding: 30px 16px 80px 16px !important;
  }

  footer .footer-left-container {
    grid-column: 1/-1;
  }

  .footer-timezones {
    flex-direction: column;
    gap: 16px;
    padding: 30px 0px;
  }

  footer .footer-right-container {
    grid-column: 1/-1;
  }

  footer .footer__socials {
    display: none;
  }

  main section {
    row-gap: 15px !important;
    margin-bottom: 0px;
  }

  /* Header */

  header {
    justify-content: flex-start;
    width: 100%;
    padding: 5px var(--Pm);
  }

  header .menu-toggle {
    display: block;
  }

  header > *:not(:last-child) {
    margin-right: 0;
  }

  header .desktop-call {
    display: none;
  }

  header .mobile-call {
    display: flex;
    margin-left: auto;
    position: relative;
    z-index: 11;
  }

  .header__logo {
    display: none;
  }

  .header__menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: 2;
    overflow-y: scroll;
    background-color: var(--bg);
    padding: calc(var(--Hh)) var(--Pm) var(--Pm) var(--Pm);
    transform: translateY(-100%);
    visibility: hidden;
    transition: all 0.4s;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .header__menu::-webkit-scrollbar {
    display: none;
  }

  .header__menu.active {
    transform: translateY(0);
    visibility: visible;
  }

  .header__menu ul {
    flex-direction: column;
    align-items: start;
    padding-block: 24px;
  }

  .header__menu li:not(:last-child) {
    margin-right: 0;
    margin-bottom: 10px;
  }

  .header__menu li a {
    font-size: 24px;
    line-height: 28px;
  }

  header button {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: flex-end;
    z-index: 10;
  }

  header button > * {
    grid-row: 1;
  }

  header button > *:last-child,
  header button.active > *:first-child {
    display: none;
  }

  header button.active > *:last-child,
  .header__home {
    display: block;
  }

  .menu-toggle {
    height: fit-content;
    align-self: center;
    position: relative;
    z-index: 11;
  }

  .hamburger {
    align-self: center;
    display: flex;
    flex-direction: column;
    margin: calc(var(--Pg) / 2);
    row-gap: 4px;
    margin: 16px 9px 20px 9px;
    margin-left: 23px;
    z-index: 11;
    height: 12.5px;
    width: 20px;
    pointer-events: all;
  }

  .hamburger .hamburger-line {
    /* padding-block: 2px; */
    display: block;
    width: 20px;
    height: 1.5px;
    background-color: var(--black);
    border-radius: 1px;
    transition: all 0.3s ease-in-out;
  }

  .hamburger.active .hamburger-line:nth-child(1) {
    transform: translateY(2.7px) rotate(45deg) !important;
    background-color: var(--black) !important;
    display: block;
  }
  .hamburger.active .hamburger-line:nth-child(2) {
    transform: translateY(-2.7px) rotate(-45deg) !important;
    background-color: var(--black) !important;
    display: block;
  }

  /* Footer */

  footer {
    padding: var(--Pm);
    row-gap: 1rem;
  }

  .footer__menu,
  .footer__socials,
  .footer__details,
  .footer__form {
    grid-column: 1/5;
  }

  .footer__socials {
    grid-row: 2;
  }

  .footer__details {
    grid-row: 3;
  }

  /* Pages */

  /* Case Study Page */

  [data-template="case-study"] section {
    padding-top: 80px;
    gap: 40px;
  }

  [data-template="case-study"] .sticky-column {
    grid-row: 2;
    grid-column: 1 / -1;
    padding: 40px 0px !important;
    top: unset;
    gap: unset;
  }

  [data-template="case-study"] .content-column {
    grid-column: 1 / -1;
    grid-row: 3;
  }

  [data-template="case-study"] .content-column section {
    padding: unset !important;
    padding-bottom: 15px !important;
  }

  [data-template="case-study"] .content-column section:last-child {
    padding: unset !important;
    padding-bottom: unset !important;
  }

  [data-template="case-study"] .content-column section:first-child {
    padding-top: 0px !important;
  }

  [data-template="case-study"] .content-column figure {
    aspect-ratio: 0.8 !important;
  }

  [data-template="case-study"] .case__study-title {
    grid-row: 1;
    grid-column: 1/-1;
  }

  [data-template="case-study"] .case-study-prev-next-title {
    grid-column: 1/-1;
    padding-bottom: 25px;
  }

  [data-template="case-study"] .case-study-prev-next {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    row-gap: 40px;
  }

  [data-template="case-study"] .case-study-text {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: space-between;
    padding: 10px 0px;
    flex-wrap: nowrap;
  }

  [data-template="case-study"] main {
    padding-bottom: 40px;
  }

  /* Default Page */

  [data-template="page"] .sticky-column {
    grid-column: 1/-1;
  }

  [data-template="page"] .content-column {
    grid-column: 1/-1;
  }

  [data-template="page"] .column__right {
    grid-row: 1;
  }

  [data-template="page"] section {
    padding: 40px 16px;
    row-gap: 40px !important;
  }

  [data-template="page"] .sticky-column {
    padding-top: 40px !important;
    padding-bottom: 0px !important;
  }

  [data-template="page"] .sticky-column > p {
    padding-top: 15px;
  }

  [data-template="page"] .sticky-column > .details {
    padding-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 20px;
  }

  [data-template="page"] .sticky-column > .link_under_text_container {
    padding-top: 35px;
  }

  /* Home Page */
  .landing-home {
    height: 100vh;
    margin-top: calc(-1 * var(--Hh));
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
    padding: var(--Pd) var(--Pm);
  }

  .landing-home__canvas {
    /* display: none; */
    opacity: 0;
    visibility: hidden;
  }

  .landing-home__cmob {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }

  .landing-home__cmob svg {
    position: absolute;
    width: 19vw;
    height: 19vw;
    max-width: 120px;
    max-height: 120px;
  }

  .landing-home__cmob svg:nth-of-type(1) {
    top: 17%;
    left: 10%;
  }

  .landing-home__cmob svg:nth-of-type(2) {
    top: 1%;
    left: 17%;
  }

  .landing-home__cmob svg:nth-of-type(3) {
    top: 25%;
    right: 6%;
  }

  .landing-home__cmob svg:nth-of-type(4) {
    top: 30%;
    right: 35%;
  }

  .landing-home__cmob svg:nth-of-type(5) {
    top: 6%;
    left: 55%;
  }

  .landing-home__cmob svg:nth-of-type(6) {
    bottom: 2%;
    left: 5%;
  }

  .landing-home__cmob svg:nth-of-type(7) {
    bottom: 26%;
    left: 15%;
  }

  .landing-home__cmob svg:nth-of-type(8) {
    bottom: 12%;
    left: 40%;
  }

  .landing-home__cmob svg:nth-of-type(9) {
    bottom: 32%;
    right: 18%;
  }

  .landing-home__cmob svg:nth-of-type(10) {
    bottom: 7%;
    right: 13%;
  }

  /* Default Page */
  .page-heading {
    margin: calc(8.625rem - var(--Hh)) 0 5rem 0;
  }

  .page-heading h2,
  .page-heading p {
    grid-column: 1/5;
  }

  /* Case Studies Page */

  [data-template="case-studies"] .case-studies {
    padding-top: 80px;
    padding-bottom: 40px;
    row-gap: 40px !important;
  }

  [data-template="case-studies"] .case-studies__heading-container {
    display: flex;
    flex-direction: column;
    gap: 15px;
    grid-column: 1/-1;
  }

  [data-template="case-studies"] .case-studies__case-study-container {
    grid-column: 1/-1;
    grid-template-columns: repeat(1, 1fr);
    display: grid;
    column-gap: 15px;
    row-gap: 40px;
  }

  [data-template="case-studies"] .case-study-feature-card:hover img {
    transform: scale(1.1);
  }

  .read-full-case-study {
    color: var(--grey) !important;
    stroke: var(--grey) !important;
    opacity: 1;
  }

  /* Archive Page */
  .archive-heading {
    margin: calc(8.625rem - var(--Hh)) 0 1rem 0;
    row-gap: 0.5rem;
  }

  .archive-heading h2,
  .archive-heading p {
    grid-column: 1/5;
  }

  .archive-gallery {
    row-gap: 5rem;
  }

  .archive-gallery__gallery {
    grid-column: 1/5;
    grid-template-columns: repeat(2, 1fr);
  }

  .archive-gallery .aspectholder {
    width: 100%;
    height: 43.733333vw;
  }

  .archive-gallery .aspectholder:nth-child(19n + 5),
  .archive-gallery .aspectholder:nth-child(26n + 12) {
    grid-column: span 1;
    grid-row: span 1;
    height: 43.733333vw;
  }

  .archive-gallery__pagination {
    grid-column: 1/5;
  }

  /* About Page */

  .content-column {
    grid-column: 1/-1;
    position: static;
  }

  [data-template="about"] .content-column section:first-child {
    /* padding-top: 80px !important; */
    padding-bottom: 0px !important;
  }

  [data-template="about"] section {
    padding-top: 80px !important;
    padding-bottom: 40px !important;
    padding-inline: 16px !important;
  }

  .content-column section {
    padding: 40px 0px !important;
  }

  .content-column section > * {
    grid-column: 1/-1 !important;
  }

  .sticky-column {
    grid-column: 1/-1;
    position: static;
    overflow: unset;
    padding: 40px 0px !important;
  }

  /* Case Studies Page */
  .partners-featured {
    margin-top: calc(8.625rem - var(--Hh));
    row-gap: 5rem;
  }

  .partners-featured h2 {
    grid-column: 1/5;
  }

  .partners-featured__list {
    grid-column: 1/5;
  }

  .partners-featured summary h3 {
    display: flex;
    align-items: center;
  }

  .partners-featured summary h3:before,
  .partners-featured__upper > div > ul p:before {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    border: 1px solid var(--fg);
    transition: all 0.3s;
  }

  .partners-featured__upper > div > ul p:before {
    margin-right: 1rem;
  }

  .partners-featured__details {
    row-gap: var(--Pm);
  }

  .partners-featured__details .aspectholder {
    grid-column: 1/3;
    height: 91.466667vw;
  }

  .partners-featured__text {
    grid-column: 1/3;
    margin-top: 0;
    height: fit-content;
  }

  .partners-list {
    row-gap: 2rem;
  }

  .partners-list h2 {
    grid-column: 1/5;
  }

  .partners-list > p {
    grid-column: 2/5;
  }

  .partners-list__container {
    grid-column: 1/5;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: auto;
    row-gap: 2rem;
    height: fit-content !important;
  }

  .partners-list__frame {
    grid-column: span 1 !important;
    margin-top: 0 !important;
    width: 100% !important;
    height: fit-content !important;
  }

  .partners-list__item {
    position: static;
    top: unset !important;
    left: unset !important;
  }

  .partners-list__item a {
    display: block;
    width: fit-content;
    margin-left: 0;
  }

  .partners-list__item h3 {
    display: flex;
    align-items: center;
  }

  .partners-list__item h3:before {
    content: "";
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 50%;
    border: 1px solid var(--fg);
    transition: all 0.3s;
    margin-right: 1rem;
  }

  .partners-list__item .aspectholder {
    width: 100%;
    height: 43.733333vw;
    cursor: default;
  }

  /* Individual Partner Page */
  .partner-landing {
    margin-top: calc(8.625rem - var(--Hh));
    row-gap: 0.5rem;
  }

  .partner-landing.layout_stacked {
    align-items: flex-start;
  }

  .partner-landing__heading {
    grid-column: 1/5;
  }

  .partner-landing__heading > *:not(:last-child) {
    margin-bottom: 0.5rem;
  }

  .partner-landing > p {
    grid-column: 1/5;
  }

  .partner-landing .partner-landing__banner {
    margin-top: 2.875rem;
  }

  .partner-landing.layout_stacked .partner-landing__banner {
    grid-column: 1/5;
  }

  .partner-landing.layout_inline .partner-landing__banner {
    grid-column: 1/5;
  }

  .partner-landing.layout_stacked .partner-landing__banner .aspectholder,
  .partner-landing.layout_inline .partner-landing__banner .aspectholder {
    height: 93.066667vw;
  }

  .partner-info .column__left,
  .partner-info .column__right {
    margin-top: 0;
  }

  .partner-info {
    row-gap: 1rem;
  }

  .partner-info .text__right {
    margin-bottom: 1rem;
  }

  .partner-info .text__right > a {
    grid-column: 2/5;
  }

  .partner-info .column__right {
    grid-column: 2/5;
  }

  .partner-info .column__right .column__columns li {
    row-gap: 0.5rem;
    margin-bottom: 0.5rem;
    padding-bottom: 0.5rem;
  }

  .partner-info .column__right .column__columns li div:last-of-type {
    text-align: right;
  }

  /* Login Page */

  .login {
    row-gap: 3rem;
  }

  .login .aspectholder {
    grid-column: 2/4;
  }

  .login__form {
    grid-column: 1/5;
  }

  /* Blocks */

  /* Text Block */

  [data-type="textblock"] {
    padding-block: 40px;
  }

  [data-type="textblock"] div {
    grid-column: 1/-1 !important;
  }

  .link_under_text_container {
    grid-column: 1/-1 !important;
  }

  .text__right > *:not(:last-child) {
    margin-bottom: 0;
  }

  /* Partners Block */

  [data-type="partnersblock"] {
    padding-block: 40px;
  }

  .partners__heading,
  .partners__list {
    grid-column: 1/5;
  }

  .partners__heading figure {
    display: none;
  }

  .partners__list {
    gap: 8px;
  }

  .partners__list a {
    font-size: var(--Fb);
    color: var(--black);
    line-height: 20px;
  }

  /* Case Study Feature Block */
  [data-type="case-study-featureblock"] {
    padding-block: 40px;
  }

  [data-type="case-study-featureblock"] .read-full-case-study {
    display: none;
  }

  [data-type="case-study-featureblock"] .case-study-feature-mobile-link {
    pointer-events: all;
  }

  [data-type="case-study-featureblock"] .swiper-notification {
    display: none;
  }
  /* Column Block */

  [data-type="columnblock"] {
    padding-block: 24px;
  }

  [data-type="columnblock"] .column_heading {
    position: relative;
  }

  [data-type="columnblock"] li .column_heading::after {
    content: "+";
    width: fit-content;
    position: absolute;
    right: 0;
    top: 0px;
  }

  [data-type="columnblock"]
    .column__accordion
    li.active
    .column_heading::after {
    content: "-";
    width: fit-content;
    position: absolute;
    right: 0;
    top: 0px;
  }

  .column__left,
  .column__right,
  .column__heading {
    grid-column: 1/-1;
  }

  .column__heading {
    grid-row: 1;
    padding-bottom: unset;
  }

  .column__heading-images {
    padding-top: 25px;
    grid-row: 2;
    grid-column: 1/-1;
    padding-bottom: 100px;

    display: flex;
    gap: 30px;
    justify-content: start;
  }

  .column__heading-images > figure > img {
    width: 100%;
    height: auto;
    object-fit: contain;
  }

  .column__left {
    grid-row: 3;
  }

  .column__right {
    grid-row: 4;
  }

  .column__right > *:not(:last-child) {
    margin-bottom: 2rem;
  }

  .column__columns li {
    grid-template-columns: repeat(4, 1fr);
    row-gap: var(--Pm);
  }

  .column__columns li:not(:last-child) {
    margin-bottom: 10px;
  }

  .column__columns li div:first-of-type {
    grid-column: 1/5;
    width: 100%;
    height: fit-content;
    flex-direction: row;
    justify-content: space-between;
  }

  .column__columns li div:last-of-type {
    grid-column: 2/5;
  }

  .column__columns li div:first-child p.font_small {
    margin-top: 0;
  }

  ol.column__columns li {
    border-bottom: none;
    padding-bottom: 0;
  }

  ol.column__columns li div:first-of-type {
    grid-column: 2/5;
    align-items: center;
    border-bottom: 1px solid;
    padding-bottom: 0.5rem;
  }

  ol.column__columns li:last-child div:last-of-type {
    border-bottom: 1px solid;
    padding-bottom: 1rem;
  }

  /* Form Block */

  [data-type="formblock"] {
    padding-block: 40px;
    row-gap: 40px !important;
  }
  .form__left,
  .form__right {
    grid-column: 1/5;
  }

  .form__form {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }

  .form__form .form__columns {
    grid-column: 1/5;
  }

  .form__form > button {
    grid-column: 1/5;
  }

  .form__columns li {
    grid-template-columns: repeat(4, 1fr);
    row-gap: 20px;
    border-bottom: none;
    padding-bottom: 0;
  }

  .form__columns li:not(:last-child) {
    margin-bottom: 2rem;
  }

  .form__columns li > div:first-of-type {
    grid-column: 1/5;
    align-items: center;
    border-bottom: none;
    padding-bottom: 0.5rem;
    width: 100%;
    height: fit-content;
    flex-direction: row;
    justify-content: space-between;
  }

  .form__columns li > div:last-of-type {
    grid-column: 1/5;
  }

  .form__columns li > div:first-child p.font_small {
    margin-top: 0;
  }

  .form__inner {
    row-gap: 15px;
  }

  .form-button {
    grid-column: 1/-1;
  }

  /* Archive Block */
  [data-type="archiveblock"] {
    row-gap: 1rem;
  }

  .archive__heading {
    grid-column: 1/5;
  }

  .archive__archive {
    grid-column: 1/5;
    grid-template-columns: repeat(2, 1fr);
  }

  .archive__archive .aspectholder {
    height: 43.733333vw;
  }

  .archive__cta {
    grid-column: 1/5;
    margin-top: 0;
  }

  /* Media Block */
  [data-type="mediablock"].layout_stacked .aspectholder,
  [data-type="mediablock"].layout_stacked .media__caption {
    grid-column: 1/5;
  }

  [data-type="mediablock"].layout_inline {
    row-gap: 1.875rem;
  }

  [data-type="mediablock"].layout_inline .media__caption {
    grid-column: 1/5;
    grid-row: 1;
  }

  [data-type="mediablock"].fixed .aspectholder {
    height: 74.666667vw;
  }

  [data-type="mediablock"].layout_inline .aspectholder {
    grid-column: 2/5;
    grid-row: 2;
  }

  /* Double Media Block */
  [data-type="double-mediablock"] {
    row-gap: 0.5rem;
  }

  [data-type="double-mediablock"] .aspectholder:first-of-type {
    grid-column: span 6 !important;
    grid-row: 1 !important;
    border-radius: 5px;
    overflow: hidden;
    aspect-ratio: 0.8;
  }

  [data-type="double-mediablock"] .aspectholder:nth-of-type(2) {
    grid-column: span 6 !important;
    grid-row: 3 !important;
    border-radius: 5px;
    overflow: hidden;
    aspect-ratio: 0.8;
  }

  [data-type="double-mediablock"] .media_caption:first-of-type {
    grid-column: span 6 !important;
    grid-row: 2 !important;
  }

  [data-type="double-mediablock"] .media_caption:nth-of-type(2) {
    grid-column: span 6 !important;
    grid-row: 4 !important;
  }

  [data-type="double-mediablock"] .aspectholder > * {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  /* Calculator Block */
  .calculator__heading {
    grid-column: 1/5;
  }

  .calculator__container {
    grid-column: 1/5;
    display: block;
  }

  .calculator__container > * {
    width: 100%;
  }

  .calculator__container > *:not(:last-child) {
    margin-bottom: var(--Pd);
  }

  .calculator__container > *:last-child {
    margin-left: 0;
  }

  .calculator__row:not(:last-child) {
    margin-bottom: 1rem;
  }

  .calculator__row {
    grid-template-columns: repeat(4, 1fr);
    row-gap: 0.5rem;
  }

  .calculator__row > label,
  .calculator__row > p:first-child {
    grid-column: 1/5;
    grid-row: 1;
  }

  .calculator__row > div,
  .calculator__row > p:last-child {
    grid-column: 2/5;
    grid-row: 2;
  }

  .calculator__header h3 {
    grid-column: 1/5;
    grid-row: 1;
  }

  .calculator__header button {
    grid-column: 2/5;
    grid-row: 2;
  }

  .calculator__money > p {
    margin-right: 0rem;
  }

  .mock-cursor1 {
    left: 85px;
  }

  .mock-cursor2 {
    left: 100px;
  }

  /* FAQ Block */

  [data-type="faqblock"] {
    padding-block: 40px;
  }

  [data-type="faqblock"] .faq_left {
    grid-column: 1/-1;
  }

  [data-type="faqblock"] .faq_right {
    grid-column: 1/-1;
  }

  [data-type="faqblock"] .link_under_text {
    display: flex;
    margin: 30px 0px;
  }

  /* Media Slider */

  section[data-type="media-sliderblock"] {
    display: flex;
    gap: 15px;
    overflow: hidden;
    margin-inline: 16px;
    padding-inline: unset;
    padding-block: 40px;
    width: auto;
  }

  section[data-type="media-sliderblock"] > div {
    display: flex;
    min-width: 400vw;
    animation: 40s slide infinite linear;
    animation-play-state: running;
    white-space: nowrap;
    justify-content: space-evenly;
    align-items: center;
    gap: 15px;
  }

  /* Carousel Block */
  .carousel__scroll {
    grid-column: 1/5;
    width: calc(100% + var(--Pd));
    margin-left: calc(-1 * var(--Pm));
    padding: 0 var(--Pm);
  }

  .carousel__inner .aspectholder {
    height: 91.466667vw;
  }

  .carousel__inner > *:last-child {
    padding-right: var(--Pm);
  }

  .carousel__item {
    width: 91.46667vw !important;
  }

  .carousel__slideshow.layout_full,
  .carousel__slideshow.layout_half {
    grid-column: 1/5;
  }

  .carousel__slideshow .swiper-slide {
    grid-template-columns: repeat(4, 1fr);
  }

  .carousel__slideshow .aspectholder {
    grid-column: 1/5;
  }

  .carousel__slideshow .swiper-slide > span {
    grid-column: 1/2;
  }

  .carousel__slideshow .swiper-slide > p {
    grid-column: 2/5;
  }
}

@media screen and (max-width: 480px) {
  .partners-list__container {
    grid-template-columns: 1fr;
  }

  .partners-list__item .aspectholder {
    height: 91.466667vw;
  }
}
