.menu-container{
  background-color: #fff;
  
  .inner{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    padding: 20px 3vw;
  }
  .menu-logo{
    
    img{
      width:230px;
      height:auto;
    }
  }
  .menu{
    display: flex;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    li{
      margin: 0 15px;
      font-weight: 600;
      font-size: 1.2rem;
      a{
        color:#56798D;
        &:hover{
          color:#E75000;
        }
      }
      &.current-menu-item{
        a{
          color:#E75000;
        }
      }
    }
  }
  
}
/* Add this to your CSS */
.mega-menu {
  opacity: 0;
  z-index: -1;
 /* visibility: hidden;*/
  transition: opacity 0.2s ease, transform 0.3s ease;
  transform: translateY(-20%);
  font-size: 1.2rem;
  h4{
    margin-bottom: 6px;
  }
  ul{
    margin-bottom:20px;
  }
  a{
    &:hover{
      color:#E75000;
    }
  }
}
.mega-menu.active {
  opacity: 1;
/*  visibility: visible;*/
transform: translateY(0%);
}
.menu-container {
  transition: transform 0.3s ease-in-out;
}
.menu-container.hide {
  transform: translateY(-100%);
}
@media only screen and (max-width : 960px) {
   
    
  }
.footer{
  background:#435864;
  color:#fff;
  padding:3vw 3vw 1vw 3vw;
  display:flex;
  flex-direction: row;
  justify-content: space-between;
  .footer_logo{
    width:230px;
    height:auto;
  }
}
.footer_bottom{
  background:#435864;
  color:#fff;
  padding:20px 3vw;
  font-size:0.9rem;
}
.social_footer{
  display:flex;
  flex-direction: row;
  gap:10px;
}
@media only screen and (max-width : 960px) {
   
    
  }
.core_values{
    padding:3vw;
    background:#F0F0F0;
    .intro{
        text-align: center;
        color:#435864;
        h2{
            color:#E75000;
        }
        padding:0px 10vw; 
    }
}
.values_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    padding: 2rem 0;
}
.values_grid_2 {
    display: grid; 
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    padding: 2rem 0;
}
.value_item {
    text-align: center;
    position: relative;
    font-size: 0.9em;
    line-height: 1.2em;
    .title{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        color:#fff;
        background: rgba(10,10,10,0.5); 
    }
    &:hover{
        .text{
            opacity: 1;
        }
    }
}
.value_item .icon {
    margin-bottom: 1rem;
}
.value_item .icon img {
    max-width: 80px;
    height: auto;
}
.value_item h3 {
   
}
.value_item .text {
    transition: opacity 0.3s ease-in-out;
    opacity: 0;
    background: #fff;
   position: absolute;
   bottom: 0;
   left: 0;
   width: 100%;
   height:100%;
   padding: 1rem;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
   color:#435864;
   h3{
    color:#E75000;
   }
}
.value_item .image  {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
}
@media (max-width: 960px) {
    .values_grid {
        grid-template-columns: repeat(2, 1fr);
    }

   
}
@media (max-width: 640px) {
    .values_grid {
        grid-template-columns: 1fr;
    }
}
.single-home{
    .featured-image{
        overflow: hidden;
        height:75vh;
    }
    .homes_top{
        padding: 30px 3vw 20px 3vw;
        display: flex;
        justify-content: space-between;
        align-items: center;
        .left{
            .homes_logo{
                width: 100%;
                max-width: 320px;
            }
            .carechoice_logo{
                width: 100%;
                max-width: 200px;
                margin-bottom: 10px;
            }
            h1{
                font-family: "Lato", sans-serif;
                color:#56798D;
                font-weight: 600;
                font-size: 2rem;
                line-height: 1.2;
                margin: 0;
            }
            
        }
    }
    
    .homes_main{
        background-color: #fff;
        position: relative;
       
        padding: 20px 3vw 4vw 3vw;
        display: flex;
        gap: 6vw;
        flex-direction: row-reverse;
        h2{
            color:#E75000;
        }
        .left{
            
            width: 50%;
            .brochure_btn{
                margin-top:40px;
                display: flex;
                align-items: center;
                gap: 10px;
                color:#E75000;
                font-weight: 600;
                img{
                    height: 20px;
                    width: auto;
                }
            }
        }
        .right{
            width: 50%;
            img{
                width: 100%;
                height: auto;
            }
            .video-container {
                position: relative;
                width: 100%;
                height: 0;
                padding-bottom: 56.25%;
            }
            
            .video-container video {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                -o-object-fit: cover;
                   object-fit: cover;
            }
            
            .play-button {
                position: absolute;
                top: 50%;
                left: 50%;
                transform: translate(-50%, -50%);
                background: none;
                border: none;
                cursor: pointer;
                z-index: 2;
                transition: opacity 0.3s;
            }
            
            .play-button svg {
                width: 80px;
                height: 80px;
            }
            
            /* Hide play button when video is playing */
            .video-container.playing .play-button {
                opacity: 0;
                pointer-events: none;
            }
        }
    }
    &.maroon{
        .callback_btn{
            background-color: #7A3648; 
        }
        .homes_main{
            h2{
                color: #7A3648;
            }
            .download_icon path,
            .download_icon line {
                stroke: #7A3648;
            }
            .brochure_btn{
                color: #7A3648;
            }
        }
        .two_column_accordion, .enquiry_form {
            & .left {
                h3 {
                    color:#7A3648;
                }
            }
            .gform_button{
                background-color: #7A3648 !important;
            }
        }  
        .icon_block, .team_block, .page_slider{
            h3 {
                color:#7A3648;
            }
        }      
    }
    &.red{
        .callback_btn{
            background-color: #bf3b48; 
        }
        .homes_main{
            h2{
                color: #bf3b48;
            }
            .download_icon path,
            .download_icon line {
                stroke: #bf3b48;
            }
            .brochure_btn{
                color: #bf3b48;
            }
        }
        .two_column_accordion, .enquiry_form  {
            & .left {
                h3 {
                    color:#bf3b48;
                }
            }
            .gform_button{
                background-color: #bf3b48 !important;
            }
        }  
        .icon_block, .team_block, .page_slider{
            h3 {
                color:#bf3b48;
            }
        }
    }
    &.green{
        .callback_btn{
            background-color: #00662C; 
        }
        .homes_main{
            h2{
                color: #00662C;
            }
            .download_icon path,
            .download_icon line {
                stroke: #00662C;
            }
            .brochure_btn{
                color: #00662C;
            }
        }
        .two_column_accordion, .enquiry_form  {
            & .left {
                h3 {
                    color:#00662C;
                }
            }
            .gform_button{
                background-color: #00662C !important;
            }
        }  
        .icon_block, .team_block, .page_slider{
            h3 {
                color:#00662C;
            }
        }
    }
    &.blue{
        .callback_btn{
            background-color: #3c5c94; 
        }
        .homes_main{
            h2{
                color: #3c5c94;
            }
            .download_icon path,
            .download_icon line {
                stroke: #3c5c94;
            }
            .brochure_btn{
                color: #3c5c94;
            }
        }
        .two_column_accordion, .enquiry_form  {
            & .left {
                h3 {
                    color:#3c5c94;
                }
            }
            .gform_button{
                background-color: #3c5c94 !important;
            }
        }  
        .icon_block, .team_block, .page_slider{
            h3 {
                color:#3c5c94;
            }
        }
    }
    .text_transport{
        
    }
    &.red{
        .text_transport{
            h3{
                color:#bf3b48;
            }
        }
    }
    &.maroon{
        .text_transport{
            h3{
                color:#7A3648;
            }
        }
    }
    &.blue{
        .text_transport{
            h3{
                color:#3c5c94;
            }
        }
    }
    &.green{
        .text_transport{
            h3{
                color:#00662C;
            }
        }
    }
}
/* ! tailwindcss v3.4.11 | MIT License | https://tailwindcss.com */
/*
1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
2. Allow adding a border to an element by just adding a border-width. (https://github.com/tailwindcss/tailwindcss/pull/116)
*/
*,
::before,
::after {
  box-sizing: border-box; /* 1 */
  border-width: 0; /* 2 */
  border-style: solid; /* 2 */
  border-color: #e5e7eb; /* 2 */
}
::before,
::after {
  --tw-content: '';
}
/*
1. Use a consistent sensible line-height in all browsers.
2. Prevent adjustments of font size after orientation changes in iOS.
3. Use a more readable tab size.
4. Use the user's configured `sans` font-family by default.
5. Use the user's configured `sans` font-feature-settings by default.
6. Use the user's configured `sans` font-variation-settings by default.
7. Disable tap highlights on iOS
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -moz-tab-size: 4; /* 3 */
  -o-tab-size: 4;
     tab-size: 4; /* 3 */
  font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 4 */
  font-feature-settings: normal; /* 5 */
  font-variation-settings: normal; /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}
