/*
 Theme Name:   Base Child
 Description:  Default Base child theme
 Author:       LSB Web Design
 Template:     base
 Version:      1.0
*/


.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut {
  position:absolute!important;
  clip:rect(0,0,0,0);
  height:1px;
  width:1px;
  border:0;
  overflow:hidden
}
.screen-reader-text:focus,
.screen-reader-shortcut:focus {
  clip:auto!important;
  height:auto;
  width:auto;
  display:block;
  font-size:1em;
  font-weight:700;
  padding:15px 23px 14px;
  color:#333;
  background:#fff;
  z-index:100000;
  text-decoration:none;
  box-shadow:0 0 2px 2px rgba(0,0,0,.6)
}
/** Containment **/
.contain {
  contain: layout;
}
/*=======================================*/
/** Custom Fonts **/
/**  **/
/*=======================================*/
/* ExtraLight (200) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 200;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_ExtraLight.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 200;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_ExtraLight_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* Light (300) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 300;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Light.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 300;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Light_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* Regular (400) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Regular.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* Medium (500) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 500;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Medium.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 500;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Medium_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* Bold (700) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Bold.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 700;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Bold_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* ExtraBold (800) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 800;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_ExtraBold.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 800;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_ExtraBold_Italic.woff2') format('woff2');
  font-display: fallback;
}

/* Black (900) */
@font-face {
  font-family: 'TT Ramillas';
  font-style: normal;
  font-weight: 900;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Black.woff2') format('woff2');
  font-display: fallback;
}
@font-face {
  font-family: 'TT Ramillas';
  font-style: italic;
  font-weight: 900;
  src: url('/wp-content/themes/base/assets/fonts/tt-ramillas/TT_Ramillas_Black_Italic.woff2') format('woff2');
  font-display: fallback;
}


body, .primary-font {
  font-family: "Poppins", sans-serif;
	font-optical-sizing: auto;
}
h1,
h2,
h3,
h4,
.h4,
.secondary-font,
.heading-font,
#menu-primary-menu,
.lsb-button[class*="text-link"] {
  font-family: "TT Ramillas", sans-serif;
  font-optical-sizing: auto;
}
.lsb-button, input, .facetwp-load-more, textarea, .fluentform .ff-btn, .fluentform .ff-el-form-control, .gm-style {
  font-family: "Poppins", sans-serif;
	font-optical-sizing: auto;
}
.facetwp-dropdown option {
  font-family: sans-serif;	
}
/*=======================================*/
/** Typography Reset **/
/** XD to CSS font size, letter spacing and line height https://codepen.io/raunaqpatel/full/bGpwBvo
 * px to em conversion https://www.w3schools.com/tags/ref_pxtoemconversion.asp set the default font size as the body font size
 * Can use dev tools computed tab to work out the correct em values
 * Modular scale for font sizes https://www.modularscale.com/?20&px&1.3
/*=======================================*/
html {
  font-size: 100%;
}

/* Fixed font size */
/*
body {
  font-size: 20px;
} 
@media all and (max-width: 1640px) {
body, .lsb-button, .facetwp-load-more {
  font-size: 19px;
}
}

@media all and (max-width: 1280px) {
body, .lsb-button, .facetwp-load-more {
  font-size: 18px;
}
}

@media all and (max-width: 1024px) {
body, .lsb-button, .facetwp-load-more {
  font-size: 17px;
}
}

@media all and (max-width: 768px) {
body, .lsb-button, .facetwp-load-more {
  font-size: 18px;
  font-size: clamp(100%, 14px + 0.22vw, 20px);
}
h1 { font-size: 2.1em; }
h2 { font-size: 1.56em; }
h3 { font-size: 1.42em; }
h4 { font-size: 1.26em; }
h5 { font-size: 1.15em; }
h6{ font-size: 1.03em; }
}
*/

