/*
 * Contemporary visual layer for Afthormitos Logos.
 * Loaded after the original Ixion stylesheet and Customizer CSS.
 */

:root {
	--al-orange: #df641f;
	--al-orange-dark: #b94813;
	--al-orange-soft: #fff2e8;
	--al-ink: #17242b;
	--al-muted: #5e6b73;
	--al-line: #e4e8ea;
	--al-surface: #ffffff;
	--al-canvas: #f7f5f2;
	--al-radius: 18px;
	--al-shadow: 0 18px 50px rgba(23, 36, 43, 0.10);
}

html {
	scroll-behavior: smooth;
}

body,
body.custom-background,
button,
input,
select,
textarea {
	color: var(--al-ink);
	font-family: "Cooper Hewitt", "Helvetica Neue", Arial, sans-serif;
}

body,
body.custom-background {
	background: var(--al-canvas) !important;
	font-size: 17px;
	line-height: 1.7;
}

a {
	color: var(--al-orange-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

a:hover,
a:focus {
	color: var(--al-orange);
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--al-ink);
	font-family: "Cooper Hewitt", "Helvetica Neue", Arial, sans-serif;
	letter-spacing: -0.02em;
	line-height: 1.18;
}

ul,
ol,
li,
.arisli {
	list-style-image: none !important;
}

.entry-content ul:not(.menu):not(.sub-menu) {
	list-style: disc;
	padding-left: 1.35em;
}

/* Header */
.site-header,
.page-template-front-page .site-header {
	background: rgba(255, 255, 255, 0.97);
	border: 0;
	box-shadow: 0 1px 0 rgba(23, 36, 43, 0.09), 0 8px 28px rgba(23, 36, 43, 0.06);
	margin: 0;
	position: sticky;
	top: 0;
	z-index: 1000;
}

.admin-bar .site-header {
	top: 32px;
}

.utility-container {
	display: none;
}

.branding-container {
	align-items: center;
	display: flex;
	gap: 28px;
	justify-content: space-between;
	margin: 0 auto;
	max-width: 1180px;
	min-height: 0;
	padding: 13px 24px;
}

.site-branding {
	align-items: center;
	display: flex;
	flex: 0 1 auto;
	max-width: none;
	min-width: max-content;
}

.custom-logo-link {
	display: flex;
	flex: 0 0 auto;
}

.custom-logo {
	height: 64px;
	margin: 0 14px 0 0;
	max-height: 64px;
	max-width: 64px;
	object-fit: contain;
	width: 64px;
}

.site-title,
.site-title a {
	color: var(--al-ink) !important;
	font-size: clamp(1.45rem, 2.3vw, 2rem);
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.05;
	margin: 0;
	text-shadow: none;
	text-transform: none;
	white-space: nowrap;
}

.main-navigation {
	flex: 1 1 auto;
}

.main-navigation ul,
.main-navigation li {
	list-style: none !important;
}

.main-navigation ul > li {
	margin-left: 6px;
	padding: 0;
}

.main-navigation ul > li > a {
	border-radius: 999px;
	color: var(--al-ink);
	font-family: inherit;
	font-size: 15px;
	font-weight: 650;
	letter-spacing: 0;
	padding: 10px 13px;
	text-transform: none;
	transition: background-color 160ms ease, color 160ms ease;
}

.main-navigation ul > li > a:hover,
.main-navigation ul > li > a:focus {
	background: var(--al-orange-soft);
	color: var(--al-orange-dark);
}

.main-navigation ul > li.current-menu-item > a,
.main-navigation ul > li.current_page_item > a,
.current-menu-item a {
	background: var(--al-orange);
	color: #fff !important;
}

.main-navigation ul ul {
	background: #fff;
	border: 1px solid var(--al-line);
	border-radius: 14px;
	box-shadow: var(--al-shadow);
	min-width: 220px;
	overflow: hidden;
	padding: 8px;
}

.main-navigation ul ul:before {
	display: none;
}

.main-navigation ul ul li {
	padding: 0;
}

.main-navigation ul ul a,
.sub-menu a {
	background: transparent !important;
	border-radius: 8px;
	color: var(--al-ink) !important;
	font-size: 15px;
	padding: 9px 11px;
	text-align: left !important;
	width: 100%;
}

.main-navigation ul ul a:hover,
.main-navigation ul ul a:focus {
	background: var(--al-orange-soft) !important;
	color: var(--al-orange-dark) !important;
}

/* Main content */
.site-content {
	margin: 0 auto;
	max-width: 1180px;
	padding: 48px 24px 64px;
}

.page-template-front-page .site-content {
	max-width: 2200px;
	overflow: hidden;
	padding: 34px 24px 64px;
	width: 92vw;
}

.page-template-front-page .site-content > .content-area {
	float: none;
	margin: 0;
}

.page-template-front-page .site-main {
	margin: 0;
}

.page-template-front-page.no-sidebar .site-main > .hentry,
.page-template-front-page.no-sidebar .hentry {
	margin-left: 0;
	margin-right: 0;
	max-width: none;
	width: 100%;
}

.front-page-wrapper {
	background: #fff;
	border-bottom: 1px solid var(--al-line);
	margin: 0;
}

.front-page-wrapper .header-overlay,
.front-page-wrapper .header-overlay:before {
	background: transparent;
}

.front-page-wrapper .header-overlay {
	margin: 0 auto;
	max-width: 1180px;
}

.front-page-wrapper .header-overlay:before {
	display: none;
}

.front-page-wrapper .site-description-wrapper,
.front-page-wrapper .header-overlay img + .site-description-wrapper {
	bottom: auto;
	margin: 0 auto;
	max-width: none;
	padding: 14px 24px !important;
	position: relative;
}

.front-page-wrapper .site-description {
	color: var(--al-muted) !important;
	font-family: inherit;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.01em;
	line-height: 1.45;
	text-align: center;
	text-shadow: none;
}

.page-id-672 .entry-content > .vce-row-container > .vce-row {
	left: auto !important;
	margin-left: auto !important;
	margin-right: auto !important;
	transform: none !important;
	width: 100% !important;
}

.page-id-672 #el-cfa46ee6 {
	border-radius: var(--al-radius);
	box-shadow: var(--al-shadow);
	margin-bottom: 24px !important;
	overflow: hidden;
	padding: clamp(34px, 6vw, 72px) 24px !important;
}