/*
1. Remove the margin in all browsers.
2. Inherit line-height from `html` so users can set them as a class directly on the `html` element.
*/
body {
  margin: 0; /* 1 */
  line-height: inherit; /* 2 */
}
/*
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
3. Ensure horizontal rules are visible by default.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}
/*
Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}
/*
Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}
/*
Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  text-decoration: inherit;
}
/*
Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}
/*
1. Use the user's configured `mono` font-family by default.
2. Use the user's configured `mono` font-feature-settings by default.
3. Use the user's configured `mono` font-variation-settings by default.
4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 1 */
  font-feature-settings: normal; /* 2 */
  font-variation-settings: normal; /* 3 */
  font-size: 1em; /* 4 */
}
/*
Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}
/*
Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
/*
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}
/*
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
3. Remove default padding in all browsers.
*/
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  font-size: 100%; /* 1 */
  font-weight: inherit; /* 1 */
  line-height: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 3 */
}
/*
Remove the inheritance of text transform in Edge and Firefox.
*/
button,
select {
  text-transform: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Remove default button styles.
*/
button,
input:where([type='button']),
input:where([type='reset']),
input:where([type='submit']) {
  -webkit-appearance: button; /* 1 */
  background-color: transparent; /* 2 */
  background-image: none; /* 2 */
}
/*
Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}
/*
Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}
/*
Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}
/*
Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}
/*
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/
[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
/*
Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}
/*
Removes the default spacing and border for appropriate elements.
*/
blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin: 0;
}
fieldset {
  margin: 0;
  padding: 0;
}
legend {
  padding: 0;
}
ol,
ul,
menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
/*
Reset default styling for dialogs.
*/
dialog {
  padding: 0;
}
/*
Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}
/*
1. Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
2. Set the default placeholder color to the user's configured gray 400 color.
*/
input::-moz-placeholder, textarea::-moz-placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
input::placeholder,
textarea::placeholder {
  opacity: 1; /* 1 */
  color: #9ca3af; /* 2 */
}
/*
Set the default cursor for buttons.
*/
button,
[role="button"] {
  cursor: pointer;
}
/*
Make sure disabled buttons don't get the pointer cursor.
*/
:disabled {
  cursor: default;
}
/*
1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
   This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}
/*
Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}
/* Make elements with the HTML hidden attribute stay hidden by default */
[hidden] {
  display: none;
}
*, ::before, ::after{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
  
}
::backdrop{
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x:  ;
  --tw-pan-y:  ;
  --tw-pinch-zoom:  ;
  --tw-scroll-snap-strictness: proximity;
  --tw-gradient-from-position:  ;
  --tw-gradient-via-position:  ;
  --tw-gradient-to-position:  ;
  --tw-ordinal:  ;
  --tw-slashed-zero:  ;
  --tw-numeric-figure:  ;
  --tw-numeric-spacing:  ;
  --tw-numeric-fraction:  ;
  --tw-ring-inset:  ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-blur:  ;
  --tw-brightness:  ;
  --tw-contrast:  ;
  --tw-grayscale:  ;
  --tw-hue-rotate:  ;
  --tw-invert:  ;
  --tw-saturate:  ;
  --tw-sepia:  ;
  --tw-drop-shadow:  ;
  --tw-backdrop-blur:  ;
  --tw-backdrop-brightness:  ;
  --tw-backdrop-contrast:  ;
  --tw-backdrop-grayscale:  ;
  --tw-backdrop-hue-rotate:  ;
  --tw-backdrop-invert:  ;
  --tw-backdrop-opacity:  ;
  --tw-backdrop-saturate:  ;
  --tw-backdrop-sepia:  ;
  --tw-contain-size:  ;
  --tw-contain-layout:  ;
  --tw-contain-paint:  ;
  --tw-contain-style:  ;
  
}
.container{
  width: 100%;
  
}
@media (min-width: 640px){
  
  .container{
    max-width: 640px;
  
  }
  
}
@media (min-width: 768px){
  
  .container{
    max-width: 768px;
  
  }
  
}
@media (min-width: 1024px){
  
  .container{
    max-width: 1024px;
  
  }
  
}
@media (min-width: 1280px){
  
  .container{
    max-width: 1280px;
  
  }
  
}
@media (min-width: 1536px){
  
  .container{
    max-width: 1536px;
  
  }
  
}
.fixed{
  position: fixed;
  
}
.absolute{
  position: absolute;
  
}
.left-0{
  left: 0px;
  
}
.top-0{
  top: 0px;
  
}
.z-50{
  z-index: 50;
  
}
.mx-auto{
  margin-left: auto;
  margin-right: auto;
  
}
.mb-4{
  margin-bottom: 1rem;
  
}
.block{
  display: block;
  
}
.inline{
  display: inline;
  
}
.flex{
  display: flex;
  
}
.grid{
  display: grid;
  
}
.hidden{
  display: none;
  
}
.h-full{
  height: 100%;
  
}
.w-full{
  width: 100%;
  
}
.-translate-x-full{
  --tw-translate-x: -100%;
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  
}
.transform{
  transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  
}
.grid-cols-4{
  grid-template-columns: repeat(4, minmax(0, 1fr));
  
}
.gap-6{
  gap: 1.5rem;
  
}
.overflow-y-auto{
  overflow-y: auto;
  
}
.bg-white{
  --tw-bg-opacity: 1;
  background-color: rgb(255 255 255 / var(--tw-bg-opacity));
  
}
.py-8{
  padding-top: 2rem;
  padding-bottom: 2rem;
  
}
.text-left{
  text-align: left;
  
}
.font-bold{
  font-weight: 700;
  
}
.shadow-lg{
  --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
  --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
  box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow);
  
}
.transition{
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
  transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  
}
.transition-transform{
  transition-property: transform;
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
  transition-duration: 150ms;
  
}
.duration-300{
  transition-duration: 300ms;
  
}
:root {
  --background: #fff;
  --foreground: #435864;
}
@media (prefers-color-scheme: dark) {
  :root {
 
  }
}
html {
  scroll-behavior: smooth;
}
body {
  color: var(--foreground);
  background: var(--background);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 /* font-family: "NeuzeitGroteskStdRegular", Arial, Helvetica, sans-serif;*/
 font-family: "Lato", sans-serif;
  font-size: 22px;
  line-height: 1.3em;
}
h1,h2,h3,h4{
  font-family: "Playfair Display", serif;
}
h2{
  font-size: 2.5rem;
  line-height: 1.2em;
  margin-bottom: 0.8rem;
}
h3{
  font-size: 2rem;
  line-height: 1.2em;
  margin-bottom: 0.8rem;
}
html.lenis, html.lenis body {
    height: auto;
  }
