/* File: style.css */

/* Font definitions, base styles, typography, layout, etc. remain here */

@font-face {
	font-family: 'Rotis Sans Serif Std';
	src: url('/fonts/RotisSansSerifStd-ExtraBold.woff2') format('woff2'),
		url('/fonts/RotisSansSerifStd-ExtraBold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Rotis SemiSerif Std';
	src: url('/fonts/RotisSemiSerifStd.woff2') format('woff2'),
		url('/fonts/RotisSemiSerifStd.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: auto;
}

html {
  scroll-behavior: smooth;
}


:root {
	/* Day Mode Colors */
	--gradient-day-color1: #f0f0f0;
	--gradient-day-color2: #d0d0d0;
	/* Night Mode Colors */
	--gradient-night-color1: #2a2a2a;
	--gradient-night-color2: #383838;
	/* Existing Variables */
	--background-day: #fff;
	--background-very-light-day: #e8e8e8;
	--background-night: #080808;
	--background-very-light-night: #383838;
	--text-day: #080808;
	--text-night: #fff;
	--wp--preset--color--base: #050523;
	--wp--preset--color--primary: #a603f5;
	--wp--preset--color--secondary: #ef3d06;
	--wp--preset--color--tertiary: #ffe000;
	--wp--preset--color--pale-cyan-blue: #b8bae5;
	--main-vertical-spacer: 2rem;
}

/* Logo, navigation, and other non-background layout styles */
.logo {
	margin-right: 1rem;
	padding-top: 4px;
}

body.night-mode .armadaquadrat-logo {
  fill: var(--text-night) !important;
}
body:not(.night-mode) .armadaquadrat-logo {
  fill: var(--text-day) !important;
}

.armadaquadrat-logo {
	fill: var(--text-day);
}

@media (prefers-color-scheme: dark) {
	:root {
		--background-night: #080808;
		--background-very-light-night: #383838;
		--text-night: #fff;
		--main-vertical-spacer: 2rem;
	}

	body.night-mode .armadaquadrat-logo {
		fill: var(--text-night);
	}

	body.night-mode {
		background-color: var(--background-night);
		color: var(--text-night);
		z-index: -7;
	}
}

body,
html {
	margin: 0;
	padding: 0;
	font-family: 'Rotis SemiSerif Std';
	overflow-x: hidden;
	position: relative;
	z-index: -7;
}

a {
	color: inherit;
	text-decoration: underline;
	text-decoration-color: rgb(127, 127, 127);
}

a:hover {
	text-decoration: underline;
	text-decoration-color: rgb(200, 200, 200);
}

body.day-mode {
	background-color: var(--background-day);
	color: var(--text-day);
	z-index: -7;
}

.hidden {
	display: none !important;
}

.spacer {
	height: 0.1vh;
}

.top-section {
	display: flex;
	flex-direction: column;
	align-items: start;
	/* Aligns items to the start of the container */
	justify-content: center;
	text-align: left;
	padding: 2rem;
	/*background: url('path_to_your_pattern_image');*/
	background-size: contain;
}

.title {
	min-height: 650px;
}

.top-section::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: inherit;
	/* Inherit the pattern from the parent */
	opacity: 0.1;
	/* Adjust for desired subtlety */
	z-index: -1;
	/* Ensures content is on top */
}

.nav-container {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: 2rem;
	/* Space below the nav container */
}


.top-section .nav-item::before {
	content: '→ ';
}

.top-section .nav-item {
	flex: auto;
	/* Allows each nav item to grow and shrink */
	font-family: 'Rotis Sans Serif Std';
	text-transform: capitalize;
	font-size: 1.25rem;
	margin-right: 1rem;
	/* Space between nav items */
}

.hamburger-menu {
	display: none;
	/* Hidden by default, shown only in mobile view */
	font-size: 2rem;
	/* Adjust size as needed */
	cursor: pointer;
	position: fixed;
}

.top-section h1 {
	font-size: 3em;
	/* Adjust size as needed */
	margin: 0.5rem 0;
	/* Adjust spacing as needed */
}

.top-section .subheadline {
	font-size: 1.95em;
	/* Adjust size as needed */
	line-height: 1.5em;
	margin: 0.5rem 0;
	/* Adjust spacing as needed */
}

@media (max-width: 768px) {

	.top-section .subheadline,
	.key-achievements {
		font-size: 1em;
		/* Adjust size as needed */
		line-height: 1.5em;
	}
}


.center {
	text-align: center;
}

.margin-1 {
	margin-bottom: 2rem;
}

.mode-switch {
	position: relative;
	margin: 2rem auto;
	width: 60px;
}

.mode-switch input {
	position: absolute;
	opacity: 0;
	/* Make it invisible */
	width: 0;
	height: 0;
	margin: 0;
	padding: 0;
	z-index: -1;
	/* Send it behind other content */
}

.mode-switch label {
	position: relative;
	display: block;
	width: 60px;
	height: 22.5px;
	background: #d9d9d9;
	border-radius: 22.5px;
	cursor: pointer;
	box-shadow: inset 0px 2.5px 7.5px rgba(0, 0, 0, 0.68), inset 0px -0.5px 5px rgba(255, 255, 255, 0.2);
	transition: background-color 0.4s;
}

.mode-switch label:after {
	content: "";
	position: absolute;
	height: 20px;
	width: 20px;
	background: #f2f2f2;
	border-radius: 20px;
	top: 1.25px;
	left: 2.5px;
	transition: 0.4s;
	box-shadow: 0 2.5px 5px rgba(0, 0, 0, 0.2);
}

.mode-switch input:checked~label:after {
	left: calc(100% - 22.5px);
	background: linear-gradient(180deg, #646464, #919191);
}

.mode-switch input:checked~label {
	background: #212121;
}

.project-showcase-1 {
	border-bottom-right-radius: 2rem;
	border-top-right-radius: 2rem;
	transform: translate(-1%, 0);
}

.project-showcase-2 {
	border-bottom-left-radius: 2rem;
	border-top-left-radius: 2rem;
	transform: translate(2%, 0);
}

.top-right img:nth-child(1) {
	border-top-right-radius: 2rem;
}

#orno-photo-2 img {
	border-bottom-right-radius: 2rem
}

/* different corners rounded on mobile due to different order of elements */
@media (max-width: 768px) {

	/*.top-right video {
	border-top-right-radius: 2rem; 
}*/
	#midsommar-photo .half img:nth-child(1) {
		border-bottom-right-radius: 2rem;
	}

	#harmond-photo .half img:nth-child(1) {
		border-bottom-right-radius: 2rem;
	}

	#mjc-photo-2 .half img:nth-child(1) {
		border-bottom-left-radius: 2rem;
	}

	#headspace-photo-3 .half img {
		border-bottom-left-radius: 2rem
	}

	#ido-photo .half:nth-child(1) img {
		border-top-right-radius: 2rem
	}

	#orno-photo .half img:nth-child(1) {
		border-top-right-radius: 2rem;
	}

	.top-right img:nth-child(1) {
		border-top-right-radius: 0;
	}

	.project-showcase-1 {
		transform: translate(-2%, 0);
	}

	.project-showcase-2 {
		transform: translate(3%, 0);
	}

	/*#weissschwarz-photo .half img:nth-child(1) {
	border-top-right-radius: 2rem;	
}
#alchemy-photo-1 .half img:nth-child(1) {
	border-top-right-radius: 2rem;	
}
#wosk-images .half img:nth-child(1) {
	border-top-right-radius: 2rem;
}/*/
}

