/*
* Balanced
* SUI CSS
* Version 1
*/
@view-transition {
    navigation: auto;
}
:root {
	--balanced-green: #2ca9b7;
	--balanced-text-white: rgba(255,255,255,0.75);
}
body#sui {
	position: relative;	
}
body#sui:after {
	background: url(../img/feature/background-flow-static.svg) no-repeat center -310px;
	background-size: 2200px;
	content: '';
	display: block;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}


/* Hero section ----------------------------------------------------------------*/

.hero {
	margin-bottom: 200px;
	margin-top: 0;
}
.hero .intro h1,
.hero .intro p {
	text-align: center;
}
.hero .intro h1 {
	letter-spacing: -0.02em;
	line-height: 1.1;
	max-width: 100%;
}
.hero .intro p {
	display: block;
	font-size: 23px;
	margin-left: auto;
	margin-right: auto;
	max-width: 570px;
	width: 100%;
}
.hero .intro h1 span {
	color: var(--balanced-green);
}
.hero h1.separator:after {
	margin-left: calc(50% - 62px);
}
.hero-graphic-container {
	margin-left: -20%;
	margin-bottom: -450px;
	width: 135.5%;
}
.hero-graphic-container object {
	height: auto;
	margin-left: -34%;
	margin-top: -180px;
	width: 130%;
}

/* Content section */

section:not(.hero) p,
section:not(.hero) li {
	font-size: 20px;
	line-height: 1.7;
}
#sui section li {
	color: var(--balanced-text-white);
}
h2 {
	line-height: 1.2;
}
ul {
	padding-left: 1rem;
}
main section li::marker {
	color: var(--balanced-green);
}
.emphasis-text {
	color: var(--balanced-green);
	display: block;
}
section {
  margin-bottom: 300px;
}
section:last-of-type {
  margin-bottom: 200px;
}
/*
main .button {
	background: #2BA6B4;
  	background: linear-gradient(180deg,rgba(43, 166, 180, 1) 0%, rgba(24, 92, 119, 1) 120%);
	box-shadow: 0px 0px 0px #30BACC;
	margin-top: 20px;
	padding-bottom: 12px;
	padding-top: 10px;
	transition: all 0.2s ease;
}
main a.button:hover {
	box-shadow: 0px 0px 30px #30BACC;
	transition: all 0.2s ease;
}*/

/* TLDR boxes */

.tldr {
	position: relative;
	z-index: 1;
}
.tldr .grid-cell {
	background: #2CA9B7;
	background: linear-gradient(180deg,rgb(27, 144, 157) -20%, rgb(12, 42, 77) 100%);
	border: none;
	padding: 0;
	position: relative;
}
.tldr .grid-cell div {
	height: 100%;
}
.tldr .grid-cell:nth-of-type(1) > div {
  background: url(../img/feature/grid-cell-background8.svg) no-repeat center bottom;
	background-size: 120%;
	border-radius: 25px;	
}
.tldr .grid-cell:nth-of-type(2) > div {
  	background: url(../img/feature/grid-cell-background11.svg) no-repeat right 0px;
  	background-size: cover;
  	border-radius: 25px;	
}
.tldr .grid-cell:nth-of-type(3) > div {
  	background: url(../img/feature/grid-cell-background13.svg) no-repeat center bottom;
  	background-size: cover;
  	border-radius: 25px;	
}
.tldr .grid-cell > div > div {
	border-radius: 25px;
	height: 100%;
	padding: 35px;
}
.hero .tldr .grid-cell:nth-of-type(1) {
	box-shadow: none;
}
.tldr .grid-cell:after {
	background: linear-gradient(180deg,rgba(122, 208, 223, 0.8) 0%, rgba(23, 77, 109, 1) 100%);
	border-radius: 26px;
	content: '';
	display: block;
	height: calc(100% + 4px);
	left: -2px;
	position: absolute;
	top: -2px;
	width: calc(100% + 4px);
	z-index: -1;
}
.tldr .grid-cell h2 {
	font-size: 23px;
	line-height: 1.35;
}
.tldr .grid-cell p {
	line-height: 1.6;
}
#sui .tldr object {
	height: auto;
	margin-top: -20px;
	margin-bottom: -20px;
	max-width: 100%;
	width: 100%;
}


/* Overview section --------------------*/