/* Responsive font size - Step size 1.3 */
body {
  font-size: 16px;
}
.hero-block h1, .hero-block .h1 { 
    font-size: 3.8em;
}
h1, .h1 {
    font-size: 2.5em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 2em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h3.small {
  font-size: 1.3em;	
}
h4, .h4 { 
  font-size: 1.2em;
}
h5, .h5 { 
  font-size: 1em;
}
.font-l, .lsb-button.font-l {
	font-size: 1.2em;
}
.font-xl, .lsb-button.font-xl {
	font-size: 2em;
}
.font-xxl {
	font-size: 1.3em;
}
.font-xxxl {
	font-size: 1.4em;
}
.font-s {
	font-size: 14px;	
}
.font-xs {
	font-size: 12px;	
}
.font-xxs {
	font-size: 10px;	
}

@media all and (max-width: 1640px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 3.5em;
}
h1, .h1 {
    font-size: 2.4em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 2em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}
@media all and (max-width: 1366px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 3.3em;
}
h1, .h1 {
    font-size: 2.4em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 1.9em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}
@media all and (max-width: 1024px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 3.2em;
}
h1, .h1 {
    font-size: 2.3em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 1.8em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}
@media all and (max-width: 768px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 2.8em;
}
h1, .h1 {
    font-size: 2.3em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 1.8em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}
@media all and (max-width: 480px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 2.7em;
}
h1, .h1 {
    font-size: 2.2em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 1.7em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}
@media all and (max-width: 375px) {
.hero-block h1, .hero-block .h1 { 
    font-size: 2.6em;
}
h1, .h1 {
    font-size: 2.2em;
}
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { 
  font-size: 1.7em;
}
h3, .h3 { 
  font-size: 1.5em;
}
h4, .h4 { 
  font-size: 1.2em;
}
}

/* Responsive font size */
/*body {
  font-size: clamp(16px, 15px + 0.260416666vw, 20px);
}
h1 {
 font-size:clamp(2.67rem,2.07rem + 3vw,4.21rem);
}
h2 {
 font-size:clamp(2.14rem,1.74rem + 1.99vw,3.16rem);
}
h3 {
 font-size:clamp(1.37rem,1.21rem + .8vw,1.78rem);
}
.small-text {
  font-size: 0.9em
}*/

body {
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.01em;
  color: #000;
  background: #fff;
}
h1, h2, h3, h4, .heading-font {
  line-height: 1.4;
  letter-spacing: 0;
  font-weight: 300;
  color: var(--colour-dark-green);
}
.secondary-font {
  font-weight: 300;	
	  line-height: 1.4;
	  letter-spacing: 0;
}
h5, h6 {
  line-height: 1.3;
  letter-spacing: 0;
  font-weight: 500;
  color: var(--colour-dark-green);
}
.block .xl-margin-bottom { margin-bottom: 2rem; }
h1, .h1 { margin-bottom: 1.75rem; }
h2, .h2, .useful-info-columns-block .textarea-columns-wrap h3 { margin-bottom: 1.5rem; }
h3, .h3 { margin-bottom: 1.25rem; }
h4, .h4 { margin-bottom: 0.5rem; }
p {
  margin-bottom: 1.5em;
}
.block.core {
	margin-top: 1.5em;
	margin-bottom: 1.5em;	
}
.slider-wrap, .slider-container, .tns-slider > .tns-item {
  font-size: unset !important;
}
.fluentform .frm-fluent-form .ff-el-form-control, .fluentform .ff-el-input--label label {
  color: inherit;
  font-weight: inherit;
	font-family: inherit;
}
.fluentform .frm-fluent-form .choices, .fluentform .frm-fluent-form .choices__inner, .fluentform .frm-fluent-form .choices[data-type*="select-multiple"] .choices__input {
  font-size: inherit;
  color: inherit;
}
.fluentform .ff-btn {
  font-weight: inherit;
} 
.lsb-button, .facetwp-load-more {
  font-weight: inherit;
  font-size: inherit;
}

/*=======================================*/
/** Misc **/
/*=======================================*/
@media all and (max-width: 1920px) {
}
@media all and (max-width: 1366px) {
}
@media all and (max-width: 1280px) {
}
@media all and (max-width: 1024px) {
}
@media all and (max-width: 768px) {
}
@media all and (max-width: 480px) {
}
@media all and (max-width: 375px) {
}

@keyframes fadein{
    0% { opacity:0;  }
    10% { opacity:0; }
    100% { opacity:1; }
}
@-webkit-keyframes fadein{
    0% { opacity:0; }
    10% { opacity:0; }
    100% { opacity:1; }
}

/* Remove empty html elements */
.block div p:empty, .block div ol li:empty, .block div ul li:empty {
    display: none;	
}

/** Prevent elements wrapping (phone numbers, emails) **/
.nowrap {
  white-space: nowrap;
}
.nowrap, a[href^="tel:"], a[href^="mailto:"] {
    white-space: nowrap;
}


/** Increase fancybox video width on mobile **/
@media all and (max-width: 580px) {
.fancybox-slide--video {
    padding-left: 10px;
    padding-right: 10px;
}
}


.light-blue {
	color: #7b8a98;
}

.block.bg-terracotta-flame:not(.lsb-button), .block.bg-terracotta-flame :is(h1, h2, h3, h4, h5, h6) {
	color: #fff;
}
.block.bg-clay-rose :is(h1, h2, h3, h4, h5, h6) {
	color: #fff;
}
.heading-colour-white .heading-wrap :is(h1, h2, h3, h4, h5, h6) {
color: #fff;
}
.heading-colour-whipped-oat .heading-wrap :is(h1, h2, h3, h4, h5, h6) {
color: #e9e1d6;
}


.clickable-parent:not(a) a {
	position: static;
}
.clickable-parent:not(a) > a::before {
	content: "";
	position: absolute;
	inset: 0;
	cursor: pointer !important;
	display: flex;
	z-index: 1;
}


.block .facetwp-facet {
	margin-bottom: 0;
}
.facetwp-counter {
  display: none;
}

main :is(ul, ol):not(:last-child) {
	margin-bottom: 1.5em;	
}
/*main :is(ul,ol) li {
	margin-bottom: 1em;
}*/
main :is(ul,ol) li:last-of-type {
	margin-bottom: 0;
}

.remove-last-block-padding article.post-content-block {
	padding-bottom: 0;
}

strong {
	font-weight: 600;
}

.uppercase {
	text-transform: uppercase;
}
.italic {
	font-style: italic;
}


.bg-burgundy :is(h1, h2, h3, .heading-font) {
	color: var(--colour-white);
}
.bg-olive-green :is(h1, h2, h3, .heading-font), .bg-olive-green-overlay :is(h1, h2, h3, .heading-font) {
	color: var(--colour-neutral);	
}
.bg-olive-green :is(.textarea), .bg-olive-green-overlay :is(.textarea) {
	color: var(--colour-white);
}
.bg-dark-green :is(h1, h2, h3, .heading-font), .bg-dark-green-overlay :is(h1, h2, h3, .heading-font) {
	color: var(--colour-neutral);	
}
.bg-dark-green :is(.textarea), .bg-dark-green-overlay :is(.textarea) {
	color: var(--colour-white);
}
.bg-neutral :is(h1, h2, h3, .heading-font), .bg-white-overlay :is(h1, h2, h3, .heading-font) {
	color: var(--colour-olive-green);	
}
.bg-neutral.media-text-container :is(h1, h2, h3, .heading-font) {
	color: var(--colour-dark-green);	
}
.bg-white-overlay :is(.textarea) {
	color: #000;
}



/* any .block without .core, followed immediately by a .block.core */
div.block:not(.core) + div.block.core {
  margin-top: 0;
}
/* style a .block.core that is immediately followed by .call-to-action-block */
div.block.core:has(+ .call-to-action-block) {
    margin-bottom: 110px;
}
@media all and (max-width: 1280px) {
div.block.core:has(+ .call-to-action-block) {
  margin-bottom: 95px; 
}
.post-content-block .entry-content .block.core:first-child {
  margin-top: 95px;  
}
}
@media all and (max-width: 768px) {
div.block.core:has(+ .call-to-action-block) {
  margin-bottom: 80px; 
}
.post-content-block .entry-content .block.core:first-child {
  margin-top: 80px;  
}
}

.heading-block .wp-block-heading {
	margin-bottom: 0;
}

.wp-block-image.aligncenter {
  margin: 0 auto;
}
/*=======================================*/
/** Placeholder text **/
/*=======================================*/
::-webkit-input-placeholder, :-ms-input-placeholder, :-moz-placeholder {
  color: #fff;
  opacity: 1;
}
.fluentform .frm-fluent-form .ff-el-form-control::placeholder {
  color: var(--colour-dark-green);
  opacity: 1;
}
/*=======================================*/
/** Animations **/
/*=======================================*/
@media (prefers-reduced-motion: no-preference) {
[data-sal] {
    transition-delay: 0.1s;
    transition-delay: var(--sal-delay, 0.1s);
}
[data-sal][data-sal-duration="200"] {
    transition-duration: 0.2s;
}
[data-sal][data-sal-duration="250"] {
    transition-duration: 0.25s;
}
[data-sal][data-sal-duration="300"] {
    transition-duration: 0.3s;
}
[data-sal][data-sal-duration="350"] {
    transition-duration: 0.35s;
}
[data-sal][data-sal-duration="400"] {
    transition-duration: 0.4s;
}
[data-sal][data-sal-duration="450"] {
    transition-duration: 0.45s;
}
[data-sal][data-sal-duration="500"] {
    transition-duration: 0.5s;
}
[data-sal][data-sal-duration="550"] {
    transition-duration: 0.55s;
}
[data-sal][data-sal-duration="600"] {
    transition-duration: 0.6s;
}
[data-sal][data-sal-duration="650"] {
    transition-duration: 0.65s;
}
[data-sal][data-sal-duration="700"] {
    transition-duration: 0.7s;
}
[data-sal][data-sal-duration="750"] {
    transition-duration: 0.75s;
}
[data-sal][data-sal-duration="800"] {
    transition-duration: 0.8s;
}
[data-sal][data-sal-duration="850"] {
    transition-duration: 0.85s;
}
[data-sal][data-sal-duration="900"] {
    transition-duration: 0.9s;
}
[data-sal][data-sal-duration="950"] {
    transition-duration: 0.95s;
}
[data-sal][data-sal-duration="1000"] {
    transition-duration: 1s;
}
[data-sal][data-sal-duration="1050"] {
    transition-duration: 1.05s;
}
[data-sal][data-sal-duration="1100"] {
    transition-duration: 1.1s;
}
[data-sal][data-sal-duration="1150"] {
    transition-duration: 1.15s;
}
[data-sal][data-sal-duration="1200"] {
    transition-duration: 1.2s;
}
[data-sal][data-sal-duration="1250"] {
    transition-duration: 1.25s;
}
[data-sal][data-sal-duration="1300"] {
    transition-duration: 1.3s;
}
[data-sal][data-sal-duration="1350"] {
    transition-duration: 1.35s;
}
[data-sal][data-sal-duration="1400"] {
    transition-duration: 1.4s;
}
[data-sal][data-sal-duration="1450"] {
    transition-duration: 1.45s;
}
[data-sal][data-sal-duration="1500"] {
    transition-duration: 1.5s;
}
[data-sal][data-sal-delay="0"] {
    transition-delay: 0s;
}
[data-sal][data-sal-delay="50"] {
    transition-delay: 0.05s;
}
[data-sal][data-sal-delay="100"] {
    transition-delay: 0.1s;
}
[data-sal][data-sal-delay="150"] {
    transition-delay: 0.15s;
}
[data-sal][data-sal-delay="200"] {
    transition-delay: 0.2s;
}
[data-sal][data-sal-delay="250"] {
    transition-delay: 0.25s;
}
[data-sal][data-sal-delay="300"] {
    transition-delay: 0.3s;
}
[data-sal][data-sal-delay="350"] {
    transition-delay: 0.35s;
}
[data-sal][data-sal-delay="400"] {
    transition-delay: 0.4s;
}
[data-sal][data-sal-delay="450"] {
    transition-delay: 0.45s;
}
[data-sal][data-sal-delay="500"] {
    transition-delay: 0.5s;
}
[data-sal][data-sal-delay="550"] {
    transition-delay: 0.55s;
}
[data-sal][data-sal-delay="600"] {
    transition-delay: 0.6s;
}
[data-sal][data-sal-delay="650"] {
    transition-delay: 0.65s;
}
[data-sal][data-sal-delay="700"] {
    transition-delay: 0.7s;
}
[data-sal][data-sal-delay="750"] {
    transition-delay: 0.75s;
}
[data-sal][data-sal-delay="800"] {
    transition-delay: 0.8s;
}
[data-sal][data-sal-delay="850"] {
    transition-delay: 0.85s;
}
[data-sal][data-sal-delay="900"] {
    transition-delay: 0.9s;
}
[data-sal][data-sal-delay="950"] {
    transition-delay: 0.95s;
}
[data-sal][data-sal-delay="1000"] {
    transition-delay: 1s;
}
[data-sal][data-sal-delay="1050"] {
    transition-delay: 1.05s;
}
[data-sal][data-sal-delay="1100"] {
    transition-delay: 1.1s;
}
[data-sal][data-sal-delay="1150"] {
    transition-delay: 1.15s;
}
[data-sal][data-sal-delay="1200"] {
    transition-delay: 1.2s;
}
[data-sal][data-sal-delay="1250"] {
    transition-delay: 1.25s;
}
[data-sal][data-sal-delay="1300"] {
    transition-delay: 1.3s;
}
[data-sal][data-sal-delay="1350"] {
    transition-delay: 1.35s;
}
[data-sal][data-sal-delay="1400"] {
    transition-delay: 1.4s;
}
[data-sal][data-sal-delay="1450"] {
    transition-delay: 1.45s;
}
[data-sal][data-sal-delay="1500"] {
    transition-delay: 1.5s;
}
[data-sal][data-sal-easing="ease"] {
    transition-timing-function: ease;
}
[data-sal][data-sal-easing="ease-in"] {
    transition-timing-function: ease-in;
}
[data-sal][data-sal-easing="ease-out"] {
  transition-timing-function: ease-out;
}
[data-sal][data-sal-easing="ease-out-quart"] {
  transition-timing-function: cubic-bezier(.165,.84,.44,1);
}
[data-sal][data-sal-easing="ease-in-out"] {
    transition-timing-function: ease-in-out;
}
[data-sal][data-sal-easing="ease-in-out-cubic"] {
    transition-timing-function: cubic-bezier(0.645, 0.045, 0.355, 1);
}
[data-sal|="fade"] {
    opacity: 0;
    transition-timing-function: ease-out-quart;
    transition-timing-function: var(--sal-easing, ease-out-quart);
    transition-duration: 1s;
    transition-duration: var(--sal-duration, 1s);
    transition-property: opacity;
	transition-delay: 0.2s;
}
[data-sal|="fade"].above-fold {
opacity: 0.01;
}
[data-sal|="fade"].sal-animate,
body.sal-disabled [data-sal|="fade"] {
    opacity: 1;
}
[data-sal|="slide"] {
    opacity: 0;
    transition-timing-function: ease-out-quart;
    transition-timing-function: var(--sal-easing, ease-out-quart);
    transition-duration: 0.8s;
    transition-duration: var(--sal-duration, 0.8s);
    transition-property: opacity, transform;
}
[data-sal="slide-up"] {
    transform: translateY(30px);
}
[data-sal="slide-down"] {
    transform: translateY(-30px);
}
[data-sal="slide-left"] {
    transform: translateX(30px);
}
[data-sal="slide-right"] {
    transform: translateX(-30px);
}
[data-sal|="slide"].sal-animate,
body.sal-disabled [data-sal|="slide"] {
    opacity: 1;
    transform: none;
}
[data-sal|="zoom"] {
    opacity: 0;
    transition-timing-function: ease-out-quart;
    transition-timing-function: var(--sal-easing, ease-out-quart);
    transition-duration: 0.7s;
    transition-duration: var(--sal-duration, 0.7s);
    transition-property: opacity, transform;
}
[data-sal="zoom-in"] {
    transform: scale(0.5);
}
[data-sal="zoom-out"] {
    transform: scale(1.1);
}
[data-sal|="zoom"].sal-animate,
body.sal-disabled [data-sal|="zoom"] {
    opacity: 1;
    transform: none;
}
}
/*=======================================*/
/** Block width **/
/*=======================================*/
.core-block .block-inner {
    width: 100%;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
}
/*=======================================*/
/** Margin & Padding left/right **/
/*=======================================*/
.block-inner {
  margin-left: auto;
  margin-right: auto;
}

.block.full-screen-width  {
  padding-left: 0;
  padding-right: 0;
}


.block.super-wide-contained-width, .block.full-screen-contained-width  {
  padding-right: 24px;
  padding-left: 24px;	
}
.block.super-wide-contained-width.post-loop-block {
	padding-top: 24px;
}
.block, .block-padding {
  padding-right: 60px;
  padding-left: 60px;
}
.block.block-padding-left {
  padding-left: 60px;	
}
.block-padding-right {
  padding-right: 60px;	
}
@media all and (max-width:1640px) {
.block, .block-padding {
  padding-right: 50px;
  padding-left: 50px;
}
.block.block-padding-left {
  padding-left: 50px;	
}
.block-padding-right {
  padding-right: 50px;	
}
}
@media all and (max-width:1280px) {
.block, .block-padding {
  padding-right: 40px;
  padding-left: 40px;
}
.block.block-padding-left {
  padding-left: 40px;	
}
.block-padding-right {
  padding-right: 40px;	
}
}
@media all and (max-width:768px) {
.block, .block-padding {
  padding-left: 30px;
  padding-right: 30px;
}
.block.block-padding-left {
  padding-left: 30px;	
}
.block-padding-right {
  padding-right: 30px;	
}
}
@media all and (max-width:480px) {
.block, .block-padding {
  padding-left: 20px;
  padding-right: 20px;
}
.block.block-padding-left {
  padding-left: 20px;	
}
.block-padding-right {
  padding-right: 20px;	
}
}
/*
.block {
  padding-right: clamp(1px, 7.292vw, 140px);
  padding-left: clamp(1px, 7.292vw, 140px);
}
@media all and (max-width:1640px) {
.block {
  padding-right: clamp(1px, 5.976vw, 140px);
  padding-left: clamp(1px, 5.976vw, 140px);
}
}
@media all and (max-width:1280px) {
.block {
  padding-right: clamp(1px, 5vw, 140px);
  padding-left: clamp(1px, 5vw, 140px);
}
}
@media all and (max-width:1024px) {
.block {
  padding-right: 40px;
  padding-left: 40px;
}
}
@media all and (max-width:768px) {
.block {
  padding-left: 30px;
  padding-right: 30px;
}
}
@media all and (max-width:480px) {
.block {
  padding-left: 20px;
  padding-right: 20px;
}
}
*/
/*=======================================*/
/** Margin & Padding top/bottom **/
/*=======================================*/
body.admin-bar {
  margin-top: 32px;
}
@media screen and (max-width: 782px) {
body.admin-bar {
  margin-top: 46px;
}
}
.single-post .block p {
  margin-bottom: 1.5em; 
}
.list-block ul li {
  margin-bottom: 1.5em;
}

/* Remove bottom margin from last paragraph inside acf blocks and core blocks above content blocks */
.block p:last-child, .remove-bottom-margin p, .block :is(ul,ol):last-child {
  margin-bottom: 0;
}
/*.block p:last-child:not(.block.core p:last-child), .remove-bottom-margin p {
  margin-bottom: 0;	
}*/
.block.core .block.core:first-of-type {
  margin-top: 0;
}
.block.core .block.core:last-of-type {
  margin-bottom: 0;
}

/* Padding & Margin default */
.block:not(.core, .header-row, article) {
  padding-bottom: 110px; 
}
}
@media all and (max-width: 1280px) {
.block:not(.core, .header-row, article) {
  padding-bottom: 95px; 
}
}
@media all and (max-width: 768px) {
.block:not(.core, .header-row, article) {
  padding-bottom: 80px; 
}
}

