/* KUPARTOURS static handoff build — shared stylesheet (matches live design pixel-for-pixel) */
:root{
  --ease:cubic-bezier(0.22,1,0.36,1);
  --kt-font:'Geist',ui-sans-serif,system-ui,sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
html,body{margin:0;padding:0;background:#ffffff;}
body{font-family:var(--kt-font);color:#0d3f52;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;height:auto;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{margin:0;}
p{margin:0;}

@keyframes ktKenburns{0%{transform:scale(1);}100%{transform:scale(1.13);}}
@keyframes ktGrain{0%,100%{transform:translate(0,0);}10%{transform:translate(-1%,-2%);}30%{transform:translate(2%,1%);}50%{transform:translate(-2%,2%);}70%{transform:translate(1%,-1%);}90%{transform:translate(-1%,1%);}}
@keyframes ktReveal{from{opacity:0;transform:translateY(24px);}to{opacity:1;transform:translateY(0);}}
@keyframes ktPulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:1;}50%{transform:translate(-50%,-50%) scale(1.08);opacity:0.75;}}
@keyframes ktOrbit{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}

.kt-footer-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
@media (max-width:820px){.kt-footer-grid{grid-template-columns:repeat(2,minmax(160px,1fr));}}
@media (max-width:560px){.kt-footer-grid{grid-template-columns:1fr;}}

[data-reveal]{animation:ktReveal 0.8s var(--ease) both;}
@media (prefers-reduced-motion: reduce){
  [data-reveal]{animation:none !important;opacity:1 !important;transform:none !important;}
  *{animation-duration:0.01ms !important;transition-duration:0.01ms !important;}
}

@media (max-width:1080px){.kt-desktop-only{display:none !important;}}
@media (min-width:1081px){.kt-hamburger-btn{display:none !important;}.kt-mobile-drawer{display:none !important;}}
@media (max-width:1080px){.kt-hamburger-btn{display:flex !important;}}

/* Loader */
.kt-loader{position:fixed;inset:0;z-index:99999;background:#002f3e;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:22px;transition:opacity 0.4s ease;}
.kt-loader.is-hidden{opacity:0;pointer-events:none;}
@media (prefers-reduced-motion: reduce){.kt-loader svg,.kt-loader img,.kt-loader div{animation:none !important;}}

/* Grain overlay */
.kt-grain{position:fixed;inset:0;z-index:40;pointer-events:none;opacity:0.045;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:120px 120px;animation:ktGrain 8s steps(8) infinite;}

/* Generic responsive N-column grids used across pages (mirrors the live site's kt-*-col classes) */
.rcol2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:64px;align-items:center;}
.rcol3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;}
.rcol4{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;}
.rcol5{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;}
.rcol6{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;}

/* Focus states */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #019ee5;outline-offset:2px;}

/* Mobile menu / hamburger (structure defined inline by Header, these just control display) */
.kt-mobile-drawer{position:fixed;inset:0;z-index:960;background:#ffffff;overflow-y:auto;}
body.kt-menu-open{overflow:hidden;}
