/* Extracted from app/index.html */

		.fullHeight {
			height: 100%;
		}

		.profilePhoto {
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center top;
			display: block;
			border-radius: 0;
		}

		.aboutme .proPic img.profilePhoto {
			border-radius: 0;
		}

		.skillsNoPadding {
			padding: 0 !important;
		}

		.meterFillFull {
			width: 100%;
		}

		.meterFillEighty {
			width: 80%;
		}

		.linkInherit,
		.linkInherit:hover,
		.linkInherit:focus {
			color: inherit;
		}

		.workDetailsTight {
			margin-top: -30px;
		}

		.educationLogoRaised {
			margin-top: -10px;
		}

		.cursorPointer {
			cursor: pointer;
		}

		.legalLabelText {
			color: #4a4a4a;
		}

		.hero-summary {
			max-width: 760px;
			margin: 24px auto 0;
			padding-bottom: 0;
			font-size: 18px;
			line-height: 30px;
			color: #ffffff;
		}

		.contactList {
			font-style: normal;
		}

		.contactList p {
			padding-bottom: 10px;
		}

		.contact-form-copy {
			padding-bottom: 22px;
		}

		.contact .heading p.contactIntroCopy {
			color: var(--cv-contact-intro-text);
		}

		.contact .heading p.contactIntroCopy:first-of-type {
			padding-bottom: 12px;
		}

		.contact .heading p.contactIntroCopy a {
			color: var(--cv-contact-intro-link);
			font-weight: 700;
			text-decoration: underline;
			text-underline-offset: 2px;
		}

		.contact .heading p.contactIntroCopy a:hover {
			color: var(--cv-contact-intro-link);
		}

		.consentLabel {
			display: flex;
			gap: 8px;
			align-items: flex-start;
			margin: 10px 0 10px;
			font-size: 13px;
			line-height: 20px;
			color: #5e5e5e;
		}

		.consentLabel input {
			width: auto !important;
			height: auto;
			margin: 4px 0 0;
			padding: 0;
			border: none;
			box-shadow: none;
		}

		.consentLabel a {
			color: #5e5e5e;
			text-decoration: underline;
		}

		.contactStackBlock {
			clear: both;
			margin-top: 20px;
			margin-bottom: 48px;
		}

		.contact .container {
			padding-top: 20px;
		}

		.aboutme .container {
			padding-bottom: 20px;
		}

		.aboutCont {
			padding-bottom: 0;
		}

		.contactDetails .container {
			margin-top: 0;
			padding-top: 20px;
		}

		.education .container {
			padding-top: 20px;
			margin-top: 20px;
		}

		.exprience .container {
			padding-top: 20px;
			margin-top: 20px;
		}

		.technical .container {
			padding-top: 40px;
			margin-top: 0;
		}

		.contact .heading p:last-of-type {
			padding-bottom: 8px;
		}

		.contactStackBlock .btnSingleLine {
			display: block;
			margin: 14px auto 0;
		}

		.contactCard {
			background: #ffffff;
			border: 1px solid #cdc9ce;
			padding: 24px 28px 28px;
		}

		.contactFormCard {
			margin-bottom: 0;
			border: none;
			padding: 0;
			width: 100%;
		}

		#contact-form-body,
		#contact-form {
			width: 100%;
		}

		.contactStateCard {
			display: none;
			margin-top: 0;
			text-align: center;
			border: none;
		}

		.contactStateCard .contactSubTitle {
			text-align: center;
		}

		.contactStateIcon {
			width: 72px;
			height: 72px;
			margin: 0 auto 18px;
			border-radius: 50%;
			display: grid;
			place-items: center;
			background: transparent;
			border: none;
		}

		.contactStateIcon img {
			width: 40px;
			height: auto;
			display: block;
		}

		.contactStateIcon i {
			font-size: 34px;
			line-height: 1;
			color: var(--cv-accent);
			padding: 0;
			margin: 0;
			display: block;
		}

		.contactSpinner {
			width: 34px;
			height: 34px;
			border-radius: 50%;
			border: 4px solid rgba(74, 74, 74, 0.18);
			border-top-color: #4a4a4a;
			animation: contactSpin 0.8s linear infinite;
		}

		.contactStateMessage {
			color: #5e5e5e;
			font-size: 15px;
			line-height: 24px;
			padding-bottom: 18px;
		}

		.contactStateAction {
			display: inline-block;
			margin: 14px auto 0;
			float: none;
			width: auto;
			max-width: 150px;
			padding: 8px 12px;
			font-size: 14px;
			line-height: 1.15;
		}

		.recaptchaNotice {
			margin: 12px 0 0;
			padding: 0;
			font-size: 11px;
			line-height: 16px;
			color: var(--cv-text-soft);
		}

		.recaptchaNotice a {
			color: var(--cv-contact-intro-link);
			text-decoration: underline;
		}

		.grecaptcha-badge {
			visibility: hidden !important;
		}

		.contactNameEmail {
			display: flex;
			gap: 10px;
		}

		.contactNameEmail input {
			flex: 1 1 0;
			min-width: 0;
			margin: 0;
		}

		#cf_submit_p {
			margin: 0;
			padding-bottom: 0;
		}

		.contactSubTitle {
			display: block;
			margin: 0;
			padding-bottom: 15px;
			font-size: 19px;
			line-height: 24px;
			font-weight: 600;
			color: #4a4a4a;
		}

		.contactSubTitleLower {
			text-transform: none;
		}

		.btnSingleLine {
			width: auto;
			padding-left: 22px;
			padding-right: 22px;
			white-space: nowrap;
		}

		.aboutCtaLink {
			width: 200px;
			display: inline-block;
			white-space: nowrap;
			grid-area: rendezvous;
		}

		.aboutButtons {
			display: grid;
			grid-template-columns: 200px 200px;
			grid-template-areas:
				"pdfs rendezvous";
			column-gap: 20px;
			margin-top: 10px;
			margin-bottom: 30px;
			justify-content: start;
			align-items: start;
		}

		.aboutPdfStack {
			grid-area: pdfs;
			display: flex;
			flex-direction: column;
			gap: 0;
		}

		.aboutButtons .bntDownload3,
		.aboutButtons .bntDownload2,
		.aboutButtons .bntDownload1 {
			margin: 0;
			box-sizing: border-box;
			width: 200px;
		}

		.aboutButtons .aboutPdfStack .bntDownload1 {
			margin-bottom: 10px;
		}

		.contactStateAction.btnSingleLine {
			min-width: 0;
			padding: 8px 10px;
			font-size: 14px;
			line-height: 1.15;
		}

		:root {
			color-scheme: light;
			--cv-bg: #ffffff;
			--cv-surface: #ffffff;
			--cv-surface-alt: #fafafa;
			--cv-surface-soft: #f4f6f8;
			--cv-text: #4a4a4a;
			--cv-text-soft: #5e5e5e;
			--cv-heading: #2f3742;
			--cv-border: #cdc9ce;
			--cv-border-soft: #e6e8ee;
			--cv-accent: #097ecb;
			--cv-accent-hover: #075d98;
			--cv-accent-contrast: #ffffff;
			--cv-button-dark: #4a4a4a;
			--cv-button-dark-hover: #2f3640;
			--cv-menu-bg: rgba(255, 255, 255, 0.98);
			--cv-menu-text: #4a4a4a;
			--cv-menu-text-hover: #097ecb;
			--cv-menu-item-hover-bg: rgba(9, 126, 203, 0.08);
			--cv-menu-toggle-border: rgba(74, 74, 74, 0.35);
			--cv-menu-toggle-icon: #4a4a4a;
			--cv-menu-border: rgba(0, 0, 0, 0.08);
			--cv-theme-toggle-bg: rgba(255, 255, 255, 0.92);
			--cv-theme-toggle-color: #4a4a4a;
			--cv-theme-toggle-hover-bg: rgba(244, 246, 248, 0.98);
			--cv-theme-toggle-hover-color: #097ecb;
			--cv-theme-toggle-focus: rgba(9, 126, 203, 0.18);
			--cv-theme-toggle-shadow: 0 10px 26px rgba(15, 23, 42, 0.18);
			--cv-theme-toggle-hover-shadow: 0 14px 30px rgba(15, 23, 42, 0.24);
			--cv-contact-intro-text: #5e5e5e;
			--cv-contact-intro-link: #097ecb;
			--cv-profile-image: url("../images/oussema_daoud_2025.png");
			--cv-year-prev-text: #ffffff;
			--cv-year-after-text: #ffffff;
			--cv-footer-bg: #1d69a2;
			--cv-cookie-bg: rgba(255, 255, 255, 0.96);
			--cv-cookie-shadow: 0 14px 40px rgba(15, 23, 42, 0.18);
			--cv-bg1-image: url("../images/header-image/header-bg7.jpg");
			--cv-bg1-overlay: linear-gradient(rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.04));
			--cv-bg2-overlay: linear-gradient(rgba(0, 0, 0, 0.16), rgba(0, 0, 0, 0.16));
			--cv-bg3-overlay: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22));
		}

		@media (prefers-color-scheme: dark) {
			:root {
				color-scheme: dark;
				--cv-bg: #0b0f14;
				--cv-surface: #11161d;
				--cv-surface-alt: #151b23;
				--cv-surface-soft: #0f141a;
				--cv-text: #d5dbe4;
				--cv-text-soft: #a8b3c3;
				--cv-heading: #f4f7fb;
				--cv-border: #27303a;
				--cv-border-soft: #1f2630;
				--cv-accent: #6fc2ff;
				--cv-accent-hover: #8bd0ff;
				--cv-accent-contrast: #07111a;
				--cv-button-dark: #1a2230;
				--cv-button-dark-hover: #232c3b;
				--cv-menu-bg: #151B23;
				--cv-menu-text: #ffffff;
				--cv-menu-text-hover: #6fc2ff;
				--cv-menu-item-hover-bg: rgba(255, 255, 255, 0.08);
				--cv-menu-toggle-border: rgba(255, 255, 255, 0.16);
				--cv-menu-toggle-icon: #ffffff;
				--cv-menu-border: rgba(255, 255, 255, 0.04);
				--cv-theme-toggle-bg: rgba(21, 27, 35, 0.92);
				--cv-theme-toggle-color: #ffffff;
				--cv-theme-toggle-hover-bg: rgba(31, 38, 48, 0.98);
				--cv-theme-toggle-hover-color: #6fc2ff;
				--cv-theme-toggle-focus: rgba(111, 194, 255, 0.22);
				--cv-theme-toggle-shadow: 0 12px 30px rgba(0, 0, 0, 0.32);
				--cv-theme-toggle-hover-shadow: 0 16px 34px rgba(0, 0, 0, 0.4);
				--cv-contact-intro-text: #d5dbe4;
				--cv-contact-intro-link: #a8b3c3;
				--cv-profile-image: url("../images/oussema_daoud_2025_d.png");
				--cv-year-prev-text: #07111a;
				--cv-year-after-text: #ffffff;
				--cv-footer-bg: #0d1b2b;
				--cv-cookie-bg: rgba(14, 18, 24, 0.96);
				--cv-cookie-shadow: 0 18px 44px rgba(0, 0, 0, 0.38);
				--cv-bg1-image: url("../images/header-image/header-bg7-d.jpg");
				--cv-bg1-overlay: linear-gradient(rgba(6, 8, 12, 0.72), rgba(6, 8, 12, 0.72));
				--cv-bg2-overlay: linear-gradient(rgba(6, 8, 12, 0.50), rgba(6, 8, 12, 0.50));
				--cv-bg3-overlay: linear-gradient(rgba(6, 8, 12, 0.68), rgba(6, 8, 12, 0.68));
			}

			html:not([data-theme="light"]) .bntDownload3:hover,
			html:not([data-theme="light"]) .conForm .submitBnt:hover {
				color: var(--cv-menu-text-hover);
			}
		}

		html[data-theme="light"] {
			color-scheme: light;
			--cv-bg: #ffffff;
			--cv-surface: #ffffff;
			--cv-surface-alt: #fafafa;
			--cv-surface-soft: #ffffff;
			--cv-text: #4a4a4a;
			--cv-text-soft: #5e5e5e;
			--cv-heading: #2f3742;
			--cv-border: #cdc9ce;
			--cv-border-soft: #e6e8ee;
			--cv-accent: #097ecb;
			--cv-accent-hover: #075d98;
			--cv-accent-contrast: #ffffff;
			--cv-button-dark: #4a4a4a;
			--cv-button-dark-hover: #2f3640;
			--cv-menu-bg: rgba(255, 255, 255, 0.98);
			--cv-menu-text: #4a4a4a;
			--cv-menu-text-hover: #097ecb;
			--cv-menu-item-hover-bg: rgba(9, 126, 203, 0.08);
			--cv-menu-toggle-border: rgba(74, 74, 74, 0.35);
			--cv-menu-toggle-icon: #4a4a4a;
			--cv-menu-border: rgba(0, 0, 0, 0.08);
			--cv-theme-toggle-bg: rgba(255, 255, 255, 0.92);
			--cv-theme-toggle-color: #4a4a4a;
			--cv-theme-toggle-hover-bg: rgba(244, 246, 248, 0.98);
			--cv-theme-toggle-hover-color: #097ecb;
			--cv-theme-toggle-focus: rgba(9, 126, 203, 0.18);
			--cv-theme-toggle-shadow: 0 10px 26px rgba(15, 23, 42, 0.18);
			--cv-theme-toggle-hover-shadow: 0 14px 30px rgba(15, 23, 42, 0.24);
			--cv-contact-intro-text: #5e5e5e;
			--cv-contact-intro-link: #097ecb;
			--cv-profile-image: url("../images/oussema_daoud_2025.png");
			--cv-year-prev-text: #ffffff;
			--cv-year-after-text: #ffffff;
			--cv-footer-bg: #1d69a2;
			--cv-cookie-bg: rgba(255, 255, 255, 0.96);
			--cv-cookie-shadow: 0 14px 40px rgba(15, 23, 42, 0.18);
			--cv-bg1-image: url("../images/header-image/header-bg7.jpg");
			--cv-bg1-overlay: linear-gradient(rgba(255, 255, 255, 0.04), rgba(255, 255, 255, 0.04));
			--cv-bg2-overlay: linear-gradient(rgba(0, 0, 0, 0.16), rgba(0, 0, 0, 0.16));
			--cv-bg3-overlay: linear-gradient(rgba(0, 0, 0, 0.22), rgba(0, 0, 0, 0.22));
		}

		html[data-theme="dark"] {
			color-scheme: dark;
			--cv-bg: #0b0f14;
			--cv-surface: #11161d;
			--cv-surface-alt: #151b23;
			--cv-surface-soft: #0f141a;
			--cv-text: #d5dbe4;
			--cv-text-soft: #a8b3c3;
			--cv-heading: #f4f7fb;
			--cv-border: #27303a;
			--cv-border-soft: #1f2630;
			--cv-accent: #6fc2ff;
			--cv-accent-hover: #8bd0ff;
			--cv-accent-contrast: #07111a;
			--cv-button-dark: #1a2230;
			--cv-button-dark-hover: #232c3b;
			--cv-menu-bg: #151B23;
			--cv-menu-text: #ffffff;
			--cv-menu-text-hover: #6fc2ff;
			--cv-menu-item-hover-bg: rgba(255, 255, 255, 0.08);
			--cv-menu-toggle-border: rgba(255, 255, 255, 0.16);
			--cv-menu-toggle-icon: #ffffff;
			--cv-menu-border: rgba(255, 255, 255, 0.04);
			--cv-theme-toggle-bg: rgba(21, 27, 35, 0.92);
			--cv-theme-toggle-color: #ffffff;
			--cv-theme-toggle-hover-bg: rgba(31, 38, 48, 0.98);
			--cv-theme-toggle-hover-color: #6fc2ff;
			--cv-theme-toggle-focus: rgba(111, 194, 255, 0.22);
			--cv-theme-toggle-shadow: 0 12px 30px rgba(0, 0, 0, 0.32);
			--cv-theme-toggle-hover-shadow: 0 16px 34px rgba(0, 0, 0, 0.4);
			--cv-contact-intro-text: #d5dbe4;
			--cv-contact-intro-link: #a8b3c3;
			--cv-profile-image: url("../images/oussema_daoud_2025_d.png");
			--cv-year-prev-text: #07111a;
			--cv-year-after-text: #ffffff;
			--cv-footer-bg: #0d1b2b;
			--cv-cookie-bg: rgba(14, 18, 24, 0.96);
			--cv-cookie-shadow: 0 18px 44px rgba(0, 0, 0, 0.38);
			--cv-bg1-image: url("../images/header-image/header-bg7-d.jpg");
			--cv-bg1-overlay: linear-gradient(rgba(6, 8, 12, 0.72), rgba(6, 8, 12, 0.72));
			--cv-bg2-overlay: linear-gradient(rgba(6, 8, 12, 0.50), rgba(6, 8, 12, 0.50));
			--cv-bg3-overlay: linear-gradient(rgba(6, 8, 12, 0.68), rgba(6, 8, 12, 0.68));
		}

		html,
		body {
			background: var(--cv-bg);
			color: var(--cv-text);
		}

		body {
			transition: background-color 0.25s ease, color 0.25s ease;
		}

		.bg1 {
			background-image: var(--cv-bg1-overlay), var(--cv-bg1-image);
			background-repeat: no-repeat;
			background-position: center;
			background-size: cover;
		}

		.bg2 {
			background-image: var(--cv-bg2-overlay), url("../images/header-image/dj-watt-mixing.jpg");
			background-repeat: no-repeat;
			background-position: center;
			background-attachment: fixed;
			background-size: cover;
		}

		.bg3 {
			background-image: var(--cv-bg3-overlay), url("../images/header-image/header-bg5.jpg");
			background-repeat: no-repeat;
			background-position: center;
			background-attachment: fixed;
			background-size: cover;
		}

		.aboutme,
		.education,
		.contact,
		.contactDetails {
			background: var(--cv-surface);
		}

		.aboutme {
			background: var(--cv-surface-alt);
		}

		.exprience,
		.technical {
			background: var(--cv-surface-soft);
		}

		.aboutme p,
		.exprience p,
		.education p,
		.contact p,
		.contactDetails p,
		.refBoxcon p,
		.modal-body p {
			color: var(--cv-text-soft);
		}

		.aboutme .heading h2,
		.aboutme h3,
		.technical h2,
		.technical .skills h4,
		.exprience h2,
		.exprience h4,
		.exprience h5,
		.education h2,
		.education h4,
		.education h5,
		.contact h2,
		.contact h4,
		.contactDetails h2,
		.contactDetails h4,
		.contactStateCard .contactSubTitle,
		.contact-form-copy,
		.contactStateMessage,
		.refBoxcon h3,
		.refBoxcon h4,
		.modal-header,
		.modal-footer {
			color: var(--cv-heading);
		}

		.contact-form-copy,
		.contactStateMessage,
		.modal-body,
		.cookieBannerCopy p {
			color: var(--cv-text-soft);
		}

		.aboutme .proPic:after {
			content: none;
		}

		.workDetails .rightArea {
			border-left-color: var(--cv-border);
		}

		.prevY {
			background-color: var(--cv-accent);
			color: var(--cv-year-prev-text);
		}

		.afterY {
			background-color: var(--cv-button-dark);
			color: var(--cv-year-after-text);
		}

		.arrowpart {
			background-color: var(--cv-surface);
		}

		.exCon h4,
		.exCon h5,
		.percent,
		.percent1,
		.workYear {
			color: var(--cv-heading);
		}

		.contactCard,
		.contactStateCard,
		.refBoxcon,
		.modal-content {
			background: var(--cv-surface);
			border-color: var(--cv-border-soft);
		}

		.conForm input,
		.conForm textarea {
			background: var(--cv-surface);
			color: var(--cv-text);
			border-color: var(--cv-border);
			display: block;
			width: 100%;
			box-sizing: border-box;
		}

		.conForm input::placeholder,
		.conForm textarea::placeholder {
			color: var(--cv-text-soft);
			opacity: 0.8;
		}

		.conForm .submitBnt {
			background: var(--cv-button-dark);
			border-color: var(--cv-button-dark);
			color: #ffffff;
		}

		.conForm .submitBnt:hover {
			background: transparent;
			color: var(--cv-button-dark);
		}

		html[data-theme="dark"] .conForm .submitBnt:hover {
			color: var(--cv-menu-text-hover);
		}

		.contactSpinner {
			border-color: rgba(111, 194, 255, 0.18);
			border-top-color: var(--cv-accent);
		}

		.bntDownload3 {
			background: var(--cv-button-dark);
			border-color: var(--cv-button-dark);
			color: #ffffff;
		}

		.bntDownload3:hover {
			background: transparent;
			color: var(--cv-button-dark);
		}

		html[data-theme="dark"] .bntDownload3:hover {
			color: var(--cv-menu-text-hover);
		}

		.bntDownload2 {
			background: var(--cv-accent);
			border-color: var(--cv-accent);
			color: var(--cv-accent-contrast);
		}

		.bntDownload2:hover {
			border-color: var(--cv-accent);
			background: transparent;
			color: var(--cv-accent);
		}

		.bntDownload1 {
			color: var(--cv-accent);
		}

		.bntDownload1:hover {
			background: var(--cv-accent);
			color: var(--cv-accent-contrast);
		}

		.contactFormCard,
		.contactStateCard {
			border: none;
		}

		.footer {
			background: var(--cv-footer-bg);
		}

		.footer ul li {
			background: var(--cv-footer-bg);
		}

		.footer ul li:hover {
			background: #ffffff;
		}

		.footer ul li:hover a {
			color: var(--cv-footer-bg);
		}

		.footer ul li a,
		.Copyright,
		.Copyright span {
			color: #ffffff;
		}

		.modal-content {
			box-shadow: 0 20px 50px rgba(0, 0, 0, 0.35);
		}

		.modal-header,
		.modal-footer {
			border-color: var(--cv-border-soft);
		}

		.menu {
			background-color: var(--cv-menu-bg);
			border-bottom: 1px solid var(--cv-menu-border);
		}

		.navbar-wrapper,
		.navwrapper .container,
		.navbar.navbar-inverse.navbar-static-top {
			background: var(--cv-menu-bg);
		}

		.navbar.navbar-inverse.navbar-static-top {
			color: var(--cv-menu-text);
		}

		.navbar.navbar-inverse.navbar-static-top a,
		.navbar.navbar-inverse.navbar-static-top a.navbar-brand,
		.navbar-inverse .navbar-nav > li > a {
			color: var(--cv-menu-text);
		}

		.navbar.navbar-inverse.navbar-static-top a:hover,
		.navbar.navbar-inverse.navbar-static-top a:focus,
		.navbar-inverse .navbar-nav > li > a:hover,
		.navbar-inverse .navbar-nav > li > a:focus,
		.navbar-inverse .navbar-nav > .active > a:hover {
			background: transparent;
			color: var(--cv-menu-text-hover);
		}

		.navbar-inverse .navbar-nav > .active > a,
		.navbar-inverse .navbar-nav > .active > a:focus {
			background: transparent;
			color: var(--cv-menu-text-hover);
		}

		.navbar-inverse .navbar-toggle {
			border: 1px solid var(--cv-menu-toggle-border);
			background-color: transparent;
		}

		.navbar-inverse .navbar-toggle .icon-bar {
			background: var(--cv-menu-toggle-icon);
		}

		.navbar-inverse .navbar-toggle:hover,
		.navbar-inverse .navbar-toggle:focus {
			background-color: transparent;
		}

		.themeToggle {
			position: fixed;
			right: 20px;
			bottom: 20px;
			z-index: 1035;
			width: 46px;
			min-width: 46px;
			height: 46px;
			box-sizing: border-box;
			font-family: "Open Sans", sans-serif;
			display: inline-flex;
			align-items: center;
			justify-content: center;
			gap: 0;
			padding: 0;
			border-radius: 0;
			border: none;
			background: var(--cv-theme-toggle-bg);
			backdrop-filter: blur(14px);
			-webkit-backdrop-filter: blur(14px);
			box-shadow: var(--cv-theme-toggle-shadow);
			color: var(--cv-theme-toggle-color);
			cursor: pointer;
			appearance: none;
			-webkit-appearance: none;
			transform: translateY(0);
			transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease,
				box-shadow 0.2s ease;
		}

		.themeToggle:hover {
			background: var(--cv-theme-toggle-hover-bg);
			color: var(--cv-theme-toggle-hover-color);
			box-shadow: var(--cv-theme-toggle-hover-shadow);
			transform: translateY(-1px);
		}

		.themeToggle:focus {
			outline: none;
			box-shadow: 0 0 0 3px var(--cv-theme-toggle-focus), var(--cv-theme-toggle-hover-shadow);
		}

		.themeToggleIcon {
			width: auto;
			font-size: 19px;
			text-align: center;
			color: currentColor;
		}

		.cookieBanner {
			position: fixed;
			left: 20px;
			right: 20px;
			bottom: 20px;
			z-index: 1030;
			max-width: 980px;
			margin: 0 auto;
			padding: 18px 20px;
			border: 1px solid var(--cv-border);
			border-radius: 0;
			background: var(--cv-cookie-bg);
			box-shadow: var(--cv-cookie-shadow);
			backdrop-filter: blur(16px);
			-webkit-backdrop-filter: blur(16px);
			display: none;
			flex-direction: column;
			align-items: stretch;
			gap: 14px;
			color: var(--cv-text);
			font-family: "Open Sans", sans-serif;
		}

		.cookieBanner.is-visible {
			display: flex;
		}

		.cookieBannerCopy {
			flex: 1 1 auto;
		}

		.cookieBannerTitle {
			display: block;
			margin-bottom: 6px;
			font-size: 15px;
			font-weight: 700;
			letter-spacing: 0.04em;
			text-transform: uppercase;
			color: var(--cv-heading);
			font-family: "Open Sans", sans-serif;
		}

		.cookieBannerCopy p {
			padding-bottom: 0;
			font-size: 13px;
			line-height: 20px;
			color: var(--cv-text-soft);
		}

		.cookieBannerActions {
			display: flex;
			justify-content: flex-end;
			align-items: center;
		}

		.cookieBannerAccept {
			width: 220px;
			max-width: 100%;
			margin: 0;
			box-sizing: border-box;
		}

		body.cookies-visible .themeToggle {
			bottom: 180px;
		}

		@keyframes contactSpin {
			to {
				transform: rotate(360deg);
			}
		}

		@media (max-width: 767px) {
			.hero-summary {
				font-size: 16px;
				line-height: 26px;
			}

			.contactCard {
				padding: 20px 18px 22px;
			}

			.contactFormCard {
				padding: 0;
			}

			.contactStateIcon {
				width: 64px;
				height: 64px;
			}

			.contactStateIcon img {
				width: 34px;
			}

			.contactNameEmail {
				flex-direction: column;
			}

			.aboutButtons {
				width: 100%;
				grid-template-columns: minmax(0, 1fr);
				grid-template-areas:
					"pdfs"
					"rendezvous";
				row-gap: 10px;
				column-gap: 0;
				justify-content: center;
			}

			.aboutPdfStack {
				width: 100%;
				align-items: center;
			}

			.aboutButtons .bntDownload3,
			.aboutButtons .bntDownload2,
			.aboutButtons .bntDownload1,
			.aboutCtaLink {
				display: inline-block;
				width: 100%;
				max-width: 100%;
				margin-left: auto;
				margin-right: auto;
			}

			body.cookies-visible .themeToggle {
				bottom: 220px;
			}

			.themeToggle {
				right: 14px;
				bottom: 14px;
			}

			.cookieBanner {
				left: 14px;
				right: 14px;
				bottom: 14px;
				padding: 16px 16px 18px;
				border-radius: 0;
			}

			.cookieBannerActions {
				justify-content: flex-start;
			}

			.cookieBannerAccept {
				width: 100%;
			}

			.themeToggle {
				width: 42px;
				min-width: 42px;
				height: 42px;
				border-radius: 0;
			}
		}

		@media print {
			.themeToggle,
			.cookieBanner {
				display: none !important;
			}
		}