.lenis.lenis-smooth {
    scroll-behavior: auto !important;
  }
.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain;
  }
.lenis.lenis-stopped {
    overflow: hidden;
  }
.lenis.lenis-smooth iframe {
    pointer-events: none;
  }
.featured-image{
  height:80vh;
  position: relative;
  .main-carousel{
    height: 100%;
   
    .carousel-cell {
      width: 100%;
      height: 100%;
    }
    .gallery-hide{
      display: none;
    }
    
    .carousel-cell img {
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
           object-fit: cover; /* maintains aspect ratio while filling container */
    }
    
    .featured-image {
        height: 600px; /* adjust this value as needed */
        overflow: hidden;
    }
    .flickity-page-dots{
      bottom:20px;
      .dot{
        background:#fff;
      }
    }
  }
  img{
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
       object-position: center;
  }
  .home_content{
    position: absolute; 
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content:flex-end;
    flex-direction: column;
    padding:5vw 25vw;
    font-family: "Playfair Display", serif;
    font-size: 2.2rem;
    line-height: 1.2em;
    text-align: center;
    color:#fff;
    background:rgba(0,0,0,0.2);
    .text{
      margin-bottom: 10vh;
    }
  }
  .overlay{
    position: absolute;
    background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
   
    bottom: 0;
    left: 0;
    width: 100%;
    height:40%;
    
   /* flex-direction: row;*/
   display: flex;
    align-items:flex-end;
   padding:3vw;
    z-index: 1;
    .overlay_inner{
      width: 100%;
      display: flex;
    align-items:flex-end;
    justify-content:space-between;
    }
    .title{
      color:#fff;
      h1{
        font-size: 3rem;
        line-height: 1.2em;
      }
    }
  }
}
.home .featured-image{
  height: 100vh;
}
.title-only{
  background: #fff;
  padding: 150px 3vw 3vw 3vw; 
  h1{
    font-size: 3rem;
    line-height: 1.2em;
    color:#E75000;
    margin-bottom: 2rem;
  }
  .text{
    padding-right: 10vw;
    .table{
      margin-bottom: 2rem;
      width: 100%;
      border-collapse: collapse;
      
      th, td {
        padding: 12px;
        text-align: left;
        border-bottom: 1px solid #eee;
      }
      
      th {
        font-weight: 600;
        color: #E75000;
      }
      
      tr:hover {
        background-color: #f9f9f9;
      }
    }
  }
  p{
    margin-bottom: 2rem;
  }
  ul{
    list-style: disc;
    margin-left: 2rem;
    margin-bottom: 2rem;
    li{
      margin-bottom: 1rem;
    }
  }
}
.text_transport{
  
  ul{
    list-style: disc;
    margin-left: 2rem;
    margin-bottom: 2rem;
    li{
      margin-bottom: 1rem;
    }
  }
}
.callback_btn, .page_btn{
  display: inline-block;
  background: #E75000 url(../images/btnbg.svg) no-repeat center right 20px;
  color: #fff;
  padding: 10px 70px 10px 20px;
  text-decoration: none;
  border-radius: 50px;
  font-weight: 600;
  font-size: 1.2rem;
  font-family: "Lato", sans-serif;
  transition: all 0.3s ease;
  
  &:hover {
   
    background: #D94D03 url(../images/btnbg.svg) no-repeat center right 20px;
    /*transform: translateY(-2px);*/
    box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  }
}
.back_btn{
  color:#fff;
  text-decoration: none;
  font-weight: 600;
  font-size: 1.2rem;
  &:before{
    /*content: '\2190';*/
    content: url(../images/back_arrow.svg);
    margin-right: 10px;
    transition: all 0.3s ease;
  }
  &:hover{
    &:before{
      margin-right: 18px;
    }
  }
}
.btn-wrapper {
  display: flex;
  margin-top: 20px;
}
.page_btn {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
}
.bg-white{
  background: #fff;
}
.bg-paper{
  background: #F0F0F0;
}
.top_content{
  padding: 3vw;
  display: flex;
  align-items: stretch;
  gap: 6vw;
  
  .image{
    flex: 1;
    position: relative;
    
    

  }
  .text{
    flex: 1;
    h2{
      color:#E75000;
      font-size: 2.5rem;
      line-height: 1.2em;
      margin-bottom: 1.5rem;
    }
    p{
      margin-bottom: 2rem;
    }
  }
  &.life_inner_page{
    padding: 3vw 3vw 8vw 3vw;
    .first_image{
      position: relative;
      width: 85%;
    }
    .second_image{
      border:20px solid #F0F0F0;
      position: absolute;
      width: 60%;
      bottom: -5vw;
      right: 0px;
    }
  }
  .video-container {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

.video-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
}

.play-button {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: none;
    border: none;
    cursor: pointer;
    z-index: 2;
    transition: opacity 0.3s;
}

.play-button svg {
    width: 80px;
    height: 80px;
}

/* Hide play button when video is playing */
.video-container.playing .play-button {
    opacity: 0;
      pointer-events: none;
    }
  
}
.two_column_text{
  padding: 3vw;
  h3{
    color:#E75000;
    font-size: 2.5rem;
    line-height: 1.2em;
    margin-bottom: 1rem;
  }
  .content{
    display: flex;
    align-items: stretch;
    gap: 6vw;
    p{
      margin-bottom: 2rem;
    }
    .left{
      flex: 1;
    }
    .right{
      flex: 1;
    }
  }
}
/* blocks*/
.anchor_links{
  display: flex;
  gap: 3rem;
  padding:1.5vw 3vw;
  a{
    color:#E75000;
    &:after{
      content: url(../images/down_arrow_orange.svg);
      margin-left: 1rem;
    }
  }
}
.text_image_block {
  display: flex;
  align-items: stretch;
  padding: 3vw;
}
.text_image_block .image {
  flex: 1;
}
.text_image_block .image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.text_image_block .text {
  flex: 1;
  padding: 3vw;
  display: flex;
  /*align-items: center;*/
  justify-content: center;
  flex-direction: column;
  p{
    margin-bottom: 2rem;
  }
  h3{
    color:#E75000;
    font-size: 2.5rem;
    line-height: 1.2em;
    margin-bottom: 1rem;
  }
}
.text_image_block.image-right {
  flex-direction: row;
}
.text_image_block.image-left {
  flex-direction: row-reverse;
}
.two_column_accordion{
  display: flex;
  align-items: stretch;
  padding: 3vw;
  gap: 6rem;
  .left {
    width: 40%;
    h3{
      width:70%;
      color:#E75000;
      margin-bottom: 2rem;
    }
    p{
      margin-bottom: 2rem;
    }
    .btn-wrapper{
      margin-top:4rem;
    }
    .accordion_image{
      width: 90%;
      height: auto;
      margin-bottom: 2rem;
    }
  }
  .right {
    width: 60%;
  }
  .accordion-wrapper {
    max-width: 100%;
  }

  .accordion-item {
      border-bottom: 1px solid #ddd;
  }

  .accordion-header {
      width: 100%;
      padding: 15px;
      background: none;
      border: none;
      text-align: left;
      cursor: pointer;
      position: relative;
      display: flex;
      justify-content: space-between;
      align-items: center;
  }

  .accordion-header.active {
      font-weight: bold;
  }

  

  .accordion-header .icon {
      width: 10px;
      height: 10px;
      border-right: 2px solid #000;
      border-bottom: 2px solid #000;
      transform: rotate(45deg);
      transition: transform 0.3s ease;
  }

  .accordion-header.active .icon {
      transform: rotate(-135deg);
  }

  .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease-out;
  }

  .accordion-inner {
      padding: 0 15px 15px;
      p{
        margin-bottom: 1rem;
      }
  } 

  

