/* ---------- liquid glass header (desktop) ---------- */
@media(min-width:901px){
.site-header .header-inner{
  position:relative;isolation:isolate;overflow:hidden;
}
.site-header .header-inner > :not(.glass-shine){position:relative;z-index:1}
.site-header .header-inner::before,
.site-header .header-inner::after{
  content:"";position:absolute;pointer-events:none;border-radius:inherit;
  opacity:0;transition:opacity .45s ease;
}
.site-header .header-inner::before{
  inset:0;padding:1px;
  background:linear-gradient(
    125deg,
    rgba(255,255,255,0.95) 0%,
    rgba(255,255,255,0.14) 34%,
    rgba(255,255,255,0.04) 56%,
    rgba(255,255,255,0.24) 78%,
    rgba(255,255,255,0.58) 100%
  );
  -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
}
.site-header .header-inner::after{
  inset:0;
  background:
    radial-gradient(ellipse 85% 55% at 50% -10%,rgba(255,255,255,0.82) 0%,transparent 58%),
    linear-gradient(180deg,rgba(255,255,255,0.28) 0%,transparent 42%);
}
.site-header.scrolled .header-inner::before,
.site-header.scrolled .header-inner::after{opacity:1}
.site-header.scrolled .header-inner{
  background:rgba(255,255,255,0.38)!important;
  -webkit-backdrop-filter:blur(30px) saturate(2.1) brightness(1.06);
  backdrop-filter:blur(30px) saturate(2.1) brightness(1.06);
  box-shadow:
    0 12px 44px rgba(35,34,32,0.11),
    0 2px 10px rgba(35,34,32,0.05),
    inset 0 1px 1px rgba(255,255,255,0.92),
    inset 0 -1px 0 rgba(255,255,255,0.28)!important;
}
.glass-shine{
  position:absolute;top:0;left:0;width:42%;height:100%;
  background:linear-gradient(
    90deg,
    transparent 0%,
    rgba(255,255,255,0.22) 44%,
    rgba(255,255,255,0.5) 50%,
    rgba(255,255,255,0.22) 56%,
    transparent 100%
  );
  pointer-events:none;z-index:0;opacity:0;
  transition:opacity .45s ease;
}
.site-header.scrolled .glass-shine{opacity:1}
@keyframes glass-shimmer{
  0%{transform:translateX(-130%) skewX(-14deg)}
  100%{transform:translateX(240%) skewX(-14deg)}
}
.site-header.scrolled .glass-shine{animation:glass-shimmer 5s ease-in-out infinite}
}

/* desktop: hide mobile menu */
.menu-toggle,.mobile-menu{display:none}

