/*
Theme Name: VGolf
Theme URI: http://vgolfbrighton.co.uk/
Author: Boostbery
Author URI: https://boostbery.com/
Description: Theme for VGolf Brighton by Boostbery (2025)
Version: 1.0.1
License: GPL or whatever you prefer
Text Domain: Theme for VGolf Brighton by Boostbery
*/


/* =======================
-------- Contents --------
==========================

1.0 Normalize
2.0 Page Layout & Styles
3.0 ???
4.0 Media Queries

========================== */

/* =============================================
1.0  Normalize ---------------------------------
============================================= */

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */progress,sub,sup{vertical-align:baseline}button,hr,input{overflow:visible}[type=checkbox],[type=radio],legend{box-sizing:border-box;padding:0}html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background-color:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}svg:not(:root){overflow:hidden}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}button,input,select,textarea{font:inherit;margin:0}optgroup{font-weight:700}button,select{text-transform:none}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:ButtonText dotted 1px}fieldset{/*border:0px solid silver;margin:0 2px;padding:.35em .625em .75em*/}legend{color:inherit;display:table;max-width:100%;white-space:normal}textarea{overflow:auto}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-input-placeholder{color:inherit;opacity:.54}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* =============================================
2.0  Page Layouts & Styles ---------------------
============================================= */

@font-face {
    font-family: 'rugenexpanded';
    src: url('assets/fonts/rugen/rugenexpanded-webfont.woff2') format('woff2'),
    url('assets/fonts/rugen/rugenexpanded-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}


:root{
  --wp--preset--color--this-theme-text: #333333;
  --wp--preset--color--this-theme-lighttext: #707070;
  --wp--preset--color--this-theme-black:  #000000;
  --wp--preset--color--this-theme-offblack:  #222222;
  --wp--preset--color--this-theme-grey:  #f7f7f7;
  --wp--preset--color--this-theme-white:  #ffffff;
  --default-grey:#EFEFEF;
  --default-offblack:#222222;
  --no-colour:  rgba(0,0,0,0);
  --text-colour: #111111;
  --border-colour:rgba(0,0,0,0.25);
  --titlefont: 'rugenexpanded';
  --titlefont-weight: 400;
  --titlefont-lineheight: 1.2em;
  --titlefont-space:0px;
  --bodyfont: "Poppins", sans-serif;

  --block-gap-spacing:200px;

  --padding-xxl:120px;
  --padding-xl:80px;
  --padding-l:60px;
  --padding-m:40px;
  --padding-s:30px;
  --padding-xs:20px;
  --padding-xxs:10px;
  --padding-xxxs:5px;

  --margin-xxl:120px;
  --margin-xl:80px;
  --margin-l:60px;
  --margin-m:40px;
  --margin-s:30px;
  --margin-xs:20px;
  --margin-xxs:10px;
  --margin-xxxs:5px;

  --standard-shadow:0 0 30px rgba(0, 0, 0, 0.20);
  --hard-shadow:0 0 15px rgba(0, 0, 0, 0.40);
}
.inner{
    width: 100%;
}

.alignwide{
    padding: 0 calc(40px + 4vw);
}
@media screen and (max-width:1350px){
    .alignwide{
        padding: 0 calc(40px + 1vw);
    }
}
@media screen and (max-width:600px){
    .alignwide{
        padding: 0 var(--padding-s);
    }
}
body {
    margin: 0;
    --wp--style--global--content-size: 1300px;
    --wp--style--global--wide-size: 1500px;
}
body .is-layout-constrained > .alignwide {
    max-width: var(--wp--style--global--wide-size);
}
body .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: var(--wp--style--global--content-size);
    margin-left: auto !important;
    margin-right: auto !important;
}
header .inner.alignwide,
footer .inner.alignwide {
    max-width: var(--wp--style--global--wide-size);
    margin-left: auto !important;
    margin-right: auto !important;
}
/* =WordPress Core
-------------------------------------------------------------- */
:root {
  --paddingside: calc(40px + 2vw);
}
*{
    box-sizing: border-box;
}
body{
    overflow-x: hidden;
}
p:empty{
    display:none !important;
}
h1{
    font-size: 60px;
    letter-spacing: 0px;
    font-weight: 300;
}
h2{
    font-size: 25px;
    line-height: 29px;
    letter-spacing: 0px;
    font-family: var(--titlefont);
    font-weight: var(--titlefont-weight);
    letter-spacing: var(--titlefont-space);
    font-style: normal;
}
h3{
    font-size: 21px;
    line-height: 30px;
}   
h4,p,sub,a{
    font-size: 17px;
    font-size:1em;
    line-height: 1.5em;
}

@media screen and (max-width:1350px){
    h1{
        font-size: 50px;
    }
    h2{
        font-size: 20px;
    }
    h3{
        font-size: 20px;
        line-height: 28px;
    }
    h4,p,sub,a{
        font-size: 17px;
        font-size:1em;
        line-height: 1.5em;
    }
}
@media screen and (max-width:900px){
    h1{
        font-size: 40px;
    }
    h2{
        font-size: 26px;
    }
    h3{
        font-size: 19px;
    }
}
@media screen and (max-width:700px){
    h1{
        font-size: 35px;
    }
    h2{
        font-size: 24px;
    } 
}
h1, h2, h3,
h1 span, h2 span, h3 span,
h1 a, h2 a, h3 a{
    font-family: var(--titlefont);
    font-weight: var(--titlefont-weight);
    letter-spacing: var(--titlefont-space);
    font-style: normal;
}

/* Rugen font lacks Ã‚Â£ glyph */
h1 .currency-symbol,
h2 .currency-symbol,
h3 .currency-symbol,
h1 span.currency-symbol,
h2 span.currency-symbol,
h3 span.currency-symbol {
    font-family: eurostile-extended, sans-serif;
    font-weight: 900;
}

p, span, a, blockquote, cite, sup, sub{
    font-family: var(--bodyfont);
}
a{
    text-decoration: none;
}
.wp-block-button__link{
    font-family: 'rugenexpanded';
}
strong{
    font-weight: 600;
}
em{
    font-style: italic;
}
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin:0px auto 0px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    white-space: nowrap;
    height: 1px;
    width: 1px;
    overflow: hidden;
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000; /* Above WP toolbar. */
}
.post-edit-link{
    position: fixed;
    z-index: 9999999;
    bottom:0;
    left: 0;
    width: 80px;
    display: block;
    background:#800;
    color: white;
    font-size: 14px;
    padding: var(--padding-xxs);
    text-align: center;
}



