/* //////////////////////////////////////////////////////////// */
/* // Type , vars, main */
/* //////////////////////////////////////////////////////////// */
:root {
	--white              : #FFF;
	--black              : #000;
	--primary            : #ef4048;
	--primary-lighter    : #EEE4E0;
	--primary-darker     : #000;
	--secondary          : #f99d1c;
	--secondary-lighter  : #fbbf13;
	--secondary-darker   : #000;
	--tertiary           : #f06eaa;
	--tertiary-lighter   : #000;
	--tertiary-darker    : #000;
	--preloader-bg       : #fff;
	--preloader-circle   : rgba(239, 64, 72, 0.26);
	--form-error         : #fff;
	--input-label        : #FFF;
	--input-color        : #FFF;
	--input-placeholder  : #FFF;
	--input-bg           : #ef4048;
	--input-borders      : #FFF;
	--header-size-large  : 0px;
	--header-size-medium : 0px;
	--header-size-small  : 0px;
	--swiper-theme-color : #FFF;
	--swiper-bullet      : #FFF;
	--swiper-bullet-off  : #000;
	--swiper-bullet-on   : #FFF;
	--nav-large          : 0px;
	--nav-small          : 0px;
	--alt-font           : Times;
	--popup-bg           : #000;
	--popup-colour       : #FFF;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
	font-weight : 500;
}

h1, .h1 {
	font-size     : var(--step-3);
	line-height   : var(--step-3);
	margin-bottom : 1.5rem;
}

h2, .h2 {
	font-size     : var(--step-4);
	margin-bottom : 1.3rem;
}

h3, .h3 {
	font-size     : var(--step-5);
	margin-bottom : 1.1rem;
}

h4, .h4 {
	font-size     : var(--step-7);
	margin-bottom : 1rem;
}

.newkubrik {
	font-family : "new-rubrik", sans-serif;
	font-weight : 700;
	font-style  : normal;
}

html {
	scroll-behavior : auto;
}

.arboria {
	font-family : "arboria", sans-serif;
	font-weight : 400;
	font-style  : normal;
}

/* //////////////////////////////////////////////////////////// */
/* // Header and Main Navigation */
/* //////////////////////////////////////////////////////////// */
#intro-slideshow {
	aspect-ratio : 1107 / 237;
	max-width    : 80%;
	width        : 600px;
	height       : auto;
	margin       : auto;
}

.b-holder {
	width     : 140px;
	max-width : 25%;
	top       : 5vh;
	right     : 10vw;
}

.b-holder img.absolute {
	animation : rotate 30s linear infinite;
}

@keyframes rotate {
	from {
		transform : rotate(0deg);
	}
	to {
		transform : rotate(360deg);
	}
}

/* //////////////////////////////////////////////////////////// */
/* // Content */
/* //////////////////////////////////////////////////////////// */
.generic {
	line-height : 18px;
}

body, .generic {
	font-family : "arboria", sans-serif;
	font-weight : 400;
	font-style  : normal;
	font-size   : 14px;
}

/* //////////////////////////////////////////////////////////// */
/* // Footer */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
/* // Buttons */
/* //////////////////////////////////////////////////////////// */
.button {
	transition     : all 0.25s ease-in-out;
	border         : 2px solid var(--tertiary);
	color          : var(--tertiary);
	font-weight    : bold;
	text-transform : uppercase;
	font-size      : var(--step-8);
	border-radius  : 50px;
	padding        : 9px 20px 11px 20px;
}

.button:hover {
	background : var(--tertiary);
	color      : #fff;
}

.button-white,
.colour-primary-bg .button {
	border     : 2px solid #fff;
	background : transparent;
	color      : #fff;
}

.button-white:hover,
.colour-primary-bg .button:hover {
	border     : 2px solid #fff;
	background : #fff;
	color      : var(--primary)
}

/* //////////////////////////////////////////////////////////// */
/* // Forms */
/* //////////////////////////////////////////////////////////// */
.field-postcode {
	display : none;
}

