/* ===========================
   AVISNet — Minimal Redesign
   Default: LIGHT mode
   =========================== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg:      #ffffff;
  --surface: #f8f8f8;
  --red:     #C0392B;
  --red-dim: #96231A;
  --text:    #111111;
  --sub:     #444444;
  --muted:   #888888;
  --border:  #ebebeb;
  --radius:  14px;
  --shadow:  0 2px 20px rgba(0,0,0,0.07);
  --shadow-lg: 0 8px 48px rgba(0,0,0,0.12);
}
[data-theme='dark'] {
  --bg:      #0f0f0f;
  --surface: #1a1a1a;
  --text:    #f0f0f0;
  --sub:     #b0b0b0;
  --muted:   #666666;
  --border:  #2a2a2a;
  --shadow:  0 2px 20px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 48px rgba(0,0,0,0.5);
}

html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--text); font-family: 'Inter', sans-serif; font-size: 16px; line-height: 1.6; overflow-x: hidden; transition: background .3s, color .3s; }
h1, h2, h3, h4 { font-family: 'Space Grotesk', sans-serif; font-weight: 800; line-height: 1.1; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; object-fit: cover; }
.container { width: 100%; max-width: 1120px; margin: 0 auto; padding: 0 32px; }

@keyframes fadeDown { from{opacity:0;transform:translateY(-10px)} to{opacity:1;transform:translateY(0)} }
.reveal { opacity:0; transform:translateY(28px); transition:opacity .65s ease,transform .65s ease; }
.reveal.visible { opacity:1; transform:none; }

/* ---- BUTTONS ---- */
.btn-primary {
  display:inline-flex; align-items:center; gap:8px;
  padding:13px 28px; background:var(--red); color:#fff;
  border-radius:8px; font-weight:600; font-size:.92rem;
  border:none; cursor:pointer; font-family:'Inter',sans-serif;
  transition:background .2s,transform .15s;
}
.btn-primary:hover { background:var(--red-dim); transform:translateY(-1px); }
.btn-ghost {
  display:inline-flex; align-items:center; gap:8px;
  padding:13px 28px; background:transparent; color:var(--text);
  border:1.5px solid var(--border); border-radius:8px;
  font-weight:600; font-size:.92rem; cursor:pointer; font-family:'Inter',sans-serif;
  transition:border-color .2s,color .2s;
}
.btn-ghost:hover { border-color:var(--red); color:var(--red); }
.nav-cta {
  display:inline-flex; align-items:center; gap:6px;
  padding:9px 20px; background:var(--red); color:#fff !important;
  border-radius:7px; font-size:.85rem; font-weight:600;
  transition:background .2s;
}
.nav-cta:hover { background:var(--red-dim) !important; }

/* ---- NAV ---- */
nav {
  position:fixed; top:0; left:0; right:0; z-index:100;
  background:rgba(255,255,255,.94); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
  animation:fadeDown .5s ease both;
  transition:background .3s,border-color .3s;
}
[data-theme='dark'] nav { background:rgba(15,15,15,.94); }
.nav-inner { display:flex; align-items:center; justify-content:space-between; height:64px; }
.nav-logo { display:flex; align-items:center; gap:10px; font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.2rem; }
.nav-logo .drop { color:var(--red); }
.nav-links { display:flex; align-items:center; gap:32px; list-style:none; }
.nav-links a { font-size:.875rem; font-weight:500; color:var(--muted); transition:color .2s; }
.nav-links a:hover, .nav-links a.active { color:var(--text); }
.nav-right { display:flex; align-items:center; gap:12px; }
.theme-btn { background:none; border:1.5px solid var(--border); color:var(--muted); border-radius:7px; padding:6px 10px; cursor:pointer; font-size:.95rem; transition:border-color .2s; }
.theme-btn:hover { border-color:var(--red); }
.hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.hamburger span { width:22px; height:2px; background:var(--text); border-radius:2px; display:block; }
.mobile-menu { display:none; flex-direction:column; background:var(--bg); border-top:1px solid var(--border); padding:8px 0 16px; }
.mobile-menu.open { display:flex; }
.mobile-menu a { padding:12px 32px; font-size:.95rem; color:var(--muted); transition:color .2s; }
.mobile-menu a:hover { color:var(--text); }

/* ---- EYEBROW ---- */
.eyebrow { display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--red); margin-bottom:12px; }

/* ---- SECTION HEADER ---- */
.section-header { text-align:center; margin-bottom:64px; }
.section-header h2 { font-size:clamp(1.8rem,3vw,2.5rem); letter-spacing:-.02em; margin-bottom:12px; }
.section-header p { font-size:1.05rem; color:var(--sub); max-width:560px; margin-inline:auto; line-height:1.7; }

/* ---- PAGE HERO (secondary) ---- */
.page-hero { padding:140px 0 80px; background:var(--surface); border-bottom:1px solid var(--border); position:relative; overflow:hidden; }
.page-hero-inner { max-width:680px; position:relative; z-index:1; }
.page-hero-badge { display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--red); margin-bottom:14px; }
.page-hero h1 { font-size:clamp(2rem,4vw,3rem); letter-spacing:-.02em; margin-bottom:14px; }
.page-hero p { font-size:1.05rem; color:var(--sub); line-height:1.7; }

/* Page hero with background image */
.page-hero--photo { background:none; color:#fff; border-bottom:none; }
.page-hero--photo .page-hero-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.page-hero--photo .page-hero-overlay { position:absolute; inset:0; background:linear-gradient(135deg, rgba(80,0,0,.85) 0%, rgba(0,0,0,.65) 100%); z-index:0; }
.page-hero--photo .page-hero-badge { color:rgba(255,255,255,.8); }
.page-hero--photo h1 { color:#fff; }
.page-hero--photo p { color:rgba(255,255,255,.8); }
.page-hero--photo .breadcrumb a,
.page-hero--photo .breadcrumb span { color:rgba(255,255,255,.6); }
.page-hero--photo .breadcrumb a:hover { color:#fff; }
.breadcrumb { margin-bottom:28px; }
.breadcrumb a, .breadcrumb span { font-size:.82rem; color:var(--muted); }
.breadcrumb a:hover { color:var(--red); }
.breadcrumb .sep { margin:0 6px; }

/* ---- FOOTER ---- */
footer { background:var(--surface); border-top:1px solid var(--border); padding:64px 0 0; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 2fr; gap:48px; padding-bottom:48px; }
.footer-brand .logo-text { font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.15rem; display:flex; align-items:center; gap:8px; margin-bottom:10px; }
.footer-brand .logo-text .drop { color:var(--red); }
.footer-brand p { font-size:.85rem; color:var(--muted); line-height:1.6; }
.footer-links-col h4 { font-size:.72rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--muted); margin-bottom:16px; }
.footer-links-col a { display:block; font-size:.88rem; color:var(--muted); margin-bottom:10px; transition:color .2s; }
.footer-links-col a:hover { color:var(--red); }
.footer-legal p { font-size:.82rem; color:var(--muted); line-height:1.9; }
.footer-legal a { color:var(--muted); text-decoration:underline; }
.footer-legal a:hover { color:var(--red); }
.footer-copy { border-top:1px solid var(--border); padding:20px 0; text-align:center; font-size:.8rem; color:var(--muted); }

/* ---- RESPONSIVE ---- */
@media(max-width:900px) { .footer-grid { grid-template-columns:1fr; gap:32px; } }
@media(max-width:640px) { .nav-links{display:none} .hamburger{display:flex} .container{padding:0 20px} }