@media only screen and (max-width: 768px) {
	.image-gallery {
		order: 2;
		-webkit-order: 2;
	}

	.project-header {
		order: 1;
		-webkit-order: 1;
	}
}


h1,
h2 {
	font-family: 'Rotis Sans Serif Std';
	text-transform: capitalize;
}

h3,
h4 {
	font-family: 'Rotis Sans Serif Std';
}

p {
	font-size: 1.25rem;
	line-height: 1.75rem;
}

.client-quote {
	font-family: 'Rotis Sans Serif Std';
	font-size: 0.85rem;
	border-left: 2px solid #F8F8F8;
	padding-left: 1rem;
	margin-bottom: var(--main-vertical-spacer);
	line-height: 1.25rem;
	width: 66.333%;
}

.client-name {
	font-family: 'Rotis SemiSerif Std';
}

/* Remove default list style and add padding for the ul */
.inline-list {
	list-style: none;
	padding-left: 0;
	margin: 0;
	text-align: justify;
	font-family: 'Rotis SemiSerif Std';
	font-size: 1.5rem;
	line-height: 1.75rem;
}

/* Display li items inline with a dot separator and prevent line breaks */
.inline-list li {
	display: inline;
	white-space: nowrap;
	/* Prevents the text from wrapping */
}

/* Add a dot separator after each li item except the last one */
.inline-list li.add-dot::after {
	content: " \00B7";
	/* Unicode character for middle dot */
}

.wrapper {
	display: flex;
	width: 100vw;
	margin-bottom: 0;
}

.client-title {
	font-size: 0.5rem;
	padding-left: 4rem;
	min-width: 4rem;
}

.midsommar {
	background-color: rgba(255, 253, 243, .95);
}

.harmond {
	background: repeating-linear-gradient(-45deg,
			rgba(0, 0, 0, 0),
			rgba(0, 0, 0, 0) 125px,
			rgba(0, 0, 0, 0.05) 125px,
			rgba(0, 0, 0, 0.05) 250px);
}

.harmond-2 {
	background: repeating-linear-gradient(45deg,
			rgba(0, 0, 0, 0),
			rgba(0, 0, 0, 0) 125px,
			rgba(0, 0, 0, 0.03) 125px,
			rgba(0, 0, 0, 0.03) 250px);
}


.midsommar-alt {
	background-color: rgba(255, 253, 243, 0.38);
}

.harmond-alt {
	background-color: rgba(24, 99, 91, .25);
}

.harmond-alt-2 {
	background-color: rgba(140, 6, 22, 0.85);
}

.labanda {
	background-color: rgba(235, 72, 38, 1);
}

