:root {
    --colour-kanya-blue:        #004F65;
    --colour-kanya-blue2:       hsl(193, 100%, 20%);
    --colour-kanya-grey-blue:   #809C94;
    --colour-kanya-cream-light: #D4CEC4;
    --colour-kanya-salmon:      #EC6663;

    /* Todo: Refactor these Colours */
    --colour-kanya-blue-light:  #BDC6CF;
    --colour-main-copper:       #3B1708;
    --colour-main-copper-light: #D9B07E;

    --colour-white:             #FFFFFF;
    --colour-black:             #111111;
    --background-white:         --colour-white;
    --background-black:         rgba(12, 11, 9, .6);
}

.bg-kanya-blue {
    background-color: var(--colour-kanya-blue);
}

.bg-kanya-cream {
    background-color: var(--colour-kanya-cream-light);
}

.bg-kanya-blue-light {
    background-color: var(--colour-kanya-grey-blue);
}

.colour-grey-blue {
    color: var(--colour-kanya-grey-blue);
}

/*--------------------------------------------------------------
# Font Families
--------------------------------------------------------------*/
@font-face {
    font-family: "Gira Sans";
    src:         url("fonts/gira-sans/gira-sans-book.ttf") format("truetype");
}

@font-face {
    font-family: "Rocky Billy";
    src:         url("fonts/rocky-billy.ttf") format("truetype");
}

.font-rocky {
    font-family: "Rocky Billy", cursive;
}


/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
    font-family: "Gira Sans", sans-serif;
    background:  var(--background-white);
    color:       var(--colour-kanya-blue);
}

a {
    color:           var(--colour-main-copper);
    text-decoration: none;
}

a:hover {
    color:           var(--colour-main-copper-light);
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: "Gira Sans", serif;
    font-weight: bold;
}

.colour-dark {
    color: var(--colour-main-copper) !important;
}

.colour-light {
    color: var(--colour-main-copper-light) !important;
}

.text-balance {
    text-wrap: balance;
}

.lh-lg {
    line-height: 2.5 !important;
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
    position:   fixed;
    top:        0;
    left:       0;
    right:      0;
    bottom:     0;
    z-index:    9999;
    overflow:   hidden;
    background: #1A1814;
}

#preloader:before {
    content:             "";
    position:            fixed;
    top:                 calc(50% - 30px);
    left:                calc(50% - 30px);
    border:              6px solid #1A1814;
    border-top-color:    var(--colour-main-copper);
    border-bottom-color: var(--colour-main-copper);
    border-radius:       50%;
    width:               60px;
    height:              60px;
    -webkit-animation:   animate-preloader 1s linear infinite;
    animation:           animate-preloader 1s linear infinite;
}

@-webkit-keyframes animate-preloader {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes animate-preloader {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.btn-kanya-salmon {
    --bs-btn-border-radius: 2px;
    --bs-btn-border-color:  transparent;
    background:             var(--colour-kanya-salmon);
    color:                  var(--colour-white);
    transition:             all .4s ease;
}

.btn-kanya-salmon:hover {
    border-color:     var(--colour-kanya-salmon);
    background-color: var(--colour-white);

}

.btn-kanya-blue {
    --bs-btn-border-radius: 0;
    --bs-btn-border-color:  transparent;
    background:             var(--colour-kanya-blue);
    color:                  var(--colour-white);
}

.btn-kanya-blue-light {
    --bs-btn-border-radius: 0;
    --bs-btn-border-color:  transparent;
    background:             var(--colour-kanya-blue-light);
    color:                  var(--colour-white);
}

.btn-group-xl > .btn, .btn-xl {
    --bs-btn-padding-y:     0.75rem;
    --bs-btn-padding-x:     1.25rem;
    --bs-btn-font-size:     1.5rem;
    --bs-btn-border-radius: var(--bs-border-radius-lg);
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
    position:      fixed;
    visibility:    hidden;
    opacity:       0;
    right:         15px;
    bottom:        15px;
    z-index:       996;
    width:         44px;
    height:        44px;
    border-radius: 50px;
    transition:    all 0.4s;
    border:        2px solid var(--colour-kanya-blue);
}

.back-to-top i {
    font-size:   28px;
    color:       var(--colour-kanya-blue);
    line-height: 0;
}

.back-to-top:hover {
    background: var(--colour-kanya-blue-light);
    color:      var(--colour-white);
}

.back-to-top:hover i {
    color: var(--colour-white);
}

.back-to-top.active {
    visibility: visible;
    opacity:    1;
}

/*--------------------------------------------------------------
# Swiper
--------------------------------------------------------------*/

.swiper-button-next,
.swiper-button-prev {
    color: antiquewhite;
}

/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
    [data-aos-delay] {
        transition-delay: 0s !important;
    }
}

/*--------------------------------------------------------------
# Top Bar
--------------------------------------------------------------*/
#topbar {
    background-color: var(--colour-kanya-blue);
    height:           40px;
    font-size:        14px;
    line-height:      1em;
    transition:       all 0.5s;
    z-index:          996;
}

