.elementor-kit-40368{--e-global-color-primary:#72AADC;--e-global-color-secondary:#00263B;--e-global-color-text:#383838;--e-global-color-accent:#72AADC;--e-global-color-d735ce9:#FFFFFF;--e-global-color-ed5a518:#000000;--e-global-color-1847452:#02486E;--e-global-color-a18419c:#041823;--e-global-color-4d8ac17:#EAEAEA;--e-global-color-2d37e0c:#FFFFFF8F;--e-global-color-1a0563d:#CFCFCF;--e-global-color-c57bc5e:#72AADC;--e-global-color-1212747:#D4903D;--e-global-color-ace2581:#2A9D8F;--e-global-color-e78e4f9:#8E6BC9;--e-global-color-3988ca9:#7AAF5C;--e-global-color-47858f6:#DD8EB6;--e-global-color-41cff1c:#577590;--e-global-color-30cc2f9:#E5A84F;--e-global-color-29acade:#D96552;--e-global-color-ef3f167:#F9F9F9;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-size:40px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.5em;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-size:30px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.5em;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.5em;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:20px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-line-height:1.5em;--e-global-typography-9ac9345-font-family:"Roboto";--e-global-typography-9ac9345-font-size:13px;--e-global-typography-9ac9345-font-weight:600;--e-global-typography-9ac9345-text-transform:uppercase;--e-global-typography-9ac9345-line-height:1.3em;--e-global-typography-17cd790-font-family:"Roboto";--e-global-typography-17cd790-font-size:14px;--e-global-typography-17cd790-font-weight:700;--e-global-typography-17cd790-text-transform:uppercase;--e-global-typography-17cd790-line-height:1.3em;--e-global-typography-8510122-font-family:"Roboto";--e-global-typography-8510122-font-size:11px;--e-global-typography-8510122-font-weight:500;--e-global-typography-8510122-line-height:1.3em;--e-global-typography-57f7ee1-font-family:"Roboto";--e-global-typography-57f7ee1-font-size:14px;--e-global-typography-57f7ee1-font-weight:400;--e-global-typography-57f7ee1-line-height:1.3em;--e-global-typography-d9c7f51-font-family:"Roboto Slab";--e-global-typography-d9c7f51-font-size:20px;--e-global-typography-d9c7f51-font-weight:900;--e-global-typography-d9c7f51-font-style:italic;--e-global-typography-d9c7f51-line-height:1em;--e-global-typography-8926143-font-family:"Roboto";--e-global-typography-8926143-font-size:40px;--e-global-typography-8926143-font-weight:600;--e-global-typography-8926143-line-height:1em;--e-global-typography-2b8f317-font-family:"Roboto";--e-global-typography-2b8f317-font-size:17px;--e-global-typography-2b8f317-font-weight:500;--e-global-typography-2b8f317-line-height:1.2em;--e-global-typography-68bca7b-font-family:"Roboto";--e-global-typography-68bca7b-font-size:9px;--e-global-typography-68bca7b-font-weight:500;--e-global-typography-68bca7b-text-transform:uppercase;--e-global-typography-68bca7b-line-height:1.3em;--e-global-typography-68bca7b-letter-spacing:0.9px;--e-global-typography-83fc486-font-family:"Roboto";--e-global-typography-83fc486-font-size:22px;--e-global-typography-83fc486-font-weight:700;--e-global-typography-83fc486-text-transform:uppercase;--e-global-typography-83fc486-line-height:1.5em;--e-global-typography-a88abf0-font-family:"Roboto";--e-global-typography-a88abf0-font-size:16px;--e-global-typography-a88abf0-font-weight:700;--e-global-typography-a88abf0-text-transform:uppercase;--e-global-typography-a88abf0-line-height:1.3em;background-color:var( --e-global-color-d735ce9 );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 p{margin-block-end:20px;}.elementor-kit-40368 a{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a:hover{color:var( --e-global-color-1847452 );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 h1{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 h2{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 h3{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 h4{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 h5{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 h6{color:var( --e-global-color-ed5a518 );}.elementor-kit-40368 button,.elementor-kit-40368 input[type="button"],.elementor-kit-40368 input[type="submit"],.elementor-kit-40368 .elementor-button{font-family:var( --e-global-typography-9ac9345-font-family ), Sans-serif;font-size:var( --e-global-typography-9ac9345-font-size );font-weight:var( --e-global-typography-9ac9345-font-weight );text-transform:var( --e-global-typography-9ac9345-text-transform );line-height:var( --e-global-typography-9ac9345-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1400px;}.e-con{--container-max-width:1400px;--container-default-padding-top:40px;--container-default-padding-right:40px;--container-default-padding-bottom:40px;--container-default-padding-left:40px;}.elementor-widget:not(:last-child){--kit-widget-spacing:40px;}.elementor-element{--widgets-spacing:40px 40px;--widgets-spacing-row:40px;--widgets-spacing-column:40px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1441px){.elementor-kit-40368{--e-global-typography-a88abf0-font-size:16px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 button,.elementor-kit-40368 input[type="button"],.elementor-kit-40368 input[type="submit"],.elementor-kit-40368 .elementor-button{font-size:var( --e-global-typography-9ac9345-font-size );line-height:var( --e-global-typography-9ac9345-line-height );}}@media(max-width:1024px){.elementor-kit-40368{--e-global-typography-a88abf0-font-size:16px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 button,.elementor-kit-40368 input[type="button"],.elementor-kit-40368 input[type="submit"],.elementor-kit-40368 .elementor-button{font-size:var( --e-global-typography-9ac9345-font-size );line-height:var( --e-global-typography-9ac9345-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:40px;--container-default-padding-right:20px;--container-default-padding-bottom:40px;--container-default-padding-left:20px;}}@media(max-width:767px){.elementor-kit-40368{--e-global-typography-primary-font-size:30px;--e-global-typography-primary-line-height:1.3em;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-accent-line-height:1.3em;--e-global-typography-8510122-line-height:1.3em;--e-global-typography-2b8f317-line-height:1.3em;--e-global-typography-83fc486-font-size:20px;--e-global-typography-83fc486-line-height:1.3em;--e-global-typography-a88abf0-font-size:14px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 a:hover{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-40368 button,.elementor-kit-40368 input[type="button"],.elementor-kit-40368 input[type="submit"],.elementor-kit-40368 .elementor-button{font-size:var( --e-global-typography-9ac9345-font-size );line-height:var( --e-global-typography-9ac9345-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:40px;--container-default-padding-right:20px;--container-default-padding-bottom:40px;--container-default-padding-left:20px;}}/* Start custom CSS *//* ===========================================
   BT CSS CUSTOM PROPERTIES
   =========================================== */
:root {
  --form-control-size: 20px;
  --form-control-border-color: #c9c9c9;
  --form-control-border-width: 1px;
  --form-control-disabled-bg: #d9d9d9;
  --form-control-focus-outline: #000000;
}
/* END CSS Custom Properties */

/* ===========================================
   TYPOGRAPHY UTILITIES
   =========================================== */
.removeMargin p:last-of-type {
  margin-bottom: 0;
}

.brandColor {
  color: var(--e-global-color-primary);
}

.accentColor {
  color: var(--e-global-color-accent);
}

.regWeight {
  font-weight: 400;
}

.medWeight {
  font-weight: 500;
}

.boldWeight {
  font-weight: 700;
}
/* END Typography Utilities */

/* ===========================================
   TEXT EDITOR & CONTENT STYLING
   =========================================== */
.elementor-widget-text-editor ul,
.elementor-widget-theme-post-content ul {
  margin-bottom: 20px;
  margin-top: 20px;
}

.elementor-widget-text-editor ol,
.elementor-widget-theme-post-content ol {
  margin-bottom: 20px;
}

.elementor-widget-text-editor ::marker {
  color: var(--e-global-color-primary);
}

hr {
  background-color: rgba(0, 0, 0, 0.1) !important;
  margin: 40px 0 !important;
  height: 1px;
  border: none !important;
}
.elementor-icon-wrapper {
    display: flex;
}
/* END Text Editor & Content Styling */

/* ===========================================
   TRANSITIONS & INTERACTIONS
   =========================================== */
button,
button:hover,
.elementor-social-icon svg,
.elementor-menu-toggle,
.elementor-nav-menu--dropdown a:hover,
.timeline-item__card,
.elementor-icon i,
.elementor-icon svg,
.e-filter button:hover,
.elementor-swiper-button-next:hover svg,
.elementor-swiper-button-prev:hover svg,
.swiper-pagination-bullet:hover {
  transition: all 0.3s ease-in-out;
  cursor: pointer;
}
/* END Transitions & Interactions */

/* ===========================================
   OUTLINE REMOVAL
   =========================================== */
.outlineNone,
.outlineNone a,
.outlineNone img,
.outlineNone img:focus-visible,
.outlineNone img:focus,
.elementor-button:focus,
input[type="date"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea,
.elementor embed,
.elementor iframe,
.elementor object,
.elementor video,
button,
.elementor-location-popup, .dialog-lightbox-message, .elementor-popup-modal a {
  outline: none !important;
}
/* END Outline Removal */

/* ===========================================
   LINK STYLING
   =========================================== */
.elementor-heading-title a,
h1 a {
  font-weight: inherit !important;
}

.whiteLinks a,
a.whiteLinks {
  color: white;
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  transition: all 0.3s ease-in-out;
}

.whiteLinks a:hover,
a.whiteLinks:hover {
  opacity: 0.4;
}
/* END Link Styling */

/* ===========================================
   BUTTONS & ICONS
   =========================================== */
.elementor-button-wrapper {
  display: flex;
}

.elementor-button-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.elementor-menu-toggle__icon--close,
.elementor-menu-toggle__icon--open {
  line-height: inherit;
}
.iconColour svg path {
    color: var(--e-global-color-primary);
    fill: var(--e-global-color-primary);
}
.iconColour svg {
    display: flex;
}

/* ===========================================
   FORM STYLING
   =========================================== */

/* Form Field Inputs */
.elementor-field-textual {
  padding: 10px !important;
}

.elementor-field-group .elementor-select-wrapper select {
  color: var(--e-global-color-text) !important;
}

.elementor-select-wrapper .select-caret-down-wrapper svg {
  fill: var(--e-global-color-primary) !important;
}

.elementor-form .elementor-message {
  text-align: center;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 30px;
}
/* END Form Field Inputs */

/* Form Labels & Links */
.elementor-field-type-acceptance .elementor-field-subgroup label,
.elementor-field-type-checkbox .elementor-field-subgroup label {
  font-size: 13px !important;
  color: var(--e-global-color-text) !important;
  cursor: pointer;
}

.elementor-field-type-acceptance .elementor-field-subgroup a,
.elementor-field-type-checkbox .elementor-field-subgroup a {
  color: var(--e-global-color-primary) !important;
}

.elementor-field-type-acceptance .elementor-field-subgroup a:hover,
.elementor-field-type-checkbox .elementor-field-subgroup a:hover {
  color: var(--e-global-color-primary) !important;
  border-bottom: 1px dashed !important;
}
/* END Form Labels & Links */

/* Privacy Checkbox Layout */
.elementor-field-group-privacyCheck .elementor-field-option {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

.elementor-field-group-privacyCheck .elementor-field-option input[type="checkbox"] {
  flex-shrink: 0 !important;
  width: 20px !important; /* Updated from 15px to 20px */
  height: 20px !important; /* Updated from 15px to 20px */
  min-width: 20px !important; /* Updated from 15px to 20px */
  min-height: 20px !important; /* Updated from 15px to 20px */
  margin: 0 !important;
  margin-top: 1px !important;
}

.elementor-field-group-privacyCheck .elementor-field-option label {
  flex: 1 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  cursor: pointer !important;
}
/* END Privacy Checkbox Layout */

/* ===========================================
   PLACEHOLDER STYLING
   =========================================== */
input::placeholder,
textarea::placeholder {
  color: var(--e-global-color-text) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease-in-out;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: var(--e-global-color-text) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease-in-out;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: var(--e-global-color-text) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease-in-out;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
  color: var(--e-global-color-text) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease-in-out;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: var(--e-global-color-text) !important;
  opacity: 1 !important;
  transition: opacity 0.3s ease-in-out;
}

input:hover::placeholder,
input:focus::placeholder,
textarea:hover::placeholder,
textarea:focus::placeholder {
  opacity: 0.3 !important;
}

input:hover::-webkit-input-placeholder,
input:focus::-webkit-input-placeholder,
textarea:hover::-webkit-input-placeholder,
textarea:focus::-webkit-input-placeholder {
  opacity: 0.3 !important;
}

input:hover::-moz-placeholder,
input:focus::-moz-placeholder,
textarea:hover::-moz-placeholder,
textarea:focus::-moz-placeholder {
  opacity: 0.3 !important;
}

input:hover:-moz-placeholder,
input:focus:-moz-placeholder,
textarea:hover:-moz-placeholder,
textarea:focus:-moz-placeholder {
  opacity: 0.3 !important;
}

input:hover:-ms-input-placeholder,
input:focus:-ms-input-placeholder,
textarea:hover:-ms-input-placeholder,
textarea:focus:-ms-input-placeholder {
  opacity: 0.3 !important;
}
/* END Placeholder Styling */

/* ===========================================
   RADIO BUTTONS & CHECKBOXES
   =========================================== */

/* Base Styles */
input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box !important;
  width: var(--form-control-size) !important;
  height: var(--form-control-size) !important;
  margin: 0 10px 0 0 !important;
  padding: 0 !important;
  border: var(--form-control-border-width) solid var(--form-control-border-color) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: transparent !important;
  outline: none !important;
  transition: background-color 0.3s ease-in-out !important;
  cursor: pointer !important;
}

input[type="radio"] {
  border-radius: 50% !important;
}

input[type="checkbox"] {
  border-radius: 3px !important;
}
/* END Base Styles */

/* Hover States */
@media (hover: hover) {
  input[type="radio"]:not(:disabled):not(:checked):hover,
  input[type="checkbox"]:not(:disabled):not(:checked):hover {
    background-color: rgba(0, 0, 0, 0.05) !important;
  }
  
  input[type="radio"]:not(:disabled):checked:hover,
  input[type="checkbox"]:not(:disabled):checked:hover {
    background-color: var(--e-global-color-primary) !important;
  }
}
/* END Hover States */

/* Checked States */
input[type="radio"]:checked,
input[type="checkbox"]:checked {
  background-color: var(--e-global-color-primary) !important;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path fill="white" stroke="white" stroke-width="0.5" d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>') !important;
  background-size: 14px 14px !important; /* Updated from 10px to 14px for better proportion with 20px box */
  background-position: center !important;
  background-repeat: no-repeat !important;
  opacity: 1 !important;
}
/* END Checked States */

/* Focus & Disabled States */
input[type="radio"]:focus-visible,
input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--form-control-focus-outline) !important;
  outline-offset: 2px !important;
}