.labanda-alt {
	background-color: rgba(235, 72, 38, 0.65);
}

.stellenangebote {
	background-color: rgba(255, 200, 3, 1);
}

.stellenangebote-alt {
	background-color: rgba(255, 200, 3, 0.15);
}

.ido {
	background-color: rgba(68, 214, 44, 0);
}

.ido-alt {
	background-color: rgba(68, 214, 44, 0.51);
}

.wosk {
	background: url('https://wosk.de/images/bg.jpg');
}

.wosk-alt {
	background-color: rgba(53, 56, 101, 0.45);
}

.monacojazz {
	background-color: rgba(237, 237, 0, 1);
}

.monacojazz-alt {
	background-color: rgba(237, 237, 0, 0.46);
}

.tiefhaus {
	background: linear-gradient(135deg, rgba(28, 29, 88, 1), rgba(46, 48, 146, 1));
}

.tiefhaus-alt {
	background: linear-gradient(135deg, rgba(28, 29, 88, 0.1), rgba(46, 48, 146, 0.1));
}

.weissschwarz {
	background-color: rgba(24, 24, 24, 1);
}

.weissschwarz-alt {
	background-color: rgba(24, 24, 24, 0.25);
}

.orno {
	background-color: rgba(255, 255, 255, 0.95);
	color: #000000 !important;
}

.orno-alt {
	background-color: rgba(255, 255, 255, 0.55);
}

.orno-3d {
	width: 100%;
	height: 100%;
}

.headspace {
	background-color: rgba(252, 127, 29, 1);
}

.headspace-alt {
	background-color: rgba(252, 127, 29, 0.35);
}

.adidas {
	background-color: rgba(0, 121, 194, 0.85);
}

.adidas-alt {
	background-color: rgba(0, 121, 194, 0.25);
}


.schallvagabunden {
	background-color: var(--wp--preset--color--base);
}

.clients ul {
	text-transform: uppercase;
	font-family: 'Rotis Sans Serif Std';
}

.miroboard {
	box-sizing: border-box;
	border: 1px solid #E0E0E0;
}

.alchemy {
	background-color: rgba(230, 228, 219, 1);
}

.alchemy-alt {
	background-color: rgba(81, 88, 71, 0.5);
}

.wmf {
	background-color: rgba(0, 0, 0, 1);
}

.wmf-alt {
	background-color: rgba(0, 0, 0, 0.23);
}

.text-section {
	width: 50%;
	padding: 2rem;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	overflow-y: auto;
}

.text-section h2 {
	font-size: 2.75rem;
	position: relative;
	width: 100% !important;
	margin-bottom: var(--main-vertical-spacer);
}

@media (max-width: 768px) {
	.text-section h2 {
		font-size: 1.75rem;
	}
}

.text-section .p .key-achievements {
	position: relative;
	width: 100% !important;
	margin-bottom: var(--main-vertical-spacer);
}

.half {
	position: relative;
	float: none;
	width: 50vw;
}

.full {
	position: relative;
	float: none;
	width: 100vw;
	padding: 4rem;
}

/* General container styles */
.container {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	/* Adds space between items */
	justify-content: start;
	/* Align items to the start */
	padding: 0 2rem;
}

@media (prefers-color-scheme: dark) {
	.network {
		width: 100%;
		height: 100%;
		background-size: 400% 400%;
		animation: moveGradient 5s alternate infinite;
		position: relative;
		overflow: hidden;
		mix-blend-mode: normal;
		z-index: -8;
	}

	.network:before {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-image: radial-gradient(circle at 30% 107%, rgba(100, 100, 100, 0.85) 0%, transparent 100%),
			/* Lightened white */
			radial-gradient(circle at 80% 10%, rgb(50, 50, 50, 1) 0%, transparent 50%);
		/* Lightened white */
		background-size: 500% 500%;
		animation: moveGradient 7s alternate infinite;
		z-index: -9;
		mix-blend-mode: normal;
	}

	.network:after {
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-image: radial-gradient(circle at 70% -30%, rgb(0, 0, 0, 1) 0%, transparent 0%),
			/* Lightened black */
			radial-gradient(circle at 20% 110%, rgba(10, 10, 10, 0.95) 0%, transparent 0%);
		/* Lightened dark grey */
		background-size: 200% 200%;
		animation: moveGradient 3s alternate infinite;
		animation-delay: 3s;
		z-index: -10;
		mix-blend-mode: normal;
	}
}

/* Adding a blur overlay */
.network::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	backdrop-filter: blur(25px);
	z-index: -2;
}

.card {
	border-radius: 4px;
	padding: 2rem;
	flex-shrink: 1;
	flex-basis: calc(20% - 1rem);
	/* Adjust for 4 cards per row, subtracting gap */
	min-height: 250px;
	border-style: solid;
	border-color: #ffffff50;
	border-width: 1px;
}

.embed {
	border-radius: 4px;
	padding: 2px;
	flex-shrink: 1;
	flex-basis: 100%;
	/* Adjust for 4 cards per row, subtracting gap */
	min-height: 600px;
	border-style: solid;
	border-color: #ffffff50;
	border-width: 1px;
	background: #2a2a2a;
	opacity: 0.92;
}

