:root {
  --text-black: #000;
  --text-light: #fff;
  --text-grey: #adbdcc;
  --body-font: "Roboto", sans-serif;
  --heading-font: "Anek Telugu", sans-serif;
  --h1-size: 9.4rem;
  --h1-height: 10.8rem;
  --h2-size: 5rem;
  --h2-height: 7.5rem;
  --h3-size: 4rem;
  --h4-size: 3.2rem;
  --h5-size: 2.8rem;
  --h6-size: 2.2rem;
  --p-size: 1.8rem;
  --p-height: 2.6rem;
  --body-font-size: 1.6rem;
  --subtitle-size: 1.7rem;
  --subtitle-height: 2.6rem;
  --secondary-text-size: 1.4rem;
  --secondary-text-height: 1.8rem;
  --btn-size: 1.6rem;
  --spacing-sm: 0.8rem;
  --spacing-md: 1.6rem;
  --spacing-lg: 3.2rem;
  --spacing-xl: 6.4rem;

  --standard-width: 114.4rem;

  --purple-1: #6962f7;
  --purple-2: #7000ff;
  --blue-1: #00d4ff;
  --primary-accent: #0a2540;
  --bg-white: #fff;
  --bg-light: #f7f9fc;
  --btn-hover-color: #6d7a88;

  --standard-box-shadow: 0px 2px 40px rgba(0, 0, 0, 0.15);
  --primary-gradient: linear-gradient(
    101.33deg,
    #08209a 0.76%,
    #6563ff 33.33%,
    #36c5f0 76.92%,
    #83e2ff 96.96%
  );
}
html {
  font-size: 62.5%; /*golden REM value*/
  width: 100%;
}

body {
  background-color: var(--bg-white);
  font-family: var(--body-font);
  font-size: var(--body-font-size);
  color: var(--text-black);
  width: 100%;
  margin: 0;
  box-sizing: border-box;
  padding: var(--spacing-sm) 0 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow-x: hidden;
}

main {
  margin: var(--spacing-xl) 0 0 0;
  width: 100%;
}

h1 {
  font-size: var(--h1-size);
  font-family: var(--heading-font);
  line-height: var(--h1-height);
  font-weight: 600;
  margin: 0;
  width: 100%;
  letter-spacing: -1px;
}

h2 {
  font-size: var(--h2-size);
  font-family: var(--heading-font);
  line-height: var(--h2-height);
  font-weight: 500;
  margin: 0;
  width: 100%;
  letter-spacing: -0.25px;
}

h3 {
  font-size: var(--h3-size);
  font-family: var(--heading-font);
  font-weight: 500;
  margin: 0;
  width: 100%;
}

h4 {
  font-size: var(--h4-size);
  font-family: var(--heading-font);
  font-weight: 500;
  margin: 0;
  width: 100%;
  letter-spacing: 0.25px;
}

h5 {
  font-size: var(--h5-size);
  font-family: var(--heading-font);
  font-weight: 500;
  margin: 0;
  width: 100%;
}

h6 {
  font-size: var(--h6-size);
  font-family: var(--heading-font);
  font-weight: 600;
  margin: 0;
  width: 100%;
}

a {
  text-decoration: none;
  color: var(--purple-1);
  font-size: 1.6rem;
  font-weight: 500;
  transition: color 0.25s ease;
}

a:hover {
  color: var(--primary-accent);
}

p {
  font-size: var(--p-size);
  line-height: var(--p-height);
  font-weight: 400;
  margin: var(--spacing-md) 0;
}

/* LAYOUT STYLES */

.two-col {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  box-sizing: border-box;
  width: 100%;
}

.two-col > .col-left {
  width: 50%;
  box-sizing: border-box;
  padding: 0 var(--spacing-md) 0 0;
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
}

.two-col > .col-right {
  width: 50%;
  box-sizing: border-box;
  padding: 0 0 0 var(--spacing-md);
  display: flex;
  flex-direction: column;
  align-items: start;
  justify-content: center;
}

.subtitle,
.subtitle2 {
  color: var(--purple-1);
  font-family: var(--heading-font);
  font-weight: 500;
  font-size: var(--subtitle-size);
  line-height: var(--subtitle-height);
}

.subtitle2 {
  color: var(--blue-1);
}

.secondary-text {
  font-size: var(--secondary-text-size);
  line-height: var(--secondary-text-height);
  color: var(--text-grey);
  letter-spacing: 0.25px;
}

.primary-button,
.secondary-button {
  font-family: var(--body-font);
  font-size: var(--btn-size);
  background-color: var(--primary-accent);
  color: var(--bg-light);
  padding: var(--spacing-sm) var(--spacing-md);
  letter-spacing: 1.25px;
  font-weight: 700;
  border-radius: 20px;
  border: none;
  transform: all 0.25s ease;
}

.primary-button:hover {
  background-color: var(--btn-hover-color);
  cursor: pointer;
}

.secondary-button {
  background-color: transparent;
  padding: 0;
  color: var(--primary-accent);
}

.secondary-button:hover {
  opacity: 0.75;
  cursor: pointer;
}