/* Padding & Margin 200 */
.block.p-t-200 {
  padding-top: 200px; 
}
.block.p-b-200 {
  padding-bottom: 200px;  
}
.block.m-t-200 {
  margin-top: 200px; 
}
.block.m-b-200 {
  margin-bottom: 200px;  
}
@media all and (max-width: 1366px) {
.block.p-t-200 {
  padding-top: 150px; 
}
.block.p-b-200 {
  padding-bottom: 150px;  
}
.block.m-t-200 {
  margin-top: 150px; 
}
.block.m-b-200 {
  margin-bottom: 150px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-200 {
  padding-top: 100px; 
}
.block.p-b-200 {
  padding-bottom: 100px;  
}
.block.m-t-200 {
  margin-top: 100px; 
}
.block.m-b-200 {
  margin-bottom: 100px;  
}
}

/* Padding & Margin 185 */
.block.p-t-185 {
  padding-top: 185px; 
}
.block.p-b-185 {
  padding-bottom: 185px;  
}
.block.m-t-185 {
  margin-top: 185px; 
}
.block.m-b-185 {
  margin-bottom: 185px;  
}
@media all and (max-width: 1366px) {
.block.p-t-185 {
  padding-top: 135px; 
}
.block.p-b-185 {
  padding-bottom: 135px;  
}
.block.m-t-185 {
  margin-top: 135px; 
}
.block.m-b-185 {
  margin-bottom: 135px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-185 {
  padding-top: 80px; 
}
.block.p-b-185 {
  padding-bottom: 80px;  
}
.block.m-t-185 {
  margin-top: 80px; 
}
.block.m-b-185 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 170 */
.block.p-t-170 {
  padding-top: 170px; 
}
.block.p-b-170 {
  padding-bottom: 170px;  
}
.block.m-t-170 {
  margin-top: 170px; 
}
.block.m-b-170 {
  margin-bottom: 170px;  
}
@media all and (max-width: 1366px) {
.block.p-t-170 {
  padding-top: 120px; 
}
.block.p-b-170 {
  padding-bottom: 120px;  
}
.block.m-t-170 {
  margin-top: 120px; 
}
.block.m-b-170 {
  margin-bottom: 120px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-170 {
  padding-top: 80px; 
}
.block.p-b-170 {
  padding-bottom: 80px;  
}
.block.m-t-170 {
  margin-top: 80px; 
}
.block.m-b-170 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 155 */
.block.p-t-155 {
  padding-top: 155px; 
}
.block.p-b-155 {
  padding-bottom: 155px;  
}
.block.m-t-155 {
  margin-top: 155px; 
}
.block.m-b-155 {
  margin-bottom: 155px;  
}
@media all and (max-width: 1366px) {
.block.p-t-155 {
  padding-top: 105px; 
}
.block.p-b-155 {
  padding-bottom: 105px;  
}
.block.m-t-155 {
  margin-top: 105px; 
}
.block.m-b-155 {
  margin-bottom: 105px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-155 {
  padding-top: 80px; 
}
.block.p-b-155 {
  padding-bottom: 80px;  
}
.block.m-t-155 {
  margin-top: 80px; 
}
.block.m-b-155 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 140 */
.block.p-t-140 {
  padding-top: 140px; 
}
.block.p-b-140 {
  padding-bottom: 140px;  
}
.block.m-t-140 {
  margin-top: 140px; 
}
.block.m-b-140 {
  margin-bottom: 140px;  
}
@media all and (max-width: 1366px) {
.block.p-t-140 {
  padding-top: 100px; 
}
.block.p-b-140 {
  padding-bottom: 100px;  
}
.block.m-t-140 {
  margin-top: 100px; 
}
.block.m-b-140 {
  margin-bottom: 100px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-140 {
  padding-top: 80px; 
}
.block.p-b-140 {
  padding-bottom: 80px;  
}
.block.m-t-140 {
  margin-top: 80px; 
}
.block.m-b-140 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 125 */
.block.p-t-125 {
  padding-top: 125px; 
}
.block.p-b-125 {
  padding-bottom: 125px;  
}
.block.m-t-125 {
  margin-top: 125px; 
}
.block.m-b-125 {
  margin-bottom: 125px;  
}
@media all and (max-width: 1366px) {
.block.p-t-125 {
  padding-top: 100px; 
}
.block.p-b-125 {
  padding-bottom: 100px;  
}
.block.m-t-125 {
  margin-top: 100px; 
}
.block.m-b-125 {
  margin-bottom: 100px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-125 {
  padding-top: 80px; 
}
.block.p-b-125 {
  padding-bottom: 80px;  
}
.block.m-t-125 {
  margin-top: 80px; 
}
.block.m-b-125 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 110 */
.block.p-t-110 {
  padding-top: 110px; 
}
.block.p-b-110 {
  padding-bottom: 110px;  
}
.block.m-t-110 {
  margin-top: 110px; 
}
.block.m-b-110 {
  margin-bottom: 110px;  
}
@media all and (max-width: 1366px) {
.block.p-t-110 {
  padding-top: 95px; 
}
.block.p-b-110 {
  padding-bottom: 95px;  
}
.block.m-t-110 {
  margin-top: 95px; 
}
.block.m-b-110 {
  margin-bottom: 95px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-110 {
  padding-top: 80px; 
}
.block.p-b-110 {
  padding-bottom: 80px;  
}
.block.m-t-110 {
  margin-top: 80px; 
}
.block.m-b-110 {
  margin-bottom: 80px;  
}
}

/* Padding & Margin 95 */
.block.p-t-95 {
  padding-top: 95px; 
}
.block.p-b-95 {
  padding-bottom: 95px;  
}
.block.m-t-95 {
  margin-top: 95px; 
}
.block.m-b-95 {
  margin-bottom: 95px;  
}
@media all and (max-width: 1366px) {
.block.p-t-95 {
  padding-top: 80px; 
}
.block.p-b-95 {
  padding-bottom: 80px;  
}
.block.m-t-95 {
  margin-top: 80px; 
}
.block.m-b-95 {
  margin-bottom: 80px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-95 {
  padding-top: 65px; 
}
.block.p-b-95 {
  padding-bottom: 65px;  
}
.block.m-t-95 {
  margin-top: 65px; 
}
.block.m-b-95 {
  margin-bottom: 65px;  
}
}

/* Padding & Margin 80 */
.block.p-t-80 {
  padding-top: 80px; 
}
.block.p-b-80 {
  padding-bottom: 80px;  
}
.block.m-t-80 {
  margin-top: 80px; 
}
.block.m-b-80 {
  margin-bottom: 80px;  
}
@media all and (max-width: 1366px) {
.block.p-t-80 {
  padding-top: 65px; 
}
.block.p-b-80 {
  padding-bottom: 65px;  
}
.block.m-t-80 {
  margin-top: 65px; 
}
.block.m-b-80 {
  margin-bottom: 65px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-80 {
  padding-top: 40px; 
}
.block.p-b-80 {
  padding-bottom: 40px;  
}
.block.m-t-80 {
  margin-top: 40px; 
}
.block.m-b-80 {
  margin-bottom: 40px;  
}
}

/* Padding & Margin 65 */
.block.p-t-65 {
  padding-top: 65px; 
}
.block.p-b-65 {
  padding-bottom: 65px;  
}
.block.m-t-65 {
  margin-top: 65px; 
}
.block.m-b-65 {
  margin-bottom: 65px;  
}
@media all and (max-width: 1366px) {
.block.p-t-65 {
  padding-top: 55px; 
}
.block.p-b-65 {
  padding-bottom: 55px;  
}
.block.m-t-65 {
  margin-top: 55px; 
}
.block.m-b-65 {
  margin-bottom: 55px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-65 {
  padding-top: 40px; 
}
.block.p-b-65 {
  padding-bottom: 40px;  
}
.block.m-t-65 {
  margin-top: 40px; 
}
.block.m-b-65 {
  margin-bottom: 40px;  
}
}

/* Padding & Margin 50 */
.block.p-t-50 {
  padding-top: 50px; 
}
.block.p-b-50 {
  padding-bottom: 50px;  
}
.block.m-t-50 {
  margin-top: 50px; 
}
.block.m-b-50 {
  margin-bottom: 50px;  
}
@media all and (max-width: 1366px) {
.block.p-t-50 {
  padding-top: 50px; 
}
.block.p-b-50 {
  padding-bottom: 50px;  
}
.block.m-t-50 {
  margin-top: 50px; 
}
.block.m-b-50 {
  margin-bottom: 50px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-50 {
  padding-top: 40px; 
}
.block.p-b-50 {
  padding-bottom: 40px;  
}
.block.m-t-50 {
  margin-top: 40px; 
}
.block.m-b-50 {
  margin-bottom: 40px;  
}
}

/* Padding & Margin 35 */
.block.p-t-35 {
  padding-top: 35px; 
}
.block.p-b-35 {
  padding-bottom: 35px;  
}
.block.m-t-35 {
  margin-top: 35px; 
}
.block.m-b-35 {
  margin-bottom: 35px;  
}
@media all and (max-width: 1366px) {
.block.p-t-35 {
  padding-top: 35px; 
}
.block.p-b-35 {
  padding-bottom: 35px;  
}
.block.m-t-35 {
  margin-top: 35px; 
}
.block.m-b-35 {
  margin-bottom: 35px;  
}
}
@media all and (max-width: 768px) {
.block.p-t-35 {
  padding-top: 30px; 
}
.block.p-b-35 {
  padding-bottom: 30px;  
}
.block.m-t-35 {
  margin-top: 30px; 
}
.block.m-b-35 {
  margin-bottom: 30px;  
}
}

/* Padding & Margin 20 */
.block.p-t-24 {
  padding-top: 24px; 
}
.block.p-b-24 {
  padding-bottom: 24px;  
}
.block.m-t-24 {
  margin-top: 24px; 
}
.block.m-b-24 {
  margin-bottom: 24px;  
}

/* Padding & Margin None */
body .block.p-t-none {
  padding-top: 0; 
}
body .block.p-b-none {
  padding-bottom: 0;  
}
body .block.m-t-none {
  margin-top: 0;  
}
body .block.m-b-none {
  margin-bottom: 0; 
}
/*=======================================*/
/** Block border **/
/*=======================================*/
.block-border-top-bottom {
    border-top: 1px solid #D5D5D5;
    border-bottom: 1px solid #D5D5D5;
}
.block-border-top {
    border-top: 1px solid #D5D5D5;
}
.block-border-bottom {
    border-bottom: 1px solid #D5D5D5;
}
/*=======================================*/
/** Links **/
/*=======================================*/
#main-content a {
  position: relative;
	text-decoration: underline;
	text-underline-offset: 3px;
  /*transition: color .2s cubic-bezier(.3,.15,.18,1); dont apply this to links that dont need it like buttons and images as it causes issues in web vitals */
}
#main-content a:is(.menu li a, .lsb-button) {
	text-decoration: none;
}
#main-content a:not(button, .lsb-button, .heading) {
	  color: var(--colour-rusty-orange);
}
#main-content a:hover:not(button, .lsb-button, .heading) {
  color: var(--colour-dark-green);
	transition: color .2s cubic-bezier(.3,.15,.18,1);
}
/** Hover styles **/
/* Underline */
.link-underline a:hover:not(.lsb-button) {
  text-decoration: underline;
}
/* Underline from left */
.link-underline-from-left a:not(.lsb-button,.child-underline)::after, .link-underline-from-left a.child-underline span::after, .underline span::after, .post-filters-block .facetwp-radio::after {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background-color: #fff;
  transform: scaleX(0);
  transform-origin: bottom right;
  transition: transform .3s;
}
.link-underline-from-left a:hover:not(.lsb-button, .child-underline)::after, .link-underline-from-left a.child-underline:hover span::after, .underline-parent a:hover .underline span::after, .post-filters-block .facetwp-radio:hover::after {
  transform-origin: bottom left;
  transform: scaleX(1);
}
.underline span {
	position: relative;
}
#menu-primary-menu a::after {
  background-color: var(--colour-neutral);
}


footer .link-underline-from-left a:not(.lsb-button,.child-underline)::after, footer .link-underline-from-left a:is(.child-underline) span::after{
  background-color: var(--colour-neutral);
}

a.child-underline span {
	position: relative;
}
a.child-underline span.icon::after {
	display: none;
}
/* Exclude links from custom hover style */
.no-hover-underline a:not(.lsb-button)::after {
  display: none;
}
/* Underline from centre */
.link-underline-from-centre a:not(.lsb-button) {
	position: relative;
	transition: color .25s ease-in-out;
}
.link-underline-from-centre a:not(.lsb-button)::before {
	content: '';
	position: absolute;
	top: 100%;
	width: 100%;
	height: 1px;
	background-color: hsl(45 100% 70%);
	transform: scaleX(0);
	transition: transform .25s ease-in-out;
}
.link-underline-from-centre a:hover:not(.lsb-button)::before {
	color: hsl(45 100% 70%);
	transform: scaleX(1);
}


.bg-dark-blue .btn-hover-from-top .lsb-button.button-style-white-solid:hover::after {
  background: #7b8a98;
}


/* Fill from left */
.link-fill-from-left a:not(.lsb-button)::before {
  background: hsl(45 100% 70%);
  content: "";
  inset: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.25s ease-in-out;
  z-index: -1;
}
.link-fill-from-left a:hover:not(.lsb-button)::before {
  transform: scaleX(1);
  transform-origin: left;
}

/*=======================================*/
/** Breadcrumbs **/
/*=======================================*/
.block.breadcrumbs {
	padding-top: 20px;
}
.block.breadcrumbs.absolute-position {
	width: 100%;
	position: absolute;
	color: #fff;
	z-index: 1;
	padding-bottom: 0;
}
.block.breadcrumbs .container-width {
	display: flex;
	gap: 7px;
}
#main-content .block.breadcrumbs a {
	font-weight: initial;
}
/*=======================================*/
/** Buttons **/
/*=======================================*/
.lsb-button, .fluentform .frm-fluent-form .ff-btn, .post-loop-pagination-block .facetwp-load-more {
  color: inherit;
overflow: hidden;
  text-align: center;
  box-sizing: border-box;
  cursor: pointer;
  box-shadow: none;
position: relative;
  border-radius: 0;
  border: 0;
  font-size: 1em;
  letter-spacing: inherit;
  line-height: inherit;
  transition: all .3s cubic-bezier(.3,.15,.18,1);
min-width: 265px;
  max-width: fit-content;
  padding: 10px 12px;
	text-transform: uppercase;
}
.lsb-button.small-btn, .fluentform .frm-fluent-form .ff-btn.small-btn {
	min-width: 150px;
	font-size: 14px;
	padding: 10px 12px;
}
.lsb-button, .fluentform .frm-fluent-form .ff-btn {
	display: block;
}

.lsb-button:hover, .fluentform .frm-fluent-form .ff-btn:hover, .post-loop-pagination-block .facetwp-load-more:hover {
    text-decoration: none;
}

.block .facetwp-facet-load_more button {
  background: var(--btn-bg);
  color: var(--btn-txt-colour);
  border: solid 2px #fff;
  border-radius: 25px;
}
.block .facetwp-facet-load_more button:hover {
	background: #fff;
	color: #ffffff;
}

.bg-dark-green .button-style-neutral-solid, .mob-menu-container .lsb-button.button-style-neutral-solid {
	color: var(--colour-rusty-orange);
}
.lsb-button.button-style-neutral-solid-rusty-orange-text .plus {
		color: var(--colour-dark-green);
	transition-delay: .1s;
transition: all .3s cubic-bezier(.3,.15,.18,1);
}
.lsb-button.button-style-neutral-solid-rusty-orange-text:hover .plus {
		color: var(--colour-white);
}
.bg-dark-green .btn-hover-from-top .lsb-button.button-style-neutral-solid-rusty-orange-text:hover::after {
  background: var(--colour-rusty-orange);	
}


#main-content .lsb-button[class*="text-link"] {
  text-decoration: underline;
  text-underline-offset: 7px;
  text-decoration-thickness: 1.5px;
  min-width: initial;
  width: fit-content;
  transition-delay: 0s !important;
  text-align: left;
  padding: 0;
  padding-bottom: 3px;
	text-transform: capitalize;
}

.btn-hover-from-top .lsb-button[class*="text-link"]::before,
.btn-hover-from-top .lsb-button[class*="text-link"]::after {
  display: none;
}
.lsb-button[class*="text-link"] {
  font-size: 1.2em;
}

.lsb-button .plus {
	margin-left: 4px;
}
.lsb-button[class*="text-link"] .plus {
	display: none;
}
.button-container-inner {
	display: flex;
	gap: 20px 12px;
	justify-content: center;
}

/** Button hover styles **/
/** Change colour **/
.single-btn-wrap.btn-hover-change-colour .lsb-button:hover {
	text-decoration: none;
}
/** Grow **/
.single-btn-wrap.btn-hover-grow .lsb-button:hover {
	text-decoration: none;
	transform: scale(1.05);	
}
/** From top **/
.single-btn-wrap.btn-hover-from-top .lsb-button:hover {

}
/** From bottom **/
.single-btn-wrap.btn-hover-from-bottom .lsb-button:hover {

}
/** From left **/
.single-btn-wrap.btn-hover-from-left .lsb-button:hover {

}
/** From right **/
.single-btn-wrap.btn-hover-from-right .lsb-button:hover {
	
}


@media all and (max-width:1366px) {
.lsb-button, .fluentform .frm-fluent-form .ff-btn, .post-loop-pagination-block .facetwp-load-more {
    min-width: 120px;
}
}
@media all and (max-width:768px) {
.lsb-button, .fluentform .frm-fluent-form .ff-btn, .post-loop-pagination-block .facetwp-load-more {
    min-width: 110px;
	  padding: 6px 12px;
}
}
@media all and (max-width:767px) {
.button-container .button-container-inner {
flex-direction: column;
    align-items: center;
}
}
@media all and (max-width:480px) {
.button-container .button-container-inner {
flex-direction: column;
    align-items: center;
	gap: 12px 12px;
}
.lsb-button[class*="text-link"] {
  font-size: 1.1em;
}
}
@media all and (max-width:375px) {
.lsb-button[class*="text-link"] {
  font-size: 1em;
}
}
/*=======================================*/
/** Image semi-transparent overlay **/
/*=======================================*/
/** Solid overlay **/
.overlay::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(20, 20, 20, 0.2);
  z-index: 1;
}

/** Fade from bottom overlay **/
.overlay-from-bottom::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 65%;
  background: linear-gradient(0deg,rgb(20,20,20) 0%,rgba(20,20,20,0) 100%);
  z-index: 1;
}

/** Fade from top overlay **/
.overlay-from-top::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 65%;
  background: linear-gradient(0deg,rgba(20,20,20,0) 0%,rgb(20,20,20) 100%);
  z-index: 1;
}
/*=======================================*/
/** Slider **/
/*=======================================*/
.slider-container {
  position: relative;
}
.slider-overlay-text {
  width: 100%;
}
/* Slider nav dots */
.slider-container .tns-nav {
  position: absolute;
  bottom: -40px;
  left: 0;
  right: 0;
  text-align: center;
  z-index: 3;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 7px;
}
.slider-container .tns-nav button {
  border: 0;
  border-radius: 0;
  padding: 7px;
  box-sizing: border-box;
  background: #EFECEA;
  opacity: 0.65;
}
.slider-container .tns-nav button.tns-nav-active {
  opacity: 1;
}



/* Remove the default arrow glyph */
.block .swiper-button-prev::after,
.block .swiper-button-next::after {
  content: none;
}
/* Remove the default arrow glyph */
.block .swiper-button-prev::after,
.block .swiper-button-next::after {
  content: none;
}

/* Size your buttons as needed */
.block .swiper-button-prev,
.block .swiper-button-next {
  width: 21px;
  height: 40px;
  background-size: contain;
  background-repeat: no-repeat;
}
.block .small-arrows :is(.swiper-button-prev,.swiper-button-next) {
width: 7px;
  height: 14px;
}
.block .circle-arrows :is(.swiper-button-prev,.swiper-button-next) {
width: 32px;
  height: 32px;
	margin-top: -16px;
	pointer-events: all;
}
.block .dark-green-arrows :is(.swiper-button-prev, .swiper-button-next) {
	width: 13px;
	height: 25px;
}


/* Point the backgrounds at your SVG files */
.block .swiper-button-prev {
  background-image: url('/wp-content/uploads/2025/05/White_Arrow-Left.svg');
}
.block .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/05/White_Arrow-Right.svg');
	background-position: right;
}
.block .blue-arrows .swiper-button-prev {
  background-image: url('/wp-content/uploads/2025/05/Blue_Arrow-Left.svg');	
}
.block .blue-arrows .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/05/Blue_Arrow-Right.svg');	
}
.block .blue-arrows .swiper-button-prev:hover {
  background-image: url('/wp-content/uploads/2025/05/White_Arrow-Left.svg');	
}
.block .blue-arrows .swiper-button-next:hover {
  background-image: url('/wp-content/uploads/2025/05/White_Arrow-Right.svg');	
}

.block .olive-green-arrows .swiper-button-prev {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Olive-Green_Arrow-Left.svg');	
}
.block .olive-green-arrows .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Olive-Green_Arrow-Right.svg');
	background-position: right;
}
.block .dark-green-arrows .swiper-button-prev {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Dark-Green_Arrow-Left.svg');	
}
.block .dark-green-arrows .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Dark-Green_Arrow-Right.svg');
	background-position: right;
}
.block .neutral-circle-arrows .swiper-button-prev {
	background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Circle-Arrow-Left.svg');
	left: 0;
}
.block .neutral-circle-arrows .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Circle-Arrow-Right.svg');
  background-position: right;
  right: 0;
}
.block .rust-circle-arrows .swiper-button-prev {
	background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Rusty_Circle-Arrow-Left.svg');
	left: 0;
}
.block .rust-circle-arrows .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Rusty_Circle-Arrow-Right.svg');
  background-position: right;
  right: 0;
}