/*.card:hover {
    border-color: #000000;
}*/

.founder {
	background: #00000015;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.partner {
	background: #00000035;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.member {
	background: #00000055;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.unconfirmed {
	filter: blur(5px);
}

.role {
	bottom: 0;
	font-size: 0.85rem;
	line-height: 1.25rem;
	margin-top: 0.5em;
	margin-bottom: 0;
}

.position {
	font-size: 0.85rem;
	line-height: 1.25rem;
	margin-top: 0.5em;
	opacity: 0.35;
}

@media (prefers-color-scheme: dark) {
	.founder {
		background: #ffffff55;
		backdrop-filter: blur(50px);
		-webkit-backdrop-filter: blur(50px);
	}

	.partner {
		background: #ffffff25;
		backdrop-filter: blur(50px);
		-webkit-backdrop-filter: blur(50px);
	}

	.member {
		background: #ffffff05;
		backdrop-filter: blur(50px);
		-webkit-backdrop-filter: blur(50px);
	}
}

.card h2 {
	font-size: 0.85rem;
	margin-bottom: 0;
	z-index: 10;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
	.card {
		flex-basis: calc(33vw - 0.25rem);
		/* Adjust for 2 cards per row on mobile */
	}

	.embed {
		flex-basis: calc(84vw - 0.25rem);
		/* Adjust for 2 cards per row on mobile */
	}

	.inline-list {
		padding-right: 4rem !important;
	}

	.clients-heading {
		padding-right: 4rem !important;
	}
}