.the-page-header{
    width: 100%;
    padding: 0 calc(40px + 2vw);
}
.the-page-header h1{
    width: 100%;
    margin:var(--margin-m) 0;
    color: #fff;
}
main.main-page{
    width: 100%;
    padding: var(--padding-xl) 0 var(--padding-xl);
    margin-bottom: 20px;
    background: rgba(255,255,255,0.04);
}
main.main-page li a,
main.main-page table a{
    color: #fff;
}
/*.classevent-inner{
    margin-top: 80px;
}*/
@media screen and (max-width:800px){
    main.main-page  .wp-block-table thead{
        display: none;

    }
    main.main-page table{
        width: 100%;
    }
    main.main-page table tr{
        width: 100%;
        margin-bottom: var(--margin-xxxs);
        background: rgba(255,255,255,0.04);
       display: flex;
       flex-wrap: wrap;
       padding: 0px;
       border:1px solid rgba(255,255,255,0.2);
   }
   main.main-page table tr td{
      width: 100%;
      border: 0px solid rgba(0,0,0,0);
      padding-left: var(--padding-xs);
      padding-right: var(--padding-xs);
  }
}

/* =============================================
3.0  Site Styles -----------------------------
============================================= */

/*font-family: 'Heebo', sans-serif;
font-family: 'Karla', sans-serif;*/