#topbar.topbar-scrolled {
    top: -40px;
}

#topbar .contact-info i {
    font-style: normal;
    color:      var(--colour-white);
}

#topbar .contact-info i a {
    color: var(--colour-kanya-blue-light);
}

#topbar .contact-info i a:hover {
    color: var(--colour-white);
}

#topbar .contact-info i span {
    padding-left: 5px;
    color:        var(--colour-kanya-blue-light);
}

#topbar .social-media ul {
    display:    flex;
    flex-wrap:  wrap;
    list-style: none;
    padding:    0;
    margin:     0;
    color:      var(--colour-kanya-blue-light);
    font-size:  20px;
}

#topbar .social-media ul a {
    color: var(--colour-kanya-blue-light);
}

#topbar .social-media ul a:hover {
    color: var(--colour-kanya-salmon);
}

#topbar .social-media ul li + li {
    padding-left: 10px;
}

#topbar .social-media ul li + li::before {
    display:       inline-block;
    padding-right: 10px;
    color:         rgba(255, 255, 255, 0.5);
    content:       "/";
}

.top-bar-shift {
    padding-top: 70px;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
#header {
    background: var(--background-white);
    transition: all 0.5s;

    z-index:    997;
    padding:    0;
}

header a[rel*="external"]::after {
    content:             "";
    width:               12px;
    height:              12px;
    margin-left:         5px;
    margin-bottom:       8px;
    background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z'/%3E%3Cpath fill-rule='evenodd' d='M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat:   no-repeat;
    background-size:     contain;
    display:             inline-block;
}

#header.header-scrolled {
    top:           0;
    background:    rgba(0, 0, 0, 0.85);
    border-bottom: 1px solid #37332A;

    #navbar-primary {
        padding-top:    0;
        padding-bottom: 0;
    }
}

#header #header-logo {
    -webkit-transition:  max-width .5s ease;
    transition:          max-width .5s ease;
    transition-behavior: allow-discrete;
}

/* Large Screen header */
@media (min-width: 992px) {
    .top-bar-shift {
        padding-top: 100px;
    }
}

.text-shadow {
    text-shadow: 0 0 15px rgba(0, 0, 0, 0.8);
}

/*--------------------------------------------------------------
# Book a table button Menu
--------------------------------------------------------------*/
.book-a-table-btn {
    margin:           0 0 0 15px;
    background-color: rgba(255, 255, 255, .2);
    border:           2px solid var(--colour-main-copper);
    color:            #FFFFFF;
    border-radius:    50px;
    padding:          8px 25px;
    text-transform:   uppercase;
    font-size:        13px;
    font-weight:      500;
    letter-spacing:   1px;
    transition:       0.3s;
}

.book-a-table-btn:hover {
    background: var(--colour-main-copper);
    color:      #FFFFFF;
}

@media (max-width: 992px) {
    .book-a-table-btn {
        margin:  0 15px 0 0;
        padding: 8px 20px;
    }
}

/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/**
* Desktop Navigation 
*/