.contact {
	position: relative;
	padding: 4rem;
	float: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

.contact button {
	margin-left: 4rem;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.contact button:hover {
	background-color: #000000;
	color: #ffffff;
}

.half img {
	float: right;
}

.half .right img {
	float: right !important;
}

video {
	width: 50vw;
	text-align: left;
	margin-bottom: 0;
}

video .vid2 {
	width: 50vw;
	height: 50vw !important;
}

.phone-section,
.tablet-section,
.desktop-section {
	position: relative;
	float: none;
	width: 50%;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
	padding-top: 4em;
	padding-bottom: 4em;
}

.phone-mockup,
.tablet-mockup,
.desktop-mockup {
	border: 9px solid #a0a0a0;
	overflow: hidden;
	background: #fff;
	box-shadow: 0 4px 25px rgba(0, 0, 0, 0.61);
	position: relative;
	z-index: 2;
}

.phone-screen,
.tablet-screen,
.desktop-screen {
	overflow-y: scroll;
}

.img-50 {
	width: 50vw;
}

.img-50-only {
	width: 50vw;
}

.break {
	flex-basis: 100%;
	height: 0;
}

.content {
	width: 100%;
}

/* Additional styles for images */
.content-image {
	width: 100%;
	/* Ensures image is responsive and scales with its container */
	height: auto;
	/* Maintains aspect ratio */
	display: block;
	/* Removes any extra space below the image */
}

/* Additional styles for images */
.content-image-horizontal {
	height: 100%;
	/* Maintains aspect ratio */
	display: block;
	/* Removes any extra space below the image */
}

/* Phone specific styles */
.red-mockup {
	width: 432px;
	/* Adjusted for 9:16 aspect ratio */
	height: 768px;
	border-radius: 20px;
	outline-style: outset;
	outline-width: 2px;
	outline-color: #BEBEBE;
}

.red-screen {
	height: 100%;
	border-radius: 10px;
	outline-style: outset;
	outline-width: 2px;
	outline-color: #BEBEBE;
}

/* Tablet specific styles */
.blue-mockup {
	width: 512px;
	/* Adjusted for 3:2 aspect ratio */
	height: 341px;
	border-radius: 20px;
	outline-style: outset;
	outline-width: 2px;
	outline-color: #BEBEBE;
}

.blue-screen {
	height: 100%;
	border-radius: 10px;
	outline-style: outset;
	outline-width: 2px;
	outline-color: #BEBEBE;
}

/* Desktop specific styles */
.green-mockup {
	width: 640px;
	/* Adjusted for 5:4 aspect ratio */
	height: 512px;
	border-radius: 20px;
	outline-style: outset;
	outline-width: 2px;
	outline-color: #BEBEBE;
}

.green-screen {
	height: 100%;
	border-radius: 10px;
	outline-style: outset;
	outline-width: 2px: outline-color: #BEBEBE;
}

.additional-info {
	width: 100hw;
	position: absolute;
	padding-left: 2rem;
	padding-right: 2rem;
	bottom: 2rem;
	font-size: 0.85rem;
	z-index: 4;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	width: 90%;
}

.additional-info-rel {
	width: 100%;
	position: relative;
	font-size: 0.85rem;
	color: rgb(0, 0, 0, 0.35);
	z-index: 3;
	padding-left: 2rem;
	padding-right: 2rem;
	margin-top: 2rem;
	padding-bottom: 0;
}

/* Styles for mobile screens */
@media (max-width: 768px) {
	.nav-container {
		width: 100%;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		/* Align items on opposite ends */
		position: relative;
		/* Relative positioning for absolute children */
	}

	.top-section {
		min-height: 0;
	}

	.top-section h1 {
		font-size: 2.75rem;
	}

	@media (max-width: 768px) {
		.top-section h1 {
			font-size: 1.75rem;
		}
	}

	.hamburger-menu {
		display: block;
		right: 2rem;
		top: 2rem;
		z-index: 9;
		/* Ensure it's above other elements */
		font-family: monospace;
		background: rgba(255, 255, 255, 0.85);		
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px);
		height: 24px;
		width: 24px;
		border-radius: 4px;
		padding: 2px;
		animation: fadeIn 0.5s ease-in-out;
	}

	.hamburger {
		transform: translate(0, -6px);
		fill: #000000;
	}

	@media (prefers-color-scheme: dark) {
		.hamburger-menu {
			background: rgba(0, 0, 0, 0.21);			backdrop-filter: blur(10px);
			-webkit-backdrop-filter: blur(10px);
		}

		.hamburger {
			transform: translate(0, -6px);
			fill: #ffffff !important;
		}
	}

	.nav-item-active {
		/* Add styles for nav-item-active to ensure proper alignment and visibility */
		display: block;
		/* Keep it inline with the hamburger menu */
		vertical-align: middle;
		/* Align it vertically in the middle */
		margin-right: 2rem;
		/* Provide some space between this item and the hamburger menu */
		width: 200vw;
	}

	.nav-item:not(.nav-item-active) {
		display: none;
		width: 200vw;
	}

	/* Styles for overlay menu in day mode */
	.nav-overlay {
		background: rgba(255, 255, 255, 0.87);
		/* More opaque white background */
		color: var(--text-color);
	}

	.nav-overlay::before {
		content: "";
		display: block;
		backdrop-filter: blur(50px);
		-webkit-backdrop-filter: blur(50px);
		position: fixed;
		/* Fixed positioning to cover the entire viewport */
		top: 0;
		left: 0;
		padding: 2rem;
		width: 100vw;
		height: 100vh;
		z-index: 6;
		/* Ensure it's above all other content */
	}

	/* Styles for overlay menu in night mode */
	@media (prefers-color-scheme: dark) {
		.nav-overlay {
			background: #00000085;
			backdrop-filter: blur(50px);
			-webkit-backdrop-filter: blur(50px);
			color: var(--text-color);
			/* Use the text color defined in :root for night mode */
		}

		.nav-overlay::before {
			display: none;
			/* Hidden by default */
		}
	}


	.nav-overlay {
		font-family: 'Rotis Sans Serif Std';
		display: none;
		/* Hidden by default */
		position: fixed;
		/* Fixed positioning to cover the entire viewport */
		top: 0;
		left: 0;
		padding: 2rem;
		width: 100vw;
		height: 100vh;
		justify-content: start;
		align-items: left;
		z-index: 5;
		/* Ensure it's above all other content */
		width: calc(100% - 4rem);
		flex-direction: column;
	}

	.nav-overlay .logo a {
		position: relative;
		top: 0;
		left: 0;
		z-index: 10;
	}

	.nav-overlay .nav-item::before {
		content: '→ ';
	}

	.nav-overlay .nav-item {
		display: block;
		/* Ensure nav items are visible */
		margin-bottom: 0.85rem;
		/* Add some vertical spacing */
		font-size: 1.25rem;
		/* Larger font size for better readability */
		font-family: 'Rotis Sans Serif Std';
		z-index: 20;
		border: 0;
		height: fit-content;
		width: 100%;
		margin-left: 58px;
	}

	.nav-overlay .nav-item:nth-child(2) {

		margin-top: -33px;
	}


	.wrapper {
		flex-direction: column;
		/* Stack the elements */
	}

	.-small {
		display: none;
	}

	.top-section h2 {
		font-size: 2em;
		/* Adjust size as needed */
	}

	.card {
		padding: 1rem;
		min-height: 150px;
	}

	.inline-list {
		list-style: none;
		padding-left: 0;
		padding-right: 2rem;
		margin: 0;
		font-size: 0.85rem;
		line-height: 1rem;
	}

	.inline-list li {
		display: inline;
		white-space: normal !important;
		;
		/* Prevents the text from wrapping */
	}

	video {
		width: 100vw;
		text-align: left;
		margin-bottom: 0;
	}

	.miroboard {
		box-sizing: border-box;
		border: 0px solid #E0E0E0;
	}

	.half {
		width: 100vw;
	}

	.img-50 {
		width: 100vw;
	}

	.text-section,
	.clients {
		width: 100%;
		/* Full width on small screens */
		padding: 2rem;
		/* Smaller padding on small screens */
		order: 2;
		/* Text sections go below the mockups */
	}

	.phone-section,
	.tablet-section,
	.desktop-section,
	.outercenter {
		width: 100%;
		/* Make the section full width */
		overflow: visible;
		/* Changed to visible to prevent cutoff */
	}


	.phone-mockup {
		width: calc((90vw * 16) / 16);
		/* Increase width to be cut off */
		height: calc(90vw * 16 / 9);
		/* Height to maintain aspect ratio */
		align-self: flex-end;
		/* Align to the right */
		margin-right: calc(-1 * ((90vw * 16) / 9) * 0.25);
		/* 25% extends off-screen */
	}

	.tablet-mockup {
		width: calc((100vw * 2) / 2);
		/* Increase width to be cut off */
		height: calc(100vw * 2 / 3);
		/* Height to maintain aspect ratio */
		align-self: flex-start;
		/* Align to the left */
		margin-left: calc(-1 * ((100vw * 2) / 3) * 0.25);
		/* 25% extends off-screen */
	}

	.desktop-mockup {
		width: calc((100vw * 4) / 4);
		/* Increase width to be cut off */
		height: calc(100vw * 4 / 5);
		/* Height to maintain aspect ratio */
		align-self: flex-end;
		/* Align to the right */
		margin-right: calc(-1 * ((100vw * 4) / 5) * 0.25);
		/* 25% extends off-screen */
	}

	/* Image/device first on mobile */
	.phone-mockup,
	.tablet-mockup,
	.desktop-mockup {
		order: 1;
		/* Images/devices go above the text sections */
	}

	.hidden-xs {
		display: none;
	}

	.additional-info-rel {
		order: 2;
		text-align: right;
		padding-right: 2rem;
		margin-top: 2em;
	}

	.miroboard-1 {
		min-height: 500px;
	}

	.cta-button-small {
		align-items: center;
		width: 75% !important;
	}

	.book {
		position: absolute !important;
		transform: scale(1.5) !important;
		margin-top: -75vh !important;
	}

	.contact button {
		margin-left: 0;
	}
}

.hero {
	display: grid;
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	perspective: 1000px;
	z-index: 1;
}

.underline {
	position: relative;
	text-decoration: none;
	line-height: 1;
}

/* Smaller CTA button */
.cta-button-small {
	background-color: #ffffff;
	/* Or any color you prefer */
	color: #000000;
	/* Or any text color you prefer */
	border: 1px solid #000000;
	border-radius: 50px;
	/* Adjust as needed for the desired curvature */
	padding: 8px 32px;
	/* Smaller padding */
	font-size: 14px;
	/* Smaller font size */
	text-decoration: none;
	/* Remove underline from links */
	display: flex;
	/* Allows for width and height to be set */
	margin-bottom: 1rem;
	/* Add some space below the CTA */
	transition: background-color 0.3s ease;
	/* Smooth transition for hover effect */
	width: 50%;
}

/* Hover effect for smaller CTA button */
.cta-button-small:hover {
	background-color: #000000;
	/* Change color on hover */
	color: #ffffff;
	/* Change text color on hover */
}

.outercenter {
	display: flex;
	flex-direction: column;
	/* Stack children vertically */
	justify-content: center;
	align-items: center;
	min-height: 50vh;
	background: var(--background-very-light-day);
}

.outercenter .cta-button-small {
	z-index: 999;
}

button {
	background-color: #ffffff;
	color: black;
	border: 0px;
	border-radius: 100px;
	padding: 16px 64px;
	font-size: 18px;
	font-family: inherit;
	transition: transform 0.1s;
	cursor: pointer;
}

.hero-2 {
	min-height: 50vh;
	display: grid;
	place-items: center;
	text-align: center;
	background-color: #ffffff;

	&__content {
		max-width: 1400px;
	}
}

/* new css 28/07/24 */

.headspace-photo .half {
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-wrap: wrap;
}

.headspace-photo img {
	margin: 10px;
}

.logo-box {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 50%;
	height: 400px;
	margin: 10px;
	box-sizing: border-box;
}

.padding {
	padding: 2rem;
}

.headspace-logo {
	max-width: 100%;
	max-height: 100%;
}

.headspace .text-section {
	padding: 2rem;
}

.headspace .client-quote {
	font-family: 'Rotis Sans Serif Std';
	font-size: 0.85rem;
	border-left: 2px solid #F8F8F8;
	padding-left: 1rem;
	margin-bottom: var(--main-vertical-spacer);
	line-height: 1.25rem;
	width: 66.333%;
}

.headspace .client-name {
	font-family: 'Rotis SemiSerif Std';
}

.embed-container {
	position: relative;
	padding-bottom: 56.25%;
	/* 16:9 aspect ratio */
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* MODUS PAGE */

/* Modus Operandi Page Styles */

/* Skills Container */
.skills-container {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	margin: 0 auto;
	padding: 2rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
}

/* Skill Cards */
.skill-card {
	background-color: rgba(0, 0, 0, 0.25);
	padding: 2rem;
	border-radius: 4px;
	border: 1px solid rgba(255, 255, 255, 0.1);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	display: flex;
	flex-direction: column;
	height: auto;
	min-height: 350px;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}

.skill-card:hover, .card:hover {
	transform: translateY(-5px) rotate(-.5deg);
	box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
	border-color: rgba(255, 255, 255, 0.2);
}

.skill-card h2 {
	font-size: 1.5rem;
	margin-bottom: 1.5rem;
	position: relative;
	font-family: 'Rotis Sans Serif Std';
}

.skill-card p {
	font-size: 0.95rem;
	line-height: 1.5;
	margin-bottom: 2rem;
	flex-grow: 1;
}

.skill-examples {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: auto;
}

.skill-tag {
	background-color: rgba(255, 255, 255, 0.1);
	padding: 0.25rem 0.75rem;
	border-radius: 2rem;
	font-size: 0.75rem;
	font-family: 'Rotis Sans Serif Std';
}

.workshop {
	background: linear-gradient(145deg,
			rgba(166, 3, 245, 0.15),
			rgba(239, 61, 6, 0.15));
}

/* Sprint Banner Card */
.sprint-banner-card {
	background: linear-gradient(to right, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.25));
	border-radius: 2rem;
	margin: 4rem 2rem;
	padding: 3.5rem;
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 255, 255, 0.05);
}