body .fl-form .fl-wrap-select:after {
	content           : '';
	position          : absolute;
	display           : block;
	top               : 5px;
	right             : 0px;
	width             : 12px;
	background-image  : url(/resources/images/form-down.svg);
	background-repeat : no-repeat;
	background-size   : contain;
	width             : 13px;
	height            : 13px;
}

.fl-form .fl-wrap {
	margin-bottom : 5px;
}

/* //////////////////////////////////////////////////////////// */
/* // Custom */
/* //////////////////////////////////////////////////////////// */
.corner-bl {
	border-radius : 0 0 0 100px;
}

.circle-bottom {
	border-radius : 0 0 100% 100%;
}

hr {
	margin : 30px 0;
}

.footer-logo {
	width     : 250px;
	max-width : 75vw;
}

.media-panel hr {
	margin : 15px 0;
}

.media-panel h3 {
	margin : 0;
}

.max-w-8xl {
	max-width : 100%;
	width     : 100%;
}

/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
/* //////////////////////////////////////////////////////////// */
@media (min-width : 1600px) {
}

@media (min-width : 1200px) {
	.side-top-fix {
		padding : 0px 50px 15px 50px;
	}
}

@media (min-width : 769px) {
	.side-top-fix,
	.side-top-fix > section,
	.side-top-fix > section > div {
		height : 100%;
	}

	.side-top-fix {
		/*border-bottom : 30px solid #fff;  */
		padding : 0 30px 30px 30px;
		height  : 100vh !important;
	}

	.snap:last-of-type .side-top-fix {
		padding : 0 30px 64px 30px;
	}

	.snap {
		background-color : #fff;
	}

	.divider {
		margin-left : 20px;
	}

	.fix-1 {
		text-align   : left;
		padding-left : 80px;
	}

	.fix-2 {
		max-width : 80%;
	}

	.fix-3 {
		padding-left  : 2rem;
		padding-right : 2rem;
	}

	.snap {
		min-height : 100vh !important;
	}

	.circle-bottom {
		max-width : 240px;
	}
}

@media (max-width : 1024px) {
}

@media (max-width : 768px) {
	.media-panel h3 {
		padding : 15px 0 0 0 !important;
	}

	.divider {
		display : none;
	}

	.corner-bl {
		border-radius : 0 0 0 50px;
	}

	.fix-3 {
		background-color : var(--secondary-lighter);
		margin           : -1.5rem;
		padding          : 1.5rem 1.5rem 2rem 1.5rem;
		border-radius    : 0 0 0px 50px;
	}
}

@media (max-width : 640px) {
}

@media (max-width : 480px) {
}

/**********************************************************************/
/**********************************************************************/
/**********************************************************************/
/**********************************************************************/
/**********************************************************************/
/**********************************************************************/
.ani-logo-holder {
	max-width        : 80%;
	width            : 800px;
	height           : auto;
	aspect-ratio     : 600 / 180;
	margin           : auto;
	display          : block;
	overflow         : hidden;
	position         : relative;
	background-color : #EEE4E0; /* Optional */
}

.ani-logo-holder::before {
	content        : '';
	position       : absolute;
	top            : 0;
	left           : 0;
	right          : 0;
	bottom         : 0;
	border         : 5px solid #fff; /* Outer border */
	pointer-events : none;
	z-index        : -1;
}

.ani-logo-holder::after {
	content        : '';
	position       : absolute;
	top            : 5px;
	left           : 5px;
	right          : 5px;
	bottom         : 5px;
	border         : 3px solid #fff; /* Inner border */
	pointer-events : none;
}

.clipping-mask {
	width    : 100%;
	display  : block;
	position : relative;
	z-index  : 30;
}

.ani-logo-img {
	position     : absolute;
	height       : 100%;
	min-width    : fit-content;
	aspect-ratio : 9312 / 485;
	top          : 0;
	left         : 0;
	transform    : translateX(0);
	animation    : slide 30s linear infinite;
}

/* Staggered starting positions for multiple images */
.ani-logo-1 {
	transform       : translateX(0); /* Start at the beginning */
	animation-delay : 0s;
}

@keyframes slide {
	0% {
		transform : translateX(0); /* Start at the initial position */
	}
	100% {
		transform : translateX(-50%); /* Move fully out of the container */
	}
}