#navbar-primary {
    background-image:    url("../template-images/background-blue-menu.jpg");
    background-size:     cover;
    background-position: top center;
    padding:             1em 2em;
    color:               var(--colour-kanya-cream-light);
}

.navbar {
    padding: 0;
}

.navbar ul {
    margin:      0;
    padding:     0;
    display:     flex;
    list-style:  none;
    align-items: center;
}

.navbar li {
    position: relative;
}

.navbar a:not(.btn),
.navbar a:focus:not(.btn) {
    padding:       10px 0;
    color:         var(--colour-white);
    white-space:   nowrap;
    transition:    0.3s;
    font-size:     1em;
    font-weight:   bold;
    border-bottom: 3px solid transparent;
}

.navbar a i,
.navbar a:focus i {
    font-size:   12px;
    line-height: 0;
    margin-left: 5px;
}

.navbar a.nav-link:hover,
.navbar .nav-link.active,
.navbar .nav-link.active:focus,
.navbar li:hover > a.nav-link {
    transition:    0.3s;
    color:         var(--colour-white);
    border-bottom: 3px solid var(--colour-kanya-salmon);
}

.navbar .btn-uber-eats {
    --bs-btn-padding-x: 0.75rem;
    --bs-btn-padding-y: 0.375rem;
    background:         var(--colour-kanya-salmon);
    color:              var(--colour-white);
    transition:         all .4s ease;

    &:hover {
        background: var(--colour-kanya-blue-light);
        color:      var(--colour-black);
    }
}

.navbar-brand {
    min-width: 50px;
}

@media (min-width: 992px) {
    .navbar-expand-lg .navbar-nav .nav-link {
        --bs-navbar-nav-link-padding-x: 0.25rem;
    }
}

.navbar-collapse.show {
    border-top: 1px solid var(--colour-white);
}

.navbar .dropdown ul {
    display:       block;
    position:      absolute;
    left:          14px;
    top:           calc(100% + 30px);
    margin:        0;
    padding:       10px 0;
    z-index:       99;
    opacity:       0;
    visibility:    hidden;
    background:    #FFFFFF;
    box-shadow:    0 0 30px rgba(127, 137, 161, 0.25);
    transition:    0.3s;
    border-radius: 4px;
}

.navbar .dropdown ul li {
    min-width: 200px;
}

.navbar .dropdown ul a {
    padding: 10px 20px;
    color:   #444444;
}

.navbar .dropdown ul a i {
    font-size: 12px;
}

.navbar .dropdown ul a:hover,
.navbar .dropdown ul .active:hover,
.navbar .dropdown ul li:hover > a {
    color: var(--colour-main-copper);
}

.navbar .dropdown:hover > ul {
    opacity:    1;
    top:        100%;
    visibility: visible;
}

.navbar .dropdown .dropdown ul {
    top:        0;
    left:       calc(100% - 30px);
    visibility: hidden;
}

.navbar .dropdown .dropdown:hover > ul {
    opacity:    1;
    top:        0;
    left:       100%;
    visibility: visible;
}

@media (max-width: 1366px) {
    .navbar .dropdown .dropdown ul {
        left: -90%;
    }

    .navbar .dropdown .dropdown:hover > ul {
        left: -100%;
    }
}

.navbar-toggler {
    line-height:                      1.5em;
    --bs-navbar-color:                var(--colour-white);
    --bs-navbar-toggler-border-color: var(--colour-white);
    background-color:                 rgba(255, 255, 255, .4);
}

/**
* Mobile Navigation 
*/
.mobile-nav-toggle {
    color:       #FFFFFF;
    font-size:   2rem;
    cursor:      pointer;
    display:     none;
    line-height: 0;
    transition:  0.5s;
}

@media (max-width: 991px) {
    .mobile-nav-toggle {
        display: block;
    }

    /*.navbar ul {*/
    /*    display: none;*/
    /*}*/
}

.navbar-mobile {
    position:   fixed;
    overflow:   hidden;
    top:        0;
    right:      0;
    left:       0;
    bottom:     0;
    background: rgba(0, 0, 0, 0.5);
    transition: 0.3s;
    z-index:    999;
}