/* Mode section - will automatically handle day/night color changes */
.mode-section {
	color: inherit;
}

.mode-section h2,
.mode-section p,
.mode-section .phase-number,
.mode-section .phase-name,
.mode-section .advantages-divider span,
.mode-section .advantage-card h4 {
	color: inherit;
}

.sprint-banner-card h2 {
	font-size: 2.5rem;
	margin-bottom: 1.5rem;
	text-align: center;
	font-family: 'Rotis Sans Serif Std';
}

.sprint-intro {
	font-size: 1.25rem;
	line-height: 1.6;
	max-width: 900px;
	margin: 0 auto 4rem;
	text-align: center;
}

/* Sprint Process Container */
.sprint-process-container {
	margin-bottom: 4rem;
}

/* Sprint Process with Phases in Circles */
.sprint-process {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 0 1rem;
}

.sprint-phase {
	position: relative;
	width: 20%;
	text-align: center;
	z-index: 1;
	padding: 0 1rem;
}

.phase-circle {
	width: 8rem;
	height: 8rem;
	border-radius: 50%;
	background: rgba(0, 0, 0, 0.5);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: 0 auto 2rem;
	border: 1px solid rgba(255, 255, 255, 0.15);
	position: relative;
	z-index: 2;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.phase-circle:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.phase-number {
	font-family: 'Rotis Sans Serif Std';
	font-size: 1.25rem;
	line-height: 1;
	margin-bottom: 0.25rem;
}

.phase-name {
	font-family: 'Rotis Sans Serif Std';
	font-size: 1.25rem;
	line-height: 1;
}

.sprint-phase p {
	font-size: 0.9rem;
	line-height: 1.5;
	margin-top: 0.5rem;
}

/* Simple Heading Divider */
.advantages-divider {
	position: relative;
	text-align: center;
	margin: 3rem 0 2rem;
}

.advantages-divider span {
	font-family: 'Rotis Sans Serif Std';
	font-size: 1.75rem;
	position: relative;
	padding: 1.5rem 1.5rem;
}

/* Gradient after divider span */
.advantages-divider span:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 50px;
	height: 2px;
	background: linear-gradient(to right,
			rgba(255, 255, 255, 0),
			rgba(255, 255, 255, 0.5),
			rgba(255, 255, 255, 0));
}