/* ---------- mobile sticky menu ---------- */
@media(max-width:900px){
  .site-header,
  .site-header.scrolled{
    padding:14px 20px 0;
    background:transparent;
    border-bottom:none;
    box-shadow:none;
    transition:none;
    z-index:80;
  }
  body.menu-open .site-header{
    z-index:110;
    background:transparent;
    border-bottom:none;
    box-shadow:none;
  }
  body.menu-open .site-header .header-inner,
  body.menu-open .site-header.scrolled .header-inner{
    position:relative;
    z-index:111;
    background:#DB660D!important;
    border-color:transparent!important;
    box-shadow:none!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
  }
  .site-header .header-inner,
  .site-header.scrolled .header-inner{
    max-width:none;
    padding:10px 14px 10px 12px;
    border-radius:100px;
    background:rgba(255,255,255,0.97)!important;
    border:1px solid rgba(35,34,32,0.08);
    box-shadow:0 4px 22px rgba(35,34,32,0.1)!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    overflow:visible;
  }
  .site-header .header-inner::before,
  .site-header .header-inner::after,
  .site-header .glass-shine,
  .site-header.scrolled .header-inner::before,
  .site-header.scrolled .header-inner::after,
  .site-header.scrolled .glass-shine{
    display:none!important;
  }
  .brand{padding-left:4px}
  .brand img{width:36px}
  .nav-cta{display:none}

  .menu-toggle{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:5px;
    width:40px;
    height:40px;
    margin-left:auto;
    margin-right:2px;
    padding:0;
    border:none;
    background:transparent;
    cursor:pointer;
    border-radius:50%;
    -webkit-tap-highlight-color:transparent;
  }
  .menu-toggle-bar{
    display:block;
    width:22px;
    height:2px;
    background:#232220;
    border-radius:2px;
    transition:transform .28s ease,opacity .28s ease;
  }
  body.menu-open .menu-toggle-bar{background:#fff}
  body.menu-open .menu-toggle-bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
  body.menu-open .menu-toggle-bar:nth-child(2){opacity:0}
  body.menu-open .menu-toggle-bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  .mobile-menu{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:36px;
    position:fixed;
    inset:0;
    width:100%;
    height:100dvh;
    background:#DB660D;
    padding:80px 32px 48px;
    text-align:center;
    opacity:0;
    visibility:hidden;
    transition:opacity .32s ease,visibility .32s ease;
    z-index:100;
    overflow-y:auto;
  }
  body.menu-open .mobile-menu{
    opacity:1;
    visibility:visible;
  }
  body.menu-open{overflow:hidden}

  .mobile-menu-list{
    list-style:none;
    margin:0;
    padding:0;
  }
  .mobile-menu-list a{
    display:block;
    font-family:'Trirong',Georgia,serif;
    font-size:28px;
    font-weight:500;
    line-height:1.2;
    color:#fff;
    text-decoration:none;
    transition:opacity .2s ease;
  }
  .mobile-menu-list a:hover{opacity:.85}
  .mobile-menu-list a[aria-current="page"]{opacity:.75}
  .mobile-menu-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:16px 42px;
    background:#fff;
    color:#DB660D;
    font-family:'Open Sans',system-ui,sans-serif;
    font-size:16px;
    font-weight:600;
    text-decoration:none;
    border-radius:100px;
    transition:background .2s ease,transform .2s ease;
  }
  .mobile-menu-cta:hover{background:#fff;transform:translateY(-1px);opacity:.92}
  body.menu-open .brand img{filter:brightness(0) invert(1)}
}

.menu-toggle:focus-visible{outline:2px solid #DB660D;outline-offset:3px}
body.menu-open .menu-toggle:focus-visible{outline-color:#fff}

@media(prefers-reduced-motion:reduce){
  .menu-toggle-bar,
  .mobile-menu{transition:none!important}
}

/* ---------- custom cursor ---------- */
@media(pointer:fine){
  body.has-custom-cursor,
  body.has-custom-cursor *{cursor:none!important}
  .custom-cursor{
    position:fixed;left:0;top:0;
    width:10px;height:10px;
    border-radius:50%;background:#C45A0B;
    pointer-events:none;z-index:100001;
    transition:width .22s ease,height .22s ease,background .22s ease,opacity .22s ease,box-shadow .22s ease;
    will-change:transform;
  }
  .custom-cursor.is-hover{
    width:34px;height:34px;
    background:rgba(196,90,11,0.14);
    box-shadow:0 0 0 2px #C45A0B;
  }
  .custom-cursor.is-hidden{opacity:0;visibility:hidden}
}

/* ---------- preloader ---------- */
html.skip-preloader .preloader{display:none!important}
html.skip-preloader body.is-loading{overflow:visible}
body.is-loading{overflow:hidden}
body.is-loading .custom-cursor{opacity:0!important;visibility:hidden!important}
.preloader{
  position:fixed;inset:0;z-index:100000;
  display:flex;align-items:center;justify-content:center;
  background:#F5F3EF;
  transition:opacity .65s ease,visibility .65s ease;
}
.preloader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.preloader-panel{
  position:relative;width:132px;height:132px;
  display:flex;align-items:center;justify-content:center;
}
.preloader-orbit,
.preloader-orbit::before{
  position:absolute;border-radius:50%;
  border:2px solid transparent;
}
.preloader-orbit{
  inset:0;
  border-top-color:#DB660D;
  border-right-color:rgba(219,102,13,0.28);
  animation:preloader-spin 1.15s linear infinite;
}
.preloader-orbit::before{
  content:"";inset:14px;
  border-bottom-color:#C45A0B;
  border-left-color:rgba(196,90,11,0.22);
  animation:preloader-spin 1.75s linear infinite reverse;
}
.preloader-glow{
  position:absolute;width:88px;height:88px;border-radius:50%;
  background:radial-gradient(circle,rgba(219,102,13,0.34) 0%,transparent 72%);
  animation:preloader-glow 2.1s ease-in-out infinite;
}
.preloader-logo{
  position:relative;z-index:1;width:50px;height:auto;
  animation:preloader-pulse 2.1s ease-in-out infinite;
}
.preloader.is-exiting .preloader-panel{
  animation:preloader-exit .55s cubic-bezier(.4,0,.2,1) forwards;
}
@keyframes preloader-spin{to{transform:rotate(360deg)}}
@keyframes preloader-pulse{
  0%,100%{transform:scale(1);opacity:1}
  50%{transform:scale(1.1);opacity:.82}
}
@keyframes preloader-glow{
  0%,100%{transform:scale(.92);opacity:.55}
  50%{transform:scale(1.08);opacity:1}
}
@keyframes preloader-exit{
  to{transform:scale(1.14);opacity:0}
}

@media(prefers-reduced-motion:reduce){
  .site-header .glass-shine,
  .preloader-orbit,
  .preloader-orbit::before,
  .preloader-logo,
  .preloader-glow{animation:none!important}
  .preloader.is-exiting .preloader-panel{animation:none}
}
