/*--------------------------------------------------------------
# General Styling & Shared Classes
--------------------------------------------------------------*/

*, 
*::before, 
*::after {
    box-sizing: border-box;
}

::-webkit-scrollbar {
    width: 0;
    height: 0;
}

html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
     scroll-behavior: smooth;
     scrollbar-width: none;
}

body {
    margin: 0;
    margin: 0;
    color: var(--default-color);
    background-color: var(--background-color);
    font-family: var(--default-font);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote {
    margin: 0;
}

ul,
ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

img {
    height: auto;
}

button,
input,
textarea,
select {
    font: inherit;
}

button,
input,
textarea,
select {
    margin: 0;
    font: inherit;
}

a {
    color: var(--accent-color);
    text-decoration: none;
    border: 0;
    outline: 0;
    transition: color 0.3s;
}

a:hover {
    color: color-mix(
        in srgb,
        var(--accent-color),
        transparent 25%
    );
}
a:focus{
    outline: 0;
    outline-offset: 2px;
    border: 0;
}

a:focus-visible {
    outline: 0;
    outline-offset: 2px;
    border: 0;
}

button {
    cursor: pointer;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/*--------------------------------------------------------------
# Global General
--------------------------------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6{
  margin-top: 0;
  font-family: var(--heading-font);
  color: var(--heading-color);
  font-weight: 600;
  line-height: 1.2;
}

h1 {
    font-size: clamp(2rem, 3.5vw + 1rem, 3rem);
    line-height: 1.15;
}

h2 {
    font-size: clamp(1.75rem, 3vw + 0.75rem, 2.5rem);
    line-height: 1.2;
}

h3 {
    font-size: clamp(1.5rem, 2.5vw + 0.75rem, 2rem);
    line-height: 1.25;
}

h4 {
    font-size: clamp(1.3125rem, 1.8vw + 0.75rem, 1.625rem);
    line-height: 1.3;
}

h5 {
    font-size: clamp(1.125rem, 1.2vw + 0.75rem, 1.375rem);
    line-height: 1.35;
}

h6 {
    font-size: clamp(1rem, 0.8vw + 0.75rem, 1.125rem);
    line-height: 1.4;
}

p{
  font-size: 1rem;
  line-height: 1.75;
  color: color-mix(in srgb, var(--default-color), transparent 20%);
  margin-bottom: 10px;
  font-family: var(--default-font);
}

/*--------------------------------------------------------------
# Global Header
--------------------------------------------------------------*/
.header {
  transition: all 0.5s;
  z-index: 99999;
  background-color: var(--background-color);
}

.sticky-top {
    position: sticky;
    top: 0;
    z-index: 1020;
}

.header .branding {
  
background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(255,255,255,0) 100%); 

  min-height: 60px;
  padding: 10px 0;
}

.header .logo {
  line-height: 1;
}

.header .logo img {
  max-height: 60px;
  margin-right: 15px;
   transition: all 0.5s;
  
}

.header  .sitename {
  font-size: 35px;
  margin: 0;
  font-weight: 600;
  letter-spacing: -1px;
  font-family: var(--heading-font);
  color: var(--heading-color);
}

.header .sitename span {
  color: var(--primary-color);
}

.scrolled .header {
  box-shadow: 0px 0 18px rgba(0, 0, 0, 0.1);
}

.scrolled .header .logo img {
  max-height: 40px;
}

.scrolled  .header  .sitename {
  font-size: 28px;
}

.top-socials a{
  display: inline-block;
  margin: 0 2px;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
}

.top-socials .linkedin{
  background: #0A66C2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M0 1.146C0 .513.526 0 1.175 0h13.65C15.474 0 16 .513 16 1.146v13.708c0 .633-.526 1.146-1.175 1.146H1.175C.526 16 0 15.487 0 14.854zm4.943 12.248V6.169H2.542v7.225zm-1.2-8.212c.837 0 1.358-.554 1.358-1.248-.015-.709-.52-1.248-1.342-1.248S2.4 3.226 2.4 3.934c0 .694.521 1.248 1.327 1.248zm4.908 8.212V9.359c0-.216.016-.432.08-.586.173-.431.568-.878 1.232-.878.869 0 1.216.662 1.216 1.634v3.865h2.401V9.25c0-2.22-1.184-3.252-2.764-3.252-1.274 0-1.845.7-2.165 1.193v.025h-.016l.016-.025V6.169h-2.4c.03.678 0 7.225 0 7.225z'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

.top-socials .twitter{
  background: #222222 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M12.6 .75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

.top-socials .facebook{
  background: #1877f2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M16 8.049c0-4.446-3.582-8.05-8-8.05C3.58 0-.002 3.603-.002 8.05c0 4.017 2.926 7.347 6.75 7.951v-5.625h-2.03V8.05H6.75V6.275c0-2.017 1.195-3.131 3.022-3.131.876 0 1.791.157 1.791.157v1.98h-1.009c-.993 0-1.303.621-1.303 1.258v1.51h2.218l-.354 2.326H9.25V16c3.824-.604 6.75-3.934 6.75-7.951'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

.top-socials .instagram{
  background: #E1306C url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M8 0C5.829 0 5.556.01 4.703.048 3.85.088 3.269.222 2.76.42a3.9 3.9 0 0 0-1.417.923A3.9 3.9 0 0 0 .42 2.76C.222 3.268.087 3.85.048 4.7.01 5.555 0 5.827 0 8.001c0 2.172.01 2.444.048 3.297.04.852.174 1.433.372 1.942.205.526.478.972.923 1.417.444.445.89.719 1.416.923.51.198 1.09.333 1.942.372C5.555 15.99 5.827 16 8 16s2.444-.01 3.298-.048c.851-.04 1.434-.174 1.943-.372a3.9 3.9 0 0 0 1.416-.923c.445-.445.718-.891.923-1.417.197-.509.332-1.09.372-1.942C15.99 10.445 16 10.173 16 8s-.01-2.445-.048-3.299c-.04-.851-.175-1.433-.372-1.941a3.9 3.9 0 0 0-.923-1.417A3.9 3.9 0 0 0 13.24.42c-.51-.198-1.092-.333-1.943-.372C10.443.01 10.172 0 7.998 0zm-.717 1.442h.718c2.136 0 2.389.007 3.232.046.78.035 1.204.166 1.486.275.373.145.64.319.92.599s.453.546.598.92c.11.281.24.705.275 1.485.039.843.047 1.096.047 3.231s-.008 2.389-.047 3.232c-.035.78-.166 1.203-.275 1.485a2.5 2.5 0 0 1-.599.919c-.28.28-.546.453-.92.598-.28.11-.704.24-1.485.276-.843.038-1.096.047-3.232.047s-2.39-.009-3.233-.047c-.78-.036-1.203-.166-1.485-.276a2.5 2.5 0 0 1-.92-.598 2.5 2.5 0 0 1-.6-.92c-.109-.281-.24-.705-.275-1.485-.038-.843-.046-1.096-.046-3.233s.008-2.388.046-3.231c.036-.78.166-1.204.276-1.486.145-.373.319-.64.599-.92s.546-.453.92-.598c.282-.11.705-.24 1.485-.276.738-.034 1.024-.044 2.515-.045zm4.988 1.328a.96.96 0 1 0 0 1.92.96.96 0 0 0 0-1.92m-4.27 1.122a4.109 4.109 0 1 0 0 8.217 4.109 4.109 0 0 0 0-8.217m0 1.441a2.667 2.667 0 1 1 0 5.334 2.667 2.667 0 0 1 0-5.334'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

.top-socials .youtube{
   background: #FF0000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23fff' d='M8.051 1.999h.089c.822.003 4.987.033 6.11.335a2.01 2.01 0 0 1 1.415 1.42c.101.38.172.883.22 1.402l.01.104.022.26.008.104c.065.914.073 1.77.074 1.957v.075c-.001.194-.01 1.108-.082 2.06l-.008.105-.009.104c-.05.572-.124 1.14-.235 1.558a2.01 2.01 0 0 1-1.415 1.42c-1.16.312-5.569.334-6.18.335h-.142c-.309 0-1.587-.006-2.927-.052l-.17-.006-.087-.004-.171-.007-.171-.007c-1.11-.049-2.167-.128-2.654-.26a2.01 2.01 0 0 1-1.415-1.419c-.111-.417-.185-.986-.235-1.558L.09 9.82l-.008-.104A31 31 0 0 1 0 7.68v-.123c.002-.215.01-.958.064-1.778l.007-.103.003-.052.008-.104.022-.26.01-.104c.048-.519.119-1.023.22-1.402a2.01 2.01 0 0 1 1.415-1.42c.487-.13 1.544-.21 2.654-.26l.17-.007.172-.006.086-.003.171-.007A100 100 0 0 1 7.858 2zM6.4 5.209v4.818l4.157-2.408z'/%3E%3C/svg%3E") center / 12px 12px no-repeat;
}

/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/

.menu-wrapper{
  border-top: 2px solid var(--secondary-color);
  background-color: #252d22;
}

/* Navmenu - Desktop */
@media (min-width: 1200px) {
  .navmenu {
    padding: 0;
  }

  .navmenu ul {
    margin: 0;
    padding: 0;
    display: flex;
    list-style: none;
    align-items: center;
  }

  .navmenu li {
    position: relative;
  }

  .navmenu a,
  .navmenu a:focus {
    position: relative;
    color: var(--nav-color);
    padding: 15px 20px;
    font-size: 18px;
    font-family: var(--nav-font);
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    white-space: nowrap;
    transition: 0.3s;
     overflow: hidden;
    isolation: isolate;
  }

  .navmenu a i,
  .navmenu a:focus i {
    font-size: 12px;
    line-height: 0;
    margin-left: 5px;
    transition: 0.3s;
  }

  .navmenu a::before {
    content: "";
    position: absolute;
    inset: 0;
    background-color: var(--secondary-color);
    transform: scaleY(0);
    transform-origin: top;
    border-radius: 0  0 5px 5px;
    transition: transform 0.3s ease;
    z-index: -1;
  }

  .navmenu a:hover::before {
      transform: scaleY(1);
  }

    
  .navmenu .current_page_item a,
  .navmenu .current_page_item a:focus {
    color: var(--nav-hover-color);
    background-color: var(--secondary-color);
    
  }

  .navmenu .dropdown ul {
    margin: 0;
    padding: 10px 0;
    background: var(--nav-dropdown-background-color);
    display: block;
    position: absolute;
    visibility: hidden;
    left: 14px;
    top: 130%;
    opacity: 0;
    transition: 0.3s;
    border-radius: 4px;
    z-index: 99;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
  }

  .navmenu .dropdown ul li {
    min-width: 200px;
  }

  .navmenu .dropdown ul a {
    padding: 10px 20px;
    font-size: 15px;
    text-transform: none;
    color: var(--nav-dropdown-color);
  }

  .navmenu .dropdown ul a i {
    font-size: 12px;
  }

  .navmenu .dropdown ul a:hover,
  .navmenu .dropdown ul .current_page_item a:hover,
  .navmenu .dropdown ul li:hover>a {
    color: #ffffff;
  }

  .navmenu .dropdown:hover>ul {
    opacity: 1;
    top: 100%;
    visibility: visible;
  }

  .navmenu .dropdown .dropdown ul {
    top: 0;
    left: calc(100% - 30px);
    visibility: hidden;
  }

  .navmenu .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%;
  }
}

/* Navmenu - Mobile */
@media (max-width: 1199px) {
  .mobile-nav-toggle {
    width: 40px;
    height: 40px;
    line-height: 0;
    position: fixed;
    top: 12px;
    right: 15px;
    z-index: 9999;
    border: 1px solid #e2e2e2;
    padding: 0 5px;
    border-radius: 5px;
    cursor: pointer;
    box-shadow: rgba(0,0,0,.24) 0 3px 8px;
    transition: color .3s;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 20px;
  }

  .mobile-nav-toggle:focus {
    outline: 0;
  }

  .menu-open {
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5m0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5'/%3E%3C/svg%3E");
  }

  .menu-close {
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708'/%3E%3C/svg%3E");
}

  .navmenu {
    padding: 0;
    z-index: 9997;
  }

  .navmenu ul {    
    list-style: none;
    position: absolute;
    inset:0;
    padding: 60px 20px 20px 20px; 
    width: 75%;
    margin: 0;
    background-color: #ffffff;
    overflow-y: auto;
    transition: 0.3s;
    z-index: 9998;
    box-shadow: 0px 0px 30px rgba(0, 0, 0, 0.1);
  }

  .navmenu ul::before {
    content: "KKS Thai Food & BBQ";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 60px;
    background: var(--primary-color);
    color: #ffffff;
    font-size: 20px;
    font-weight: 600;
    padding: 20px;
    pointer-events: none;
  }

  .navmenu ul > li:first-child {
    padding-top:20px!important;
    border-top: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  }

  .navmenu a,
  .navmenu a:focus {
    color: var(--default-color);
    padding: 10px 20px;
    font-family: var(--nav-font);
    font-size: 17px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: space-between;
    white-space: nowrap;
    transition: 0.3s;
    border-bottom: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
  }

  .navmenu a i,
  .navmenu a:focus i {
    font-size: 12px;
    line-height: 0;
    margin-left: 5px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: 0.3s;
    background-color: color-mix(in srgb, var(--accent-color), transparent 90%);
  }

  .navmenu a i:hover,
  .navmenu a:focus i:hover {
    background-color: var(--accent-color);
    color: var(--contrast-color);
  }

  .navmenu a:hover,
  .navmenu .current_page_item a,
  .navmenu .current_page_item a:focus {
    color: var(--primary-color);
  }

  .navmenu .active i,
  .navmenu .active:focus i {
    background-color: var(--accent-color);
    color: var(--contrast-color);
    transform: rotate(180deg);
  }

  .navmenu .dropdown ul {
    position: static;
    display: none;
    z-index: 99;
    padding: 10px 0;
    margin: 10px 20px;
    background-color: var(--nav-dropdown-background-color);
    border: 1px solid color-mix(in srgb, var(--default-color), transparent 90%);
    box-shadow: none;
    transition: all 0.5s ease-in-out;
  }

  .navmenu .dropdown ul ul {
    background-color: rgba(33, 37, 41, 0.1);
  }

  .navmenu .dropdown>.dropdown-active {
    display: block;
    background-color: rgba(33, 37, 41, 0.03);
  }

  .mobile-nav-active .navmenu {
    left:0;
  }

  .navmenu{
    position: fixed;
    top:0;
    left:-100%;
    right:0;
    bottom:0;
    width: 100%;
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
    transition: all 0.3s ease-in-out;
  }
  
  
 
}



/*--------------------------------------------------------------
# Global Footer
--------------------------------------------------------------*/
.footer {
    padding-top: 60px;
  background-color:var(--primary-color);
  color: #fff;
  font-size: 14px;
  position: relative;
}

.footer .copyright {
  padding: 20px 0;
  border-top: 1px solid rgba(255,255,255,0.3);
}

.footer .copyright p {
  font-size: 0.9rem;
  margin-bottom: 0;
  color: rgba(255, 255, 255, 0.6);
}

.footer .copyright span{
  font-weight: 700;
}

.footer .credits{
  color: #ff7448;
}

.footer-container{
  padding: 60px 0 40px;
}

.footer .footer-links h4 {
  color: #2496bc;
  font-size: 1.2rem;
  font-weight: 600;
  position: relative;
  padding-bottom: 7px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  margin-bottom: 20px;
}

.footer .footer-links p{
  font-size: 0.9rem;
  color: rgba(255, 255, 255, 0.6);
}


.footer .footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer .footer-links ul li a {
  padding: 5px 0;
  display: flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.2;
}

.footer .footer-links ul li svg{
  fill: var(--secondary-color);
  height: 12px;
}

.footer .footer-links ul li span{
  margin-left: 5px; 
}


.footer .footer-links ul li:first-child {
  padding-top: 0;
}

/*--------------------------------------------------------------
# Scroll Top Button
--------------------------------------------------------------*/
.scroll-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 99999;
  background-color: var(--primary-color);
  width: 40px;
  height: 40px;
  border-radius: 4px;
  transition: all 0.4s;
}

.scroll-top i {
  font-size: 24px;
  color: #ffffff;
  line-height: 0;
}

.scroll-top:hover {
  background-color: color-mix(in srgb, var(--primary-color), transparent 20%);
  color: var(--contrast-color);
}

.scroll-top.active {
  visibility: visible;
  opacity: 1;
}

/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}

.hero-banner{
  max-width: 100%;  
}

.slide-bg{
    position:absolute;
    inset:0;
    background-position:center;
    background-size:cover;
    background-repeat:no-repeat;
    transform:scale(1);
    animation:none;
}

@keyframes kenburns{
  0%{
      transform:scale(1);
  }
  100%{
      transform:scale(1.15);
  }
}

.swiper-slide-active .slide-bg{
  animation:kenburns 8s linear forwards;
}


/* Tablet */
@media (max-width: 991px) {
  .header .logo img {
    max-height: 40px!important;
  }
  .sitename, .top-socials{
    display: none!important;
  }

  .footer-links{
    margin-bottom: 30px;
  }

  .wp-block-itblocks-button{
    margin-bottom: 20px;
  }

  .header .top-socials{
    display:none;
  }
}

/* Mobile */
@media (max-width: 767px) {
}

/* Small mobile */
@media (max-width: 575px) {
 
}

.responsive-video {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 9;
}

.responsive-video iframe {
    width: 100%;
    height: 100%;
    border: 0;
}