.swiper-button-prev,
.swiper-button-next {
  transition: transform 0.2s ease;
}
.swiper-button-prev:hover,
.swiper-button-next:hover {
  transform: scale(1.1);
}
.no-hover-scale .swiper-button-prev:hover,
.no-hover-scale .swiper-button-next:hover {
  transform: scale(1);
}
.swiper-button-prev:focus-visible,
.swiper-button-next:focus-visible {
  transform: scale(1.1);
  outline: 2px solid #007aff;
}
.no-hover-scale .swiper-button-prev:focus-visible,
.no-hover-scale .swiper-button-next:focus-visible {
  transform: scale(1);
}

@media all and (max-width: 1024px) {
.block .swiper-button-prev, .block .swiper-button-next {
    width: 17px;
    height: 32px;
}
.block .swiper-button-next, .block .swiper-button-prev {
margin-top: -16px;	
}
}
/*=======================================*/
/** Image zoom on hover **/
/*=======================================*/
@media only screen and (min-width: 1025px) {
/* [1] The container */
.img-hover-zoom, .work-post, .post-loop-wrap article .image, .style-lastest-blog-posts .swiper-slide.swiper-slide-active .image, .content-grid-block .container .item .image {
  overflow: hidden; /* [1.2] Hide the overflowing of child elements */
}

/* [2] Transition property for smooth transformation of images */
.img-hover-zoom img, .work-post img, .back-to-our-services .image img {
  transition: transform .2s ease;
}
.post-loop-wrap article img, .style-lastest-blog-posts .swiper-slide.swiper-slide-active img, .content-grid-block .container .item .image img {
  transition: transform .3s ease;
}

/* [3] Finally, transforming the image when container gets hovered */
.img-hover-zoom img:hover, .work-post img:hover, .back-to-our-services .image:hover img, .post-loop-wrap article:hover img {
  transform: scale(1.03);
}
.post-loop-wrap article:hover img, .style-lastest-blog-posts .swiper-slide.swiper-slide-active:hover img, .content-grid-block .container .item:hover .image img {
  transform: scale(1.05);
}
}
/*=======================================*/
/** Lightbox **/
/*=======================================*/
.fancybox-bg {
background: #2A2A2A;
}
/*=======================================*/
/** Pagination **/
/*=======================================*/
.load-more-pagination {
  margin-top: 70px;
}
.load-more-pagination .facetwp-facet {
  margin-bottom: 0;
}
.load-more-pagination .facetwp-type-pager {
  display: flex;
  justify-content: center;
  align-items: center;
}
/*=======================================*/
/** Social Links **/
/*=======================================*/
.social-links {
  margin: 0;
  display: grid;
}
.social-links li {
  list-style: none;
  margin: 0;
}
.social-links-icons li a {
    border-bottom: 0;
    display: flex;
}