#use-section > div {
	align-items: stretch;
}
#use-section div {
	position: relative;
}
#use-section object {
	aspect-ratio: 1.45/1;
	display: block;
	height: auto;
	left: -45%;
	position: absolute;
	top: -165px;
	width: 200%;
	z-index: -1;
}

/* Backgrounds for graphics */

/*#use-section .grid-cell:nth-of-type(2) object {
	background: url(../img/feature/background-flow-static-light.svg) no-repeat center center;
	background-size: contain;
}*/
#stable-section object {
	background: url(../img/feature/background-earn-static.svg) no-repeat center center;
	background-size: cover;
}
#swap-section object {
	background: url(../img/feature/background-trade3-static.svg) no-repeat center center;
	background-size: contain;
}
#variable-section object {
	background: url(../img/feature/background-flow-space-static.svg) no-repeat center center;
	background-size: contain;
}



/* Swap section --------------------*/

#swap-section {
	margin-bottom: 450px;
}
#swap-section > div {
	align-items: stretch;
}
#swap-section div {
  position: relative;
}
#swap-section object {
	aspect-ratio: 1.45/1;
	display: block;
	height: auto;
	left: -25%;
	position: absolute;
	top: -100px;
	width: 150%;
  	z-index: -1;
}


/* Stable section --------------------*/

#stable-section {
	margin-bottom: 400px;
}
#stable-section > div {
	align-items: stretch;
}
#stable-section div {
	position: relative;
}
#stable-section object {
	aspect-ratio: 1/1.03;
	display: block;
	height: auto;
	left: -20%;
	position: absolute;
	top: -150px;
	width: 125%;
  	z-index: -1;
}

/* Variable section --------------------*/

#variable-section {
	margin-bottom: 350px;
}
#variable-section object {
	aspect-ratio: 1/1.004;
	display: block;
	height: auto;
	left: -20%;
	position: absolute;
	top: -210px;
	width: 130%;
  	z-index: -1;
}


/* Everywhere section --------------------*/

#everywhere-section object {
	display: block;
	height: auto;
	margin: 60px auto 50px auto;
	width: 100%;
}
#everywhere-section .mobile-image {
	display: none;
}



/* ==========================================================================
		1500px and below
========================================================================== */

@media (max-width: 1500px) {
	.wrapper {
		max-width: 85%;
	}
}




/* ==========================================================================
1300px and below
========================================================================== */

@media (max-width: 1300px) {
	.wrapper {
		max-width: 85%;
	}
	.hero-graphic-container {
		margin-bottom: -400px;
	}
	.hero-graphic-container object {
		margin-top: -120px;
	}
	#stable-section object {
		margin-top: 70px;
	}
	#variable-section object {
		top: -140px;
	}
}



/* ==========================================================================
1000px and below
========================================================================== */

@media (max-width: 1000px) {
	body#sui:after {
		background: url(../img/feature/background-flow-static.svg) no-repeat center -470px;
		background-size: 2200px;
	}
	#use-section object {		
		top: -100px;
  	}
	ul.links {
		display: flex;
		flex-wrap: wrap;
		gap: 20px;
		justify-content: flex-end;
	}
	ul.links li {
		align-self: center;
		margin: 0;
	}
	ul.links li:has(.button) {
		width: 100%;
	}
}


/* ==========================================================================
850px and below
========================================================================== */

@media (max-width: 850px) {
	body#sui:after {
		display: none;
	}
	.hero-graphic-container object {
		margin-top: 0px;
	}
	body#sui .hero .hero-graphic-container {
		display: block;
		margin-top: -80px;
		position: relative;
		z-index: -1;
	}
	body#sui .hero .hero-graphic-container:after {
		background: url(../img/feature/background-flow-static.svg) no-repeat center center;
		background-size: 100%;
		content: '';
		display: block;
		position: absolute;
		height: 150%;
		left: -23%;
		top: -30.5%;
		width: 150%;
		z-index: -1;
	}
	.hero-graphic-container {
		margin-bottom: -350px;
	}
	.tldr .grid-cell > div > div {
		padding: 25px;
	}
	#sui .tldr .panel object {
		margin-bottom: 0;
		margin-top: 0;
	}
	.hero p {
		max-width: 100%;
	}
	.hero .intro p {
		font-size: 20px;
	}
}


/* ==========================================================================
800px and below
========================================================================== */