.accordion-header.active + .accordion-content .accordion-inner {
  opacity: 1;
}

}
.icon_block{
  padding: 3vw;
  h3{
    color:#E75000;
    font-size: 2.0rem;
    line-height: 1.2em;
    margin-bottom: 2rem;
  }
  .icons {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2rem;
      .icon_item{
        display: flex;
        align-items: center;
        gap: 1rem;
        .icon_image{
          width:50px;
          display: flex;
          align-items: center;
          justify-content: center;
        }
      }
  }

  @media (max-width: 1200px) {
      .icons {
          grid-template-columns: repeat(2, 1fr);
      }
  }

  @media (max-width: 960px) {
      .icons {
          grid-template-columns: 1fr;
      }
  }
}
.careers_block{
  padding: 3vw 15vw;
  h3{
    color:#E75000;
    margin-bottom: 2rem;
  }
  iframe{
    width:100%;
  }
}
.wide_image{
  height:65vh;
  img{
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
       object-position: center;
  }
}
.wide_image_content_slider{
  min-height:65vh;
  position: relative;
  background: #000;
  padding:3vw;
  display: flex;
  align-items: center;
  img{
    opacity: 0.7;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
       object-position: center;
  }
  .wide_image_slider{
    position: relative;
    z-index: 1;
    color:#fff;
    width:60%;
    left:20%;
    text-align: center;
    /*top:20%;*/
    font-size: 1.7em;
    line-height: 1.3em;
   .slider_item{
    width:100%;
    p{
      margin-bottom:30px;
    }
   }
   .flickity-prev-next-button{
    top: 28%;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background:none;
    /*border:1px solid $white;*/
    transform: translateY(-50%);
    .flickity-button-icon{
      fill: #fff;
    }
   }
   .flickity-prev-next-button.next {
    right:-100px;
  }
  .flickity-prev-next-button.previous {
    left:-100px;
  }
}
  @media (max-width: 1200px) {
    .wide_image_slider{
      padding:3vw;
      width: 100%;
      left:0px;
      font-size: 1.5rem;
    }
  }

  @media (max-width: 992px) {
    
  }
}
.life_block{
  /*min-height:65vh;*/
  position: relative;
  background: #000;
  padding:9vw 3vw 7vw 3vw;
  img{
    opacity: 0.6;
    position: absolute;
    top: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -o-object-position: center;
       object-position: center;
  }
  .content{
    position: relative;
    z-index: 1;
    color:#fff;
    display: flex;
    justify-content: space-between;
    gap: 6rem;
    .left{
      width:45%;
      margin-bottom: 2rem;
    }
    .right{
      width:45%;
      margin-bottom: 2rem;
      ul{
        list-style: none;
        padding: 0;
        margin: 0;
        li {
            position: relative;
            padding-left: 2rem;
            margin-bottom: 1rem;
            &:before {
                content: "✓";
                position: absolute;
                left: 0;
                color: #fff;
            }
          }
      }
    }
  } 
  @media only screen and (max-width : 960px) {
    .content{
      display: block;
      .left{
        width:100%;
      }
      .right{
        width:100%;
      }
    }
  }
  .page_btn{
    margin-top: 2rem; 
  }
}
.team_block{
  padding: 3vw;
  h3{
    color:#E75000;
    margin-bottom: 2rem;
  }
  .team_wrapper {
      display: grid;
      grid-template-columns: repeat(5, 1fr);
      gap: 20px;
      .team_name{
        font-weight: 600;
      }
  }

  /* Responsive breakpoints */
  @media (max-width: 1200px) {
      .team_wrapper {
          grid-template-columns: repeat(4, 1fr);
      }
  }

  @media (max-width: 992px) {
      .team_wrapper {
          grid-template-columns: repeat(3, 1fr);
      }
  }

  @media (max-width: 768px) {
      .team_wrapper {
          grid-template-columns: repeat(2, 1fr);
      }
  }

  @media (max-width: 480px) {
      .team_wrapper {
          grid-template-columns: 1fr;
      }
  }

  .team_item {
      width: 100%;
  }

  .team_item img {
      width: 100%;
      aspect-ratio: 1/1;
      -o-object-fit: cover;
         object-fit: cover;
      border-radius: 50%;
      margin-bottom: 1rem;
  }
}
.care_tabs{
  padding: 3vw;
  h2{
    color:#E75000;
    font-size: 2.5rem;
    line-height: 1.2em;
    margin-bottom: 1rem;
  }
  .intro{
    margin-bottom: 4rem;
    .intro_text{
      display: flex;
      gap: 6rem;
      .left{
        flex: 1;
      }
      .right{
        flex: 1;
      }
    }
  }
  .tabs_grid{
    display: grid;
    grid-template-columns: 1fr;
    @media (min-width: 768px) {
      grid-template-columns: repeat(2, 1fr);
    }

    @media (min-width: 1024px) {
      grid-template-columns: repeat(3, 1fr);
    }
    gap: 1rem;
    .tab_item{
      position: relative;
      .tab_content{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: rgba(10,10,10,0.5);
        padding: 3vw;
        color:#fff;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        cursor: pointer;
        transition: all 0.3s ease;
        &:hover{
          background: rgba(10,10,10,0.8);
        }
        
      }
    }
  }
  
}
.care_tabs_lightbox{
  .lightbox {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 1000;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
  
  .lightbox.show {
    display: flex;
    opacity: 1;
  }
  
  .lightbox-content {
    position: relative;
    background: white;
    padding: 30px;
    width: 50%;
    max-height: 90vh;
    overflow-y: auto;
    border-radius: 4px;
    transition: width 0.3s ease;
    #lightbox-title{
      color:#E75000;
      font-size: 2.0rem;
      line-height: 1.2em;
    }
    p{
      margin-bottom: 2rem;
    }
  }
  
  .close {
    position: absolute;
    right: 15px;
    top: 10px;
    font-size: 30px;
    cursor: pointer;
    color: orange;
  }
}
@media (max-width: 768px) {
  .lightbox-content {
      width: 90%;
  }
}
.careers_contacts_block{
  padding: 3vw 3vw;
  .info{
    display: flex;
    flex-wrap: wrap;
    gap: 6rem; 
    .intro{
      flex: 1;
      min-width: 300px;
    }
    .dropdown{
      flex: 1;
      min-width: 300px;
    }
  }
  p{
    margin-bottom: 2rem;
  }
  h3{
    color:#E75000;
    margin-top:1rem;
    margin-bottom: 1rem;
  }
  a{
    color:#E75000;
    text-decoration: none;
  }
  
  .location-dropdown {
      width: 100%;
      max-width: 300px;
      padding: 8px;
      margin: 1em 0;
      border-radius: 5px;
      border: 1px solid #435864;
  }

  .contact-info {
     /* margin-top: 1em;*/
  }

  .selected-location {
      margin-bottom: 0.5em;
      font-weight: bold;
  }
 
}
.page_slider{
  padding: 3vw;
  h3{
    color:#E75000;
    margin-bottom: 2rem;
  }
  .gallery-carousel {
    margin: 20px 0;
  }

  .carousel-cell {
      height: 400px; /* adjust height as needed */
      margin-right: 20px; /* gap between slides */
  }

  .carousel-cell img {
      height: 100%;
      width: auto;
      -o-object-fit: cover;
         object-fit: cover;
  }
  @media (max-width: 992px) {
    .carousel-cell {
    height: 300px;
    }
  }
}
.map_block{
  .map{
    height: 60vh;
  }
}
.enquiry_form{
  padding: 3vw;
  display: flex;
  gap: 6vw;
  .left{
    width: 35%;
    h3{
      color:#E75000;
      margin-bottom: 2rem;
    }
  }
  .right{
    width: 65%;
  }
  .contact_details{
    margin:2rem 0rem;
    .address{
      position: relative;
      padding-left:30px;
      padding-bottom:10px;
      &:before{
        position: absolute;
        top: 0;
        left: 0px;
        content: url(../images/address.svg);
        
      }
    }
    .phone{
      position: relative;
      padding-left:30px;
      padding-bottom:10px;
      &:before{
        position: absolute;
        top: 0;
        left: 0px;
        content: url(../images/phone.svg);
        
      }
    }
    .email{
      position: relative;
      padding-left:30px;
      padding-bottom:10px;
      &:before{
        position: absolute;
        top: 0;
        left: 0px;
        content: url(../images/email.svg);
        
      }
    }
  }
  .gform_button{
    background: #E75000 url(../images/btnbg.svg) no-repeat center right 20px !important;
    color: #fff !important;
    padding: 10px 70px 10px 20px !important;
    text-decoration: none !important;
    border-radius: 50px !important;
    font-weight: 600 !important;
    font-size: 1.2rem !important;
    font-family: "Lato", sans-serif !important;
    transition: all 0.3s ease !important;
    
    &:hover {
    
      background: #D94D03 url(../images/btnbg.svg) no-repeat center right 20px !important;
      /*transform: translateY(-2px);*/
      box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
    }
  }
  .gfield_required{
    color:#E75000 !important;
  }
}
.links_block{
  padding: 3vw;
  h3{
    color:#E75000;
    margin-bottom: 2rem;
  }
  .links{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    
    @media (max-width: 1200px) {
      grid-template-columns: repeat(3, 1fr);
    }

    @media (max-width: 992px) {
      grid-template-columns: repeat(2, 1fr);
    }

    @media (max-width: 768px) {
      grid-template-columns: 1fr;
    }
  }
  .url_link{  
    color:#E75000;
    text-decoration: none;
    border:1px solid #E75000;
    padding:10px 20px;
    border-radius: 5px;
    background: url(../images/icons-02.svg) no-repeat center right 20px;
    &:hover{
      color:#D94D03;
    }
  }
  .pdf_link{  
    color:#E75000;
    text-decoration: none;
    border:1px solid #E75000;
    padding:10px 20px;
    border-radius: 5px;
    background: url(../images/icons-01.svg) no-repeat center right 20px;
    &:hover{
      color:#D94D03;
    }
  }
  .page_link{  
    color:#E75000;
    text-decoration: none;
    border:1px solid #E75000;
    padding:10px 20px;
    border-radius: 5px;
    background: url(../images/icons-02.svg) no-repeat center right 20px;
    &:hover{
      color:#D94D03;
    }
  }
  
}
.homes_archive{
  padding: 3vw;
  background: #F0F0F0;
  display: grid;
    grid-template-columns: 1fr;
    @media (min-width: 768px) {
      grid-template-columns: repeat(2, 1fr);
    }

    @media (min-width: 1024px) {
      grid-template-columns: repeat(3, 1fr);
    }
    gap: 1.5rem;
    .home_item{
      border-radius: 5px;
      overflow: hidden;
      box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
      display: flex;
      flex-direction: column;
      height: 100%;
      background: #fff;
      font-size: 1.2rem;
      line-height: 1.3em;
      .feature_image{
        position: relative;
        .location-terms{
          position: absolute;
          bottom: 10px;
          right: 10px;
          a{
            color:#fff;
            background: #56798D;
            padding: 5px 10px;
            display: inline-block;
            padding:8px 16px;
            font-size: 1.0rem;
            border-radius: 35px;
            &:hover{
              background: #435864;
            }
          }
        }
      }
      .details {
        padding: 1.5rem;
        display: flex;
        flex-direction: column;
        flex: 1;
        
        .inner {
          display: flex;
          flex-direction: column;
          height: 100%;
          
        }
        .address{
          position: relative;
          padding-left:30px;
          padding-bottom:10px;
          &:before{
            position: absolute;
            top: 0;
            left: 0px;
            content: url(../images/address.svg);
            
          }
        }
        .phone{
          position: relative;
          padding-left:30px;
          padding-bottom:10px;
          &:before{
            position: absolute;
            top: 0;
            left: 0px;
            content: url(../images/phone.svg);
            
          }
        }
        .email{
          position: relative;
          padding-left:30px;
          padding-bottom:10px;
          &:before{
            position: absolute;
            top: 0;
            left: 0px;
            content: url(../images/email.svg);
            
          }
        }
        .link{
          color:#E75000;
          text-decoration: none;
          margin-top:20px;
          &:after{
            content: url(../images/link_arrow.svg);
            margin-left: 10px;
          transition: margin-left 0.3s ease;
          }
          &:hover{
            &:after{
              margin-left: 15px;
            }
          }
        }
      }
    }
}
.pagination_wrap{
  display: flex;
  justify-content: center;
  background: #F0F0F0;
  padding: 0px 0px 4rem 0px;
  .pagination{
    ul{
      display: flex;
      gap: 1rem;
    }
  }
}
.text_transport{
  padding: 3vw;
  display: flex;
  gap: 6vw;
  h3{
      color:#E75000;
      font-size: 2.0rem;
      line-height: 1.2;
      margin-bottom: 1rem;
  }
  p{ 
    margin-bottom: 2rem;
  }
  .left{
    width: 50%;
  }
  .right{
    width: 50%;
    .transport_grid{
    
      .transport_item{
        padding:10px 0px;
        display: flex;
        align-items: center;
        gap: 1rem;
        .transport_icon{
          width: 50px;
        }
      }
    }
  }
}
.arts_and_crafts_block{
  padding: 3vw 3vw 8vw 3vw;
  display: flex;
  gap: 3vw;
  
  .text{
    padding-left:5vw;
    padding-right:5vw;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    h3{
      color:#E75000;
      margin-bottom: 2rem;
    }
    p{
      margin-bottom: 1rem;
    }
    .page_btn{
      margin-top: 2rem;
    }
    ul{
      list-style:disc;
      padding-left:2rem;
      li{ 
        margin-bottom: 1rem;
      }
    }
  }
  .image{
    flex: 1;
    position: relative;
    
    .image_1{
      position: relative;
      width: 85%;
      height: auto;
    }
    .image_2{
      border:20px solid #F0F0F0;
      position: absolute;
      width: 60%;
      bottom: -5vw;
      right: 0px;
    }
  }
  &.order-right{
    .image{
      order: 1;
    }
    .text{
      order: 2;
    }
  }
  &.order-left{
    .image{
      order: 2;
    }
    .text{
      order: 1;
    }
  }
  &.bg-white{
    .image{
      .image_2{
        border:20px solid #fff;
      }
    }
  }
  

}
.homes_archive_title{
  padding: 3vw 3vw 10px 3vw;
  background: #F0F0F0;
  h2{
    color:#E75000;
    font-size: 2.5rem;
    line-height: 1.0em;
    margin-bottom: 0rem;
  }
}
/* Add this to your main.scss file*/
.partnership_intro .text {
  /* Default styling for all screen sizes*/
  
  /* Two columns for desktop only*/
  @media (min-width: 768px) {
    -moz-column-count: 2;
         column-count: 2;
    -moz-column-gap: 30px;
         column-gap: 30px; /* Adjust the gap between columns as needed*/
  }
}
.anchors_links {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  /*margin: 2rem 0;*/
  padding:0vw 3vw 3vw 3vw;
  .anchor_link{
    display: inline-block;
    padding: 10px 20px;
    background:url(../images/down_arrow.svg) no-repeat center right 20px;
    border:1px solid #435864;
  }
}
.anchor_row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.anchor_row a {
  flex: 1;
  text-align: center;
}
@media (max-width: 1200px) {
  .anchors_links {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem;
  }

  .anchor_row {
      display: contents;
  }
}
@media (max-width: 960px) {
  .anchors_links {
      display: none;
  }
}
.lightbox_form {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    z-index: 1000;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
    h2{
      color:#E75000;
      font-size: 2.0rem;
      line-height: 1.2;
      margin-bottom: 2rem;
    }
    .gform_button{
      background: #E75000 url(../images/btnbg.svg) no-repeat center right 20px !important;
      color: #fff !important;
      padding: 10px 70px 10px 20px !important;
      text-decoration: none !important;
      border-radius: 50px !important;
      font-weight: 600 !important;
      font-size: 1.2rem !important;
      font-family: "Lato", sans-serif !important;
      transition: all 0.3s ease !important;
      
      &:hover {
      
        background: #D94D03 url(../images/btnbg.svg) no-repeat center right 20px !important;
        /*transform: translateY(-2px);*/
        box-shadow: 0 4px 12px rgba(0,0,0,0.25) !important;
      }
    }
    .gfield_required{
      color:#E75000 !important;
    }
    &.is-active {
        background: rgba(0, 0, 0, 0.5);
        
        .lightbox_form__content {
            opacity: 1;
            transform: translateY(0);
        }
    }
    
    & .lightbox_form__content {
        position: relative;
        background: white;
        padding: 2rem 4rem;
        max-width: 90%;
        max-height: 90vh;
        overflow-y: auto;
        border-radius: 4px; 
        opacity: 0;
        transform: translateY(-20px);
        transition: all 0.3s ease;
    }
    
    & .lightbox_form__close {
        position: absolute;
        top: 40px;
        right: 40px;
        background: none;
        border: none;
        font-size: 1.5rem;
        cursor: pointer;
        transition: transform 0.2s ease;
        
        &:hover {
            transform: scale(1.1);
        }
    }
}
/* Style for the mobile menu toggle button */
.mobile-menu-toggle {
  display: none;
  position: fixed;
  top: 10px;
  right: 10px;
  z-index: 60;
  color: #fff;
  padding: 10px;
  border: none;
  cursor: pointer;
  
  @media only screen and (max-width: 960px) {
    display: block;
  }
}
/* Style for the mobile menu */
.mobile-menu-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 50;
  background: white;
  transform: translateX(-100%);
  transition: transform 0.3s ease;
  padding: 20px 3vw;
  
  .menu-logo img {
    width: 230px;
    height: auto;
  }
  
  .menu-items {
    padding: 20px 1vw;
    li {
      padding: 10px 0px;
      a {
        color: #435864;
        font-size: 1.2rem;
        line-height: 1.2;
      }
    }
  }
}
.mobile-menu-container.open {
  transform: translateX(0);
}
@media only screen and (max-width : 960px) {
    h2 {
      font-size: 2.2rem !important;
      line-height: 1.2em !important;
      margin-bottom: 1.5rem !important;
  }
  .careers_block {
    padding: 3vw 3vw;
}
.careers_contacts_block {
  .info {
      display: block;
  }
}
  .arts_and_crafts_block {
    .text{
      padding-left:0vw;
      padding-right:0vw;
      padding-bottom:30px;
    }
  }
    .text_transport {
      padding: 3vw;
      display: block;
      gap: 6vw;
      .left{
        margin-bottom: 2rem;
        width:100%;
      }
      .right{
        width:100%;
      }
    }

    .single-home {
      .homes_top {
          padding: 30px 3vw 20px 3vw;
          display: block;
          .left{
            margin-bottom: 2rem;
          }
      }
    .homes_main {
        background-color: #fff;
        position: relative;
        padding: 20px 3vw 4vw 3vw;
        display: block;
        gap: 6vw;
        flex-direction: row-reverse;
        .left{
          margin-bottom: 2rem;
          width:100%;
        }
        .right{
          width:100%;
        }
        h3{
          font-size: 1.5rem;
          line-height: 1.2;
          margin-bottom: 2rem;
        }
    }
  }


    .featured-image {
      & .overlay {
        padding:40px 3vw;
          .overlay_inner {
              width: 100%;
              display: block;
              .title{
                font-size: 1.0rem;
                line-height: 1.2;
                margin-bottom: 1rem;
                h1{
                  font-size: 3rem;
                  line-height: 1.2;
                }
              }
          }
      }
      .home_content {
          padding: 50px 3vw;
          font-size: 1.8rem;
          line-height: 1.2;
      }
  }

    .anchor_links{
      display: none;
    }
    .menu-bar{
      display: none;
    }
    .top_content {
      display: block;
  }
  .two_column_text {
    .content {
        display: block;
    }
}
    .arts_and_crafts_block{
      display: block;
    }
    
    .text_image_block {
      display: block;
    }

    .text_image_block.image-right {
        grid-template-areas: "text image";
    }

    .text_image_block.image-left {
        grid-template-areas: "image text";
    }

    .text_image_block .text {
        grid-area: text;
    }

    .text_image_block .image {
        grid-area: image;
    }
    .two_column_accordion {
      display: block;
    }

    .two_column_accordion .left,
    .two_column_accordion .right {
      width: 100%;
    }
    .enquiry_form{
      display: block;
      .left{
        width: 100%;
      }
      .right{
        width: 100%;
      }
    }

    .footer{
      display: block;
      .column{
        margin-bottom: 2rem;
      }
    }
  }
.mobile-menu-button {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 30px;
    height: 20px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    z-index: 100;
    
    @media (max-width: 768px) {
        display: flex;
    }
    
    span {
        width: 100%;
        height: 2px;
        background: #000;
        transition: all 0.3s ease;
    }
    
    &.active {
        span:nth-child(1) {
            transform: translateY(9px) rotate(45deg);
        }
        span:nth-child(2) {
            opacity: 0;
        }
        span:nth-child(3) {
            transform: translateY(-9px) rotate(-45deg);
        }
    }
    
}
.mobile-nav {
    display: none;
    position: fixed;
    top: 0;
    right: -100%;
    width: 80%;
    max-width: 300px;
    height: 100vh;
    background: white;
    padding: 80px 20px 20px;
    transition: right 0.3s ease;
    z-index: 99;
    
    @media (max-width: 768px) {
        display: block;
    }
    
    &.active {
        right: 0;
    }
}
body.menu-open {
    overflow: hidden;
}