.navbar-mobile .mobile-nav-toggle {
    position: absolute;
    top:      15px;
    right:    15px;
}

.navbar-mobile ul {
    display:          block;
    position:         absolute;
    top:              55px;
    right:            15px;
    bottom:           15px;
    left:             15px;
    padding:          10px 0;
    border-radius:    6px;
    background-color: var(--colour-main-copper-light);
    overflow-y:       auto;
    transition:       0.3s;
}

.navbar-mobile a,
.navbar-mobile a:focus {
    padding:         10px 20px;
    font-size:       2rem;
    color:           var(--colour-main-copper);
    justify-content: center;
}

.navbar-mobile .active {
    color:       var(--colour-main-copper);
    font-weight: bold;
}

.navbar-mobile a:hover,
.navbar-mobile li:hover > a {
    color:            var(--colour-main-copper-light);
    background-color: var(--colour-main-copper);
}

.navbar-mobile .dropdown ul {
    position:   static;
    display:    none;
    margin:     10px 20px;
    padding:    10px 0;
    z-index:    99;
    opacity:    1;
    visibility: visible;
    background: #FFFFFF;
    box-shadow: 0 0 30px rgba(127, 137, 161, 0.25);
}

.navbar-mobile .dropdown ul li {
    min-width: 200px;
}

.navbar-mobile .dropdown ul a {
    padding: 10px 20px;
}

.navbar-mobile .dropdown ul a i {
    font-size: 12px;
}

.navbar-mobile .dropdown ul a:hover,
.navbar-mobile .dropdown ul .active:hover,
.navbar-mobile .dropdown ul li:hover > a {
    color: var(--colour-main-copper);
}

.navbar-mobile .dropdown > .dropdown-active {
    display: block;
}

#header-blue {
    background-image:    url("../template-images/kanya-background3.png");
    background-size:     cover;
    background-position: center;
    padding:             1em 2em;
    color:               var(--colour-kanya-cream-light);

    h1 {
        font-size: 2em;
    }

}

/*--------------------------------------------------------------
# Home Hero Section
--------------------------------------------------------------*/
#home-hero .bg {
    width:           100%;
    min-height:      400px;
    position:        relative;
    display:         flex;
    align-items:     center;
    justify-content: center;
    outline:         1px solid red;

    .inner {
        padding:    2em 4em;
        text-align: center;
    }

    h2 {
        color:          #FFFFFF;
        text-transform: uppercase;
        font-size:      3em;
        text-align:     center;
        max-width:      50vw;
        margin-block:   1em;
        text-shadow:    0 0 15px rgba(0, 0, 0, 0.5);
    }

    .btn-white {
        background-color: rgba(255, 255, 255, 0.8);
        color:            var(--colour-kanya-grey-blue);

        &:hover {
            color:            var(--colour-kanya-blue);
            background-color: rgba(255, 255, 255, 0.4);
        }
    }
}

/* Create the parallax scrolling effect */
.parallax {
    background-attachment: fixed;
    background-position:   center;
    background-repeat:     no-repeat;
    background-size:       cover;
}

/* Turn off parallax scrolling for all tablets and phones. Increase/decrease the pixels if needed */
@media only screen and (max-device-width: 1366px) {
    .parallax {
        background-attachment: scroll;
    }
}

#home-intro {
    background-color: var(--colour-white);
    color:            var(--colour-kanya-blue);
    padding:          3em;

    .home-intro-inner {
        text-align: left;

    }
}


#section-cream,
#home-la-carte,
#home-brunch-lunch {

    color:            var(--colour-kanya-blue);
    background-color: var(--colour-kanya-cream-light);

    div[class*=' container'],
    div[class^='container'] {
        padding:             3em;
        background-image:    url("../template-images/kanya-swirls-transparent5.png");
        background-size:     cover;
        background-position: center;
    }

}


#section-blue,
#home-thali,
#home-afternoon-tea {
    color:            var(--colour-kanya-blue);
    background-color: var(--colour-kanya-blue-light);

    div[class*=' container'],
    div[class^='container'] {
        padding:             3em;
        background-image:    url("../template-images/kanya-swirls-transparent5.png");
        background-size:     cover;
        background-position: center;
    }
}