/* Sprint Advantages Container */
.sprint-advantages-container {
	padding-top: 1rem;
}

/* Advantages Grid */
.advantages-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
}

.advantage-card {
	background: rgba(0, 0, 0, 0.25);
	border-radius: 1rem;
	padding: 1.5rem;
	border: 1px solid rgba(255, 255, 255, 0.05);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.advantage-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.2);
}

.advantage-card h4 {
	font-size: 1.25rem;
	margin-bottom: 1rem;
	font-family: 'Rotis Sans Serif Std';
}

.advantage-card p {
	font-size: 0.9rem;
	line-height: 1.5;
}



/* Icon styling */
.advantage-icon {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 60px;
}

.advantage-icon svg {
  transition: transform 0.3s ease, stroke 0.3s ease;
}

/* Make the icons more prominent on hover */
.advantage-card:hover .advantage-icon svg {
  transform: scale(1.2);
  stroke-width: 2.2;
}

/* Day/Night mode icon colors */
body.day-mode .advantage-icon svg {
  stroke: rgba(0, 0, 0, 0.8);
}

body.night-mode .advantage-icon svg,
.advantage-icon svg {
  stroke: rgba(255, 255, 255, 0.8);
}

/* Opacity gradient for cards */
#advantageCard1 {
  background: rgba(0, 0, 0, 0.15);
}

#advantageCard2 {
  background: rgba(0, 0, 0, 0.25);
}

#advantageCard3 {
  background: rgba(0, 0, 0, 0.35);
}

#advantageCard4 {
  background: rgba(0, 0, 0, 0.45);
}

/* Day mode overrides for opacity gradient */
body.day-mode #advantageCard1 {
  background: rgba(255, 255, 255, 0.7);
}

body.day-mode #advantageCard2 {
  background: rgba(255, 255, 255, 0.8);
}