@media (max-width: 800px) {
	#sui .wrapper {
		max-width: 100%;
	}
	.hero {
		margin-bottom: 50px; 
	}
	#sui h2:not(.tldr *) {
		font-size: 42px;
	}
	h2.text-center {
		text-wrap: pretty;
	}
	.hero-graphic-container {
		margin-bottom: -190px;
	}
	section {
		margin-bottom: 50px;
	}
	#sui main .grid {
		flex-direction: column;
	}
	#sui main .tldr {
		gap: 25px;
	}
	#sui .tldr object {
		max-width: 40%;
	}
	#sui .tldr .grid-cell:nth-of-type(1) object {
		margin-bottom: -15px;
		margin-left: -20px;
		max-width: 44%;
	}
	#sui .tldr .grid-cell:nth-of-type(3) object {
		margin-bottom: -25px;
		margin-left: -15px;
	}
	#sui .tldr .grid-cell div div {
    	padding-left: 25px;
		padding-right: 25px;
	}
	#use-section object {		
		left: -25%;
		margin-bottom: -220px;
		position: relative;
		top: -100px;
		width: 150%;
  	} 
	#stable-section {
		margin-bottom: 100px;
	}
	#swap-section {
		margin-bottom: 180px;
	}
	#variable-section {
		margin-bottom: 180px;
	}
	#sui #use-section .grid .grid-cell:nth-of-type(1),
	#sui #swap-section .grid .grid-cell:nth-of-type(1) {
		order: 2;
	}
	#sui #swap-section object {
		left: -10%;
		margin-bottom: -50px;
		margin-top: 50px;
		position: relative;
  		top: 0px;
	  	width: 120%;
	}
	#sui #stable-section object {
		left: 0%;
		margin-bottom: -50px;
		margin-top: -25px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	#sui #variable-section object {
		left: 0%;
		margin-bottom: -100px;
		margin-top: -100px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	ul.links {
		justify-content: center;
	}
	#everywhere-section .desktop-image {
		display: none;
	}
	#everywhere-section .mobile-image {
		display: block;
	}
}


/* ==========================================================================
600px and below
========================================================================== */

@media (max-width: 600px) {
	.hero-graphic-container {
		margin-bottom: -180px;
	}
	#sui .hero h1 {
		font-size: 40px;
	}
	#sui .hero p {
		font-size: 18px;
		line-height: 1.5;
	}
	#sui #stable-section {
		margin-bottom: 50px;
	}
	#sui #swap-section {
		margin-bottom: 50px;
	}
	#sui #variable-section {
		margin-bottom: 100px;
	}
	#sui #everywhere-section {
		margin-bottom: 100px;
	}
	#sui #everywhere-section object {
		left: 0%;
		margin-bottom: 25px;
		margin-top: 25px;
		width: 100%;
	}
	#sui .tldr {
		flex-direction: column;
		gap: 25px;
	}
	#sui #use-section {
		margin-bottom: 100px;
	}
	#use-section object {		
		left: -50%;
		margin-bottom: -200px;
		width: 200%;
	}
}



/* ==========================================================================
550px and below
========================================================================== */

@media (max-width: 550px) {
	body#sui .hero .hero-graphic-container {
		margin-bottom: -130px;
		margin-top: -50px;
	}
	#sui main .tldr {
		flex-direction: column;
	}
	#sui .tldr .grid-cell:nth-of-type(1) object {
		max-width: 50%;
	}
	#sui .tldr .grid-cell:nth-of-type(2) object {
		margin-bottom: -10px;
	}
	#sui #use-section object {
		margin-bottom: -260px;
	}
	#sui #stable-section object,
	#sui #swap-section object {
		margin-bottom: -25px;
	}
	#sui #variable-section object {
		margin-bottom: -60px;
		margin-top: -50px;
	}
	section:not(.hero) p, section:not(.hero) li {
		font-size: 19px;
		line-height: 1.6;
	}
}





/* ==========================================================================
500px and below
========================================================================== */

@media (max-width: 500px) {
	#sui #variable-section object {
		margin-bottom: -50px;
	}
}


/* ==========================================================================
450px and below
========================================================================== */

@media (max-width: 450px) {
	#sui #swap-section object {
		margin-bottom: 0;
	}
	#sui #swap-section object {
		margin-bottom: 0;
	}
	#sui #variable-section object {
		margin-bottom: -50px;
		margin-top: 0;
	}
}




/* ==========================================================================
400px and below
========================================================================== */

@media (max-width: 400px) {
	h1 {
		font-size: 40px;
	}
}
