/* ===== Avinash Engineering — Premium Visual System (with deep header) ===== */

/* ---------- Variables ---------- */
:root{
  --accent: #E1AD01;           /* original site accent (kept) */
  --accent-dark: #c08f05;
  --blue-accent: #0B6FB5;      /* new contact blue */
  --blue-accent-dark: #064A78; /* darker blue */
  --header-blue-1: #043a63;
  --header-blue-2: #075f9a;
  --header-accent: #ffd25c;
  --bg-base: #fbfaf8;
  --muted: #6b7280;
  --card: #ffffff;
  --field: #f6f5f3;
  --maxw: 1200px;
  --radius: 14px;
  --container-padding: 20px;
  --text: #0f1720;
  font-family: 'Poppins', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* ---------- Reset & base ---------- */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  color:var(--text);
  background:
    radial-gradient(circle at 10% 10%, rgba(241,225,163,0.07), transparent 18%),
    radial-gradient(circle at 85% 35%, rgba(242,213,120,0.04), transparent 25%),
    linear-gradient(180deg, var(--bg-base) 0%, #ffffff 48%, #fbfbfb 100%);
  background-attachment: fixed;
  font-size:16px;
  line-height:1.6;
}

/* faint texture */
body::before{
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="160" height="160" viewBox="0 0 160 160"><filter id="n"><feTurbulence baseFrequency="0.9" numOctaves="2" stitchTiles="stitch"/><feColorMatrix type="saturate" values="0"/></filter><rect width="100%" height="100%" filter="url(%23n)" opacity="0.03"/></svg>');
  mix-blend-mode: multiply;
}

/* container */
.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--container-padding)}

/* ===== Deep-blue header ===== */
.site-header.deep-header {
  position: sticky;
  top: 0;
  z-index: 140;
  background: linear-gradient(180deg, var(--header-blue-1), var(--header-blue-2));
  color: #fff;
  box-shadow: 0 6px 18px rgba(2,18,34,0.16);
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: box-shadow .22s ease, transform .12s ease;
}
.header-inner {
  display:flex;
  align-items:center;
  gap:20px;
  height:72px;
  padding:10px var(--container-padding);
}