.has-defaultColour2-color{ color: #ffffff; /* formerly gold */}
.has-defaultColour1-color{ color: #366049;}
.has-black-color{ color: #000000;}
.has-dark_gray-color{ color: #28303D;}
.has-gray-color{ color: #39414D;}
.has-lgray-color{ color: #f7f7f7;}
.has-gtext-color{ color: #333333;}
.has-ltext-color{ color: #707070;}
.has-green-color{ color: #18CC00;}
.has-blue-color{ color: #004EFD;}
.has-purple-color{ color: #7F00FD;}
.has-red-color{ color: #FD0000;}
.has-orange-color{ color: #FF9D00;}
.has-white-color{ color: #FFFFFF;}
.has-transparent-color{ color: rgba(255,255,255,0);}

.has-defaultColour2-background-color{ background: #ffffff; /* formerly gold */}
.has-defaultColour1-background-color{ background: #366049;}
.has-black-background-color{ background: #222222;}
.has-dark_gray-background-color{ background: #28303D;}
.has-gray-background-color{ background: #39414D;}
.has-lgray-background-color{ background: #f7f7f7;}
.has-gtext-background-color{ background: #333333;}
.has-ltext-background-color{ background: #707070;}
.has-green-background-color{ background: #18CC00;}
.has-blue-background-color{ background: #004EFD;}
.has-purple-background-color{ background: #7F00FD;}
.has-red-background-color{ background: #FD0000;}
.has-orange-background-color{ background: #FF9D00;}
.has-white-background-color{ background: #FFFFFF;}
.has-transparent-background-color{ color: rgba(255,255,255,0);}

/* ==============================================================
-----------------------------------------------------------------
General
-----------------------------------------------------------------
============================================================== */
a.a-button{
    padding: var(--padding-xs) var(--padding-m);
    font-family: var(--titlefont);
    transition: all ease-in-out 0.4s;
    border: 0px solid rgba(255,255,255,0);
}
a.a-button.button-green{
    background: var(--default-colour2);
    color: var(--default-colour1);
}
a.a-button.button-green:hover{
    background: var(--default-colour1);
    color: var(--default-colour2);
}

.content-base-page {
    max-width: var(--wp--style--global--content-size);
    padding: 80px 40px 0px;
    margin: 0 auto;
}

/* ==============================================================
-----------------------------------------------------------------
header
-----------------------------------------------------------------
============================================================== */
header.site-header {
    position: fixed;
    width: 100%;
    top: 0;
    z-index: 9999;
    background: var(--default-colour1);
    color: var(--wp--preset--color--this-theme-white);
}
.header-content{
    display:  flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    background: var(--default-offblack);
    align-items: center;
    padding: 10px 0;
}
.header-content .inner {
    width: 100%;
    display:  flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    background: var(--default-offblack);
    align-items: center;
}

.header-content .inner .logo{
    width: auto;
}
.header-content .inner .header-replaced-logo{
    width: 100%;
    color: var(--default-colour2);
    text-transform: uppercase;
    font-family: var(--titlefont);
    font-weight: var(--titlefont-weight);
    letter-spacing: var(--titlefont-space);
    font-style: normal;
    font-size: 40px;
}
.header-content .inner .logo a{
    width: 100%;
    display: block;
}
.header-content .inner .logo a img, .header-content .inner .logo a svg {
    height: 50px;
    width: auto;
    fill: var(--default-colour2);
}
.main-navigation{
    width: calc(100% - 300px);
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin: 0;
}
.desktop-nav{
    width: calc(100% - 80px);
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.desktop-nav {
    position: relative;
}

.desktop-nav ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
}

.desktop-nav ul li {
    position: relative;
    margin-right: var(--margin-xs);
}

.desktop-nav ul li a {
    text-decoration: none;
    padding: 5px;
    display: block;
    color: var(--wp--preset--color--this-theme-white);
    background: rgba(0, 0, 0, 0);
    font-family: "Poppins", sans-serif;
    font-size: 14px;
    white-space: nowrap;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.menu-item-has-children > a::after {content: "▼";font-size: 0.7em;margin-left: 5px;}

.desktop-nav ul li:hover > a {
    /* background: var(--wp--preset--color--this-theme-white); */
    color: var(--wp--preset--color--gold);
}
.desktop-nav ul li.booknow{
    margin: -31px 0;
    display: flex;
    align-items: center;
}
.desktop-nav ul li.booknow a{
    padding: 30px var(--padding-xs);
    height: 100%;
    background: var(--default-colour2);
    color: var(--default-colour1);
    display: flex;
    align-items: center;
}
.desktop-nav ul li.booknow a:hover{ 
    background: #fff;
    color: var(--default-colour1);
}

.menu-item-has-children > a::after {
    content: "▼";
    font-size: 0.7em;
    margin-left: 5px;
}

/* Styling for submenu (hidden by default) */
.desktop-nav ul li .sub-menu {
    display: none;
    position: absolute;
    top: 100%; /* Position below the parent item */
    left: 50%;
    translate: -50% 0;
    background: #fff;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 0;
    z-index: 1000;
    min-width: 200px;
}

/* Ensure submenu items stack vertically */
.desktop-nav ul li .sub-menu li {
    margin: 0;
}

.desktop-nav ul li .sub-menu li a {
    padding: 14px 20px;
    color:var(--default-colour1);
    text-align: left;
    white-space: nowrap; /* Prevent wrapping */
    border-bottom: 1px solid #bababa;
}

/* Show submenu on hover */
.desktop-nav ul li:hover .sub-menu {
    display: block;
}

/* Optional: Add hover effect to submenu items */
.desktop-nav ul li .sub-menu li a:hover {
    background: #deec3a;
    color: #222222;
}

@media screen and (max-width:1350px){
    .desktop-nav ul li {
        margin-right: 5px;
    }
    .desktop-nav{
        padding-right: var(--padding-xs);
    }
}
@media screen and (max-width:1150px){
    .desktop-nav{
        display:none;
    }
}

/* ==============================================================
-----------------------------------------------------------------
Hamburger Navigation
-----------------------------------------------------------------
============================================================== */
.sidenav{
    display: none;
}
/**
* Hidden checkbox
*/
#toggle {
    display: none;
}

/**
* Hamburger icon
*/
.hamburger-bun{
    position: relative;
    width: 80px;
}
.hamburger {
    position: absolute;
    top: -7px;
    right: 2rem;
    width: 44px;
    height: 44px;
    z-index: 2;
    transition: 0.5s ease-in-out;
    cursor: pointer;
}
.hamburger span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    border-radius: 3px;
    left: 0;
    background: var(--wp--preset--color--this-theme-white);
    transition: 0.25s ease-in-out;
}
.hamburger span:nth-child(1) {
    top: 0;
}
.hamburger span:nth-child(2),
.hamburger span:nth-child(3) {
    top: 12px;
}
.hamburger span:nth-child(4) {
    top: 24px;
}

/**
* Overlay
*/
.overlay {
    display: block;
    position: fixed;
    background-color: rgba(0, 0, 0, 0.5);
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    transition: opacity 0.5s;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
}

/**
 * Nav menu
 */
.nav {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    max-width: 600px;
    background: #fff;
    overflow-y: auto;
    padding: 3rem;
    transform: translate3d(calc(-100% - 24px), 0, 0);
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1);
    box-shadow: 0 0 24px rgba(0, 0, 0, 0.5);
    z-index: 1;
    pointer-events: none;
}

.nav a {
    text-decoration: none;
    color: #333;
    display: block;
    padding: 1rem;
}

/**
* Open states
*/
#toggle:checked ~ .hamburger span:nth-child(1) {
    top: 18px;
    width: 0%;
    left: 50%;
    background: var(--default-colour2);
}
#toggle:checked ~ .hamburger span:nth-child(2) {
    transform: rotate(45deg);
    background: var(--default-colour2);
}
#toggle:checked ~ .hamburger span:nth-child(3) {
    transform: rotate(-45deg);
    background: var(--default-colour2);
}
#toggle:checked ~ .hamburger span:nth-child(4) {
    top: 18px;
    width: 0%;
    left: 50%;
    background: var(--default-colour2);
}

#toggle:checked ~ .overlay {
    opacity: 1;
    pointer-events: auto;
}

#toggle:checked ~ .nav {
    transform: translate3d(0, 0, 0);
    pointer-events: auto;
}
.hamburger-bun #menu-main-nav-1{
    display: none;
}

@media screen and (max-width:1150px){
    .sidenav{
        display: inline-block;
    }
    .hamburger-bun #menu-main-nav-1{
        display:block;
        margin-bottom: 0;
    }
    .hamburger-bun #menu-side-menu{
        display:block;
        margin-top: 0;
    }
    .hamburger-bun #menu-main-nav-1 .sub-menu{
        display: none;
    }
    .nav a {
        padding: var(--padding-xxs);
        margin-bottom: 5px;
    }

    .menu-item-has-children > .sub-menu {
        display: none;
    }
    
    .menu-item-has-children.submenu-open > .sub-menu {
        display: block;
    }
}
/* ==============================================================
-----------------------------------------------------------------
Ticker
-----------------------------------------------------------------
============================================================== */
.header-ticker {
    width: 100vw;
    overflow: hidden;
    background: var(--default-colour2);
    color: var(--default-colour1);
    display: flex;
    align-items: center;
    position: relative;
}

.ticker-track {
    display: flex;
    flex-wrap: nowrap;
    white-space: nowrap;
    will-change: transform;
    align-items: center;
    height: 100%;
}

.ticker-content {
    display: flex;
    white-space: nowrap;
    flex-shrink: 0;
    align-items: center;
    height: 100%;
}

.ticker-content p {
    margin: 0;
    padding: var(--padding-xxs) var(--padding-xl);
    line-height: 1.2em;
    display: flex;
    align-items: center;
    height: 100%;
    position: relative;
    font-size:15px;
}
.ticker-content p:before{
    position: absolute;
    content: "";
    width: 21px;
    height: 15px;
    background: url(assets/images/logo-deet.png);
    left: 0;
    top: 50%;
    translate: 0 -50%;
}
.ticker-content a {
    color: inherit;
    text-decoration: none;
    display: inline-block;
}

/* ==============================================================
-----------------------------------------------------------------
Breadcrumb
-----------------------------------------------------------------
============================================================== */
.breadcrumbs-block,
.block-breadcrumb{
    width: 100%;
    border-bottom:1px solid #dedede;
    overflow: hidden;
}
ol.breadcrumbs{
    width:100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
ol.breadcrumbs li{
    display: inline-block;
    padding: 0 var(--padding-xs);
    text-transform: capitalize;
    position: relative;
    background: #fff;
    line-height: 1em;
}
ol.breadcrumbs li a,
ol.breadcrumbs li span{
    display: block;
    padding:var(--padding-xxs) var(--padding-xs);
    text-decoration: none;
    z-index: 2;
    position: relative;
    color: var(--wp--preset--color--this-theme-text);
    font-family: "Poppins", sans-serif;
    font-size: 1em;
}
ol.breadcrumbs li:after{
    position: absolute;
    content: "";
    right: 0;
    top:50%;
    translate:0 -50% ;
    border-bottom:1px solid #dedede;
    border-right:1px solid #dedede;
    transform: rotate(-45deg);
    height: 32px;
    width: 32px;
    z-index: 1;
    background: #fff;
}
ol.breadcrumbs li:last-child:after{
    position: absolute;
    content: "";
    right: 0;
    top:50%;
    translate:0 -50% ;
    border:1px solid var(--default-colour2);
    transform: rotate(-45deg);
    height: 10px;
    width: 10px;
    z-index: 1;
    background: #fff;
}
@media screen and (max-width:650px){
    .breadcrumbs-block,
    .block-breadcrumb{
        display: none;
    }
}

/* ==============================================================
-----------------------------------------------------------------
footer
-----------------------------------------------------------------
============================================================== */
footer.site-footer,
.footer-stuff{
    width: 100%;
    background: var(--default-offblack);
    color:#fff;
    position: relative;
}
footer.site-footer:after{
    content: "";
    background: url(assets/images/vgolf-icon.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    position: absolute;
    bottom: 14px;
    left: 50%;
    translate: -50% 0;
    transform: rotate(180deg);
    height: 60px;
    width: 90px;
}

/* ==============================================================
-----------------------------------------------------------------
footer - Logo
-----------------------------------------------------------------
============================================================== */
.footer-logo{
    width: 100%;
    padding: var(--padding-s) 0 var(--padding-xl);
}
.footer-logo figure.wp-block-image.size-large {
    width: 70%;
    max-width: 280px;
    height: auto;
    margin: var(--margin-s) auto;
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer-logo figure.wp-block-image.size-large a{
    display: block;
}
.footer-logo figure.wp-block-image.size-large a img{
    display: block;
    width: 100%;
    height: auto;
}

/* ==============================================================
-----------------------------------------------------------------
footer - Content
-----------------------------------------------------------------
============================================================== */
.footer-content{
    padding: var(--padding-xs) 0;
}
.footer-content .inner{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    padding: var(--padding-l) 0 var(--padding-s);
    gap: 20px 40px;
}
.footer-col {
    width: calc(33% - 40px);
}

.footer-inner-col {
    flex-grow: 1;
    padding-bottom: var(--padding-xs);
    width: 100%;
}

.footer-col{
    display:flex;
    justify-content:flex-start;
    text-align: center;
    align-items: center;
    flex-direction: column;
    gap: 5px;
}
.footer-col h3{
    font-size: 1.6em;
    font-family: var(--titlefont);
    font-weight: var(--titlefont-weight);
    letter-spacing: var(--titlefont-space);
    line-height:var(--lineheight);
    font-style: normal;
    width: 100%;
    margin: 0 0 var(--margin-s);
    display: block;
    text-transform: uppercase;
    line-height: 1em;
}
.footer-col p{
    width: 100%;
}
.footer-address p{
    line-height: 2em;
}
.footer-col a{
    width: 100%;
    display: block;
}
.footer-col .menu,
.footer-col ul.menu {
    width:100%;
    list-style: none;
    margin: 0;
    padding: 0 30px;
}
.footer-col .menu ul li,
.footer-col ul.menu li{
    width:100%;
    position: relative;
    margin-bottom: 4px;
}
.footer-col .menu ul li a,
.footer-col ul.menu li a{
    width:100%;
    padding:var(--padding-xxxs) var(--padding-s);
    position:relative;
    line-height:1em;
    border-radius:4px;
    transition:all ease-in-out 0.4s;
    color: #fff;
    font-size: 1em;
    font-weight: 400;
    color: #fff;
    transition:all ease-in-out 0.4s;
    z-index: 1;
    display: block;
    text-align: center;
}
.footer-col.footer-site-map .menu ul li,
.footer-col.footer-site-map ul.menu li{
    margin-bottom: 9px;
}
.footer-col.footer-site-map .menu ul li a,
.footer-col.footer-site-map ul.menu li a{
    padding:var(--padding-xxxs) var(--padding-s);
}
.footer-col .menu ul li a:hover,
.footer-col ul.menu li a:hover{
    color: var(--default-colour2);
    transition:all ease-in-out 0.4s;
}


.directions-link,
.booknow-link{
    padding: var(--padding-xs) var(--padding-s);
    transition: all ease-in-out 0.4s;
    border: 1px solid rgba(255, 255, 255, 0);
    background: var(--default-colour2);
    color: var(--default-colour1);
    margin: 30px auto 0;
    text-decoration: none;
    display: inline-block;
    font-family: var(--titlefont);
    max-width: 90%;
    width: auto;
    margin-bottom: var(--margin-xxs);
}
.directions-link:hover,
.booknow-link:hover{
    background: var(--default-colour1);
    color: var(--default-colour2);
    border: 1px solid var(--default-colour2);
}

/* ==============================================================
-----------------------------------------------------------------
footer - Contact details
-----------------------------------------------------------------
============================================================== */
.footer-contacts-col{
    display: block;
}
.footer-contact-holder{
    display:flex;
    justify-content:space-between;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 !important;
}

.footer-contacts {
    width: calc(100% - 100px);
    padding: 0 0 var(--padding-xxs) var(--padding-xxxs);
}
.footer-contacts p{
    display: block;
    position: relative;
    padding: var(--padding-xxs);
}
/*.footer-contact-details{
    width: 100%;
    display: block;
    border-right:2px solid var(--default-colour2);
    padding: 10px ;
}
.footer-contact-details a{
    width: 100%;
    padding: 17px 26px 19px 26px;
    text-align: ;
    position: relative;
    line-height: 1em;
    border-radius: 4px;
    transition: all ease-in-out 0.4s;
    border: 1px solid rgba(255, 255, 255, 0);
    background: var(--default-colour1);
    color: #fff;
    font-weight: 400;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    text-decoration: none;
    margin-bottom: 10px;
    color: #fff;
}
.footer-contact-details a svg{
    width: 16px;
    height: 16px;
    fill:var(--default-colour2);
    margin-right: 27px;
}
.footer-contact-details a span{
    color: #fff;
    transition:all ease-in-out 0.4s;
}
.footer-contact-details a:hover{
    color: var(--default-colour2);
    transition:all ease-in-out 0.4s;
}
.footer-contact-details a:hover span{
    color: var(--default-colour2);
    transition:all ease-in-out 0.4s;
}*/
.footer-contact-details-links{
    margin:var(--margin-xxs) auto var(--margin-m);
    display: block;
}
.footer-contact-details-links a{
    color: #fff;
    transition: all ease-in-out 0.4s;
    display: block;
    font-size: 1.2em;
    font-weight: 600;
    padding: 2px 2px 2px;
    line-height: 1.25em;
    text-align: center;
}
.footer-contact-details-links a:hover{
    color: var(--default-colour2);
}
/* ==============================================================
-----------------------------------------------------------------
footer - Social Icons 
-----------------------------------------------------------------
============================================================== */

.footer-icons{
    width:100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 25px;
    padding: var(--padding-xs) 0;
    margin-top: var(--margin-xxs);
}
.footer-icons a{
    position: relative;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--default-colour2);
    border:2px solid var(--default-colour2);
    transition: all ease-in-out 0.4s;
}
.footer-icons a svg{
    fill:var(--default-colour1);
    width: 25px;
    height: 25px;
}
.footer-icons a{
    background: var(--default-colour2);
}
.footer-icons a:hover{
    background: var(--default-colour1);
}
.footer-icons a:hover svg{
    fill:var(--default-colour2);
    width: 25px;
    height: 25px;
}

/* ==============================================================
-----------------------------------------------------------------
footer - Copyright
-----------------------------------------------------------------
============================================================== */
.copyright{
    padding: var(--padding-m) var(--padding-m) var(--padding-xs);
}
.copyright .inner{
    width: 100%;
}
aside.copyright {
    border-bottom: 16px solid var(--default-colour2);
}
.copyright .inner{
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding-left: 65px;
    padding-right: 67px;
}

.copyright p{
    font-size: 0.7em;
    display: inline-block;
    text-align: left;
    margin: 0 !important;
}
.google-review-footer,
.google-review-footer img{
    width: 80%;
    max-width: 122px;
    height: auto;
    display: inline-block;
}
.copyright p:last-child{
    text-align: right;
}
.copyright p a{
    color: #fff;
    text-decoration: none;
}

footer.site-footer.wp-block-template-part {
    background: url(assets/images/footer-overlay.png) #222222 !important;
    background-position: center 0 !important;
    background-repeat: no-repeat !important;
}

.wp-block-group.footer-stuff {
    background: none !important;
}


/* ==============================================================
-----------------------------------------------------------------
footer - Media Queries
-----------------------------------------------------------------
============================================================== */
@media screen and (max-width:900px) {
    .footer-logo {
        padding: 30px;
    }

    .footer-content .inner {
        flex-direction: column;
        align-items: center;
        gap: 50px;
    }

    .footer-col {
        width: 50%;
    }

    .copyright .inner {
        flex-direction: column;
        align-items: center;
        gap: 30px;
        margin-bottom: 30px;
        padding-left: 0;
        padding-right: 0;
    }

    .copyright p {
        text-align: center;
    }

    .copyright p:last-child {
        text-align: center;
    }
}

@media screen and (max-width:700px) {
    .footer-col {
        width: 100%;
    }
}


/* ==============================================================
-----------------------------------------------------------------
ACF assigned global styles
-----------------------------------------------------------------
============================================================== */
.reduced-margin {
    margin-bottom: -70px !important;
}

/* ----------------------*/
/* Content overlap */
/* Content overlap from "Overlap" ACF group, assigned with use of get_block_overlap_class function (shortcodes.php) within the block main class.  */
.overlap-top,
.overlap-top.aligncenter {
    position: relative;
    margin-top: -150px !important;
    z-index: 5;
}
.overlap-bottom,
.overlap-bottom.aligncenter {
    position: relative;
    margin-bottom: -150px !important;
    z-index: 5;
}
.overlap-top-bottom,
.overlap-top-bottom.aligncenter {
    position: relative;
    margin-top: -150px !important;
    margin-bottom: -150p !important;
    z-index: 5;
}
/* ----------------------*/


/* ==============================================================
-----------------------------------------------------------------
Standard global block override styles
-----------------------------------------------------------------
============================================================== */

.wp-block-buttons .wp-block-button__link {
    padding: 20px 40px !important;
}
.wp-block-button .wp-block-button__link:hover {
    /* background-color: #ffffff !important; */
    /* color: #000000 !important; */
}

/* ==============================================================
-----------------------------------------------------------------
Adam assigned global styles (2025-07-24)
-----------------------------------------------------------------
============================================================== */


