/* ================================================
   Phi Cognition — styles.css
   Brand: Inter font | Norway green + Tiber teal
================================================ */

/* ── CSS VARIABLES ── */
:root {
  /* Norway (primary green) */
  --nor-50:  #f6f8f5; --nor-100:#ebefe9; --nor-200:#d7dfd3;
  --nor-300: #a3b79b; --nor-400:#8da484; --nor-500:#6c8562;
  --nor-600: #566b4e; --nor-700:#45563f; --nor-800:#3a4635;
  --nor-900: #303a2d; --nor-950:#171e15;
  /* Tiber (secondary teal) */
  --tib-50:  #f2fbfa; --tib-100:#d4f3f0; --tib-200:#a9e6e2;
  --tib-300: #76d2cf; --tib-400:#4ab7b7; --tib-500:#309a9c;
  --tib-600: #24797d; --tib-700:#216164; --tib-800:#1e4e51;
  --tib-900: #19383a; --tib-950:#0b2528;
  /* Shadows */
  --shadow-sm: 0 1px 3px rgba(25,56,58,.08);
  --shadow:    0 4px 24px rgba(25,56,58,.10);
  --shadow-lg: 0 16px 48px rgba(25,56,58,.15);
  --shadow-xl: 0 24px 64px rgba(25,56,58,.20);
}

/* ── RESET ── */
*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Inter',sans-serif; color:var(--tib-900); background:#fff; overflow-x:hidden; }
h1,h2,h3,h4,h5 { font-family:'Inter',sans-serif; font-weight:700; line-height:1.15; }
img { max-width:100%; display:block; }

/* ── NAV ── */
nav {
  position:fixed; top:0; left:0; right:0; z-index:200;
  display:flex; align-items:center; justify-content:space-between;
  padding:0 6%; height:70px;
  background:rgba(255,255,255,.97); backdrop-filter:blur(16px);
  border-bottom:1px solid var(--nor-200); box-shadow:var(--shadow-sm);
}
.nav-logo img {
  height: 40px;   /* Adjust as needed */
  width: auto;
  display: block;
}
.nav-logo { display:flex; align-items:center; text-decoration:none; }
.nav-links { display:flex; align-items:center; gap:28px; list-style:none; }
.nav-links a { color:var(--tib-700); text-decoration:none; font-size:14px; font-weight:500; transition:color .2s; }
.nav-links a:hover { color:var(--nor-600); }
.nav-cta {
  background:var(--tib-800) !important; color:white !important;
  padding:9px 22px; border-radius:8px; font-weight:600 !important;
  box-shadow:0 2px 8px rgba(30,78,81,.3);
  transition:background .2s, transform .15s, box-shadow .2s !important;
}
.nav-cta:hover { background:var(--tib-900) !important; transform:translateY(-1px); }

/* --- Industries Dropdown --- */
.nav-dropdown {
  position: relative;
}

.nav-dropdown .dropdown-toggle {
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}

.nav-dropdown .chevron {
  width: 13px;
  height: 13px;
  transition: transform 0.2s;
}

.nav-dropdown:hover .chevron {
  transform: rotate(180deg);
}

.nav-dropdown .dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background: #ffffff;
  border: 1px solid #e2e8f0;
  border-radius: 10px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.10);
  min-width: 240px;
  list-style: none;
  padding: 8px 0;
  z-index: 999;
}

.nav-dropdown:hover .dropdown-menu {
  display: block;
}

.nav-dropdown .dropdown-menu li a {
  display: block;
  padding: 10px 18px;
  font-size: 14px;
  color: #374151;
  text-decoration: none;
  white-space: nowrap;
  transition: background 0.12s, color 0.12s;
}

.nav-dropdown .dropdown-menu li a:hover {
  background: #f5f3ff;
  color: #4f46e5;
}

/* ── BUTTONS ── */
.btn-primary {
  background:var(--tib-800); color:white; padding:14px 28px; border-radius:9px;
  font-weight:600; font-size:15px; text-decoration:none;
  display:inline-flex; align-items:center; gap:8px;
  transition:background .2s, transform .15s, box-shadow .2s;
  box-shadow:0 4px 16px rgba(30,78,81,.35);
}
.btn-primary:hover { background:var(--tib-900); transform:translateY(-2px); }
.btn-outline {
  color:var(--tib-700); padding:13px 26px; border-radius:9px;
  border:1.5px solid var(--nor-300); font-size:15px; font-weight:600;
  text-decoration:none; display:inline-flex; align-items:center; gap:8px;
  transition:border-color .2s, background .2s, color .2s;
}
.btn-outline:hover { border-color:var(--tib-700); background:var(--tib-50); }


/* ── FOOTER ── */
footer { background:var(--tib-950); border-top:1px solid rgba(255,255,255,.06); padding:64px 6% 32px; }
.footer-logo-link img {
  height: 40px;   /* Adjust as needed */
  width: auto;
  display: block;
}
.footer-top { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.footer-brand .footer-logo-link { display:flex; align-items:center; text-decoration:none; margin-bottom:14px; }
.footer-tagline { font-size:13px; color:rgba(255,255,255,.35); line-height:1.7; max-width:220px; }
.footer-col h5 { font-size:12px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:16px; }
.footer-col ul { list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col ul a { color:rgba(255,255,255,.5); text-decoration:none; font-size:14px; transition:color .2s; }
.footer-col ul a:hover { color:var(--nor-300); }
.footer-bottom { border-top:1px solid rgba(255,255,255,.06); padding-top:28px; display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:12px; }
.footer-bottom p { font-size:13px; color:rgba(255,255,255,.25); }
.social-links { display:flex; gap:10px; }
.social-links a { width:36px; height:36px; background:rgba(255,255,255,.05); border-radius:8px; display:flex; align-items:center; justify-content:center; color:rgba(255,255,255,.4); text-decoration:none; font-size:13px; font-weight:700; transition:background .2s,color .2s; }
.social-links a:hover { background:rgba(163,183,155,.2); color:var(--nor-300); }

/* ── SCROLL REVEAL ── */
.reveal { opacity:0; transform:translateY(30px); transition:opacity .65s ease,transform .65s ease; }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-d1 { transition-delay:.12s; }
.reveal-d2 { transition-delay:.24s; }

/* ── RESPONSIVE ── */
@media (max-width:960px) {
  #hero { grid-template-columns:1fr; }
  .hero-right { height:380px; }
  .problem-grid, .contact-wrap { grid-template-columns:1fr; }
  .solution-cards { grid-template-columns:1fr; }
  .footer-top { grid-template-columns:1fr 1fr; }
  .nav-links { display:none; }
  .form-row { grid-template-columns:1fr; }
  .hero-trust { gap:20px; }
}
@media (max-width:480px) {
  section { padding:64px 5%; }
  .footer-top { grid-template-columns:1fr; }
}