.page-id-672 #el-cfa46ee6 > .vce-row-content {
	display: block !important;
	max-width: 820px;
	margin: 0 auto;
}

.page-id-672 #el-27ebc943,
.page-id-672 #el-5d45f942 {
	display: none !important;
}

.page-id-672 #el-389ec7d7 {
	flex: none !important;
	max-width: none !important;
	width: 100% !important;
}

.page-id-672 #el-389ec7d7 .vce-button--style-outline-animated {
	color: var(--al-ink) !important;
}

.page-id-672 #el-389ec7d7 .vce-button--style-outline-animated:hover,
.page-id-672 #el-389ec7d7 .vce-button--style-outline-animated:focus,
.page-id-672 #el-389ec7d7 .vce-button--style-outline-animated:active {
	color: #fff !important;
}

.page-id-672 #el-389ec7d7 .vce-button--style-outline-text {
	color: inherit !important;
}

.page-id-672 #el-09123d46 p {
	font-size: clamp(1.8rem, 4vw, 2.65rem) !important;
	font-weight: 700;
	letter-spacing: -0.035em;
	line-height: 1.15;
	margin-bottom: 24px;
}

.page-id-672 #el-2d7bd5df p {
	font-size: 17px;
	font-weight: 500;
	line-height: 1.7;
}

.page-id-672 #el-eebe4eb4 {
	background: transparent !important;
	padding: 0 !important;
}

.page-id-672 #el-eebe4eb4 > .vce-content-background-container {
	display: none;
}

.page-id-672 #el-eebe4eb4 > .vce-row-content {
	display: grid !important;
	gap: 20px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.page-id-672 #el-eebe4eb4 > .vce-row-content > .vce-col {
	flex: none !important;
	max-width: none !important;
	width: auto !important;
}

.page-id-672 #el-eebe4eb4 > .vce-row-content > .vce-col > .vce-col-inner {
	background: #fff;
	border: 1px solid rgba(23, 36, 43, 0.08);
	border-radius: 16px;
	box-shadow: 0 10px 32px rgba(23, 36, 43, 0.08);
	height: 100%;
	overflow: hidden;
	padding: clamp(20px, 3vw, 32px);
}

