/*!
 * Stratum Security Website v 2.0 (https://stratumsecurity.com/)
 * © Stratum Security 2024. All Rights Reserved.
 */

/* style.css */

/* Google Fonts */
@import url("https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,400;0,500;0,700;1,800&display=swap");

/* Custom Properties */
:root {
	--primary-color: #e36b0a;
	--primary-color-light: #ff7200;
	--text-light-color: #fff;
	--text-dark-color: #0d0d0d;
	--background-dark-color: #0d0d0d;
	--background-light-color: #fff;
	--dark-lines: #222222;
	--light-lines: #f5f5f5;
	--background-color-lighter: rgba(17, 17, 17);
}

/* Global Styles */
html {
	/* background-color: var(--background-dark-color); */
	margin: 0 auto;
	width: 100%;
	scroll-behavior: smooth;
}

body {
	background-color: var(--background-dark-color);
	color: var(--text-light-color);
	font-family: "Inter", sans-serif;
	height: 100vh;
	margin: 0 auto;
	padding: 0;
	line-height: 1.6;
	opacity: 0.5;
	transition: opacity 0.5s ease;
}

a {
	text-decoration: none;
	color: var(--primary-color);
}

h1,
h2,
h3,
h4 {
	margin: 0;
	padding: 0.5em 0;
}

p {
	margin: 0 0 1em 0;
}

.hide {
	display: none;
}

.show {
	display: block;
}

small {
	border: 1px solid #bfbfbf;
	border-radius: 2rem;
	font-family: monospace;
	font-size: 0.75rem;
	font-weight: 300;
	padding: 4px 12px;
	white-space: nowrap;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.white-lines {
		background: transparent;
	}

	.dark-lines {
		background: transparent;
	}
}

.background {
	background-color: var(--background-dark-color);
	border: 1px var(--dark-lines) solid;
	border-radius: 8px;
	margin: 0 auto;
	padding: 2rem 0;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.background {
		padding: 0;
		margin: 0;
		width: 100%;
	}
}

/* Header Styles */
header {
	background-color: rgba(0, 0, 0, 0.5);
	border-radius: 8px;
	-o-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px);
	/* Vendor prefixes for better compatibility */
	-webkit-backdrop-filter: blur(10px);
	/* Safari 6.0 - 9.0 */
	-moz-backdrop-filter: blur(10px);
	/* Firefox */
	-ms-backdrop-filter: blur(10px);
	/* Internet Explorer */
	-o-backdrop-filter: blur(10px);
	/* Opera */
	left: 50%;
	padding: 1rem 2em;
	position: fixed;
	top: 24px;
	transform: translate(-50%, 24px);
	width: 80%;
	z-index: 999;
}

header a {
	color: #fff;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	header {
		position: absolute;
		top: -12px;
	}
}

.menu-dropdown {
	font-size: 1.5em;
	line-height: 1.8em;
	padding: 0;
	text-align: left;
}

.menu-dropdown ul {
	list-style-type: none;
	margin: 1rem 0;
	padding: 0;
}

.menu-dropdown a {
	border-radius: 8px;
	display: block;
	padding: 0.2rem 01rem;
	width: 100%;
}

.menu-dropdown a:hover {
	background-color: rgba(255, 255, 255, 0.2);
	text-decoration: underline;
	transition: 0.5s ease-out;
}