/* Brand */
.brand{display:flex;align-items:center;gap:12px;cursor:pointer}
.logo{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,0.12);box-shadow:0 8px 26px rgba(2,18,34,0.25);background:#fff}
.brand-text{color:#fff}
.brand-title{font-weight:700;font-size:18px}
.brand-sub{font-size:12px;color:rgba(255,255,255,0.9)}

/* Nav center */
.nav{flex:1;display:flex;justify-content:center;align-items:center}
.nav-list{display:flex;gap:28px;list-style:none;margin:0;padding:0}
.nav-link{
  color:rgba(255,255,255,0.95);
  text-decoration:none;
  font-weight:600;
  padding:10px 6px;
  border-radius:6px;
  transition: background .14s ease, transform .12s ease, color .12s;
  display:inline-block;
}
.nav-link:hover{ transform:translateY(-3px); background: rgba(255,255,255,0.04); color:#fff; }
.nav-link.active{ color:#fff; font-weight:800; background: linear-gradient(90deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02)); box-shadow:inset 0 -6px 0 rgba(0,0,0,0.02); }

/* Header actions */
.header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}
.icon-btn{background:transparent;border:0;padding:8px;border-radius:8px;cursor:pointer;color:#fff}
.icon-btn svg{display:block}
.btn{border:0;padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:700}
.btn.primary{background:var(--header-accent);Color:#081014;box-shadow:0 8px 24px rgba(10,47,72,0.18)}
.btn.outline{background:rgba(255,255,255,0.08);color:#fff;border:1px solid rgba(255,255,255,0.06)}
.menu-toggle{display:none;background:transparent;border:0;font-size:20px;color:#fff;padding:8px}

/* shrink */
.site-header.deep-header.shrink{box-shadow:0 22px 60px rgba(2,18,34,0.22);transform:translateY(-1px)}

/* Hero */
.hero{padding:clamp(40px,6vw,96px) 0;display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
@media(min-width:980px){ .hero{grid-template-columns:1fr 560px} }
.hero-left{padding-right:18px}
.hero-left h1{font-size:clamp(28px,4.6vw,52px);margin:0 0 12px;font-weight:800;letter-spacing:-0.6px}
.lead{color:var(--muted);font-size:1.05rem;max-width:70ch;margin-bottom:18px}
.hero-cta{display:flex;gap:12px}
.stats{display:flex;gap:32px;margin-top:22px;flex-wrap:wrap}
.stat strong{font-weight:800;display:block;font-size:1.1rem}
.stat span{color:var(--muted);font-size:0.95rem;display:block;margin-top:6px}
.hero-right img{width:100%;height:100%;max-height:520px;object-fit:cover;border-radius:16px;border:1px solid rgba(0,0,0,0.03);box-shadow:0 28px 60px rgba(6,12,34,0.08);display:block}

/* Sections */
.section{padding:40px 0}
.section:nth-child(even){background:linear-gradient(180deg, rgba(250,249,247,0.6), rgba(249,248,246,0.6))}

/* Section heads */
.section-head h2{margin:0;font-size:22px}
.section-head .muted{color:var(--muted);margin-top:8px}

/* Cards */
.grid{display:flex;gap:20px;flex-wrap:wrap}
.card{background:var(--card);padding:18px;border-radius:12px;border:1px solid rgba(15,23,32,0.04);box-shadow:0 12px 30px rgba(6,12,34,0.06);transition:transform .18s,box-shadow .18s;width:100%;max-width:320px}
.card:hover{transform:translateY(-8px);box-shadow:0 26px 60px rgba(6,12,34,0.10)}
.card img{width:100%;height:160px;object-fit:cover;border-radius:8px;display:block;background:linear-gradient(180deg,#f7f7f8,#f2f2f3)}

/* Carousel */
.carousel{display:flex;gap:16px;overflow-x:auto;padding-bottom:10px}
.project{min-width:360px;border-radius:14px;overflow:hidden;position:relative}
.project img{width:100%;height:260px;object-fit:cover;display:block}
.project .project-meta{position:absolute;left:18px;bottom:18px;color:#fff;text-shadow:0 6px 18px rgba(0,0,0,0.4)}

/* About / Contact */
/* make the contact area a slightly separated band for better focus */
#contact.section { padding: 80px 0; background: linear-gradient(180deg, #fdfcf9 0%, #f7f6f2 100%); position: relative; z-index: 1; }
#contact.section .container { padding-top: 4px; padding-bottom: 4px; }

/* decorative radial accents behind contact area - adjusted to include blue tint */
#contact.section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 20% 30%, rgba(11,111,181,0.06), transparent 45%),
              radial-gradient(circle at 80% 70%, rgba(7,95,154,0.04), transparent 50%);
  z-index: -1;
}

/* Layout for contact area */
.contact-grid {
  display: grid;
  grid-template-columns: 420px 1fr;
  gap: 40px;
  align-items: start;
  align-content: start;
  margin-top: 8px;
}

@media (max-width: 900px) {
  .contact-grid { grid-template-columns: 1fr; gap: 22px; }
}

/* Left info card - premium, with blue tint
   NOTE: removed box-shadow so card sits flat on background */
.contact-card {
  background: linear-gradient(180deg, #f7fbff 0%, #f2f9ff 100%);
  padding: 32px;
  border-radius: 18px;
  border: 1px solid rgba(6,75,120,0.06);
  box-shadow: none; /* removed shadow */
  transition: transform .25s ease; /* keep subtle transform if desired */
}
.contact-card:hover{
  transform: translateY(-3px); /* tiny lift if you want hover motion */
  box-shadow: none; /* ensure no hover shadow */
}
.contact-card h3{
  margin: 0 0 16px 0;
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--header-blue-1);
}
.contact-card p { color: var(--muted); line-height:1.6; margin: 8px 0; }
.contact-card .actions { display:flex; gap:14px; margin-top:20px; align-items:center; }

/* Left-card CTA - blue variant (button shadow retained for emphasis) */
.contact-card .btn.primary {
  padding: 12px 18px;
  border-radius: 12px;
  background: linear-gradient(90deg, var(--blue-accent), var(--blue-accent-dark));
  color: #fff;
  box-shadow: 0 12px 36px rgba(11,111,181,0.14);
}

/* Form card - premium with blue accents
   NOTE: removed box-shadow so form sits flat on background */
.contact-form {
  background: linear-gradient(180deg,#ffffff,#fcfcfd);
  padding: 36px;
  border-radius: 18px;
  border: 1px solid rgba(6,75,120,0.04);
  box-shadow: none; /* removed shadow */
}

/* Label structure support (your HTML uses <label><span>Label</span><input...>) */
.contact-form label { display:block; margin-bottom: 10px; }
.contact-form label span {
  display:block;
  font-weight:700;
  color:var(--header-blue-1);
  margin-bottom:6px;
  font-size:0.95rem;
}

/* Inputs */
.contact-form input,
.contact-form textarea {
  width:100%;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid rgba(6,75,120,0.09);
  background: linear-gradient(180deg, #fbfdff, #f6fbff);
  font-size: 0.975rem;
  color: var(--text);
  transition: box-shadow .14s ease, border-color .14s ease, transform .12s ease;
  box-shadow: 0 6px 18px rgba(6,75,120,0.03);
}

/* subtle placeholder color */
.contact-form input::placeholder,
.contact-form textarea::placeholder { color: rgba(6,75,120,0.25); }

/* textarea specifics */
.contact-form textarea {
  min-height: 160px;
  resize: vertical;
}

/* focus states - blue glow */
.contact-form input:focus,
.contact-form textarea:focus {
  outline: none;
  border-color: var(--blue-accent-dark);
  box-shadow: 0 8px 30px rgba(11,111,181,0.16);
  transform: translateY(-1px);
  background: #fff;
}

/* submit button - blue CTA */
.contact-form button[type="submit"] {
  margin-top: 16px;
  display: inline-block;
  padding: 14px 24px;
  border-radius: 12px;
  font-weight:800;
  font-size:1rem;
  cursor:pointer;
  border: none;
  background: linear-gradient(90deg, var(--blue-accent), var(--blue-accent-dark));
  color: #fff;
  box-shadow: 0 12px 36px rgba(11,111,181,0.22);
  transition: transform .16s ease, box-shadow .16s ease;
}
.contact-form button[type="submit"]:hover {
  transform: translateY(-3px);
  box-shadow: 0 20px 46px rgba(11,111,181,0.28);
}

/* small helper text next to fields */
.contact-form .small { font-size:13px; color:var(--muted); }

/* spacing for label+input pairs */
.contact-form .field-row { margin-bottom: 14px; }

/* ===== Premium Dark Footer (full-width) ===== */
.site-footer {
  width: 100%;
  padding: 64px 0;
  background: linear-gradient(180deg, #0b1620 0%, #0f1c28 100%);
  color: #e5e7eb;
  border-top: 1px solid rgba(255,255,255,0.06);
  box-shadow: inset 0 6px 28px rgba(0,0,0,0.18);
}

/* keep inner content centered with your existing container */
.site-footer .footer-inner {
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 var(--container-padding);
}

/* Footer grid and layout */
.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;align-items:start}
.footer-logo{width:40px;height:40px;vertical-align:middle;filter: drop-shadow(0 6px 18px rgba(0,0,0,0.6));}
.site-footer h4,
.site-footer h5 {
  color: #ffffff;
  margin: 0 0 12px 0;
  font-weight: 700;
}

/* Footer lists/links */
.footer-links {list-style:none;margin:0;padding:0}
.footer-links li {margin-bottom:8px}
.footer-links a {
  color: #d1d5db;
  text-decoration: none;
  font-weight:600;
  transition: color .18s ease, transform .18s ease;
  display:inline-block;
}
.footer-links a:hover {
  color: var(--accent);
  transform: translateX(6px);
}

/* Muted copy */
.site-footer .muted {
  color: #9ca3af;
  font-size:0.95rem;
}

/* Newsletter / form */
.site-footer form input,
.site-footer form textarea {
  width: 100%;
  padding: 12px;
  border-radius: var(--radius);
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.03);
  color: #fff;
  margin-bottom: 10px;
  outline: none;
  transition: box-shadow .12s ease, transform .12s ease;
}
.site-footer form input::placeholder,
.site-footer form textarea::placeholder{
  color: rgba(255,255,255,0.56);
}
.site-footer form input:focus,
.site-footer form textarea:focus{
  box-shadow: 0 8px 28px rgba(14,30,45,0.36);
  border-color: rgba(255,255,255,0.14);
}

/* Buttons inside footer */
.site-footer .btn {
  font-weight:700;
  border-radius:10px;
}
.site-footer .btn.primary {
  background: linear-gradient(90deg, var(--accent), var(--accent-dark));
  color: #081014;
  box-shadow: 0 12px 36px rgba(225,173,1,0.14);
}
.site-footer .btn.outline {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.06);
  color: #d1d5db;
}

/* Footer small legal */
.legal {
  text-align: center;
  color: #88929b;
  margin-top: 40px;
  font-size: 13px;
}

/* Footer responsive adjustments */
@media (max-width: 899px) {
  .footer-grid { grid-template-columns: 1fr; gap:18px; }
  .site-footer { padding: 40px 0; }
  .legal { margin-top: 28px; }
}

/* Mobile drawer & search overlay base styling */
.mobile-drawer { position: fixed; inset: 0; display: none; z-index: 160; }
.mobile-drawer.open { display: block; background: rgba(0,0,0,0.45); }
.mobile-drawer .drawer-inner { width: 320px; max-width: 88%; height: 100%; background: #fff; padding: 18px; box-shadow: 0 30px 80px rgba(0,0,0,0.45); }
.drawer-link { display:block; padding:12px 6px; color:#0f1720; text-decoration:none; border-radius:6px; }
.search-overlay { position: fixed; inset: 0; display: none; z-index: 170; align-items: center; justify-content:center; background: rgba(0,0,0,0.42); }
.search-overlay.open { display: flex; }
.search-box { background: #fff; padding: 18px; border-radius:12px; width: min(880px, 94%); max-width: 900px; box-shadow: 0 24px 80px rgba(2,18,34,0.2); }

/* Utilities */
.muted{color:var(--muted)}
.small{font-size:13px}

/* Responsive */
@media(max-width:899px){
  .nav{display:none}
  .menu-toggle{display:block}
  .header-inner{padding:10px 14px;height:64px}
  .brand-sub{display:none}
  .hero{gap:20px;padding:28px 0}
  .hero-right{order:-1}
  .grid{justify-content:flex-start}
  .footer-grid{grid-template-columns:1fr}
}