.with-icon {
  display: flex;
  align-items: center;
  justify-content: center;
}

.with-icon > img {
  transition: transform 0.25s ease-out;
}

.with-icon:hover > img {
  transform: translateX(4px);
}

.section-container {
  width: 100%;
  max-width: var(--standard-width);
}

.card {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: var(--spacing-sm) var(--spacing-md) var(--spacing-sm);
}

.card .icon {
  height: 5rem;
  margin: 0 0 var(--spacing-sm) 0;
}

.card .card-title {
  font-size: var(--h6-size);
  font-family: var(--heading-font);
  font-weight: 600;
  margin: 0;
  width: 100%;
}

/* NAVBAR */

header {
  display: flex;
  justify-content: center;
  align-items: center;
}

.navbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  vertical-align: center;
  width: 100%;
  padding: 0 var(--spacing-md);
  margin: 0 0 var(--spacing-xl) 0;
}

.main-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  list-style: none;
}

.main-nav a {
  color: var(--text-light);
  margin: 0 var(--spacing-md);
  font-weight: 700;
}

.main-nav a:hover {
  text-decoration: underline;
}

.main-nav_button {
  background: rgba(250, 250, 250, 0.25);
}

.main-nav_button:hover {
  background: rgba(250, 250, 250, 0.5);
}

/* ANIMATED GRADIENT */

#gradient-canvas {
  width: 200%;
  height: 970px;
  transform: rotate(-10deg);
  position: absolute;
  top: -60rem;
  z-index: -1;
  left: -50%;
  --gradient-color-1: #ef008f;
  --gradient-color-2: #6ec3f4;
  --gradient-color-3: #7038ff;
  --gradient-color-4: #ffba27;
}

/* HERO CONTENT */
.hero {
  width: 100%;
  display: flex;
  justify-content: center;
}
.button-container {
  display: flex;
  margin: var(--spacing-md) 0;
}

.button-container button:nth-of-type(2) {
  margin: 0 0 0 var(--spacing-md);
  color: var(--purple-2);
}

.hero p {
  max-width: 48rem;
}

.hero .hero-phone-container {
  height: 56.4rem;
  align-items: flex-end;
}

.hero-phone {
  height: 62.8rem;
  transform: translate(3.2rem, -3.2rem);
}

/* Partners Section */
.partners-section {
  width: 100%;
  display: flex;
  justify-content: center;
}
.partners-grid {
  display: grid;
  grid-template-areas:
    "logo logo logo logo"
    "logo logo logo logo";
  margin: var(--spacing-xl) 0;
  column-gap: var(--spacing-md);
  row-gap: var(--spacing-lg);
}

.partners-grid img {
  height: 6rem;
  place-self: center;
}

/* Unified platform */
.unified-platform-section {
  background-color: var(--bg-light);
  width: 100%;
  display: flex;
  justify-content: center;
}
.unified-platform {
  padding: var(--spacing-xl) 0;
}

.unified-platform > h3 {
  width: 50%;
  font-weight: 700;
  margin: 0 0 var(--spacing-lg) 0;
}

.unified-platform .primary-button {
  margin: var(--spacing-md) 0;
  background-color: var(--purple-1);
}

.unified-platform .primary-button:hover {
  background-color: var(--primary-accent);
}

/* GRAPHIC GRID */
.graphic-section {
  background-color: var(--bg-light);
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
  z-index: -1;
}

.graphic-grid::after {
  content: "";
  width: 100%;
  height: 20%;
  background-color: var(--bg-light);
  position: absolute;
  bottom: -20%;
  left: 0;
  z-index: -2;
}
.graphic-grid {
  display: grid;
  grid-template-areas:
    "card slack slack"
    "phone slack slack"
    "phone dash dash";
  grid-gap: var(--spacing-lg);
  padding: var(--spacing-lg) 0;
}

#card {
  grid-area: card;
  width: 100%;
  box-shadow: var(--standard-box-shadow);
}

#slack {
  grid-area: slack;
  width: 100%;
  box-shadow: var(--standard-box-shadow);
}
#phone {
  grid-area: phone;
  width: 100%;
  box-shadow: var(--standard-box-shadow);
}

#dash {
  grid-area: dash;
  width: 100%;
  box-shadow: var(--standard-box-shadow);
}

/* INTEGRATION SECTION */
.integration-section {
  margin: calc(var(--spacing-xl) * 3) 0;
  color: var(--bg-white);
  width: 100%;
  display: flex;
  justify-content: center;
  position: relative;
}

.integration-section::before {
  content: "";
  background-color: var(--primary-accent);
  width: 100%;
  height: 150%;
  position: absolute;
  top: -25%;
  z-index: -1;
  transform: skewY(-10deg);
}

.integration-section > .two-col > .col-left > h2 {
  font-weight: 700;
}

.integration-section .card-container {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: var(--spacing-lg) 0;
}

.integration-section .primary-button {
  background-color: var(--blue-1);
  color: var(--text-black);
}

.integration-section .secondary-button {
  color: var(--blue-1);
}

.integration-section .col-right img {
  width: 100%;
  padding: var(--spacing-sm);
  border-radius: 20px;
}

