/* === Sri Vishnu Safety Nets — Shared Styles === */
html, body {
  overflow-x: hidden;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --orange:#ff7a18;
  --orange-glow:#ffa552;
  --black:#141414;
  --grey:#666;
  --bg:#fff8f1;
  --card:#fff;
  --border:#eadccb;
}
body{font-family:'Inter',system-ui,sans-serif;color:var(--black);background:var(--bg);line-height:1.5;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Poppins',sans-serif;font-weight:800;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 20px}

/* Topbar + header */
.topbar{background:var(--black);color:#fff;font-size:13px}
.topbar .container{display:flex;justify-content:space-between;padding:8px 20px}
.topbar a{color:#fff}
.topbar a:hover{color:var(--orange)}
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
}
header .row{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:16px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:48px;height:48px;object-fit:contain}
.brand .name{font-family:'Poppins';font-weight:800;color:var(--black);line-height:1.1}
.brand .name small{display:block;color:var(--orange);font-size:12px;letter-spacing:.15em}

/* Nav with dropdown */
.main-nav>ul{list-style:none;display:flex;gap:4px;align-items:center}
.main-nav a.nav-link{
  display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:8px;
  font-weight:500;font-size:14px;color:var(--black);transition:color .2s,background .2s;
}
.main-nav a.nav-link:hover,.main-nav .has-sub:hover>a.nav-link,.main-nav a.nav-link.active{color:var(--orange)}
.main-nav .chev{width:14px;height:14px;transition:transform .2s}
.main-nav .has-sub:hover .chev{transform:rotate(180deg)}
.main-nav .has-sub{position:relative}
.dropdown{
  position:absolute;top:100%;left:0;width:300px;padding-top:8px;
  opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;
  pointer-events:none;
}
.main-nav .has-sub:hover .dropdown{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.dropdown-inner{
  background:#fff;border:1px solid var(--border);border-radius:14px;
  box-shadow:0 20px 50px rgba(0,0,0,.12);overflow:hidden;
}
.dropdown-inner .items{padding:8px}
.dropdown-inner .items a{
  display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;
  font-size:14px;color:var(--black);transition:.2s;
}
.dropdown-inner .items a:hover{background:#fff3e6;color:var(--orange)}
.dropdown-inner .items .ic{
  width:32px;height:32px;border-radius:8px;background:#fff3e6;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px;
}
.dropdown-inner .view-all{
  display:block;text-align:center;padding:12px;font-weight:600;font-size:14px;
  background:linear-gradient(135deg,var(--orange),var(--orange-glow));color:#fff;
}
.dropdown-inner .view-all:hover{opacity:.9}

.call-btn{background:var(--orange);color:#fff;padding:10px 18px;border-radius:8px;font-weight:600;font-size:14px;display:inline-flex;align-items:center;gap:8px;transition:transform .2s,box-shadow .2s}
.call-btn:hover{transform:scale(1.05);box-shadow:0 8px 24px rgba(255,122,24,.35)}
.menu-btn{display:none;background:none;border:0;padding:8px;cursor:pointer}
.menu-btn span{display:block;width:24px;height:2px;background:var(--black);margin:5px 0;transition:.3s}

/* Floating */
.floating{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;gap:12px;z-index:100}
.float-btn{
  width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;box-shadow:0 8px 24px rgba(0,0,0,.25);position:relative;transition:transform .2s
}
.float-btn:hover{transform:scale(1.1)}
.float-btn.wa{background:#25D366}
.float-btn.call{background:linear-gradient(135deg,var(--orange),var(--orange-glow))}
.float-btn::before{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:pulse 1.6s cubic-bezier(.4,0,.6,1) infinite;z-index:-1}
.float-btn svg{width:26px;height:26px}

/* Footer */
.site-footer{background:linear-gradient(135deg,#141414 0%,#1f1408 100%);color:rgba(255,255,255,.75);padding:60px 0 24px;margin-top:40px}
.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:40px}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}
.f-col h4{font-size:18px;color:#fff;margin-bottom:16px;font-weight:700}
.f-col ul{list-style:none}
.f-col ul li{margin-bottom:10px;font-size:14px}
.f-col ul a{color:rgba(255,255,255,.7);transition:color .2s}
.f-col ul a:hover{color:var(--orange)}
.f-brand{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.f-logo{background:#fff;border-radius:12px;padding:6px}
.f-logo img{width:46px;height:46px;object-fit:contain}
.f-name{font-family:'Poppins';font-weight:800;color:#fff;font-size:17px}
.f-sub{font-size:11px;color:var(--orange);letter-spacing:.18em;font-weight:700}
.f-about{font-size:14px;color:rgba(255,255,255,.65);line-height:1.6;margin-top:6px}
.f-contact li{display:flex;align-items:flex-start;gap:10px;color:rgba(255,255,255,.7)}
.f-contact a{color:rgba(255,255,255,.7)}
.f-contact a:hover{color:var(--orange)}
.f-ic{color:var(--orange);flex-shrink:0}
.f-social{display:flex;gap:10px;margin-top:14px}
.f-social a{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;transition:.2s}
.f-social a:hover{background:var(--orange)}
.f-copy{margin-top:36px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);text-align:center;font-size:13px;color:rgba(255,255,255,.5)}

@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes pulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(1.6);opacity:0}}

/* Mobile */
@media (max-width:960px){
  .main-nav{
    display:none;position:absolute;top:100%;left:0;right:0;background:#fff;
    border-top:1px solid var(--border);box-shadow:0 8px 20px rgba(0,0,0,.06);
    max-height:80vh;overflow-y:auto
  }
  .main-nav.open{display:block}
  .main-nav>ul{flex-direction:column;gap:0;padding:8px 0;align-items:stretch}
  .main-nav a.nav-link{padding:14px 24px;border-radius:0;justify-content:space-between;border-bottom:1px solid var(--border)}
  .main-nav .dropdown{
    position:static;width:auto;padding:0;opacity:1;visibility:visible;transform:none;pointer-events:auto;
    max-height:0;overflow:hidden;transition:max-height .3s ease;
  }
  .main-nav .has-sub.open .dropdown{max-height:600px}
  .main-nav .has-sub:hover .dropdown{max-height:0}
  .main-nav .has-sub.open .dropdown{max-height:600px}
  .dropdown-inner{border:0;border-radius:0;box-shadow:none;background:#fff8f1}
  .dropdown-inner .items a{padding:12px 32px}
  .menu-btn{display:block}
  .topbar{display:none}
  .call-btn .num{display:none}
}
