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


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

.hero {
	margin-top: 0;
	margin-bottom: 200px;
}
.hero .intro h1,
.hero .intro p {
	text-align: center;
}
.hero .intro h1 {
	letter-spacing: -0.02em;
	line-height: 1.1;
	margin-bottom: 15px;
	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: -10%;
	margin-bottom: -250px;
	width: 120%;
}
.hero-graphic-container object {
	height: auto;
	margin-left: -5%;
	margin-top: -80px;
	width: 110%;
}

/* Content section  --------------------------------------*/

section:not(.hero) p,
section:not(.hero) li {
	font-size: 20px;
	line-height: 1.7;
}
#stellar section li {
	color: var(--balanced-text-white);
}
h2 {
	line-height: 1.2;
}
.emphasis-text {
	color: var(--balanced-green);
	display: block;
}
section {
  margin-bottom: 300px;
}

section:last-of-type {
  margin-bottom: 200px;
}

/* TLDR boxes */

.tldr {
	position: relative;
	z-index: 1;
}
.tldr .grid-cell {
	background: #2CA9B7;
	background: linear-gradient(180deg,rgba(44, 169, 183, 1) -20%, rgba(12, 42, 77, 1) 100%);
	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 {
	/*backdrop-filter: blur(4px);*/
	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: 25px;
  	content: '';
	display: block;
	height: calc(100% + 2px);
	left: -1px;
	position: absolute;
	top: -1px;
	width: calc(100% + 2px);
	z-index: -1;
}
/*
.tldr .grid-cell:before {
	background: #48C2D2;
	border-radius: 25px;
	box-shadow: -20px -20px 30px rgba(0,0,0,0.2);
  	content: '';
	display: block;
	height: calc(100% + 4px);
	left: -2px;
	position: absolute;
	top: -5px;
	width: calc(100% + 4px);
	z-index: -2;
}*/
.tldr .grid-cell h2 {
	font-size: 23px;
	line-height: 1.35;
}
.tldr .grid-cell p {
	line-height: 1.6;
}
#stellar .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 {
	display: block;
	aspect-ratio: 1.45/1;
	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 {
	display: block;
	aspect-ratio: 1.45/1;
	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%;
}



/* ==========================================================================
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: -240px;
	}
	#stable-section object {
		margin-top: 70px;
	}
	#variable-section object {
		top: -140px;
	}
}

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

@media (max-width: 1000px) {
	body#stellar:after {
		background: url(../img/feature/hero-stellar-background.svg) no-repeat center -140px;
		background-size: 1500px;
	}
	h2 {
		line-height: 1.15;
	}
	#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#stellar:after {
		display: none;
	}
	.hero-graphic-container object {
		margin-top: 0px;
	}
	body#stellar .hero .hero-graphic-container {
		margin-top: -50px;
	}
	.hero-graphic-container {
		margin-bottom: -180px;
	}
	/*.tldr .panel {
		padding: 24px;
	}*/
	.tldr .grid-cell > div > div {
		padding: 25px;
	}
	#stellar .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) {
	#stellar .wrapper {
		max-width: 100%;
	}
	#stellar h2:not(.tldr *) {
		font-size: 42px;
	}
	section {
		margin-bottom: 50px;
	}
	#stellar main .grid {
		flex-direction: column;
	}
	#stellar main .tldr {
		gap: 25px;
	}
	#stellar .tldr object {
		max-width: 40%;
	}
	#stellar .tldr .grid-cell:nth-of-type(1) object {
		margin-bottom: -15px;
		margin-left: -20px;
		max-width: 44%;
	}
	#stellar .tldr .grid-cell:nth-of-type(3) object {
		margin-bottom: -25px;
		margin-left: -15px;
	}
	#stellar .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%;
  	} 
	#stellar #use-section .grid .grid-cell:nth-of-type(1),
	#stellar #swap-section .grid .grid-cell:nth-of-type(1) {
		order: 2;
	}
	#stellar #swap-section object {
		left: -10%;
		margin-bottom: -50px;
		margin-top: 50px;
		position: relative;
  		top: 0px;
	  	width: 120%;
	}
	#stellar #stable-section object {
		left: 0%;
		margin-bottom: -50px;
		margin-top: -25px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	#stellar #variable-section object {
		left: 0%;
		margin-bottom: -100px;
		margin-top: -100px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	#stellar #use-section .grid .grid-cell:nth-of-type(1),
	#stellar #swap-section .grid .grid-cell:nth-of-type(1) {
		order: 2;
	}
	#stellar #swap-section object {
		left: -10%;
		margin-bottom: -50px;
		margin-top: 50px;
		position: relative;
  		top: 0px;
	  	width: 120%;
	}
	#stellar #stable-section object {
		left: 0%;
		margin-bottom: -50px;
		margin-top: -25px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	#stellar #variable-section object {
		left: 0%;
		margin-bottom: -100px;
		margin-top: -100px;
		position: relative;
  		top: 0;
	  	width: 100%;
	}
	ul.links {
		justify-content: center;
	}
}


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

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



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

@media (max-width: 550px) {
	#stellar main .tldr {
		flex-direction: column;
	}
	#stellar .tldr .grid-cell:nth-of-type(1) object {
		max-width: 50%;
	}
}


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

@media (max-width: 500px) {
  body#stellar:after {
		background: url(../img/feature/hero-stellar-background.svg) no-repeat center -90px;
		background-size: 1000px;
	}
	body#stellar .hero .hero-graphic-container {
		margin-top: 0;
	}
	.hero-graphic-container object {
		margin-bottom: 50px;
		
	}
	#stellar #variable-section object {
		margin-bottom: -50px;
	}
}


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

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




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

@media (max-width: 400px) {

	/* HTML elements */

	h1 {
		font-size: 40px;
	}
}