/* WHY SWIPE */

.why-swipe-section {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: calc(var(--spacing-xl) * 3) 0;
}

.why-swipe-section h2 {
  font-weight: 700;
  margin: 0 0 var(--spacing-lg) 0;
}

.why-swipe-section .card-container {
  display: flex;
}

.why-swipe-section .secondary-text {
  color: var(--text-black);
}

/* GLOBAL SECTION */

.global-section {
  width: 100%;
  display: flex;
  justify-content: center;
  color: var(--text-light);
  position: relative;
  padding: calc(var(--spacing-xl) * 3) 0;
}

.global-section::before {
  content: "";
  width: 100%;
  height: 50%;
  position: absolute;
  top: 0;
  z-index: -1;
  background-color: var(--primary-accent);
  transform: skewY(-10deg);
}
.global-section::after {
  content: "";
  width: 100%;
  height: 60%;
  position: absolute;
  bottom: 20%;
  z-index: -1;
  background-color: var(--primary-accent);
}

.global-section a {
  color: var(--blue-1);
}
.global-section a:hover {
  color: var(--text-light);
}

.global-section .card-container {
  display: flex;
  margin: calc(var(--spacing-xl) * 2) 0;
}

.global-section .card {
  width: 25%;
  box-sizing: border-box;
  padding: 0 var(--spacing-sm) 0 0;
  margin: 0 var(--spacing-sm) 0 0;
}

.global-section .card h6 {
  font-weight: 300;
  border-left: 2px solid var(--blue-1);
  padding: 0 0 0 var(--spacing-sm);
  line-height: 2.8rem;
}

.globe-image {
  max-width: 844px;
  opacity: 25%;
  position: absolute;
  top: 11%;
}

/* VIRTUAL EVENTS */

.virtual-events-section {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: calc(var(--spacing-xl) * 3) 0;
}

.virtual-events-section h2 {
  font-weight: 700;
}
.virtual-events-section .primary-button {
  background-color: var(--purple-1);
  margin: var(--spacing-md) 0 0 0;
}
.virtual-events-section .primary-button:hover {
  background-color: var(--primary-accent);
}

.swipe-sessions-card {
  width: 54rem;
  height: 44.6rem;
  box-shadow: var(--standard-box-shadow);
  border-radius: 20px;
  overflow: hidden;
}
.virtual-events-section .col-left {
  height: 44.6rem;
  padding: 0 var(--spacing-xl) 0 0;
}
.swipe-sessions-card .card-top {
  width: 100%;
  height: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.swipe-sessions-card .card-top::before {
  content: "";
  background: var(--primary-gradient);
  width: 100%;
  height: 150%;
  position: absolute;
  top: -40%;
  transform: skewY(-5deg);
  z-index: -1;
}

#sessions-logo {
  width: 33.8rem;
}

.virtual-events-section .sessions-avatars {
  position: absolute;
  bottom: -7rem;
  left: var(--spacing-xl);
}
.virtual-events-section .sessions-avatars img {
  width: 8rem;
}

#sessions-avatar-2 {
  position: absolute;
  left: var(--spacing-xl);
}

.virtual-events-section .card-bottom {
  width: 100%;
  height: 50%;
  box-sizing: border-box;
  padding: var(--spacing-xl);
}

.virtual-events-section .subtitle {
  margin: var(--spacing-lg) 0 0 0;
}

.virtual-events-section .secondary-text {
  color: var(--text-black);
  font-weight: 700;
  width: 50%;
}

/* GETTING STARTED SECTION */

.getting-started-section {
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 0 0 calc(var(--spacing-xl) * 3) 0;
}

.getting-started-section .primary-button {
  background-color: var(--purple-1);
  margin: var(--spacing-md) 0 0 0;
}

.getting-started-section .primary-button:hover {
  background-color: var(--primary-accent);
}

.getting-started-section .card-container {
  display: flex;
  justify-content: center;
}

.getting-started-section .card button {
  color: var(--purple-2);
}

/* FOOTER */

.footer {
  width: 100%;
  display: flex;
  justify-content: center;
  background-color: var(--bg-light);
  padding: var(--spacing-xl) 0;
}

#footer-logo {
  -maxwidth: 10.8rem;
  margin: 0 0 var(--spacing-md) 0;
}

.footer .section-container {
  display: flex;
}

.footer .col {
  width: 25%;
}
.footer .col ul {
  list-style: none;
  padding: 0;
}

.footer .col li {
  margin: var(--spacing-md) 0;
}
.footer .col a {
  color: var(--text-dark);
  font-weight: 400;
  vertical-align: center;
  display: flex;
  align-items: center;
  margin: var(--spacing-sm) 0;
}
.footer .col a:hover {
  color: var(--purple-1);
  text-decoration: underline;
}
.footer .icons-link {
  display: flex;
  flex-direction: column;
  margin: var(--spacing-sm) 0;
}

.footer .icons-link img {
  width: 2.4rem;
  margin: 0 var(--spacing-sm) 0 0;
}

.footer h3 {
  font-size: var(--h6-size);
  font-weight: 700;
}
