/* Self-hosted Oswald variable font */
@font-face {
	font-family: 'Oswald';
	src: url('../fonts/Oswald-VariableFont_wght.woff2') format('woff2'),
		 url('../fonts/Oswald-VariableFont_wght.ttf') format('truetype');
	font-weight: 200 700;
	font-display: swap;
}

/* Base */
body {
	margin: 0;
	font-family: "Oswald", sans-serif;
}

/* Link reset and focus */
a {
	text-decoration: none;
	color: inherit;
}

a:focus-visible {
	outline: 3px solid #F24D29;
	outline-offset: -3px;
}

/* Ad panel */
.adPanel {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	max-width: 1920px;
	height: 312px;
	background-size: cover;
	background-position: center;
}

p {
	line-height: 1.3em;
	margin: 20px 0 15px 0;
}

/* Image */
img {
	position: absolute;
	right: 0;
	height: 312px;
}

.r {
	right: 0;
}

.l {
	left: 0;
}

/* Text positioning */
.center, .left, .right {
	padding: 0 50px;
	margin: 0;
	position: relative;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.center {
	text-align: center;
	float: inline-start;
}

.left {
	text-align: left;
	float: left;
	padding-right: 317px;
}

.right {
	text-align: left;
	float: left;
	padding-left: 317px;
}

/* Text size */
.text-no-image {
	font-size: 4em;
}

.text-with-image {
	font-size: 3em;
}

/* Button */
.button {
	display: inline-block;
	padding: 0.3em 1.1em;
	text-decoration: none;
	font-size: 1.6em;
	line-height: 1.2em;
	text-transform: uppercase;
	letter-spacing: .0625em;
	clip-path: polygon(0% 0%, 100% 0%, 95% 100%, 0% 100%);
}

/* Default button theme (orange/white) — applied regardless of color theme */
.button-default {
	background-color: #F24D29;
	color: #fff;
}

/* Color themes — text color and themed button colors */
.theme-cyan { color: #fff; }
.theme-cyan .button-theme { background-color: #fff; color: #008AC6; }

.theme-dark-grey { color: #fff; }
.theme-dark-grey .button-theme { background-color: #fff; color: #2C2D2D; }

.theme-deep-blue { color: #fff; }
.theme-deep-blue .button-theme { background-color: #fff; color: #11263B; }

.theme-green { color: #fff; }
.theme-green .button-theme { background-color: #fff; color: #033B23; }

.theme-khaki { color: #11263B; }
.theme-khaki .button-theme { background-color: #11263B; color: #ACA26C; }

.theme-light-blue { color: #11263B; }
.theme-light-blue .button-theme { background-color: #11263B; color: #9FD6F3; }

.theme-light-grey { color: #11263B; }
.theme-light-grey .button-theme { background-color: #11263B; color: #C2CBCF; }

.theme-orange { color: #11263B; }
.theme-orange .button-theme { background-color: #11263B; color: #F24D29; }

.theme-red { color: #fff; }
.theme-red .button-theme { background-color: #fff; color: #6A1223; }

.theme-yellow { color: #583022; }
.theme-yellow .button-theme { background-color: #583022; color: #FCBD25; }

/* Responsive */
@media screen and (max-width: 1000px) {
	.adPanel {
		font-size: 0.95em;
	}
}

@media screen and (max-width: 900px) {
	.adPanel {
		font-size: 0.9em;
	}
}

@media screen and (max-width: 740px) {
	.adPanel {
		font-size: 0.8em;
	}
}

@media screen and (max-width: 660px) {
	.adPanel {
		font-size: 0.55em;
	}
	img {
		top: 66px;
		height: 180px;
	}
	.left {
		padding: 0 30px;
		padding-right: 185px;
	}
	.right {
		padding: 0 30px;
		padding-left: 185px;
	}
}

@media screen and (max-width: 540px) {
	.adPanel {
		font-size: 0.5em;
	}
}

@media screen and (max-width: 440px) {
	.adPanel {
		font-size: 0.45em;
	}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	* {
		animation: none !important;
		transition: none !important;
	}
}