.contact-details .social-links-icons.alt-icons {
	display: flex;
	gap: 12px;
}
.contact-details .social-links-icons.alt-icons div a {
	border: solid 2px #fff;
	border-radius: 25px;
	color: #fff;
	height: 42px;
	min-width: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all .3s cubic-bezier(.3,.15,.18,1);
	font-weight: 400;
}
.contact-details .social-links-icons.alt-icons div:hover a {
  background: #fff;
  color: #fff;
	border: 2px solid #fff;
}
.contact-details .social-links-icons.alt-icons div svg path {
    transition: all .3s cubic-bezier(.3,.15,.18,1);
}
.contact-details .social-links-icons.alt-icons div:hover svg path {
  fill: #fff;
}


.social-links-icons-text li a {
	display: inline-flex;
	align-items: center;
	gap: 20px;
}
.social-links-icons-text li svg, .social-links-icons-text li img {
  height: 14px;
  width: auto;
}
.social-links-icons-text li .icon {
  width: 15px;
}
/*=======================================*/
/** Header **/
/*=======================================*/
.site-header {
  z-index: 10;
  position: relative;
  width: 100%;
	z-index: 1000;
	transition: none;
	opacity: 1;
}
.site-header .header-row {
	width: 100%;
	padding-top: 12px;
	padding-bottom: 12px;
	/*transition: padding 0.3s;*/
}
.site-header .block-inner {
	display: grid;
	padding-top: 0;
	padding-bottom: 0;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	grid-template-columns: 1fr 1fr 1fr;
}