#home-newsletter {

    .newsletter-content {
        background-image: url("../template-images/kanya-background-newsletter.jpg");
        border:           4px solid var(--colour-kanya-grey-blue);
        margin-block:     2rem;
    }

}

@-webkit-keyframes pulsate-btn {
    0% {
        transform: scale(0.6, 0.6);
        opacity:   1;
    }

    100% {
        transform: scale(1, 1);
        opacity:   0;
    }
}

@keyframes pulsate-btn {
    0% {
        transform: scale(0.6, 0.6);
        opacity:   1;
    }

    100% {
        transform: scale(1, 1);
        opacity:   0;
    }
}


/*--------------------------------------------------------------
# Menu List
--------------------------------------------------------------*/

.list-menus {
    font-family:      "Gira Sans", sans-serif;
    font-size:        2em;
    text-align:       center;
    border:           3px double var(--colour-kanya-blue);
    margin-inline:    auto;
    background-color: rgba(255, 255, 255, .1);

    ul {
        list-style:    none;
        padding-top:   0;
        padding-left:  0;
        padding-block: .5em;
        margin-bottom: 0;
    }

    li {
        padding-block: 5px;
    }

    a {
        display:            block;
        padding-block:      10px;
        color:              var(--colour-kanya-blue);
        transition:         all .4s ease;
        -webkit-transition: all .4s ease;
    }

    a:hover {
        color:              var(--colour-kanya-blue);
        background:         var(--colour-kanya-blue-light);
        -webkit-box-shadow: 0 10px 10px 0 rgba(0, 0, 0, 0.5);
        -moz-box-shadow:    0 10px 10px 0 rgba(0, 0, 0, 0.5);
        box-shadow:         0 10px 10px 0 rgba(0, 0, 0, 0.5);
    }

    li.separator {
        min-height: 5px;
        border-top: 3px double var(--colour-kanya-blue);
    }

}

#info-faqs {

    h4 {
        text-wrap: balance;
    }

    dl {
        margin-inline-start:  1em;
        padding-inline-start: 1em;
        border-inline-start:  3px solid var(--colour-kanya-grey-blue);
    }

    dt {
        text-wrap: balance;
    }

    a {
        text-decoration: underline;

        &:hover {
            text-decoration: none;
            color:           var(--colour-kanya-blue);
        }
    }

    a[rel*="external"]::after {
        content:             "";
        width:               12px;
        height:              12px;
        margin-left:         5px;
        margin-bottom:       0;
        background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='black' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z'/%3E%3Cpath fill-rule='evenodd' d='M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z'/%3E%3C/svg%3E");
        background-position: center;
        background-repeat:   no-repeat;
        background-size:     contain;
        display:             inline-block;
    }

}

.events .btns {
    margin-top: 30px;
}

.events .btn-menu {
    font-weight:    600;
    font-size:      24px;
    letter-spacing: 1px;
    text-transform: uppercase;
    display:        inline-block;
    padding:        12px 30px;
    border-radius:  50px;
    transition:     0.3s;
    line-height:    1;
    background:     var(--background-black);
    color:          var(--colour-main-copper-light);
    border:         2px solid var(--colour-main-copper);
}

.events .btn-menu:hover {
    background: var(--colour-main-copper);
    color:      #FFFFFF;
}


/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/
section {
    padding:  0;
    overflow: hidden;
}

.section-bg {
    background-color: #1A1814;
}

.section-title {
    padding-bottom: 40px;
}

.section-title h1 {
    font-family: "Gira Sans", sans-serif;
    font-size:   60px;
    padding:     0;
    margin:      20px 0;
    color:       var(--colour-main-copper-light);
}

.section-title h1::after {
    content:    "";
    width:      120px;
    height:     1px;
    display:    inline-block;
    background: var(--colour-main-copper-light);
    margin:     4px 10px 8px 10px;
}