/* Slide-down animation */
@keyframes slideDown {
	from {
		opacity: 0;
		transform: translateY(-20%);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Slide-up animation */
@keyframes slideUp {
	from {
		opacity: 1;
		transform: translateY(0);
	}

	to {
		opacity: 0;
		transform: translateY(-20%);
	}
}

/* Apply slide-down animation when showing the menu */
.menu-dropdown.show {
	display: block;
	animation: slideDown 0.5s forwards;
}

/* Apply slide-up animation when hiding the menu */
.menu-dropdown.hide {
	display: none;
	animation: slideUp 0.5s forwards;
}

/* Navigation */

nav {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: space-between;
}

.navbar a {
	border-radius: 10em;
	font-size: 0.875em;
	padding: 0.8em 1.5em;
}

.navbar a:hover {
	background-color: rgba(255, 255, 255, 0.2);
	transition: 0.5s ease-out;
}

.navbar a:active {
	background-color: rgba(255, 255, 255, 0.4);
	transition: 0.3s ease-out;
}

.logo {
	background-image: url(../images/stratum-security-logo.svg);
	display: inline-block;
	height: 40px;
	overflow: hidden;
	text-indent: -9999px;
	width: 160px;
}

.contact {
	background-color: rgba(255, 255, 255, 0.1);
	border-radius: 10em;
	font-size: 0.75em;
	padding: 0.8em 1.5em;
	vertical-align: middle;
}

.nav-right .pricing {
	display: inline;
	font-size: 0.75em;
	padding: 0.8em 1.5em;
}

.nav-right .pricing:hover {
	background: var(--primary-color);
	border-radius: 100px;
	transition: 0.3s;
}

@media (max-width: 768px) {
	.contact {
		display: none;
	}

	.nav-right .pricing {
		display: none;
	}
}

.contact:hover {
	background-color: rgba(255, 255, 255, 0.2);
	transition: 0.3s ease-out;
}

.green-circle {
	background-color: #32c65d;
	border-radius: 50%;
	display: inline-block;
	height: 6px;
	width: 6px;
}

.menu-btn {
	background-image: url(../images/menu_btn.svg);
	display: inline-block;
	height: 1em;
	margin: 0 1em;
	width: 1em;
	vertical-align: middle;
}

.close-btn {
	background-image: url(../images/close_btn.svg);
	display: inline-block;
	height: 1em;
	margin: 0 1em;
	width: 1em;
	vertical-align: middle;
}

/* Hero Section */

.hero {
	background-image: url(../images/hero-image@2x.png);
	background-size: cover;
	height: 90vh;
	min-height: fit-content;
	padding-top: 1.5rem;
	padding-bottom: 4.5rem;
	position: relative;
	text-align: center;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.hero {
		height: auto;
		padding: 2rem 1rem;
	}
}

.hero h1 {
	color: var(--text-light-color);
	font-size: 6em;
	font-weight: 500;
	line-height: 1.2em;
	margin: 10% auto 0;
	max-width: 1200px;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.hero h1 {
		color: var(--text-light-color);
		font-size: 3.8em;
		font-weight: 500;
		line-height: 1.2em;
		margin: 20% auto 0;
		max-width: 1200px;
	}

	.hero {
		display: flex;
		flex-direction: column;
	}
}

.main-cta {
	background-color: var(--primary-color);
	border-radius: 50px;
	color: var(--text-dark-color);
	border: 0.1px var(--primary-color) solid;
	font-size: 0.9em;
	margin: 0 0.25em;
	padding: 0.8em 2.5em;
	transition: 0.3s ease-out;
}

@media (max-width: 768px) {
	.hero .main-cta {
		margin-bottom: 1rem;
	}
}

.main-cta:hover {
	background-color: #ff7200;
	border-radius: 100px;
	text-decoration: none;
	transition: 0.3s ease-out;
}

.secondary-cta {
	background-color: rgba(227, 107, 10, 0.2);
	border: var(--primary-color) 1px solid;
	border-radius: 50px;
	color: var(--primary-color);
	font-size: 0.9em;
	margin: 0 0.25em;
	padding: 0.8em 2.5em;
}

.secondary-cta:hover {
	background-color: rgba(227, 107, 10, 0.4);
	text-decoration: none;
	transition: 0.3s ease-out;
}

/* Partners */

.partners {
	background-color: var(--background-light-color);
}

.partners .content {
	background-image: url(../images/lines-orange.svg);
	background-size: cover;
	color: var(--text-dark-color);
	padding: 6.5rem 1rem;
	text-align: center;
}

.partners h2 {
	font-size: 2.75rem;
	font-weight: 300;
	margin: 0 auto;
	max-width: 680px;
}

.slider-container {
	position: relative;
	width: 100%;
	max-width: 1200px;
	margin: auto;
	overflow: hidden;
}

.slider-wrapper {
	display: flex;
	transition: transform 0.7s ease-in-out;
	/* Smoother animation */
}

.slider-desktop {
	display: flex;
	list-style: none;
	padding: 0;
	margin: 0;
	transition: transform 0.7s ease-in-out;
	/* Apply smooth animation to sliding */
}

.partner {
	align-items: flex-end;
	background-repeat: no-repeat;
	display: inline-grid;
	font-family: monospace;
	font-size: 0.75rem;
	font-weight: 300;
	height: 80px;
	margin: 1.5rem;
	padding: 2rem 0;
	width: 150px;
}

.slider-arrows,
.slider-arrows-dark {
	/*position: absolute;*/
	width: 100%;
	top: 50%;
	display: flex;
	justify-content: center;
	margin-top: 32px;
	transform: translateY(-50%);
}

.slider-arrows .prev,
.slider-arrows .next {
	cursor: pointer;
	padding: 10px;
	margin: 0 0.5rem;
	background-color: rgb(239, 239, 239);
	color: white;
	border-radius: 100px;
	-webkit-user-select: none;
	user-select: none;
	width: 24px;
}

.slider-arrows-dark .prev,
.slider-arrows-dark .next {
	cursor: pointer;
	padding: 10px;
	margin: 0 0.5rem;
	background-color: var(--dark-lines);
	color: white;
	border-radius: 100px;
	-webkit-user-select: none;
	user-select: none;
	width: 24px;
}

.prev:hover {
	background-color: var(--primary-color);
}

.next:hover {
	background-color: var(--primary-color);
}

.slider-arrows .prev {
	left: 10px;
}

.slider-arrows .next {
	right: 10px;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.slider-container,
	.slider-wrapper,
	.slider-desktop,
	.slider-arrows {
		display: none;
	}

	.slider {
		display: block;
		margin: auto;
		max-width: 600px;
		overflow: hidden;
		position: relative;
	}

	.slider-container {
		display: flex;
		transition: transform 0.5s ease-in-out;
	}

	.slider .slide {
		min-width: 100%;
	}

	.slider .prev,
	.slider .next {
		border: none;
		border-radius: 100px;
		color: var(--background-light-color);
		display: flex;
		font-size: 1rem;
		margin-top: -60px;
		padding: 1rem 1.3rem;
		position: absolute;
		top: 50%;
		transition: 0.6s ease;
		-webkit-user-select: none;
		user-select: none;
	}

	.slider .next {
		right: 0;
		border-radius: 100px;
	}

	.slider .prev:hover,
	.slider .next:hover {
		background-color: var(--primary-color);
	}

	.slider .dots-container {
		text-align: center;
		padding: 1rem;
	}
}

.rightworks {
	background-image: url(../images/rightworks-logo.svg);
}

.deltek {
	background-image: url(../images/deltek-logo.svg);
}

.blockdaemon {
	background-image: url(../images/blockdaemon-logo.svg);
}

.hilton {
	background-image: url(../images/hilton-logo.svg);
}

.netSPI {
	background-image: url(../images/netSPI-logo.svg);
}

.eagle-bank {
	background-image: url(../images/eagle-bank-logo.svg);
}

.yahoo {
	background-image: url(../images/yahoo-logo.svg);
}

.gsk-logo {
	background-image: url(../images/gsk-logo2.svg);
}

.krispy-kreme {
	background-image: url(../images/krispy-kreme-logo.svg);
}

.tata-communications {
	background-image: url(../images/tata-communications-logo.svg);
}

.nbt-bank {
	background-image: url(../images/nbt-bank-logo.svg);
}

.sandy-spring-bank {
	background-image: url(../images/sandy-spring-bank-logo.svg);
}

.viatris {
	background-image: url(../images/viatris-logo.svg);
}

.veeva {
	background-image: url(../images/veeva-logo.svg);
}

.sonatype {
	background-image: url(../images/sonatype-logo.svg);
}

.five-guys {
	background-image: url(../images/five-guys-logo.svg);
}

.verisk {
	background-image: url(../images/verisk-logo.svg);
}

/* Testimonials*/

.testimonials-section {
	align-items: center;
	background-image: url(../images/wireframe-bg.svg);
	background-size: cover;
	background-position: top;
	color: var(--text-light-color);
	display: flex;
	height: 480px;
	margin: 0;
	justify-content: center;
	text-align: center;
	overflow: hidden;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.testimonials-section {
		background-position: bottom;
		background-repeat: no-repeat;
		background-size: 300%;
		height: fit-content;
	}
}

.testimonials-section .dark-lines {
	align-items: center;
	display: flex;
	justify-content: center;
	height: 100%;
	width: 100%;
}

.testimonials-slider {
	display: flex;
	flex-direction: column;
	margin: 2rem 1.5rem 0 1.5rem;
	max-width: 1200px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

.testimonials {
	display: flex;
	transition: transform 0.5s ease;
}

.testimonial {
	font-size: 2rem;
	font-weight: 200;
	min-width: 100%;
	overflow-wrap: anywhere;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.testimonial {
		font-size: 1.5rem;
		margin-top: 2rem;
	}
}

.navigation-dots {
	margin: 1.5rem;
	padding: 10px;
	text-align: center;
}

.dot {
	background: var(--primary-color);
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	height: 10px;
	margin: 0 8px;
	width: 10px;
}

.active {
	background: var(--background-light-color);
}

/* Services*/

.services .content {
	display: flex;
	flex-direction: column;
	margin: 0 auto;
	max-width: 1600px;
	padding: 7rem 15%;
}

.services h2 {
	font-size: 2.75rem;
	font-weight: 300;
	margin: 0 auto;
	text-align: center;
}

.services ul {
	margin: 1rem 0;
	padding: 0;
}

.services li {
	list-style: none;
	margin: 0;
	padding: 0.2rem;
}

.services li a {
	background-color: var(--background-light-color);
	color: var(--text-dark-color);
	display: inline-block;
	font-size: 1rem;
	font-weight: 300;
	width: 280px;
}

.services li a:hover {
	background-image: url(../images/arrow-right.svg);
	background-position: right;
	background-repeat: no-repeat;
	color: var(--primary-color);
}

.service_active {
	background-image: url(../images/arrow-right.svg);
	background-position: right;
	background-repeat: no-repeat;
}

.service_menu {
	margin-right: 0.5rem;
}

.service_content {
	width: 100%;
}

.scrollable-content {
	max-height: 670px;
	overflow: auto;
	scrollbar-color: var(--light-lines) transparent;
}

.service_content p {
	font-size: 1rem;
	font-weight: 300;
	margin: 1rem 0;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.services .content {
		padding: 1rem;
	}

	.service_menu {
		display: none;
	}

	.service_content {
		width: 100%;
	}
}

/* Services Tabs*/

.table_content {
	background-color: var(--background-light-color);
	color: var(--text-dark-color);
	overflow: hidden;
}

.tab {
	display: inline-block;
	overflow: hidden;
}

/* Styles for mobile viewports (max-width: 1300px) */
@media (max-width: 1300px) {
	.tab {
		display: contents;
	}

	.tab .button {
		border-radius: 0;
	}
}

.tab button {
	background-color: #353535;
	border: none;
	border-radius: 6px 6px 0 0;
	color: var(--text-light-color);
	cursor: pointer;
	font-size: 0.85rem;
	outline: none;
	padding: 20px 30px 20px 20px;
	transition: 0.3s;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.tab button {
		border-radius: 0;
	}
}

.mobile-selector {
	margin: 0 auto;
	padding: 1rem 0;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.mobile-selector {
		display: block;
	}
}

.mobile-selector select {
	border: 1px solid #bfbfbf;
	border-radius: 8px;
	color: var(--text-dark-color);
	font-size: 1rem;
	padding: 0.75rem;
	width: 100%;
}

.tab button span {
	background-image: url(../images/stratum-icon.svg);
	display: inline-block;
	margin: -2px 4px;
	height: 1rem;
	width: 1rem;
}

.tab button:hover {
	background-color: #202020;
}

.tab button.active {
	background-color: var(--background-light-color);
	color: var(--text-dark-color);
}

.tabcontent {
	border-top: none;
	display: none;
	overflow: scroll;
	padding: 16px;
}

.tabcontent::-webkit-scrollbar {
	display: none;
	/* Chrome, Safari, and Edge */
}

.tabcontent.active {
	display: flex;
}

.table-container {
	display: flex;
	flex-direction: row;
}

.table-container table {
	margin-bottom: 2rem;
}

/* Styles for mobile viewports (max-width: 1024px) */
@media (max-width: 1024px) {
	.table-container {
		flex-direction: column;
	}
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.tabcontent.active {
		display: block;
	}
}

table {
	text-align: left;
}

table th {
	width: 33%;
}

table tr {
	font-size: 0.8rem;
}

table td p {
	font-size: 1rem;
}

.check {
	background-image: url(../images/check-dark.svg);
	display: inline-block;
	margin-right: 8px;
	height: 12px;
	width: 12px;
}

.not-available {
	background-image: url(../images/not-available.svg);
	display: inline-block;
	margin-right: 8px;
	height: 12px;
	width: 12px;
}

.uncheck {
	background-image: url(../images/not-available.svg);
	display: inline-block;
	margin-right: 8px;
	height: 12px;
	width: 12px;
}

.disabled {
	color: #808080;
}

.ultimate-text {
	color: var(--primary-color);
}

.ultimate-pill {
	background-color: rgba(227, 107, 10, 0.2);
	border: 1px solid var(--primary-color);
	color: var(--primary-color);
}

.ultimate-check {
	background-image: url(../images/check-orange.svg);
	display: inline-block;
	margin-right: 8px;
	height: 12px;
	width: 12px;
}

.pricing {
	color: var(--text-light-color);
	display: flex;
	margin: 1rem auto;
	text-align: center;
}

/* Case Studies */

.case-studies .content {
	padding: 7rem 0;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.case-studies .content {
		padding: 1rem;
	}
}

.case-studies h2 {
	font-size: 2.75rem;
	font-weight: 300;
	text-align: center;
}

.case-studies small {
	color: var(--text-dark-color);
}

.gsk {
	background-image: url(../images/gsk-logo.svg);
	background-repeat: no-repeat;
	display: block;
	height: 40px;
	margin: 2.5rem 0;
	overflow: hidden;
	text-indent: -9999px;
	width: 84px;
}

.llr-case {
	background-image: url(../images/llr-logo-color.svg);
	background-repeat: no-repeat;
	display: block;
	height: 40px;
	margin: 2.5rem 0;
	overflow: hidden;
	text-indent: -9999px;
	width: 140px;
}

.verisk-case {
	background-image: url(../images/verisk-logo-color.svg);
	display: block;
	height: 40px;
	margin: 2.5rem 0;
	overflow: hidden;
	text-indent: -9999px;
	width: 112px;
}

.case-studies .card {
	background-color: var(--background-light-color);
	border: 4px solid var(--background-light-color);
	color: var(--text-dark-color);
	cursor: pointer;
	margin: 1rem 0;
}

.case-studies .card:hover {
	border: 4px solid var(--primary-color);
	box-shadow: 0 0 30px var(--primary-color);
	transition: 0.3s;
}

.cta {
	display: flex;
	width: 100%;
}

.case-studies .card .button {
	background-color: var(--background-dark-color);
	background-image: url(../images/arrow-ico.svg);
	border-radius: 100%;
	display: block;
	height: 32px;
	margin-left: auto;
	width: 32px;
}

.case-studies .card .button:hover {
	background-color: var(--primary-color);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
	transition: 0.3s ease-out;
}

.case-studies .card {
	border-radius: 8px;
	margin: 1rem;
	padding: 2rem 1rem;
	width: 300px;
}

.case-studies .card-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

/* About */

.about {
	background: url(../images/lines.svg) no-repeat top center,
		linear-gradient(180deg, #004566 0%, #0d0d0d 70.59%);
	color: var(--text-light-color);
	margin: 0 auto;
	padding: 10% 7rem 0 7rem;
}

.about .content {
	align-items: center;
	display: flex;
	flex-direction: column;
	padding: 2rem 0 0 0;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.about .content {
		display: flex;
		flex-direction: column;
		padding: 3rem 0;
	}

	.about {
		padding: 0 1rem;
	}
}

.about h2 {
	font-size: 4rem;
	font-weight: 400;
	line-height: 6rem;
	max-width: 1024px;
	text-align: center;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.about h2 {
		font-size: 3rem;
		line-height: 3.6rem;
	}
}

.about h3 {
	font-size: 2.75rem;
	font-weight: 300;
}

.about p {
	font-size: 1rem;
	margin: 0;
	padding: 1.5rem 0;
	max-width: 980px;
	text-align: center;
}

.font-light {
	color: #e7e7e7;
}

.stats {
	display: flex;
	justify-content: center;
}

.stat {
	display: block;
	padding: 2rem;
	width: fit-content;
}

.center {
	width: 100%;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.left {
		height: 500px;
	}

	.right {
		height: 255px;
	}
}

/* Team */

.team .content {
	text-align: center;
	overflow: hidden;
	padding: 7rem 4rem;
}

.team .card-container {
	display: flex;
	overflow: scroll;
	scroll-behavior: smooth;
	width: 100%;
}

.team .card-container::-webkit-scrollbar {
	display: none;
	/* Chrome, Safari, and Edge */
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.team .content {
		margin: 0;
		padding: 1rem;
	}

	.team .card-container {
		justify-content: left;
	}
}

.team h3 {
	font-size: 2rem;
	font-weight: 300;
}

.card.default.you {
	background-color: rgba(227, 107, 10, 0.1);
	border: 1px solid rgba(227, 107, 10, 0.3);
	transition: 0.3s;
}

.card.default.you h4 {
	color: var(--primary-color);
	transition: 0.3s;
}

.card.default.you p {
	color: rgba(227, 107, 10, 0.5);
	transition: 0.3s;
}

.card.default.you img {
	filter: sepia(95%) saturate(1100%) hue-rotate(13deg);
}

.team .card {
	border-radius: 4px;
	border: 2px var(--background-dark-color) solid;
	color: var(--text-light-color);
	margin: 0.75rem;
	padding: 2.5rem 0;
	width: 212px;
	transition: 0.3s border;
}

.team .card:hover {
	background-color: rgba(227, 107, 10, 0.4);
	border: 2px solid var(--primary-color);
	box-shadow: 0 0 20px var(--primary-color);
	transition: 0.3s;
}

.team .card h4 {
	font-size: 1.25rem;
	font-weight: 300;
}

.team .card p {
	font-size: 0.8em;
	font-weight: 300;
	margin: 0;
}

.default {
	cursor: pointer;
	background-color: #1a1a1a;
}

.highlight {
	background-color: rgba(227, 107, 10, 0.4);
	border: 1px rgba(227, 107, 10, 0.3) solid;
}

.highlight img {
	filter: sepia(1) saturate(3) hue-rotate(-25deg) brightness(1.3)
		contrast(1.3);
}

.highlight h4,
.highlight p {
	color: var(--primary-color);
}

.team img {
	border-radius: 100%;
}

/* Values */

.values .content {
	text-align: center;
}

.values .cards {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 auto;
}

.values .card-container {
	margin: 1rem;
	perspective: 1000px;
}

.values .card {
	width: 260px;
	height: 356px;
	padding: 0;
	position: relative;
	transform-style: preserve-3d;
	transition: transform 0.6s;
}

.values .card-front,
.values .card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	backface-visibility: hidden;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	text-align: left;
}

.values .card-front {
	background-color: #1a1a1a;
	border-radius: 8px;
	color: var(--text-light-color);
}

.values .card-back {
	background-color: var(--primary-color);
	border-radius: 8px;
	color: var(--text-dark-color);
	transform: rotateY(180deg);
}

.values .card-back small {
	color: var(--text-light-color);
}

.values .card-container:hover .card {
	transform: rotateY(180deg);
}

.back small {
	color: var(--primary-color);
}

.values h3 {
	font-size: 2rem;
	font-weight: 400;
}

.values h4 {
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.6rem;
	text-align: left;
}

.card-back p {
	font-size: 0.9rem;
	line-height: 1.1rem;
	margin: 0 1.5rem 1.5rem 1.5rem;
}

.values small {
	background-color: #0d0d0d;
	border: solid #252525 1px;
	margin: 1.5rem;
	text-align: left;
	width: fit-content;
}

.reject-button {
	background-color: transparent;
	border: var(--primary-color) 1px solid;
	border-radius: 50px;
	color: var(--primary-color);
	font-size: 0.9em;
	margin: 0 0.25em;
	padding: 0.8em 2.5em;
	transition: 0.3s ease-out;
}

.ultimate_text {
	width: 210px;
}

.standard-text {
	width: 210px;
}

.basic-text {
	width: 210px;
}

.reject-button:hover {
	background-color: rgba(227, 107, 10, 0.2);
}

.gdpr-popup {
	position: fixed;
	bottom: 10px;
	right: 10px;
	width: 615px;
	background: var(--background-color-lighter);
	border: 2px var(--dark-lines) solid;
	padding: 20px;
	border-radius: 16px;
	z-index: 30;
}

.gdpr-popup h3 {
	font-weight: 100;
}

.gdpr-popup p {
	font-size: 0.8rem;
}

.gdpr-popup a {
	color: var(--light-lines);
	text-decoration: underline;
}

.gdpr-buttons {
	display: flex;
	gap: 5px;
	flex-direction: row;
}

.gdpr-buttons button {
	cursor: pointer;
}

@media (max-width: 680px) {
	.gdpr-popup {
		width: 85vw;
		right: 2.5vw;
	}

	.gdpr-buttons {
		flex-direction: column;
		gap: 15px;
	}
}

.bottom {
	display: flex;
	flex-direction: column;
	margin: 1.5rem;
}

/* Styles for mobile viewports (max-width: 1600px) */
@media (max-width: 1600px) {
	.values .cards {
		flex-wrap: nowrap;
		overflow: scroll;
		width: 100%;
	}

	.values .cards::-webkit-scrollbar {
		display: none;
		/* Chrome, Safari, and Edge */
	}
}

/* Blog */

.blog .content {
	margin: 0;
	padding: 8rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.blog .content {
		padding: 1rem;
	}
}

.blog h3 {
	font-size: 2rem;
	font-weight: 300;
	text-align: center;
}

.blog h4 {
	font-size: 1.8rem;
	font-weight: 300;
	max-width: 340px;
}

.blog p {
	color: #565656;
	font-size: 0.75rem;
}

.blog a {
	border-radius: 16px;
	color: var(--text-light-color);
	margin: 1rem;
	max-width: 460px;
	min-width: 280px;
	padding: 0.4rem 1rem;
	transition: 0.3s;
	width: 33%;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.blog a {
		margin: 1rem 0;
		width: 80%;
	}
}

.blog a:hover {
	background-color: #1a1a1a;
	color: var(--primary-color);
	transition: 0.4s;
	transform: scale(1.02);
}

.posts {
	display: flex;
	justify-content: center;
	margin-bottom: 3rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.posts {
		flex-wrap: wrap;
	}
}

/* Styles for mobile viewports (max-width: 960px) */
@media (max-width: 1400px) {
	.posts {
		flex-wrap: wrap;
	}
}

.post {
	display: flex;
	flex-direction: column;
}

.post img {
	border-radius: 8px;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.post img {
		display: none;
	}
}

.post small {
	border: 1px #252525 solid;
	display: inline-block;
	margin: 1rem 0;
	width: fit-content;
}

hr {
	border: 1px solid var(--dark-lines);
}

.cta-container {
	align-items: self-end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 2rem;
	padding: 0 1.5rem;
}

/* Styles for mobile viewports (max-width: 1160px) */
@media (max-width: 1160px) {
	.cta-container {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

.blog .blog-cta {
	background-color: #252525;
	border: 1px solid #515151;
	border-radius: 100px;
	display: flex;
	height: fit-content;
	justify-content: space-between;
	color: var(--text-light-color);
	text-wrap: nowrap;
}

.blog .blog-cta:hover {
	background-color: #3d3d3d;
	color: var(--primary-color);
	transition: 0.5s;
}

.subscribe {
	max-width: 690px;
	width: 50%;
}

/* Styles for mobile viewports (max-width: 1160px) */
@media (max-width: 1160px) {
	.subscribe {
		width: 90%;
	}
}

.subscribe h4 {
	text-align: left;
}

.gh-signup-root {
	align-items: center;
	display: flex;
	justify-content: center;
	width: 100%;
}

/* Quote */

.quote {
	background-color: var(--background-light-color);
	background-image: url(../images/lines-orange.svg);
	background-position: top left;
	background-repeat: no-repeat;
	background-size: 85%;
	color: var(--text-dark-color);
	display: flex;
	justify-content: center;
	overflow: hidden;
	padding: 5rem 0 2.5rem 0;
}

.quote .content {
	display: flex;
	justify-items: center;
	padding: 4rem 0;
}

.quote h3 {
	font-size: 2rem;
	font-weight: 300;
	max-width: 530px;
}

.quote .text {
	margin: 0 1rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.quote {
		padding: 0 1rem;
	}

	.quote .content {
		flex-direction: column;
		padding: 4rem 0;
	}

	.quote h3 {
		line-height: 2.3rem;
		text-align: center;
	}

	.quote p {
		text-align: center;
	}
}

.quote form {
	display: flex;
	flex-direction: column;
	width: 100%;
}

.option {
	background-color: var(--background-light-color);
	border: 1px #f3f3f3 solid;
	border-radius: 40px;
	cursor: pointer;
	margin: 0.75rem 0;
	padding: 14px 0 14px 56px;
	transition: background-color 0.3s ease, color 0.3s ease,
		background-image 0.3s ease;
}

.option:hover {
	background-color: var(--primary-color);
	color: var(--text-light-color);
}

.option.app-sec.selected {
	background-image: url(/images/app-sec-icon-light.svg);
	background-color: var(--primary-color);
	color: white;
}

.option.cloud-sec.selected {
	background-image: url(/images/could-sec-icon-light.svg);
	background-color: var(--primary-color);
	color: white;
}

.option.net-sec.selected {
	background-image: url(/images/net-sec-icon-light.svg);
	background-color: var(--primary-color);
	color: white;
}

.option.app-sec.selected:hover {
	background-color: var(--primary-color-light);
}

.option.cloud-sec.selected:hover {
	background-color: var(--primary-color-light);
}

.option.net-sec.selected:hover {
	background-color: var(--primary-color-light);
}

.app-sec {
	background-image: url(/images/app-sec-icon.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

.cloud-sec {
	background-image: url(/images/could-sec-icon.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

.net-sec {
	background-image: url(/images/net-sec-icon.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

.app-sec:hover {
	background-image: url(/images/app-sec-icon-light.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

.cloud-sec:hover {
	background-image: url(/images/could-sec-icon-light.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

.net-sec:hover {
	background-image: url(/images/net-sec-icon-light.svg);
	background-position: 24px;
	background-repeat: no-repeat;
}

/* Hide the default checkbox */
input[type="checkbox"] {
	display: none;
}

/* Style the checkbox when checked */
input[type="checkbox"]:checked {
	display: none;
}

.quote .button-content {
	display: flex;
	justify-content: end;
	max-width: 530px;
}

.quote button {
	background-color: var(--text-dark-color);
	border: none;
	border-radius: 3rem;
	color: var(--text-light-color);
	display: flex;
	justify-content: space-between;
	margin: 1rem 0;
	padding: 1rem;
	cursor: pointer;
	text-align: left;
	width: 153px;
}

.quote button:hover {
	background-color: var(--primary-color);
	transition: 0.3s;
}

/* FAQ */

.faq .content {
	display: flex;
	justify-content: center;
	padding: 7rem;
}

.faq .background {
	display: flex;
	justify-content: center;
	width: 100%;
}

.faq h2 {
	font-size: 2rem;
	font-weight: 300;
	max-width: 300px;
}

.accordion {
	max-width: 600px;
	width: 80%;
}

.accordion-item {
	background-color: var(--background-dark-color);
	border: var(--dark-lines) 1px solid;
	border-radius: 8px;
	margin: 1rem 0;
}

.accordion-item:last-child {
	border-bottom: none;
}

.accordion-header {
	background-color: transparent;
	color: var(--text-light-color);
	padding: 1.5rem 1rem;
	text-align: left;
	font-size: 16px;
	border: none;
	cursor: pointer;
	transition: background-color 0.3s ease;
	width: 100%;
}

.accordion-header:hover {
	background-color: var(--dark-lines);
}

.accordion-content {
	max-height: 0;
	overflow: hidden;
	padding: 0 15px;
	transition: max-height 0.3s ease, padding 0.3s ease;
}

.accordion-content p {
	margin: 15px 0;
}

/* Styles for mobile viewports (max-width: 1200px) */
@media (max-width: 1200px) {
	.accordion {
		width: 100%;
	}
}

/* Styles for mobile viewports (max-width: 1200px) */
@media (max-width: 1200px) {
	.faq .content {
		flex-direction: column;
		margin: 0;
		padding: 1rem;
	}

	.faq .card-container {
		margin: 0;
		width: 100%;
	}

	.faq .background {
		flex-direction: column;
		padding: 1.2rem;
		width: fit-content;
	}
}

.faq .card {
	border: 1px solid #202020;
	border-radius: 8px;
	color: var(--text-light-color);
	margin: 1rem 0;
	padding: 1rem 1.5rem;
	width: 100%;
}

.faq .card:hover {
	background-color: #202020;
	cursor: pointer;
	transition: 0.9s;
}

.faq .open {
	background-color: #1a1a1a;
}

.faq .card p {
	margin: 1rem 0;
}

/* Contact Us */

.contact-us {
	display: flex;
	flex-direction: column;
	background-image: url(../images/mountains-bg.jpg);
	background-repeat: no-repeat;
	background-position: top;
	background-size: cover;
	height: 50%;
	justify-content: center;
	padding: 1rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.contact-us {
		padding: 6rem 0;
	}
}

.contact-us h2 {
	color: var(--text-dark-color);
	font-size: 6.75rem;
	font-weight: 600;
	line-height: 6rem;
	text-align: center;
}

.contact-us span {
	color: var(--text-light-color);
}

.contact-us a {
	background-color: var(--primary-color);
	border-radius: 100px;
	color: var(--text-dark-color);
	display: block;
	margin: 0 auto;
	padding: 1rem 2rem;
	width: fit-content;
}

/* Footer */

footer {
	background-image: url(../images/orange-beams@2x.png);
	background-size: cover;
}

footer .content {
	max-width: 960px;
	margin: 0 auto;
	padding: 2rem 0;
}

footer .sections {
	display: flex;
	justify-content: center;
}

footer .links {
	padding: 1rem;
	width: 33%;
}

footer .info {
	padding: 1rem;
	width: 33%;
}

footer .info p {
	color: var(--text-light-color);
	margin: 1rem 0;
	text-align: left;
}

footer .icon {
	width: 33%;
	padding: 1rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	footer .links {
		width: 40%;
	}

	footer .info {
		width: 60%;
	}

	footer .icon {
		display: none;
	}
}

footer .links a {
	color: var(--text-light-color);
	font-size: 1.5rem;
	font-weight: 300;
}

footer .links a:hover {
	color: var(--primary-color);
	text-decoration: underline;
	transition: 0.3s;
}

footer p {
	color: #808080;
	font-size: 0.85rem;
	text-align: center;
}

footer p a {
	color: var(--text-light-color);
	font-size: 1rem;
}

footer p a:hover {
	color: var(--primary-color);
	text-decoration: underline;
	transition: 0.3s;
}

.legal {
	display: flex;
	justify-content: space-between;
	margin: 3rem 0;
}

.legal a {
	font-size: 0.8rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.legal {
		flex-direction: column;
		align-items: center;
	}
}

.stratum-logo {
	background-image: url(../images/stratum-ico.svg);
	display: block;
	height: 2rem;
	width: 2rem;
}

.youtube {
	background: url(../images/youtube-ico.svg) no-repeat;
	display: inline-block;
	height: 16px;
	padding: 0.5rem;
	width: 16px;
}

.github {
	background: url(../images/github-ico.svg) no-repeat;
	display: inline-block;
	height: 16px;
	padding: 0.5rem;
	width: 16px;
}

.linkedin {
	background: url(../images/linkedin-ico.svg) no-repeat;
	display: inline-block;
	height: 16px;
	padding: 0.5rem;
	width: 16px;
}

.fade-in {
	opacity: 1;
}

.fade-out {
	opacity: 0;
	transition: opacity 0.3s ease;
}

dialog[open] {
	opacity: 1;

	@starting-style {
		opacity: 0;
	}
}

dialog {
	opacity: 0;
	transition: opacity 0.3s ease, display 0.3s ease allow-discrete;
}

/*.horizontal-padding {
	margin-top: 26px;
	padding-inline: 5em;
}*/

.legal-content {
	display: block;
	margin: 7rem auto;
	padding: 0 25%;
}

.legal-content h1 {
	font-size: 3rem;
}

/* Styles for mobile viewports (max-width: 768px) */
@media (max-width: 768px) {
	.legal-content {
		padding: 0 10%;
	}
}