.header-phone, .header-email {
  display: flex;
  align-items: center;
  gap: 10px;	
}
.header-social-links svg path {
	fill: #ED7D31;
}
.header-phone.icon img, .header-email.icon img {
	height: 13px;
}


.header-main-row {
	width: 100%;
}
.sticky .header-main-row {
	background: #44546a;
	box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.3);
}
.site-header .header-main-row .block-inner {
  display: flex;
  padding-top: 10px;
  padding-bottom: 10px;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
}

/** Header Logo **/
.header-logo-container {
	display: flex;
	align-items: center;
	justify-content: center;
}
.header-logo-container a::before {
	display: none;
}
.header-logo-container a {
  display: inherit;
}
.header-logo-container :is(svg,img) {
  display: block;
  width: auto;
	height: 68px;
	/*transition: height 0.3s;*/
}
.logo-text {
	color: #fff;
	position: relative;
	top: 6px;
	font-size: 1.1em;
}


.header-column.book-container {
display: flex;
  justify-content: flex-end;	
}
.header-column.book-container .lsb-button {
	width: fit-content;
	min-width: 160px;
}

.site-header.sticky {
  position: fixed;
  left: 0;
  width: 100%;
  top: -100%;
}

.site-header.sticky.animate-in {
  top: -100%;
  opacity: 0;
  transition: none;
}

.site-header.sticky.visible {
  top: 0;
  opacity: 1;
  transition: top 0.3s ease, opacity 500ms ease;
}

.site-header.sticky.hide {
  top: -100%;
  opacity: 0;
  transition: top 0.05s ease, opacity 0.05s ease;
}


.site-header.sticky .header-row {
	padding-top: 12px;
	padding-bottom: 12px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.25);
}
.site-header.sticky .header-logo-container :is(svg,img) {
	height: 36px;
}
.header-logo-container a.sticky-logo {
	display: none;
}
.site-header.sticky .header-logo-container a.full-logo {
	display: none;
}
.site-header.sticky .header-logo-container a.sticky-logo {
	display: inherit;
}
.site-header.sticky .header-column.book-container .lsb-button {
	padding: 6px 12px;
	transition-delay: 0s;
}

.header-column.mobile-icons-container {
	display: none;
}
@media all and (max-width: 1280px) {
.header-column.menu-container .desk-menu-container ul {
  gap: 30px;
}
}
@media all and (max-width: 1212px) {
.header-column.book-container .lsb-button {
	min-width: 138px;
	padding: 6px 8px;
	font-size: 0.9em;
}
.header-logo-container svg, .header-logo-container img {
	height: 60px !important;
}
}
/*=======================================*/
/** Contact forms **/
/*=======================================*/
.fluentform.ff-default .ff-el-form-control {
	border: none;
	border-radius: 0;
	color: var(--colour-dark-green);
}
.fluentform.ff-default .ff-el-input--content {
	color: var(--colour-dark-green);	
}
.fluentform.ff-default .ff-t-container {
	gap: 24px;
}
.fluentform.ff-default .ff-el-group {
  margin-bottom: 24px;
}
.fluentform.ff-default .ff-message-success {
	border: none;
	box-shadow: none;
	margin-top: 20px;
	padding: 0;
	text-align: center;
	font-weight: 500;
}
.fluentform.ff-default input.ff-el-form-control, .fluentform.ff-default select.ff-el-form-control {
	height: 49px;
}
.fluentform.ff-default textarea.ff-el-form-control {
	height: 200px;
	padding-top: 15px;
}
.fluentform.ff-default .ff-el-input--content :is(input, select, textarea){
    background-color: #fff;
	transition: background-color 0.1s ease;
}
.fluentform.ff-default .ff-el-input--content :is(input, select, textarea):focus{
    background-color: #f4f0eb;
}
.fluentform.ff-default .ff_submit_btn_wrapper {
	margin-bottom: 0;
}


.fluentform.ff-default .select-container .ff-el-input--content {
  position: relative;
}
.fluentform.ff-default .select-container .ff-el-input--content select {
  appearance: none;
  background-color: #fff;
  background-image: none;
	padding-right: 40px;
}
.fluentform.ff-default .select-container .ff-el-input--content::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 16px;
  height: 16px;
  background: url('/wp-content/uploads/2025/05/Blue_Arrow-Down.svg') no-repeat center;
  background-size: 16px;
  transform: translateY(-50%);
	pointer-events: none;
}

.fluentform.ff-default .ff-el-form-check {
	font-size: 14px;
}
.fluentform.ff-default .ff-el-form-check input {
  height: 24px;
  width: 24px;
  border: none;
  border-radius: 0;
  margin-right: 16px;
  appearance: none;
  background-color: #fff !important;
  cursor: pointer;
}
.fluentform.ff-default .ff-el-form-check.ff_item_selected input {
  background: url('/wp-content/uploads/2025/04/check-icon-dark-blue.svg') no-repeat center center;
	background-color: #fff;
  background-size: 16px 16px;
}
.fluentform.ff-default .ff-el-form-check .ff_t_c {
	padding-right: 0;
}

.fluentform.ff-default .ff_submit_btn_wrapper {
	padding-top: 10px;
}
.fluentform.ff-default .ff-btn-submit {
	background: var(--colour-rusty-orange);
	color: var(--colour-white);
	position: relative;
  transition-delay: .1s;
	margin: 0 auto;
}
.fluentform.ff-default .ff-btn-submit span {
  z-index: 1;
  position: relative;
}
.fluentform.ff-default .ff-btn-submit::after {
	bottom: 0;
	left: 0;
	height: 0;
	width: 100%;
	background: var(--colour-rusty-orange);
	content: '';
	position: absolute;
	transition: inherit;
	transition-delay: .1s;
}
.fluentform.ff-default .ff-btn-submit:hover::after {
  top: 0;
  height: 100%;
  background: var(--colour-dark-green);
  transition-delay: .1s;
}

@media all and (max-width: 768px) {
.fluentform.ff-default .ff-el-group {
	margin-bottom: 16px;
}
.fluentform.ff-default .ff_submit_btn_wrapper {
  margin-bottom: 0;
}
}
/*=======================================*/
/** Accordion **/
/*=======================================*/
.accordion {
	display: grid;
}
.accordion-item .accordion-item-inner {
  transition: background 100ms ease;
}
.colour-white .accordion-item .accordion-item-inner {
  border-top: 1px solid var(--colour-neutral);
}
.colour-white .accordion-item:last-of-type .accordion-item-inner {
  border-bottom: 1px solid var(--colour-neutral);
}

.accordion-item .row-heading {
margin: 0;
}
.accordion-item .row-heading .accordion-button {
display: flex;
  width: 100%;
  justify-content: space-between;
	align-items: center;
  padding: 28px 0;
		gap: 16px;
}
.accordion-item .row-heading .heading-icon {
	height: 16px;
	width: 16px;
	min-width: 16px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.row-heading .heading-icon #accordion-minus {
	display: none;
}
.accordion-item.active .row-heading .heading-icon #accordion-cross {
	display: none;
}
.accordion-item.active .row-heading .heading-icon #accordion-minus {
	display: flex;
}
.accordion-item .row-content-inner {
  padding: 0 0 28px 0;
}
.accordion-item .row-content {
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}
@media all and (max-width: 480px) {
.accordion-item .row-heading .accordion-button {
	padding: 20px 0;
}
.menus-block .accordion-item .row-content-inner {
	padding: 0 0 40px 0;
}
}
/*=======================================*/
/** Mobile Menu **/
/*=======================================*/
@keyframes fadeInRight2 {
	0% {
		opacity:0;
		bottom:20px
	}
	100% {
		opacity:1;
		bottom:0
	}
}
.mob-menu-container.menu--visible ul li {
	animation:.4s forwards fadeInRight2;
	animation-delay:.25s
}
.mob-menu-container.menu--visible ul li:nth-of-type(2) {
	animation-delay:.3s
}
.mob-menu-container.menu--visible ul li:nth-of-type(3) {
	animation-delay:.35s
}
.mob-menu-container.menu--visible ul li:nth-of-type(4) {
	animation-delay:.4s
}
.mob-menu-container.menu--visible ul li:nth-of-type(5) {
	animation-delay:.45s
}
.mob-menu-container.menu--visible ul li:nth-of-type(6) {
	animation-delay:.5s
}
.mob-menu-container.menu--visible ul li:nth-of-type(7) {
	animation-delay:.55s
}
.mob-menu-container.menu--visible ul li:nth-of-type(8) {
	animation-delay:.6s
}
.mob-menu-container.menu--visible ul li {
	opacity:0;
	position:relative
}

/* ————————————————
   BUTTON (hamburger → X)
   ———————————————— */
.mob-menu-btn-container {
  display: flex;
  align-items: center;
}
.mob-menu-btn-wrap {
  display: inline-block;
}
.mob-menu-btn {
  cursor: pointer;
  will-change: transform;
}
.mob-menu-btn span {
  display: block;
  width: 28px;
  height: 2px;
  margin: 7px 0;
  background: var(--colour-dark-green);
  transition: transform 0.4s ease, opacity 0.3s ease;
  border-radius: 1.5px;
}
.mob-menu-btn.open .top {
  transform: translateY(8px) rotate(45deg);
}
.mob-menu-btn.open .middle {
  opacity: 0;
}
.mob-menu-btn.open .bottom {
  transform: translateY(-10px) rotate(-45deg);
}

/* ————————————————
   BACKDROP OVERLAY
   ———————————————— */
.mob-menu-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.3);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s ease;
  z-index: 999;
}
.mob-menu-overlay.open {
  opacity: 1;
  pointer-events: all;
}

/* ————————————————
   SLIDE‑IN MENU
   ———————————————— */
.mob-menu-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 56%;
  height: 100%;
	min-width: 400px;
  background: var(--colour-dark-green);
  box-shadow: 2px 0 12px rgba(0, 0, 0, 0.15);
  transform: translateX(-100%) scale(0.98);
  opacity: 0;
  transition:
    transform 0.5s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.4s ease;
  will-change: transform, opacity;
  z-index: 1000;
	overflow: scroll;
}
.mob-menu-container.open {
  transform: translateX(0) scale(1);
  opacity: 1;
}

/* ————————————————
   CLOSE “X” INSIDE MENU
   ———————————————— */
.close-btn {
  position: absolute;
  top: 36px;
  right: 36px;
  width: 28px;
  height: 20px;
  cursor: pointer;
  z-index: 1001;
}
.close-btn span {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  height: 2px;
  background: var(--colour-neutral);
  border-radius: 1.5px;
  transform-origin: center;
}
.close-btn span:first-child {
  transform: translate(-50%, -50%) rotate(45deg);
}
.close-btn span:last-child {
  transform: translate(-50%, -50%) rotate(-45deg);
}

/* ————————————————
   CHILD ITEMS STAGGER
   ———————————————— */
.mob-menu-container .menu-primary-menu-container ul li,
.mob-menu-container .button-container,
.mob-menu-container .phone-email,
.mob-menu-container .address {
  opacity: 0;
  transform: translateX(-20px);
  transition: transform 0.4s ease, opacity 0.4s ease;
}

/* 2) Staggered fade/slide in when open */
/* menu items (7 of them) */
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(1) {
  transition-delay: 0.30s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(2) {
  transition-delay: 0.4s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(3) {
  transition-delay: 0.5s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(4) {
  transition-delay: 0.6s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(5) {
  transition-delay: 0.7s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(6) {
  transition-delay: 0.8s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(7) {
  transition-delay: 0.9s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(8) {
  transition-delay: 1s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(9) {
  transition-delay: 1.1s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .menu-primary-menu-container ul li:nth-child(10) {
  transition-delay: 1.2s;
  opacity: 1;
  transform: translateX(0);
}

/* 3) Then book‑now button */
.mob-menu-container.open .button-container {
  transition-delay: 1s;
  opacity: 1;
  transform: translateX(0);
}

/* 4) Finally contact details */
.mob-menu-container.open .phone-email {
  transition-delay: 1.1s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .address {
  transition-delay: 1.2s;
  opacity: 1;
  transform: translateX(0);
}
.mob-menu-container.open .address h4 {
	color: var(--colour-neutral);
}

.menu-container-inner .flyout-logo svg {
	width: 100%;
	max-width: 250px;
}
.menu-container-inner {
margin-top: 80px;
  padding-left: clamp(60px, 18%, 150px);
  color: var(--colour-white);
  padding-right: 60px;
	padding-bottom: 80px;
}
.menu-container-inner .menu-primary-menu-container {
	margin-top: 50px;
}
.menu-container-inner .menu-primary-menu-container ul {
	display: grid;
	gap: 8px;
}
.menu-container-inner .menu-primary-menu-container ul li {
	font-size: 1.6em;
	width: fit-content;
	display: flex;
	align-items: flex-end;
	flex-wrap: wrap;
}
.menu-container-inner .menu-primary-menu-container ul li a {
	position: relative;
}
.menu-container-inner .button-container-inner {
	justify-content: flex-start;
	margin-top: 30px;
}
.menu-container-inner .button-container-inner .lsb-button {
	min-width: 200px;
}
.bg-dark-blue .menu-container-inner .btn-hover-from-top .lsb-button.button-style-whipped-oat-solid:hover::after {
	background: var(--colour-dark-blue);
}
.menu-container-inner .contact-details {
	margin-top: 50px;
}
.menu-container-inner .contact-details {
	margin-bottom: 0;
}
.menu-container-inner .contact-details a {
text-decoration: underline;
  text-underline-offset: 3px;
	text-decoration-color: var(--colour-neutral);
}
.menu-container-inner .contact-details a:hover {
	color: var(--colour-neutral);
}
.menu-container-inner .contact-details .phone-email {
  margin-bottom: 1.5em;
}
/* ————————————————
   DISABLE PAGE SCROLL
   ———————————————— */
body.no-scroll {
  overflow: hidden;
  touch-action: none; /* guard against overscroll */
}


@media all and (max-width: 1035px) {
.mob-menu-container {
	width: 72%;
}
.menu-container-inner .button-container-inner {
	flex-flow: column;
	gap: 12px 12px;
}
.menu-container-inner {
	padding-left: clamp(40px, 10%, 150px);
	margin-top: 36px;
}
}
@media all and (max-width: 860px) {
.site-header .block-inner {
	gap: 20px;
}
	.header-column.book-container {
		display: none;
	}

.header-logo-container svg, .header-logo-container img {
	height: 55px !important;
}
	
.header-column.mobile-icons-container {
	display: flex;
	gap: 8px;
	justify-content: flex-end;
}
	
	
	
.mobile-icons-container .header-icon svg {
	height: 28px;
	width: auto;
background: var(--colour-dark-green);
    border-radius: 100%;	
}
.site-header.sticky .header-logo-container :is(svg, img) {
	height: 45px !important;
}
}
@media all and (max-width: 768px) {
.close-btn {
	right: 30px;
}
}
@media all and (max-width: 767px) {
.menu-container-inner .button-container-inner {
	align-items: flex-start;
}
}
@media all and (max-width: 700px) {
.mob-menu-container {
	width: 100%;
}
.menu-container-inner {
	padding-left: 30px;
	padding-right: 30px;
}
}
@media all and (max-width: 480px) {
.header-logo-container svg, .header-logo-container img {
	height: 50px !important;
}
.menu-container-inner {
	padding-left: 20px;
	padding-right: 20px;
}
	.mob-menu-container {
		min-width: auto;
	}
.close-btn {
	right: 20px;
}
.menu-container-inner .flyout-logo svg {
	max-width: 230px;
}
}
@media all and (max-width: 413px) {
.menu-container-inner .menu-primary-menu-container ul li {
	font-size: 1.5em;
}
.header-column.mobile-icons-container {
	gap: 6px;
}
.site-header .block-inner {
	gap: 8px;
}
.mobile-icons-container .header-icon svg {
	height: 25px;
}
.header-logo-container svg, .header-logo-container img {
	height: 45px !important;
}
}
@media all and (max-width: 365px) {
.menu-container-inner .flyout-logo svg {
	max-width: 220px;
}
.menu-container-inner .menu-primary-menu-container ul li {
	font-size: 1.4em;
}
}
@media all and (max-width: 340px) {
.site-header .block-inner {
  display: flex;
}
}
/*=======================================*/
/** Sub menu **/
/*=======================================*/
/* Hide all sub-menus by default */
.menu-container-inner .menu-primary-menu-container .sub-menu {
	display: none;
	width: 100%;
	color: var(--colour-dark-blue);
	padding-left: 20px;
	margin-top: 8px;
	margin-bottom: 12px;
	gap: 0;
}
.menu-container-inner .menu-primary-menu-container .sub-menu li {
	font-size: 18px;
}
#menu-primary-menu .sub-menu li:not(:last-child)::after {
  content: "│";
  margin: 0 0.75em;
  color: var(--colour-neutral);
}
/* Style the toggle “button” */
.menu-primary-menu-container .menu-item-has-children {
  position: relative;
}
.menu-primary-menu-container .submenu-toggle {
	display: flex;
	width: 12px;
	height: 12px;
	margin-left: 8px;
	background: url('/wp-content/uploads/2025/05/OBH-Icons_Neutral_Plus.svg') no-repeat center / contain;
	cursor: pointer;
	transition: transform .2s;
	margin-bottom: 11px;
}

/* When open, swap to the minus icon */
.menu-primary-menu-container .menu-item-has-children.open .submenu-toggle {
  transform: rotate(45deg);
}


/*=======================================*/
/** Split heading wrap **/
/*=======================================*/
.split-heading-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 40px;
	gap: 28px;
}
.split-heading-wrap .heading {
	margin: 0;
}
.bg-light-blue .split-heading-wrap .heading {
 color: var(--colour-white); 
}
.split-heading-wrap .button-container.link {
position: relative;
  top: -6px;	
}
@media all and (max-width: 767px) {
.split-heading-wrap {
	display: grid;
	justify-content: space-between;
	align-items: flex-start;
	margin-bottom: 28px;
	gap: 20px;
}
  .split-heading-wrap .button-container .button-container-inner {
    align-items: flex-start;
  }
}
/*=======================================*/
/** Media text layout **/
/*=======================================*/
.style-image-left.media-text-container {
	display: grid;
	grid-template-columns: 65% 35%;
}
.style-image-right.media-text-container {
	display: grid;
	grid-template-columns: 35% 65%;
}
.style-image-right.media-text-container .column-image {
	order: 2;
}

.media-text-container .column-image {
	overflow: hidden;
	position: relative;
}
.media-text-container .column-image img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1920/1080;
	object-fit: cover;
}

.media-text-container .kicker {
	margin-bottom: 8px;
	color: var(--colour-neutral);
}
.media-text-container.bg-white .kicker {
	color: var(--colour-rusty-orange);
}

.media-text-container .column-textarea {
	padding: 40px clamp(40px, 13%, 80px);
	display: flex;
	flex-flow: column;
	justify-content: center;
}



.media-text-container .button-container {
}
.media-text-container .button-container-inner {
	justify-content: flex-start;
	flex-flow: column;
	margin-top: 40px;
}
:is(.media-text-slider-block,.latest-blog-posts-block) .media-text-container .button-container-inner {
	margin-top: 0;	
}
.media-text-container .button-arrows-container {
		margin-top: 40px;	
	display: flex;
	gap: 16px;
	justify-content: space-between;
	flex-wrap: wrap;
}
.media-text-container .slider-arrows-wrap {
	display: flex;
	margin-left: auto;
	margin-right: 0;
}
.media-text-container :is(.swiper-button-prev,.swiper-button-next) {
position: relative;
  top: 0;
  left: 0;
  right: 0;
	margin: 0;
}
.media-text-container .slider-arrows-wrap :is(.swiper-button-prev, .swiper-button-next) {
	border: 1px solid var(--colour-rusty-orange);
height: 44px;
  width: 44px;
  background-size: 11px;
  background-position: center;
}
.media-text-container .slider-arrows-wrap .swiper-button-prev {
	border-right: none;
}
.media-text-container .swiper-button-prev:hover, .media-text-container .swiper-button-next:hover {
  transform: initial;
	background-color: var(--colour-dark-green);
	border: 1px solid var(--colour-dark-green);
}
.media-text-container .swiper-button-prev:hover {
background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Arrow-Left.svg');
}
.media-text-container .swiper-button-next:hover {
background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Arrow-Right.svg');
}

@media all and (max-width: 1280px) {
.style-image-right.media-text-container {
	grid-template-columns: 40% 60%;
}
.style-image-left.media-text-container {
	grid-template-columns: 60% 40%;
}
.media-text-container .column-textarea {
	padding: 32px;
}	
}
@media all and (max-width: 900px) {
.style-image-right.media-text-container {
	grid-template-columns: 1fr;
}
.style-image-right.media-text-container .column-image {
	order: 1;
}
.style-image-left.media-text-container {
	grid-template-columns: 1fr;
}
.media-text-container .column-textarea {
	order: 2;
}
}
@media all and (max-width: 768px) {
.media-text-container .slider-arrows-wrap :is(.swiper-button-prev, .swiper-button-next) {
height: 36px;
  width: 36px;
	background-size: 8px;
}
}
@media all and (max-width: 480px) {
.media-text-container .column-textarea {
	padding: 20px;
}
.media-text-container .button-container {
  flex: 1;
}	
.media-text-container .button-container-inner {
	gap: 12px 12px;
}
	.media-text-container .single-btn-wrap {
		width: 100%;
	}
	.media-text-container .lsb-button  {
		max-width: 100%;
		width: 100%;
	}
}
@media all and (max-width: 413px) {
.media-text-container .button-container {
	flex: auto;
	width: 100%;
}
.media-text-container .slider-arrows-wrap {
	margin-left: 0;
	margin-right: auto;
}
}
/*=======================================*/
/** Media text columns **/
/*=======================================*/



.columns-container {
margin-left: auto;
  margin-right: auto;
  position: relative;
}
.columns-container .swiper-container {
			overflow: hidden;
}

.columns-container .column {
height: auto;
  display: flex;
  flex-direction: column;
}

.columns-container .column .images-container {
  overflow: hidden;
  margin-bottom: 24px;
  position: relative;
}
.columns-container .column .image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}
.columns-container.aspect-ratio-1920-1365 .column .image img {
    aspect-ratio: 1920 / 1365;
}
.columns-container.aspect-ratio-1080-1240 .column .image img {
    aspect-ratio: 1080 / 1240;
}

.columns-container .column .heading {
margin-bottom: 0.8rem;
}

.columns-container .column .button-container {
margin-top: auto;
}
.columns-container .column .button-container-inner {
  justify-content: flex-start;
  flex-flow: column;
  margin-top: 30px;
}

.columns-container .slider-arrows-wrap {
	max-width: calc(1366px + 160px);
	margin: 0 auto;
	position: absolute;
	top: 0;
	width: calc(1366px + 160px);
	height: 100%;
	pointer-events: none;
	display: flex;
	align-items: center;
	left: -80px;
	right: 0;
}
.columns-container.slider-arrows-inner {
	position: relative;
	width: 100%;
	pointer-events: none;
}


.columns-container .slider-arrows-wrap.main-slider .swiper-button-disabled {
  display: none;
}
.columns-container .slider-arrows-wrap.main-slider .swiper-button-prev {
  display: none;
}

@media all and (max-width: 1646px) {
.columns-container .slider-arrows-wrap {
	max-width: calc(100% - 80px);
	width: 100%;
	left: 0;
}
.block .columns-container .slider-arrows-wrap .swiper-button-prev {
	background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Circle-Arrow-Left.svg');
	left: 0;
}
.block .columns-container .slider-arrows-wrap .swiper-button-next {
  background-image: url('/wp-content/uploads/2025/06/OBH-Icons_Neutral_Circle-Arrow-Right.svg');
  background-position: right;
  right: 0;
}
}

@media all and (max-width: 1280px) {
.columns-container .slider-arrows-wrap {
	max-width: calc(100% - 60px);
}
}
@media all and (max-width: 768px) {
.columns-container .slider-arrows-wrap {
	max-width: calc(100% - 40px);
}
.columns-container .column .button-container-inner {
	align-items: flex-start;
}
}
@media all and (max-width: 520px) {
	.media-text-columns {
		padding-right: 0;
	}
	.media-text-columns .split-heading-wrap {
		padding-right: 20px;
	}
.columns-container .slider-arrows-wrap {
	max-width: 100%;
}
	.block .columns-container .slider-arrows-wrap .swiper-button-prev {
		display: none;
	}
}
/*=======================================*/
/** Single post and single event **/
/*=======================================*/
.post-content-block .entry-content {
	text-align: center;
}
.post-content-block .advanced-paragraph-block .block-inner {
  text-align: center;
}