.section-title h2 {
    font-size:      14px;
    font-weight:    500;
    padding:        0;
    line-height:    1px;
    margin:         0 0 5px 0;
    letter-spacing: 2px;
    text-transform: uppercase;
    color:          #AAAAAA;
    font-family:    "Gira Sans", serif;
}

.section-title h2::after {
    content:    "";
    width:      120px;
    height:     1px;
    display:    inline-block;
    background: rgba(255, 255, 255, 0.2);
    margin:     4px 10px;
}

.section-title p {
    margin:      0;
    font-size:   36px;
    font-weight: 700;
    font-family: "Gira Sans", serif;
    color:       var(--colour-main-copper);
}

/*--------------------------------------------------------------
# Home Hero Section
--------------------------------------------------------------*/
#section-hero .bg {
    width:               100%;
    background-position: center;
    background-size:     cover;
    min-height:          200px;
    position:            relative;
    display:             flex;
    align-items:         center;
    justify-content:     center;

    .inner {
        padding:    2em 4em;
        text-align: center;
        background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 30%, rgba(0, 0, 0, 0.4) 70%, rgba(0, 0, 0, 0) 100%);
    }

    h2 {
        color:          #FFFFFF;
        text-transform: uppercase;
        font-size:      3em;
        text-align:     center;
        max-width:      80vw;
        margin-block:   1em;
        text-shadow:    0 0 15px rgba(0, 0, 0, 0.8);
    }

}

@media (max-width: 992px) {
    #section-hero .bg {
        min-height: 200px;

        h2 {
            font-size: 2em;
            max-width: 70vw;
        }
    }
}

/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs {
    padding:    15px 0;
    background: #1D1B16;
    margin-top: 110px;
}

@media (max-width: 992px) {
    .breadcrumbs {
        margin-top: 98px;
    }
}

.breadcrumbs h2 {
    font-size:   26px;
    font-weight: 300;
}

.breadcrumbs ol {
    display:    flex;
    flex-wrap:  wrap;
    list-style: none;
    padding:    0;
    margin:     0;
    font-size:  14px;
}

.breadcrumbs ol li + li {
    padding-left: 10px;
}

.breadcrumbs ol li + li::before {
    display:       inline-block;
    padding-right: 10px;
    color:         #37332A;
    content:       "/";
}

@media (max-width: 768px) {
    .breadcrumbs .d-flex {
        display: block !important;
    }

    .breadcrumbs ol {
        display: block;
    }

    .breadcrumbs ol li {
        display: inline-block;
    }
}


/*--------------------------------------------------------------
# Gallery
--------------------------------------------------------------*/
.gallery .gallery-item {
    outline:        1px solid rgba(255, 255, 255, .7);
    outline-offset: -4px;
}


/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info {
    width: 100%;
}

.contact .info i {
    font-size:       20px;
    float:           left;
    width:           44px;
    height:          44px;
    background:      var(--colour-main-copper);
    display:         flex;
    justify-content: center;
    align-items:     center;
    border-radius:   50px;
    transition:      all 0.3s ease-in-out;
}

.contact .info h4 {
    padding:       0 0 0 60px;
    font-size:     18px;
    font-weight:   500;
    margin-bottom: 5px;
    font-family:   "Gira Sans", sans-serif;
}

.contact .info p {
    padding:       0 0 0 60px;
    margin-bottom: 0;
    font-size:     14px;
    color:         #BAB3A6;
}

.contact .info .open-hours,
.contact .info .email,
.contact .info .phone {
    margin-top: 40px;
}

.contact .php-email-form {
    width: 100%;
}

.contact .php-email-form .form-group {
    padding-bottom: 8px;
}

.contact .php-email-form .validate {
    display:     none;
    color:       red;
    margin:      0 0 15px 0;
    font-weight: 400;
    font-size:   13px;
}

.contact .php-email-form .error-message {
    display:     none;
    color:       #FFFFFF;
    background:  #ED3C0D;
    text-align:  center;
    padding:     15px;
    font-weight: 600;
}