input[type="radio"]:disabled,
input[type="checkbox"]:disabled {
  background-color: var(--form-control-disabled-bg) !important;
  cursor: not-allowed !important;
  opacity: 0.6 !important;
}

input[type="radio"]:disabled:checked,
input[type="checkbox"]:disabled:checked {
  background-color: var(--form-control-disabled-bg) !important;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path fill="%23666" stroke="%23666" stroke-width="0.5" d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>') !important;
  background-size: 14px 14px !important; /* Updated from 10px to 14px */
  background-position: center !important;
  background-repeat: no-repeat !important;
}

@media (prefers-reduced-motion: reduce) {
  input[type="radio"],
  input[type="checkbox"] {
    transition: none !important;
  }
}
/* END Radio Buttons & Checkboxes */

/* ========================================
   Custom Dropdown Styling
   Replaces default select dropdowns with 
   fully customizable styled dropdowns
   used with Javascript
   ======================================== */

/* Hide original selects and style custom dropdowns */
.postFilter select {
    opacity: 0 !important;
    position: absolute !important;
    z-index: -1 !important;
    pointer-events: none !important;
}

.postFilter {
    position: relative !important;
}

/* Custom dropdown styling */
.custom-dropdown {
    position: relative !important;
    width: 100% !important;
    background-color: #ffffff !important;
    border: 1px solid #CFCFCF !important;
    border-radius: 0 !important;
    padding: 20px !important;
    color: var(--e-global-color-text, #333) !important;
    cursor: pointer !important;
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    transition: border-color 0.3s ease !important;
    z-index: 10 !important;
}

/* Custom dropdown text */
.custom-dropdown-text {
    flex-grow: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Custom arrow using Elementor primary color */
.custom-dropdown::after {
    content: '' !important;
    width: 16px !important;
    height: 16px !important;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    transition: transform 0.3s ease !important;
    flex-shrink: 0 !important;
}

.custom-dropdown.active::after {
    transform: rotate(180deg) !important;
}

/* Custom dropdown list */
.custom-dropdown-list {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background-color: #ffffff !important;
    border: 1px solid #CFCFCF !important;
    border-top: none !important;
    border-radius: 0 !important;
    z-index: 1000 !important;
    max-height: 200px !important;
    overflow-y: auto !important;
    display: none !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

.custom-dropdown-list::-webkit-scrollbar-track {
    background: #ffffff !important;
}

.custom-dropdown-list::-webkit-scrollbar-thumb {
    background: var(--e-global-color-primary, #333) !important;
    border-radius: 3px !important;
}

.custom-dropdown-list::-webkit-scrollbar-thumb:hover {
    background: var(--e-global-color-primary, #333) !important;
}

/* Show dropdown when active */
.custom-dropdown.active + .custom-dropdown-list {
    display: block !important;
}

/* Custom dropdown options */
.custom-dropdown-option {
    padding: 20px !important;
    color: var(--e-global-color-text, #333) !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    border-bottom: 1px solid #CFCFCF !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.custom-dropdown-option:last-child {
    border-bottom: none !important;
}

.custom-dropdown-option:hover {
    background-color: var(--e-global-color-primary, #333) !important;
    color: #ffffff !important;
}

.custom-dropdown-option.selected {
    background-color: var(--e-global-color-primary, #333) !important;
    color: #ffffff !important;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .custom-dropdown {
        min-height: 44px !important;
    }
}

/* ===========================================
   SCROLLBAR STYLING
   =========================================== */

/* Firefox scrollbar styling - supports CSS variables */
html,
body,
.custom-dropdown-list,
.jet-filter select,
.jet-filter .jet-select__control {
  scrollbar-width: thick;
  scrollbar-color: #72AADC #fff;
}

/* Webkit scrollbar width - SEPARATE SELECTORS */
html::-webkit-scrollbar,
body::-webkit-scrollbar {
  width: 20px;
}

.custom-dropdown-list::-webkit-scrollbar,
.jet-filter select::-webkit-scrollbar,
.jet-filter .jet-select__control::-webkit-scrollbar {
  width: 20px;
}

/* Webkit scrollbar track - SEPARATE SELECTORS */
html::-webkit-scrollbar-track,
body::-webkit-scrollbar-track {
  background: #fff;
}

.custom-dropdown-list::-webkit-scrollbar-track,
.jet-filter select::-webkit-scrollbar-track,
.jet-filter .jet-select__control::-webkit-scrollbar-track {
  background: #fff;
}

/* Webkit scrollbar thumb - SEPARATE SELECTORS - HARDCODED HEX */
html::-webkit-scrollbar-thumb,
body::-webkit-scrollbar-thumb {
  background-color: #72AADC;
  border-radius: 0;
  border: none;
}

.custom-dropdown-list::-webkit-scrollbar-thumb,
.jet-filter select::-webkit-scrollbar-thumb,
.jet-filter .jet-select__control::-webkit-scrollbar-thumb {
  background-color: #72AADC;
  border-radius: 0;
  border: none;
}

/* Webkit scrollbar thumb hover - SEPARATE SELECTORS - HARDCODED HEX */
html::-webkit-scrollbar-thumb:hover,
body::-webkit-scrollbar-thumb:hover {
  background-color: #5a8db8;
}

.custom-dropdown-list::-webkit-scrollbar-thumb:hover,
.jet-filter select::-webkit-scrollbar-thumb:hover,
.jet-filter .jet-select__control::-webkit-scrollbar-thumb:hover {
  background-color: #5a8db8;
}
/* END Scrollbar Styling */

/* ===========================================
   RESPONSIVE UTILITIES
   =========================================== */
@media (max-width: 1024px) {
  .hideTablet {
    display: none;
    visibility: hidden;
  }
}

@media (max-width: 767px) {
  .hideMobile {
    display: none;
    visibility: hidden;
  }
}
/* END Responsive Utilities */

/* ===========================================
   CUSTOM
   =========================================== */
/* Randoms */
.elementor-sub-item {
    border-inline-start: none!important;
}
.elementor-social-icon:hover {
    opacity: 1!important;
}
.headerSocials .elementor-social-icon:hover {
    font-size: 18px!important;
}
.jet-select__control {
    cursor: pointer;
}
.viewAll .elementor-button, .viewAll .elementor-button:hover {
    padding: 5px 10px !important;
    color: rgba(0,0,0,0.4) !important;
}
.viewAll .elementor-button:hover {
    color: rgba(0,0,0,0.6) !important;
    padding: 5px 10px !important;
}
.busComLink {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-left: var(--e-nav-menu-horizontal-menu-item-margin);
}

.busComLink::after {
    content: "";
    width: 16px;
    height: 16px;
    background-color: var(--e-global-color-primary);
    mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM144 32h96c8.8 0 16 7.2 16 16s-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16s7.2-16 16-16zm48 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 416 80 407.4 80 396.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z"/></svg>');
    -webkit-mask-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><path d="M336 0H48C21.5 0 0 21.5 0 48v416c0 26.5 21.5 48 48 48h288c26.5 0 48-21.5 48-48V48c0-26.5-21.5-48-48-48zM144 32h96c8.8 0 16 7.2 16 16s-7.2 16-16 16h-96c-8.8 0-16-7.2-16-16s7.2-16 16-16zm48 128c35.3 0 64 28.7 64 64s-28.7 64-64 64-64-28.7-64-64 28.7-64 64-64zm112 236.8c0 10.6-10 19.2-22.4 19.2H102.4C90 416 80 407.4 80 396.8v-19.2c0-31.8 30.1-57.6 67.2-57.6h5c12.3 5.1 25.7 8 39.8 8s27.6-2.9 39.8-8h5c37.1 0 67.2 25.8 67.2 57.6v19.2z"/></svg>');
    mask-size: contain;
    -webkit-mask-size: contain;
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: center;
    -webkit-mask-position: center;
    flex-shrink: 0;
}

.busComLink a {
    margin: 0 !important;
}

/* Hide all tags after the first two */
.elementor-post-info__item a:nth-of-type(n+3) {
    display: none !important;
    visibility: hidden !important;
}
/* Footer */
.footerTitle h4::after {
    display: flex;
    content: '';
    width: 20px;
    height: 3px;
}
.footerTitle.shadeOne h4::after {
    background: var(--e-global-color-3988ca9)!important;
}
.footerTitle.shadeTwo h4::after {
    background: var(--e-global-color-1212747)!important;
}
.footerTitle.shadeThree h4::after {
    background: var(--e-global-color-e78e4f9)!important;
}
.footerTitle.shadeFour h4::after {
    background: var(--e-global-color-47858f6)!important;
}
.footerTitle.shadeFive h4::after {
    background: var(--e-global-color-41cff1c)!important;
}
.accentFont {
    font-family: var(--e-global-typography-d9c7f51-font-family);
    font-style: italic;
    font-size: 110%!important;
}
/* Featured Tiles */
.hpPostTiles .jet-smart-tiles__box-title {
    margin: 0;
}
/* Sliders */
.slick-slide img, .postSlider img {
    height: 200px;
    object-fit: cover;
}
.slick-slide a, .postSlider a {
    display: inherit;
}
@media (max-width: 767px) {
    .slick-slide img, .postSlider img {
        height: 250px;
        object-fit: cover;
    }
}
.postSlider .slick-slide {
    padding-top: 0;
    padding-bottom: 0;
}
.postSlider .slick-dotted {
    margin-bottom: 0!important;
}
.postSlider .jet-slick-dots li span, .postSlider .swiper-pagination-bullet {
    width: 30px!important;
    height: 8px!important;
    border-radius: 0;
}
.postSlider .jet-slick-dots li {
    padding: 0;
}
.postSlider .postTerms, .postSlider .postTerms .elementor-post-info__item--type-custom {
    display: flex!important;
    flex-wrap: nowrap;
    flex-direction: row;
    justify-content: flex-start;
}
.postSlider .postTerms {
    display: flex;
    overflow: hidden;
    width: 100%;
}
.postSlider .postTerms .elementor-post-info__item--type-custom a {
    margin-right: 5px;
}
.postSlider .postTerms .elementor-post-info__item--type-custom a:last-of-type {
    margin-right: 0;
}
.postSlider .postTerms .elementor-post-info__item--type-custom , .postSlider .postTerms .elementor-inline-item {
    overflow-x: hidden;
    overflow-y: visible;
    margin: 0!important;
}
.postSlider .postTerms .elementor-inline-items {
    margin: 0!important;
}
.postSlider a[rel="tag"], .postSlider a[rel="tag"]:hover {
    line-height: 1em;
    padding: 5px 10px;
    border-radius: 30px;
    font-size: var( --e-global-typography-68bca7b-font-size )!important;
    word-break: keep-all;
    flex: 0 0 auto;
}
.postSlider a:nth-child(3), .postSlider a:nth-child(4), .postSlider a:nth-child(5) {
    display: none!important;
    visibility: hidden!important;
}
.swiper-pagination-bullet:first-of-type {
    border-radius: 30px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.swiper-pagination-bullet:last-of-type {
    border-radius: 30px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

/* Company Profiles */
.companyTagLink .elementor-shortcode {
    display: flex;
}
.companyTagLink a, .companyTagLink a:hover {
    display: flex;
    background-color: var(--e-global-color-4d8ac17);
    font-family: var(--e-global-typography-68bca7b-font-family), Sans-serif;
    font-size: var(--e-global-typography-68bca7b-font-size);
    font-weight: var(--e-global-typography-68bca7b-font-weight);
    text-transform: var(--e-global-typography-68bca7b-text-transform);
    line-height: var(--e-global-typography-68bca7b-line-height);
    letter-spacing: var(--e-global-typography-68bca7b-letter-spacing);
    color: var(--e-global-color-ed5a518);
    padding: 5px 10px 5px 10px;
    margin: 0px 0px 0px 0px;
    border-radius: 30px 30px 30px 30px;
}

/**
 * ========================================
 * Condensed CSS for Responsive Posts - Elementor Loop Grid
 * Widget A: Add 'responsive-posts-5' class (5 on desktop, 6 on smaller)
 * Widget B: Add 'responsive-posts-2' class (2 on desktop, 6 on smaller)
 * ========================================
 */

/* Desktop only: Hide excess posts */
@media (min-width: 1442px) {
    .responsive-posts-5 .e-loop-item:nth-child(n+6),
    .responsive-posts-2 .e-loop-item:nth-child(n+3) {
        display: none !important;
    }
}

/* Optional: Smooth transitions */
.responsive-posts-5 .e-loop-item,
.responsive-posts-2 .e-loop-item {
    transition: opacity 0.3s ease;
}

/* ===========================================
   ADVERTS
   =========================================== */
.headerAds a, .rightWingAd a, .leftWingAd a, .asideAds a {
    display: flex;
}
.headerAds img, .asideAds img {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
}
.asideAds {
    display: flex;
    width: 100%;
    flex-direction: column;
}

/* Four 250x250 ads in a row */
.stagi-2025-home-page-four-generic-250x250 {
    display: flex !important;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 20px;
    flex-wrap: wrap;
}
.stagi-2025-home-page-four-generic-250x250 img {
    width: 250px;
    height: auto;
    max-width: 100%;
    display: block;
}

/* Mobile: hide 2nd, 3rd, 4th ad containers and resize first ad */
@media (max-width: 768px) {
    .stagi-2025-home-page-four-generic-250x250 .stagi-target:nth-child(2),
    .stagi-2025-home-page-four-generic-250x250 .stagi-target:nth-child(3),
    .stagi-2025-home-page-four-generic-250x250 .stagi-target:nth-child(4) {
        display: none !important;
        visibility: hidden !important;
    }
    
    .stagi-2025-home-page-four-generic-250x250 img {
        width: 100%;
        max-width: 300px;
    }
}

/* ===========================================
   POST ARCHIVES & SINGLES
   =========================================== */
.postsPagination .pagination {
    display: flex;
    justify-content: center;
    margin: 0;
    border: 1px solid var(--e-global-color-1a0563d);
}
.postsPagination .nav-links {
    border-left: 1px solid var(--e-global-color-1a0563d);
}
.postsPagination .dots {
    border-right: 1px solid var(--e-global-color-1a0563d);
}
.sideSocials a:hover {
    font-size: var(--icon-size, 25px) !important;
}
/* Breadcrumbs */
.aioseo-breadcrumbs {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}
.aioseo-breadcrumb-separator {
    color: rgba(0, 0, 0, 0.3);
}
.aioseo-breadcrumbs, .aioseo-breadcrumb, .aioseo-breadcrumb a, .aioseo-breadcrumb a:hover {
    font-size: 13px;
}
.aioseo-breadcrumb a, .aioseo-breadcrumb a:hover {
    display: flex;
    line-height: 1em;
padding: 5px 10px;
border-radius: 30px;
word-break: keep-all;
flex: 0 0 auto;
}
.aioseo-breadcrumb a[title="Home"], .aioseo-breadcrumb a[title="Home"]:hover {
    color: var(--e-global-color-text);
    background: rgba(0,0,0,0.1)!important;
}
/* Author Bios */
.aioseo-author-bio-compact {
    display: flex;
    gap: 20px!important;
    padding: 20px!important;
    text-align: left;
    border: 1px solid var(--e-global-color-1a0563d)!important;
    border-radius: 0!important;
    color: var(--e-global-color-text)!important;
    background-color: transparent!important;
}
.aioseo-author-bio-compact-left {
    flex: 0 0 120px;
    width: 120px;
    height: 120px;
}
.aioseo-author-bio-compact-right {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 10px;
}
.aioseo-author-bio-compact-left .aioseo-author-bio-compact-image {
    width: 120px;
    height: 120px;
    border-radius: 100%!important;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-header {
    display: flex;
    align-items: flex-start!important;
    flex-direction: column!important;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-header .author-name {
    font-size: 20px!important;
    font-weight: 600;
    color: black;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-main {
    margin: 0 !important;
    font-size: 17px !important;
    font-weight: 400;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-main a {
    font-size: 14px;
    color: var(--e-global-color-text)!important;
    transition: all 0.3s ease-in-out;
    cursor: pointer;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-main a:hover {
    color: var(--e-global-color-primary)!important;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-main .author-bio-link a svg {
    fill: var(--e-global-color-primary)!important;
}
.aioseo-author-bio-compact-right .aioseo-author-bio-compact-header .author-job-title  {
    margin-left: 0!important;
    padding-left: 0!important;
    font-size: 13px!important;
    border-left: none!important;
}
.aioseo-author-bio-compact-footer {
    display: none;
    visibility: hidden;
}
/* WP Block Image*/
.postContent figure, .postContent .wp-block-image {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 100%;
    height: auto;
}
.postContent figcaption, .postContent .wp-element-caption {
    font-size: 12px;
    color: rgba(0, 0, 0, 0.5);
    margin: 0;
}
.alignright {
    margin-left: 20px;
}
.alignleft {
    margin-right: 20px;
}
@media (max-width:767px) {
    .postContent figure, .postContent .wp-block-image {
    max-width: 200px;
}
}
/* OLD POST OVERRIDES */
.postContent, .postContent p, .postContent span {
    font-family: var(--e-global-typography-text-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-text-font-size)!important;
    font-weight: var(--e-global-typography-text-font-weight)!important;
    line-height: var(--e-global-typography-text-line-height)!important;
    color: var(--e-global-color-text)!important;
}
ul.wp-block-list, .postContent ul {
    margin-bottom: 20px;
}
/* post Navigation */
.postNav .elementor-post-navigation__link {
    padding: 10px;
}
/* Company Directory */
.featured-company-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

.featured-company-title {
    margin: 0;
    font-size: 18px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.featured-company-title:before {
    content: "\e901";
    font-family: "eicons";
    color: var(--e-global-color-primary);
}

.featured-company-link {
    color: var(--e-global-color-text) !important;
    transition: all 0.3s ease-in-out;
    font-size: 15px !important;
}
.featured-company-link:hover {
    color: var(--e-global-color-primary)!important;
}
@media (max-width: 767px) {
    .featured-company-wrapper {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 20px;
}
}

/* ===========================================
   PAGE WRAPPING
   =========================================== */
.leftAdvert, .rightAdvert {
    max-width: 160px;
}
.contentCentre {
    max-width: 1000px;
}
@media (min-width: 1920px) {
.pageWrapper {
    --container-max-width: 1800px !important;
}
.contentCentre {
    max-width: 1400px !important;
}
}
@media (max-width: 1024px) {
    .leftAdvert, .rightAdvert {
    display: none!important;
    visibility: hidden!important;
}
.contentCentre {
    max-width: 100%;
}
}

/* Mobile Menu */
.mobileMenuWrap {
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    transition: backdrop-filter 0.3s ease-in-out, -webkit-backdrop-filter 0.3s ease-in-out !important;
}

/* Fallback for browsers that don't support backdrop-filter */
@supports not (backdrop-filter: blur(8px)) {
    .mobileMenuWrap {
        background-color: rgba(0, 0, 0, 0.9) !important;
    }
}

/* ===========================================
   ORTTO FORMS
   =========================================== */
/* Footer Sign Up */
#selected-_ue5h7df04 {
    display: flex;
    width: 300px;
}
#ap3w-embeddable-form-67c1967c9cb3f48c9c379ce4 {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
}
.ap3w-form-input-label {
    display: none;
    visibility: hidden;
}
#ap3w-form-input-email-67c1967c9cb3f48c9c379ce4 {
    border-radius: 10px;
    border-color: rgba(0, 0, 0, 0.2);
    padding: 10px !important;
    min-height: 50px;
}
#ap3w-form-button-67c1967c9cb3f48c9c379ce4 {
    border-radius: 10px;
    border: none;
    padding: 10px 20px!important;
    min-height: 50px;
    background-color: var( --e-global-color-primary );
    color: white;
}
#ap3w-form-button-67c1967c9cb3f48c9c379ce4:hover {
     background-color: var( --e-global-color-1847452 );
 }
 @media (max-width: 767px) {
     #ap3w-embeddable-form-67c1967c9cb3f48c9c379ce4 {
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }
    #selected-_aksp9r3l3 {
        width: 100% !important;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
    }
    #ap3w-form-button-67c1967c9cb3f48c9c379ce4 {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
}

/* All Ortto Forms */
/* Base form container - FORCE FULL WIDTH */
.orttoForms {
    width: 100% !important;
    max-width: 100% !important;
}

.orttoForms div[id*="686bc1a43bf1aa1f40f01dcd"], .orttoForms div[id*="687a187939b351b8513b7d60"], .orttoForms div[id*="687a171121b7e4562284fa60"] {
    width: 100% !important;
    max-width: 100% !important;
}

.orttoForms .ap3w-embeddable-form-686bc1a43bf1aa1f40f01dcd, .orttoForms .ap3w-embeddable-form-687a187939b351b8513b7d60, .orttoForms .ap3w-embeddable-form-687a171121b7e4562284fa60 {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

.orttoForms form {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    font-size: 16px;
    overflow: auto;
    background-color: transparent;
    border: none;
    box-shadow: none;
    z-index: unset;
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
}

.orttoForms .ap3w-embeddable-form-content {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0;
    padding: 0;
    box-sizing: border-box !important;
}

/* Form row containers */
.orttoForms .form-row {
    display: flex;
    gap: 15px;
    flex-wrap: wrap;
    width: 100%;
    box-sizing: border-box;
}

.orttoForms .form-row > div {
    flex: 1;
    min-width: 250px;
    margin-bottom: 0;
    box-sizing: border-box;
}

/* Form inputs - handles both new class names and legacy Ortto classes */
.orttoForms .form-input,
.orttoForms [class*="ap3w-form-input"],
.orttoForms [class*="ap3w-input-phone"] {
    position: relative;
    margin-bottom: 0;
    width: 100%;
    box-sizing: border-box;
}

.orttoForms .form-input input,
.orttoForms .form-input textarea,
.orttoForms select,
.orttoForms [class*="ap3w-form-input"] input,
.orttoForms [class*="ap3w-form-input"] textarea,
.orttoForms [class*="ap3w-input-phone"] input {
    margin-top: 0;
    box-sizing: border-box !important;
    width: 100% !important;
    background-color: #FFFFFF;
    border: 1px solid rgba(0, 0, 0, 0.2);
    color: #383838;
    outline: none !important;
    font-family: inherit;
    font-weight: 400;
    font-style: normal;
    font-size: 17px;
    line-height: 1.4;
    padding: 10px !important;
    min-height: 50px;
    resize: none;
    border-radius: 10px;
    box-shadow: none !important;
}

/* Remove all focus outlines and shadows */
.orttoForms .form-input input:focus,
.orttoForms .form-input textarea:focus,
.orttoForms [class*="ap3w-form-input"] input:focus,
.orttoForms [class*="ap3w-form-input"] textarea:focus,
.orttoForms [class*="ap3w-input-phone"] input:focus {
    outline: none !important;
    box-shadow: none !important;
    border: 1px solid rgba(0, 0, 0, 0.2);
}

/* Placeholder styling */
.orttoForms .form-input input::placeholder,
.orttoForms .form-input textarea::placeholder,
.orttoForms [class*="ap3w-form-input"] input::placeholder,
.orttoForms [class*="ap3w-form-input"] textarea::placeholder,
.orttoForms [class*="ap3w-input-phone"] input::placeholder {
    color: #383838;
    opacity: 1;
}

/* Hide NON-CHECKBOX labels - INCLUDING PHONE LABELS */
.orttoForms .form-input label,
.orttoForms [class*="ap3w-form-input"]:not([class*="bool"]) label,
.orttoForms [class*="ap3w-input-phone"] label,
.orttoForms [class*="ap3w-input-phone"] .ap3w-form-input-phone-label {
    display: none !important;
}

.orttoForms .form-input input[type="date"],
.orttoForms [class*="ap3w-form-input"] input[type="date"] {
    -webkit-appearance: none;
    -moz-appearance: none;
}

.orttoForms .form-input input[type="date"]::-webkit-date-and-time-value,
.orttoForms [class*="ap3w-form-input"] input[type="date"]::-webkit-date-and-time-value {
    height: 22px;
}

/* Text elements */
.orttoForms .form-text,
.orttoForms [class*="ap3w-text"] {
    position: relative;
    margin: 0;
    margin-bottom: 0;
    word-wrap: break-word;
}

.orttoForms .form-text.form-text--last,
.orttoForms [class*="ap3w-text"].ap3w-text--last {
    margin-bottom: 0!important;
}

.orttoForms .form-text *,
.orttoForms [class*="ap3w-text"] * {
    margin: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p,
.orttoForms [class*="ap3w-text"] p {
    text-transform: unset;
    text-decoration: unset;
    text-indent: unset;
    font-family: inherit;
    font-size: 14px;
    line-height: 1.4;
    color: #383838;
    font-weight: 400;
    font-style: normal;
}

/* Text sizes */
.orttoForms .form-text p[data-size="h1"],
.orttoForms [class*="ap3w-text"] p[data-size="h1"] {
    font-size: 34px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="h2"],
.orttoForms [class*="ap3w-text"] p[data-size="h2"] {
    font-size: 24px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="h3"],
.orttoForms [class*="ap3w-text"] p[data-size="h3"] {
    font-size: 17px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="h4"],
.orttoForms [class*="ap3w-text"] p[data-size="h4"] {
    font-size: 14px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="h5"],
.orttoForms .form-text p[data-size="h6"],
.orttoForms [class*="ap3w-text"] p[data-size="h5"],
.orttoForms [class*="ap3w-text"] p[data-size="h6"] {
    font-size: 12px;
    color: #000000;
    font-weight: 700;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="large"],
.orttoForms [class*="ap3w-text"] p[data-size="large"] {
    font-size: 17px;
    margin-bottom: 0;
    padding-bottom: 0;
}

.orttoForms .form-text p[data-size="small"],
.orttoForms [class*="ap3w-text"] p[data-size="small"] {
    font-size: 12px;
    margin-bottom: 0;
    padding-bottom: 0;
}

/* CHECKBOX CONTAINER STYLING - Custom Layout */
.orttoForms [class*="ap3w-form-input-bool"] {
    position: relative !important;
    margin-bottom: 10px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Remove margin from first checkbox */
.orttoForms [class*="ap3w-form-input-bool"]:first-of-type {
    margin-bottom: 0 !important;
}

/* CHECKBOX INPUT STYLING - 20px x 20px Square */
.orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"] {
    box-sizing: border-box !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(0, 0, 0, 0.2) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-color: transparent !important;
    outline: none !important;
    transition: background-color 0.3s ease-in-out !important;
    cursor: pointer !important;
    border-radius: 2px !important;
    flex-shrink: 0 !important;
    margin-top: 0 !important;
}

/* CHECKBOX LABEL STYLING - Show and Style */
.orttoForms [class*="ap3w-form-input-bool"] .ap3w-form-checkbox__text {
    display: block !important;
    color: #383838 !important;
    cursor: pointer !important;
    font-family: inherit !important;
    font-weight: 400 !important;
    font-style: normal !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    flex: 1 !important;
}

/* CHECKBOX HOVER STATES */
@media (hover: hover) {
    .orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:not(:disabled):not(:checked):hover {
        background-color: rgba(0, 0, 0, 0.05) !important;
    }
    
    .orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:not(:disabled):checked:hover {
        background-color: var(--e-global-color-primary) !important;
    }
}

/* CHECKBOX CHECKED STATE - Larger icon for 20px box */
.orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:checked {
    background-color: var(--e-global-color-primary) !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path fill="white" stroke="white" stroke-width="0.5" d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>') !important;
    background-size: 14px 14px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    opacity: 1 !important;
}

/* CHECKBOX FOCUS STATE */
.orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--form-control-focus-outline) !important;
    outline-offset: 2px !important;
}

/* CHECKBOX DISABLED STATE */
.orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:disabled {
    background-color: #d9d9d9 !important;
    cursor: not-allowed !important;
    opacity: 0.6 !important;
}

/* CHECKBOX DISABLED CHECKED STATE - Larger icon for 20px box */
.orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"]:disabled:checked {
    background-color: #d9d9d9 !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16"><path fill="%23666" stroke="%23666" stroke-width="0.5" d="M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z"/></svg>') !important;
    background-size: 14px 14px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

/* Hide the original checkbox spans and SVGs */
.orttoForms [class*="ap3w-form-input-bool"] span {
    display: none !important;
}

/* Reduced motion support for Ortto Forms */
@media (prefers-reduced-motion: reduce) {
    .orttoForms [class*="ap3w-form-input-bool"] input[type="checkbox"] {
        transition: none !important;
    }
}

/* Form button */
.orttoForms .form-button button,
.orttoForms [class*="ap3w-form-button"] button {
    position: relative;
    cursor: pointer;
    border: none;
    border-radius: 10px;
    padding: 12px 20px 10px !important;
    min-height: 50px;
    font-weight: bold;
    outline: none !important;
    color: #ffffff;
    background-color: var(--e-global-color-primary);
    font-family: inherit;
    font-size: 14px;
    line-height: 1.4;
    flex: 1;
    text-transform: uppercase;
    box-shadow: none !important;
}

.orttoForms .form-button button:hover,
.orttoForms [class*="ap3w-form-button"] button:hover {
    background-color: var(--e-global-color-1847452);
}

.orttoForms .form-button button:focus,
.orttoForms [class*="ap3w-form-button"] button:focus {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Responsive breakpoint */
@media (max-width: 768px) {
    .orttoForms .form-row {
        flex-direction: column;
        gap: 20px;
    }
    
    .orttoForms .form-row > div {
        min-width: auto;
        margin-bottom: 20px;
    }
}
/* Multi-select styling - highly specific to avoid overrides */
.orttoForms .multi-select-container {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-top: 0 !important;
}

.orttoForms .multi-select-option {
    display: flex !important;
    align-items: center !important;
    background: rgba(0,0,0,0) !important;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 10px !important;
    padding: 10px !important;
    cursor: pointer !important;
    transition: all 0.3s ease-in-out !important;
    min-width: auto !important;
    max-width: fit-content !important;
    box-sizing: border-box !important;
    position: relative !important;
    font-size: 14px !important;
    min-height: auto !important;
}

.orttoForms .multi-select-option:hover {
    background: rgba(0,0,0,0.03) !important;
    border-color: rgba(0, 0, 0, 0.2);
}

.orttoForms .multi-select-option input[type="checkbox"] {
    width: 14px !important;
    height: 14px !important;
    min-height: 14px !important;
    margin: 0 10px 0 0 !important;
}

.orttoForms [class*="ap3w-form-input"]:not([class*="bool"]) .multi-select-option label {
    display: flex !important;
}

.orttoForms .multi-select-option label {
    margin: 0 !important;
    padding: 0 !important;
    cursor: pointer !important;
    color: var(--e-global-color-text)!important;
    background: none !important;
    border: none !important;
    text-decoration: none !important;
    flex: 1 !important;
    display: flex !important;
    white-space: nowrap !important;
    min-height: auto !important;
}

.orttoForms .multi-select-option input[type="checkbox"]:checked + label {
    font-weight: 500 !important;
}

.orttoForms .multi-select-option:has(input[type="checkbox"]:checked) {
    background: rgba(0,0,0,0.03) !important;
    border-color: rgba(0, 0, 0, 0.2);
}

/* Form row styling - scoped to orttoForms */
.orttoForms .form-row {
    display: flex !important;
    gap: 16px !important;
    margin-bottom: 0 !important;
}

.orttoForms .form-row > div {
    flex: 1 !important;
}

/* Responsive adjustments - scoped to orttoForms */
@media (max-width: 768px) {
    .orttoForms .form-row {
        flex-direction: column !important;
        gap: 12px !important;
    }
    
    .orttoForms .multi-select-container {
        gap: 6px !important;
    }
    
    .orttoForms .multi-select-option {
        flex: 0 0 auto !important;
        min-width: auto !important;
    }
}

@media (max-width: 480px) {
    .orttoForms .multi-select-option {
        flex: 0 0 auto !important;
        min-width: auto !important;
    }
}

/* ========================================
   BT CATEGORY COLOUR SYSTEM - COMPLETE
   All categories properly organized by section
   
   Current Hex Color Reference:
   --e-global-color-primary: #72AADC (Business/Regional)
   --e-global-color-1212747: #D4903D (Leadership)
   --e-global-color-ace2581: #2A9D8F (Finance)
   --e-global-color-e78e4f9: #8E6BC9 (Legal)
   --e-global-color-3988ca9: #7AAF5C (HR & People)
   --e-global-color-47858f6: #DD8EB6 (Sales & Marketing)
   --e-global-color-41cff1c: #577590 (Technology & Innovation)
   --e-global-color-30cc2f9: #E5A84F (Sustainability)
   --e-global-color-29acade: #D96552 (Industry & Manufacturing)
   
   All colors now have improved contrast ratios (5.0:1 to 10.0:1)
   ======================================== */

/* Term Colour - Business (bt) - Primary Brand Color */
.page-id-107463 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-primary)!important;
}

.cat-link-business,
.cat-link-features,
.cat-link-news,
.cat-link-news-feed,
.cat-link-other {
    background-color: var(--e-global-color-primary)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Business (bt) */

/* Term Colour - Leadership (bt) */
.page-id-69137 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-1212747)!important;
}

.cat-link-affiliations-and-associations,
.cat-link-awards,
.cat-link-awards-update,
.cat-link-business-villages,
.cat-link-chamber-of-commerce,
.cat-link-conferences-events,
.cat-link-council-chamber-of-commerce,
.cat-link-executive-lifestyle,
.cat-link-family-businesses,
.cat-link-female-founders,
.cat-link-fsb,
.cat-link-great-expectations,
.cat-link-networking,
.cat-link-north-northants-council,
.cat-link-northamptonshire-chamber-of-commerce,
.cat-link-politics,
.cat-link-starting-staying-in-business,
.cat-link-west-northants-council,
.cat-link-women-in-business {
    background-color: var(--e-global-color-1212747)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Leadership (bt) */

/* Term Colour - Finance (bt) */
.page-id-69139 .archivePorts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-ace2581)!important;
}

.cat-link-buying-selling-a-business,
.cat-link-economic-advice-solutions,
.cat-link-financial,
.cat-link-financial-forecast,
.cat-link-investment-matters,
.cat-link-wealth-management {
    background-color: var(--e-global-color-ace2581)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Finance (bt) */

/* Term Colour - Legal (bt) */
.page-id-61528 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-e78e4f9)!important;
}

.cat-link-legal,
.cat-link-property {
    background-color: var(--e-global-color-e78e4f9)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Legal (bt) */

/* Term Colour - HR & People (bt) */
.page-id-69143 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-3988ca9)!important;
}

.cat-link-education,
.cat-link-employment,
.cat-link-focus-on-apprenticeships,
.cat-link-independent-further-education,
.cat-link-recruitment,
.cat-link-training-education,
.cat-link-university-of-northampton,
.cat-link-wellbeing {
    background-color: var(--e-global-color-3988ca9)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End HR & People (bt) */

/* Term Colour - Sales & Marketing (bt) */
.page-id-69145 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-47858f6)!important;
}

.cat-link-charity,
.cat-link-creative-marketing,
.cat-link-events,
.cat-link-food-drink,
.cat-link-hospitality,
.cat-link-marketing-media,
.cat-link-media,
.cat-link-print-design,
.cat-link-restaurant-reviews,
.cat-link-retail,
.cat-link-social-media,
.cat-link-sport,
.cat-link-summer-dining,
.cat-link-tourism-visitor-economy {
    background-color: var(--e-global-color-47858f6)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Sales & Marketing (bt) */

/* Term Colour - Technology & Innovation (bt) */
.page-id-69147 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-41cff1c)!important;
}

.cat-link-commercial-vehicle-review,
.cat-link-logistics,
.cat-link-technology {
    background-color: var(--e-global-color-41cff1c)!important;
    color: #fff!important;
}
/* End Technology & Innovation (bt) */

/* Term Colour - Sustainability (bt) */
.page-id-69149 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-30cc2f9)!important;
}

