.elementor-kit-907{--e-global-color-primary:#000000;--e-global-color-secondary:#DC0033;--e-global-color-text:#1C1C1C;--e-global-color-accent:#FABE32;--e-global-color-2dbf74f:#F5F5F5;--e-global-color-f53772a:#787D81;--e-global-color-e7997b4:#ABB8C3;--e-global-color-c754312:#F78DA7;--e-global-color-3cd9da3:#CF2E2E;--e-global-color-bdbd782:#FFFFFF;--e-global-typography-primary-font-family:"DIN Engschrift Regular";--e-global-typography-secondary-font-family:"DIN Mittelschrift";--e-global-typography-text-font-family:"DIN Offc Pro";--e-global-typography-accent-font-family:"DIN Offc Pro";--e-global-typography-ec2595c-font-family:"DIN";--e-global-typography-ec2595c-font-size:60px;--e-global-typography-ec2595c-font-weight:700;--e-global-typography-ec2595c-letter-spacing:0.025em;--e-global-typography-c6fd394-font-family:"DIN";--e-global-typography-c6fd394-font-size:36px;--e-global-typography-c6fd394-font-weight:200;font-family:"DIN Offc Pro", Sans-serif;font-size:18px;}.elementor-kit-907 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1199px){.elementor-kit-907{--e-global-typography-ec2595c-font-size:2em;}}@media(max-width:991px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-907{--e-global-typography-ec2595c-font-size:1.66em;}}@media(max-width:479px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//*****************************************
 * DESIGN TOKENS – ANGLED COMPONENTS
 *****************************************/
:root {
	/* =========================
	 * 1) PALETTE
	 * ========================= */
	--color-black:    #000000;
	--color-red:      #DC0033;
	--color-darkgrey: #1C1C1C;
	--color-yellow:   #FABE32;
	--color-white:    #FFFFFF;

	/* =========================
	 * 2) GEOMETRY CONSTANTS
	 * ========================= */
	--angled-skew: 15deg;
	/* Single-angle tail widths by size */
	--angled-tail-width-sm: 125%;
	--angled-tail-width-md: 117%;
	--angled-tail-width-lg: 117%;

	/* =========================
	 * 3) DEFAULTS
	 * ========================= */
	/* Headings default (background only; text colour via Elementor widget) */
	--angled-heading-bg: var(--color-red);

	/* Buttons default */
	--angled-btn-bg:          var(--color-red);
	--angled-btn-color:       var(--color-black);
	--angled-btn-hover-bg:    var(--color-black);
	--angled-btn-hover-color: var(--color-red);
	--angled-btn-border:      var(--color-red);

	/* =========================
	 * 4) HEADING BG VARIANTS (background-only)
	 * ========================= */
	--angled-heading-bg-red:      var(--color-red);
	--angled-heading-bg-black:    var(--color-black);
	--angled-heading-bg-darkgrey: var(--color-darkgrey);
	--angled-heading-bg-yellow:   var(--color-yellow);

	/* =========================
	 * 5) SPACING
	 * ========================= */
	/* Buttons */
	--angled-btn-pad-y: 0.6rem;
	--angled-btn-pad-x: 1.2rem;

	/* Headings */
	--angled-heading-pad-y: 0.6rem;
	--angled-heading-pad-x: 1.2rem;

	/* Heading size scale */
	--angled-heading-scale-sm: 0.70;
	--angled-heading-scale-md: 1.00;
	--angled-heading-scale-lg: 1.50;

	/* Derived heading padding by size */
	--angled-heading-pad-y-sm: calc(var(--angled-heading-pad-y) * var(--angled-heading-scale-sm));
	--angled-heading-pad-x-sm: calc(var(--angled-heading-pad-x) * var(--angled-heading-scale-sm));
	--angled-heading-pad-y-md: calc(var(--angled-heading-pad-y) * var(--angled-heading-scale-md));
	--angled-heading-pad-x-md: calc(var(--angled-heading-pad-x) * var(--angled-heading-scale-md));
	--angled-heading-pad-y-lg: calc(var(--angled-heading-pad-y) * var(--angled-heading-scale-lg));
	--angled-heading-pad-x-lg: calc(var(--angled-heading-pad-x) * var(--angled-heading-scale-lg));

	/* Alignment anchors */
	--angled-heading-pad-left-fixed:  1.2rem; /* angled-right: text start */
	--angled-heading-pad-right-fixed: 1.2rem; /* angled-left:  text end  */

	/* Tail-side padding (fixed), per size */
	--angled-heading-pad-tail-sm: 0.35rem;
	--angled-heading-pad-tail-md: 0.50rem;
	--angled-heading-pad-tail-lg: 0.65rem;
}

/* =========================
 * RESPONSIVE TOKEN OVERRIDES
 * ========================= */

/* Mobile Landscape: 480–767px */
@media (min-width: 480px) {
	:root {
		--angled-btn-pad-y: 0.7rem;
		--angled-btn-pad-x: 1.4rem;
		--angled-heading-pad-y: 0.55rem;
		--angled-heading-pad-x: 1.2rem;
	}
}

/* Tablet Portrait: 768–991px */
@media (min-width: 768px) {
	:root {
		--angled-btn-pad-y: 0.8rem;
		--angled-btn-pad-x: 1.6rem;
		--angled-heading-pad-y: 0.6rem;
		--angled-heading-pad-x: 1.4rem;
	}
}

/* Tablet Landscape: 992–1199px */
@media (min-width: 992px) {
	:root {
		--angled-btn-pad-y: 0.9rem;
		--angled-btn-pad-x: 1.8rem;
		--angled-heading-pad-y: 0.7rem;
		--angled-heading-pad-x: 1.6rem;
	}
}

/* Small Laptop: 1200–1439px */
@media (min-width: 1200px) {
	:root {
		--angled-btn-pad-y: 1.0rem;
		--angled-btn-pad-x: 2.0rem;
		--angled-heading-pad-y: 0.8rem;
		--angled-heading-pad-x: 1.8rem;
	}
}

/* Desktop: 1440–1919px */
@media (min-width: 1440px) {
	:root {
		--angled-btn-pad-y: 1.1rem;
		--angled-btn-pad-x: 2.2rem;
		--angled-heading-pad-y: 0.9rem;
		--angled-heading-pad-x: 2.0rem;
	}
}

/* Large Desktop / Wide: 1920px+ */
@media (min-width: 1920px) {
	:root {
		--angled-btn-pad-y: 1.2rem;
		--angled-btn-pad-x: 2.4rem;
		--angled-heading-pad-y: 1.0rem;
		--angled-heading-pad-x: 2.2rem;
	}
}

/* Prevent overflow leak only for angled-heading widgets */
.elementor-element.angled-tag {
	overflow: hidden;
}

/*****************************************
 * BUTTON COLOUR VARIANTS
 *****************************************/
.angled-btn--black {
	--angled-btn-bg:          var(--color-black);
	--angled-btn-color:       var(--color-white);
	--angled-btn-hover-bg:    var(--color-white);
	--angled-btn-hover-color: var(--color-black);
	--angled-btn-border:      var(--color-black);
}
.angled-btn--red {
	--angled-btn-bg:          var(--color-red);
	--angled-btn-color:       var(--color-black);
	--angled-btn-hover-bg:    var(--color-black);
	--angled-btn-hover-color: var(--color-red);
	--angled-btn-border:      var(--color-red);
}
.angled-btn--darkgrey {
	--angled-btn-bg:          var(--color-darkgrey);
	--angled-btn-color:       var(--color-yellow);
	--angled-btn-hover-bg:    var(--color-yellow);
	--angled-btn-hover-color: var(--color-darkgrey);
	--angled-btn-border:      var(--color-darkgrey);
}
.angled-btn--yellow {
	--angled-btn-bg:          var(--color-yellow);
	--angled-btn-color:       var(--color-black);
	--angled-btn-hover-bg:    var(--color-black);
	--angled-btn-hover-color: var(--color-yellow);
	--angled-btn-border:      var(--color-yellow);
}

/*****************************************
 * HEADING BG VARIANTS (background-only)
 *****************************************/
.angled-tag--red      { --angled-heading-bg: var(--angled-heading-bg-red); }
.angled-tag--black    { --angled-heading-bg: var(--angled-heading-bg-black); }
.angled-tag--darkgrey { --angled-heading-bg: var(--angled-heading-bg-darkgrey); }
.angled-tag--yellow   { --angled-heading-bg: var(--angled-heading-bg-yellow); }

/*****************************************
 * ANGLED HEADINGS (USING INNER <h2>)
 *****************************************/
.angled-tag .elementor-heading-title {
	position: relative;
	display: inline-block;
	padding: var(--angled-heading-pad-y) var(--angled-heading-pad-x);
	color: inherit;
	background: none;
	overflow: visible;
}

/* Base shape */
.angled-tag .elementor-heading-title::before {
	content: "";
	position: absolute;
	top: 0;
	height: 100%;
	background: var(--angled-heading-bg);
	z-index: -1;
}

/* Angled BOTH sides – tight around text */
.angled-tag.angled-both .elementor-heading-title::before {
	left: 0;
	right: 0;
	width: auto;
	transform: skewX(calc(var(--angled-skew) * -1));
}

/* Default (if no sm/md/lg class is present) */
.angled-tag.angled-right .elementor-heading-title::before{
	left: 50%;
	width: var(--angled-tail-width-md);
	transform: skewX(calc(var(--angled-skew) * -1)) translateX(-50%);
}
.angled-tag.angled-left .elementor-heading-title::before{
	right: 50%;
	width: var(--angled-tail-width-md);
	transform: skewX(var(--angled-skew)) translateX(50%);
}

/* SM */
.angled-tag.angled-right.angled-tag--sm .elementor-heading-title::before{
	width: var(--angled-tail-width-sm);
}
.angled-tag.angled-left.angled-tag--sm .elementor-heading-title::before{
	width: var(--angled-tail-width-sm);
}

/* MD */
.angled-tag.angled-right.angled-tag--md .elementor-heading-title::before{
	width: var(--angled-tail-width-md);
}
.angled-tag.angled-left.angled-tag--md .elementor-heading-title::before{
	width: var(--angled-tail-width-md);
}

/* LG */
.angled-tag.angled-right.angled-tag--lg .elementor-heading-title::before{
	width: var(--angled-tail-width-lg);
}
.angled-tag.angled-left.angled-tag--lg .elementor-heading-title::before{
	width: var(--angled-tail-width-lg);
}

/*****************************************
 * HEADING SIZE VARIANTS – LEFT/RIGHT
 * (reduces repetition)
 *****************************************/
.angled-tag.angled-right .elementor-heading-title {
	padding-left: var(--angled-heading-pad-left-fixed);
}
.angled-tag.angled-left .elementor-heading-title {
	padding-right: var(--angled-heading-pad-right-fixed);
}

/* SM */
.angled-tag.angled-right.angled-tag--sm .elementor-heading-title,
.angled-tag.angled-left.angled-tag--sm  .elementor-heading-title{
	padding-top: var(--angled-heading-pad-y-sm);
	padding-bottom: var(--angled-heading-pad-y-sm);
}
.angled-tag.angled-right.angled-tag--sm .elementor-heading-title{ padding-right: var(--angled-heading-pad-tail-sm); }
.angled-tag.angled-left.angled-tag--sm  .elementor-heading-title{ padding-left:  var(--angled-heading-pad-tail-sm); }

/* MD */
.angled-tag.angled-right.angled-tag--md .elementor-heading-title,
.angled-tag.angled-left.angled-tag--md  .elementor-heading-title{
	padding-top: var(--angled-heading-pad-y-md);
	padding-bottom: var(--angled-heading-pad-y-md);
}
.angled-tag.angled-right.angled-tag--md .elementor-heading-title{ padding-right: var(--angled-heading-pad-tail-md); }
.angled-tag.angled-left.angled-tag--md  .elementor-heading-title{ padding-left:  var(--angled-heading-pad-tail-md); }

/* LG */
.angled-tag.angled-right.angled-tag--lg .elementor-heading-title,
.angled-tag.angled-left.angled-tag--lg  .elementor-heading-title{
	padding-top: var(--angled-heading-pad-y-lg);
	padding-bottom: var(--angled-heading-pad-y-lg);
}
.angled-tag.angled-right.angled-tag--lg .elementor-heading-title{ padding-right: var(--angled-heading-pad-tail-lg); }
.angled-tag.angled-left.angled-tag--lg  .elementor-heading-title{ padding-left:  var(--angled-heading-pad-tail-lg); }

/*****************************************
 * ANGLED BUTTON – BORDER ON SHAPE (ELEMENTOR BUTTON)
 *****************************************/
.angled-btn .elementor-button {
	position: relative;
	display: inline-block;
	padding: var(--angled-btn-pad-y) var(--angled-btn-pad-x);
	color: var(--angled-btn-color);
	background: none;
	border: none;
	line-height: 1.2;
	overflow: visible;
	cursor: pointer;
	transition: color 0.25s ease;
}

.angled-btn .elementor-button::before {
	content: "";
	position: absolute;
	top: 0;
	width: 200%;
	height: 100%;
	background: var(--angled-btn-bg);
	border: 0.15em solid var(--angled-btn-border);
	box-sizing: border-box;
	z-index: -1;
	transition: background-color 0.25s ease;
}

.angled-btn.angled-right .elementor-button::before { left: 50%; transform: skewX(calc(var(--angled-skew) * -1)) translateX(-50%); }
.angled-btn.angled-left  .elementor-button::before { right: 50%; transform: skewX(var(--angled-skew)) translateX(50%); }
.angled-btn.angled-both  .elementor-button::before { left: 0; width: 100%; transform: skewX(calc(var(--angled-skew) * -1)); }

.angled-btn .elementor-button:hover { color: var(--angled-btn-hover-color); }
.angled-btn .elementor-button:hover::before { background: var(--angled-btn-hover-bg); }

.hero-slider{
	position:relative;
	min-height:100vh;
	overflow:hidden;
}

.hero-slider.is-paused{
	cursor: grab;
}

.hero-slider{
	touch-action: pan-y;
	user-select: none;
}

.hero-slider > .elementor-element.hero-slide{
	position:absolute !important;
	top:0;
	right:0;
	bottom:0;
	left:0;
	width:100%;
	opacity:0;
	z-index:0;
	transition: opacity 1.4s cubic-bezier(0.4, 0.0, 0.2, 1);
}

.hero-slider > .elementor-element.hero-slide:first-child{
	opacity:1;
	z-index:1;
}

.hero-slider > .elementor-element.hero-slide.is-active{
	opacity:1;
	z-index:1;
}

/* In the Elementor editor, show slides normally so you can edit them */
body.elementor-editor-active .hero-slider > .elementor-element.hero-slide{
	position:relative !important;
	opacity:1 !important;
	z-index:auto !important;
}


/* =========================================================
   LOOP DATE TAG — 2 line, square left, angled right
   (background on wrapper, not headings)
   ========================================================= */

/* Card provides positioning anchor */
/* Make the immediate wrapper the containing block */
.loop-card > .e-con-inner{
  position: relative;
}

/* Tag wrapper */
.loop-card__tag{
  position: absolute;
  top: 0;
  left: 0;
  z-index: 20;

  display: inline-flex !important;   /* shrink to content */
  flex-direction: column;            /* stack the two headings */
  align-items: flex-start;

  width: auto !important;            /* override Elementor */
  max-width: none !important;

  padding: 9px 16px;
}


/* Remove Elementor spacing inside tag */
.loop-card__tag .elementor-widget,
.loop-card__tag .elementor-widget-heading,
.loop-card__tag .elementor-widget-container{
  margin: 0 !important;
}

/* Remove angled system padding/background from inner headings */
.loop-card__tag.angled-tag .elementor-heading-title{
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1.05;
  display: block;
}

.loop-card__tag.angled-tag .elementor-heading-title::before{
  content: none !important;
}

/* Small gap between lines */
.loop-card__tag-line2 .elementor-heading-title{
  margin-top: 0.08em;
}

.loop-card > .e-con-inner{
  padding: 10px !important;
}

/* ===== Background shape on wrapper ===== */
.loop-card__tag::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: -1;

  background: var(--angled-heading-bg);

  --tail: 18px;

  width: calc(100% + var(--tail));

  clip-path: polygon(
    0 0,
    100% 0,
    calc(100% - var(--tail)) 100%,
    0 100%
  );
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'DIN Engschrift Regular';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.eot');
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.eot?#iefix') format('embedded-opentype'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.woff') format('woff'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.ttf') format('truetype'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DINEngschrift-Regular.svg#DINEngschriftRegular') format('svg');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'DIN Mittelschrift';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Mittelschrift-Mittelschrift.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Mittelschrift-Mittelschrift.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'DIN';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-1.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-1.woff') format('woff'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-1.ttf') format('truetype');
}
@font-face {
	font-family: 'DIN';
	font-style: normal;
	font-weight: bold;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Bold.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Bold.woff') format('woff'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'DIN';
	font-style: normal;
	font-weight: 200;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Light.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Light.ttf') format('truetype');
}
@font-face {
	font-family: 'DIN';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Medium.woff2') format('woff2'),
		url('https://hfulton.bwp-staging.co.uk/wp-content/uploads/2025/12/DIN-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'DIN';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */