
	:root {
	  --orange: #ff8f2d;
	  --lila: #3c0a5b;
	  --dark-lila: #3a0b3a;
	  --pink: #ff8db1;
	  --text-padding: clamp(0px, calc((100vw - 1000px)/2), 75px);
	  --min-padding: 25px;
	  --text-opacity: 0.7;
	  --border-radius-default: 32px;
	}
	
	*, html {
		padding: 0;
		margin: 0;
	}
	
	*, *::before, *::after {
	  box-sizing: border-box;
	}
	
	body {
		font-family: schoolbook, serif;
		background-color: var(--dark-lila);
	}
	
	#bg-canvas-container {
	  position: fixed;
	  top: 0;
	  left: 0;
	  right: 0;
	  bottom: 0;
	  background-image: url(./assets/Backgrund_1920x1080_orange.jpg);
	  background-repeat: no-repeat;
	  background-size: cover;
	  background-position: top;
	  z-index: -200;
	}
	
	main {
		width: 100%;
		max-width: 1000px;
		min-height: 100vh; 
		padding: 0 var(--min-padding) 100px var(--min-padding);
		margin: 0 auto;
	}
	
	figure {
		margin: 0 auto 40px auto;
		display: block;
		max-width: 100%;
		box-sizing: border-box;
	}
	
	figure img {
		width: 100%;
		height: auto;
		display: block;
		border-radius: var(--border-radius-default);
	}
	
	figcaption {
		font-family: schoolbook, serif;
		font-size: 14px;
		color: var(--dark-lila);
		opacity: var(--text-opacity);
		margin-top: 10px;
		margin-left: max(22px, var(--text-padding));
		text-align: left;
	}
	
	h1, h2 {
		font-family: bebas-kai, sans-serif;
		color: var(--dark-lila); 
	}
	
	h1 {
		text-align: center;
		text-transform: uppercase;
		font-size: 86px;
		line-height: 86px;
		padding: 160px 20px 0 20px;
	}
	
	h2 {
		font-size: 32px;
		line-height: 32px;
		text-align: center;
		padding: 33px 0 40px 0;
		text-wrap: balance;
	}
	
	h3, h4, h5 {
	  font-family: schoolbook, serif;
	  color: var(--dark-lila);
	  font-weight: bold;
	  text-align: left;
	}
	
	h3 { 
		font-size: 29px; 
		line-height: 29px;
		padding: 20px 0 9px 0;
	}
	
	h4 {
		font-size: 24px; 
		line-height: 24px;
		padding: 20px 0 8px 0;
	}
	
	h5 {
		font-size: 20px;
		line-height: 20px;
		padding: 10px 0 4px 0;
		opacity: var(--text-opacity);
	}
	
	p, a, ul, li {
	  font-family: schoolbook, serif;
	  font-size: 19px;
	  line-height: 25px;
	  color: var(--dark-lila);
	  opacity: var(--text-opacity);
	  padding: 0 0 22px 0;
	  text-decoration: none;
	}
	
	blockquote {
	  font-family: schoolbook, serif;
	  font-size: 19px;
	  line-height: 25px;
	  color: var(--dark-lila);
	  opacity: var(--text-opacity);
	  text-decoration: none;
	  
	  border: 1px solid var(--lila); 
	  border-radius: var(--border-radius-default);
	  padding: max(var(--text-padding),22px);
	  margin: 0;
	  background-color: transparent;
	  max-width: 100%;
	  box-sizing: border-box;
	}
	
	section {
	  font-family: schoolbook, serif;
	  font-size: 19px;
	  line-height: 25px;
	  color: var(--dark-lila);
	  text-decoration: none;
	  
	  border: 1px solid var(--lila); 
	  border-radius: var(--border-radius-default);
	  padding: max(var(--text-padding),22px);
	  margin: 0 0 22px 0;
	  background-color: transparent;
	  max-width: 100%;
	  box-sizing: border-box;
	}
	
	ul {
	  list-style: none;
	}
	
	li {
		padding: 6px 0 0 0;
		opacity: 1;
	}
	
	a {
	  font-family: schoolbook, serif;
	  font-size: 19px;
	  line-height: 25px;
	  color: var(--dark-lila);
	  opacity: var(--text-opacity);
	  padding: 0;
	  text-decoration: none;
	  transition: opacity 0.4s;
	}
	
	a:hover {
	  opacity: 1;
	  text-decoration: underline;
	}
	
	main h2, main h3, main h4, main h5, main p, main a, main ul {
		padding-left: var(--text-padding);
		padding-right: var(--text-padding);
	}
	
	main section h2, main section h3, main section h4, main section h5, main section p, main section a, main section ul {
		padding: 0;
	}
	
	main p a {
	  font-family: schoolbook, serif;
	  font-size: 19px;
	  line-height: 25px;
	  color: var(--dark-lila) !important;
	  opacity: 1;
	  padding: 0;
	  text-decoration: underline;
	  transition: opacity 0.4s;
	}
	
	a:hover {
	  opacity: 1;
	  text-decoration: underline;
	}
	
	.instagram-link {
		
	}
	
	nav {
	  position: fixed; 
	  top: 0;
	  left: 0;
	  width: 100%;
	  heigth: 100%;
	}
	
	#nav-header {
		position: absolute;
		right: 140px;
		top: 70px;
		text-transform: uppercase;
		color: var(--dark-lila); 
		font-family: bebas-kai, sans-serif;
		font-size: 23px;
		z-index: 2;
	}
	
	#nav-header {
		position: absolute;
		right: 140px;
		top: 70px;
		z-index: 2;
	}
	
	#nav-header a {
		text-transform: uppercase;
		color: var(--dark-lila); 
		font-family: bebas-kai, sans-serif;
		font-size: 23px;
		opacity: 1.0;
	}
	
	a:hover {
	  opacity: 1;
	  text-decoration: underline;
	}
	
	#hamburger {
	  position: fixed;
	  top: 40px;
	  right: 40px;
	  
	  width: 78px;
	  height: 78px;
	  
	  border-radius: 50%;
	  background-color: var(--dark-lila);		
	  cursor: pointer;
	
	  transition: transform 0.4s ease;
	  display: block;
	}
	
	#hamburger:hover {
		transform: scale(1.07);
	}
	
	#hamburger:hover #hamburger-line-two {
		width: 28px;
	}
	
	#hamburger:hover #hamburger-line-one {
		width: 20px;
	}
	
	#hamburger-line-one,
	#hamburger-line-two {
	  position: absolute;
	  left: 32%; 
	  background-color: #fff;
	  height: 2px;
	  border-radius: 2px;
	  transition: all 0.4s ease;
	  transform-origin: left center;
	}
	
	#hamburger-line-one {
	  width: 28px;
	  top: 44%;
	  transform: rotate(0deg);
	}
	
	#hamburger-line-two {
	  width: 20px;
	  top: 55%;
	  transform: rotate(0deg);
	}
	
	#hamburger.active #hamburger-line-one,
	#hamburger.active #hamburger-line-two {
	  left: 50%;
	  top: 50%;
	  width: 28px;
	  height: 3px;
	  transform-origin: center center;
	  background-color: black;
	}
	
	@media (max-width: 768px) {
	  #hamburger {
		width: 64px;
		height: 64px;
		top: var(--min-padding);
		right: var(--min-padding);
	}
	  #nav-header {
		  position: absolute;
		  right: 105px;
		  top: 45px;
	   }
	  #hamburger-line-one {
		width: 24px;
		transform: rotate(0deg);
	  }
	  #hamburger-line-two {
		width: 16px;
		transform: rotate(0deg);
	  }
	  #hamburger:hover #hamburger-line-two {
		  width: 24px;
	  }
	  #hamburger:hover #hamburger-line-one {
		  width: 16px;
	  }
	  
	  #hamburger.active #hamburger-line-one,
	  #hamburger.active #hamburger-line-two {
		left: 50%;
		top: 50%;
		width: 24px;
		height: 3px;
		transform-origin: center center;
		background-color: black;
	  }
	}
	
	#nav-header.active {
	  position: fixed;
	}
	
	#nav-header.active a {
		color: white;
	}
	
	
	#hamburger.active {
	  background-color: #fff;
	}
	
	#hamburger.active #hamburger-line-one {
	  transform: translate(-50%, -50%) rotate(45deg);
	}
	
	#hamburger.active #hamburger-line-two {
	  transform: translate(-50%, -50%) rotate(-45deg);
	}
	
	#nav-overlay {
	  position: fixed;
	  top: 0;
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background-color: var(--dark-lila);
	
	  transition: all 0.4s ease-in-out;
	  
	  pointer-events: all;
	  opacity: 0; 
	  visibility: hidden;
	  overflow: hidden;
	}
	
	#nav-overlay.active {
	  opacity: 1;
	  visibility: visible;
	}
	
	#nav-overlay-container {
		width: 100%;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	
	nav ul {
	  list-style: none;
	  padding: 0;
	  margin: 0;
	  text-align: center;
	}
	
	nav ul li {
	  margin: 30px 0;
	}
	
	#nav-overlay-container ul li a {
	  opacity: 1 !important;	
	  display: block; 
	  color: white;
	  text-decoration: none;
	  text-align: center;
	  text-transform: uppercase;
	  white-space: nowrap;
	  
	  font-family: bebas-kai, sans-serif;
	  font-size: 32px;
	  line-height: 36px;
	  
	  border: 2px solid rgba(255, 255, 255, 0.5);
	  padding: 25px;
	  min-width: 60vw;
	  border-radius: 45px;
	  
	  transition: border, outline-width  0.3s;
	  cursor: pointer;
	  
	  outline-width: 0;
	  outline-style: solid;
	  outline-offset: -1px;
	}
	
	#nav-overlay-container ul li a:hover {
	  border: 2px solid rgba(255, 255, 255, 1);
	  outline-width: 5px; 
	}
	
	.active-menu-item {
		background-color: white;
		color: black !important;
		border: 2px solid rgba(255, 255, 255, 1) !important;
		outline-width: 0 !important;
		opacity: 1 !important;
	}
	
	footer {
	  width: 100%;
	  margin: 0;
	  padding: 0;
	  background-color: var(--pink);
	}
	
	.footer-container {
		display: flex;
		flex-direction: column;
		gap: 12px;
		width: 100%;
		max-width: 1000px;
		padding: 80px var(--min-padding) 80px var(--min-padding);
		margin: 0 auto;
	}
	
	.footer-container div {
		display: flex;
		flex-direction: column;
		gap: 0;
	}
	
	.footer-container a {
		display: flex;
		flex-direction: row;
		align-items: center; 
		gap: 8px;
	}
	
	footer h2, footer h3, footer h4, footer h5, footer p, footer a {
		padding-top: 0;
		padding-bottom: 0;
		padding-left: var(--text-padding);
		padding-right: var(--text-padding);
	}
	
	#logo {
		margin: 160px auto 60px auto;
		width: 100%;
		max-width: 600px;
		aspect-ratio: 1;
		background-image: url(./assets/DSV_Logo_RGB-Lila2-820x820.png);
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		background-color: transparent;
		overflow: hidden;
	}
	
	#trilogy-grid {
	  width: 100%;
	  display: grid;
	  grid-template-columns: 1fr 1fr;
	  grid-template-rows: auto auto;
	  background-color: transparent;	
	  align-items: start;	
	  grid-column-gap: clamp(10px, 2.5vw, 30px);
	  grid-row-gap: clamp(10px, 2.5vw, 30px);
	  max-width: 1000px;
	  margin: 0 auto;
	}
	
	.trilogy-card {
	  display: block;
	  position: relative;
	  width: 100%;
	  aspect-ratio: 71 / 58;
	  border-radius: 32px;
	  overflow: hidden;
	  text-decoration: none;
	  padding: 0;
	  background-color: transparent;	
	  
	  cursor: pointer;
	  
	  outline-color: var(--dark-lila);	
	  outline-width: 0;
	  outline-style: solid;
	  outline-offset: -1px;
	  transition: outline-width 0.3s;
	  opacity: 1 !important;
	}
	
	#trilogy-grid > *:first-child {
	  grid-column: 1 / span 2;
	  aspect-ratio: 71/31;
	}
	
	@media (min-width: 769px) {
	  #trilogy-grid > .trilogy-card:first-child {
		border-top-left-radius: 32px;
		border-top-right-radius: 32px;
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 0;
	  }
	  #trilogy-grid > .trilogy-card:nth-child(2) {
	  	border-top-left-radius: 0;
		border-top-right-radius: 0;
		border-bottom-left-radius: 32px;
		border-bottom-right-radius: 0;
	  }
	  #trilogy-grid > .trilogy-card:nth-child(3) {
		border-top-left-radius: 0;
		border-top-right-radius: 0;
		border-bottom-left-radius: 0;
		border-bottom-right-radius: 32px;
	  }
	  #trilogy-grid > .trilogy-card:hover {
		outline-width: 10px; 
		border-radius: 32px;
		border-top-left-radius: 32px;
		border-top-right-radius: 32px;
		border-bottom-left-radius: 32px;
		border-bottom-right-radius: 32px;
	  }
	}
	
	.trilogy-card img {
	  position: absolute;
	  inset: 0; /* shorthand for top: 0; right: 0; bottom: 0; left: 0; */
	  width: 100%;
	  height: 100%;
	  object-fit: cover;
	  display: block;
	  background-color: transparent;	
	  transition: transform 0.3s;
	}
	
	.trilogy-title {
	  position: absolute;
	  top: 50%;
	  left: 50px;
	
	  transform: translate(-50%, -50%) rotate(90deg);
	  transform-origin: center;
	 
	  color: var(--dark-lila);	
	  color: var(--orange);
	  background:transparent; 
	  text-transform: uppercase;
	  
	  font-weight: bold;
	  
	  
	  text-align: center;
	  pointer-events: none; 
	  font-family: bebas-kai, sans-serif;
	  font-size: 36px;
	  transition: color 0.3s, background-color 0.3s;	
	}
	
	.trilogy-card:hover {
	  outline-width: 10px; 
	}
	
	.trilogy-card:hover img {
	  transform: scale(1.07);
	}
	
	.trilogy-card:hover .trilogy-title {
	  background-color: var(--dark-lila);
	}
	
	@media (max-width: 768px) {
	  #trilogy-grid {
		grid-template-columns: 1fr;
		grid-template-rows: auto;
	  }
	
	  #trilogy-grid > .trilogy-card {
		grid-column: auto;
		aspect-ratio: 71/58;
	  }
	}
	
	.btn {
	   display: block;
	   width: fit-content;
	   text-align: center;
	   border-radius: 33px;
	   padding: 14px 22px 14px 32px;
	   cursor: pointer;
	   text-transform: uppercase;
	   white-space: nowrap;
	   text-decoration: none !important;
	   transition: 0.25s;
	   background-color: var(--dark-lila);
	   min-width: 300px;
	   
	   font-family: bebas-kai, sans-serif;
	   color: white; 
	   font-size: 22px;
	   
	   margin: 0 auto !important;
	 }
	 
	 .btn i {
		padding-left: 10px; 
	 }
	 
	 .btn:hover {
	   color: var(--dark-lila);
	   background-color: white;
	 }