.cat-link-environment,
.cat-link-go-green,
.cat-link-sustainability {
    background-color: var(--e-global-color-30cc2f9)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Sustainability (bt) */

/* Term Colour - Industry & Manufacturing (bt) */
.page-id-69151 .archivePosts .dividerChange .elementor-divider-separator {
    border-block-start-color: var(--e-global-color-29acade)!important;
}

.cat-link-automotive,
.cat-link-manufacturing,
.cat-link-manufacturing-export {
    background-color: var(--e-global-color-29acade)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Industry & Manufacturing (bt) */

/* Term Colour - Regional (bt) - Primary Brand Color */
.cat-link-regional,
.cat-link-brackley,
.cat-link-brackmills-rushmills-the-lakes,
.cat-link-burton-latimer,
.cat-link-corby,
.cat-link-daventry,
.cat-link-earls-barton,
.cat-link-east-midlands,
.cat-link-east-northants,
.cat-link-higham-ferrers,
.cat-link-irthlingborough,
.cat-link-kettering,
.cat-link-market-harborough,
.cat-link-milton-keynes,
.cat-link-moulton-park,
.cat-link-north-northants,
.cat-link-northampton,
.cat-link-northamptonshire,
.cat-link-oundle,
.cat-link-rothwell,
.cat-link-rugby,
.cat-link-rushden,
.cat-link-silverstone,
.cat-link-south-northants,
.cat-link-towcester,
.cat-link-wellingborough,
.cat-link-west-northants {
    background-color: var(--e-global-color-primary)!important;
    color: rgba(0,0,0,0.87)!important;
}
/* End Regional (bt) */

/* ========================================
   END: BT CATEGORY COLOUR SYSTEM
   ======================================== *//* End custom CSS */