.contact .php-email-form .sent-message {
    display:     none;
    color:       #FFFFFF;
    background:  #18D26E;
    text-align:  center;
    padding:     15px;
    font-weight: 600;
}

.contact .php-email-form .loading {
    display:    none;
    text-align: center;
    padding:    15px;
}

.contact .php-email-form .loading:before {
    content:           "";
    display:           inline-block;
    border-radius:     50%;
    width:             24px;
    height:            24px;
    margin:            0 10px -6px 0;
    border:            3px solid var(--colour-main-copper);
    border-top-color:  #1A1814;
    -webkit-animation: animate-loading 1s linear infinite;
    animation:         animate-loading 1s linear infinite;
}

.contact .php-email-form input,
.contact .php-email-form textarea {
    border-radius: 0;
    box-shadow:    none;
    font-size:     14px;
    background:    #0C0B09;
    border-color:  #625B4B;
    color:         white;
}

.contact .php-email-form input::-moz-placeholder,
.contact .php-email-form textarea::-moz-placeholder {
    color: #A49B89;
}

.contact .php-email-form input::placeholder,
.contact .php-email-form textarea::placeholder {
    color: #A49B89;
}

.contact .php-email-form input:focus,
.contact .php-email-form textarea:focus {
    border-color: var(--colour-main-copper);
}

.contact .php-email-form input {
    height: 44px;
}

.contact .php-email-form textarea {
    padding: 10px 12px;
}

.contact .php-email-form button[type=submit] {
    background:    var(--colour-main-copper);
    border:        0;
    padding:       10px 35px;
    color:         #FFFFFF;
    transition:    0.4s;
    border-radius: 50px;
}

.contact .php-email-form button[type=submit]:hover {
    background: #D3AF71;
}

@-webkit-keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

@keyframes animate-loading {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
    background-image: url("../template-images/background-footer.jpg");
    background-size:  cover;
    /*background-color: var(--colour-white);*/
    color:            var(--colour-kanya-blue);
    padding:          0 0 30px 0;
    font-size:        14px;
}

footer a[rel*="external"]::after {
    content:             "";
    width:               12px;
    height:              12px;
    margin-left:         5px;
    margin-bottom:       0;
    background-image:    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='black' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z'/%3E%3Cpath fill-rule='evenodd' d='M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat:   no-repeat;
    background-size:     contain;
    display:             inline-block;
}

#footer .footer-top {
    background-color: inherit;
    border-top:       1px solid var(--colour-kanya-grey-blue);
    border-bottom:    1px solid var(--colour-kanya-grey-blue);
    padding:          3em 0;
}

#footer .footer-top .footer-info {
    margin-bottom: 30px;
}

#footer .footer-top .footer-info h3 {
    color:          var(--colour-kanya-grey-blue);
    font-size:      24px;
    margin:         0 0 20px 0;
    padding:        2px 0 2px 0;
    line-height:    1;
    font-weight:    300;
    text-transform: uppercase;
    font-family:    "Gira Sans", sans-serif;
}

#footer .footer-top .footer-info p {
    font-size:     14px;
    line-height:   24px;
    margin-bottom: 0;
    font-family:   "Gira Sans", serif;
    color:         #FFFFFF;
}

#footer .footer-top .footer-info a {
    color: var(--colour-kanya-blue);
}

#footer .footer-top .footer-info a:hover {
    color: var(--colour-kanya-grey-blue);
}

#footer .footer-top .social-links a {
    font-size:     20px;
    display:       inline-block;
    background:    var(--colour-kanya-blue);
    color:         #FFFFFF;
    line-height:   1;
    padding:       8px 0;
    margin-right:  4px;
    border-radius: 50%;
    text-align:    center;
    width:         36px;
    height:        36px;
    transition:    0.3s;
}

#footer .footer-top .social-links a:hover {
    background:      var(--colour-kanya-blue-light);
    color:           #FFFFFF;
    text-decoration: none;
}

#footer .footer-top h4 {
    position:       relative;
    color:          var(--colour-kanya-blue);
    font-size:      2em;
    padding-bottom: .5em;
    margin-bottom:  1em;
    border-bottom:  1px solid var(--colour-kanya-grey-blue);
}