.page-id-672 #el-eebe4eb4 img {
	max-height: 210px;
	object-fit: contain;
	width: auto;
}

.entry-header {
	margin: 0 auto 30px;
	max-width: 1120px;
}

.singular .entry-title {
	border: 0;
	font-size: clamp(2.1rem, 5vw, 3.4rem);
	letter-spacing: -0.045em;
	margin: 0;
	padding: 0;
}

.entry-content {
	font-size: 18px;
}

.entry-content p {
	margin-bottom: 1.35em;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button {
	background: var(--al-orange);
	border: 0;
	border-radius: 10px;
	box-shadow: 0 8px 20px rgba(223, 100, 31, 0.22);
	color: #fff;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	padding: 15px 22px;
	text-transform: none;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.button:hover,
.button:focus {
	background: var(--al-orange-dark);
	box-shadow: 0 10px 24px rgba(185, 72, 19, 0.27);
	color: #fff;
	transform: translateY(-1px);
}

/* Contact page */
.page-id-225 .site-content {
	max-width: 1420px;
}

.page-id-225.no-sidebar .hentry {
	max-width: none;
	width: 100%;
}

.page-id-225 .entry-header {
	text-align: center;
}

.page-id-225 .entry-header:after {
	background: var(--al-orange);
	border-radius: 2px;
	content: "";
	display: block;
	height: 4px;
	margin: 18px auto 0;
	width: 54px;
}

.page-id-225 #el-d6bf89fe {
	background: var(--al-surface) !important;
	border: 1px solid rgba(23, 36, 43, 0.08);
	border-radius: var(--al-radius);
	box-shadow: var(--al-shadow);
	margin: 0 auto !important;
	max-width: 1320px !important;
	overflow: hidden;
	padding: clamp(26px, 5vw, 58px) !important;
	left: auto !important;
	position: relative;
	transform: none !important;
	width: 100% !important;
}

.page-id-225 #el-d6bf89fe > .vce-content-background-container {
	display: none;
}

.page-id-225 #el-d6bf89fe > .vce-row-content {
	display: grid !important;
	gap: clamp(30px, 5vw, 60px);
	grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.9fr);
	max-width: none !important;
	width: 100% !important;
}

.page-id-225 #el-10743ee2,
.page-id-225 #el-7b64c4fc {
	display: none !important;
}

.page-id-225 #el-23266ab7,
.page-id-225 #el-b709436b {
	flex: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	max-width: none !important;
	min-width: 0;
	width: auto !important;
}

.page-id-225 #el-34c6753a p {
	color: var(--al-muted);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.75;
	margin-bottom: 1.15em;
	text-align: left !important;
}

.page-id-225 #el-34c6753a strong {
	font-weight: 400;
}

.page-id-225 #el-34c6753a em {
	font-style: normal;
}

.page-id-225 #el-34c6753a p:first-child {
	color: var(--al-orange-dark);
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.page-id-225 #el-34c6753a p:nth-child(2) {
	color: var(--al-ink);
	font-size: clamp(26px, 2.2vw, 34px);
	font-weight: 700;
	letter-spacing: -0.03em;
	margin-bottom: 24px;
	overflow-wrap: normal;
	white-space: normal;
	word-break: keep-all;
}

.page-id-225 #el-b709436b > .vce-col-inner {
	background: var(--al-orange-soft);
	border: 1px solid rgba(223, 100, 31, 0.16);
	border-radius: 14px;
	box-sizing: border-box;
	height: auto;
	max-width: 100%;
	padding: clamp(22px, 4vw, 36px);
	width: 100%;
}

.page-id-225 .contact-form-title {
	color: var(--al-ink);
	font-size: clamp(1.45rem, 3vw, 1.9rem);
	font-weight: 700;
	letter-spacing: -0.03em;
	margin: 0 0 8px;
}

.page-id-225 .contact-form-intro {
	color: var(--al-muted);
	font-size: 15px;
	line-height: 1.55;
	margin-bottom: 22px !important;
}

.page-id-225 .required-mark {
	color: var(--al-orange-dark);
	font-weight: 700;
}

.page-id-225 .wpcf7 p {
	margin-bottom: 17px;
}

.page-id-225 .wpcf7 label {
	color: var(--al-ink);
	display: block;
	font-size: 15px;
	font-weight: 650;
	line-height: 1.45;
}