body.day-mode #advantageCard3 {
  background: rgba(255, 255, 255, 0.9);
}

body.day-mode #advantageCard4 {
  background: rgba(255, 255, 255, 1);
}

/* Center the card content for better aesthetic */
.advantage-card {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.advantage-card p {
  text-align: center;
}

#domains {
	display: none;
}

.domains-container {
  padding: 0.1rem 25vw 0 25vw;
  text-align: center;
}

.domains-tagcloud {
  list-style: none;
  padding: 0;
  margin: 2rem auto;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
}

.domain-tag {
  background-color: rgba(255, 255, 255, 0.15);
  border-radius: 2rem;
  padding: 0.5rem 1rem;
  max-width: 220px;
  cursor: pointer;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  text-align: center;
  position: relative;
}

.domain-tag:hover {
  transform: translateY(-3px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* Tooltip styles using the data-tooltip attribute */
.domain-tag:hover:after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 120%; /* Positions tooltip above the tag */
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  padding: 0.5rem;
  border-radius: 4px;
  white-space: nowrap;
  opacity: 0;
  animation: fadeIn 0.3s forwards;
  pointer-events: none;
  font-size: 0.8rem;
  z-index: 10;
}

/* Optional arrow below the tooltip */
.domain-tag:hover:before {
  content: "";
  position: absolute;
  bottom: 110%; /* Adjust to sit between tag and tooltip */
  left: 50%;
  transform: translateX(-50%);
  border-width: 5px;
  border-style: solid;
  border-color: transparent transparent rgba(0, 0, 0, 0.8) transparent;
  z-index: 10;
}

@keyframes fadeIn {
  to { opacity: 1; }
}

.domain-title {
  font-family: 'Rotis Sans Serif Std';
  font-size: 1rem;
  display: block;
}

/* Day Mode Overrides for Sprint Section Backgrounds */
body.day-mode .sprint-banner-card {
	background: linear-gradient(to right, rgba(255, 255, 255, 0.95), rgba(245, 245, 245, 0.95));
	border-color: rgba(0, 0, 0, 0.1);
}

body.day-mode .phase-circle {
	background: rgba(255, 255, 255, 1);
	border-color: rgba(0, 0, 0, 0.1);
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

body.day-mode .advantage-card {
	background: rgba(255, 255, 255, 0.9);
	border-color: rgba(0, 0, 0, 0.1);
}

body.day-mode .advantages-divider span {
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

body.day-mode .advantages-divider span:after {
	background: linear-gradient(to right,
			rgba(0, 0, 0, 0),
			rgba(0, 0, 0, 0.3),
			rgba(0, 0, 0, 0));
}

body.day-mode .skill-card {
	background-color: rgba(255, 255, 255, 0.35);
	border-color: rgba(0, 0, 0, 0.1);
}

body.day-mode .skill-tag {
	background-color: rgba(0, 0, 0, 0.1);
}

body.day-mode .workshop {
	background: linear-gradient(145deg,
			rgba(166, 3, 245, 0.15),
			rgba(239, 61, 6, 0.15));
}

/* Responsive Adjustments */
@media (max-width: 1200px) {
	.skills-container {
		grid-template-columns: repeat(3, 1fr);
	}

	.advantages-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 1.5rem;
	}
}

@media (max-width: 992px) {

	.advantages-divider span:after {
		bottom: -15px;
	}

	.skills-container {
		grid-template-columns: repeat(2, 1fr);
	}

	.sprint-process {
		flex-wrap: wrap;
		justify-content: center;
	}

	.sprint-phase {
		width: 33.33%;
		margin-bottom: 2.5rem;
	}

	.sprint-banner-card {
		margin: 3rem 1.5rem;
		padding: 2.5rem;
	}
}

@media (max-width: 768px) {
	.skills-container {
		grid-template-columns: 1fr;
	}

	.skill-card {
		min-height: auto;
	}

	.sprint-phase {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		margin-bottom: 3rem;
	}

	.advantages-grid {
		grid-template-columns: 1fr;
		gap: 1.5rem;
	}

	.sprint-banner-card h2 {
		font-size: 2rem;
	}

	.sprint-intro {
		font-size: 1rem;
	}

	.sprint-banner-card {
		margin: 2rem 1rem;
		padding: 2rem;
		border-radius: 1.5rem;
	}
.domains-container {
  padding: 0.1rem 0 0 0;
}
}

@media (max-width: 480px) {
	.sprint-phase {
		margin-bottom: 2rem;
	}

	.phase-circle {
		width: 7rem;
		height: 7rem;
	}

	.skill-card,
	.sprint-banner-card {
		padding: 1.5rem;
	}

	.sprint-banner-card {
		margin: 1.5rem 0.75rem;
		border-radius: 1rem;
	}

	.advantages-divider span {
		font-size: 1rem;
		padding: 0.3rem 1rem;
	}
}

body.night-mode {
  background-color: var(--background-night) !important;
  color: var(--text-night) !important;
}
body:not(.night-mode) {
  background-color: var(--background-day) !important;
  color: var(--text-day) !important;
}