#footer .footer-top .footer-links {
    margin-bottom: 30px;
}

#footer .footer-top .footer-links ul {
    list-style:  none;
    padding:     0;
    margin:      0;
    line-height: 1;
}

#footer .footer-top .footer-links ul i {
    padding-right: 2px;
    color:         var(--colour-kanya-grey-blue);
    font-size:     18px;
}

#footer .footer-top .footer-links ul li {
    padding:     8px 0;
    display:     flex;
    align-items: center;
}

#footer .footer-top .footer-links ul li:first-child {
    padding-top: 0;
}

#footer .footer-top .footer-links ul a {
    color:       var(--colour-kanya-blue);
    transition:  0.3s;
    display:     inline-block;
    line-height: 1;
}

#footer .footer-top .footer-links ul a:hover {
    color: var(--colour-kanya-grey-blue);
}

#footer .copyright {
    text-align:  center;
    padding-top: 30px;
}

#footer a.cd {
    color: var(--colour-kanya-blue);
}

#footer a:hover.cd {
    color: #FF9600;
}

#footer #opening-times span {
    padding-right: 5px;
    min-width:     11ch;
}

/*--------------------------------------------------------------
# Open Table Reservation Widget
--------------------------------------------------------------*/
#ot-reservation-widget {

    .ot-dtp-picker {
        background: var(--colour-kanya-blue-light) !important;
    }

    .ot-button {
        background-color: var(--colour-kanya-blue);
        color:            var(--colour-white);
    }

}

/*--------------------------------------------------------------
# K Hospitality Logos
--------------------------------------------------------------*/
#khospitality {

    padding: 80px 0;

    figure.image img {
        display:                            block;
        margin-inline:                      auto;
        max-width:                          min(250px, 100%);
        cursor:                             pointer;
        -webkit-transition-property:        all;
        -webkit-transition-duration:        0.3s;
        -webkit-transition-timing-function: ease;

        &:hover {
            transform: scale(1.1);
        }
    }

}

/*--------------------------------------------------------------
# Mail Chimp Forms
--------------------------------------------------------------*/
#mc_embed_signup {
    font:  14px Helvetica, Arial, sans-serif;
    width: 100%;
}

#mc_embed_signup form {
    margin-left: 0 !important;
}

#mc-embedded-subscribe-form input[type=checkbox] {
    display:      inline;
    width:        auto;
    margin-right: 10px;
}

#mc-embedded-subscribe-form .mc_fieldset {
    border:         none;
    min-height:     0;
    padding-bottom: 0;
}

/*--------------------------------------------------------------
# Card overlays
--------------------------------------------------------------*/

.card-img-inner {
    background-color: rgba(255, 255, 255, 0.75);
    padding:          1em;

    h2 {
        font-family:    'Gira Sans', sans-serif;
        letter-spacing: 2px;
    }

    h5 {
        font-family:   'Rocky Billy', cursive;
        font-size:     1.5em;
        line-height:   2.2;
        padding-block: 1em;
    }

    p.card-text {
        font-size:     1.1em;
        line-height:   2;
        font-family:   'Gira Sans', sans-serif;
    }
}

/*--------------------------------------------------------------
# Mobile First
--------------------------------------------------------------*/
#header #header-logo {
    max-width: 150px;
}

/*--------------------------------------------------------------
# Small Screens - Bootstrap SM
--------------------------------------------------------------*/
@media (min-width: 576px) {

}

/*--------------------------------------------------------------
# Medium Screens - Bootstrap MD
--------------------------------------------------------------*/
@media (min-width: 768px) {
    #header #header-logo {
        max-width: unset;
    }
}

/*--------------------------------------------------------------
# Larger Screens - Bootstrap LG
--------------------------------------------------------------*/
@media (min-width: 992px) {

    .card-img-inner {
        padding: 5em;
        width:   50%;
    }

    .card-img-inner {
        & h5 {
            font-size:     2em;
            line-height:   2.5;
            padding-block: 1em;
        }
    }

}