/* ============================================================
   KARNOT ENERGY SOLUTIONS — SHARED STYLES
   ============================================================ */

/* --- RESET & BASE --- */
*{margin:0;padding:0;box-sizing:border-box}
html{background:#0d1b3e}
body{font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;background:#f5f5f7;color:#1d1d1f;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto}
a{transition:all .3s ease}
a:hover{opacity:.92}
.skip-link{position:absolute;top:-100%;left:50%;transform:translateX(-50%);background:#F56600;color:#fff;padding:12px 24px;border-radius:0 0 8px 8px;font-weight:600;z-index:9999;text-decoration:none}
.skip-link:focus{top:0}

/* --- SCROLL REVEAL --- */
.rv{opacity:0;transform:translateY(35px);transition:opacity .7s ease,transform .7s ease}
.rv.v{opacity:1;transform:translateY(0)}
.rl{opacity:0;transform:translateX(-50px);transition:opacity .7s ease,transform .7s ease}
.rl.v{opacity:1;transform:translateX(0)}
.rr{opacity:0;transform:translateX(50px);transition:opacity .7s ease,transform .7s ease}
.rr.v{opacity:1;transform:translateX(0)}
.sg .rv:nth-child(1){transition-delay:.05s}
.sg .rv:nth-child(2){transition-delay:.12s}
.sg .rv:nth-child(3){transition-delay:.19s}
.sg .rv:nth-child(4){transition-delay:.26s}
.sg .rv:nth-child(5){transition-delay:.33s}
.sg .rv:nth-child(6){transition-delay:.4s}

/* --- SITE NAV --- */
.site-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:14px 28px;display:flex;align-items:center;justify-content:space-between;transition:all .4s ease;background:rgba(13,27,62,.95);backdrop-filter:blur(20px) saturate(1.8)}
.site-nav.scrolled{background:rgba(13,27,62,.95);backdrop-filter:blur(20px) saturate(1.8);box-shadow:0 4px 30px rgba(0,0,0,.25);padding:10px 28px}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;font-size:22px;font-weight:800;letter-spacing:-.3px}
.nav-logo img{height:36px;width:auto}
.nav-logo-icon{width:36px;height:36px;background:#F56600;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;color:#fff;box-shadow:0 2px 12px rgba(245,102,0,.4)}
.nav-links{display:flex;gap:4px;align-items:center}
.nav-links a{color:rgba(255,255,255,.85);text-decoration:none;font-size:14px;font-weight:600;padding:8px 16px;border-radius:50px;transition:all .25s ease}
.nav-links a:hover{background:rgba(255,255,255,.12);color:#fff;opacity:1}
.nav-links a.nav-cta{background:#F56600;color:#fff;padding:10px 24px;box-shadow:0 2px 12px rgba(245,102,0,.3)}
.nav-links a.nav-cta:hover{background:#e05a00;transform:translateY(-1px);box-shadow:0 4px 16px rgba(245,102,0,.45)}
.nav-hamburger{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:8px}
.mobile-menu{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(13,27,62,.98);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:20px}
.mobile-menu.open{display:flex}
.mobile-menu a{color:#fff;text-decoration:none;font-size:20px;font-weight:600;padding:12px 32px;border-radius:50px;transition:background .25s ease}
.mobile-menu a:hover{background:rgba(255,255,255,.1);opacity:1}
.mobile-menu .mobile-close{position:absolute;top:16px;right:20px;background:none;border:none;color:#fff;font-size:28px;cursor:pointer}

/* --- SHARED BUTTONS --- */
.btn-orange{display:inline-block;padding:16px 40px;font-size:17px;font-weight:600;border-radius:50px;text-decoration:none;background:#F56600;color:#fff;border:2px solid #F56600;box-shadow:0 4px 20px rgba(245,102,0,.35);transition:all .3s ease}
.btn-orange:hover{background:#e05a00;transform:translateY(-3px);box-shadow:0 8px 32px rgba(245,102,0,.5);opacity:1}
.btn-outline{display:inline-block;padding:16px 40px;font-size:17px;font-weight:600;border-radius:50px;text-decoration:none;background:rgba(255,255,255,.08);color:#fff;border:2px solid rgba(255,255,255,.3);backdrop-filter:blur(10px);transition:all .3s ease}
.btn-outline:hover{background:rgba(255,255,255,.18);border-color:#fff;opacity:1;transform:translateY(-3px)}
.btn-light{display:inline-block;padding:14px 32px;background:#f5f5f7;color:#1d1d1f;font-size:15px;font-weight:600;border-radius:50px;text-decoration:none;border:2px solid #d2d2d7;transition:all .3s ease}
.btn-light:hover{background:#1d1d1f;color:#fff;border-color:#1d1d1f;opacity:1;transform:translateY(-2px)}
.cta-row{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* --- SHARED SECTION HEAD --- */
.section-head{text-align:center;max-width:780px;margin:0 auto 50px}
.section-head h2{font-size:40px;font-weight:800;margin-bottom:14px;color:#1d1d1f;letter-spacing:-.3px}
.section-head p{font-size:18px;color:#6e6e73;line-height:1.7}

/* --- SITE FOOTER --- */
.site-footer{background:linear-gradient(135deg,#0a1628,#152244);color:#fff;padding:60px 20px 30px;position:relative}
.footer-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}
.footer-brand{display:flex;flex-direction:column;gap:16px}
.footer-brand .nav-logo{font-size:20px}
.footer-brand p{font-size:14px;color:rgba(255,255,255,.6);line-height:1.7;max-width:280px}
.footer-social{display:flex;gap:12px;margin-top:4px}
.footer-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.7);text-decoration:none;font-size:16px;transition:all .25s ease}
.footer-social a:hover{background:#F56600;color:#fff;opacity:1;transform:translateY(-2px)}
.footer-col h4{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,.5);margin-bottom:16px}
.footer-col a{display:block;color:rgba(255,255,255,.75);text-decoration:none;font-size:14px;padding:4px 0;transition:color .2s ease}
.footer-col a:hover{color:#F56600;opacity:1}
.footer-bottom{max-width:1200px;margin:0 auto;padding-top:24px;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:12px;color:rgba(255,255,255,.4)}
.footer-bottom a{color:rgba(255,255,255,.4);text-decoration:none;font-size:12px}
.footer-bottom a:hover{color:#F56600;opacity:1}

/* --- RESPONSIVE --- */
@media(max-width:1024px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .nav-links .nav-hide-tablet{display:none}
}
@media(max-width:768px){
  .site-nav{padding:10px 16px}
  .site-nav.scrolled{padding:8px 16px}
  .nav-logo{font-size:18px}
  .nav-links{display:none}
  .nav-hamburger{display:block}
  .cta-row{flex-direction:column;align-items:center}
  .btn-orange,.btn-outline{width:100%;text-align:center;padding:14px 24px;font-size:16px}
  .section-head h2{font-size:28px}
  .section-head p{font-size:15px}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;text-align:center}
}