.page-id-225 .wpcf7 input[type="text"],
.page-id-225 .wpcf7 input[type="email"],
.page-id-225 .wpcf7 textarea {
	background: #fff;
	border: 1px solid #ccd4d8;
	border-radius: 9px;
	box-shadow: 0 1px 2px rgba(23, 36, 43, 0.04);
	color: var(--al-ink);
	font-size: 16px;
	line-height: 1.45;
	margin-top: 7px;
	max-width: 100%;
	padding: 11px 13px;
	transition: border-color 160ms ease, box-shadow 160ms ease;
	width: 100%;
}

.page-id-225 .wpcf7 textarea {
	min-height: 150px;
	resize: vertical;
}

.page-id-225 .wpcf7 input:focus,
.page-id-225 .wpcf7 textarea:focus {
	border-color: var(--al-orange);
	box-shadow: 0 0 0 3px rgba(223, 100, 31, 0.15);
	outline: 0;
}

.page-id-225 .wpcf7 input[type="submit"] {
	min-width: 150px;
}

.page-id-225 .wpcf7-response-output {
	background: #fff;
	border-radius: 8px;
	margin: 18px 0 0 !important;
	padding: 10px 14px !important;
}

/* Footer */
.site-footer {
	background: var(--al-ink);
	border: 0;
	color: rgba(255, 255, 255, 0.78);
}

.footer-widgets {
	margin: 0 auto;
	max-width: 1180px;
	padding: 44px 24px 30px;
}

.footer-widgets .widget {
	background: transparent !important;
	color: rgba(255, 255, 255, 0.76);
}

.footer-widgets .widget p {
	color: inherit !important;
	font-size: 15px !important;
	font-style: normal !important;
	line-height: 1.65;
	text-shadow: none !important;
}

.footer-widgets a {
	color: #fff;
}

.footer-widgets img {
	border-radius: 14px;
}

.site-info {
	border-color: rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.62);
	font-family: inherit;
	font-size: 13px;
	letter-spacing: 0.02em;
	padding: 20px 24px;
	text-transform: none;
}

.site-info p {
	margin: 0;
}

@media screen and (max-width: 960px) {
	.branding-container {
		flex-wrap: wrap;
		gap: 12px;
	}

	.site-branding {
		width: 100%;
	}

	.main-navigation {
		width: 100%;
	}

	.main-navigation ul > li > a {
		font-size: 14px;
	}
}

@media screen and (max-width: 799px) {
	.admin-bar .site-header {
		top: 46px;
	}

	.site-header {
		position: relative;
		top: auto;
	}

	.branding-container {
		padding: 11px 18px;
	}

	.site-branding {
		width: auto;
	}

	.custom-logo {
		height: 52px;
		max-height: 52px;
		max-width: 52px;
		width: 52px;
	}

	.main-navigation .menu-toggle {
		background: var(--al-orange);
		border-radius: 8px;
		right: 18px;
		top: 20px;
	}

	.main-navigation ul {
		background: #fff;
		border: 0;
		border-radius: 12px;
		box-shadow: var(--al-shadow);
		margin-top: 10px;
		padding: 10px;
	}

	.main-navigation ul > li {
		margin: 2px 0;
	}

	.main-navigation ul > li > a {
		border-radius: 8px;
		padding: 10px 12px;
	}

	.main-navigation ul ul {
		box-shadow: none;
		margin: 3px 0 6px 14px;
		padding: 3px 0 3px 10px;
	}

	.site-content {
		padding: 34px 18px 48px;
	}

	.page-id-225 #el-d6bf89fe > .vce-row-content {
		grid-template-columns: minmax(0, 1fr);
	}

	.page-id-672 #el-eebe4eb4 > .vce-row-content {
		grid-template-columns: minmax(0, 1fr);
	}

	.page-id-225 #el-b709436b {
		grid-row: 1;
	}

	.page-id-225 #el-23266ab7 {
		grid-row: 2;
	}

	.footer-widgets {
		padding: 34px 18px 18px;
	}
}

@media screen and (max-width: 480px) {
	.site-title,
	.site-title a {
		font-size: 1.25rem;
	}

	.singular .entry-title {
		font-size: 2.15rem;
	}

	.page-id-225 #el-d6bf89fe {
		border-radius: 13px;
		padding: 22px 17px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*:before,
	*:after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
